BioSimSpace.Process.Namd

class BioSimSpace.Process.Namd(system, protocol, exe=None, name='namd', work_dir=None, seed=None, property_map={})

A class for running simulations using NAMD.

__init__(system, protocol, exe=None, name='namd', work_dir=None, seed=None, property_map={})

Constructor.

Parameters:
  • system (System) – The molecular system.
  • protocol (Protocol) – The protocol for the NAMD process.
  • exe (str) – The full path to the NAMD 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” }

Methods

__init__(system, protocol[, exe, name, …]) Constructor.
addArgs(args) Append additional command-line arguments.
addToConfig(config) Add a string to the configuration list.
clearArgs() 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.
eta() Get the estimated time for the process to finish (in minutes).
exe() Return the executable.
getAngleEnergy([time_series, block]) Get the angle energy.
getArgString() Get the command-line arguments string.
getArgStringList() 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.
getBoundaryEnergy([time_series, block]) Get the boundary energy.
getConfig() Get the list of configuration file strings.
getCurrentAngleEnergy([time_series]) Get the current angle energy.
getCurrentBondEnergy([time_series]) Get the current bond energy.
getCurrentBoundaryEnergy([time_series]) Get the current boundary energy.
getCurrentDihedralEnergy([time_series]) Get the current dihedral energy.
getCurrentElectrostaticEnergy([time_series]) Get the current electrostatic energy.
getCurrentGPressure([time_series]) Get the current pressure.
getCurrentGPressureAverage([time_series]) Get the current average pressure.
getCurrentImproperEnergy([time_series]) Get the current improper energy.
getCurrentKineticEnergy([time_series]) Get the current kinetic energy.
getCurrentMiscEnergy([time_series]) Get the current external energy.
getCurrentPotentialEnergy([time_series]) Get the current potential energy.
getCurrentPressure([time_series]) Get the current pressure.
getCurrentPressureAverage([time_series]) Get the current average pressure.
getCurrentRecord(record[, time_series, unit]) Get a current record from the stdout dictionary.
getCurrentRecords() Return the current dictionary of stdout time-series records.
getCurrentStep([time_series]) Get the current number of integration steps.
getCurrentSystem() Get the latest molecular system.
getCurrentTemperature([time_series]) Get the temperature.
getCurrentTemperatureAverage([time_series]) Get the current average temperature.
getCurrentTime([time_series]) Get the current time (in nanoseconds).
getCurrentTotal2Energy([time_series]) Get the current total energy.
getCurrentTotal3Energy([time_series]) Get the total energy.
getCurrentTotalEnergy([time_series]) Get the current potential energy.
getCurrentVanDerWaalsEnergy([time_series]) Get the current Van der Waals energy.
getCurrentVolume([time_series]) Get the current volume.
getDihedralEnergy([time_series, block]) Get the dihedral energy.
getElectrostaticEnergy([time_series, block]) Get the electrostatic energy.
getGPressure([time_series, block]) Get the pressure.
getGPressureAverage([time_series, block]) Get the average pressure.
getImproperEnergy([time_series, block]) Get the improper energy.
getKineticEnergy([time_series, block]) Get the kinetic energy.
getMiscEnergy([time_series, block]) Get the external energy.
getName() Return the process name.
getOutput([name, block, file_link]) Return a link to a zip file of the working directory.
getPackageName() Return the package name.
getPotentialEnergy([time_series, block]) Get the potential energy.
getPressure([time_series, block]) Get the pressure.
getPressureAverage([time_series, block]) Get the average pressure.
getRecord(record[, time_series, unit, block]) Get a record from the stdout dictionary.
getRecords([block]) Return the dictionary of stdout time-series records.
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.
getTemperatureAverage([time_series, block]) Get the average temperature.
getTime([time_series, block]) Get the time (in nanoseconds).
getTotal2Energy([time_series, block]) Get the total energy.
getTotal3Energy([time_series, block]) Get the total energy.
getTotalEnergy([time_series, block]) Get the total energy.
getTrajectory([block]) Return a trajectory object.
getVanDerWaalsEnergy([time_series, block]) Get the Van der Vaals energy.
getVolume([time_series, block]) Get the volume.
inputFiles() Return the list of input files.
insertArg(arg, value, index) Insert a command-line argument at a specific index.
isError() Return whether the process errored.
isQueued() Return whether the process is queued.
isRunning() Return whether the process is running.
kill() Kill the running process.
resetArgs() Reset the command-line arguments.
resetConfig() Reset the configuration parameters.
run([system, protocol, autostart, 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 NAMD 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.
eta()

Get the estimated time for the process to finish (in minutes).

Returns:eta – The estimated remaining time in minutes.
Return type:Time
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:

Energy

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:

Energy

getBoundaryEnergy(time_series=False, block='AUTO')

Get the boundary 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 boundary energy.

Return type:

Energy

getConfig()

Get the list of configuration file strings.

Returns:config – The list of configuration strings.
Return type:[str]
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:Energy
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:Energy
getCurrentBoundaryEnergy(time_series=False)

Get the current boundary energy.

Parameters:time_series (bool) – Whether to return a list of time series records.
Returns:energy – The boundary energy.
Return type:Energy
getCurrentDihedralEnergy(time_series=False)

Get the current dihedral energy.

Parameters:time_series (bool) – Whether to return a list of time series records.
Returns:energy – The dihedral energy.
Return type:Energy
getCurrentElectrostaticEnergy(time_series=False)

Get the current electrostatic energy.

Parameters:time_series (bool) – Whether to return a list of time series records.
Returns:energy – The electrostatic energy.
Return type:Energy
getCurrentGPressure(time_series=False)

Get the current pressure. (Hydrogens incorporated into bonded atoms.)

Parameters:time_series (bool) – Whether to return a list of time series records.
Returns:pressure – The pressure.
Return type:Pressure
getCurrentGPressureAverage(time_series=False)

Get the current average pressure. (Hydrogens incorporated into bonded atoms.)

Parameters:time_series (bool) – Whether to return a list of time series records.
Returns:pressure – The average pressure.
Return type:Pressure
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:Energy
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 current kinetic energy.
Return type:Energy
getCurrentMiscEnergy(time_series=False)

Get the current external energy.

Parameters:time_series (bool) – Whether to return a list of time series records.
Returns:energy – The external energy.
Return type:Energy
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:Energy
getCurrentPressure(time_series=False)

Get the current pressure.

Parameters:time_series (bool) – Whether to return a list of time series records.
Returns:pressure – The pressure.
Return type:Pressure
getCurrentPressureAverage(time_series=False)

Get the current average pressure.

Parameters:time_series (bool) – Whether to return a list of time series records.
Returns:pressure – The average pressure.
Return type:Pressure
getCurrentRecord(record, time_series=False, unit=None)

Get a current record from the stdout dictionary.

Parameters:
  • record (str) – The record key.
  • time_series (bool) – Whether to return a list of time series records.
  • unit (Unit) – The unit to convert the record to.
Returns:

record – The matching record.

Return type:

Type

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:BioSimSpace.Process._process._MultiDict
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:System
getCurrentTemperature(time_series=False)

Get the temperature.

Parameters:time_series (bool) – Whether to return a list of time series records.
Returns:temperature – The temperature.
Return type:Temperature
getCurrentTemperatureAverage(time_series=False)

Get the current average temperature.

Parameters:time_series (bool) – Whether to return a list of time series records.
Returns:temperature – The average temperature.
Return type:Temperature
getCurrentTime(time_series=False)

Get the current 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:

Time

getCurrentTotal2Energy(time_series=False)

Get the current total energy. (Better KE conservation.)

Parameters:time_series (bool) – Whether to return a list of time series records.
Returns:energy – The total energy.
Return type:Energy
getCurrentTotal3Energy(time_series=False)

Get the total energy. (Smaller short-time fluctuations.)

Parameters:time_series (bool) – Whether to return a list of time series records.
Returns:energy – The total energy.
Return type:Energy
getCurrentTotalEnergy(time_series=False)

Get the current potential energy.

Parameters:time_series (bool) – Whether to return a list of time series records.
Returns:energy – The total energy.
Return type:Energy
getCurrentVanDerWaalsEnergy(time_series=False)

Get the current Van der Waals energy.

Parameters:time_series (bool) – Whether to return a list of time series records.
Returns:energy – The Van der Vaals energy.
Return type:Energy
getCurrentVolume(time_series=False)

Get the current volume.

Parameters:time_series (bool) – Whether to return a list of time series records.
Returns:volume – The volume.
Return type:Volume
getDihedralEnergy(time_series=False, block='AUTO')

Get the 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 dihedral energy.

Return type:

Energy

getElectrostaticEnergy(time_series=False, block='AUTO')

Get the electrostatic 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 electrostatic energy.

Return type:

Energy

getGPressure(time_series=False, block='AUTO')

Get the pressure. (Hydrogens incorporated into bonded 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:

pressure – The pressure.

Return type:

Pressure

getGPressureAverage(time_series=False, block='AUTO')

Get the average pressure. (Hydrogens incorporated into bonded 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:

pressure – The average pressure.

Return type:

Pressure

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:

Energy

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:

Energy

getMiscEnergy(time_series=False, block='AUTO')

Get the external 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 external energy.

Return type:

Energy

getName()

Return the process name.

Returns:

name : str
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:

ouput – 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:

Energy

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:

Pressure

getPressureAverage(time_series=False, block='AUTO')

Get the average 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 average pressure.

Return type:

Pressure

getRecord(record, time_series=False, unit=None, block='AUTO')

Get a record from the stdout dictionary.

Parameters:
  • record (str) – The record key.
  • time_series (bool) – Whether to return a list of time series records.
  • unit (Unit) – The unit to convert the record to.
  • block (bool) – Whether to block until the process has finished running.
Returns:

record – The matching record.

Return type:

Type

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:dict
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:System
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:

Temperature

getTemperatureAverage(time_series=False, block='AUTO')

Get the average 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 average temperature.

Return type:

Temperature

getTime(time_series=False, block='AUTO')

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:

Time

getTotal2Energy(time_series=False, block='AUTO')

Get the total energy. (Better KE conservation.)

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:

Energy

getTotal3Energy(time_series=False, block='AUTO')

Get the total energy. (Smaller short-time fluctuations.)

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:

Energy

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:

Energy

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:Trajectory
getVanDerWaalsEnergy(time_series=False, block='AUTO')

Get the Van der Vaals 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 Van der Vaals energy.

Return type:

Energy

getVolume(time_series=False, block='AUTO')

Get the volume.

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:

volume – The volume.

Return type:

Volume

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 errored.

Returns:is_error – Whether the process errored.
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, autostart=True, restart=False)

Create and run a new process.

Parameters:
  • system (System) – The molecular system.
  • protocol (Protocol) – The simulation protocol.
  • autostart (bool) – Whether to start the process automatically.
  • restart (bool) – Whether to restart the simulation, i.e. use the original system.
Returns:

process – The new process object.

Return type:

Procees

runTime()

Return the running time for the process (in minutes).

Returns:runtime – The runtime in minutes.
Return type:Time
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 NAMD process.

Returns:process – The process object.
Return type:Process.Namd
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 maximimum 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.