org.jmol.modelsetbio
public class AlphaPolymer extends BioPolymer
Modifier and Type | Class and Description |
---|---|
private static class |
AlphaPolymer.Code |
bsSelectedMonomers, hasWingPoints, haveParameters, invalidControl, monomers, sheetSmoothing
bioPolymerIndexInModel, controlPoints, leadAtomIndices, leadMidpoints, leadPoints, model, monomerCount, type, TYPE_AMINO, TYPE_CARBOHYDRATE, TYPE_NOBONDING, TYPE_NUCLEIC, wingVectors
Constructor and Description |
---|
AlphaPolymer(Monomer[] monomers) |
Modifier and Type | Method and Description |
---|---|
void |
addSecondaryStructure(EnumStructure type,
String structureID,
int serialID,
int strandCount,
char startChainID,
int startSeqcode,
char endChainID,
int endSeqcode) |
protected void |
addSecondaryStructure(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.
|
List<Atom[]> |
calculateStruts(ModelSet modelSet,
BitSet bs1,
BitSet bs2,
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 List<Atom[]> |
calculateStrutsStatic(ModelSet modelSet,
BitSet bs1,
BitSet bs2,
List<Atom> vCA,
float thresh,
int delta,
boolean allowMultiple) |
private void |
checkBetaSheetAlphaHelixOverlap(AlphaPolymer.Code[] codes,
float[] angles) |
private void |
extendRuns(EnumStructure[] tags) |
protected Point3f |
getControlPoint(int i,
Vector3f v) |
void |
getPdbData(Viewer viewer,
char ctype,
char qtype,
int mStep,
int derivType,
BitSet bsAtoms,
BitSet bsSelected,
boolean bothEnds,
boolean isDraw,
boolean addHeader,
LabelToken[] tokens,
OutputStringBuffer pdbATOM,
StringBuffer pdbCONECT,
BitSet bsWritten) |
private void |
searchForTurns(AlphaPolymer.Code[] codes,
float[] angles,
EnumStructure[] tags) |
private static void |
setStrut(int i,
int j,
int n,
List<Atom> vCA,
BitSet bs1,
BitSet bs2,
List<Atom[]> vStruts,
BitSet bsStruts,
BitSet bsNotAvailable,
BitSet bsNearbyResidues,
int delta) |
private static int |
strutPoint(int i,
int j,
int n) |
allocateBioPolymer, calcEtaThetaAngles, calcParameters, calcPhiPsiAngles, calcSelectedMonomersCount, calculateRamachandranHelixAngle, calculateStructures, clearStructures, findNearestAtomIndex, getConformation, getControlPoints, getControlPoints, getGroups, getIndex, getInitiatorPoint, getLeadAtomIndices, getLeadMidPoint, getLeadMidpoints, getLeadPoint, getLeadPoint, getLeadPoints, getPdbData, getPolymerInfo, getPolymerPointsAndVectors, getPolymerSequenceAtoms, getProteinStructure, getRange, getRangeGroups, getSelectedMonomerCount, getSequence, getTerminatorPoint, getWingPoint, getWingVectors, isDna, isMonomerSelected, isRna, recalculateLeadMidpointsAndWingVectors, removeProteinStructure, resetHydrogenPoints, setConformation
calcRasmolHydrogenBonds, getType, setStructureList
AlphaPolymer(Monomer[] monomers)
protected Point3f getControlPoint(int i, Vector3f v)
getControlPoint
in class BioPolymer
public void getPdbData(Viewer viewer, char ctype, char qtype, int mStep, int derivType, BitSet bsAtoms, BitSet bsSelected, boolean bothEnds, boolean isDraw, boolean addHeader, LabelToken[] tokens, OutputStringBuffer pdbATOM, StringBuffer pdbCONECT, BitSet bsWritten)
getPdbData
in class Polymer
public void addSecondaryStructure(EnumStructure type, String structureID, int serialID, int strandCount, char startChainID, int startSeqcode, char endChainID, int endSeqcode)
addSecondaryStructure
in class Polymer
protected void addSecondaryStructure(EnumStructure type, String structureID, int serialID, int strandCount, int indexStart, int indexEnd)
public List<Atom[]> calculateStruts(ModelSet modelSet, BitSet bs1, BitSet bs2, List<Atom> vCA, float thresh, int delta, boolean allowMultiple)
calculateStruts
in class Polymer
modelSet
- bs1
- bs2
- vCA
- thresh
- delta
- allowMultiple
- private List<Atom[]> calculateStrutsStatic(ModelSet modelSet, BitSet bs1, BitSet bs2, 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, List<Atom> vCA, BitSet bs1, BitSet bs2, List<Atom[]> vStruts, BitSet bsStruts, BitSet bsNotAvailable, BitSet 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
calculateStructures
in class Polymer
private 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)