public class AlphaPolymer extends BioPolymer
Modifier and Type | Field and Description |
---|---|
private static byte |
CODE_BETA_SHEET |
private static byte |
CODE_LEFT_HELIX |
private static byte |
CODE_LEFT_TURN |
private static byte |
CODE_NADA |
private static byte |
CODE_RIGHT_HELIX |
private static byte |
CODE_RIGHT_TURN |
private static byte |
TAG_HELIX |
private static byte |
TAG_NADA |
private static byte |
TAG_SHEET |
private static byte |
TAG_TURN |
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(byte type,
java.lang.String structureID,
int serialID,
int strandCount,
char startChainID,
int startSeqcode,
char endChainID,
int endSeqcode) |
protected void |
addSecondaryStructure(byte type,
java.lang.String structureID,
int serialID,
int strandCount,
int indexStart,
int indexEnd) |
private void |
addStructuresFromTags(byte[] tags) |
private float[] |
calculateAnglesInDegrees() |
private byte[] |
calculateCodes(float[] angles) |
private byte[] |
calculateRunsFourOrMore(byte[] codes) |
void |
calculateStructures(boolean alphaOnly)
Uses Levitt & Greer algorithm to calculate protein secondary
structures using only alpha-carbon atoms.
|
java.util.List |
calculateStruts(ModelSet modelSet,
Atom[] atoms,
java.util.BitSet bs1,
java.util.BitSet bs2,
java.util.List 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 void |
checkBetaSheetAlphaHelixOverlap(byte[] codes,
float[] angles) |
private void |
extendRuns(byte[] tags) |
protected javax.vecmath.Point3f |
getControlPoint(int i,
javax.vecmath.Vector3f v) |
void |
getPdbData(Viewer viewer,
char ctype,
char qtype,
int mStep,
int derivType,
boolean isDraw,
java.util.BitSet bsAtoms,
OutputStringBuffer pdbATOM,
java.lang.StringBuffer pdbCONECT,
java.util.BitSet bsSelected,
boolean addHeader,
boolean bothEnds,
java.util.BitSet bsWritten) |
private void |
searchForTurns(byte[] codes,
float[] angles,
byte[] tags) |
private void |
setStrut(int i,
int j,
int n,
java.util.List vCA,
java.util.BitSet bs1,
java.util.BitSet bs2,
java.util.List vStruts,
java.util.BitSet bsStruts,
java.util.BitSet bsNotAvailable,
java.util.BitSet bsNearbyResidues,
int delta) |
private 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
private static final byte CODE_NADA
private static final byte CODE_RIGHT_HELIX
private static final byte CODE_BETA_SHEET
private static final byte CODE_LEFT_HELIX
private static final byte CODE_LEFT_TURN
private static final byte CODE_RIGHT_TURN
private static final byte TAG_NADA
private static final byte TAG_TURN
private static final byte TAG_SHEET
private static final byte TAG_HELIX
AlphaPolymer(Monomer[] monomers)
protected javax.vecmath.Point3f getControlPoint(int i, javax.vecmath.Vector3f v)
getControlPoint
in class BioPolymer
public void getPdbData(Viewer viewer, char ctype, char qtype, int mStep, int derivType, boolean isDraw, java.util.BitSet bsAtoms, OutputStringBuffer pdbATOM, java.lang.StringBuffer pdbCONECT, java.util.BitSet bsSelected, boolean addHeader, boolean bothEnds, java.util.BitSet bsWritten)
getPdbData
in class Polymer
public void addSecondaryStructure(byte type, java.lang.String structureID, int serialID, int strandCount, char startChainID, int startSeqcode, char endChainID, int endSeqcode)
addSecondaryStructure
in class Polymer
protected void addSecondaryStructure(byte type, java.lang.String structureID, int serialID, int strandCount, int indexStart, int indexEnd)
public java.util.List calculateStruts(ModelSet modelSet, Atom[] atoms, java.util.BitSet bs1, java.util.BitSet bs2, java.util.List vCA, float thresh, int delta, boolean allowMultiple)
calculateStruts
in class Polymer
modelSet
- atoms
- bs1
- bs2
- vCA
- thresh
- delta
- allowMultiple
- private int strutPoint(int i, int j, int n)
private void setStrut(int i, int j, int n, java.util.List vCA, java.util.BitSet bs1, java.util.BitSet bs2, java.util.List vStruts, java.util.BitSet bsStruts, java.util.BitSet bsNotAvailable, java.util.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
alphaOnly
- private float[] calculateAnglesInDegrees()
private byte[] calculateCodes(float[] angles)
private void checkBetaSheetAlphaHelixOverlap(byte[] codes, float[] angles)
private byte[] calculateRunsFourOrMore(byte[] codes)
private void extendRuns(byte[] tags)
private void searchForTurns(byte[] codes, float[] angles, byte[] tags)
private void addStructuresFromTags(byte[] tags)