1
The actions of optking are controlled directly by command-line arguments passed
2
to it by psi3 or the user. These are described in the man pages and at the top
5
The header files are organized as follows
7
This class contains pointers to sets of different kinds of internal
8
coordinates along with functions to set and get the number of each kind.
9
Its constructor function will read in all the simples present in the intco
10
section or construct them from distance criteria.
11
important member functions include:
12
compute_internals(number of atoms, geometry) to compute values of simples
13
compute_s(number of atoms, geometry) to compute values of all s-vectors
20
These headers define the internal coordinate types and each contain
21
2 classes. The simplest are in stretch.h:
22
The first class is "stretch_class", which is a single stretch
23
containing the id number of the stretch, the atoms involved, the value
24
of the stretch, and the s-vectors for the stretch. The second class is
25
"stretch_set", which contains a pointer to an array of stretches plus
26
the number of stretches present.
29
This header defines a salc_class, which includes a prefactor, a set of
30
coefficients and simple internal coordinate id numbers. A salc_set
31
is an array of salc_class. It has a constructor for all SALCS, symmetric
32
and asymmetric, and also a constructor for just those salcs in the "SYMM"
33
section of the INTCO section.
35
The basic startup algorithm goes as follows
37
1. See if user has specified zmat_simples as true and not provided an INTCO
38
section. If so, copy simple internal coordinates directly from the z-mat in
39
the input to simple coordinates in intco.dat.
41
2. use "internals" constructor. This reads in all of the simples present
42
in intco section, OR generates simples based on distance criteria.
44
3. If "symm" vector is not already present, then
45
if (delocalize == true), form delocalized coordinates from simple ones
46
else use simple, redundant internal coordinates (copy simples into SYMM
49
4. call salc_set constructor function. With the argument "SYMM", this reads in
50
all of the SALCS present in only the SYMM section of intco.dat