[QE-users] TB09, TPSS
Michal Krompiec
michal.krompiec at gmail.com
Thu May 21 15:17:48 CEST 2020
Dear Reinaldo,
Thanks, it worked for me, too!
Dear All,
This is the corrected patch to PW/src/io_rho_xml.f90, to enable
starting a meta-GGA job from a GGA density:
154a155
> LOGICAL :: ekin_density_exists
171,174c172,181
< CALL read_rhog( TRIM(dirname) // "ekin-density", &
< root_bgrp, intra_bgrp_comm, &
< ig_l2g, nspin_, rho%kin_g, gamma_only )
< WRITE(stdout,'(5x,"Reading meta-gga kinetic term")')
---
> INQUIRE( FILE = TRIM(dirname) // "ekin-density.dat", EXIST=ekin_density_exists)
> IF ( ekin_density_exists ) THEN
> CALL read_rhog( TRIM(dirname) // "ekin-density", &
> root_bgrp, intra_bgrp_comm, &
> ig_l2g, nspin_, rho%kin_g, gamma_only )
> WRITE(stdout,'(5x,"Reading meta-gga kinetic term")')
> ELSE
> WRITE(stdout,'(5x,"Setting meta-gga kinetic term to 0")')
> rho%kin_g = 1.0
> ENDIF
Best regards,
Michal
On Thu, 21 May 2020 at 13:54, Reinaldo Pis Diez
<reinaldo.pisdiez at gmail.com> wrote:
>
> Dear Michal
>
> No, there is no need of increasing the resolution of the FFT grid if
> the previous SCAN job converges well. And the SCAN job on top the
> PBE (or other GGA) converges well with default choices, at least for
> the cases I tried.
>
> Regards,
>
> Reinaldo
>
> On 21/5/20 09:35, Michal Krompiec wrote:
> > Dear Reinaldo,
> > Thanks, this sounds very promising! Did you have to use a tighter FFT
> > grid or did the default work fine?
> > Best,
> > Michal Krompiec
> > Merck KGaA
> >
> > On Thu, 21 May 2020 at 13:20, Reinaldo Pis Diez
> > <reinaldo.pisdiez at gmail.com> wrote:
> >> Dear Michal and folks,
> >>
> >> A few days ago I've faced exactly the same problem after recompiling
> >> QE 6.5 with LibXC 4.3.4 to use TB09 to see its effect on the band
> >> gap of some semiconductors.
> >>
> >> What I saw instead is that an scf run of the SCAN functional, also a
> >> metaGGA one, converges smoothly on top of a scf, relax or vc-relax
> >> job using PBE, for example. TB09 and the others metaGGA available
> >> show the divergent behavior you are mentioning.
> >>
> >> Then, I tried a TB09 job on top of the converged SCAN calculation
> >> using restart_mode = 'restart' and the job converged in a few
> >> iterations, no divergence was observed. After the TB09 scf job
> >> converged, I was able to run nscf and bands jobs to obtain both DOS
> >> and band structures.
> >>
> >> I understand this is not a solution, but a workaround as a more
> >> elegant solution is found.
> >>
> >> Regards,
> >>
> >> Reinaldo Pis Diez
> >> Center of Inorganic Chemistry
> >> National University of La Plata
> >> Argentina
> >>
> >>> Dear Paolo,
> >>> I changed io_rho_xml.f90 so that if the kinetic energy density file
> >>> isn't found, the array is set to 0:
> >>>
> >>> 155d144
> >>> < LOGICAL :: ekin_density_exists
> >>> 172,180c161,164
> >>> < INQUIRE( FILE=TRIM(dirname) // "ekin-density",
> >>> EXIST=ekin_density_exists)
> >>> < IF ( ekin_density_exists ) THEN
> >>> < CALL read_rhog( TRIM(dirname) // "ekin-density", &
> >>> < root_bgrp, intra_bgrp_comm, &
> >>> < ig_l2g, nspin_, rho%kin_g, gamma_only )
> >>> < WRITE(stdout,'(5x,"Reading meta-gga kinetic term")')
> >>> < ELSE
> >>> < rho%kin_g = 1.0
> >>> < ENDIF
> >>>
> >>> Now I can start a TB09 calculation from a PBE density, but still my
> >>> test case diverges immediately (=faster than when starting from
> >>> scratch), regardless of diagonalization method. For example:
> >>> The initial density is read from file :
> >>> ./sic.save/charge-density
> >>>
> >>> Starting wfcs from file
> >>>
> >>> total cpu time spent up to now is 0.3 secs
> >>>
> >>> Self-consistent Calculation
> >>>
> >>> iteration # 1 ecut= 82.00 Ry beta= 0.40
> >>> CG style diagonalization
> >>>
> >>>
> >>> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
> >>> Error in routine c_bands (1):
> >>> too many bands are not converged
> >>> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
> >>>
> >>> I would be very grateful for any suggestions.
> >>> Best,
> >>> Michal
> >>>
> >>> P.S. This is my input file:
> >>> &CONTROL
> >>> calculation = "scf"
> >>> prefix = "sic"
> >>> /
> >>>
> >>> &SYSTEM
> >>> a = 4.34800e+00
> >>> ibrav = 1
> >>> ecutwfc = 82
> >>> ecutrho = 328
> >>> nat = 8
> >>> ntyp = 2
> >>> occupations = "fixed"
> >>> input_dft='tb09'
> >>> /
> >>> &ELECTRONS
> >>> electron_maxstep = 1000
> >>> conv_thr = 1e-10
> >>> mixing_mode = 'plain'
> >>> mixing_beta = 0.4
> >>> startingpot = 'file'
> >>> startingwfc = 'file'
> >>> diagonalization = 'cg'
> >>> /
> >>>
> >>> K_POINTS automatic
> >>> 8 8 8 1 1 1
> >>>
> >>> ATOMIC_SPECIES
> >>> Si 28.08500 Si.upf
> >>> C 12.01060 C.upf
> >>>
> >>>
> >>> ATOMIC_POSITIONS {angstrom}
> >>> Si 0.000000 0.000000 0.000000
> >>> Si 0.000000 2.174000 2.174000
> >>> Si 2.174000 0.000000 2.174000
> >>> Si 2.174000 2.174000 0.000000
> >>> C 1.087000 1.087000 1.087000
> >>> C 1.087000 3.261000 3.261000
> >>> C 3.261000 1.087000 3.261000
> >>> C 3.261000 3.261000 1.087000
> >>>
> >>> On Fri, 8 May 2020 at 09:39, Paolo Giannozzi <p.giannozzi at gmail.com> wrote:
> >>>> On Thu, May 7, 2020 at 10:33 PM Michal Krompiec <michal.krompiec at gmail.com> wrote:
> >>>>
> >>>>> it was suggested to start from a density calculated with a different functional, but when I try to read in PBE density, it complains that it cannot read the kinetic energy file (which obviously cannot be there).
> >>>> this can be easily changed, I think: just disable the check and set the kinetic energy density to zero
> >>>>
> >>>>> Should TPSS or SCAN pseudos work better (and where do I get them from)?
> >>>> I don't think the problem is in the pseudos but in the nasty numerical behavior of meta-GGAs. See for instance here: https://gitlab.com/QEF/q-e/-/issues/32. Note that several bugs have been fixed in the development version.
> >>>>
> >>>> Paolo
> >>>>
> >>>>> Thanks,
> >>>>> Michal Krompiec
> >>>>> Merck KGaA
> >>>>>
> >>>>> _______________________________________________
> >>>>> Quantum ESPRESSO is supported by MaX (www.max-centre.eu/quantum-espresso)
> >>>>> users mailing list users at lists.quantum-espresso.org
> >>>>> https://lists.quantum-espresso.org/mailman/listinfo/users
> >>>>
> >>>> --
> >>>> Paolo Giannozzi, Dip. Scienze Matematiche Informatiche e Fisiche,
> >>>> Univ. Udine, via delle Scienze 208, 33100 Udine, Italy
> >>>> Phone +39-0432-558216, fax +39-0432-558222
> >>>>
> >>>> _______________________________________________
> >>>> Quantum ESPRESSO is supported by MaX (www.max-centre.eu/quantum-espresso)
> >>>> users mailing list users at lists.quantum-espresso.org
> >>>> https://lists.quantum-espresso.org/mailman/listinfo/users
> >>> _______________________________________________
> >>> Quantum ESPRESSO is supported by MaX (www.max-centre.eu/quantum-espresso)
> >>> users mailing list users at lists.quantum-espresso.org
> >>> https://lists.quantum-espresso.org/mailman/listinfo/users
> >>> .
> >> _______________________________________________
> >> Quantum ESPRESSO is supported by MaX (www.max-centre.eu/quantum-espresso)
> >> users mailing list users at lists.quantum-espresso.org
> >> https://lists.quantum-espresso.org/mailman/listinfo/users
> > _______________________________________________
> > Quantum ESPRESSO is supported by MaX (www.max-centre.eu/quantum-espresso)
> > users mailing list users at lists.quantum-espresso.org
> > https://lists.quantum-espresso.org/mailman/listinfo/users
> _______________________________________________
> Quantum ESPRESSO is supported by MaX (www.max-centre.eu/quantum-espresso)
> users mailing list users at lists.quantum-espresso.org
> https://lists.quantum-espresso.org/mailman/listinfo/users
More information about the users
mailing list