BioSimSpace.Protocol.ATMAnnealing

class BioSimSpace.Protocol.ATMAnnealing(system=None, data=None, timestep=2.0000 fs, runtime=0.2000 ns, temperature=300.0000 K, pressure=1.0000 atm, thermostat_time_constant=1.0000 ps, report_interval=100, restart_interval=100, 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, 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=1000.0000 kcal/mol, soft_core_u0=500.0000 kcal/mol, soft_core_a=0.0625, direction=1, lambda1=0.0, lambda2=0.0, alpha=0.0, uh=0.0, W0=0.0, anneal_values='default', anneal_numcycles=100)[source]

Annealing protocol for ATM simulations.

__init__(system=None, data=None, timestep=2.0000 fs, runtime=0.2000 ns, temperature=300.0000 K, pressure=1.0000 atm, thermostat_time_constant=1.0000 ps, report_interval=100, restart_interval=100, 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, 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=1000.0000 kcal/mol, soft_core_u0=500.0000 kcal/mol, soft_core_a=0.0625, direction=1, lambda1=0.0, lambda2=0.0, alpha=0.0, uh=0.0, W0=0.0, anneal_values='default', anneal_numcycles=100)[source]

Create a new annealing 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 (float, Length) – 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.

  • direction (str) – The direction of the Annealing.

  • lambda1 (float) – The lambda1 value for the ATM force. Superceded by any values defined in anneal_values.

  • lambda2 (float) – The lambda2 value for the ATM force. Superceded by any values defined in anneal_values.

  • alpha (int, float, str, Energy) – The alpha value for the ATM force. Value in kcal/mol. Superceded by any values defined in anneal_values.

  • uh (int, float, str, Energy) – The uh value for the ATM force. Value in kcal/mol. Superceded by any values defined in anneal_values.

  • W0 (int, float, str, Energy) – The W0 value for the ATM force. Value in kcal/mol. Superceded by any values defined in anneal_values.

  • anneal_values (dict, None, "default") –

    If None, then no annealing will be performed. If “default”, then lambda values will be annealed from 0 to 0.5. If more complex annealing is required, then a dictionary with some or all of the following keys should be given:

    ”lambda1_start”float

    The starting value for lambda1.

    ”lambda1_end”float

    The ending value for lambda1.

    ”lambda2_start”float

    The starting value for lambda2.

    ”lambda2_end”float

    The ending value for lambda2.

    ”alpha_start”float

    The starting value for alpha.

    ”alpha_end”float

    The ending value for alpha.

    ”uh_start”float

    The starting value for uh.

    ”uh_end”float

    The ending value for uh.

    ”W0_start”float

    The starting value for W0.

    ”W0_end”float

    The ending value for W0

    Any unspecified values will use their default lambda=0 value.

  • anneal_numcycles (int) – The number of annealing cycles to perform, defines the rate at which values are incremented. Default 100.

Methods

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

Create a new annealing 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 value for the ATM force.

getAnnealNumCycles()

Return the number of annealing cycles.

getAnnealValues()

Return the anneal protocol.

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 of the equilibration.

getForceConstant()

Return the force constant for the restraint.

getLambda1()

Return the lambda1 value for the ATM force.

getLambda2()

Return the lambda2 value for the ATM force.

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 value for the ATM force.

getW0()

Return the W0 value for the ATM force.

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 value for the ATM force.

setAnnealNumCycles(anneal_numcycles)

Set the number of annealing cycles.

setAnnealValues(anneal_values)

Set the anneal protocol.

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(direction)

Set the direction of the equilibration.

setForceConstant(force_constant)

Set the force constant for the restraint.

setLambda1(lambda1)

Set the lambda1 value for the ATM force.

setLambda2(lambda2)

Set the lambda2 value for the ATM force.

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.

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 value for the ATM force.

setW0(W0)

Set the W0 value for the ATM force.

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 value for the ATM force.

Returns:

alpha – The alpha value for the ATM force in kcal/mol. Ignored if use_atm_force is False.

Return type:

Energy

getAnnealNumCycles()[source]

Return the number of annealing cycles.

Returns:

anneal_numcycles – The number of annealing cycles.

Return type:

int

getAnnealValues()[source]

Return the anneal protocol.

Returns:

anneal_protocol – The anneal protocol.

Return type:

dict

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 of the equilibration.

Returns:

direction – The direction of the equilibration. Ignored if use_atm_force is False.

Return type:

str

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 value for the ATM force.

Returns:

lambda1 – The lambda1 value for the ATM force. Ignored if use_atm_force is False.

Return type:

float

getLambda2()[source]

Return the lambda2 value for the ATM force.

Returns:

lambda2 – The lambda2 value for the ATM force. Ignored if use_atm_force is False.

Return type:

float

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.

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 value for the ATM force.

Returns:

uh – The uh value for the ATM force in kcal/mol. Ignored if use_atm_force is False.

Return type:

Energy

getW0()[source]

Return the W0 value for the ATM force.

Returns:

W0 – The W0 value for the ATM force in kcal/mol. Ignored if use_atm_force is False.

Return type:

Energy

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 value for the ATM force.

Parameters:

alpha (int, float, str, Energy) – The alpha value for the ATM force in kcal/mol. Ignored if use_atm_force is False.

setAnnealNumCycles(anneal_numcycles)[source]

Set the number of annealing cycles.

Parameters:

anneal_numcycles (int) – The number of annealing cycles.

setAnnealValues(anneal_values)[source]

Set the anneal protocol.

Parameters:

anneal_values (dict) – The anneal values.

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(direction)[source]

Set the direction of the equilibration.

Parameters:

direction (str) – The direction of the equilibration. Ignored if use_atm_force is False.

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 value for the ATM force.

Parameters:

lambda1 (float) – The lambda1 value for the ATM force. Ignored if use_atm_force is False.

setLambda2(lambda2)[source]

Set the lambda2 value for the ATM force.

Parameters:

lambda2 (float) – The lambda2 value for the ATM force. Ignored if use_atm_force is False.

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.

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 value for the ATM force.

Parameters:

uh (int, float, str, Energy) – The uh value for the ATM force in kcal/mol. Ignored if use_atm_force is False.

setW0(W0)[source]

Set the W0 value for the ATM force.

Parameters:

W0 (int, float, str, Energy) – The W0 value for the ATM force in kcal/mol. Ignored if use_atm_force is False.