Skip to content

Main Input Commands

Douglas M Franz edited this page Jun 14, 2018 · 38 revisions

All of these commands would go in the mcmd input file, which would be run by, e.g. ./mcmd myinput.inp

Command Description Default
jobname [string] The job's name. default_jobname
restart Automatically restarts a previously halted job by replacing the input atoms file with the existing restart.pdb, and saving directory files to saved_dataX where X automatically counts from 1. YOU MUST USE THE input_atoms command if you plan to restart a job. off
mode [mc | md | sp | opt] mc for Monte Carlo; md for Molecular Dynamics. sp for classical single-point energy and multipoles. opt for classical optimization. NONE
omp [int] Enables OpenMP parallelization for faster simulation. Argument is number of threads. 0 will disable OpenMP. Requires compilation with OpenMP enabled. 0
checkpoints_option [on | off] Displays checkpoints from code with relevant timing info (for debugging). off
ensemble [nve|nvt|npt|uvt] Thermodynamic ensemble. nve = Microcanonical; nvt = Canonical; npt = Isobaric,Isothermal (Gibbs); uvt = Grand Canonical. NONE
input_atoms [string] Takes the filename of input atoms in .pdb form (see examples). Not required for uVT simulation. NONE
input_atoms_xyz [string] Option to use an XYZ file for input atoms. The string is the filename. This assumes all atoms are Frozen (e.g. part of a MOF) and uses periodic-table mass, UFF LJ params, and van Duijnen polarizabilities by default. Point-charges (in e) are optional and can be placed in the 5th column. Default parameters are only read for element names that match the standard names (e.g. "Na", not "NA" or "Na1"). NONE
output_traj_xyz [string] Takes the filename in which to write .xyz trajectory file every corrtime. Especially useful if you view trajectories for uVT simulation using VMD. traj.xyz.
output_traj_pdb [string] Takes the filename in which to write .pdb trajectory file every corrtime. traj.pdb.
draw_box_option [on|off] Enables creation of the simulation box in the restart_pdb and output_traj_pdb files. on
restart_pdb [string] Filename for the restart input_atoms file generated at each corrtime. restart.pdb.
thermo_output [string] Takes the filename in which to write thermodynamic data at each corrtime: energy, temperature, pressure, etc. thermo.dat
potential_form [lj | ljes | ljespolar | ljpolar | tt | ttes | ttespolar | commy | commyes | commyespolar] Dictates which functions to use for potential energy and force (MD only) calculations: lj=Lennard-Jones repulsion-dispersion; tt=Tang-Toennies RD; es=Ewald electrostatics; polar=polarization energy; commy=a VDW RD potential which is a hybrid of LJ and a form from a 1961 paper linked in commy.cpp. lj
rd_lrc [on|off] Enables Lennard-Jones long-range corrections to the potential energy. on
ewald_es [on|off] Enables Ewald-method calculation of electrostatic energy (including long-range). on
ewald_kmax [int] Specifies the maximum k-space vector for Ewald energy/force computation. >3 is generally good. Can be very expensive for large systems if >=5. 7
polar_max_iter [int] Change the max number of iterations for dipole solver in polarization energy calculation. 4
dipole_precision [double] Turns dipole-convergence-by-dipole-precision on (instead of fixed maximum iterations). Expressed in Debye. (the iteration-cap is the default method). A good value is between 10e-7 and 10e-4. NONE
full_A_matrix [on|off] Option to enable the full Thole Polarization A matrix -- takes more (~double) memory but runs faster. on
pdb_traj_option [on|off] Enables PDB trajectory output in output_traj_pdb filename. off
xyz_traj_option [on|off] Option to (also) write .xyz trajectory output. on
big_pdb_traj [on|off] Forces frozen atoms to be (re-)written in trajectory steps in PDB. off
big_xyz_traj [on|off] Forces frozen atoms to be (re-)written in trajectory steps in XYZ. off
com_option [on|off] Enables on-the-fly center-of-mass calculation which adds a COM atom to the output files in each frame. off
pdb_long [on|off] Enables long (%8.6f instead of %8.3f) output for greater precision on atom coordinates. Do NOT enable if you plan to view .pdb output in VMD. off
dist_within [on|off] Enables on-the-fly counter of atoms within a specified radius from the origin at each corrtime. off
dist_within_target [string] Takes the (PDB input label) name of the atom to calculate for dist_within. NONE
dist_within_radius [double] Takes the radius from the origin in which to count occurrences of selected atom. NONE
auto_center [on|off] Enables automatic centering of all atoms to the origin (0,0,0) before beginning simulation. Important to make sure atoms fit in periodic box. on
temperature [double] Temperature in K for fixed-T simulations. NONE
pressure [double] Pressure in atm for fixed-P simulations (including uVT because chemical potential is auto-generated from pressure using equations-of-state). 1.0
sig_override [string] [double] Manually changes the LJ sigma parameter for atoms by name. For multiple, issue this command in multiple lines. (Units = Angstrom) NONE
eps_override [string] [double] Does likewise for LJ epsilon parameter. (Units = Kelvin) NONE
charge_override [string] [double] Does likewise for the partial charge of this site. (Units = elementary charge) NONE
radial_dist [on|off] Enables radial-distribution calculation, which updates every corrtime. off
radial_bin_size [double] Specifies the bin size for g(r) in A. 0.1
radial_max_dist [double] Sets the cutoff for relevant g(r) distance calculations between atoms. 10.0
radial_centroid [string] Supplies name of atom (site) to calculate as the the center of g(r) interactions. NONE
radial_counterpart [string] Supplies the other atom to calculate distance from radial_centroid. NONE
radial_file [string] Specifies name of output file for g(r). Supplies bin-counts as a function of pair-distance. radial_distribution.datX (X = pair id for multiple)
radial_exclude_molecules [on|off] Option to exclude intramolecular distances in g(r) pair calculations. off
histogram [on|off] Option for histogram output (which can be viewed in VMD). off
histogram_output [string] Filename for histogram output. histogram.dx
histogram_resolution [double] Resolution of histogram bins in Angstroms. 0.7
lj_uff [on|off] Option to set all atoms' Lennard-Jones sigma and epsilon to UFF (Rappe et al.) values (overrides other input) off
vand_polar [on|off] Option to set all atoms' point-polarizability parameters to van Duijnen values (overrides other input) off
manual_cutoff [double] Overrides the pair-interaction spherical cutoff radius (auto-calculated from box parameters as 1/2 min. length) with user-defined value. NONE
crystalbuild [on|off] Enables the crystal builder (to build super-cells automatically). off
crystalbuild_x [int] Multiplicity of crystal in x-direction (e.g. 2 will duplicate the cell in x). 1
crystalbuild_y [int] Same for y-direction. 1
crystalbuild_z [int] Same for z-direction. 1
crystalbuild_includemovers [on|off] Option to include movable molecules when duplicating system. off
makefrags [int] Enables the fragment-maker and creates the number of fragments specified. The function loops through unique atoms by their name (in the .pdb input) and makes fragments that bury each atom in a fractal-like pattern. NONE
atoms_per_frag [int, int, int,..] Sets the number of atoms that will be created within each fragment. You can do multiple #'s for different fragment sizes. 250
frag_bondlength [double] Sets the initial/default bond-length (in Angstroms) for the fragment-maker. If a fragment fails to build within this constraint, it will grow the bond-length until the goal number of atoms is obtained. 2.1
scale_charges [double] Multiplies all frozen-atom charge parameters by this factor before running the simulation. NONE
sorbate_name [string] [string] [string...] Allows user-selected sorbate models (you need not include the sorbate [or anything at all] in the input_atoms file IF this is used). You MUST include sorbate_fugacities if multi-sorbate (this command) is used in the uVT ensemble. NONE
sorbate_fugacities [double] [double] [double...] Partial pressures (in atm, as explicit fugacities) of sorbates, e.g. 10 10 would yield a total pressure of 20 atm. NONE
no_zero_option [on|off] Option to disallow zero movable molecules in the simulation system. off
write_lammps [on|off] Writes LAMMPS-style inputs from MCMD input at simulation start (for MD simulations). off
bias_uptake [double] [N | wt% | wt%ME | mmol/g | mg/g | cm^3/g | g/mL | g/cm^3] Sets a "goal-uptake", which is achieved in uVT single-sorbate-only simulations by biasing insertions and preventing removes until the goal N is reached. Can accelerate equilibration/loading significantly especially if a good reference value is known. After this, the system equilibrates normally. NONE

