potential terms restraining atomic positional RMSD. restrains the position of selected atoms relative to those in other members of an .EnsembleSimulation. Constructor: It is suggested that this potential term be created using the helper functions .create_BFactorPot() or .NCSPot(). PosRMSDPot(instanceName, restraints="", simulation) - creates a potential term with the given name. restraints is an optional string of restraints. simulation should specify the appropriate EnsembleSimulation (default: currentSimulation) Methods: calcEnergy() - calcs energy calcEnergyAndDerivs(DerivList) - calcs energy and derivative info note that these routines also update all other potential-specific data. addRestraints(restraints) - add restraints in the given string. rms() - report rmsd value for this potential term. numRestraints() - report number of restraints defined for this term. violations() - report number of violations for this term. info() - return a string giving summary info for this - term. showRestraints(violated) - return a string listing restraints. If the boolean violated is True, only violated restraints are included, else all restraints are listed. showViolations() - return a string listing violated restraints. showPositions() - return a string containing atom position info. restraints() - return a list of restraints. Read-Write accessors: scale - scale factor for potential potType - potential type: 'harmonic' or 'square' [default: harmonic] threshold - tolerance for violation determination. centerSel - selection specifying qc. If it is empty, distances are measured with respect to the origin. rmsdType - string: either "bfactor" or "rap" [default: "bfactor"] showAllRestraints - boolean which changes the behavior of showViolations. If this parameter is set to True, the behavior of showViolations is modified such that all restraints are printed. Violated restraints are indicated by an asterisk in the first column. [0] The restraint class terms have the follow members pot - the owning potential term. calcd - the most recent calculated value. obs - the observed value. diff - for rmsdType='rap': diff = calcd for rmsdType='bfactor': sqrt of V term. see below. obsErr - estimated error in obs (obsErrB for rmsdType=='bfactor' obsErrRAP for rmsdType=='rap' ) AtomSel sel - .AtomSel associated with the restraint. avePos - list of average atomic positions in each ensemble member. rmsd2_contrib - list of rsmd2 contributions from each ensemble member. The potential term is defined as E = scale() * V where for rmsdType='rap': V = calcd for rmsdType='bfactor': V = Vsq(calcd-obs,obsErrB) where, q_{i,j} is the position of atom j in ensemble member i qAve_j is the ensemble-averaged position of atom j calcd = const sum_i w_i * rmsd2_contrib[i] where for rmsdType='rap': const = 1 for rmsdType='bfactor': const = 8*pi^2 rmsd2_contrib[i] = Vsq( | (q_ij-qc) - (qAve_j-qc) | , obsErrRAP) and Vsq(x,tol) = x^2 if potType=='harmonic' (abs(x)-tol)^2 if potType=='square'