Subject: Summary) Movement unit for geometry optimization

From: "Telkuni Tsuru" <telkuni=at=venus.dti.ne.jp>
Date: Sat, 12 Feb 2005 13:58:07 +0900

Hello, CCLers.

I had sent following question last week, then got 3 replies. Some of
them are difficult to understand for me, but I think that I have to
summarize them for CCLnet.

Thanks to Dr.Campen, Dr.Pye, and Mr.Fox.

--- Original Question ---
> I like to ask the movement unit for geometry optimization.
>
> The books which I have describe the optimization method as follows:
>    ... when one can't find optimized structure, one should calculate
>   force constant of atoms as the differentiation of energy, and move
>   each atoms obeying the force direction. ...
>
> Exactly, there are many MO calculating softwares: Gaussian, Mopac, ...
> and so on. I wonder what units they use. 0.1[A], 0.05[A] or 0.01[A] ?
>   * [A] is angstrom.
>
> If you know the information which concerns with this question, please
> let me know.
> When I receive replies, I will summarize them.

--- Replies ---
1) from Dr.Campen
My impression is that Gaussian (at least in 03) uses an adaptive criterion
(i.e. they change the step size based on the local slope).  The specifics behind
this are referenced on
  http://www.gaussian.com/g_ur/k_opt.htm
if you scroll down to the section titled

THE BERNY OPTIMIZATION ALGORITHM
Sorry not to be more useful.

R. Kramer Campen

2) from Dr.Pye
What you are referring to is an energy-only optimization with numerical
differentiation. Very few programs do this by default these days. One is
forced  to do this if the gradients are very difficult to calculate
analytically (full CI calculations might fall into this category, as might some
of the more novel CC plus perturbation theories. A more practical reason is
that in some codes, the calculation of the energy may be implemented, but not
the calculation of the gradient (yet!).

For standard Hartree-Fock, Density functional calculations, and MP2, efficient
routines for calculating derivatives have generally been implemented without
resorting to numerical differentiation, at least for Kohn-Sham type theories.
It is a little more difficult for grid-based methods, I believe (comments?).
As long as the time to calculate a derivative doesnt take N* the time to
calculate the energy, it is usually worth it. N is the number of parameters
(about 3 times the number of atoms).

The "units" that you refer to is actually more precisely called the finite
differentiation step size. You want it to be small enough so that second and
higher order terms of the Taylor series about the point of interest are small
enough so that they are negligible, but you also want it so that it is bigger
than the machine epsilon. In practice, you actually want it bigger than the
noise in the energy (which is a combination of integral accuracy and SCF
convergence criteria).

There are a number of energy-only optimization techniques that can be used.
A good text on numerical analysis would prove handy.

-Cory

3) from Douglas
    I am not quite sure I understand your question.  When computing
gradients and force constants you can use analytic derivatives, so
no displacement, or numerical means and compute either first or
second derivatives.  For most methods in Gaussian analytic derivatives
are used.  For cases where no analytic derivatives are available then
it uses 0.01 as the displacment for each atom.  When analytic first
derivatives are available then it is 0.001 angstrom displacments on
each atom.

   See the G03 IOps Reference, page 11 for IOP(1/39).

----------------------------------------------------
        Telkuni Tsuru     telkuni=at=venus.dti.ne.jp