BioSimSpace.Process.Somd¶
- class BioSimSpace.Process.Somd(system, protocol, exe=None, name='somd', platform='CPU', work_dir=None, seed=None, extra_options={}, extra_lines=[], extra_args={}, property_map={}, **kwargs)[source]¶
A class for running simulations using SOMD.
- __init__(system, protocol, exe=None, name='somd', platform='CPU', work_dir=None, seed=None, extra_options={}, extra_lines=[], extra_args={}, property_map={}, **kwargs)[source]¶
Constructor.
- Parameters:
system (
System) – The molecular system.protocol (
Protocol) – The protocol for the SOMD process.exe (str) – The full path to the SOMD executable.
name (str) – The name of the process.
platform (str) – The platform for the simulation: “CPU”, “CUDA”, or “OPENCL”.
work_dir – The working directory for the process.
seed (int) – A random number seed. Note that SOMD only uses a seed for FreeEnergy protocols. The seed should only be used for debugging purposes since SOMD uses the same seed for each Monte Carlo cycle.
extra_options (dict) – A dictionary containing extra options. Overrides the defaults generated by the protocol.
extra_lines ([str]) – A list of extra lines to put at the end of the configuration file.
extra_args (dict) – A dictionary of extra command-line arguments to pass to the SOMD executable.
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” }
kwargs (dict) – Additional keyword arguments.
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.
Get the command-line arguments string.
Convert the argument dictionary into a list of strings.
getArgs()Get the dictionary of command-line arguments.
Get the list of configuration file strings.
getCurrentGradient([time_series])Get the current free energy gradient.
Get the latest molecular system.
getCurrentTime([time_series])Get the current time (in nanoseconds).
getFrame(index)Return a specific trajectory frame.
getGradient([time_series, block])Get the free energy gradient.
getInput([name, file_link])Return a link to a zip file containing the input files used by the process.
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.
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.
getSystem([block])Get the latest molecular system.
getTime([time_series, block])Get the time (in nanoseconds).
getTrajectory([backend, 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 SOMD 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
- 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
- getConfig()¶
Get the list of configuration file strings.
- Returns:
config – The list of configuration strings.
- Return type:
[str]
- getCurrentGradient(time_series=False)[source]¶
Get the current free energy gradient.
- Parameters:
time_series (bool) – Whether to return a list of time series records.
- Returns:
gradient – The current free energy gradient.
- Return type:
float
- getCurrentSystem()[source]¶
Get the latest molecular system.
- Returns:
system – The latest molecular system.
- Return type:
- getCurrentTime(time_series=False)[source]¶
Get the current time (in nanoseconds).
- Parameters:
time_series (bool) – Whether to return a list of time series records.
- Returns:
time – The current simulation time in nanoseconds.
- Return type:
- getFrame(index)[source]¶
Return a specific trajectory frame.
- Parameters:
index (int) – The index of the frame.
- Returns:
frame – The System object of the corresponding frame.
- Return type:
- getGradient(time_series=False, block='AUTO')[source]¶
Get the free energy gradient.
- 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:
gradient – The free energy gradient.
- Return type:
float
- 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
- 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
- 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]
- getSystem(block='AUTO')[source]¶
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:
- getTime(time_series=False, block='AUTO')[source]¶
Get the time (in nanoseconds).
- 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:
- getTrajectory(backend='AUTO', block='AUTO')[source]¶
Return a trajectory object.
- Parameters:
backend (str) – The backend to use for trajectory parsing. To see supported backends, run BioSimSpace.Trajectory.backends(). Using “AUTO” will try each in sequence.
block (bool) – Whether to block until the process has finished running.
- Returns:
trajectory – The latest trajectory object.
- Return type:
Trajectory
- 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()[source]¶
Start the SOMD process.
- Returns:
process – A handle to the running 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.