potCosAngleRatio
index
/home/schwitrs/xplor/python/potCosAngleRatio.py


 
# Two potential terms involving ratios of cos(theta)
#
# this was developed to restrain rdc/csa Da values to be close to oneanother
#  (but not necessarily identical). These potentials have been reimplemented
#  the C++ module cosRatioPot for speed.
#
###################################################
#
# potential term #1:
#          1/2 * scale * (cos(theta1) - ratio*cos(theta2))^2
#
# where theta1 is one bond angle, theta2 is a second bond angle, and
# scale and ratio are constants.
#
# use:
#  from potCosAngleRatio import CosAngleRatioPot
#
#  term = CosAngleRatioPot("name",             
#                         AtomSel("atom 01"),
#                         AtomSel("atom a1"),
#                         AtomSel("atom b1"),
#                         AtomSel("atom 02"),
#                         AtomSel("atom a2"),
#                         AtomSel("atom b2"),
#                         [simulation])
#
# theta1 is given by the angle a1 - 01 - b1
# theta2 is given by the angle a2 - 02 - b2
#  [simulation is an optional simulation parameter - usually not needed.]
#
# to set the scale factor:
#   term.scale = 100
#
# to set the constant ratio:
#   term.ratio = 0.2
#
# remember to add this to the terms to be evaluated:
#   simulation.addPot(term)
#
###################################################
#
# potential term #2:
#       1/2 * scale * (cos(theta1)*cos(theta4) - cos(theta2)*cos(theta3))^2
#
# where theta1, theta2, theta3, and theta4 are bond angles, and
# scale is a constant. Note that the minimum of this potential occurs when
#
#    cos(theta1)/cos(theta2) = cos(theta3)/cos(theta4)
#
# use:
#  from potCosAngleRatio import CosAngleRatioPot
#
#  term = Cos2AngleRatioPot("name",             
#                         AtomSel("atom 01"),
#                         AtomSel("atom a1"),
#                         AtomSel("atom b1"),
#                         AtomSel("atom 02"),
#                         AtomSel("atom a2"),
#                         AtomSel("atom b2"),
#                         AtomSel("atom 03"),
#                         AtomSel("atom a3"),
#                         AtomSel("atom b3"),
#                         AtomSel("atom 04"),
#                         AtomSel("atom a4"),
#                         AtomSel("atom b4"),
#                         [simulation])
#
# theta1 is given by the angle a1 - 01 - b1
# theta2 is given by the angle a2 - 02 - b2
#  [simulation is an optional simulation parameter - usually not needed.]
#
# to set the scale factor:
#   term.scale = 100
#
# to set the constant ratio:
#   term.ratio = 0.2
#
#

 
Classes
       
pyPot.PyPot(builtins.object)
Cos2AngleRatioPot
CosAngleRatioPot

 
class Cos2AngleRatioPot(pyPot.PyPot)
    Cos2AngleRatioPot(name, atomSel01, atomSela1, atomSelb1, atomSel02, atomSela2, atomSelb2, atomSel03, atomSela3, atomSelb3, atomSel04, atomSela4, atomSelb4, sim=0)
 

 
 
Method resolution order:
Cos2AngleRatioPot
pyPot.PyPot
builtins.object

Methods defined here:
__init__(s, name, atomSel01, atomSela1, atomSelb1, atomSel02, atomSela2, atomSelb2, atomSel03, atomSela3, atomSelb3, atomSel04, atomSela4, atomSelb4, sim=0)
Initialize self.  See help(type(self)) for accurate signature.
calcEnergy(s)
calcEnergyAndDerivs(s, derivs)

