public class AlphaPolymer extends BioPolymer
Modifier and Type | Class and Description |
---|---|
private static class |
AlphaPolymer.Code |
bioPolymerIndexInModel, bsSelectedMonomers, controlPoints, hasWingPoints, haveParameters, invalidControl, leadAtomIndices, leadMidpoints, leadPoints, model, monomerCount, monomers, reversed, sheetSmoothing, twistedSheets, type, TYPE_AMINO, TYPE_CARBOHYDRATE, TYPE_NOBONDING, TYPE_NUCLEIC, wingVectors
Constructor and Description |
---|
AlphaPolymer(Monomer[] monomers) |
Modifier and Type | Method and Description |
---|---|
void |
addStructure(EnumStructure type,
String structureID,
int serialID,
int strandCount,
int startChainID,
int startSeqcode,
int endChainID,
int endSeqcode,
int istart,
int iend,
BS bsAssigned) |
void |
addStructureProtected(EnumStructure type,
String structureID,
int serialID,
int strandCount,
int indexStart,
int indexEnd) |
private void |
addStructuresFromTags(EnumStructure[] tags) |
private float[] |
calculateAnglesInDegrees() |
private AlphaPolymer.Code[] |
calculateCodes(float[] angles) |
private EnumStructure[] |
calculateRunsFourOrMore(AlphaPolymer.Code[] codes) |
void |
calculateStructures(boolean alphaOnly)
Uses Levitt & Greer algorithm to calculate protein secondary
structures using only alpha-carbon atoms.
|
javajs.util.List<Atom[]> |
calculateStruts(ModelSet modelSet,
BS bs1,
BS bs2,
javajs.util.List<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).
|
private javajs.util.List<Atom[]> |
calculateStrutsStatic(ModelSet modelSet,
BS bs1,
BS bs2,
javajs.util.List<Atom> vCA,
float thresh,
int delta,
boolean allowMultiple) |
private void |
checkBetaSheetAlphaHelixOverlap(AlphaPolymer.Code[] codes,
float[] angles) |
private void |
extendRuns(EnumStructure[] tags) |
protected javajs.util.P3 |
getControlPoint(int i,
javajs.util.V3 v) |
void |
getPdbData(Viewer viewer,
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) |
private void |
searchForTurns(AlphaPolymer.Code[] codes,
float[] angles,
EnumStructure[] tags) |
private static void |
setStrut(int i,
int j,
int n,
javajs.util.List<Atom> vCA,
BS bs1,
BS bs2,
javajs.util.List<Atom[]> vStruts,
BS bsStruts,
BS bsNotAvailable,
BS bsNearbyResidues,
int delta) |
private static int |
strutPoint(int i,
int j,
int n) |
calcEtaThetaAngles, calcParameters, calcPhiPsiAngles, calcRasmolHydrogenBonds, calcSelectedMonomersCount, calculateRamachandranHelixAngle, clearStructures, findNearestAtomIndex, getConformation, getControlPoints, getGroups, getIndex, getLeadAtomIndices, getLeadMidPoint, getLeadMidpoints, getLeadPoint, getLeadPoints, getPdbData, getPolymerInfo, getPolymerPointsAndVectors, getPolymerSequenceAtoms, getProteinStructure, getRange, getRangeGroups, getSelectedMonomerCount, getSequence, getType, getWingPoint, getWingVectors, isDna, isMonomerSelected, isRna, recalculateLeadMidpointsAndWingVectors, removeProteinStructure, resetHydrogenPoints, setConformation, setStructureList
AlphaPolymer(Monomer[] monomers)
protected javajs.util.P3 getControlPoint(int i, javajs.util.V3 v)
getControlPoint
in class BioPolymer
public void getPdbData(Viewer viewer, 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)
getPdbData
in class BioPolymer
public void addStructure(EnumStructure type, String structureID, int serialID, int strandCount, int startChainID, int startSeqcode, int endChainID, int endSeqcode, int istart, int iend, BS bsAssigned)
public void addStructureProtected(EnumStructure type, String structureID, int serialID, int strandCount, int indexStart, int indexEnd)
public javajs.util.List<Atom[]> calculateStruts(ModelSet modelSet, BS bs1, BS bs2, javajs.util.List<Atom> vCA, float thresh, int delta, boolean allowMultiple)
calculateStruts
in class BioPolymer
modelSet
- bs1
- bs2
- vCA
- thresh
- delta
- allowMultiple
- private javajs.util.List<Atom[]> calculateStrutsStatic(ModelSet modelSet, BS bs1, BS bs2, javajs.util.List<Atom> vCA, float thresh, int delta, boolean allowMultiple)
private static int strutPoint(int i, int j, int n)
private static void setStrut(int i, int j, int n, javajs.util.List<Atom> vCA, BS bs1, BS bs2, javajs.util.List<Atom[]> vStruts, BS bsStruts, BS bsNotAvailable, BS bsNearbyResidues, int delta)
public void calculateStructures(boolean alphaOnly)
Levitt and Greer
Automatic Identification of Secondary Structure in Globular Proteins
J.Mol.Biol.(1977) 114, 181-293
http://csb.stanford.edu/levitt/Levitt_JMB77_Secondary_structure.pdf
alphaOnly
- caught by AminoPolymer and discarded if desiredprivate float[] calculateAnglesInDegrees()
private AlphaPolymer.Code[] calculateCodes(float[] angles)
private void checkBetaSheetAlphaHelixOverlap(AlphaPolymer.Code[] codes, float[] angles)
private EnumStructure[] calculateRunsFourOrMore(AlphaPolymer.Code[] codes)
private void extendRuns(EnumStructure[] tags)
private void searchForTurns(AlphaPolymer.Code[] codes, float[] angles, EnumStructure[] tags)
private void addStructuresFromTags(EnumStructure[] tags)