BioSimSpace.Protocol.ATMProduction

class BioSimSpace.Protocol.ATMProduction(system=None, data=None, timestep=2.0000 fs, runtime=1.0000 ns, temperature=300.0000 K, pressure=1.0000 atm, thermostat_time_constant=1.0000 ps, report_interval=100, restart_interval=100, restart=False, core_alignment=True, com_distance_restraint=True, com_k=25 kcal mol-1 Å-2, com_restraint_width=5.0000 A, restraint=None, force_constant=10 kcal mol-1 Å-2, positional_restraint_width=0.5000 A, num_lambda=22, direction=None, lambda1=None, lambda2=None, alpha=None, uh=None, W0=None, align_k_distance=2.5 kcal mol-1 Å-2, align_k_theta=10.0000 kcal/mol, align_k_psi=10.0000 kcal/mol, soft_core_umax=100.0000 kcal/mol, soft_core_u0=50.0000 kcal/mol, soft_core_a=0.0625, analysis_method='UWHAM')[source]

Production protocol for ATM simulations.

__init__(system=None, data=None, timestep=2.0000 fs, runtime=1.0000 ns, temperature=300.0000 K, pressure=1.0000 atm, thermostat_time_constant=1.0000 ps, report_interval=100, restart_interval=100, restart=False, core_alignment=True, com_distance_restraint=True, com_k=25 kcal mol-1 Å-2, com_restraint_width=5.0000 A, restraint=None, force_constant=10 kcal mol-1 Å-2, positional_restraint_width=0.5000 A, num_lambda=22, direction=None, lambda1=None, lambda2=None, alpha=None, uh=None, W0=None, align_k_distance=2.5 kcal mol-1 Å-2, align_k_theta=10.0000 kcal/mol, align_k_psi=10.0000 kcal/mol, soft_core_umax=100.0000 kcal/mol, soft_core_u0=50.0000 kcal/mol, soft_core_a=0.0625, analysis_method='UWHAM')[source]

Create a new production protocol.