Methods inherited from pyPot.PyPot:
__deref__(self, *args, **kwargs) -> 'PyPot *'
__oldinit__ = __init__(self, *args, **kwargs)
__ref__(self, *args, **kwargs) -> 'PyPot &'
__repr__ = _swig_repr(self)
decrRefCnt(self, *args, **kwargs) -> 'void'
incrRefCnt(self, *args, **kwargs) -> 'void'
instanceData(self, *args, **kwargs) -> 'PyObject *'
instanceName(self, *args, **kwargs) -> 'char const *'
numRestraints(self, *args, **kwargs) -> 'int'
potName(self, *args, **kwargs) -> 'char const *'
pyXplorHelp(self, *args, **kwargs) -> 'String'
pythonPot(self, *args, **kwargs) -> 'PyObject *'
refCnt(self, *args, **kwargs) -> 'int'
registerInstanceData(self, *args, **kwargs) -> 'void'
registerTo(self, *args, **kwargs) -> 'void'
resetInstanceName(self, *args, **kwargs) -> 'void'
resetPotName(self, *args, **kwargs) -> 'void'
rms(self, *args, **kwargs) -> 'float_type'
scale(self, *args, **kwargs) -> 'float_type const'
setScale(self, *args, **kwargs) -> 'void'
setThreshold(self, *args, **kwargs) -> 'void'
threshold(self, *args, **kwargs) -> 'float_type const'
unRegister(self, *args, **kwargs) -> 'void'
updateDelta(self, *args, **kwargs) -> 'void'
updateValues(self, *args, **kwargs) -> 'void'
violations(self, *args, **kwargs) -> 'float_type'

Static methods inherited from pyPot.PyPot:
__swig_destroy__ = delete_PyPot(...)

Data descriptors inherited from pyPot.PyPot:
__dict__

 
dictionary for instance variables (if defined)
__weakref__

 
list of weak references to the object (if defined)
instanceDataCleanup

 
instanceDataCreate

 
instanceData_

 
modified

 
registeredSimulations

 
thisown

 
The membership flag

 
class CosAngleRatioPot(pyPot.PyPot)
    CosAngleRatioPot(name, atomSel01, atomSela1, atomSelb1, atomSel02, atomSela2, atomSelb2, sim=0)
 

 
 
Method resolution order:
CosAngleRatioPot
pyPot.PyPot
builtins.object

Methods defined here:
__init__(s, name, atomSel01, atomSela1, atomSelb1, atomSel02, atomSela2, atomSelb2, sim=0)
Initialize self.  See help(type(self)) for accurate signature.
calcEnergy(s)
calcEnergyAndDerivs(s, derivs)

Methods inherited from pyPot.PyPot:
__deref__(self, *args, **kwargs) -> 'PyPot *'
__oldinit__ = __init__(self, *args, **kwargs)
__ref__(self, *args, **kwargs) -> 'PyPot &'
__repr__ = _swig_repr(self)
decrRefCnt(self, *args, **kwargs) -> 'void'
incrRefCnt(self, *args, **kwargs) -> 'void'
instanceData(self, *args, **kwargs) -> 'PyObject *'
instanceName(self, *args, **kwargs) -> 'char const *'
numRestraints(self, *args, **kwargs) -> 'int'
potName(self, *args, **kwargs) -> 'char const *'
pyXplorHelp(self, *args, **kwargs) -> 'String'
pythonPot(self, *args, **kwargs) -> 'PyObject *'
refCnt(self, *args, **kwargs) -> 'int'
registerInstanceData(self, *args, **kwargs) -> 'void'
registerTo(self, *args, **kwargs) -> 'void'
resetInstanceName(self, *args, **kwargs) -> 'void'
resetPotName(self, *args, **kwargs) -> 'void'
rms(self, *args, **kwargs) -> 'float_type'
scale(self, *args, **kwargs) -> 'float_type const'
setScale(self, *args, **kwargs) -> 'void'
setThreshold(self, *args, **kwargs) -> 'void'
threshold(self, *args, **kwargs) -> 'float_type const'
unRegister(self, *args, **kwargs) -> 'void'
updateDelta(self, *args, **kwargs) -> 'void'
updateValues(self, *args, **kwargs) -> 'void'
violations(self, *args, **kwargs) -> 'float_type'

Static methods inherited from pyPot.PyPot:
__swig_destroy__ = delete_PyPot(...)

Data descriptors inherited from pyPot.PyPot:
__dict__

 
dictionary for instance variables (if defined)
__weakref__

 
list of weak references to the object (if defined)
instanceDataCleanup

 
instanceDataCreate

 
instanceData_

 
modified

 
registeredSimulations

 
thisown

 
The membership flag

 
Functions
       
addVec(v1, v2)
dot(v1, v2)
norm(v)
sqrt(x, /)
Return the square root of x.
subVec(v1, v2)
subtract v2 from v1
unitVec(v)
vecScale(a, v)