Package org.jmol.modelsetbio
Class AminoPolymer
java.lang.Object
org.jmol.modelsetbio.BioPolymer
org.jmol.modelsetbio.AlphaPolymer
org.jmol.modelsetbio.AminoPolymer
- All Implemented Interfaces:
Structure
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final floatprivate static final floatprivate static final floatFields inherited from class org.jmol.modelsetbio.AlphaPolymer
pt0Fields 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 -
Method Summary
Modifier and TypeMethodDescriptionprivate voidaddResidueHydrogenBond(Atom nitrogen, Atom oxygen, int indexAminoGroup, int indexCarbonylGroup, float energy, javajs.util.Lst<Bond> vHBonds) private intcalcHbondEnergy(javajs.util.P3 nitrogenPoint, javajs.util.P3 hydrogenPoint, AminoMonomer target, boolean checkDistances) based on RasMol 2.7.2.1.1 model checkDistances: When we are seriously looking for H bonds, we want to also check that distCN > distCH and that the OH distance is less than 3 Angstroms.protected booleanprivate voidcalcPhiPsiAngles2(AminoMonomer residue1, AminoMonomer residue2) voidcalcRasmolHydrogenBonds(BioPolymer polymer, javajs.util.BS bsA, javajs.util.BS bsB, javajs.util.Lst<Bond> vHBonds, int nMaxPerResidue, int[][][] min, boolean checkDistances, boolean dsspIgnoreHydrogens) protected floatcalculateRamachandranHelixAngle(int m, char qtype) voidcalculateStructures(boolean alphaOnly) Uses Levitt & Greer algorithm to calculate protein secondary structures using only alpha-carbon atoms.private static booleancheckPhiPsi(float[] list, float psi, float phi) private voidcheckRasmolHydrogenBond(AminoMonomer source, BioPolymer polymer, int indexDonor, javajs.util.P3 hydrogenPoint, javajs.util.BS bsB, javajs.util.Lst<Bond> vHBonds, int[][] min, boolean checkDistances) private booleanisHelix(float psi, float phi) private booleanisSheet(float psi, float phi) private booleanisTurn(float psi, float phi) protected voidvoidsetStructureList(Map<STR, float[]> structureList) Methods inherited from class org.jmol.modelsetbio.AlphaPolymer
addStructure, addStructureProtected, clearStructures, getControlPoint, getProteinStructure, setStructureBSMethods inherited from class org.jmol.modelsetbio.BioPolymer
calcEtaThetaAngles, calcParameters, calcSelectedMonomersCount, findNearestAtomIndex, getControlPoints, getIndex, getLeadAtomIndices, getLeadMidPoint, getLeadMidpoints, getLeadPoint, getLeadPoints, getPolymerPointsAndVectors, getPolymerSequenceAtoms, getRange, getRangeGroups, getSelectedMonomerCount, getSequence, getType, getWingPoint, getWingVectors, isCyclic, isMonomerSelected, isNucleic, recalculateLeadMidpointsAndWingVectors, set, setAtomBits, setAtomBitsAndClear, setConformation, toString
-
Field Details
-
maxHbondAlphaDistance
private static final float maxHbondAlphaDistance- See Also:
-
maxHbondAlphaDistance2
private static final float maxHbondAlphaDistance2- See Also:
-
minimumHbondDistance2
private static final float minimumHbondDistance2- See Also:
-
structureList
-
-
Constructor Details
-
AminoPolymer
AminoPolymer(Monomer[] monomers, int pt0)
-
-
Method Details
-
resetHydrogenPoints
protected void resetHydrogenPoints()- Overrides:
resetHydrogenPointsin classBioPolymer
-
calcPhiPsiAngles
protected boolean calcPhiPsiAngles()- Overrides:
calcPhiPsiAnglesin classBioPolymer
-
calcPhiPsiAngles2
-
calculateRamachandranHelixAngle
protected float calculateRamachandranHelixAngle(int m, char qtype) - Overrides:
calculateRamachandranHelixAnglein classBioPolymer- Returns:
- calculated value
-
calcRasmolHydrogenBonds
public void calcRasmolHydrogenBonds(BioPolymer polymer, javajs.util.BS bsA, javajs.util.BS bsB, javajs.util.Lst<Bond> vHBonds, int nMaxPerResidue, int[][][] min, boolean checkDistances, boolean dsspIgnoreHydrogens) - Overrides:
calcRasmolHydrogenBondsin classBioPolymer
-
checkRasmolHydrogenBond
private void checkRasmolHydrogenBond(AminoMonomer source, BioPolymer polymer, int indexDonor, javajs.util.P3 hydrogenPoint, javajs.util.BS bsB, javajs.util.Lst<Bond> vHBonds, int[][] min, boolean checkDistances) -
calcHbondEnergy
private int calcHbondEnergy(javajs.util.P3 nitrogenPoint, javajs.util.P3 hydrogenPoint, AminoMonomer target, boolean checkDistances) based on RasMol 2.7.2.1.1 model checkDistances: When we are seriously looking for H bonds, we want to also check that distCN > distCH and that the OH distance is less than 3 Angstroms. Otherwise that's just too strange a hydrogen bond. (We get hydrogen bonds from i to i+2, for example) This check is skipped for an actual DSSP calc., where we want the original definition and are not actually creating hydrogen bonds H .......... O | | | | N C- Parameters:
nitrogenPoint-hydrogenPoint-target-checkDistances-- Returns:
- energy in cal/mol or 0 (none)
-
addResidueHydrogenBond
-
calculateStructures
public void calculateStructures(boolean alphaOnly) Description copied from class:AlphaPolymerUses 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
- Overrides:
calculateStructuresin classAlphaPolymer- Parameters:
alphaOnly- caught by AminoPolymer and discarded if desired
-
isTurn
private boolean isTurn(float psi, float phi) - Parameters:
psi- N-C-CA-N torsion for NEXT groupphi- C-CA-N-C torsion for THIS group- Returns:
- whether this corresponds to a helix
-
isSheet
private boolean isSheet(float psi, float phi) -
isHelix
private boolean isHelix(float psi, float phi) -
checkPhiPsi
private static boolean checkPhiPsi(float[] list, float psi, float phi) -
setStructureList
- Parameters:
structureList- protein only -- helix, sheet, turn definitions
-