The Protocol package contains functionality for defining generic molecular dynamics protocols. The protocols contain configurable options that are common across different molecular dynamics packages. In combination with a molecular System, protocols can be used to create a molecular dynamics Process.


protocols() Return a list of the supported Molecular Dynamics protocols.
createProtocol(protocol) Create a default simulation protocol.


Custom(config) A class for storing custom protocols.
Equilibration([timestep, runtime, …]) A class for storing equilibration protocols.
FreeEnergy([lam, lam_vals, min_lam, …]) A class for storing free energy protocols.
Minimisation([steps]) A class for storing minimisation protocols.
Production([timestep, runtime, temperature, …]) A class for storing production protocols.


Print the list of supported protocols.

import BioSimSpace as BSS


Create a default minimisation protocol and print the number of steps.

import BioSimSpace as BSS

protocol = BSS.Protocol.Minimisation()

The same as above, but instead passing “Minimisation” as an argument to the createProtocol function. This function should be used in any interoperable workflow Node where the protocol is specified as an input requirement by the user.

import BioSimSpace as BSS

protocol = BSS.Protocol.createProtocol("minimisation")

Create an equilibration protocol that heats the system from 0 to 300 Kelvin while restraining the positions of any backbone atoms.

import BioSimSpace as BSS

protocol = BSS.Protocol.Equilibration(temperature_start=0*BSS.Units.Temperature.kelvin,