By default the initial Hessian is read from a restart file - see the key RESTART - or constructed from a force field [11] that is implemented in the program. In the latter case the user can modify the so-generated initial Hessian in four ways:
For each element i for which a diagonal Hessian value Hii is supplied the off-diagonal elements Hij, (all j i≠j) are set to zero.
A combination of the above options is possible. The rules of how combinations are interpreted by the program are:
All input values of the Hessian are in units of Hartree/bohr2 for Cartesian coordinates and bond lengths. Hartree/radian2 for bond angles and dihedral angles.
The first 3 options are controlled by the key HESSDIAG:
HESSDIAG {General}
{ List
end }
HESSDIAG
A general key: it has either an argument (General), or a data block (List). It is also possible to supply the argument and the data block, but this requires that the continuation symbol (&) is given after the argument, separated from the argument by at least one blank.
General
Must be either a single numerical value, or one or more named specifications of options, in the format optionname=value.
If a single numerical value is given, this value is assigned to all the options
that are available. If the named-option format is applied, any named options
that are not found get the value 1.0.
The options are: rad=radvalue to
assign a value to all Hessian diagonal elements that refer to
distance coordinates (bond length in case of z-matrix
coordinates, Cartesian coordinates otherwise),
ang=angvalue to assign a
value to all elements that refer to bond angles, and finally dih=dihvalue for dihedral angles.
ang and
dih are not significant in Cartesian optimizations.
List
A list of numerical values, which may expand over any number of lines. If n numbers are supplied, they are assigned to the first n diagonal elements of the Hessian. The remaining diagonal elements, if any, are not effected. The maximum number of Hessian diagonal elements equals the number of atomic coordinates.
The force field derived initial Hessian can be printed for inspection. Type in input:
HESSTEST
ADF will construct and print the initial Hessian and then abort.




