TURBOMOLE Users Forum
TURBOMOLE Modules => Jobex: Structure Optimization and Molecular Dynamics => Topic started by: luyj on September 04, 2016, 11:41:41 AM
-
Hello,
I used the jobex module to optimize a molecule. It did not converge within the time limit so I used the new coord file to restart it. Interestingly, it did not converge the second time either. The structure seems to not have changed. Instead the molecule simply rotated.
I will now calculate the frequencies to see if some are negative. Anyway, is this behaviour known? At least to me it happend for the first time.
Will include molden files.
-
Hello,
seems that the job did converge after about 20 geometry cycles, but the requested convergence criteria for the geometry optimization was not reached. A simple reason could be that the convergence criteria of the energy steps was lower than the one of the geometry optimization. Could you check the $scfconv settings compared to the -energy threshold in jobex?
Please check the job.last file and search for the lines:
******************************************************************
CONVERGENCE INFORMATION
Converged? Value Criterion
Energy change yes 0.0000007 0.0000010
RMS of displacement yes 0.0000378 0.0005000
RMS of gradient yes 0.0000062 0.0005000
MAX displacement yes 0.0000875 0.0010000
MAX gradient yes 0.0000138 0.0010000
******************************************************************
In your case one of the convergence checks will not be met, I guess it will be 'MAX displacement'. If the minimum has a very shallow potential energy surface, very small energy changes will cause larger displacements than usual. Within the usual errors (basis set, DFT quadrature, convergence criteria, ...) the structure can be considered as converged.
A small note not related to the topic: If you simply post the file gradient from your job directory, this will contain the structures, the gradients and the energies of each geometry step. It can be opened in the COSMOview program which is part of the free graphical user interface TmoleX. Just click on 'open' and choose 'gradient' in the list of file types to import and visualize the whole optimization.
Regards,
Uwe
-
Hello,
job.last convergence information:
******************************************************************
CONVERGENCE INFORMATION
Converged? Value Criterion
Energy change yes 0.0000000 0.0000010
RMS of displacement no 0.0097435 0.0005000
RMS of gradient yes 0.0003632 0.0005000
MAX displacement no 0.0237655 0.0010000
MAX gradient no 0.0019523 0.0010000
******************************************************************
From control:
$title
$operating system unix
$symmetry c1
$coord file=coord
$user-defined bonds file=coord
$basis file=basis
$rundimensions
dim(fock,dens)=1929693
natoms=79
nshell=659
nbf(CAO)=1962
dim(trafo[SAO<-->AO/CAO])=2416
rhfshells=1
$scfmo file=mos
$scfiterlimit 100
$thize 0.10000000E-04
$thime 5
$scfdump
$scfintunit
unit=30 size=0 file=twoint
$scfdiis
$scforbitalshift automatic=.1
$drvopt
cartesian on
basis off
global off
hessian on
dipole on
nuclear polarizability
$optimize
internal off
cartesian on
global off
basis off logarithm
$dft
functional pbe
gridsize m4
$disp3 bj
$last SCF energy change = 0.34940058E-07
$charge from dscf
-0.000 (not to be modified here)
$optinfo file=optinfo
$hessapprox file=hessapprox
$atoms
c 1-4,6-7,9-13,15-17,19-23,30-31,37-38,44-45,51-52,58,62,66-67,73-74 \
basis =c def2-TZVPP
n 5,8,14,18 \
basis =n def2-TZVPP
h 24-29,32-36,39-43,46-50,53-57,59-61,63-65,68-72,75-79 \
basis =h def2-TZVPP
$scfconv 8
$scfdamp start=0.700 step=0.050 min=0.050
$closed shells
a 1-134 ( 2 )
$energy file=energy
$grad file=gradient
$last step tm2molden
$maxcor 1387
$dipole from dscf
x 0.66212539298252 y 0.12143406649628 z 0.21366724058496 a.u.
| dipole | = 1.7951596126 debye
$tmpdir /local/2095100.1.parallel_long/
$orbital_max_rnorm 0.10199144284387E-04
$end
-
Hello,
it is sometimes faster to remove the restart files - in this case the internal redundant coordinates and the approximate hessian (file hessapprox) - and to continue with a new set of internal coordinate. Otherwise the whole history of the previous steps is taken into account to guess the next coordinates in an optimization (GDIIS).
If you use DFT and want to converge energy and geometry to the 'limit', please use a larger grid size (gridsize m4 in the $dft section). If you utilize a large basis set and especially one with diffuse basis functions, also add diffuse keyword to $dft (see manual).
I do not know which method and basis set you used, but if I take your input file and run a default RI-DFT optimization with $scfconv 8 and gridsize m4 the gradients and the energy converges quite well:
[...]
cycle = 34 SCF energy = -1500.7645357290 |dE/dxyz| = 0.000015
cycle = 35 SCF energy = -1500.7645357270 |dE/dxyz| = 0.000011
Hope this helps,
Uwe
-
Hello,
and thanks for your reply.
I updated my last post with the full control file. In short:
$grid m4, PBE/def2-TZVPP but no RI. Is that already considered "very diffuse"?
-
Hi,
def2-TZVPP is not what I would call diffuse, so adding the diffuse keyword to the $dft section should not be necessary.
But I again started a job with your coords and settings and saw no problems during the optimization.
I did, however, switch on RI. For PBE you will see a huge performance boost, the whole job converged smoothly in less than an hour on a cheap 6 core machine. For geometry optimizations there really is no reason to switch off RI, the geometry will be the same. If you do need the conventional total energy, just run the optimization with RI, remove $rij after convergence from the control file and start dscf for a single-point energy calculation. You will get (after a while) the non-RI total energy.
To get back to your initial problem: If the default settings in a geometry optimization are not sufficient to achieve convergence, check the history of the optimization before restarting the job, for example on the command line by entering:
grep cycle gradient
Or, if you use TmoleX, click on the 'Convergence' button behind the 'Status geometry' line in the Results section. This will show a graphics (energy plotted vs. number of geometry cycle). But also in TmoleX you will see an output in the 'Gradient' result section which looks like the output of 'grep cycle gradient' :
cycle = 18 SCF energy = -1500.7645309390 |dE/dxyz| = 0.02407
cycle = 19 SCF energy = -1500.7645314420 |dE/dxyz| = 0.01774
cycle = 20 SCF energy = -1500.7645316870 |dE/dxyz| = 0.01366
cycle = 21 SCF energy = -1500.7645323370 |dE/dxyz| = 0.01276
cycle = 22 SCF energy = -1500.7645333420 |dE/dxyz| = 0.01522
If the energy is not constantly decreasing and the gradient norm (dE/dxyz) is more or less constant (and not tiny), I'd recommend to remove the hessapprox file and generate new internal redundant coordinates (call define, enter geometry menu, type in 'ired', exit the menu with * and then exit define with qq). Then start jobex again to let the geometry optimization continue.
Regards,
Uwe