| rdcPot | index rdcPot.py |
residual dipolar coupling potential
One normally creates RDCPot objects using the create_RDCPot function within
the rdcPotTools module.
constructor:
RDCPot1(instanceName,
oTensor
restraints,
simulation)
instanceName is a user-specified identifier. oTensor specifies an
orientational varTensor.VarTensor object. restraints is an optional
XPLOR-style sani or dipo restraint table. simulation is an optional
simulation.Simulation specification.
This potential term is described in G.M. Clore and C.D. Schwieters,
J. Am. Chem. Soc. 126, 2923-2938 (2004).
members:
oTensor - the VarTensor orientational tensor object.
methods:
addRestraints(restraintList) - add the specified XPLOR sani- or
dipo-style restraints. Note that this is a
string, and not a filename.
calcEnergy() - calc energy, returns the energy value.
calcEnergyAndDerivs(derivs) - calc energy, derivs, returns the energy value.
rms() - return the rms of calcedShift - effShift
deviation() - return average of deviation of ensemble members
numRestraints() - return the number of restraints defined for this term.
violations() - return number of violations
info() - current info about the state of this instance
showViolations() - return a string listing violated restraints.
showRestraints(violated) - return info on restraints. Argument violated is
boolean specifying whether to return only
violated restraints.
restraints() - return a list of restraints. See the description of the
Restraint class below.
rawRestraints() - return a list of restraints, without calling calcEnergy
to update calculated values. See the description of the
Restraint class below.
simulation() - return the associated simulation.Simulation.
The following parameters can be set [defaults in square brackets]
deltaDFS - constant offset in dipolar couplings [0]
verbose - if true, sporadically spit out info [False]
useDistance- if true, include the 1/r^3 dependence in the calcedShift
calculation. Note that this feature changes the meaning
and units of Da [0].
useSign - if false, ignore the sign of the calculated and observed
dipolar coupling; this if the sign of the shift is
unknown [1].
gyroA
gyroB - linear scaling factors for the calculated dipolar coupling.
scale - scale factor (force constant) [1]
threshold - threshold in violation calculation [0]
potType - type of potential: "harmonic" or "square" ["harmonic"]
aveType - type of averaging to use for indistinguishable atoms:
"sum" or "average" ["average"]
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 above quantities may be retrieved using the member function form
quantity(), while they are set using the form setQuantity(value).
assignment table:
entries in the restraint list have the following form
assign ( sel OO ) ( sel Z ) ( sel X ) ( sel Y )
( sel m ) ( sel n ) obsShift error1 [error2]
where the first four selections are present for compatibility with
XPLOR assignment tables. the m and n selections specify the atoms
involved in the interaction. the observed dipolar shift is given by
the obsShift argument, and the error bounds are given by error1 and
error2. If error2 is absent, it defaults to error1.
The dipolar shift is given by the equation
calcedShift = DFS + Da (3 vz^2 -1) + 3/2 Da*R ( vx^2 - vy^2 )
where R is the rhombic tensor component, and vx,vy,vz are the
projections of the unit vector in the direction mn onto the
corresponding coordinate axis representing tensor orientation. Da is scaled
by gyroA and gyroB. Typically, these are set to one, or are set to scale
factors such that a single Da value can be used with experiments
involving different nuclei. These scale factors are usually set
using the helper function rdcPotTools.scale_toNH.
If useDistance is 1, the Da is scaled by 1 / |q_m - q_n|^3. Note that
this changes the units of Da. This feature is frequently used in
proton-proton experiments. If the Da is fixed, one will need an
additional experiment to obtain a value for Da, and the value scaled
appropriately. For example, if Da(NH) is available from a 15N-1H
experiment in the same medium, the H-H Da would be set as Da(NH) *
r(NH)^3 * gamma(N) gamma(N) = 10.47*Da(NH), where r(NH) is the NH
bond distance, and gamma(N) and gamma(H) are the gyromagnetic ratio
of 15N and 1H, respectively.
The energy function is defined as
1/2 * scale * (calcedShift - effShift)^2
where for potType=harmonic, effShift = obsShift. For potType=square,
effShift = calcedShift, if
obsShift-error1 < calcedShift < obsShift+error2
= calcedShift+error1, if calcedShift < obsShift-error1
= calcedShift-error2, if calcedShift > obsShift+error2
Restraint class
methods:
energy() - energy due to this restraint
calcd() - calculated value of dipolar coupling (ensemble average).
obs() - observed value of dipolar coupling.
diff() - difference between calcd and obs
plusErr(), minusErr() - bounds for the square well potential
aSel() - atomSel for atom A
bSel() - atomSel for atom B
bondVectors() - list of Vec3 - non-normalized bond vectors for each
member of the ensemble
calced_contrib() - list of contributions due to each ensemble member.
deviation() - measure of spread between different ensemble members
| Classes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Functions | ||
| ||