dft scf convergence problem

From NWChem

Viewed 2525 times, With a total of 1 Posts
Jump to: navigation, search

  • Guest -
    Send PM
Dear nwchem community,

I am having trouble to convergence a wavefunction for a carbon nanotube with 2 hydrogen atoms using DFT+PBE0.
Here is (part of) the input

basis
 * library 3-21g
end
dft
   iterations 2000
   xc pbe0
   direct
   grid fine
   convergence gradient 8E-4 diis 4
end
driver 
  xyz geo
end
task dft optimize


I have two systems (quite similar except for different positioning of the hydrogen atoms.
The structures are optimized PBE geometries from CPMD.

Here is one that works

2b/output: d= 0,ls=0.0,diis     1  -9108.4700250578 -8.16D+04  8.10D+00  2.44D+01  5609.3
2b/output: d= 0,ls=0.5,diis     2  -9034.9757357418  7.35D+01  4.66D-01  8.74D+01 17541.8
2b/output: d= 0,ls=0.5,diis     3  -9041.3269753269 -6.35D+00  2.02D-01  7.76D+01 29413.3
2b/output: d= 0,ls=0.5,diis     4  -9043.6904442580 -2.36D+00  1.21D-01  7.56D+01 41248.0
2b/output: d= 0,ls=0.5,diis     5  -9044.9817332625 -1.29D+00  7.70D+00  7.43D+01 53002.8
2b/output: d= 0,ls=0.5,diis     6  -9095.2034257819 -5.02D+01  3.46D-02  5.85D+01 59436.9
2b/output: d= 0,ls=0.5,diis     7  -9105.7684680531 -1.06D+01  4.17D-03  1.89D+01 65563.8
2b/output: d= 0,ls=0.5,diis     8  -9104.4813523533  1.29D+00  1.18D-03  3.24D+01 71684.0
2b/output: d= 0,ls=0.5,diis     9  -9105.8769727898 -1.40D+00  7.15D-04  2.18D+01 77663.8
2b/output: d= 0,ls=0.5,diis    10  -9107.4244567859 -1.55D+00  1.16D-03  1.31D+01 83650.6
2b/output: d= 0,ls=0.5,diis    11  -9109.2070951994 -1.78D+00  1.27D-03  4.41D+00 92383.6
2b/output: d= 0,ls=0.5,diis    12  -9110.2622692031 -1.06D+00  5.06D-04  6.65D-01100948.2
2b/output: d= 0,ls=0.5,diis    13  -9110.3633724795 -1.01D-01  2.90D-04  3.92D-01108950.1
2b/output: d= 0,ls=0.5,diis    14  -9110.4234724909 -6.01D-02  2.45D-04  2.25D-01114918.9
2b/output: d= 0,ls=0.5,diis    15  -9110.4774325073 -5.40D-02  1.56D-04  6.57D-02120876.2
2b/output: d= 0,ls=0.5,diis    16  -9110.5041094244 -2.67D-02  1.04D-04  2.15D-02126837.3
2b/output: d= 0,ls=0.5,diis    17  -9110.5187859539 -1.47D-02  9.39D-05  1.60D-02132823.1
2b/output: d= 0,ls=0.5,diis    18  -9110.5298692886 -1.11D-02  9.20D-05  1.29D-02138816.4
2b/output: d= 0,ls=0.5,diis    19  -9110.5394020628 -9.53D-03  7.53D-05  9.69D-03144784.6
2b/output: d= 0,ls=0.5,diis    20  -9110.5469022106 -7.50D-03  6.75D-05  7.56D-03150754.4


And one that doesn't

2a/output: d= 0,ls=0.0,diis     1  -9108.5023183806 -8.16D+04  8.27D+00  2.43D+01  5616.0
2a/output: d= 0,ls=0.5,diis     2  -9034.6634884197  7.38D+01  4.65D-01  8.50D+01 17581.9
2a/output: d= 0,ls=0.5,diis     3  -9040.9435208185 -6.28D+00  1.96D-01  7.60D+01 29477.9
2a/output: d= 0,ls=0.5,diis     4  -9043.2585279689 -2.32D+00  1.22D-01  7.42D+01 41316.6
2a/output: d= 0,ls=0.5,diis     5  -9044.5516229056 -1.29D+00  7.86D+00  7.31D+01 53169.2
2a/output: d= 0,ls=0.5,diis     6  -9093.4199801709 -4.89D+01  2.87D-02  6.70D+01 59590.5
2a/output: d= 0,ls=0.5,diis     7  -9080.1167325488  1.33D+01  3.59D-03  1.43D+02 65637.3
2a/output: d= 0,ls=0.5,diis     8  -9095.7736875505 -1.57D+01  1.38D-03  6.66D+01 71659.0
2a/output: d= 0,ls=0.5,diis     9  -9099.3601973387 -3.59D+00  7.82D-04  4.62D+01 77709.0
2a/output: d= 0,ls=0.5,diis    10  -9102.5658530250 -3.21D+00  1.79D-02  3.06D+01 83711.3
2a/output: d= 0,ls=0.5,diis    11  -9030.5701065372  7.20D+01  4.80D-03  3.48D+02 93114.0
2a/output: d= 0,ls=0.5,diis    12  -9035.9333262450 -5.36D+00  3.85D-03  2.94D+02102218.4
2a/output: d= 0,ls=0.5,diis    13  -9039.6119263338 -3.68D+00  3.68D-03  2.71D+02110320.0
2a/output: d= 0,ls=0.5,diis    14  -9042.2300588374 -2.62D+00  1.59D-01  2.66D+02116583.4
2a/output: d= 0,ls=0.5,diis    15   -942.0039711970  8.10D+03  7.09D-02  1.99D+04123442.3
2a/output: d= 0,ls=0.5,diis    16  -3417.0117307364 -2.48D+03  4.12D-02  1.52D+04130265.1
2a/output: d= 0,ls=0.5,diis    17  -4366.1889341364 -9.49D+02  3.40D-02  1.61D+04137121.0
2a/output: d= 0,ls=0.5,diis    18  -4847.9189437237 -4.82D+02  5.71D+00  1.96D+04144007.5
2a/output: d= 0,ls=0.5,diis    19  43359.2082533070  4.82D+04  7.22D+00  3.62D+03152453.2
2a/output: d= 0,ls=0.5,diis    20  35898.8558078528 -7.46D+03  4.11D+00  1.53D+04160518.8
2a/output: d= 0,ls=0.5,diis    21  24338.8539746737 -1.16D+04  4.64D-01  2.30D+04167974.2
2a/output: d= 0,ls=0.5,diis    22  22345.8899119936 -1.99D+03  6.14D-01  2.31D+04175136.6



It seems to me that the initial step size is too large and the DIIS algorithm gets lost for the latter geometry.
Is there a way to choose the initial DIIS step size?
Or is there another, algorithm like steepest descent or conjugate gradient that I can try for the SCF convergence?
(I could not find it in the part of manual about dft)

Thank you in advance for any suggestions.

Best, Jaap

  • Niri Forum:Admin, Forum:Mod, NWChemDeveloper, bureaucrat, sysop
    Profile
    Send PM
Gets Around
Threads 4
Posts 153
Hi Jaap,

We are aware of the convergence issues with the standard diis. I will be releasing a quadratic convergence algorithm as soon as I tie up some loose ends. In the meantime the following modified input should help convergence.

Here's the modified input. This will do a HF calculation and then use these vectors as input for the PBE0

basis
* library 3-21g
end

scf
 maxiter 100
direct
vectors output hf.movecs
end
task scf energy

dft
  iterations 2000
xc pbe0
direct
grid fine
vectors input hf.movecs output pbe0.movecs
end

driver
 xyz geo
end

task dft optimize


Let me know if there are further issues.

Best wishes,
-Niri


Forum >> NWChem's corner >> Running NWChem



Who's here now Members 0 Guests 1 Bots/Crawler 0


AWC's: 2.5.10 MediaWiki - Stand Alone Forum Extension
Forum theme style by: AWC