[Pw_forum] interpolation of radial atomic wfc
Andrea Ferretti
ferretti.andrea at unimore.it
Tue Jul 11 12:36:43 CEST 2006
On Mon, 10 Jul 2006, Hande Ustunel wrote:
> Dear PWSCF users,
>
> I'm trying to find out how to interpolate a radial atomic wavefunction
> (obtained from the pseudopotential generator) onto the linear grid to
> integrate against the sc potential in a perturbation theory framewrok. I've
> looked through the code and searched the archive to find out if this
> function already exists but couldn't find anything. It would be of great
> help if I could get help on this. Does this (or anything similar) already
> exist or should I write one of my own? Also do you see any problems with
> this procedure in and of its own such as loss of accuracy.
>
Hi All,
if I understand well, you need to compute some matrix elements of the form
< phi_i | v_sc | phi_j >
where the \phi orbitals are atomic pseudo wfcs...
being the case, I think atomic states are first interpoletad on a
reciprocal space radial mesh ( init_at_1.f90 ) and then
computed for a specified kpt (on the same PW grid of wfcs) using
atomic_wfc.f90
you can take PP/projwfc.f90 (around line 315) as an "example of use"
after this procedure, you should have
\phi(k+G) for each G in the cutoff sphere of kpt k
next, I don't konw whether some piece of code computing what you need
already exists (but I think it is likely)...
anyway, the routines in h_psi.f90 apply the
hamiltonian operator to some generic wfcs, therefore, moving from there I
guess it is possible to obtain something that just applys the potential
you need (ie v_sc) to the atomic states
< k+G | phi_tmp > = < k+G | v_sc | phi_j >
then, (if I am not wrong), the matrix elements should read
M_ij(k) = < phi_i(k) | v_sc | phi_j(k) >
= \sum_G < phi_i(k) | k+G > < k+G | phi_tmp >
(note the dependency on k)
hope it helps,
cheers
Andrea
More information about the users
mailing list