Imported modules
|
|
from CGLutil import vrml
import LinearAlgebra
import Numeric
import chimera
import math
import operator
|
Functions
|
|
|
|
determinant
|
determinant ( mat )
|
|
displayHelices
|
displayHelices (
mol,
color,
fixedRadius,
radius,
split,
splitRatio,
)
|
|
displayStrands
|
displayStrands (
mol,
color,
fixedWidth,
width,
fixedThickness,
thickness,
split,
splitRatio,
)
|
|
findAxes
|
findAxes ( resList, atomNames )
Calculate orthonormal basis vectors from the eigenvectors of
the moment of inertia tensor of a set of coordinates
moment of inertia tensor components for an atom are:
I[i,j] = mass * (r * r * delta[i,j] - r[i] * r[j]
where
r = vector from center of mass to this atom
delta = delta function (1 if i == j, 0 otherwise)
See Kroto, H.W., Molecular Rotation Spectra, John Wiley and Sons, 1975, p 19
or http://www.phys.ufl.edu/~avery/course/3062_f96/home4/home4.htm
|
|
findHelices
|
findHelices ( mol )
Find helices and sheets in model
|
|
findStrands
|
findStrands ( mol )
|
|
matrixNormalize
|
matrixNormalize ( m )
Chimera is very picky about its matrices
Routine below normalizes a 3x3 matrix to the acceptable tolerance
|
|
parametricVars
|
parametricVars (
base,
axes,
c,
)
Compute the parametric variables from "base" to "c" using orthonormal
bases of "axes"
|
|
showHelix
|
showHelix (
helix,
color,
fixedRadius,
radius,
split,
splitRatio,
)
Create a VRML node representing a helix
|
|
showStrand
|
showStrand (
strand,
color,
fixedWidth,
width,
fixedThickness,
thickness,
split,
splitRatio,
)
Create a VRML node representing a sheet
|
|
splitResidues
|
splitResidues ( residues, atomNames )
Split a list of residues by finding the pair that has
the most divergent axes
|
|