#include <step.h>
Public Attributes | |
| StepMethod | method |
| StepOption | options |
| unsigned long | random_seed |
| double | timestep |
| double | initial_temperature |
| void * | messageObjPtr |
| int(* | output_message )(void *messageObjPtr, const char *msg) |
| void * | forceObjPtr |
| int(* | compute_force )(void *forceObjPtr, double *pe, MD_Dvec *force, const MD_Dvec *pos) |
| void * | resultsObjPtr |
| int(* | submit_results )(void *resultsObjPtr, StepSystem *sys) |
| int32 | resultsFreq |
| int32 | init_stepnum |
| MD_Atom * | atom |
| int32 | natoms |
| double | bath_temperature |
| double | relaxation_time |
| double | nh_temperature |
| double | nh_timescale |
| double | drude_com_temperature |
| double | drude_bond_temperature |
| double | drude_com_timescale |
| double | drude_bond_timescale |
| int32 | drude_multisteps |
| double | cgmin_dis |
| double | cgmin_tol |
| int32 | cgmin_eval |
| double | settle_oh_dist |
| double | settle_hoh_angle |
User must provide values where appropriate, depending on selected method. Must provide callbacks. Retains ownership of topology and force field arrays.
|
|
Array of atom data for system. (Only the mass is needed.) |
|
|
Temperature of the bath (in Kelvin). Can be set to 0. |
|
|
Maximum displacement for line search; 1 A works OK. |
|
|
Maximum number of potential evaluations before giving up; 50 seems to work well in practice. |
|
|
Tolerance for line search; 0.01 A seems OK for most systems. |
|
|
Computes |
|
|
Thermostat temperature for Drude bond displacements, the cold degrees of freedom. |
|
|
Thermostat timescale. Controls coupling of the bond system to its thermostat. B. Roux recommends 7.07 fs for Drude particles with mass 0.8 AMU, and shorter for smaller mass values. |
|
|
Thermostat temperature for atomic COMs (centers of mass), the hot degrees of freedom. |
|
|
Thermostat timescale. Controls coupling of the COM system to its thermostat. B. Roux recommends 100 fs. |
|
|
Number of multisteps for propagating extended system variables. Must be at least 1. Recommended greater than 1, between 2 and 100. |
|
|
Generic handle passed to compute_force() callback. |
|
|
Gives the initial step number. |
|
|
Initial temperature (in Kelvin). This is used to initialize velocities unless they are assigned in step_setup(). |
|
|
Generic handle passed to output_message() callback. |
|
|
Choose a method for integration or minimization. |
|
|
Number of atoms in array. Used as length for position, velocity, and force arrays. |
|
|
Nose-Hoover thermostat temperature for canonical ensemble (K). Must be greater than 0. |
|
|
Nose-Hoover thermostat timescale. Controls coupling of the system to the thermostat. A reasonable choice is 50 fs, the period of a harmonic oscillator. |
|
|
Select one or more options by bitwise ORing. |
|
|
Routine to receive messages from Step library. |
|
|
Seed for the random number generator. |
|
|
Relaxation time to determine coupling to temperature bath. Units in femtoseconds. Need relaxation_time >= timestep. Use of relaxation_time == timestep gives simple velocity rescaling. (Leach recommends 400 fs for timestep==1fs.) |
|
|
Gives number of steps between each submit_results() call. |
|
|
Generic handle passed to submit_results() callback. |
|
|
Angle equilibrium length for water H-O-H. |
|
|
Bond equilibrium length for water O-H. |
|
|
Collects results at end-of-step intervals. Returns 0 for success. Must be provided. |
|
|
Time step (in femtoseconds). |
1.3.9.1