Monte Carlo

Command Description Default
mc_corrtime [int] The MC step interval at which output is generated, observable averages re-calculated, etc. 1000
finalstep [int] Specifies the last step to perturb system and calculate energy in MC. NONE
rotate_option [on|off] Enables rigid-body molecular rotations for movable molecules in MC. on
volume_change [double] A factor that is used to change the volume in NPT MC simulations. 2.5 -- Frenkel's value.
vcp_factor [double] A factor used to calculate the probability of doing a volume change in NPT. 1.0 -- Frenkel's value.
displace_factor [double] A factor (length in Angstroms) used to calculate random translations of molecules in MC simulations. 2.5
insert_factor [double] The probability of doing an insert/delete move in uVT MC simluations. 0.5
rotate_angle_factor [double] A factor used to calculate a random angle of rotation for displacement in MC simluations. 360.0
mc_pbc [on|off] Enables periodic-boundary conditions. on
total_energy [double] Potential energy in K as fixed value for NVE simulations. (Should usually be negative!). NONE
simulated_annealing [on|off] Option for simulated annealing. off
simulated_annealing_schedule [double] A factor for exponentially decreasing temperature in S.A. 0.9999
simulated_annealing_target [double] Target end-temperature (in Kelvin) for simulated annealing. 0.0
fugacity_single [h2|co2|n2|ch4] in uVT, specifies the molecule to calculate fugacity (from input pressure) at startup. NONE
step_offset [int] An offset value for Monte Carlo steps, e.g. to pickup restarts and count where you left off. 0
auto_reject_option [on|off] Enables auto-reject feature which can speed up Monte Carlo, forced off for Molecular Dynamics. Only useful when using at least the LJ potential. on
auto_reject_r [double] Parameter in Angstroms to auto-reject moves if a pair distance is less than this value. 0.76
feynman_hibbs [on|off] Enables Feynmann-Hibbs Quantum corrections to energy calculation (useful especially for small molecules e.g. hydrogen). off
fh_order [2|4] Chooses second or fourth order correction for Feynman-Hibbs corrections. 4

