IMP logo
IMP Reference Guide  2.6.0
The Integrative Modeling Platform
IMP.pmi.dof.DegreesOfFreedom Class Reference

A class to simplify create of constraints and movers for an IMP Hierarchy. More...

Inherits object.

Detailed Description

A class to simplify create of constraints and movers for an IMP Hierarchy.

Call the various create() functions to get started. Can get all enabled movers with get_movers(). Pass this to ReplicaExchange0.

Note
This class is only available in Python.

Definition at line 26 of file pmi/dof/__init__.py.

Public Member Functions

def constrain_symmetry
 Create a symmetry constraint. More...
 
def create_flexible_beads
 Create a chain of flexible beads. More...
 
def create_nuisance_mover
 Create MC normal mover for nuisance particles. More...
 
def create_rigid_body
 Create rigid body constraint and mover. More...
 
def create_super_rigid_body
 Create SUPER rigid body mover from one or more hierarchies. More...
 
def get_flexible_beads
 Return all flexible beads, including nonrigid members of rigid bodies. More...
 
def get_movers
 Should only return Enabled movers? More...
 
def get_nuisances_from_restraint
 Extract the nuisances from get_particles_to_sample() More...
 
def get_rigid_bodies
 Return list of rigid body objects. More...
 
def optimize_flexible_beads
 Set up MC run with just flexible beads. More...
 
def setup_md
 Setup particles for MD simulation. More...
 

Member Function Documentation

def IMP.pmi.dof.DegreesOfFreedom.constrain_symmetry (   self,
  references,
  clones,
  transform,
  resolution = 1 
)

Create a symmetry constraint.

Checks: same number of particles disable ANY movers involving symmetry copies (later may support moving them WITH references, but requires code to propagate constraint)

Parameters
referencesCan be one of the following inputs: IMP Hierarchy, PMI System/State/Molecule/TempResidue, or a list/set (of list/set) of them
clonesSame format as references
transformThe transform that moves a clone onto a reference IMP.algebra.Transformation3D
resolutionOnly used if you pass PMI objects. If you have a multires system, assuming each are rigid bodies you probably only need one resolution.

Definition at line 253 of file pmi/dof/__init__.py.

def IMP.pmi.dof.DegreesOfFreedom.create_flexible_beads (   self,
  flex_parts,
  max_trans = 0.1,
  resolution = 'all' 
)

Create a chain of flexible beads.

Parameters
flex_partsCan be one of the following inputs: IMP Hierarchy, PMI System/State/Molecule/TempResidue, or a list/set (of list/set) of them. Must be uniform input, however. No mixing object types.
max_transMaximum flexible bead translation
resolutionOnly used if you pass PMI objects. Probably you want 'all'.

Definition at line 182 of file pmi/dof/__init__.py.

def IMP.pmi.dof.DegreesOfFreedom.create_nuisance_mover (   self,
  nuisance_p,
  step_size,
  name = None 
)

Create MC normal mover for nuisance particles.

We will add an easier interface to add all of them from a PMI restraint

Parameters
nuisance_pThe Nuisance particle (an ISD::Scale)
step_sizeThe maximum step size for Monte Carlo
nameThe name of the mover, useful for better output reading.

Definition at line 211 of file pmi/dof/__init__.py.

def IMP.pmi.dof.DegreesOfFreedom.create_rigid_body (   self,
  rigid_parts,
  nonrigid_parts = None,
  max_trans = 1.0,
  max_rot = 0.1,
  nonrigid_max_trans = 0.1,
  resolution = 'all',
  name = None 
)

Create rigid body constraint and mover.

Parameters
rigid_partsCan be one of the following inputs: IMP Hierarchy, PMI System/State/Molecule/TempResidue, a list/set (of list/set) of them or a RigidBody object. Must be uniform input, however. No mixing object types.
nonrigid_partsSame input format as rigid_parts. Must be a subset of rigid_parts particles.
max_transMaximum rigid body translation
max_rotMaximum rigid body rotation
nonrigid_max_transMaximum step for the nonrigid (bead) particles
resolutionOnly used if you pass PMI objects. Probably you want 'all'.
nameRigid body name (if None, use IMP default)

ote If you want all resolutions, pass PMI objects because this function will get them all. Alternatively you can do your selection elsewhere and just pass hierarchies. Returns tuple (rb_movers,rb_object)

Definition at line 44 of file pmi/dof/__init__.py.

def IMP.pmi.dof.DegreesOfFreedom.create_super_rigid_body (   self,
  srb_parts,
  max_trans = 1.0,
  max_rot = 0.1,
  chain_min_length = None,
  chain_max_length = None,
  resolution = 'all',
  name = None 
)

Create SUPER rigid body mover from one or more hierarchies.

Can also create chain of SRBs.

Parameters
srb_partsCan be one of the following inputs: IMP Hierarchy, PMI System/State/Molecule/TempResidue, or a list/set (of list/set) of them. Must be uniform input, however. No mixing object types.
max_transMaximum super rigid body translation
max_rotMaximum super rigid body rotation
chain_min_lengthCreate a CHAIN of super rigid bodies - must provide list This parameter is the minimum chain length.
chain_max_lengthMaximum chain length
resolutionOnly used if you pass PMI objects. Probably you want 'all'.
nameThe name of the SRB (hard to assign a good one automatically)

ote If you set the chain parameters, will NOT create an SRB from all of them together, but rather in groups made from the outermost list.

Definition at line 117 of file pmi/dof/__init__.py.

def IMP.pmi.dof.DegreesOfFreedom.get_flexible_beads (   self)

Return all flexible beads, including nonrigid members of rigid bodies.

Definition at line 327 of file pmi/dof/__init__.py.

def IMP.pmi.dof.DegreesOfFreedom.get_movers (   self)

Should only return Enabled movers?

Definition at line 319 of file pmi/dof/__init__.py.

def IMP.pmi.dof.DegreesOfFreedom.get_nuisances_from_restraint (   self,
  r 
)

Extract the nuisances from get_particles_to_sample()

Definition at line 331 of file pmi/dof/__init__.py.

def IMP.pmi.dof.DegreesOfFreedom.get_rigid_bodies (   self)

Return list of rigid body objects.

Definition at line 323 of file pmi/dof/__init__.py.

def IMP.pmi.dof.DegreesOfFreedom.optimize_flexible_beads (   self,
  nsteps,
  temperature = 1.0 
)

Set up MC run with just flexible beads.

Optimization works much better when restraints are already set up.

Definition at line 304 of file pmi/dof/__init__.py.

def IMP.pmi.dof.DegreesOfFreedom.setup_md (   self,
  hspec 
)

Setup particles for MD simulation.

Returns all particles, just pass this to molecular_dynamics_sample_objects in ReplicaExchange0.

Parameters
hspecCan be one of the following inputs: IMP Hierarchy, PMI System/State/Molecule/TempResidue, or a list/set (of list/set) of them. Must be uniform input, however. No mixing object types.

Definition at line 230 of file pmi/dof/__init__.py.


The documentation for this class was generated from the following file: