magic.inp: main input file
In the MagiC-core input file parameters are specified as a set of keywords
ParameterName = Value
and generally have self-explanatory names.
Warnings or error messages are issued for missing compulsory parameters or inconsistent values.
Lists of variables (or vectors) should be comma separated (i.e. BOX = X, Y, Z).
Comment lines starting with ! or # or empty lines are ignored.
For logical parameters most popular acronyms, such as F, .F., False, FALSE are accepted.
For convenience the parameters are divided into five groups. There is however no need to follow
this order, the program accept parameters in any order.
Keywords marked with * are mandatory. New parameters, which have been introduced in version 3, are emphasized with italic-font. Old parameter-names inherited from MagiC v1 are denoted by [ ]
as still supported but not recommended.
- [itemsep=0mm]
- System parameters:
-
- NMType*
- Number of molecular types (species) present in the system.
- NameMType*
- Names of the molecule types present in the system, separated by comma.
Every molecule type should have a respective description file(.mcm).
For example
NameMolType = H2O, DMPC
defines 2 names: H2O
-for the first molecule type,
and DMPC
for the second one. The corresponding description files should be named H2O.mcm
and
DMPC.mcm
.
- NMolMType*
- Number of molecules of each type, written as a comma-separated list,
e.g.
NMolMType=392,3
defines system, which consists of 392 molecules of the first type,
and 3 molecules of the second type.
- LMoveMType
- Which molecular types are allowed to move in the Monte Carlo simulation. List of comma-separated logical values.
Default LMOVE = True,.., True
, i.e. all molecules are allowed to move. Frozen molecules
coordinates has to be specified in a *.xmol file given in InputFrozenCoords
parameter.
- Epsilon
- [EPS] Dielectric permittivity constant defining electrostatic interactions in the
system. Default: 1.0
- TEMP*
- Temperature of the system, K
- Box*
- [BOXL,BOYL,BOZL] Periodic cell dimensions in Å, separated by comma. The software
uses rectangular periodic boundary conditions.
- Monte Carlo parameters:
-
- MCSteps*
- Total number of Monte Carlo steps to be performed on every iteration
(including equilibration).
- MCStepsEquil*
- Number of Monte Carlo steps to be performed for the equilibration.
- MCStepAtom*
- Maximum displacement in a Monte Carlo single atom displacement step, Å.
To use non-uniform MC stesp (specific to molecule type), one can provide several values: one per each molecule type. Default: 1.0.
- MCStepTransMol
- [MCTRANSSTEP] Maximum displacement in a MC translation of a whole
molecule, Å. To use non-uniform MC step (specific to molecule type), one can provide several values: one per each molecule type.
Default: 0.0
- MCStepRotMol
- [MCROTSTEP] Maximum degree of MC rotation of the whole molecule, deg. To use non-uniform MC step (specific to molecule type), one can provide several values: one per each molecule type. Default 0.0
- iMCStepTransMol
- [ITRANS] How often (in terms of MC steps) to perform translation of a randomly chosen molecule. Default: 0, i.e. never
- iMCStepRotMol
- [IROT] How often (in terms of MC step) to perform rotation of a randomly
chosen molecule. Default: 0, i.e. never
- iCalcEnergy*
- [IOUT] How often to recalculate the total energy and write energies
and pressure to the log-file. If the difference in total energy before and after the recalculation
is larger than
, a warning message will be given. This procedure is computationally
expensive (order
), and should not be performed too often.
- RCutEl*
- [RECUT] Real space cutoff for electrostatic energy in real-space part of the Ewald sum.
It is recommended to set it equal to cutoff radius of RDFs and short-range interactions, but
in some cases other choices can be reasonable. When the periodic box size is big, calculation of reciprocal-space part of the Ewald sum may become performance limiting and then increase of RCutEl may improve the performance. It can be seen on the timing report, printed after every inverse iteration.
- AF, FQ
- Ewald summation parameters: The electrostatic energy in Ewald method can be expressed as
 |