Parameters:
  • system (System) – A prepared ATM system.

  • data (dict) – The ATM data dictionary.

  • timestep (str, Time) – The integration timestep.

  • runtime (str, Time) – The running time.

  • temperature (str, Temperature) – The temperature.

  • pressure (str, Pressure) – The pressure. Pass pressure=None to use the NVT ensemble.

  • thermostat_time_constant (str, Time) – Time constant for thermostat coupling.

  • report_interval (int) – The frequency at which statistics are recorded. (In integration steps.)

  • restart_interval (int) – The frequency at which restart configurations and trajectory

  • core_alignment (bool) – Whether to use rigid core restraints to align the two ligands.

  • align_k_distance (int, float, str, GeneralUnit) – The force constant for the distance portion of the alignment restraint (kcal/(mol A^2)).

  • align_k_theta (int, float, str, Energy) – The force constant for the angular portion of the alignment restaint (kcal/mol).

  • align_k_psi (int, float, str, Energy) – The force constant for the dihedral portion of the alignment restraint (kcal/mol).

  • com_distance_restraint (bool) – Whether to use a center of mass distance restraint. This restraint applies to the protein/host and both ligands, and is used to maintain the relative positions of all of them.

  • com_k (int, float, str, GeneralUnit) – The force constant for the center of mass distance restraint (kcal/mol/A^2).

  • com_restraint_width (int, float, str, :class:`Length <BioSimSpace.Types.Length>) – The width (tolerance) of the center of mass distance restraint (A).

  • restraint (str, [int]) –

    The type of restraint to perform. This should be one of the following options:

    ”backbone”

    Protein backbone atoms. The matching is done by a name template, so is unreliable on conversion between molecular file formats.

    ”heavy”

    All non-hydrogen atoms that aren’t part of water molecules or free ions.

    ”all”

    All atoms that aren’t part of water molecules or free ions.

    Alternatively, the user can pass a list of atom indices for more fine-grained control. If None, then no restraints are used.

  • force_constant (float, GeneralUnit) – The force constant for the restraint potential. If a ‘float’ is passed, then default units of ‘kcal_per_mol / angstrom**2’ will be used.

  • positional_restraint_width (Length, float) – The width of the flat-bottom potential used for coordinate restraint in Angstroms.

  • pos_restrained_atoms ([int]) – The atoms to be restrained.

  • soft_core_umax (int, float, str, Energy) – The Umax value for the ATM softcore potential (kcal/mol).

  • soft_core_u0 (int, float, str, Energy) – The uh value for the ATM softcore potential (kcal/mol).

  • soft_core_a (int, float, str, Energy) – The a value for the ATM softcore potential.

  • restart (bool) – Whether this is a continuation of a previous simulation.

  • num_lambda (int) – The number of lambda values. This will be used to set the window-dependent ATM parameters, unless they are explicitly set by the user.

  • lambdas ([float]) – The lambda values.

  • direction ([int]) – The direction values. Must be either 1 (forwards) or -1 (backwards).

  • lambda1 ([float]) – The lambda1 values.

  • lambda2 ([float]) – The lambda2 values.

  • alpha ([int], float, str, Energy) – The alpha values.

  • uh ([int], float, str, Energy) – The uh values.

  • W0 ([int], float, str, Energy) – The W0 values.

  • analysis_method (str) – The method to use for analysis. Options are “UWHAM”, “MBAR” or “both” This affects the output files and the analysis that is performed. USE of “UWHAM” is strongly recommended, “MBAR” analysis is still experimental.

Methods

__init__([system, data, timestep, runtime, ...])

Create a new production protocol.

getAlignKDistance()

Return the align_k_distance value.

getAlignKPsi()

Return the align_k_psi value.

getAlignKTheta()

Return the align_k_theta value.

getAlpha()

Return the alpha values.

getAnalysisMethod()

getCOMDistanceRestraint()

Return CMCM restraint boolean.

getCOMWidth()

Return the com_restraint_width value.

getCOMk()

Return the com_k value.

getCoreAlignment()

Return core alignment boolean.

getData()

Return the ATM data dictionary.

getDirection()

Return the direction values.

getForceConstant()

Return the force constant for the restraint.

getLambda1()

Return the lambda1 values.

getLambda2()

Return the lambda2 values.

getNumLambda()

Return the number of lambda values.

getPosRestWidth()

Return the width of the position restraint.

getPressure()

Return the pressure.

getReportInterval()

Return the interval between reporting statistics.

getRestartInterval()

Return the interval between saving restart confiugrations, and/or trajectory frames.

getRestraint()

Return the type of restraint.

getRunTime()

Return the running time.

getSoftCoreA()

Return the soft_core_a value.

getSoftCoreU0()

Return the soft_core_u0 value.

getSoftCoreUmax()

Return the soft_core_umax value.

getTemperature()

Return temperature.

getThermostatTimeConstant()

Return the time constant for the thermostat.

getTimeStep()

Return the time step.

getUh()

Return the uh values.

getW0()

Return the W0 values.

get_window_index()

A function to get the index of the current lambda window.

isRestart()

Return whether this restart simulation.

restraints()

Return a list of the supported restraint keywords.

setAlignKDistance(align_k_distance)

Set the align_k_distance value.

setAlignKPsi(align_k_psi)

Set the align_k_psi value.

setAlignKTheta(align_k_theta)

Set the align_k_theta value.

setAlpha(alpha)

Set the alpha values.

setAnalysisMethod(analysis_method)

Set the method that will be used for analysis of the simulation results.

setCOMDistanceRestraint(com_distance_restraint)

Set the CMCM restraint flag.

setCOMWidth(com_restraint_width)

Set the com_restraint_width value.

setCOMk(com_k)

Set the com_k value.

setCoreAlignment(core_alignment)

Set the core alignment flag.

setDirection(directions)

Set the direction values.

setForceConstant(force_constant)

Set the force constant for the restraint.

setLambda1(lambda1)

Set the lambda1 values.

setLambda2(lambda2)

Set the lambda2 values.

setNumLambda(num_lambda)

Set the number of lambda values.

setPosRestWidth(positional_restraint_width)

Set the width of the position restraint.

setPressure(pressure)

Set the pressure.

setReportInterval(report_interval)

Set the interval at which statistics are reported.

setRestart(restart)

Set the restart flag.

setRestartInterval(restart_interval)

Set the interval between saving restart confiugrations, and/or trajectory frames.

setRestraint(restraint)

Set the type of restraint.

setRuntime(runtime)

Set the running time.

setSoftCoreA(soft_core_a)

Set the soft_core_a value.

setSoftCoreU0(soft_core_u0)

Set the soft_core_u0 value.

setSoftCoreUmax(soft_core_umax)

Set the soft_core_umax value.

setTemperature(temperature)

Set the temperature.

setThermostatTimeConstant(...)

Set the time constant for the thermostat.

setTimestep(timestep)

Set the time step.

setUh(uh)

Set the uh values.

setW0(W0)

Set the W0 values.

set_current_index(index)

A function to set the index of the current lambda window.

getAlignKDistance()

Return the align_k_distance value.

Returns:

align_k_distance – The align_k_distance value in kcal/mol angstrom**2.

Return type:

GeneralUnit

getAlignKPsi()

Return the align_k_psi value.

Returns:

align_k_psi – The align_k_psi value in kcal/mol.

Return type:

Energy

getAlignKTheta()

Return the align_k_theta value.

Returns:

align_k_theta – The align_k_theta value in kcal/mol.

Return type:

Energy

getAlpha()[source]

Return the alpha values.

Returns:

alpha – The alpha values in kcal/mol.

Return type:

[:class:`Energy <BioSimSpace.Types.Energy>]

