I would like to print out the plane wave components of a wave function at a particular k-point. I've tried several things so far, none of which do what I want. Here's what I've tried:
cut3d doesn't do what I want, because it prints out the wave function components on a grid in real space. I've read through the source, but I get confused.
I've tried to output the WFK files as ETSF_IO files using accesswff 3 and setting istwfk to 1 for all k-points, but for some reason this doesn't work.
I've tried to read the WFK file directly using python/struct.unpack, but I can't find a clear description of the format. Trying to pick off elements one at a time isn't working.
Any hints to what I should be doing? Thanks in advance.
Obtain plane wave components of wfn at kpt
Moderators: MMNSchmitt, gonze
Re: Obtain plane wave components of wfn at kpt
If you have a properly compiled etsfio version, that will be the easiest - access to all of the file in a structured way, either with ncdump or with a software of your choice. Need some more info to see what is wrong.
In cut3d, with a wf, the wffile.F90 subroutine is called. If you look for cg_k that contains the wf coefficients in reciprocal space (sphere of G vectors). You can get the corresponding G vector coordinates for a sphere around the present k point in kg_k. Print your stuff here and you're done.
cheers
Matthieu
In cut3d, with a wf, the wffile.F90 subroutine is called. If you look for cg_k that contains the wf coefficients in reciprocal space (sphere of G vectors). You can get the corresponding G vector coordinates for a sphere around the present k point in kg_k. Print your stuff here and you're done.
cheers
Matthieu
Matthieu Verstraete
University of Liege, Belgium
University of Liege, Belgium