BioSimSpace.Process.Gromacs¶
-
class
BioSimSpace.Process.
Gromacs
(system, protocol, exe=None, name='gromacs', work_dir=None, seed=None, property_map={}, ignore_warnings=False, show_errors=True, checkpoint_file=None)¶ A class for running simulations using GROMACS.
-
__init__
(system, protocol, exe=None, name='gromacs', work_dir=None, seed=None, property_map={}, ignore_warnings=False, show_errors=True, checkpoint_file=None)¶ Constructor.
- Parameters
system (
System
) – The molecular system.protocol (
Protocol
) – The protocol for the GROMACS process.exe (str) – The full path to the GROMACS executable.
name (str) – The name of the process.
work_dir – The working directory for the process.
seed (int) – A random number seed.
property_map (dict) – A dictionary that maps system “properties” to their user defined values. This allows the user to refer to properties with their own naming scheme, e.g. { “charge” : “my-charge” }
ignore_warnings (bool) – Whether to ignore warnings when generating the binary run file with ‘gmx grompp’. By default, these warnings are elevated to errors and will halt the program.
show_errors (bool) – Whether to show warning/error messages when generating the binary run file.
checkpoint_file (str) – The path to a checkpoint file from a previous run. This can be used to continue an existing simulation. Currently we only support the use of checkpoint files for Equilibration protocols.
Methods
__init__
(system, protocol[, exe, name, …])Constructor.
addArgs
(args)Append additional command-line arguments.
addToConfig
(config)Add a string to the configuration list.
Clear all of the command-line arguments.
command
()Return the command-line string used to run the process.
deleteArg
(arg)Delete an argument from the dictionary.
exe
()Return the executable.
getAngleEnergy
([time_series, block])Get the angle energy.
Get the command-line arguments string.
Convert the argument dictionary into a list of strings.
getArgs
()Get the dictionary of command-line arguments.
getBondEnergy
([time_series, block])Get the bond energy.
Get the list of configuration file strings.
getConservedEnergy
([time_series, block])Get the conserved energy.
getConstraintRMSD
([time_series, block])Get the RMSD of the constrained atoms.
getCoulomb14
([time_series, block])Get the Coulomb energy between atoms 1 and 4.
getCoulombReciprocal
([time_series, block])Get the reciprocal space Coulomb energy.
getCoulombSR
([time_series, block])Get the short-range Coulomb energy.
getCurrentAngleEnergy
([time_series])Get the current angle energy.
getCurrentBondEnergy
([time_series])Get the current bond energy.
getCurrentConservedEnergy
([time_series])Get the current conserved energy.
getCurrentConstraintRMSD
([time_series])Get the current RMSD of the constrained atoms.
getCurrentCoulomb14
([time_series])Get the current Coulomb energy between atoms 1 and 4.
getCurrentCoulombReciprocal
([time_series])Get the current reciprocal space Coulomb energy.
getCurrentCoulombSR
([time_series])Get the current short-range Coulomb energy.
getCurrentDihedralEnergy
([time_series])Get the current total dihedral energy (proper + improper).
getCurrentDispersionCorrection
([time_series])Get the current dispersion correction.
getCurrentImproperEnergy
([time_series])Get the current improper energy.
getCurrentKineticEnergy
([time_series])Get the current kinetic energy.
getCurrentLennardJones14
([time_series])Get the current Lennard-Jones energy between atoms 1 and 4.
getCurrentLennardJonesSR
([time_series])Get the current short-range Lennard-Jones energy.
getCurrentPotentialEnergy
([time_series])Get the current potential energy.
getCurrentPressure
([time_series])Get the current pressure.
getCurrentPressureDC
([time_series])Get the current DC pressure.
getCurrentProperEnergy
([time_series])Get the current proper dihedral energy.
getCurrentRecord
(record[, time_series, unit])Get a current record from the stdout dictionary.
Return the current dictionary of stdout time-series records.
getCurrentRestraintEnergy
([time_series])Get the current position restraint energy.
getCurrentStep
([time_series])Get the current number of integration steps.
Get the latest molecular system.
getCurrentTemperature
([time_series])Get the current temperature.
getCurrentTime
([time_series])Get the current simulation time.
getCurrentTotalEnergy
([time_series])Get the current total energy.
getDihedralEnergy
([time_series, block])Get the total dihedral energy (proper + improper).
getDispersionCorrection
([time_series, block])Get the dispersion correction.
getFrame
(index)Return a specific trajectory frame.
getImproperEnergy
([time_series, block])Get the improper energy.
getInput
([name, file_link])Return a link to a zip file containing the input files used by the process.
getKineticEnergy
([time_series, block])Get the kinetic energy.
getLennardJones14
([time_series, block])Get the Lennard-Jones energy between atoms 1 and 4.
getLennardJonesSR
([time_series, block])Get the short-range Lennard-Jones energy.
getName
()Return the process name.
getOutput
([name, block, file_link])Return a link to a zip file of the working directory.
Return the package name.
getPotentialEnergy
([time_series, block])Get the potential energy.
getPressure
([time_series, block])Get the pressure.
getPressureDC
([time_series, block])Get the DC pressure.
getProperEnergy
([time_series, block])Get the proper dihedral energy.
getRecord
(record[, time_series, unit, block])Get a record from the stdout dictionary.
getRecords
([block])Return the dictionary of stdout time-series records.
getRestraintEnergy
([time_series, block])Get the position restraint energy.
getSeed
()Return the random number seed.
getStderr
([block])Return the entire stderr for the process as a list of strings.
getStdout
([block])Return the entire stdout for the process as a list of strings.
getStep
([time_series, block])Get the number of integration steps.
getSystem
([block])Get the latest molecular system.
getTemperature
([time_series, block])Get the temperature.
getTime
([time_series, block])Get the simulation time.
getTotalEnergy
([time_series, block])Get the total energy.
getTrajectory
([block])Return a trajectory object.
Return the list of input files.
insertArg
(arg, value, index)Insert a command-line argument at a specific index.
isError
()Return whether the process exited with an error.
isQueued
()Return whether the process is queued.
Return whether the process is running.
kill
()Kill the running process.
Reset the command-line arguments.
Reset the configuration parameters.
run
([system, protocol, auto_start, restart])Create and run a new process.
runTime
()Return the running time for the process (in minutes).
setArg
(arg, value)Set a specific command-line argument.
setArgs
(args)Set the dictionary of command-line arguments.
setConfig
(config)Set the list of configuration file strings.
setName
(name)Set the process name.
setSeed
(seed)Set the random number seed.
start
()Start the GROMACS process.
stderr
([n])Print the last n lines of the stderr buffer.
stdout
([n])Print the last n lines of the stdout buffer.
wait
([max_time])Wait for the process to finish.
workDir
()Return the working directory.
writeConfig
(file)Write the configuration to file.
-
addArgs
(args)¶ Append additional command-line arguments.
- Parameters
args (dict, collections.OrderedDict) – A dictionary of command line arguments.
-
addToConfig
(config)¶ Add a string to the configuration list.
- Parameters
config (str, [str]) – A configuration string, a list of configuration strings, or a path to a configuration file.
-
clearArgs
()¶ Clear all of the command-line arguments.
-
command
()¶ Return the command-line string used to run the process.
- Returns
command – The command string.
- Return type
str
-
deleteArg
(arg)¶ Delete an argument from the dictionary.
- Parameters
arg (str) – The argument to delete.
-
exe
()¶ Return the executable.
- Returns
exe – The path to the executable.
- Return type
str
-
getAngleEnergy
(time_series=False, block='AUTO')¶ Get the angle energy.
- Parameters
time_series (bool) – Whether to return a list of time series records.
block (bool) – Whether to block until the process has finished running.
- Returns
energy – The angle energy.
- Return type
-
getArgString
()¶ Get the command-line arguments string.
- Returns
arg_string – The command-line argument string.
- Return type
str
-
getArgStringList
()¶ Convert the argument dictionary into a list of strings.
- Returns
arg_string_list – The list of command-line arguments.
- Return type
[str]
-
getArgs
()¶ Get the dictionary of command-line arguments.
- Returns
args – The dictionary of command-line arguments.
- Return type
collections.OrderedDict
-
getBondEnergy
(time_series=False, block='AUTO')¶ Get the bond energy.
- Parameters
time_series (bool) – Whether to return a list of time series records.
block (bool) – Whether to block until the process has finished running.
- Returns
energy – The bond energy.
- Return type
-
getConfig
()¶ Get the list of configuration file strings.
- Returns
config – The list of configuration strings.
- Return type
[str]
-
getConservedEnergy
(time_series=False, block='AUTO')¶ Get the conserved energy.
- Parameters
time_series (bool) – Whether to return a list of time series records.
block (bool) – Whether to block until the process has finished running.
- Returns
energy – The conserved energy.
- Return type
-
getConstraintRMSD
(time_series=False, block='AUTO')¶ Get the RMSD of the constrained atoms.
- Parameters
time_series (bool) – Whether to return a list of time series records.
block (bool) – Whether to block until the process has finished running.
- Returns
length – The constrained RMSD.
- Return type
-
getCoulomb14
(time_series=False, block='AUTO')¶ Get the Coulomb energy between atoms 1 and 4.
- Parameters
time_series (bool) – Whether to return a list of time series records.
block (bool) – Whether to block until the process has finished running.
- Returns
energy – The Coulomb energy.
- Return type
-
getCoulombReciprocal
(time_series=False, block='AUTO')¶ Get the reciprocal space Coulomb energy.
- Parameters
time_series (bool) – Whether to return a list of time series records.
block (bool) – Whether to block until the process has finished running.
- Returns
energy – The Coulomb energy.
- Return type
-
getCoulombSR
(time_series=False, block='AUTO')¶ Get the short-range Coulomb energy.
- Parameters
time_series (bool) – Whether to return a list of time series records.
block (bool) – Whether to block until the process has finished running.
- Returns
energy – The Coulomb energy.
- Return type
-
getCurrentAngleEnergy
(time_series=False)¶ Get the current angle energy.
- Parameters
time_series (bool) – Whether to return a list of time series records.
- Returns
energy – The angle energy.
- Return type
-
getCurrentBondEnergy
(time_series=False)¶ Get the current bond energy.
- Parameters
time_series (bool) – Whether to return a list of time series records.
- Returns
energy – The bond energy.
- Return type
-
getCurrentConservedEnergy
(time_series=False)¶ Get the current conserved energy.
- Parameters
time_series (bool) – Whether to return a list of time series records.
- Returns
energy – The conserved energy.
- Return type
-
getCurrentConstraintRMSD
(time_series=False)¶ Get the current RMSD of the constrained atoms.
- Parameters
time_series (bool) – Whether to return a list of time series records.
- Returns
length – The current constrained RMSD.
- Return type
-
getCurrentCoulomb14
(time_series=False)¶ Get the current Coulomb energy between atoms 1 and 4.
- Parameters
time_series (bool) – Whether to return a list of time series records.
- Returns
energy – The Coulomb energy.
- Return type
-
getCurrentCoulombReciprocal
(time_series=False)¶ Get the current reciprocal space Coulomb energy.
- Parameters
time_series (bool) – Whether to return a list of time series records.
- Returns
energy – The Coulomb energy.
- Return type
-
getCurrentCoulombSR
(time_series=False)¶ Get the current short-range Coulomb energy.
- Parameters
time_series (bool) – Whether to return a list of time series records.
- Returns
energy – The Coulomb energy.
- Return type
-
getCurrentDihedralEnergy
(time_series=False)¶ Get the current total dihedral energy (proper + improper).
- Parameters
time_series (bool) – Whether to return a list of time series records.
- Returns
energy – The dihedral energy.
- Return type
-
getCurrentDispersionCorrection
(time_series=False)¶ Get the current dispersion correction.
- Parameters
time_series (bool) – Whether to return a list of time series records.
- Returns
energy – The dispersion correction.
- Return type
-
getCurrentImproperEnergy
(time_series=False)¶ Get the current improper energy.
- Parameters
time_series (bool) – Whether to return a list of time series records.
- Returns
energy – The improper energy.
- Return type
-
getCurrentKineticEnergy
(time_series=False)¶ Get the current kinetic energy.
- Parameters
time_series (bool) – Whether to return a list of time series records.
- Returns
energy – The kinetic energy.
- Return type
-
getCurrentLennardJones14
(time_series=False)¶ Get the current Lennard-Jones energy between atoms 1 and 4.
- Parameters
time_series (bool) – Whether to return a list of time series records.
- Returns
energy – The Lennard-Jones energy.
- Return type
-
getCurrentLennardJonesSR
(time_series=False)¶ Get the current short-range Lennard-Jones energy.
- Parameters
time_series (bool) – Whether to return a list of time series records.
- Returns
energy – The Lennard-Jones energy.
- Return type
-
getCurrentPotentialEnergy
(time_series=False)¶ Get the current potential energy.
- Parameters
time_series (bool) – Whether to return a list of time series records.
- Returns
energy – The potential energy.
- Return type
-
getCurrentPressure
(time_series=False)¶ Get the current pressure.
- Parameters
time_series (bool) – Whether to return a list of time series records.
- Returns
pressure – The current pressure.
- Return type
-
getCurrentPressureDC
(time_series=False)¶ Get the current DC pressure.
- Parameters
time_series (bool) – Whether to return a list of time series records.
- Returns
pressure – The current pressure.
- Return type
-
getCurrentProperEnergy
(time_series=False)¶ Get the current proper dihedral energy.
- Parameters
time_series (bool) – Whether to return a list of time series records.
- Returns
energy – The proper dihedral energy.
- Return type
-
getCurrentRecord
(record, time_series=False, unit=None)¶ Get a current record from the stdout dictionary.
-
getCurrentRecords
()¶ Return the current dictionary of stdout time-series records.
- Parameters
block (bool) – Whether to block until the process has finished running.
- Returns
records – The dictionary of time-series records.
- Return type
MultiDict
-
getCurrentRestraintEnergy
(time_series=False)¶ Get the current position restraint energy.
- Parameters
time_series (bool) – Whether to return a list of time series records.
- Returns
energy – The dispersion correction.
- Return type
-
getCurrentStep
(time_series=False)¶ Get the current number of integration steps.
- Parameters
time_series (bool) – Whether to return a list of time series records.
- Returns
step – The current number of integration steps.
- Return type
int
-
getCurrentSystem
()¶ Get the latest molecular system.
- Returns
system – The latest molecular system.
- Return type
-
getCurrentTemperature
(time_series=False)¶ Get the current temperature.
- Parameters
time_series (bool) – Whether to return a list of time series records.
- Returns
temperature – The current temperature.
- Return type
-
getCurrentTime
(time_series=False)¶ Get the current simulation time.
- Parameters
time_series (bool) – Whether to return a list of time series records.
block (bool) – Whether to block until the process has finished running.
- Returns
time – The current simulation time in nanoseconds.
- Return type
-
getCurrentTotalEnergy
(time_series=False)¶ Get the current total energy.
- Parameters
time_series (bool) – Whether to return a list of time series records.
- Returns
energy – The total energy.
- Return type
-
getDihedralEnergy
(time_series=False, block='AUTO')¶ Get the total dihedral energy (proper + improper).
- Parameters
time_series (bool) – Whether to return a list of time series records.
block (bool) – Whether to block until the process has finished running.
- Returns
energy – The total dihedral energy.
- Return type
-
getDispersionCorrection
(time_series=False, block='AUTO')¶ Get the dispersion correction.
- Parameters
time_series (bool) – Whether to return a list of time series records.
block (bool) – Whether to block until the process has finished running.
- Returns
energy – The dispersion correction.
- Return type
-
getFrame
(index)¶ Return a specific trajectory frame.
- Parameters
index (int) – The index of the frame.
- Returns
frame – The System object of the corresponding frame.
- Return type
-
getImproperEnergy
(time_series=False, block='AUTO')¶ Get the improper energy.
- Parameters
time_series (bool) – Whether to return a list of time series records.
block (bool) – Whether to block until the process has finished running.
- Returns
energy – The improper energy.
- Return type
-
getInput
(name=None, file_link=False)¶ Return a link to a zip file containing the input files used by the process.
- Parameters
name (str) – The name of the zip file.
file_link (bool) – Whether to return a FileLink when working in Jupyter.
- Returns
output – A path, or file link, to an archive of the process input.
- Return type
str, IPython.display.FileLink
-
getKineticEnergy
(time_series=False, block='AUTO')¶ Get the kinetic energy.
- Parameters
time_series (bool) – Whether to return a list of time series records.
block (bool) – Whether to block until the process has finished running.
- Returns
energy – The kinetic energy.
- Return type
-
getLennardJones14
(time_series=False, block='AUTO')¶ Get the Lennard-Jones energy between atoms 1 and 4.
- Parameters
time_series (bool) – Whether to return a list of time series records.
block (bool) – Whether to block until the process has finished running.
- Returns
energy – The Lennard-Jones energy.
- Return type
-
getLennardJonesSR
(time_series=False, block='AUTO')¶ Get the short-range Lennard-Jones energy.
- Parameters
time_series (bool) – Whether to return a list of time series records.
block (bool) – Whether to block until the process has finished running.
- Returns
energy – The short-range Lennard-Jones energy.
- Return type
-
getName
()¶ Return the process name.
Returns:
- namestr
The name of the process.
-
getOutput
(name=None, block='AUTO', file_link=False)¶ Return a link to a zip file of the working directory.
- Parameters
name (str) – The name of the zip file.
block (bool) – Whether to block until the process has finished running.
file_link (bool) – Whether to return a FileLink when working in Jupyter.
- Returns
output – A path, or file link, to an archive of the process output.
- Return type
str, IPython.display.FileLink
-
getPackageName
()¶ Return the package name.
- Returns
name – The name of the package.
- Return type
str
-
getPotentialEnergy
(time_series=False, block='AUTO')¶ Get the potential energy.
- Parameters
time_series (bool) – Whether to return a list of time series records.
block (bool) – Whether to block until the process has finished running.
- Returns
energy – The potential energy.
- Return type
-
getPressure
(time_series=False, block='AUTO')¶ Get the pressure.
- Parameters
time_series (bool) – Whether to return a list of time series records.
block (bool) – Whether to block until the process has finished running.
- Returns
pressure – The pressure.
- Return type
-
getPressureDC
(time_series=False, block='AUTO')¶ Get the DC pressure.
- Parameters
time_series (bool) – Whether to return a list of time series records.
block (bool) – Whether to block until the process has finished running.
- Returns
pressure – The DC pressure.
- Return type
-
getProperEnergy
(time_series=False, block='AUTO')¶ Get the proper dihedral energy.
- Parameters
time_series (bool) – Whether to return a list of time series records.
block (bool) – Whether to block until the process has finished running.
- Returns
energy – The proper dihedral energy.
- Return type
-
getRecord
(record, time_series=False, unit=None, block='AUTO')¶ Get a record from the stdout dictionary.
-
getRecords
(block='AUTO')¶ Return the dictionary of stdout time-series records.
- Parameters
block (bool) – Whether to block until the process has finished running.
- Returns
records – The dictionary of time-series records.
- Return type
MultiDict
-
getRestraintEnergy
(time_series=False, block='AUTO')¶ Get the position restraint energy.
- Parameters
time_series (bool) – Whether to return a list of time series records.
block (bool) – Whether to block until the process has finished running.
- Returns
energy – The dispersion correction.
- Return type
-
getSeed
()¶ Return the random number seed.
- Returns
seed – The random number seed.
- Return type
int
-
getStderr
(block='AUTO')¶ Return the entire stderr for the process as a list of strings.
- Parameters
block (bool) – Whether to block until the process has finished running.
- Returns
error – The list of stderror strings.
- Return type
[str]
-
getStdout
(block='AUTO')¶ Return the entire stdout for the process as a list of strings.
- Parameters
block (bool) – Whether to block until the process has finished running.
- Returns
output – The list of stdout strings.
- Return type
[str]
-
getStep
(time_series=False, block='AUTO')¶ Get the number of integration steps.
- Parameters
time_series (bool) – Whether to return a list of time series records.
block (bool) – Whether to block until the process has finished running.
- Returns
step – The current number of integration steps.
- Return type
int
-
getSystem
(block='AUTO')¶ Get the latest molecular system.
- Parameters
block (bool) – Whether to block until the process has finished running.
- Returns
system – The latest molecular system.
- Return type
-
getTemperature
(time_series=False, block='AUTO')¶ Get the temperature.
- Parameters
time_series (bool) – Whether to return a list of time series records.
block (bool) – Whether to block until the process has finished running.
- Returns
temperature – The temperature.
- Return type
-
getTime
(time_series=False, block='AUTO')¶ Get the simulation time.
- Parameters
time_series (bool) – Whether to return a list of time series records.
block (bool) – Whether to block until the process has finished running.
- Returns
time – The current simulation time in nanoseconds.
- Return type
-
getTotalEnergy
(time_series=False, block='AUTO')¶ Get the total energy.
- Parameters
time_series (bool) – Whether to return a list of time series records.
block (bool) – Whether to block until the process has finished running.
- Returns
energy – The total energy.
- Return type
-
getTrajectory
(block='AUTO')¶ Return a trajectory object.
- Parameters
block (bool) – Whether to block until the process has finished running.
- Returns
trajectory – The latest trajectory object.
- Return type
-
inputFiles
()¶ Return the list of input files.
- Returns
input_files – The list of autogenerated input files.
- Return type
[str]
-
insertArg
(arg, value, index)¶ Insert a command-line argument at a specific index.
- Parameters
arg (str) – The argument to set.
value – The value of the argument.
index (int) – The index in the dictionary.
-
isError
()¶ Return whether the process exited with an error.
- Returns
is_error – Whether the process exited with an error.
- Return type
bool
-
isQueued
()¶ Return whether the process is queued.
- Returns
is_queued – Whether the process is queued.
- Return type
bool
-
isRunning
()¶ Return whether the process is running.
- Returns
is_running – Whether the process is running.
- Return type
bool
-
kill
()¶ Kill the running process.
-
resetArgs
()¶ Reset the command-line arguments.
-
resetConfig
()¶ Reset the configuration parameters.
-
run
(system=None, protocol=None, auto_start=True, restart=False)¶ Create and run a new process.
- Parameters
- Returns
process – The new process object.
- Return type
-
runTime
()¶ Return the running time for the process (in minutes).
- Returns
runtime – The runtime in minutes.
- Return type
-
setArg
(arg, value)¶ Set a specific command-line argument.
For command-line flags, i.e. boolean arguments, the key should specify whether the flag is enabled (True) or not (False).
- Parameters
arg (str) – The argument to set.
value (bool, str) – The value of the argument.
-
setArgs
(args)¶ Set the dictionary of command-line arguments.
- Parameters
args (dict, collections.OrderedDict) – A dictionary of command-line arguments.
-
setConfig
(config)¶ Set the list of configuration file strings.
- Parameters
config (str, [str]) – The list of configuration strings, or a path to a configuration file.
-
setName
(name)¶ Set the process name.
- Parameters
name (str) – The process name.
-
setSeed
(seed)¶ Set the random number seed.
- Parameters
seed (int) – The random number seed.
-
start
()¶ Start the GROMACS process.
- Returns
process – A handle to the GROMACS process.
- Return type
-
stderr
(n=10)¶ Print the last n lines of the stderr buffer.
- Parameters
n (int) – The number of lines to print.
-
stdout
(n=10)¶ Print the last n lines of the stdout buffer.
- Parameters
n (int) – The number of lines to print.
-
wait
(max_time=None)¶ Wait for the process to finish.
- Parameters
max_time (
Time
, int, float) – The maximum time to wait (in minutes).
-
workDir
()¶ Return the working directory.
- Returns
work_dir – The path of the working directory.
- Return type
str
-
writeConfig
(file)¶ Write the configuration to file.
- Parameters
file (str) – The path to a file.
-