Molecular Dynamics

Command Description Default
integrator [rk4|vv] The method for integrating Newton's equations of motion. rk4 = Runge Kutte 4th order; vv = velocity verlet. vv
md_corrtime [int] The step interval at which output is generated, averages re-calculated, etc. 50
md_pbc [on|off] Enables periodic-boundary conditions. on
md_init_vel [double] User defined initial velocities for movable molecules. Will randomize directions based on this magnitude in A/fs. If this is not supplied, initial velocities will be determined from temperature. NONE
md_dt [double] The actual time step used for Molecular Dynamics, in fs. 0.1
md_ft [double] [string] The time to stop the simulation. Units can be fs, ps, ns, us, or ms. 10000 fs
md_mode [molecular|atomic] MD mode. molecular keeps molecules rigid, intact, and allows them to rotate. atomic treats all atoms as free-moving regardless of assignment in input_atoms file. flexible enables bonding parameters for movable molecules. molecular
md_rotations [on|off] Enables molecular rotations in MD. on
md_translations [on|off] Enables molecular translations in MD. Turning this off is useful, for example, with molecular crystal simulation. on
cuda [on|off] Enables GPU-accelerated Molecular Dynamics (by calculating forces on GPU). Only compatible with CUDA GPUs. off
cuda_block_size [int] Specifies threads-per-block for CUDA parallel computation. Good values are typically multiples of the common warp size, 32. 256
md_insert_frequency [int] Interval number of steps at which to attempt an insert/delete in uVT MD. 20
external_force [double] [double] [double] [int] Applies a constant external force to all movable molecules. Expressed as a vector (x,y,z) in nanoNewtons nN followed by an integer of how often (in steps) the force should apply. 1.0 0 0 1 is a moderate force in the +x direction for molecules applied every step. 0.0 0.0 0.0 1
sorbate_dofs [int,int,...] Manually enter the number of degrees of freedom for each prototype movable molecule. NONE
kspace_option [on|off] Enables computation of Ewald k-space (long-range) forces in MD. on

Optimizations

Command Description Default
opt_mode [mc|sd] Optimization method: mc = Monte Carlo; sd = Steepest Descent. sd
bondlength [double] Assigns maximum distance, in Angstroms, to dynamically define bonds. 1.5
opt_convergence [double] Assigns the convergence delta-energy, in kcal/mol. 0.00001
opt_step_limit [int] Assigns maximum number of optimization steps for convergence. 10000
opt_bonds [on|off] Includes bonded stretching for optimization calculation. on
opt_angles [on|off] Includes angle bending for optimization calculation. on
opt_dihedrals [on|off] Includes dihedral bending (torsions) for optimization calculation. on
opt_LJ [on|off] Includes non-bonded Lennard-Jones interactions for optimization calculation. on
opt_ES [on|off] Includes non-bonded electrostatic interactions for optimization calculation. on

Single Point Calculations

Command Description Default
Clone this wiki locally