getCOMDistanceRestraint()

Return CMCM restraint boolean.

Returns:

com_distance_restraint – Whether to use the CMCM restraint.

Return type:

bool

getCOMWidth()

Return the com_restraint_width value.

Returns:

com_restraint_width – The com_restraint_width value in angstroms.

Return type:

Length

getCOMk()

Return the com_k value.

Returns:

com_k – The com_k value in kcal/mol A**2.

Return type:

GeneralUnit

getCoreAlignment()

Return core alignment boolean.

Returns:

core_alignment – Whether to use core alignment.

Return type:

bool

getData()

Return the ATM data dictionary.

Returns:

data – The ATM data dictionary.

Return type:

dict

getDirection()[source]

Return the direction values.

Returns:

lambdas – The directions.

Return type:

[float]

getForceConstant()

Return the force constant for the restraint.

Returns:

force_constant – The force constant for the restraint, in units of kcal_per_mol/angstrom**2.

Return type:

float, str, class:GeneralUnit

getLambda1()[source]

Return the lambda1 values.

Returns:

lambda1 – The lambda1 values.

Return type:

[float]

getLambda2()[source]

Return the lambda2 values.

Returns:

lambda2 – The lambda2 values.

Return type:

[float]

getNumLambda()[source]

Return the number of lambda values.

Returns:

num_lambda – The number of lambda values.

Return type:

int

getPosRestWidth()

Return the width of the position restraint.

Returns:

positional_restraint_width – The width of the position restraint.

Return type:

Length

getPressure()[source]

Return the pressure.

Returns:

pressure – The pressure.

Return type:

Pressure

getReportInterval()[source]

Return the interval between reporting statistics. (In integration steps.). :returns: report_interval – The number of integration steps between reporting statistics. :rtype: int

getRestartInterval()[source]

Return the interval between saving restart confiugrations, and/or trajectory frames. (In integration steps.).

Returns:

restart_interval – The number of integration steps between saving restart configurations and/or trajectory frames.

Return type:

int

getRestraint()

Return the type of restraint.

Returns:

restraint – The type of restraint, either a keyword or a list of atom indices.

Return type:

str, [int]

getRunTime()[source]

Return the running time. Set the same as other OpenMM protocols - really should be Runtime not RunTime.

Returns:

runtime – The simulation run time.

Return type:

Time

getSoftCoreA()

Return the soft_core_a value.

Returns:

soft_core_a – The soft_core_a value.

Return type:

float

getSoftCoreU0()

Return the soft_core_u0 value.

Returns:

soft_core_u0 – The soft_core_u0 value in kcal/mol.

Return type:

Energy

getSoftCoreUmax()

Return the soft_core_umax value.

Returns:

soft_core_umax – The soft_core_umax value in kcal/mol.

Return type:

Energy

getTemperature()[source]

Return temperature.

Returns:

temperature – The simulation temperature.

Return type:

Temperature

getThermostatTimeConstant()[source]

Return the time constant for the thermostat.

Returns:

runtime – The time constant for the thermostat.

Return type:

Time

getTimeStep()[source]

Return the time step.

Returns:

time – The integration time step.

Return type:

Time

getUh()[source]

Return the uh values.

Returns:

uh – The uh values in kcal/mol.

Return type:

[:class:`Energy <BioSimSpace.Types.Energy>]

getW0()[source]

Return the W0 values.

Returns:

W0 – The W0 values in kcal/mol.

Return type:

[:class:`Energy <BioSimSpace.Types.Energy>]

get_window_index()[source]

A function to get the index of the current lambda window.

Returns:

index – The index of the current lambda window.

Return type:

int

isRestart()[source]

Return whether this restart simulation.

Returns:

is_restart – Whether this is a restart simulation.

Return type:

bool

classmethod restraints()

Return a list of the supported restraint keywords.

Returns:

restraints – A list of the supported restraint keywords.

Return type:

[str]

setAlignKDistance(align_k_distance)

Set the align_k_distance value.

Parameters:

align_k_distance (int, float, str, GeneralUnit, float) – Length value for the alignment restraint kcal/mol angstrom**2.

setAlignKPsi(align_k_psi)

Set the align_k_psi value.

Parameters:

align_k_psi (int, float, str, Energy) – Force constant for the alignment dihedral constraint in kcal/mol.

setAlignKTheta(align_k_theta)

Set the align_k_theta value.

Parameters:

align_k_theta (int, float, str, Energy) – Force constant for the alignment angular constraint in kcal/mol.

setAlpha(alpha)[source]

Set the alpha values.

Parameters:

