This thread is locked.Only browsing is available.
Top Page > Browsing
Non convergence in SOC calculation
Date: 2022/12/11 13:27
Name: Xinliang Huang   <  xilhuang@foxmail.com>

Hi,

I used OpenMX to calculate the band structure of ZrTe-001 surface slab model (the surface has polarity). When SOC is not considered, it can converge, and the results are consistent with those calculated by VASP. However, when SOC is considered, I tried to set different parameters for keywords such as scf.Mixing.Type, scf.Mixing.History, but they did not converge. (When SOC is considered, VASP calculation can converge but the calculation speed is slow.) Can you give me some suggestions?

The input file and calculation results are as follows. Complete input file:

#
# File Name
#

System.CurrrentDirectory        ./    # default=./
System.Name                      zrte
level.of.stdout                  1    # default=1 (1-3)
level.of.fileout                  0    # default=1 (0-2)
DATA.PATH                        /job/huangxl_job/software/openmx3.9/DFT_DATA19

#
# Definition of Atomic Species
#

Species.Number      2
<Definition.of.Atomic.Species
Te    Te7.0-s3p2d2  Te_PBE19
Zr    Zr7.0-s3p2d1  Zr_PBE19
Definition.of.Atomic.Species>

#
# Atoms
#

Atoms.Number        31
Atoms.SpeciesAndCoordinates.Unit  FRAC # Ang|AU
<Atoms.SpeciesAndCoordinates
1 Te   0.0000000000000000  0.0000000000000000  0.1234497407689840  8 8  0.0 0.0 0.0 0.0 1
2 Te   0.0000000000000000  0.0000000000000000  0.1753798359163402  8 8  0.0 0.0 0.0 0.0 1
3 Te   0.0000000000000000  0.0000000000000000  0.2271139670840644  8 8  0.0 0.0 0.0 0.0 1
4 Te   0.0000000000000000  0.0000000000000000  0.2787499980000021  8 8  0.0 0.0 0.0 0.0 1
5 Te   0.0000000000000000  0.0000000000000000  0.3304199990000001  8 8  0.0 0.0 0.0 0.0 1
6 Te   0.0000000000000000  0.0000000000000000  0.3820899999999980  8 8  0.0 0.0 0.0 0.0 1
7 Te   0.0000000000000000  0.0000000000000000  0.4337599759999975  8 8  0.0 0.0 0.0 0.0 1
8 Te   0.0000000000000000  0.0000000000000000  0.4854400039999973  8 8  0.0 0.0 0.0 0.0 1
9 Te   0.0000000000000000  0.0000000000000000  0.5371099540000017  8 8  0.0 0.0 0.0 0.0 1
10 Te   0.0000000000000000  0.0000000000000000  0.5887800060000004  8 8  0.0 0.0 0.0 0.0 1
11 Te   0.0000000000000000  0.0000000000000000  0.6404500080000020  8 8  0.0 0.0 0.0 0.0 1
12 Te   0.0000000000000000  0.0000000000000000  0.6921200089999999  8 8  0.0 0.0 0.0 0.0 1
13 Te   0.0000000000000000  0.0000000000000000  0.7437614682943091  8 8  0.0 0.0 0.0 0.0 1
14 Te   0.0000000000000000  0.0000000000000000  0.7954916015596067  8 8  0.0 0.0 0.0 0.0 1
15 Te   0.0000000000000000  0.0000000000000000  0.8474339817045869  8 8  0.0 0.0 0.0 0.0 1
16 Zr   0.3333299689999976  0.6666699949999995  0.0983427710924631  6 6  0.0 0.0 0.0 0.0 1
17 Zr   0.3333299689999976  0.6666699949999995  0.1493985306943477  6 6  0.0 0.0 0.0 0.0 1
18 Zr   0.3333299689999976  0.6666699949999995  0.2012820357636478  6 6  0.0 0.0 0.0 0.0 1
19 Zr   0.3333299689999976  0.6666699949999995  0.2529200099999969  6 6  0.0 0.0 0.0 0.0 1
20 Zr   0.3333299689999976  0.6666699949999995  0.3045899860000034  6 6  0.0 0.0 0.0 0.0 1
21 Zr   0.3333299689999976  0.6666699949999995  0.3562600129999964  6 6  0.0 0.0 0.0 0.0 1
22 Zr   0.3333299689999976  0.6666699949999995  0.4079299890000030  6 6  0.0 0.0 0.0 0.0 1
23 Zr   0.3333299689999976  0.6666699949999995  0.4595999900000010  6 6  0.0 0.0 0.0 0.0 1
24 Zr   0.3333299689999976  0.6666699949999995  0.5112699909999989  6 6  0.0 0.0 0.0 0.0 1
25 Zr   0.3333299689999976  0.6666699949999995  0.5629399930000005  6 6  0.0 0.0 0.0 0.0 1
26 Zr   0.3333299689999976  0.6666699949999995  0.6146099939999985  6 6  0.0 0.0 0.0 0.0 1
27 Zr   0.3333299689999976  0.6666699949999995  0.6662799949999965  6 6  0.0 0.0 0.0 0.0 1
28 Zr   0.3333299689999976  0.6666699949999995  0.7179499969999981  6 6  0.0 0.0 0.0 0.0 1
29 Zr   0.3333299689999976  0.6666699949999995  0.7695875021202159  6 6  0.0 0.0 0.0 0.0 1
30 Zr   0.3333299689999976  0.6666699949999995  0.8214743140918150  6 6  0.0 0.0 0.0 0.0 1
31 Zr   0.3333299689999976  0.6666699949999995  0.8725288776003758 6 6  0.0 0.0 0.0 0.0 1
Atoms.SpeciesAndCoordinates>
Atoms.UnitVectors.Unit            Ang # Ang|AU
<Atoms.UnitVectors
    3.7927999496000000    0.0000000000000000    0.0000000000000000
    -1.8963999748000000    3.2846611078999999    0.0000000000000000
    0.0000000000000000    0.0000000000000000  75.3360977173000066
