forum@abinit.org
Subject: The ABINIT Users Mailing List ( CLOSED )
List archive
- 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
- [abinit-forum] indexing of cg coefficients, asorini, 06/03/2009
- Re: [abinit-forum] indexing of cg coefficients, Tonatiuh Rangel, 06/03/2009
- Re: [abinit-forum] indexing of cg coefficients, matthieu verstraete, 06/03/2009
- Re: [abinit-forum] indexing of cg coefficients, Tonatiuh Rangel, 06/03/2009
Archive powered by MHonArc 2.6.15.