class BioSimSpace.FreeEnergy.Binding(system, protocol=None, box=None, free_leg=True, work_dir=None, engine=None, property_map={})

A class for configuring and running binding free energy simulations.

__init__(system, protocol=None, box=None, free_leg=True, work_dir=None, engine=None, property_map={})


  • system (System) – The molecular system.

  • protocol (Protocol.FreeEnergy) – The simulation protocol.

  • box ([Length]) – A list containing the box size in each dimension. This box will be used for the “free” leg of the simulation, which typically can be run with a significantly smaller box than the “bound” leg.

  • free_leg (bool) – Whether to simulation the free leg of the simulation. Set to False if you only wish to run the bound leg.

  • work_dir (str) – The working directory for the 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.

  • 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” }


__delattr__(name, /)

Implement delattr(self, name).


Default dir() implementation.

__eq__(value, /)

Return self==value.

__format__(format_spec, /)

Default object formatter.

__ge__(value, /)

Return self>=value.

__getattribute__(name, /)

Return getattr(self, name).

__gt__(value, /)

Return self>value.


Return hash(self).

__init__(system[, protocol, box, free_leg, …])



This method is called when a class is subclassed.

__le__(value, /)

Return self<=value.

__lt__(value, /)

Return self<value.

__ne__(value, /)

Return self!=value.


Create and return a new object.


Helper for pickle.

__reduce_ex__(protocol, /)

Helper for pickle.


Return repr(self).

__setattr__(name, value, /)

Implement setattr(self, name, value).


Size of object in memory, in bytes.


Return str(self).


Abstract classes can override this to customize issubclass().


Analyse the GROMACS free energy data.


Analyse the SOMD free energy data.

_initialise_runner(system0, system1)

Internal helper function to initialise the process runner.


Internal function to update run arguments for all subprocesses.


Analyse the binding free energy data.


Run the simulation.






list of weak references to the object (if defined)