Atoms.UnitVectors>

#
# SCF or Electronic System
#

scf.XcType                GGA-PBE    # LDA|LSDA-CA|LSDA-PW|GGA-PBE
scf.SpinPolarization        NC        # On|Off|NC
scf.SpinOrbit.Coupling      on        # On|Off, default=off
scf.ElectronicTemperature  300.0      # default=300 (K)
scf.energycutoff          150.0      # default=150 (Ry)
scf.maxIter                300        # default=40
scf.EigenvalueSolver      band        # DC|GDC|Cluster|Band
scf.Kgrid                  9 9 1      # means n1 x n2 x n3
scf.Mixing.Type          rmm-diisk    # Simple|Rmm-Diis|Gr-Pulay|Kerker|Rmm-Diisk
scf.Init.Mixing.Weight    0.30        # default=0.30
scf.Min.Mixing.Weight      0.001      # default=0.001
scf.Max.Mixing.Weight      0.700      # default=0.40
scf.Mixing.History        50          # default=5
scf.Mixing.StartPulay      30          # default=6
scf.Mixing.EveryPulay      5          # default=1
scf.criterion            1.0e-7      # default=1.0e-6 (Hartree)

scf.restart                on

#
# MD or Geometry Optimization
#

MD.Type                    nomd      # Nomd|Opt|NVE|NVT_VS|NVT_NH
MD.maxIter                    1        # default=1
MD.TimeStep                  1        # default=0.5 (fs)
MD.Opt.criterion        1.0e-5        # default=1.0e-4 (Hartree/bohr)

#
# Band dispersion
#

Band.dispersion              on        # on|off, default=off
# if <Band.KPath.UnitCell does not exist,
#    the reciprical lattice vector is employed.
Band.Nkpath                3
<Band.kpath               
50  0.0000 0.0000 0.0000  0.5000 0.0000 0.0000  G M
50  0.5000 0.0000 0.0000  0.3333 0.3333 0.3333  M K
50  0.3333 0.3333 0.0000  0.0000 0.0000 0.0000  K G
Band.kpath>

#
# MO output
#

MO.fileout                      off  # on|off
num.HOMOs                        1    # default=2
num.LUMOs                        1    # default=2
MO.Nkpoint                        2    # default=1
<MO.kpoint
  0.0  0.0  0.0
  0.0  0.0  0.2
MO.kpoint>

#
# DOS and PDOS
#

Dos.fileout                  on        # on|off, default=off
Dos.Erange              -10.0  10.0    # default = -20 20
Dos.Kgrid                12 12 1      # default = Kgrid1 Kgrid2 Kgrid3
FermiSurfer.fileout          off

Some information in the results:

***********************************************************
***********************************************************
                  SCF history at MD= 1                   
