Package org.jmol.modelsetbio
Class BioExt
- java.lang.Object
-
- org.jmol.modelsetbio.BioExt
-
public class BioExt extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description private static java.lang.StringaaPlusprivate static java.lang.StringaaSp2private static java.lang.StringaaSp21private ModelSetmsprivate static java.lang.StringnaNoHprivate static java.lang.String[]pdbRecordsprivate static java.lang.String[]qColorprivate Viewervwr
-
Constructor Summary
Constructors Constructor Description BioExt()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) intcalculateAllstruts(Viewer vwr, ModelSet ms, BS bs1, BS bs2)(package private) voidcalculateStraightnessAll()private static javajs.util.Lst<Atom[]>calculateStruts(ModelSet modelSet, BS bs1, BS bs2, javajs.util.Lst<Atom> vCA, float thresh, int delta, boolean allowMultiple)Algorithm of George Phillips phillips@biochem.wisc.edu originally a contribution to pyMol as struts.py; adapted here by Bob Hanson for Jmol 1/2010 Return a vector of support posts for rapid prototyping models along the lines of George Phillips for Pymol except on actual molecular segments (biopolymers), not PDB chains (which may or may not be continuous).(package private) static java.lang.StringdrawQuat(javajs.util.Quat q, java.lang.String prefix, java.lang.String id, javajs.util.P3 ptCenter, float scale)private static floatget3DStraightness(java.lang.String id, javajs.util.Quat dq, javajs.util.Quat dqnext)(package private) voidgetAllPolymerInfo(BS bs, java.util.Map<java.lang.String,javajs.util.Lst<java.util.Map<java.lang.String,java.lang.Object>>> fullInfo)(package private) booleangetAminoAcidValenceAndCharge(java.lang.String res, java.lang.String name, int[] ret)returns an array if we have special hybridization or chargeprivate voidgetData(int m0, int mStep, BioPolymer p, char ctype, char qtype, int derivType, BS bsAtoms, BS bsSelected, boolean isDraw, boolean isRamachandran, boolean calcRamachandranStraightness, boolean useQuaternionStraightness, boolean writeRamachandranStraightness, boolean quaternionStraightness, float factor, boolean isAmino, boolean isRelativeAlias, LabelToken[] tokens, javajs.util.OC pdbATOM, javajs.util.SB pdbCONECT, BS bsWritten, javajs.util.P3 ptTemp)(package private) java.lang.StringgetFullPDBHeader(java.util.Map<java.lang.String,java.lang.Object> auxiliaryInfo)private static Atom[]getMutationBackbone(AminoMonomer res1, Atom[] backbone)private voidgetPdbData(BioPolymer bp, char ctype, char qtype, int mStep, int derivType, BS bsAtoms, BS bsSelected, boolean bothEnds, boolean isDraw, boolean addHeader, LabelToken[] tokens, javajs.util.OC pdbATOM, javajs.util.SB pdbCONECT, BS bsWritten, javajs.util.P3 ptTemp)(package private) voidgetPdbDataM(BioModel m, Viewer vwr, java.lang.String type, char ctype, boolean isDraw, BS bsSelected, javajs.util.OC out, LabelToken[] tokens, javajs.util.SB pdbCONECT, BS bsWritten)private static java.lang.StringgetQInfo(javajs.util.Quat q)private static floatgetQuaternionStraightness(java.lang.String id, javajs.util.Quat dq, javajs.util.Quat dqnext)private static floatgetStraightness(float cosHalfTheta)(package private) booleanmutate(Viewer vwr, BS bs, java.lang.String group, java.lang.String[] sequence)private static booleanmutateAtom(Viewer vwr, int iatom, java.lang.String fileName)private static voidreplaceMutatedMonomer(Viewer vwr, AminoMonomer res0, AminoMonomer res1)(package private) BioExtset(Viewer vwr, ModelSet ms)private static voidsetStrut(int i, int j, int n, javajs.util.Lst<Atom> vCA, BS bs1, BS bs2, javajs.util.Lst<Atom[]> vStruts, BS bsStruts, BS bsNotAvailable, BS bsNearbyResidues, int delta)private static intstrutPoint(int i, int j, int n)
-
-
-
Field Detail
-
vwr
private Viewer vwr
-
ms
private ModelSet ms
-
qColor
private static final java.lang.String[] qColor
-
pdbRecords
private static final java.lang.String[] pdbRecords
-
naNoH
private static final java.lang.String naNoH
- See Also:
- Constant Field Values
-
aaSp2
private static final java.lang.String aaSp2
- See Also:
- Constant Field Values
-
aaSp21
private static final java.lang.String aaSp21
- See Also:
- Constant Field Values
-
aaPlus
private static final java.lang.String aaPlus
- See Also:
- Constant Field Values
-
-
Method Detail
-
getAllPolymerInfo
void getAllPolymerInfo(BS bs, java.util.Map<java.lang.String,javajs.util.Lst<java.util.Map<java.lang.String,java.lang.Object>>> fullInfo)
-
calculateStraightnessAll
void calculateStraightnessAll()
-
getPdbData
private void getPdbData(BioPolymer bp, char ctype, char qtype, int mStep, int derivType, BS bsAtoms, BS bsSelected, boolean bothEnds, boolean isDraw, boolean addHeader, LabelToken[] tokens, javajs.util.OC pdbATOM, javajs.util.SB pdbCONECT, BS bsWritten, javajs.util.P3 ptTemp)
-
getData
private void getData(int m0, int mStep, BioPolymer p, char ctype, char qtype, int derivType, BS bsAtoms, BS bsSelected, boolean isDraw, boolean isRamachandran, boolean calcRamachandranStraightness, boolean useQuaternionStraightness, boolean writeRamachandranStraightness, boolean quaternionStraightness, float factor, boolean isAmino, boolean isRelativeAlias, LabelToken[] tokens, javajs.util.OC pdbATOM, javajs.util.SB pdbCONECT, BS bsWritten, javajs.util.P3 ptTemp)- Parameters:
m0-mStep-p-ctype-qtype-derivType-bsAtoms-bsSelected-isDraw-isRamachandran-calcRamachandranStraightness-useQuaternionStraightness-writeRamachandranStraightness-quaternionStraightness- NOT USEDfactor-isAmino-isRelativeAlias-tokens-pdbATOM-pdbCONECT-bsWritten-ptTemp-
-
getQInfo
private static java.lang.String getQInfo(javajs.util.Quat q)
-
drawQuat
static java.lang.String drawQuat(javajs.util.Quat q, java.lang.String prefix, java.lang.String id, javajs.util.P3 ptCenter, float scale)
-
get3DStraightness
private static float get3DStraightness(java.lang.String id, javajs.util.Quat dq, javajs.util.Quat dqnext)- Parameters:
id- for debugging onlydq-dqnext-- Returns:
- calculated straightness
-
getQuaternionStraightness
private static float getQuaternionStraightness(java.lang.String id, javajs.util.Quat dq, javajs.util.Quat dqnext)- Parameters:
id- for debugging onlydq-dqnext-- Returns:
- straightness
-
getStraightness
private static float getStraightness(float cosHalfTheta)
-
getPdbDataM
void getPdbDataM(BioModel m, Viewer vwr, java.lang.String type, char ctype, boolean isDraw, BS bsSelected, javajs.util.OC out, LabelToken[] tokens, javajs.util.SB pdbCONECT, BS bsWritten)
-
calculateStruts
private static javajs.util.Lst<Atom[]> calculateStruts(ModelSet modelSet, BS bs1, BS bs2, javajs.util.Lst<Atom> vCA, float thresh, int delta, boolean allowMultiple)
Algorithm of George Phillips phillips@biochem.wisc.edu originally a contribution to pyMol as struts.py; adapted here by Bob Hanson for Jmol 1/2010 Return a vector of support posts for rapid prototyping models along the lines of George Phillips for Pymol except on actual molecular segments (biopolymers), not PDB chains (which may or may not be continuous). Like George, we go from thresh-4 to thresh in units of 1 Angstrom, but we do not require this threshold to be an integer. In addition, we prevent double-creation of struts by tracking where struts are, and we do not look for any addtional end struts if there is a strut already to an atom at a particular biopolymer end. The three parameters are: set strutDefaultRadius 0.3 set strutSpacingMinimum 6 set strutLengthMaximum 7.0 Struts will be introduced by: calculate struts {atom set A} {atom set B} where the two atom sets are optional and default to the currently selected set. They can be manipulated using the STRUTS command much like any "bond" struts 0.3 color struts opaque pink connect {atomno=3} {atomno=4} strut struts only command- Parameters:
modelSet-bs1-bs2-vCA-thresh-delta-allowMultiple-- Returns:
- vector of pairs of atoms
-
strutPoint
private static int strutPoint(int i, int j, int n)
-
setStrut
private static void setStrut(int i, int j, int n, javajs.util.Lst<Atom> vCA, BS bs1, BS bs2, javajs.util.Lst<Atom[]> vStruts, BS bsStruts, BS bsNotAvailable, BS bsNearbyResidues, int delta)
-
mutateAtom
private static boolean mutateAtom(Viewer vwr, int iatom, java.lang.String fileName)
-
replaceMutatedMonomer
private static void replaceMutatedMonomer(Viewer vwr, AminoMonomer res0, AminoMonomer res1)
-
getMutationBackbone
private static Atom[] getMutationBackbone(AminoMonomer res1, Atom[] backbone)
- Parameters:
res1-backbone-- Returns:
- [C O CA N H]
-
getFullPDBHeader
java.lang.String getFullPDBHeader(java.util.Map<java.lang.String,java.lang.Object> auxiliaryInfo)
-
getAminoAcidValenceAndCharge
boolean getAminoAcidValenceAndCharge(java.lang.String res, java.lang.String name, int[] ret)returns an array if we have special hybridization or charge- Parameters:
res-name-ret- [0] (target valence) may be reduced by one for sp2 for C or O only [1] will be set to 1 if positive (lysine or terminal N) or -1 if negative (OXT) [2] will be set to 2 if sp2 [3] is supplied covalent bond count- Returns:
- true for special; false if not
-
-