From a.mostofi at imperial.ac.uk Wed Jun 6 12:06:44 2012 From: a.mostofi at imperial.ac.uk (Arash Mostofi) Date: Wed, 06 Jun 2012 11:06:44 +0100 Subject: [Wannier] Fourier Coefficients of a Wannier Function In-Reply-To: References: Message-ID: <4FCF2BB4.6070802@imperial.ac.uk> Dear Fawei, The answer to your question is yes, but in a slightly limited sense. Depending on exactly what you want to do it may be either very easy or more tricky to adapt what is already coded. Currently what is implemented in the PWscf interface to Wannier90 is as follows: + For Gamma-point only Brillouin zone sampling, you can get the PWscf-Wannier90 interface programme pw2wannier90 to write out the first 32 Fourier coefficients of the wavefunctions in reciprocal space (ie, u_n(G) at the 32 G-vectors with smallest |G|) to a file called seedname.unkg. This behaviour is activated by keyword called "write_unkg" in the input file for pw2wannier90. + Once you have these Fourier coefficients and you have found the unitary transformation that gives you MLWFs, you can then easily determine the first 32 Fourier coefficients of the MLWFs. + The context in which we did this sort of thing was transport calculations and is described in M. Shelley et al, Comput. Phys. Commun. 182, 2174 (2011) [http://dx.doi.org/10.1016/j.cpc.2011.05.017 or, if you don't have access to the online journal, http://www.cmth.ph.ic.ac.uk/people/a.mostofi/papers/ms_mlwftran.pdf]; in particular, see the Appendix of the paper and, eg, subroutine tran_find_integral_signatures in transport.F90 in the current most recent version of Wannier90 (v1.2). Hope this helps. Arash -- Dr Arash A Mostofi Departments of Materials and Physics Deputy Director, CDT on Theory and Simulation of Materials Imperial College London, London SW7 2AZ, UK +44 (0)207 594 8154 | www.cmth.ph.ic.ac.uk/people/a.mostofi On 20/05/2012 06:38, ???2063 wrote: > Dear Wannier90 developers and users, > > Is it possible to get the Fourier coefficients or Bloch wave > coefficients of a wannier function from the Wanner90 output files > directly ? > > Thanks, > Fawei > > > _______________________________________________ > Wannier mailing list > Wannier at quantum-espresso.org > http://www.democritos.it/mailman/listinfo/wannier From pmoreira at ifi.unicamp.br Wed Jun 6 20:15:16 2012 From: pmoreira at ifi.unicamp.br (Pedro Augusto F. P. Moreira) Date: Wed, 06 Jun 2012 15:15:16 -0300 Subject: [Wannier] electric polarization of a single molecule In-Reply-To: <4FCE78E9.5040107@ifi.unicamp.br> References: <4FCE78E9.5040107@ifi.unicamp.br> Message-ID: <4FCF9E34.4040801@ifi.unicamp.br> Dear all, I am trying to calculate the electric polarization of an isolated water molecule as Silvestrelli and Parrinello did in 1999 (PRL). I did a molecule relaxation with QE and calculated the electric polarization, using Wannier functions centres (from W90) and ions positions. I considered my initial and final states, the initial and final conditions on relaxation. However, I found a different value from expected one. Prof. Nicola Marzari answered before in this list: http://www.democritos.it/pipermail/wannier/2009-January.txt "Short answer: you can consider the center of each Wannier function as a "classical" electron. So, the vectorial sum of all the Wannier centers gives you an overall electronic polarization vector (you need to multiply it by 2, if spin unpolarized, then by the charge of one electron, and divide it by the volume of the unit cell). The *difference* in this polarization vector between two phases (e.g. cubic and tetragonal) gives you the *physical* quantity that you want (you also need to add the same, trivial, for the ionic valence charges, to have the total polarization difference)." My question is: How should I choice two "phases" for a single molecule? In other words: I know the formula for calculating the electric polarization, but I do not know how to determine the initial and final states to do the math. Any advice would be appreciated, Pedro ----------------------------- Pedro Moreira IFGW - Unicamp - Brazil From nicola.marzari at epfl.ch Sun Jun 10 13:00:48 2012 From: nicola.marzari at epfl.ch (Nicola Marzari) Date: Sun, 10 Jun 2012 13:00:48 +0200 Subject: [Wannier] electric polarization of a single molecule In-Reply-To: <4FCF9E34.4040801@ifi.unicamp.br> References: <4FCE78E9.5040107@ifi.unicamp.br> <4FCF9E34.4040801@ifi.unicamp.br> Message-ID: <4FD47E60.6060702@epfl.ch> Hi Pedro, the discussion you quote was for a solid, where polarization is always meant as a polarization difference between two phases. No need for such subtlety in a molecule - once you have relaxed it to its equilibirum configuration, you can calculate its dipole by summing the electrical and the ionic dipole. The electrical dipole is given by the sum of the WF centers, and the ionic dipole by the ion charges (for water using pseudopotentials, the hydrogens are +1, and the oxygens +6). Note that the WF centers are defined modulo a lattice vector, so make sure that you bring them all back, if needed, to the same unit cell. Last - note that this is a somewhat inefficient way to calculate dipoles in isolated systems - the WF centers are calculates using the reciprocal space version of the position operator (using derivatives in k-space), and so they require larger supercells or k-point meshes even for isolated systems - not to converge better the electronic structure, but to converge better the position operator. It would be more accurate to calculate the dipole in real space, just by intergrating r times the charge density (of course, you can't do that in a solid). nicola On 06/06/2012 20:15, Pedro Augusto F. P. Moreira wrote: > Dear all, > > I am trying to calculate the electric polarization of an isolated > water molecule as Silvestrelli and Parrinello did in 1999 (PRL). > > I did a molecule relaxation with QE and calculated the electric > polarization, using Wannier functions centres (from W90) and ions > positions. I considered my initial and final states, the initial and > final conditions on relaxation. However, I found a different value from > expected one. > > Prof. Nicola Marzari answered before in this list: > > http://www.democritos.it/pipermail/wannier/2009-January.txt > > "Short answer: you can consider the center of each Wannier function as a > "classical" electron. So, the vectorial sum of all the Wannier centers > gives you an overall electronic polarization vector (you need to > multiply it by 2, if spin unpolarized, then by the charge of one > electron, and divide it by the volume of the unit cell). The > *difference* in this polarization vector between two phases (e.g. cubic > and tetragonal) gives you the *physical* quantity that you want (you > also need to add the same, trivial, for the ionic valence charges, to > have the total polarization difference)." > > My question is: How should I choice two "phases" for a single molecule? > > In other words: I know the formula for calculating the electric > polarization, but I do not know how to determine the initial and final > states to do the math. > > Any advice would be appreciated, > > Pedro > > ----------------------------- > > Pedro Moreira > > IFGW - Unicamp - Brazil > > > _______________________________________________ > Wannier mailing list > Wannier at quantum-espresso.org > http://www.democritos.it/mailman/listinfo/wannier -- ---------------------------------------------------------------------- Prof Nicola Marzari, Chair of Theory and Simulation of Materials, EPFL From pmoreira at ifi.unicamp.br Mon Jun 11 19:49:41 2012 From: pmoreira at ifi.unicamp.br (Pedro Augusto F. P. Moreira) Date: Mon, 11 Jun 2012 14:49:41 -0300 Subject: [Wannier] electric polarization of a single molecule In-Reply-To: <4FD47E60.6060702@epfl.ch> References: <4FCE78E9.5040107@ifi.unicamp.br> <4FCF9E34.4040801@ifi.unicamp.br> <4FD47E60.6060702@epfl.ch> Message-ID: <4FD62FB5.2050007@ifi.unicamp.br> Hi Nicola, thank you for your answer. If you allow me, I have another question that arose from your answer. I am trying to calculate the polarization for a solid and was doing the calculations with a single molecule to learn how to use W90. I want to calculate polarizations caused by vacancies in solids, for example Si crystal. I am thinking to calculate the vacancy polarization, subtracting the polarization of a bulk with vacancy from a pristine bulk. So, I would need to determine the polarization in each case first. Note that the bulk is in the same state in both cases, but for a defect. How would I choose the final and initial states (for the bulk) in this case? with best regards, Pedro Moreira Em 10-06-2012 08:00, Nicola Marzari escreveu: > > > Hi Pedro, > > > the discussion you quote was for a solid, where polarization is always > meant as a polarization difference between two phases. > > No need for such subtlety in a molecule - once you have relaxed it to > its equilibirum configuration, you can calculate its dipole by summing > the electrical and the ionic dipole. > > The electrical dipole is given by the sum of the WF centers, and the > ionic dipole by the ion charges (for water using pseudopotentials, the > hydrogens are +1, and the oxygens +6). > > Note that the WF centers are defined modulo a lattice vector, so make > sure that you bring them all back, if needed, to the same unit cell. > > Last - note that this is a somewhat inefficient way to calculate > dipoles in isolated systems - the WF centers are calculates using the > reciprocal space version of the position operator (using derivatives in > k-space), and so they require larger supercells or k-point meshes > even for isolated systems - not to converge better the electronic > structure, but to converge better the position operator. > > It would be more accurate to calculate the dipole in real space, > just by intergrating r times the charge density (of course, you can't > do that in a solid). > > nicola > > > > On 06/06/2012 20:15, Pedro Augusto F. P. Moreira wrote: >> Dear all, >> >> I am trying to calculate the electric polarization of an isolated >> water molecule as Silvestrelli and Parrinello did in 1999 (PRL). >> >> I did a molecule relaxation with QE and calculated the electric >> polarization, using Wannier functions centres (from W90) and ions >> positions. I considered my initial and final states, the initial and >> final conditions on relaxation. However, I found a different value from >> expected one. >> >> Prof. Nicola Marzari answered before in this list: >> >> http://www.democritos.it/pipermail/wannier/2009-January.txt >> >> "Short answer: you can consider the center of each Wannier function as a >> "classical" electron. So, the vectorial sum of all the Wannier centers >> gives you an overall electronic polarization vector (you need to >> multiply it by 2, if spin unpolarized, then by the charge of one >> electron, and divide it by the volume of the unit cell). The >> *difference* in this polarization vector between two phases (e.g. cubic >> and tetragonal) gives you the *physical* quantity that you want (you >> also need to add the same, trivial, for the ionic valence charges, to >> have the total polarization difference)." >> >> My question is: How should I choice two "phases" for a single molecule? >> >> In other words: I know the formula for calculating the electric >> polarization, but I do not know how to determine the initial and final >> states to do the math. >> >> Any advice would be appreciated, >> >> Pedro >> >> ----------------------------- >> >> Pedro Moreira >> >> IFGW - Unicamp - Brazil >> >> >> _______________________________________________ >> Wannier mailing list >> Wannier at quantum-espresso.org >> http://www.democritos.it/mailman/listinfo/wannier > > -- Pedro Moreira IFGW - Unicamp - Brazil From alexwysocki2 at gmail.com Tue Jun 12 19:59:14 2012 From: alexwysocki2 at gmail.com (Alex Wysocki) Date: Tue, 12 Jun 2012 13:59:14 -0400 Subject: [Wannier] Anomalous Hall effect using Wannier functions Message-ID: Dear All, I read the paper by Wang *et al., *PRB *74*, 195118 (2006) about calculations of anomalous Hall effect using Wannier functions. Can you tell me whether this method is implemented in the current version of Wannier90? Did anybody evaluate spin Hall effect using Wannier functions? Thank you, Alex -- Aleksander L. Wysocki Postdoctoral Associate Department of Applied and Engineering Physics Cornell University Clark Hall 225 Ithaca, NY 14853 Phone: (607) 254 3510 Email: alexwysocki2 at gmail.com Web: http://tinyurl.com/c4486t7 -------------- next part -------------- An HTML attachment was scrubbed... URL: From pmoreira at ifi.unicamp.br Wed Jun 13 15:50:32 2012 From: pmoreira at ifi.unicamp.br (Pedro Augusto F. P. Moreira) Date: Wed, 13 Jun 2012 10:50:32 -0300 Subject: [Wannier] pw2wannier90.x: something wrong Message-ID: <4FD89AA8.4000704@ifi.unicamp.br> Dear all, I have performed the examples in wannier90 code, and the steps as folllows: (1) compile the pw.x pw2wannier90.x and wannier90.x executables (the latter is done by typing "make w90" in the root directory of the Quantum-Espresso distribution) (2) run pw.x for the scf calculation: ~> ../../../bin/pw.x < seedname.scf > seedname.scf.out (3) run pw.x for the nscf calculation: ~> ../../../bin/pw.x < seedname.nscf > seedname.nscf.out (4) run wannier90.x to generate the seedname.nnkp file: ~> ../../../bin/wannier90.x -pp seedname (5) run pw2wannier90.x ~> ../../../bin/pw2wannier90.x < seedname.pw2wan > seedname.pw2wan.out This step has something wrong as one can note on the output copied below. However, I cannot understand what is wrong. Can anyone give me a suggestion about what is wrong and what I should correct? Thanks in advance, Pedro Moreira IFGW/Unicamp, Brazil ########################################################## G-vector sticks info -------------------- sticks: dense smooth PW G-vecs: dense smooth PW Sum 74529 29817 7817 21387695 5412705 727383 negative rho (up, down): 0.311E-02 0.000E+00 Spin CASE ( default = unpolarized ) Wannier mode is: standalone ----------------- *** Reading nnkp ----------------- Checking info from wannier.nnkp file - Real lattice is ok - Reciprocal lattice is ok Something wrong! numk= 1 iknum= 112 ########################################################## -- Pedro Moreira IFGW - Unicamp - Brazil From a.mostofi at imperial.ac.uk Wed Jun 13 17:02:46 2012 From: a.mostofi at imperial.ac.uk (Arash Mostofi) Date: Wed, 13 Jun 2012 16:02:46 +0100 Subject: [Wannier] pw2wannier90.x: something wrong In-Reply-To: <4FD89AA8.4000704@ifi.unicamp.br> References: <4FD89AA8.4000704@ifi.unicamp.br> Message-ID: <4FD8AB96.2000606@imperial.ac.uk> Dear Pedro, It appears that the number of k-points specified in your W90 input file does not match the number of k-points in your nscf calculation. Best wishes, Arash -- Dr Arash A Mostofi Departments of Materials and Physics Deputy Director, CDT on Theory and Simulation of Materials Imperial College London, London SW7 2AZ, UK +44 (0)207 594 8154 | www.cmth.ph.ic.ac.uk/people/a.mostofi On 13/06/2012 14:50, Pedro Augusto F. P. Moreira wrote: > > Dear all, > > I have performed the examples in wannier90 code, and the steps as > folllows: > > (1) compile the pw.x pw2wannier90.x and wannier90.x executables (the > latter is done by typing "make w90" in the root directory of the > Quantum-Espresso distribution) > > (2) run pw.x for the scf calculation: ~> ../../../bin/pw.x< > seedname.scf> seedname.scf.out > > (3) run pw.x for the nscf calculation: ~> ../../../bin/pw.x< > seedname.nscf> seedname.nscf.out > > (4) run wannier90.x to generate the seedname.nnkp file: ~> > ../../../bin/wannier90.x -pp seedname > > (5) run pw2wannier90.x ~> ../../../bin/pw2wannier90.x< seedname.pw2wan > > seedname.pw2wan.out > > > This step has something wrong as one can note on the output copied > below. However, I cannot understand what is wrong. Can anyone give me a > suggestion about what is wrong and what I should correct? > > Thanks in advance, > > Pedro Moreira > > IFGW/Unicamp, Brazil > > ########################################################## > G-vector sticks info > -------------------- > sticks: dense smooth PW G-vecs: dense smooth PW > Sum 74529 29817 7817 21387695 5412705 727383 > > > negative rho (up, down): 0.311E-02 0.000E+00 > > Spin CASE ( default = unpolarized ) > > Wannier mode is: standalone > > ----------------- > *** Reading nnkp > ----------------- > > Checking info from wannier.nnkp file > > - Real lattice is ok > - Reciprocal lattice is ok > Something wrong! > numk= 1 iknum= 112 > > ########################################################## > From dekoning at ifi.unicamp.br Tue Jun 26 19:25:24 2012 From: dekoning at ifi.unicamp.br (Maurice de Koning) Date: Tue, 26 Jun 2012 14:25:24 -0300 Subject: [Wannier] Wannier90-VASP: Dipole moment of isolated H20 Message-ID: <96EAA162-45F6-4EC4-BC3F-4C1D6BB8E093@ifi.unicamp.br> Hello all, We have started using the Wannier 90 interface to VASP and as a first test case we are trying to reproduce the Wannier centers for the isolated water molecule as in the paper by Silvestrelli and Parrinello (JCP 111 3572,1999). Using the PAW approach, the PBE xc functional, a cubic periodic box with side 10.6 Angstrom, a plane-wave kinetic energy cut-off of 1000 eV and Gamma-point sampling, the relaxed geometry of the water molecule is identical to that reported by Silvestrelli, with an O-H distance of 0.972 Angstroms and an internal angle of 104.4 degrees. However, when using the Wannier90 interface to VASP, the Wannier centers that we obtain do not coincide with those reported in Silvestrelli. The position of the Wannier centers corresponding to the lone pairs are reasonable. We find distances of 0.306 Angstroms from the oxygen ion, and an internal angle of 120.8 degrees, which agrees reasonably well with the values of 0.300 Angstrom and 126.4 degrees reported by Silvestrelli. The WFCs associated with the electrons in the covalent bonds, however, are very different. We find a distance from the oxygen ion of 0.47 Angstrom versus a value of 0.53 Angstrom reported by Silvestrilli. These differences lead to quite a different electric dipole moment. Any suggestions as to what might be the reason for these discrepancies? Cheers, Maurice From pmoreira at ifi.unicamp.br Wed Jun 27 21:13:39 2012 From: pmoreira at ifi.unicamp.br (Pedro Augusto F. P. Moreira) Date: Wed, 27 Jun 2012 16:13:39 -0300 Subject: [Wannier] pw2wannier90.x: something wrong In-Reply-To: <4FD8AB96.2000606@imperial.ac.uk> References: <4FD89AA8.4000704@ifi.unicamp.br> <4FD8AB96.2000606@imperial.ac.uk> Message-ID: <4FEB5B63.6080600@ifi.unicamp.br> Dear all, I am stil trying to use the pw2wannier90.x, but I have obtained the following error: -------------------------------------------------------------------------------------------- At line 700 of file pw2wannier90.f90 (unit = 99, file = 'h2o.nnkp') Fortran runtime error: Bad integer for item 1 in list input -------------------------------------------------------------------------------------------- Can anyone give a suggestion why this error is happening? My inputs and output follow bellow. Thanks, Pedro -h2o.pw2wan--------------------------------------------- &inputpp outdir = './' prefix = 'h2o' seedname = 'h2o' spin_component = 'none' write_mmn = .true. write_amn = .true. write_unk = .true. / --------------------------------------------------------------- -h2o.nnkp-------------------------------------------------- File written on 27Jun2012 at 12:28:18 calc_only_A : F begin real_lattice 10.6000000 0.0000000 0.0000000 0.0000000 10.6000000 0.0000000 0.0000000 0.0000000 10.6000000 end real_lattice begin recip_lattice 0.5927533 0.0000000 0.0000000 0.0000000 0.5927533 0.0000000 0.0000000 0.0000000 0.5927533 end recip_lattice begin kpoints 1 0.00000000 0.00000000 0.00000000 end kpoints begin projections end projections begin nnkpts 6 1 1 1 0 0 1 1 0 1 0 1 1 0 0 1 1 1 0 0 -1 1 1 0 -1 0 1 1 -1 0 0 end nnkpts begin exclude_bands 0 end exclude_bands --------------------------------------------------------------------- -pw2wan.out---------------------------------------------------- Reading nscf_save data Info: using nr1, nr2, nr3 values from input Info: using nr1s, nr2s, nr3s values from input IMPORTANT: XC functional enforced from input : Exchange-correlation = SLA LYP B88 BLYP ( 1 3 1 3 0) EXX-fraction = 0.00 Any further DFT definition will be discarded Please, verify this is what you really want G-vector sticks info -------------------- sticks: dense smooth PW G-vecs: dense smooth PW Sum 22365 8961 2233 2513893 635755 79501 negative rho (up, down): 0.292E-02 0.000E+00 Spin CASE ( default = unpolarized ) Wannier mode is: standalone ----------------- *** Reading nnkp ----------------- Checking info from wannier.nnkp file - Real lattice is ok - Reciprocal lattice is ok - K-points are ok ----------------------------------------------------------------------------- Em 13-06-2012 12:02, Arash Mostofi escreveu: > Dear Pedro, > > It appears that the number of k-points specified in your W90 input file > does not match the number of k-points in your nscf calculation. > > Best wishes, > > Arash > > -- > Dr Arash A Mostofi > Departments of Materials and Physics > Deputy Director, CDT on Theory and Simulation of Materials > Imperial College London, London SW7 2AZ, UK > +44 (0)207 594 8154 | www.cmth.ph.ic.ac.uk/people/a.mostofi > > On 13/06/2012 14:50, Pedro Augusto F. P. Moreira wrote: >> Dear all, >> >> I have performed the examples in wannier90 code, and the steps as >> folllows: >> >> (1) compile the pw.x pw2wannier90.x and wannier90.x executables (the >> latter is done by typing "make w90" in the root directory of the >> Quantum-Espresso distribution) >> >> (2) run pw.x for the scf calculation: ~> ../../../bin/pw.x< >> seedname.scf> seedname.scf.out >> >> (3) run pw.x for the nscf calculation: ~> ../../../bin/pw.x< >> seedname.nscf> seedname.nscf.out >> >> (4) run wannier90.x to generate the seedname.nnkp file: ~> >> ../../../bin/wannier90.x -pp seedname >> >> (5) run pw2wannier90.x ~> ../../../bin/pw2wannier90.x< seedname.pw2wan >> > seedname.pw2wan.out >> >> >> This step has something wrong as one can note on the output copied >> below. However, I cannot understand what is wrong. Can anyone give me a >> suggestion about what is wrong and what I should correct? >> >> Thanks in advance, >> >> Pedro Moreira >> >> IFGW/Unicamp, Brazil >> >> ########################################################## >> G-vector sticks info >> -------------------- >> sticks: dense smooth PW G-vecs: dense smooth PW >> Sum 74529 29817 7817 21387695 5412705 727383 >> >> >> negative rho (up, down): 0.311E-02 0.000E+00 >> >> Spin CASE ( default = unpolarized ) >> >> Wannier mode is: standalone >> >> ----------------- >> *** Reading nnkp >> ----------------- >> >> Checking info from wannier.nnkp file >> >> - Real lattice is ok >> - Reciprocal lattice is ok >> Something wrong! >> numk= 1 iknum= 112 >> >> ########################################################## >> > _______________________________________________ > Wannier mailing list > Wannier at quantum-espresso.org > http://www.democritos.it/mailman/listinfo/wannier -- Pedro Moreira IFGW - Unicamp - Brazil From jonathan.yates at materials.ox.ac.uk Wed Jun 27 22:44:10 2012 From: jonathan.yates at materials.ox.ac.uk (Jonathan Yates) Date: Wed, 27 Jun 2012 20:44:10 +0000 Subject: [Wannier] pw2wannier90.x: something wrong In-Reply-To: <4FEB5B63.6080600@ifi.unicamp.br> References: <4FD89AA8.4000704@ifi.unicamp.br> <4FD8AB96.2000606@imperial.ac.uk> <4FEB5B63.6080600@ifi.unicamp.br> Message-ID: On 27 Jun 2012, at 20:13, Pedro Augusto F. P. Moreira wrote: > I am stil trying to use the pw2wannier90.x, but I have obtained the > following error: > > -------------------------------------------------------------------------------------------- > At line 700 of file pw2wannier90.f90 (unit = 99, file = 'h2o.nnkp') > Fortran runtime error: Bad integer for item 1 in list input > -------------------------------------------------------------------------------------------- > > Can anyone give a suggestion why this error is happening? My inputs > and output follow bellow. Pedro, It seems that pw2wannier90 has a problem reading the nnkp file when no projections are defined. I'm surprised that we haven't spotted this before - anyhow we will fix pw2wannier90 and push the changes back to the QE developers. Assuming you actually don't want to use projections, there are a couple of ways around this: First, in your pw2wannier90 input file you should set compute_amn=.false. Then either: 1- define some projections in the win file (even if you are not going to use them) or 2- edit the nnkp file to read begin projections 0 end projections Both do the same job. Jonathan **Job Advert** Postdoc position in First Principles Simulation at Oxford University https://www.recruit.ox.ac.uk/pls/hrisliverecruit/erq_jobspec_version_4.display_form ************** -- Department of Materials, University of Oxford, Parks Road, Oxford, OX1 3PH, UK tel: +44 (0)1865 612797 http://users.ox.ac.uk/~oums0549/ From pmoreira at ifi.unicamp.br Fri Jun 29 00:11:55 2012 From: pmoreira at ifi.unicamp.br (Pedro Augusto F. P. Moreira) Date: Thu, 28 Jun 2012 19:11:55 -0300 Subject: [Wannier] pw2wannier90.x: something wrong In-Reply-To: References: <4FD89AA8.4000704@ifi.unicamp.br> <4FD8AB96.2000606@imperial.ac.uk> <4FEB5B63.6080600@ifi.unicamp.br> Message-ID: <4FECD6AB.3060506@ifi.unicamp.br> Dear all. First, thanks Jonathan for his comments. In spite of Jonathan's suggestion, I did the calculation with some projections are defined. Below, I show my inputs and outputs. As I understand, the pw2wannier90 run well. However, when I used the wannier90 to calculate the Wannier function centres, it complains: --------------------------------------------------------------------------------------------------- Wannier90: Execution started on 28Jun2012 at 18:57:57 Exiting....... Error: Problem reading eigenvalue file h2o.eig --------------------------------------------------------------------------------------------------- Does anyone know what is wrong with .eig file? Why is it created wrongly? Cheers, Pedro --h2o.eig-------------------------------------------------------------------------------------- 1 1 -24.996325294286 2 1 -12.823584283743 3 1 -9.084429343229 4 1 -7.179799381284 -------------------------------------------------------------------------------------------------- --pw2wan.out-------------------------------------------------------------------------------- ----------------- *** Reading nnkp ----------------- Checking info from wannier.nnkp file - Real lattice is ok - Reciprocal lattice is ok - K-points are ok - Number of wannier functions is ok ( 4) - All guiding functions are given Projections: 0.000000 0.000000 0.000000 0 1 1 1.000000 0.000000 0.000000 0.500000 0 1 1 1.000000 0.000000 0.500000 0.000000 0 1 1 1.000000 0.500000 0.000000 0.000000 0 1 1 1.000000 Reading data about k-point neighbours All neighbours are found Opening pp-files --------------- *** Compute A --------------- AMN iknum = 1 1 AMN calculated --------------- *** Compute M --------------- MMN iknum = 1 1 MMN calculated ---------------- *** Write bands ---------------- -------------------- *** Write plot info -------------------- ----------------------------- *** Parity info is not printed ----------------------------- ------------ *** Stop pp ------------ -------------------------------------------------------------------------------------------------- --h2o.nnkp------------------------------------------------------------------------------------ File written on 27Jun2012 at 12:28:18 calc_only_A : F begin real_lattice 10.6000000 0.0000000 0.0000000 0.0000000 10.6000000 0.0000000 0.0000000 0.0000000 10.6000000 end real_lattice begin recip_lattice 0.5927533 0.0000000 0.0000000 0.0000000 0.5927533 0.0000000 0.0000000 0.0000000 0.5927533 end recip_lattice begin kpoints 1 0.00000000 0.00000000 0.00000000 end kpoints begin projections 4 0.00000 0.00000 0.00000 0 1 1 0.0000000 0.0000000 1.0000000 1.0000000 0.0000000 0.0000000 1.00 0.00000 0.00000 0.50000 0 1 1 0.0000000 0.0000000 1.0000000 1.0000000 0.0000000 0.0000000 1.00 0.00000 0.50000 0.00000 0 1 1 0.0000000 0.0000000 1.0000000 1.0000000 0.0000000 0.0000000 1.00 0.50000 0.00000 0.00000 0 1 1 0.0000000 0.0000000 1.0000000 1.0000000 0.0000000 0.0000000 1.00 end projections begin nnkpts 6 1 1 1 0 0 1 1 0 1 0 1 1 0 0 1 1 1 0 0 -1 1 1 0 -1 0 1 1 -1 0 0 end nnkpts begin exclude_bands 0 end exclude_bands ---------------------------------------------------------------------------------- --h2o.pw2wan--------------------------------------------------------------- &inputpp outdir = './' prefix = 'h2o' seedname = 'h2o' spin_component = 'none' write_mmn = .true. write_amn = .true. write_unk = .true. / ----------------------------------------------------------------------------------- --h2o.amn--------------------------------------------------------------------- Created on 28Jun2012 at 18:47:15 4 1 4 1 1 1 -0.436994771799 -0.796292598498 2 1 1 -0.000433195410 0.000008727131 3 1 1 -0.110380494530 -0.196311398336 4 1 1 0.000001034017 0.000003112225 1 2 1 -0.000472745894 -0.000861580181 2 2 1 0.001093064416 -0.000022126588 3 2 1 0.000473490826 0.000841975448 4 2 1 0.000002143759 0.000017709979 1 3 1 -0.000455687507 -0.000830786636 2 3 1 -0.001022418584 0.000020699315 3 3 1 0.000549851040 0.000977670880 4 3 1 -0.000001443169 -0.000018625231 1 4 1 -0.000359357709 -0.000654665068 2 4 1 -0.000001319156 -0.000000018554 3 4 1 -0.000224338199 -0.000398599029 4 4 1 0.000001740904 0.000006562128 ------------------------------------------------------------------------------------ Em 27-06-2012 17:44, Jonathan Yates escreveu: > On 27 Jun 2012, at 20:13, Pedro Augusto F. P. Moreira wrote: > >> I am stil trying to use the pw2wannier90.x, but I have obtained the >> following error: >> >> -------------------------------------------------------------------------------------------- >> At line 700 of file pw2wannier90.f90 (unit = 99, file = 'h2o.nnkp') >> Fortran runtime error: Bad integer for item 1 in list input >> -------------------------------------------------------------------------------------------- >> >> Can anyone give a suggestion why this error is happening? My inputs >> and output follow bellow. > Pedro, > > It seems that pw2wannier90 has a problem reading the nnkp file when no projections are defined. I'm surprised that we haven't spotted this before - anyhow we will fix pw2wannier90 and push the changes back to the QE developers. > > Assuming you actually don't want to use projections, there are a couple of ways around this: > > First, in your pw2wannier90 input file you should set compute_amn=.false. > > Then either: > > 1- define some projections in the win file (even if you are not going to use them) > or > 2- edit the nnkp file to read > begin projections > 0 > end projections > > Both do the same job. > > > Jonathan > > > **Job Advert** > Postdoc position in First Principles Simulation at Oxford University > https://www.recruit.ox.ac.uk/pls/hrisliverecruit/erq_jobspec_version_4.display_form > ************** > -- Pedro Moreira IFGW - Unicamp - Brazil From xijy09 at mails.tsinghua.edu.cn Fri Jun 29 07:22:02 2012 From: xijy09 at mails.tsinghua.edu.cn (=?gb2312?b?3sm9+tHv?=) Date: Fri, 29 Jun 2012 13:22:02 +0800 (CST) Subject: [Wannier] the MLWFs of graphene Message-ID: Deal all, I've just started to use the wannier90 code to calculate the electronic structure of graphene for practice.But I have some problems in MLWFs: The number of bands (8) is equal to the number of wannier functions in my test.The initial guess of MLWFs is sp2 hybrids and pz orbitals on each carbon atom. However, I found the final wannier functions' spreads are all very large, about 30 ang, after 500 iteration. I also tried to use"projection='random'", but some MLWFs were still very large. I don't know why. Can you help me? Thank you! Best wishes! Jinyang Xi From a.mostofi at imperial.ac.uk Fri Jun 29 09:24:36 2012 From: a.mostofi at imperial.ac.uk (Arash Mostofi) Date: Fri, 29 Jun 2012 08:24:36 +0100 Subject: [Wannier] the MLWFs of graphene In-Reply-To: References: Message-ID: <4FED5834.4010908@imperial.ac.uk> Dear Jinyang Xi, I would suggest that you start with example 10 in the examples directory of the Wannier90 distribution. This is the case of graphite. You can then modify it for the case of graphene. I expect that you are looking to find MLWFs corresponding to pz orbitals on every atom and sp2 orbitals on *every other* atom (ie, half of the atoms). This would give 5 MLWFs for a primitive unit cell of graphene. Best wishes, Arash -- Dr Arash A Mostofi Departments of Materials and Physics Deputy Director, CDT on Theory and Simulation of Materials Imperial College London, London SW7 2AZ, UK +44 (0)207 594 8154 | www.cmth.ph.ic.ac.uk/people/a.mostofi On 29/06/2012 06:22, ??? wrote: > Deal all, > I've just started to use the wannier90 code to calculate the electronic structure of graphene for practice.But I have some problems in MLWFs: > The number of bands (8) is equal to the number of wannier functions in my test.The initial guess of MLWFs is sp2 hybrids and pz orbitals on each carbon atom. However, I found the final wannier functions' spreads are all very large, about 30 ang, after 500 iteration. I also tried to use"projection='random'", but some MLWFs were still very large. I don't know why. Can you help me? Thank you! > Best wishes! > > > Jinyang Xi > > > > > _______________________________________________ > Wannier mailing list > Wannier at quantum-espresso.org > http://www.democritos.it/mailman/listinfo/wannier From hushuanglin at gmail.com Fri Jun 29 12:19:37 2012 From: hushuanglin at gmail.com (Hu Shuanglin) Date: Fri, 29 Jun 2012 12:19:37 +0200 Subject: [Wannier] charge of wannier function Message-ID: Dear all, I am new to wannier90, and try to use wannier90 and vasp together. I thought since wannier function is the unitary transfromation of Bloch functions, 1, each wannier centers here should correspond to one charge center, and each could be occupied by 2 electrons (without spin-polarization). 2, from the occupied wannier functions, I can do summation to get the overall charge density that equal to vasp CHGCAR data. Is this understanding correct? Then in order to test this, I added some lines like following in the plot.F90 file: wann_rho(nxx,nyy,nzz,loop_w)= wann_func(nxx,nyy,nzz,loop_w)*conjg(wann_func(nxx,nyy,nzz,loop_w) wann_chg(nxx,nyy,nzz)= wann_chg(nxx,nyy,nzz)+wann_rho(nxx,nyy,nzz,loop_w) sum_rho(loop_w)=sum_rho(loop_w)+wann_rho(nxx,nyy,nzz,loop_w) After the summation, the "electron number of each wannier function" is printed out sum_rho(loop_w)=sum_rho(loop_w)/(ngs*ngx*ngs*ngy*ngs*ngz) I am studying a insulator LiOH, in which there are 16 valence electrons in one unit cell, and vasp gave a default num_wann=8 in the .win file. The loop_w is looped over all the 8 occupied band in this model, and only Gamma point is used in k-space. However, I get a number lower than 1 for one wannier band, and they do not equal to each other between wannier bands. Wannier Function Num: 1 Number of Charge = 0.843700E+00 Wannier Function Num: 2 Number of Charge = 0.843700E+00 Wannier Function Num: 3 Number of Charge = 0.833333E+00 Wannier Function Num: 4 Number of Charge = 0.832989E+00 Wannier Function Num: 5 Number of Charge = 0.832841E+00 Wannier Function Num: 6 Number of Charge = 0.810597E+00 Wannier Function Num: 7 Number of Charge = 0.833188E+00 Wannier Function Num: 8 Number of Charge = 0.810594E+00 In this case, the total number of electrons will certainly not to be 8*2=16. Is there anything wring in my understanding or inplementation? Any comments could be helpful. Thank you! Best Regards, Shuanglin Hu -- Department of Chemistry - the Angstrom Lab Uppsala University Box 538, SE 751-21 Uppsala, Sweden From pmoreira at ifi.unicamp.br Fri Jun 29 23:06:14 2012 From: pmoreira at ifi.unicamp.br (Pedro Augusto F. P. Moreira) Date: Fri, 29 Jun 2012 18:06:14 -0300 Subject: [Wannier] Polarization of isolated H20 (dipole moment) Message-ID: <4FEE18C6.5090906@ifi.unicamp.br> Dear all. I am trying to calculate the spontaneous electric polarization of a single water molecule as a test. I am using Quantum Espresso (pw.x and wannier90). I did by two methods: (1) using tefield=.true. as suggested by Cantele (http://www.democritos.it/pipermail/pw_forum/2009-March/011936.html) and (2) by Wannier function centres (WF). I run a set of simulations with different initial atomic positions. The first simulation, I used the positions mentioned by Cantele and found P = 1.82 D and P =1.84 D by method (1). By WF, P= 1.90 D and 1.92 D. The first values are calculated with BLYP functional and the second ones with PBE functional. After that, I moved initially all atoms by a vector (1.0 0.0 0.0) angstrom, relaxed the molecule and did again the calculations above. I found for Cantele way: P = 1.78 D and 1.80 D. By WF, P = 6.33 D and 6.37 D. My questions are: (a) I expected to find values closer to 1.87 D in all calculations, but all they are diverging from this value by, at least, 2 %. Should I really expect it ? (b) Anyone knows what can be happening in WF calculations when I moved the atoms? I know that if the atoms were moved beyond the unit cell, a constant factor would be summed to polarization. But, I think that is not my case because the dislocation vector was 1.0 A , while my cubic cell has 10.6 A edges. With best regards, Pedro -- Pedro Moreira IFGW - Unicamp - Brazil