***********************************************************
***********************************************************

  SCF=  1  NormRD=  1.000000000000  Uele= -602.381961707958
  SCF=  2  NormRD=  6.749016392506  Uele= -601.118880037866
  SCF=  3  NormRD=  4.570211929831  Uele= -601.080230618401
  SCF=  4  NormRD=  3.946391976359  Uele= -600.691273982051
  SCF=  5  NormRD=  8.960782751561  Uele= -602.850545678077
  SCF=  6  NormRD=  2.475112898577  Uele= -601.839473999032
  SCF=  7  NormRD=  2.133772425700  Uele= -601.539238360054
  SCF=  8  NormRD=  5.380989265624  Uele= -603.087519806945
  SCF=  9  NormRD=  3.911671205431  Uele= -602.547563342183
  SCF=  10  NormRD=  3.527389054254  Uele= -601.795525239367
  ...
  SCF= 290  NormRD=  0.528307639655  Uele= -602.499581752585
  SCF= 291  NormRD=  0.889255024524  Uele= -602.658270974536
  SCF= 292  NormRD=  0.732975240745  Uele= -602.482389425581
  SCF= 293  NormRD=  1.504631658150  Uele= -601.954052259091
  SCF= 294  NormRD=  1.373315629286  Uele= -601.989326160509
  SCF= 295  NormRD=  0.816123312978  Uele= -602.182844153792
  SCF= 296  NormRD=  0.692189443274  Uele= -602.316023828710
  SCF= 297  NormRD=  0.537134934865  Uele= -602.283329441435
  SCF= 298  NormRD=  0.821754878533  Uele= -602.630130670665
  SCF= 299  NormRD=  0.737810281326  Uele= -602.624761233654
  SCF= 300  NormRD=  0.480418144824  Uele= -602.598163112426

Thanks in advance.
メンテ
Page: [1]

Re: Non convergence in SOC calculation ( No.1 )
Date: 2022/12/11 18:05
Name: Naoya Yamaguchi

Hi,

After changing parameters as follows, it was converged.

```
#scf.Init.Mixing.Weight    0.30        # default=0.30
#scf.Min.Mixing.Weight      0.001      # default=0.001
#scf.Max.Mixing.Weight      0.700      # default=0.40
#scf.Mixing.History        50          # default=5
#scf.Mixing.StartPulay      30          # default=6
scf.Mixing.History        40          # default=5
scf.Mixing.StartPulay      15          # default=6
#scf.Mixing.EveryPulay      5          # default=1
```

```
#scf.restart                on
```

Regards,
Naoya Yamaguchi
メンテ
Re: Non convergence in SOC calculation ( No.2 )
Date: 2022/12/12 13:03
Name: Xinliang Huang  <xilhuang@foxmail.com>

Hi,

Thank you very much. I did the calculation according to your suggestion, but it still did not converge. Although there is no convergence, I use the "bandgnu13 zrte. Band" command to get "zrte. GNUBAND", and the band range is "[- 619.934,038: - 496.378,057]", which should also be wrong. When I do not consider SOC, I calculate the normal convergence, and the band obtained is consistent with VASP.



The results calculated by modifying the parameters are as follows

#
# SCF or Electronic System
#

scf.XcType                GGA-PBE    # LDA|LSDA-CA|LSDA-PW|GGA-PBE
scf.SpinPolarization        NC        # On|Off|NC
scf.SpinOrbit.Coupling      on        # On|Off, default=off
scf.ElectronicTemperature  300.0      # default=300 (K)
scf.energycutoff          150.0      # default=150 (Ry)
scf.maxIter                300        # default=40
scf.EigenvalueSolver      band        # DC|GDC|Cluster|Band
scf.Kgrid                  9 9 1      # means n1 x n2 x n3
scf.Mixing.Type          rmm-diisk    # Simple|Rmm-Diis|Gr-Pulay|Kerker|Rmm-Diisk
#scf.Init.Mixing.Weight    0.30        # default=0.30
#scf.Min.Mixing.Weight      0.001      # default=0.001
#scf.Max.Mixing.Weight      0.700      # default=0.40
scf.Mixing.History        40          # default=5
scf.Mixing.StartPulay      15          # default=6
#scf.Mixing.EveryPulay      5          # default=1
scf.criterion            1.0e-7      # default=1.0e-6 (Hartree)

#scf.restart                on



