public class CalcNumerical2ndDerivative
extends java.lang.Object
Determine the second derivative of the atomic/ molecular potential energy w.r.t. to
its generalized coordinates, u, where u is defined as the relative deviation of the
atom/ molecule from its nominal position
The class use class SetToU method to put the atom/ molecule in
space and the calculate the change in potential energy.
Output is the second derivative of the energy, phi: d2_phi/du_i^2, or d2_phi/(du_i.du_j)
For Hessian Matrix: d2_phi/(du_i.du_j) = d2_phi/(du_j.du_i)
NOTE: fixedDeltaU in the field is the interval of change. It has to be CAREFULLY picked!
Usually, start from a larger value (~0.1, e.g.) and the algorithm will reduce
the value. One way to check is to compare d2f/(duiduj) and d2f/(dujdui), of course
the smaller the value the better it is.