Dear Pr. Blaha, Thank you for your quick answer. You are totally right with the case.in2 file …
For the wavefunction, that’s how I do : For the interstitial, I integrate the product of PW over the whole space and subtract the part from the spheres using a Rayleigh-expansion of a PW in terms of spherical harmonics. In the spheres, I compute terms like Alm* Blm \int u_l(r) dot(u)_l(r) r*r dr for the spheres. These coefficients are found in case.almblm and are actually Alm(k) = SUM_G C_G Alm(k+G) (this I got from a previous mailing thread). I have also terms like Alm* Clm \int u_l(r) u_lo__l(r) r*r dr to take into account the APW+lo and LO ! I guess that the Clm’s in case.almclm are also the ones multiplied by their coefficient C_G(LO) (which are not really part of the PW expansion), just like for Alm and Blm. I sum those terms over the different indexes l,m and over the spheres. Actually, I follow more less what is presented in the paper of C. Ambrosch-Draxl and J. O. Sofo (Computer Physics Communications 175 (2006) 1–14). They computed <Psi_mk| p |Psi_nk> so I of course adapted the formalism to my need. Since you said that wavefunctions where all normalized, even above E_F, I must have missed something somewhere … If you see any mistake in what I have written there or have any references, works or source code I should look at, I would be pleased to hear that ! My aim is to extract exactly the wavefunctions. I will then manipulate them. Thank you very much, Best regards, Leandro Salemi P.S. : I might have answered in a not-proper way since I had not received the mail (I did not pay attention that my account was disabled for the reception of the mail ...). Sorry for the inconvenience (now it is enabled). Peter Blaha<https://www.mail-archive.com/search?l=wien@zeus.theochem.tuwien.ac.at&q=from:%22Peter+Blaha%22> Mon, 04 Dec 2017 06:13:01 -0800<https://www.mail-archive.com/search?l=wien@zeus.theochem.tuwien.ac.at&q=date:20171204> Of course all the wave functions are normalized. It comes automatically after solving the generalized eigenvalue problem in lapw1. Without properly normalized wave functions, how should we calculate an electron density which yields the desired number of electrons ?? Why did you modify the code ? It would be much simpler to set NE in case.in2 to a larger number .... I don't know how you actually calculated the norm of a wave function, but due to the dual representation, it is not so straightforward. On 12/04/2017 02:55 PM, Leandro Salemi wrote: Dear WIEN2K users and developers, I am currently playing with the wavefunctions in WIEN2K in order to compute material-dependent properties. I must then extract them ! I managed to extract the relevant quantities (C_nk(G), the coefficents A_lm, B_lm, C_lm and the radial functions) in order to build the wavefunction. When I try to compute the norm of the wavefunction, I find that it is quite well normalized BUT only for states which are below the Fermi energy … For states above, discrepancies arise and I find numbers like 0.8 or 1.3 … To output the A_lm, B_lm of unoccupied states with "x lapw2 -alm", I modified slightly the l2main.F routine. The following has been done : IF(MODUS.EQ.'ALM ') then !LEANDRO INCLUDE EMPTY BANDS (START) NEMAX_SAVE=NEMAX NEMAX=NE !LEANDRO INCLUDE EMPTY BANDS (END) WRITE(24,2055) s_kvec,t_kvec,z_kvec,n,ne,bname write(24,*) jatom,nemin,nemax,' jatom,nemin,nemax' endif where my modification is in between the “!LEANDRO …”. What I did it just saying that the NEMAX (which normally refers to the number of occupied bands) should go up to the highest computed state and thus, can go above the Fermi level. I was wondering that may be, the states are automatically normalized but only for those below the Fermi level. If this is the case, then I can compute the norm and divide by the sqrt. Am I right or am I missing something ? Since the wavefunction is the basic mathematical description of the material, extracting wrong quantities would be quite problematic ... I am of course taking into account the local orbitals in the process ! Are the wavefunctions only normalized below E_F ? If yes, do you know in which part the normalization is done ? If anyone has experience with this topic or any suggestion, I would be please to hear ! I have already checked throughout the mailing list and the user guide ... Thank you, Leandro Salemi _______________________________________________ Wien mailing list Wien@zeus.theochem.tuwien.ac.at http://zeus.theochem.tuwien.ac.at/mailman/listinfo/wien SEARCH the MAILING-LIST at: http://www.mail-archive.com/wien@zeus.theochem.tuwien.ac.at/index.html
_______________________________________________ Wien mailing list Wien@zeus.theochem.tuwien.ac.at http://zeus.theochem.tuwien.ac.at/mailman/listinfo/wien SEARCH the MAILING-LIST at: http://www.mail-archive.com/wien@zeus.theochem.tuwien.ac.at/index.html