cDFT convergencce issue


Clicked A Few Times
Dear all,

I am doing CDFT calculation on Ethylene Carbonate (EC) and Li-ion system. I am using following script for assigning partial negative charges to the EC and partial positive charge on Li keeping overall system charge as neutral. I put lithium atom ~2A away from the EC molecule.


echo
title "EC optimization"
memory total 4000 mb
charge  0
geometry units angstroms noautoz noautosym
 O                    -0.58741266     0.11862798    -0.87578063
 C                    -0.39419193    -0.03631447     0.43862913
 O                     0.90264924    -0.14939837     0.74715390
 C                     1.69985081     0.09607299    -0.43833839
 C                     0.67506303    -0.04499391    -1.56715815
 O                    -1.28932223    -0.06743043     1.24524471
 H                     2.11777752     1.10059924    -0.36036340
 H                     2.49735567    -0.64323621    -0.46802647
 H                     0.74640495     0.72877434    -2.32861155
 H                     0.67984445    -1.03246273    -2.03082429
 Li                   -1.84288538    -0.10465700     3.02813433
end
basis
* library 6-311++G**
end

driver
maxiter 1  
xyz final
end


dft
iterations 1   
 xc b3lyp
 convergence nolevelshifting
 mult 2
 cdft 1 10 charge -0.2 
 cdft 11 11 charge 0.2 
end

task dft optimize



However, cDFT calculation always failed to optimize with the following error message-

CDFT failed to optimize the multipliers.

multipliers:

      1       -0.0017261087
      2        0.0017261087

------------------------------------------------------------------------

CDFT failed to optimize multipliers, cdft_maxiter=       50

------------------------------------------------------------------------



I also tried adding "set dft:cdft_maxiter 999" statement, but it didn't work. I run these simulations in both NWChem 6.3.2 version.

I would highly appreciate if anyone help me to figure out what is going wrong.

Thank you in advance.

Mahbub

Clicked A Few Times
Try out if the system converges at a smaller basis set (e.g. 3-21G) and then project it to the
larger one. The "iterations 1" statement also might be the problem.

basis "small"
*   library 3-21G*
end

basis "large"
*   library 6-311++G**
end

set "ao basis" "small"

dft
xc b3lyp
convergence nolevelshifting
mult 2
cdft 1 10 charge -0.2
cdft 11 11 charge 0.2
vectors input atomic output "small.mos"
end

task dft

set "ao basis" "large"

dft
xc b3lyp
convergence nolevelshifting
mult 2
cdft 1 10 charge -0.2
cdft 11 11 charge 0.2
vectors input project "small" "small.mos" output "large.mos"
end

task dft optimize

Clicked A Few Times
Dear Dot Matrix,

Thank you for your response. I followed your procedure, however, simulation stopped with the same error message. This time, CDFT fails to optimize mulltiplier with even small basis set (3-21G*). I believe, it is crashing at very first SCF cycle. Do you have any other suggestion to circumvent this error?

Thanks again,
Mahbub

Clicked A Few Times
Increase the iteration criteria in the dft directive. In our input you requested only one iteration,
but that's definitely not enough.

dft
iterations 100   
xc b3lyp
convergence nolevelshifting
mult 2
cdft 1 10 charge -0.2
cdft 11 11 charge 0.2
end

I got convergence of your system at the 3-21G basis set within 12 iterations. Projecting the MOs
coefficients to your larger basis set (as described above) lead to convergence within further 21
iterations.

Furthermore also increase the "maxiter" in the driver directive to about 50, otherwise the optimization
is stopped after the specified 1 step.

Cheers!

Forum Vet
I have just discovered that the CDFT implementation had a pretty problematic bug since version 6.3.
I have found the fix for it, and the patch for 6.5 is available at

http://nwchemgit.github.io/images/Cdft.patch.gz


Forum >> NWChem's corner >> General Topics