generate_simulation_protocols(analysis_protocol: S, use_target_uncertainty: bool, id_suffix: str = '', conditional_group: Optional[openff.evaluator.protocols.groups.ConditionalGroup] = None, n_molecules: int = 1000) → Tuple[openff.evaluator.protocols.utils.SimulationProtocols[S], openff.evaluator.workflow.utils.ProtocolPath, openff.evaluator.storage.data.StoredSimulationData]¶
Constructs a set of protocols which, when combined in a workflow schema, may be executed to run a single simulation to estimate the average value of an observable.
The protocols returned will:
Build a set of liquid coordinates for the property substance using packmol.
Assign a set of smirnoff force field parameters to the system.
Perform an energy minimisation on the system.
Run a short NPT equilibration simulation for 100000 steps using a timestep of 2fs.
Within a conditional group (up to a maximum of 100 times):
- 5a) Run a longer NPT production simulation for 1000000 steps using a
timestep of 2fs
5b) Extract the average value of an observable and it’s uncertainty.
- 5c) If a convergence mode is set by the options, check if the target
uncertainty has been met. If not, repeat steps 5a), 5b) and 5c).
Extract uncorrelated configurations from a generated production simulation.
Extract uncorrelated statistics from a generated production simulation.
analysis_protocol – The protocol which will extract the observable of interest from the generated simulation data.
use_target_uncertainty – Whether to run the simulation until the observable is estimated to within the target uncertainty.
id_suffix (str) – A string suffix to append to each of the protocol ids.
conditional_group (ProtocolGroup, optional) – A custom group to wrap the main simulation / extraction protocols within. It is up to the caller of this method to manually add the convergence conditions to this group. If None, a default group with uncertainty convergence conditions is automatically constructed.
n_molecules (int) – The number of molecules to use in the workflow.
The protocols to add to the workflow, a reference to the average value of the
estimated observable (an
Observableobject), and an object which describes
the default data from a simulation to store, such as the uncorrelated statistics