$GLOBOP group (relevant to RUNTYP=GLOBOP)
This controls the Metropolis Monte Carlo search method
for finding local and global minima. Systems can include
EFP fragments, FMO fragments, or fully ab initio groups or
some combination of the three (excluding FMO and ab
initio). The present code is backwards compatible with old
runtyp=globop inputs.
There are options for a single temperature Monte Carlo
search, or a multiple temperature simulated annealing.
Local minimization of some or all of the structures
selected by the Monte Carlo is an option.
Accepted coordinates and energy can be printed to a
trajectory file in the scratch file, using a keyword
described below. A perl script named "globop_extract" is
provided in the standard GAMESS distribution, which can
extract the lowest energies (and matching coordinates) from
the TRAJECT data set.
See REFS.DOC for an overview of this RUNTYP.
RNDINI = flag to randomize the particles given in input,
usually choosing the particle at random, placing
it near the center of the coordinate origin but
in such a way that it does not collide with any
particles placed earlier. The default is to use
coordinates as given in $EFRAG (default .FALSE.)
JSTRND = If RNDiNI and JSTRND are both true, the run ends
after the randomization and energy calculation.
(default .TRUE.)
RIORD = relevant only if RNDINI is .TRUE.
= RAND selects EFP particles in random order, as
well as randomizing their coordinates. (default)
= STANDARD chooses the particles in the same order
that they were given in $EFRAG, so only their
positions are randomized.
See REFS.DOC for some ideas on how to build clusters with
these two inputs.
TEMPI = initial temperature used in the simulation.
(default = 20000 K)
TEMPF = final temperature. If TEMPF is not given and
NTEMPS is greater than 1, TEMPF will be
calculated based on a cooling factor of 0.95.
NTEMPS = number of temperatures used in the simulation.
If NTEMPS is not given but TEMPF is given,
NTEMP will be calculated based on a cooling
factor of 0.95. If neither NTEMP nor TEMPF is
given, the job defaults to a single temperature
Monte Carlo calculation.
MCTYP = Bitwise label of fragment types being used
1 = ab initio groups
2 = FMO fragments
4 = EFP fragments
6 = FMO and EFP
Older input files or solvation of immobile
ab initio molecules should use the default=4
NFRMOV = number of EFP fragments to move on each step.
(default=1)
NFMORV = number of FMO fragments or ab initio groups to
move on each step. (default=1)
MCMIN = flag to enable geometry optimization to minimize
the energy is carried out every NSTMIN steps.
(default=.true.)
NGEOPT = number of geometries to be evaluated at each
temperature. (default = 100)
NTRAN = number of translational steps in each block.
(default=5)
NROT = number of rotational steps in each block.
(default=5)
NBLOCK = the number of blocks of steps can be set directly
with this variable, instead of being calculated
from NGEOPT, NTRAN, and NROT, according to
NBLOCK=NGEOPT/(NTRAN+NROT)
If NBLOCK is input, the number of geometries at
each temperature will be taken as
NGEOPT=NBLOCK*(NTRAN+NROT)
Each block has NTRAN translational steps followed
by NROT rotational steps.
NAIFG = number of ab initio groups for odd values of
MCTYP. If not the default value, then $GLBFRG
must be included (default=no. of atoms in $DATA)
AIMOVE = applicable to MCTYP=4 with ab initio atoms only.
maximum translation movement of ab initio atoms
during EFP movement step. (default=0.0)
SCALE = 2 value array that scales max movement and
rotation. first value is translations
second is rotations (default=1.0,1.0)
ALPHA = controls the rate at which information from
successful steps is folded into the maximum step
sizes for each of the 6*(number of fragments)
coordinates. ALPHA varies between 0 and 1.
ALPHA=0 means do not change the maximum step
sizes, and ALPHA=1 throws out the old step sizes
whenever there is a successful step and uses the
successful step sizes as the new maxima. This
update scheme was used with the Parks method
where all fragments are moved on every step. It
is not normally used with the Metropolis method.
(default = 0)
BOLTWT = method for calculating the Boltzmann factor,
which is used as the probability of accepting a
step that increases the energy.
= STANDARD = use the standard Boltzmann factor,
exp(-delta(E)/kT) (default)
= AVESTEP = scale the temperature by the average
step size, as recommended in the Parks reference
when using values of ALPHA greater than 0.
NSTMIN = After this number of geometry steps are taken, a
local (Newton-Raphson) optimization will be
carried out. If this variable is set to 1, a
local minimization is carried out on every step,
reducing the MC space to the set of local minima.
Irrelevant if MCMIN is false. (default=10)
OPTN = if set to .TRUE., at the end of the run local
minimizations are carried out on the final
geometry and on the minimum-energy geometry.
(default=.FALSE.)
DACRAT = the desired acceptance ratio, the program tries
to achieve this by adjusting the maximum step
size. Setting this to 0.0 disables any change to
the maximum step size. (default = 0.5)
UPDFAC = the factor used to update the maximum step size
in the attempt to achive the desired acceptance
ratio (DACRAT). If the acceptance ratio at the
previous temperature was below DACRAT, the step
size is decreased by multiplying it by UPDFAC.
If the acceptance ratio was above DACRAT, the
step size is increased by dividing it by DACRAT
It should be between 0 and 1. (default = 0.95)
SEPTOL = the separation tolerence between atoms in either
the EFP or FMO fragments. If a step moves atoms
closer than this tolerence, the step is rejected.
(default = 1.5 Angstroms)
XMIN, XMAX, YMIN, YMAX, ZMIN, ZMAX = mimimum and maximum
values for the Cartesian coordinates of the
fragment. If the first point in a fragment steps
outside these boundaries, periodic boundary
conditions are used and the fragment re-enters on
the opposite side of the box. The defaults of
-10 for minima and +10 for maxima should usually
be changed.
NPRTGO = controls the amount of output,
= -2 reduces output even more than -1
= -1 reduces output further, needed for MCMIN=.true.
= 0 gives minimal output (default)
= 1 gives the normal GAMESS amount of output
= 2 gives maximum output
For large simulations, even IOUT=0 may produce
a log file too large to work with easily.
If geometry optimization is being done at each
Monte Carlo generated structure, you can use
the NPRT in $STATPT to further suppress output.
RANDOM = controls the choice of random number generator.
= DEBUG uses a simple random number generator with
a constant seed. Since the same sequence of
random numbers is generated during each job, it
is useful for debugging.
= RAND1 uses the simple random number generator
used in DEBUG, but with a variable seed.
= RAND3 uses a more sophisticated random number
generator described in Numerical Recipes, with a
variable seed (default).
IFXFRG = array whose length is the number of fragments.
It allows one or more fragments to be fixed
during the simulation.
=0 allows the fragment to move during the run
=1 fixes the fragment
For example, IFXFRG(3)=1 would fix the third
fragment, the default is IFXFRG(1)=0,0,0,...,0
NPRBND = number of pairs of atoms to be positionally
linked. A non-zero value requires IBNDS to
be specified in GLBFRG. (default 0)
NOTE: pair bindings are not conserved during
a random initialization. It is strongly
advised that RNDINI=.t. not be used for
systems using NPRBND not equal 0
NSMTP = number of steps in each secondary Monte Carlo
that occurs when an FMO or AI group is moved.
(default 0)
SMTEMP = Temperature below which the secondary Monte
Carlo search will be carried out. (default 0)
$GLBFRG group (relevant to RUNTYP=GLOBOP)
This group defines the sets of ab initio atoms in $DATA
that are treated as groups in Monte Carlo runs. It also
defines any groups that are to be frozen, not moved during
the Monte Carlo search.
AIFRG = an array assigning atoms to groups. Two styles
are supported (the choice is made based on
AIFRG(1): if it is nonzero, choice (a) is taken,
otherwise AIFRG(1) is ignored and choice (b) is
taken):
a) AIFRG(i)=m assigns atom i is to fragment m.
AIFRG(i) must be given for each atom.
b) the style is
a1 a2 ... ak 0
b1 b2 ... bm 0
...
Elements a1...ak are assigned to fragment 1,
then b1...bm are assigned to fragment 2,etc.
An element is one of the following:
I or I -J
where I means atom I, and a pair I,-J means
the range of atoms I-J. There must be no space
after the "-"!
Example:
AIFRG(1)=1,1,1,2,2,1 is equivalent to
AIFRG(1)=0, 1,-3,6,0, 4,5,0
Both assign atoms 1,2,3 and 6 to fragment 1,
and 4,5 to fragment 2.
NAICUT = automatically divides a molecule into fragments by
assigning NAICUT atoms to each fragment (useful
for something like water clusters). This sets
AIFRG, so it need not be included. If 0, the
automatic option is disabled. (default: 0)
IFXFMO = array of FMO fragments or ab initio groups that
are not moved during the Monte Carlo search.
if an optimization step (MCMIN or OPTN) is used,
the fragment/group will likely be moved.
IBNDS = Array of atoms to be positionally linked.
example for two pairs between atoms 1 and 5,
and 3 and 6.
IBNDS(1)=1,5,3,6
PRSEP = Maximum separation allowed for paired atoms.
The default uses a formula using the average
atomic radii of each element from Macmolplt, which
are designed to approximate single bonds.
PRSEP= (radius_atom1 + radius_atom2)*1.05
To specify a different max separation, you MUST
specify a value for each pair of bonded atoms
given in IBNDS in the same order. To use the
default for a given pair, enter 0.
Example: for 3 pairs with a non-default maximum
separation for the second pair given in IBNDS use
PRSEP(1)=0,X,0 where X is the desired separation
INDEP = Integer flag that toggles whether translations
of fragments connected by paired atoms are
propagated to all other connected fragments.
A value of 1 disables propagation. (Default=0)
287 lines are written.
Edited by Shiro KOSEKI on Tue May 17 15:19:38 2022.