alpha ([`Energy <BioSimSpace.Types.Energy>] or [int], [float], [str]) – The alpha values in kcal/mol.

setAnalysisMethod(analysis_method)[source]

Set the method that will be used for analysis of the simulation results. This will change the output files that are generated.

Parameters:

analysis_method (str) – The method to use for analysis. Options are “UWHAM”, “MBAR” or “both” This affects the output files and the analysis that is performed. USE of “UWHAM” is strongly recommended, “MBAR” analysis is still experimental.

setCOMDistanceRestraint(com_distance_restraint)

Set the CMCM restraint flag.

Parameters:

com_distance_restraint (bool) – Whether to use the CMCM restraint.

setCOMWidth(com_restraint_width)

Set the com_restraint_width value.

Parameters:

com_restraint_width (int, float, str, :class:`Length <BioSimSpace.Types.Length>) – The com_restraint_width value in angstroms.

setCOMk(com_k)

Set the com_k value.

Parameters:

com_k (int, float, str, :class:`GeneralUnit <BioSimSpace.Types._GeneralUnit>) – The force constant for the CM-CM force in kcal/mol A**2.

setCoreAlignment(core_alignment)

Set the core alignment flag.

Parameters:

core_alignment (bool) – Whether to use core alignment.

setDirection(directions)[source]

Set the direction values.

Parameters:

directions ([int]) – The directions.

setForceConstant(force_constant)

Set the force constant for the restraint.

Parameters:

force_constant (int, float, str, GeneralUnit, float) – The force constant for the restraint, in units of kcal_per_mol/angstrom**2.

setLambda1(lambda1)[source]

Set the lambda1 values.

Parameters:

lambda1 ([float]) – The lambda1 values.

setLambda2(lambda2)[source]

Set the lambda2 values.

Parameters:

lambda2 ([float]) – The lambda2 values.

setNumLambda(num_lambda)[source]

Set the number of lambda values.

Parameters:

num_lambda (int) – The number of lambda values.

setPosRestWidth(positional_restraint_width)

Set the width of the position restraint.

Parameters:

positional_restraint_width (int, float, str, Length) – The width of the position restraint.

setPressure(pressure)[source]

Set the pressure.

Parameters:

pressure (str, Pressure) – The pressure.

setReportInterval(report_interval)[source]

Set the interval at which statistics are reported. (In integration steps.).

Parameters:

report_interval (int) – The number of integration steps between reporting statistics.

setRestart(restart)[source]

Set the restart flag.

Parameters:

restart (bool) – Whether this is a restart simulation.

setRestartInterval(restart_interval)[source]

Set the interval between saving restart confiugrations, and/or trajectory frames. (In integration steps.).

Parameters:

restart_interval (int) – The number of integration steps between saving restart configurations and/or trajectory frames.

setRestraint(restraint)

Set the type of restraint.

Parameters:

restraint (str, [int]) –

The type of restraint to perform. This should be one of the following options:

”backbone”

Protein backbone atoms. The matching is done by a name template, so is unreliable on conversion between molecular file formats.

”heavy”

All non-hydrogen atoms that aren’t part of water molecules or free ions.

”all”

All atoms that aren’t part of water molecules or free ions.

Alternatively, the user can pass a list of atom indices for more fine-grained control.

setRuntime(runtime)[source]

Set the running time.

Parameters:

runtime (str, Time) – The simulation run time.

setSoftCoreA(soft_core_a)

Set the soft_core_a value.

Parameters:

soft_core_a (float) – The softcore a value.

setSoftCoreU0(soft_core_u0)

Set the soft_core_u0 value.

Parameters:

soft_core_u0 (int, float, str, Energy) – The softcore u0 value in kcal/mol.

setSoftCoreUmax(soft_core_umax)

Set the soft_core_umax value.

Parameters:

soft_core_umax (int, float, str, Energy) – The softcore Umax value in kcal/mol.

setTemperature(temperature)[source]

Set the temperature.

Parameters:

temperature (str, Temperature) – The simulation temperature.

setThermostatTimeConstant(thermostat_time_constant)[source]

Set the time constant for the thermostat.

Parameters:

thermostat_time_constant (str, Time) – The time constant for the thermostat.

setTimestep(timestep)[source]

Set the time step.

Parameters:

time (str, Time) – The integration time step.

setUh(uh)[source]

Set the uh values.

Parameters:

uh ([:class:`Energy <BioSimSpace.Types.Energy>]) – The uh values in kcal/mol.

setW0(W0)[source]

Set the W0 values.

Parameters:

W0 ([:class:`Energy <BioSimSpace.Types.Energy>] or [int], [float], [str]) – The W0 values in kcal/mol.

set_current_index(index)[source]

A function to set the index of the current lambda window. Used internally to set the values for all lambda-dependent parameters. Take care when using this function as it can lead to unexpected behaviour if not used correctly.

Parameters:

index (int) – The index of the current lambda window.