Package org.jmol.modelsetbio
Class AlphaPolymer
- java.lang.Object
-
- org.jmol.modelsetbio.BioPolymer
-
- org.jmol.modelsetbio.AlphaPolymer
-
- All Implemented Interfaces:
Structure
- Direct Known Subclasses:
AminoPolymer
public class AlphaPolymer extends BioPolymer
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static classAlphaPolymer.Code
-
Field Summary
Fields Modifier and Type Field Description private static java.lang.String[]dsspTypesintpt0-
Fields inherited from class org.jmol.modelsetbio.BioPolymer
bioPolymerIndexInModel, bsSelectedMonomers, controlPoints, cyclicFlag, hasStructure, hasWingPoints, haveParameters, invalidControl, leadAtomIndices, leadMidpoints, leadPoints, model, monomerCount, monomers, reversed, sheetSmoothing, twistedSheets, type, TYPE_AMINO, TYPE_CARBOHYDRATE, TYPE_NOBONDING, TYPE_NUCLEIC, wingVectors
-
-
Constructor Summary
Constructors Constructor Description AlphaPolymer(Monomer[] monomers, int pt0)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddStructure(STR type, java.lang.String structureID, int serialID, int strandCount, int startChainID, int startSeqcode, int endChainID, int endSeqcode, int istart, int iend, BS bsAssigned)booleanaddStructureProtected(STR type, java.lang.String structureID, int serialID, int strandCount, int indexStart, int indexEnd)private voidaddStructuresFromTags(STR[] tags)private float[]calculateAnglesInDegrees()private AlphaPolymer.Code[]calculateCodes(float[] angles)private STR[]calculateRunsFourOrMore(AlphaPolymer.Code[] codes)voidcalculateStructures(boolean alphaOnly)Uses Levitt & Greer algorithm to calculate protein secondary structures using only alpha-carbon atoms.private voidcheckBetaSheetAlphaHelixOverlap(AlphaPolymer.Code[] codes, float[] angles)voidclearStructures()private voidextendRuns(STR[] tags)protected javajs.util.P3getControlPoint(int i, javajs.util.V3 v)ProteinStructuregetProteinStructure(int monomerIndex)private voidsearchForTurns(AlphaPolymer.Code[] codes, float[] angles, STR[] tags)intsetStructureBS(int count, int dsspType, STR type, BS bs, boolean doOffset)bits in the bitset determines the type-
Methods inherited from class org.jmol.modelsetbio.BioPolymer
calcEtaThetaAngles, calcParameters, calcPhiPsiAngles, calcRasmolHydrogenBonds, calcSelectedMonomersCount, calculateRamachandranHelixAngle, findNearestAtomIndex, getControlPoints, getIndex, getLeadAtomIndices, getLeadMidPoint, getLeadMidpoints, getLeadPoint, getLeadPoints, getPolymerPointsAndVectors, getPolymerSequenceAtoms, getRange, getRangeGroups, getSelectedMonomerCount, getSequence, getType, getWingPoint, getWingVectors, isCyclic, isMonomerSelected, isNucleic, recalculateLeadMidpointsAndWingVectors, resetHydrogenPoints, set, setAtomBits, setAtomBitsAndClear, setConformation
-
-
-
-
Constructor Detail
-
AlphaPolymer
AlphaPolymer(Monomer[] monomers, int pt0)
-
-
Method Detail
-
getProteinStructure
public ProteinStructure getProteinStructure(int monomerIndex)
- Overrides:
getProteinStructurein classBioPolymer- Returns:
- "HELIX" "TURN" etc
-
getControlPoint
protected javajs.util.P3 getControlPoint(int i, javajs.util.V3 v)- Overrides:
getControlPointin classBioPolymer- Returns:
- the leadPoint unless a protein sheet residue (see AlphaPolymer)
-
addStructure
public void addStructure(STR type, java.lang.String structureID, int serialID, int strandCount, int startChainID, int startSeqcode, int endChainID, int endSeqcode, int istart, int iend, BS bsAssigned)
-
addStructureProtected
public boolean addStructureProtected(STR type, java.lang.String structureID, int serialID, int strandCount, int indexStart, int indexEnd)
-
clearStructures
public void clearStructures()
- Overrides:
clearStructuresin classBioPolymer
-
calculateStructures
public void calculateStructures(boolean alphaOnly)
Uses Levitt & Greer algorithm to calculate protein secondary structures using only alpha-carbon atoms.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
- Parameters:
alphaOnly- caught by AminoPolymer and discarded if desired
-
calculateAnglesInDegrees
private float[] calculateAnglesInDegrees()
-
calculateCodes
private AlphaPolymer.Code[] calculateCodes(float[] angles)
-
checkBetaSheetAlphaHelixOverlap
private void checkBetaSheetAlphaHelixOverlap(AlphaPolymer.Code[] codes, float[] angles)
-
calculateRunsFourOrMore
private STR[] calculateRunsFourOrMore(AlphaPolymer.Code[] codes)
-
extendRuns
private void extendRuns(STR[] tags)
-
searchForTurns
private void searchForTurns(AlphaPolymer.Code[] codes, float[] angles, STR[] tags)
-
addStructuresFromTags
private void addStructuresFromTags(STR[] tags)
-
-