BioSimSpace.FreeEnergy.Relative#
- class BioSimSpace.FreeEnergy.Relative(system, protocol=None, work_dir=None, engine=None, setup_only=False, ignore_warnings=False, show_errors=True, extra_options={}, extra_lines=[], property_map={})[source]#
Class for configuring and running relative free-energy perturbation simulations.
- __init__(system, protocol=None, work_dir=None, engine=None, setup_only=False, ignore_warnings=False, show_errors=True, extra_options={}, extra_lines=[], property_map={})[source]#
Constructor.
- Parameters:
system (
System
) – The molecular system for the perturbation leg. This must contain a single perturbable molecule and is assumed to have already been equilibrated.protocol (
Protocol.FreeEnergyMinimisation
,Protocol.FreeEnergyEquilibration
,Protocol.FreeEnergyProduction
) – The simulation protocol.work_dir (str) – The working directory for the free-energy perturbation simulation.
engine (str) – The molecular dynamics engine used to run the simulation. Available options are “GROMACS”, or “SOMD”. If this argument is omitted then BioSimSpace will choose an appropriate engine for you.
setup_only (bool) – Whether to only support simulation setup. If True, then no simulation processes objects will be created, only the directory hierarchy and input files to run a simulation externally. This can be useful when you don’t intend to use BioSimSpace to run the simulation. Note that a ‘work_dir’ must also be specified.
ignore_warnings (bool) – Whether to ignore warnings when generating the binary run file. This option is specific to GROMACS and will be ignored when a different molecular dynamics engine is chosen.
show_errors (bool) – Whether to show warning/error messages when generating the binary run file. This option is specific to GROMACS and will be ignored when a different molecular dynamics engine is chosen.
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.
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, work_dir, ...])Constructor.
analyse
(work_dir)Analyse existing free-energy data from a simulation working directory.
difference
(pmf, pmf_ref)Compute the relative free-energy difference between two perturbation legs.
getData
([name, file_link, work_dir])Return a link to a zip file containing the data files required for post-simulation analysis.
kill
(index)Kill a process for a specific lambda window.
killAll
()Kill any running processes for all lambda windows.
run
([serial])Run the simulation.
wait
()Wait for the simulation to finish.
workDir
()Return the working directory.
- static analyse(work_dir)[source]#
Analyse existing free-energy data from a simulation working directory.
- Parameters:
work_dir (str) – The working directory for the simulation.
- Returns:
pmf ([(float,
Energy
,Energy
)]) – The potential of mean force (PMF). The data is a list of tuples, where each tuple contains the lambda value, the PMF, and the standard error.overlap ([ [ float, float, … ] ]) – The overlap matrix. This gives the overlap between each lambda window. This parameter is only computed for the SOMD engine and will be None when GROMACS is used.
- static difference(pmf, pmf_ref)[source]#
Compute the relative free-energy difference between two perturbation legs.
- Parameters:
pmf ([(float,
Energy
,Energy
)]) – The potential of mean force (PMF) of interest. The data is a list of tuples, where each tuple contains the lambda value, the PMF, and the standard error.pmf_ref ([(float,
Energy
,Energy
)]) – The reference potential of mean force (PMF). The data is a list of tuples, where each tuple contains the lambda value, the PMF, and the standard error.
- Returns:
free_energy – The relative free-energy difference and its associated error.
- Return type:
- getData(name='data', file_link=False, work_dir=None)[source]#
Return a link to a zip file containing the data files required for post-simulation analysis.
- Parameters:
name (str) – The name of the zip file.
file_link (bool) – Whether to return a FileLink when working in Jupyter.
work_dir (str) – The working directory for the free-energy perturbation simulation.
- Returns:
output – A path, or file link, to an archive of the process input.
- Return type:
str, IPython.display.FileLink
- kill(index)[source]#
Kill a process for a specific lambda window.
- Parameters:
index (int) – The index of the lambda window.