settings#

Settings models for Protocols.

Protocols often permit extensive configuration that would be cumbersome to configure in an __init__ method and which may want to be independently recorded and shared. Settings models are Pydantic models that support these use cases. Each protocol should have an associated settings object; for a protocol called FooProtocol, the corresponding settings object is called FooProtocolSettings.

Settings are generally broken up into multiple levels to avoid overwhelming users with information and to allow settings models to be shared across multiple protocols. Top level protocol settings models should inherit from Settings, whereas all other settings models should inherit from SettingsBaseModel.

Classes

Settings

Container for all settings needed by a protocol

SettingsBaseModel

Settings and modifications we want for all settings classes.

SystemSettings

Settings describing the simulation system settings.

SolvationSettings

Settings for solvating the system

AlchemicalSamplerSettings

Settings for the Equilibrium Alchemical sampler, currently supporting either MultistateSampler, SAMSSampler or ReplicaExchangeSampler.

OpenMMEngineSettings

OpenMM MD engine settings

IntegratorSettings

Settings for the LangevinSplittingDynamicsMove integrator

SimulationSettings

Settings for simulation control, including lengths, writing to disk, etc...

ThermoSettings

Settings for thermodynamic parameters.

OpenMMSystemGeneratorFFSettings

Parameters to set up the force field with OpenMM ForceFields

AlchemicalSettings

Create a new model by parsing and validating input data from keyword arguments.