(1) |
where,
, and
. In other words, the precision or the
first sum is defined by
, while accuracy of the third sum is defined by
.
Default: AF=3., FQ=9.0
- RandomSeed
- [NRS] Initial seed for the random number generator.
- KeepStructure
- [LCRDPass] Define if the final structure of the previous inverse iteration
shall be used as starting for the consequent iteration.
Default: False
- NMCAutoAdjust
- How many auto adjustments of MCstep-size to perform during equilibration phase? Default: 0 (no auto-adjustment)
- MCStepAtomAR
- Desired acceptance ratio for MC atom displacement step (can be either one value, or individual value for every molecule type). Default: 0.5
- MCStepTransMolAR
- Desired acceptance ratio for MC molecule translation step (can be either one value, or individual value for every molecule type). Default: 0.5
- MCStepRotMolAR
- Desired acceptance ratio for MC molecule rotation step (can be either one value, or individual value for every molecule type).
Default: 0.5
- Inverse procedure parameters:
-
- InverseMode
- The inverse solver mode: IBI - iterative Boltzmann Inversion, IMC - Inverse Monte Carlo, VIMC (also called NG for Newton-Gauss) - [VIMC]Variational IMC. Default: IMC
- UseIMC
- [LIMC] Outdated. Inverse solver selection. If true, the Inverse Monte Carlo method is used, otherwise iterative Boltzmann inversion is used. Default: True (IMC)
- NIter*
- [IREPT] Number of inverse iterations to perform. Default: 1
- Mode
- Specify mode of running MagiC Core:
Native (default). This is the standard iterative mode. Perform MC-sampling, gather statistics, write the cross-correlation to file (if provided), invert potentials, then proceed to the next iteration.
Sample. Read cross-correlation matrix from file (if provided), perform MC-sampling, update the matrix and write it to the file.
Inverse. Read cross-correlation matrix from file and invert it providing a new set of the effective potentials.
The Sample and Inverse modes are designed for collecting more sampled date in conditions of limited CPU-time or limited number of cores, allowing user to gain statistics in chunks and then perform the inverse procedure.
- RegP
- Regularization parameter for the potential correction. This parameter defines
the relative weight of correction, and has a value between 0 and 1. In case of instability
(each next iteration returns larger deviation from the reference RDF), value of REGP should be decreased.
Decreasing REGP is also advisable if correction to the potential at each iteration exceeds treshold value
(default 2
). REGP can be increased back closer to 1 if the iteration process is stable and correction to the potential at each iteration is small. Default: 1.0
- iAverage*
- [IAV] How often to compute averages over the system. Since computation of
the averages (RDFs and cross-correlations) involves calculation of distances between all
pairs of atom, this procedure is rather expensive, and should not be performed too often.
The recommended value is of the order of number of CG atoms in the system
The averaging starts after the equilibration, i.e. when first MCStepsEquil steps have passed.
- MaxPotCor
- [DPOTM] Maximal change of potential value at every point during correction
procedure, given in
units. Default: 2.0
- MaxRelDif
- [RTM] Parameter limiting maximum relative difference between reference and
resulting averages. Default: 10.0
- factor_NG
- Power for the weights in the NG optimization
[0.0-1.0]
.
Default: 0.0
- PotRcut
- (used only in variational IMC mode): update potentials only at distances below
PorRcut value (in
), while fitting RDF in the whole range. Is useful if e.g. there are physical arguments that there should be no interaction at distances above PorRcut, but RDFs are still structured at long distances.
- iPotCorrCheck
- How often to perform potential correction check. The program gathers
accumulated statistics from all the processes, and then calculates sampled distribution
functions and potential corrections. However, this corrections are not applied to the actual
interaction potential, but just printed to the log file. This allows user to analyze how well
both distribution functions and potential corrections are converged after given number of MC steps
of an inverse iteration. The checks are performed after equilibration. Default 0, i.e. no check at all.
- ProhibPotLevel
- [POTCUT] Prohibiting potential level. A high value of potential
in
to define a core region of the potentials at distances where the corresponding RDFs are zero, to avoid MC steps leading to such distances. Default: 1000.
- ExternalTraj
- File with external CG trajectory, which will be used instead of usual MC sampling. You have to set MCSteps equal to number of frames in the trajectory. NIters will be automatically set to 1. The trajectory shall keep molecules whole against PBC.
- Input-Output parameters:
- Output*
- [BASEOUTFILENAME] Prefix name of the system (filename template) to use for writing
output files. All names of output files will begin with the given prefix.
- VerboseLevel
- [IPRINT] Verbosity level of the log-file. 1-minimum level, 10 - maximum level.
Default: 5.
- WriteTraj
- [ITR] How often (in terms of MC steps) to write current geometry to the trajectory
file. Default: 0 - do not write.
- InputRDF*
- [FILRDF] Input file with reference distribution functions. Required for inverse
procedure, otherwise only a direct MC simulation will be performed. But why would you run it then?
- InputPotential
- [FILPOT] Input file with a set of trial potentials.
- InputStartCoords [, Nconf]
- Name of the input file (or prefix for a set of files), followed by an optional integer parameter Nconf. If Nconf is given, MagiC will randomly choose one of the first Nconf, frames from the file. This is a convenient way to provide reasonably equilibrated starting coordinates, however, being free from over-fitting the potentials to some specific starting configuration.
- InputFrozenCoords
- [FCRD] Name of a single *.xmol file with starting coordinates of all
frozen molecules in the system. It will be used to define starting location of the frozen species
for every inverse iteration. The file is almost the same as start.xmol, but it does not contains
moving molecules/atoms.
- DumpLastConf
- [LXMOL] If true, program dumps the last configuration of MC process in file
(or set of files) with ".start.xmol" extension. It is done after every inverse iteration on every
parallel process. Default: False - do not dump. In case of parallel execution, output filenames
have extensions
<Output>.i<iteration>.p<process>.start.xmol
- CrossCorrFile
- File to read/write cross-correlation matrix sampled during MC-simulation (in parallel run, the matrix is first gathered from all processes and saved to the file).
- exclusionSR, exclusionEL
- - Files with non-bonded exclusions specification, one for short-range interactions and another for the electrostatics. If not provided, default exclusions will be used: atoms bonded by pairwise or angle bond will be excluded from both short-range and electrostatic interactions.