meld.system.restraints

class meld.system.restraints.AlwaysActiveCollection[source]
class meld.system.restraints.ConfinementRestraint(system, scaler, res_index, atom_name, radius, force_const)[source]

Confinement restraint

Parameters:
  • system – a System object
  • scaler – a force scaler
  • res_index – integer, starting from 1
  • atom_name – atom name
  • raidus – calculed couplings within tolerance (in Hz) of d_obs will have zero energy and force
  • force_const – force sonstant in \(kJ/mol/Hz^2\)

Confines an atom to be within radius of the origin. These restraints are typically set to somewhat larger than the expected radius of gyration of the protein and help to keep the structures comapct even when the protein is unfolded. Typically used with a ConstantScaler.

class meld.system.restraints.ConstantScaler[source]

This scaler is “always on” and always returns a value of 1.0”.

class meld.system.restraints.DistanceRestraint(system, scaler, atom_1_res_index, atom_1_name, atom_2_res_index, atom_2_name, r1, r2, r3, r4, k)[source]

Distance restraint

Parameters:
  • system – a System object
  • scaler – a force scaler
  • atom_1_res_index – integer, starting from 1
  • atom_1_name – atom name
  • atom_2_res_index – integer, starting from 1
  • atom_2_name – atom name
  • r1 – in nanometers
  • r2 – in nanometers
  • r3 – in nanometers
  • r4 – in nanometers
  • k – in \(kJ/mol/nm^2\)
class meld.system.restraints.LinearScaler(alpha_min, alpha_max, strength_at_alpha_min=1.0, strength_at_alpha_max=0.0)[source]

This scaler linearly interpolates between 0 and 1 from alpha_min to alpha_max.

class meld.system.restraints.NonLinearScaler(alpha_min, alpha_max, factor, strength_at_alpha_min=1.0, strength_at_alpha_max=0.0)[source]
class meld.system.restraints.NonSelectableRestraint[source]

Abstract class for non-selectable restraints.

class meld.system.restraints.RdcRestraint(system, scaler, atom_1_res_index, atom_1_name, atom_2_res_index, atom_2_name, kappa, d_obs, tolerance, force_const, weight, expt_index)[source]

Residual Dipolar Coupling Restraint

Parameters:
  • system – a System object
  • scaler – a force scaler
  • atom_1_res_index – integer, starting from 1
  • atom_1_name – atom name
  • atom_2_res_index – integer, starting from 1
  • atom_2_name – atom name
  • kappa – prefactor for RDC calculation in \(Hz / Angstrom^3\)
  • d_obs – observed dipolar coupling in Hz
  • tolerance – calculed couplings within tolerance (in Hz) of d_obs will have zero energy and force
  • force_const – force sonstant in \(kJ/mol/Hz^2\)
  • weight – dimensionless weight to place on this restraint
  • expt_index – integer experiment id

Typical values for kappa are:

  • 1H - 1H: \(-360300 \ Hz / Angstrom^3\)
  • 13C - 1H: \(-90600 \ Hz / Angstrom^3\)
  • 15N - 1H: \(36500 \ Hz / Angstrom^3\)
class meld.system.restraints.Restraint[source]

Abstract class for all restraints.

class meld.system.restraints.RestraintManager(system)[source]
class meld.system.restraints.RestraintRegistry(name, bases, attrs)[source]

Metaclass that maintains a registry of restraint types.

All classes that decend from Restraint inherit RestraintRegistry as their metaclass. RestraintRegistry will automatically maintain a map between the class attribute ‘_restraint_key_’ and all restraint types.

The function get_constructor_for_key is used to get the class for the corresponding key.

classmethod get_constructor_for_key(key)[source]

Get the constructor for the restraint type matching key.

class meld.system.restraints.Scaler[source]

Base class for all scalers.

class meld.system.restraints.ScalerRegistry(name, bases, attrs)[source]

Metaclass that maintains a registry of scaler types.

All classes that decend from Scaler inherit ScalerRegistry as their metaclass. ScalerRegistry will automatically maintain a map between the class attribute ‘_scaler_key_’ and all scaler types.

The function get_constructor_for_key is used to get the class for the corresponding key.

classmethod get_constructor_for_key(key)[source]

Get the constructor for the scaler type matching key.

class meld.system.restraints.SelectableRestraint[source]

Abstract class for selectable restraints.

class meld.system.restraints.SelectivelyActiveCollection(restraint_list, num_active)[source]
class meld.system.restraints.TorsionRestraint(system, scaler, atom_1_res_index, atom_1_name, atom_2_res_index, atom_2_name, atom_3_res_index, atom_3_name, atom_4_res_index, atom_4_name, phi, delta_phi, k)[source]

A torsion restraint

Parameters:
  • system – System
  • scaler – force scaler
  • atom_1_res_index – integer, starting from 1
  • atom_1_name – atom name
  • atom_2_res_index – integer, starting from 1
  • atom_2_name – atom name
  • atom_3_res_index – integer, starting from 1
  • atom_3_name – atom name
  • atom_4_res_index – integer, starting from 1
  • atom_4_name – atom name
  • phi – equilibrium value, degrees
  • delta_phi – flat within delta_phi, degrees
  • k\(kJ/mol/degree^2\)