[Wannier] the convergence history

Jian-Xin Zhu jxzhu at lanl.gov
Tue Aug 10 23:32:00 CEST 2010


Dear Jonathan and Respectful Wannier Users, 

I notice that only very tiny difference in the input data files, case.amn and case.mmn (but with the same case.eig) can 
cause very different convergence history as listed by 
"grep CONV case.wout". 

Specifically, in one run, we have the data in the case.amn like 

....
  1  1     1        0.21855E-15      -0.79635E-15
  2  1     1       -0.11349E-15      -0.52089E-15
  3  1     1       -0.28493E-16      -0.16306E-15
  4  1     1       -0.42721E-16      -0.10135E-14
  5  1     1        0.81503E-16      -0.27408E-15
  6  1     1       -0.54509E-03      -0.73939E-15
  7  1     1       -0.42419E-16       0.41318E-15
  8  1     1        0.40974E-15      -0.12084E-15
  9  1     1        0.38064E-15      -0.80970E-15
 10  1     1       -0.22009E-16      -0.40603E-15
 11  1     1       -0.27930E-15      -0.46414E-01
 12  1     1       -0.32501E-14       0.39493E-16
....


In another run, I have the data in the case.amn like 

...
  1  1     1        0.21875E-15      -0.79355E-15
  2  1     1       -0.11628E-15      -0.52274E-15
  3  1     1       -0.28217E-16      -0.16340E-15
  4  1     1       -0.42630E-16      -0.10156E-14
  5  1     1        0.79738E-16      -0.27577E-15
  6  1     1       -0.54509E-03      -0.73893E-15
  7  1     1       -0.44166E-16       0.41235E-15
  8  1     1        0.41158E-15      -0.11671E-15
  9  1     1        0.38126E-15      -0.80936E-15
 10  1     1       -0.11113E-16      -0.40590E-15
 11  1     1       -0.28054E-15      -0.46414E-01
 12  1     1       -0.32498E-14       0.36981E-16
...

As you can see, the data difference between these two files are tiny. 

However, the run of wannier90.x gives (grep CONV case.wout) gives
 +--------------------------------------------------------------------+<-- CONV
 | Iter  Delta Spread     RMS Gradient      Spread (Ang^2)      Time  |<-- CONV
 +--------------------------------------------------------------------+<-- CONV
      0     0.357E+04     0.0000000000     3574.7401278762      92.66  <-- CONV
      1    -0.493E+02   372.8088221177     3525.4625204024      92.76  <-- CONV
    500    -0.957E-01    38.9905858488     1348.7278590515     134.80  <-- CONV
   1000    -0.112E+00    55.1124159940     1311.6807047511     177.57  <-- CONV
   1500    -0.306E-01    36.6550468502     1278.6852681732     222.40  <-- CONV
   2000    -0.625E+00   106.3566725318     1248.7507531831     266.95  <-- CONV
   2500    -0.125E-01    62.4624116187     1218.6192345383     309.60  <-- CONV
   3000    -0.260E+00   114.3061636811     1191.8569753522     356.11  <-- CONV
   3500     0.146E-01    43.8167232573     1163.2760493524     394.46  <-- CONV
   4000    -0.424E-01    46.1758663463     1135.7723168118     438.76  <-- CONV
   4500    -0.345E-01    23.4327788326     1111.1772965742     482.89  <-- CONV
   5000    -0.724E-01    46.7322360924     1084.2827740060     526.44  <-- CONV
   5500    -0.170E+00    67.0071332476     1060.5027739486     571.39  <-- CONV
   6000    -0.535E-01   150.6865621245     1038.5642711422     616.51  <-- CONV
   6500    -0.862E-01    19.9912842119     1016.7446424023     657.97  <-- CONV
   7000    -0.811E-01    39.7792227180      996.6408035943     701.06  <-- CONV
   7500     0.857E-01    93.6613012482      977.7475983733     744.92  <-- CONV
   8000    -0.578E-01    48.6060403982      959.6156229533     781.04  <-- CONV
   8500    -0.471E-01    41.1839284669      942.1960667836     820.66  <-- CONV
   9000    -0.390E-01    28.1378337551      925.1056291369     858.82  <-- CONV
   9500    -0.239E-01    27.3326672550      908.8554497941     898.98  <-- CONV
  10000    -0.143E+00    39.7871121495      893.2781557350     938.38  <-- CONV
  10500    -0.162E-01    49.8551428996      876.7572784912     976.29  <-- CONV
  11000    -0.681E-01    32.6137480644      862.1100683519    1015.70  <-- CONV
  11500    -0.749E-01    49.9323143298      847.0265627311    1054.18  <-- CONV
  12000    -0.560E-01    46.6772830218      832.9954924529    1091.03  <-- CONV
  12500    -0.172E-01    47.0582924674      817.7654849282    1129.00  <-- CONV
  13000    -0.104E+00    48.8424639940      802.9794526713    1166.37  <-- CONV
  13500    -0.381E-01    35.5571199222      789.9775183549    1203.55  <-- CONV
  14000    -0.335E-01    30.3181017578      772.8621971211    1243.37  <-- CONV
  14500    -0.331E-01    57.4200424615      757.4427096017    1281.57  <-- CONV
  15000    -0.413E-01    38.7877152333      740.9815686646    1316.62  <-- CONV
  15500     0.107E+01   181.0717144291      727.2780760529    1355.13  <-- CONV
  16000     0.113E+00    88.5568630907      709.6032889314    1393.87  <-- CONV
  16500     0.311E+00   115.1199039272      694.4003946711    1428.52  <-- CONV