***********************************************************
***********************************************************
                  SCF history at MD= 1                   
***********************************************************
***********************************************************

  SCF=  1  NormRD=  1.000000000000  Uele= -449.504873594620
  SCF=  2  NormRD=  3.522260490241  Uele= -449.504873594620
  SCF=  3  NormRD=  3.882057386479  Uele= -449.184017012474
  SCF=  4  NormRD=  5.091406762496  Uele= -451.707845212377
  SCF=  5  NormRD=  4.154323643120  Uele= -451.011459025092
  ...
  SCF= 295  NormRD=  1.346095960590  Uele= -602.519157767342
  SCF= 296  NormRD=  0.518034068676  Uele= -602.122555792183
  SCF= 297  NormRD=  1.413891284058  Uele= -602.802972366728
  SCF= 298  NormRD=  0.574727290489  Uele= -602.179814378987
  SCF= 299  NormRD=  1.442925217279  Uele= -602.587739724852
  SCF= 300  NormRD=  0.572525955205  Uele= -602.165382423991


I don't know why. I hope to get your advice again.

メンテ
Re: Non convergence in SOC calculation ( No.3 )
Date: 2022/12/12 15:06
Name: Naoya Yamaguchi

Dear Xinliang Huang,

Which version of the OpenMX did you use? You can find it from the beginning of the `out` file.

Regards,
Naoya Yamaguchi
メンテ
Re: Non convergence in SOC calculation ( No.4 )
Date: 2022/12/12 16:44
Name: T. Ozaki

Hi,

With the following parameter settings:


scf.XcType                GGA-PBE    # LDA|LSDA-CA|LSDA-PW|GGA-PBE
scf.SpinPolarization        NC       # On|Off|NC
scf.SpinOrbit.Coupling      on       # On|Off, default=off
scf.ElectronicTemperature  300.0     # default=300 (K)
scf.energycutoff          150.0      # default=150 (Ry)
scf.maxIter                300       # default=40
scf.EigenvalueSolver      band       # DC|GDC|Cluster|Band
scf.Kgrid                  9 9 1     # means n1 x n2 x n3
scf.Mixing.Type          rmm-diisk   # Simple|Rmm-Diis|Gr-Pulay|Kerker|Rmm-Diisk
scf.Init.Mixing.Weight    0.01       # default=0.30
scf.Min.Mixing.Weight      0.01      # default=0.001
scf.Max.Mixing.Weight      0.10      # default=0.40
scf.Mixing.History         50        # default=5
scf.Mixing.StartPulay      20        # default=6
scf.criterion            1.0e-7      # default=1.0e-6 (Hartree)

#scf.Mixing.EveryPulay      5        # default=1
#scf.restart                on


the SCF convergence history with v3.9.9 is as follows:

  SCF=  1  NormRD=  1.000000000000  Uele= -451.717361015908
  SCF=  2  NormRD=  1.624117755958  Uele= -451.717361015908
  SCF=  3  NormRD=  1.396378347899  Uele= -451.268863837976
  SCF=  4  NormRD=  1.318625203323  Uele= -450.918083395584
  SCF=  5  NormRD=  1.424656615150  Uele= -452.101547767346
  SCF=  6  NormRD=  2.422898116925  Uele= -449.759557950457
  ....
  ...
  ..

  SCF=  66  NormRD=  0.000089317204  Uele= -452.178669507277
  SCF=  67  NormRD=  0.000050195492  Uele= -452.178684199714
  SCF=  68  NormRD=  0.000024407247  Uele= -452.178688826464
  SCF=  69  NormRD=  0.000013469659  Uele= -452.178693623110
  SCF=  70  NormRD=  0.000007256598  Uele= -452.178693533832

We see that your "Uele" is very different from mine.
I wonder that your compilation is proper.
Did you perform the "runtest" to check the properness of compilation? 
https://www.openmx-square.org/openmx_man3.9/node17.html

Regards,

TO
メンテ
Re: Non convergence in SOC calculation ( No.5 )
Date: 2022/12/12 19:25
Name: Xinliang Huang  <xilhuang@foxmail.com>

Hi,

The version of OpenMX I used was v3.9.2. After compiling and testing, there was no problem. But I have encountered the problem of non-convergence. Now I have downloaded v3.9.9, compiled and tested it, and the problem has been solved. Thank you very much for your help.

Regards,
Xinliang Huang
メンテ

Page: [1]