Skip to Content.
Sympa Menu

forum - Re: [abinit-forum] indexing of cg coefficients

forum@abinit.org

Subject: The ABINIT Users Mailing List ( CLOSED )

List archive

Re: [abinit-forum] indexing of cg coefficients


Chronological Thread 
  • From: matthieu verstraete <matthieu.jean.verstraete@gmail.com>
  • To: forum@abinit.org
  • Subject: Re: [abinit-forum] indexing of cg coefficients
  • Date: Wed, 3 Jun 2009 10:38:53 +0200
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type:content-transfer-encoding; b=olWyqz3PySF+YNR6SR4q5mZH5CLEOpo+fc1HcoByotEdfUdFzp6OPWcO9Jr7hK+/09 P5u5RGMS3FIRAkPZERXCMNGTsvEtDWbnWqZwHLYMrilKuwAS/wrkU9OFj5DMOif4SLX6 SpqZX/3UESAKepVhX/Bf7bWXnM4PMNaIvdDu8=

The main point is that npw can depend on k and nband might as well in
strange cases: the full mband*mpw extent of the cg array will not be
used. So icg is a counter to keep track of where the next kpoint+band
coefficients start. In Tonatiuh's example icg = index = sum_k
sum_bands npw_k. For the kg, the principle is the same but there are
no bands, only npw_k

Matthieu

On Wed, Jun 3, 2009 at 10:00 AM, Tonatiuh Rangel
<Tonatiuh.Rangel@uclouvain.be> wrote:
> Dear Adam,
>
> The coefficients as written in the WFK file are written inside three
> loops, as you can check in:
> http://www.abinit.org/documentation/helpfiles/for-v5.8/users/abinis_help.html#wavefctfile
>
>
>
>       bantot=0                                    <-- counts over all bands
>       do isppol=1,nsppol
>        do ikpt=1,nkpt
>         write(unit) npw,nspinor,nband                    <-- for each k
> point
>         write(unit) kg(1:3,1:npw)                        <-- plane wave
> reduced coordinates
>         write(unit) eigen(1+bantot:nband+bantot),        <-- eigenvalues
> for this k point
>                     occ(1+bantot:nband+bantot)           <-- occupation
> numbers for this k point
>         do iband=1,nband
>          write(unit) (cg(ii+index),ii=1,2*npw*nspinor)   <-- wavefunction
> coefficients
>         enddo                                            for a single
> band and k point
>         bantot=bantot+nband
>        enddo
>       enddo
>
>
>
> Internally, the variable cg has the following dimensions:
> cg(2,mpw*nspinor*mband*mkmem*nsppol)
>
> THe first index is for the real and complex part.
>
> The second one runs for all bands, k-points and nsppol as in the WFK file:
> First it runs over bands, then k-points and at the end on nsppol
>
> Best
> Tonatiuh
>
>
>
>
>
>
>
>
>
>
>
>
>> Hello Forum,
>>
>>   I am interested in obtaining the reciprocal lattice expansion
>> coefficients
>> (often denoted as C_{nk}(\vec G) in TeX) of the periodic part of the Bloch
>> functions computed in ABINIT. If I understand correctly the collection of
>> these
>> coefficients for each band and k-point and reciprocal plane wave is what
>> is
>> written to the _WFK file. Internally it looks like these coefficients for
>> each
>> k-point are contained in an array cg(2,1:mcg). But I am having trouble
>> understanding the indexing and relating the icg index to the reciprocal
>> lattice
>> vector and the band number. I have seen that in abinit/doc/theory there
>> are
>> some pdf files which imply that one should look at the array kg(1:nkg) and
>> others, but these arrays don't seem to be used in the current version of
>> abinit... but here is where I am stuck. Can anyone tell me how to
>> determine the
>> correct indexing to relate the C_{nk}(G(icg)) coefficients to the
>> appropriate G
>> and n and k? Thanks very much in advance for any assistance. Cheers,
>>
>> Adam
>>
>
>
>



--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Dr. Matthieu Verstraete

European Theoretical Spectroscopy Facility (ETSF)
Dpto. Fisica de Materiales,
U. del Pais Vasco,
Centro Joxe Mari Korta, Av. de Tolosa, 72, Phone: +34-943018393
E-20018 Donostia-San Sebastian, Spain Fax  : +34-943018390

Mail : matthieu.jean.verstraete@gmail.com
http://www-users.york.ac.uk/~mjv500




Archive powered by MHonArc 2.6.15.

Top of Page