[Pw_forum] Atomic rho

Stefano de Gironcoli degironc at sissa.it
Tue Oct 14 22:36:36 CEST 2008


In reciprocal space the sum of atomic densities is

sum_rho_at(G) = \sum_ityp S_ityp(G) rho_atomic_ityp(G)

where rho_atomic_ityp(G) is the Fourier trasform of the atomic charge  
density for atomic type ityp and S_ityp(G) is the strcuture factor for  
that atomic type

S_ityp(G) = \sum_{na such that ityp_of_na=ityp) esp(-i G tau_na) / Omega

If you want a single atom charge density you simply need to use the  
espression above with

S_ityp(G) =  esp(-i G tau_na_you_want) / Omega

this is actually a periodic charge density corresponding to atom  
na_you_want plus its
periodic images ... so the cell must be large enough that these images  
do not overlap.

Hope this helps,

  stefano


Quoting Leonardo Matheus <leommj at usp.br>:

> Thanks for your reply Axel.
>
>> well, for practical reasons it is more efficient to loop over
>> atom types and atoms per atom type. per atom-type parameters
>> only need to be computed once this way.
>
> I understand why the calculation is like this, but still couldn't find
> this "atoms per atom type" loop.
>
>> i suggest you first have a look into textbook material
>> explaining the implementation of electronic structure
>> calculation with plane wave pseudopotentials (e.g. the
>> books by jorge kohnoff or richard martin). and then
>> read the marx / hutter review which also gives an overview
>> on how the implementation can be done (on the example of
>> the CPMD code, which is not that different as far as the
>> basic principles are concerned). the CPMD code actually
>> does have an implementation of hirshfeld charges determination,
>> but only for norm-conserving pseudopotentials, IIRC, so you
>> can look up how the implementation principles.
>
> I've already read the book by Kohanoff, and now I'm waiting for the
> licence to download the CPMD code, to see how Hirshfeld charges are
> implemented there, thanks for the hint. ABINIT code also has Hirshfeld
> charges implemented, I'm looking there too.
>
>> for implementing it into QE you'll have to figure out
>> how to handle ultra-soft psps contribution to the atomic
>> density on top of everything else.
>
> I'm also using the SaX code, which accepts just NC PPs, so I haven't
> thought deeply on this, but I would first try to adapt the "addusdens"
> subroutine to the individual atomic densities (at least, this is what
> I understood the subroutine does).
>
> Actually, I've based most of my code on the "voronoy" program, so what
> I really need now is just to obtain the individual atomic rho, the
> rest (I think) is mostly done.
>
>> good luck,
>>   axel.
>
> Thanks
>
> Leonardo Matheus
> Doctorate student - Physics Institute, University of São Paulo, Brazil
> Nanomol group - http://nanomol.if.usp.br
> _______________________________________________
> Pw_forum mailing list
> Pw_forum at pwscf.org
> http://www.democritos.it/mailman/listinfo/pw_forum
>



----------------------------------------------------------------
   SISSA Webmail https://webmail.sissa.it/
   Powered by Horde http://www.horde.org/





More information about the users mailing list