...

for the first set of input data files, while 

 +--------------------------------------------------------------------+<-- CONV
 | Iter  Delta Spread     RMS Gradient      Spread (Ang^2)      Time  |<-- CONV
 +--------------------------------------------------------------------+<-- CONV
      0     0.356E+04     0.0000000000     3558.5096736256     105.90  <-- CONV
      1    -0.353E+02   423.1924704930     3523.2543928483     105.97  <-- CONV
    500    -0.183E+00    52.0555974996     1368.7624483647     138.00  <-- CONV
   1000    -0.426E+00    49.2248689866     1314.3325401227     167.40  <-- CONV
   1500    -0.942E-01    60.0357243128     1271.6743198737     199.93  <-- CONV
   2000    -0.107E+00    86.3832077848     1231.8503525761     234.03  <-- CONV
   2500    -0.475E-01    65.3158979743     1186.7676497831     267.74  <-- CONV
   3000    -0.116E+00    45.0657395263     1147.6577016478     296.57  <-- CONV
   3500    -0.128E+00    65.7423110503     1109.7870721959     329.83  <-- CONV
   4000    -0.202E+00    52.0755019227     1068.0526809933     372.79  <-- CONV
   4500    -0.858E-01    48.6574279835     1026.3033625983     415.30  <-- CONV
   5000    -0.604E-01    60.7029969533      985.0807189880     458.55  <-- CONV
   5500    -0.699E-02    59.1745341120      938.4155415161     500.99  <-- CONV
   6000    -0.597E-01    36.1744129850      884.9888932668     547.49  <-- CONV
   6500    -0.184E+00    34.0572753280      835.5378730437     592.42  <-- CONV
   7000    -0.124E+00    19.2000187770      763.5971483380     637.29  <-- CONV
   7500    -0.264E-02     8.2876092399      324.3235536167     676.07  <-- CONV
   8000    -0.214E-02     2.1559059571      322.3922244461     720.51  <-- CONV
   8500    -0.707E+00   216.6533984616      322.3013601017     766.37  <-- CONV
   9000    -0.570E-03     1.0489618008      321.6195647738     811.24  <-- CONV
   9500    -0.476E-04     0.9413049558      319.6817585389     855.78  <-- CONV
  10000    -0.437E-04     0.8011913893      318.6634661373     900.74  <-- CONV
  10500    -0.548E-04     0.3515922329      317.9155341388     944.53  <-- CONV
  11000    -0.104E-03     0.3515895381      317.3109500312     988.66  <-- CONV
  11500    -0.152E+00     1.9180527710      317.2340508647    1034.44  <-- CONV
  12000    -0.202E-02     0.8983133603      316.5451301009    1073.09  <-- CONV
  12500    -0.778E-03     0.7619122497      315.9566736906    1111.86  <-- CONV
  13000    -0.145E-02     1.2927764041      315.7531082220    1151.68  <-- CONV
  13500    -0.527E-03     0.8385362060      315.6372320068    1191.63  <-- CONV
  14000    -0.712E-03     0.2385556039      313.9009178869    1231.34  <-- CONV
  14500    -0.769E-02     0.7448840127      313.6252928788    1270.74  <-- CONV
  15000    -0.302E+00     7.5948125445      314.9248903246    1308.39  <-- CONV
  15500    -0.109E-05     0.9375040298      313.3253683847    1346.33  <-- CONV
  16000    -0.167E-06     0.6625200904      313.3251390354    1385.34  <-- CONV
  16500    -0.707E-07     0.5599569354      313.3250736131    1424.91  <-- CONV
...

for the second set of input data files.


Is this kind of difference in the convergence history acceptable?

In the case.win, I put in trial_step = 0.5, but is such a large number of iterations 
(at the level of several ten thousands) needed for convergence 
really making sense?
  
Thanks for the comment. 

Jianxin


More information about the Wannier mailing list