Class Monomer

  • All Implemented Interfaces:
    Structure
    Direct Known Subclasses:
    AlphaMonomer, CarbohydrateMonomer, PhosphorusMonomer

    public abstract class Monomer
    extends Group
    A class to maintain information about biomolecule groups that are (potentially) part of biopolymers -- peptides, nucleic acid strands, or complex carbohydrates. Note that it is possible that a monomer is created but is not part of a BioPolymer.
    • Field Detail

      • offsets

        protected byte[] offsets
      • monomerIndex

        int monomerIndex
      • phi

        private float phi
      • psi

        private float psi
      • omega

        private float omega
      • straightness

        private float straightness
      • mu

        private float mu
      • theta

        private float theta
    • Constructor Detail

      • Monomer

        public Monomer()
    • Method Detail

      • have

        protected static boolean have​(byte[] offsets,
                                      byte n)
      • set2

        protected Monomer set2​(Chain chain,
                               java.lang.String group3,
                               int seqcode,
                               int firstAtomIndex,
                               int lastAtomIndex,
                               byte[] interestingAtomOffsets)
      • setLeadAtomIndex

        protected void setLeadAtomIndex()
      • setBioPolymer

        void setBioPolymer​(BioPolymer polymer,
                           int index)
      • getAtomIndex

        public int getAtomIndex​(java.lang.String name,
                                int offset)
        Overrides:
        getAtomIndex in class Group
        Returns:
        index of atom based on offset
      • scanForOffsets

        protected static byte[] scanForOffsets​(int firstAtomIndex,
                                               int[] specialAtomIndexes,
                                               byte[] interestingAtomIDs)
      • isHelix

        public boolean isHelix()
      • isSheet

        public boolean isSheet()
      • setStrucNo

        public void setStrucNo​(int id)
        Overrides:
        setStrucNo in class Group
      • getAtomFromOffsetIndex

        protected final Atom getAtomFromOffsetIndex​(int offsetIndex)
      • getSpecialAtom

        protected final Atom getSpecialAtom​(byte[] interestingIDs,
                                            byte specialAtomID)
      • getSpecialAtomPoint

        protected final javajs.util.P3 getSpecialAtomPoint​(byte[] interestingIDs,
                                                           byte specialAtomID)
      • isLeadAtom

        public boolean isLeadAtom​(int atomIndex)
        Overrides:
        isLeadAtom in class Group
        Returns:
        T/F
      • getWingAtom

        public final Atom getWingAtom()
      • getInitiatorAtom

        Atom getInitiatorAtom()
      • getTerminatorAtom

        Atom getTerminatorAtom()
      • isConnectedAfter

        abstract boolean isConnectedAfter​(Monomer possiblyPreviousMonomer)
      • findNearestAtomIndex

        void findNearestAtomIndex​(int x,
                                  int y,
                                  Atom[] closest,
                                  short madBegin,
                                  short madEnd)
        Selects LeadAtom when this Monomer is clicked iff it is closer to the user.
        Parameters:
        x -
        y -
        closest -
        madBegin -
        madEnd -
      • getMyInfo

        public java.util.Map<java.lang.String,​java.lang.Object> getMyInfo​(javajs.util.P3 ptTemp)
      • getStructureId

        public java.lang.String getStructureId()
        Overrides:
        getStructureId in class Group
      • updateOffsetsForAlternativeLocations

        final void updateOffsetsForAlternativeLocations​(Atom[] atoms,
                                                        BS bsSelected)
      • getMonomerSequenceAtoms

        final void getMonomerSequenceAtoms​(BS bsInclude,
                                           BS bsResult)
      • checkOptional

        protected static final boolean checkOptional​(byte[] offsets,
                                                     byte atom,
                                                     int firstAtomIndex,
                                                     int index)
      • getQuaternionFrameCenter

        javajs.util.P3 getQuaternionFrameCenter​(char qtype)
        Parameters:
        qtype -
        Returns:
        center
      • getHelixData2

        protected java.lang.Object getHelixData2​(int tokType,
                                                 char qType,
                                                 int mStep)
      • getUniqueID

        public java.lang.String getUniqueID()
      • getCrossLinkVector

        public boolean getCrossLinkVector​(javajs.util.Lst<java.lang.Integer> vReturn,
                                          boolean crosslinkCovalent,
                                          boolean crosslinkHBond)
        Overrides:
        getCrossLinkVector in class Group
        Returns:
        T/F
      • getCrossLinkGroup

        protected boolean getCrossLinkGroup​(int i,
                                            javajs.util.Lst<java.lang.Integer> vReturn,
                                            Group group,
                                            boolean crosslinkCovalent,
                                            boolean crosslinkHBond,
                                            boolean isNotCheck)
        Parameters:
        i -
        vReturn - null implies just checking for a specific group
        group - specific group to check or null to indicate just PREVIOUS group (carbohydrates)
        crosslinkCovalent - (S-S)
        crosslinkHBond - (hbond)
        isNotCheck - TODO
        Returns:
        true if there is a cross-link of the allowed type
      • setGroupParameter

        void setGroupParameter​(int tok,
                               float f)
      • getGroupParameter

        public float getGroupParameter​(int tok)
        Description copied from class: Group
        Monomers only
        Overrides:
        getGroupParameter in class Group
        Returns:
        NaN
      • getGroup1

        public char getGroup1()
        Overrides:
        getGroup1 in class Group
      • getGroup1b

        protected char getGroup1b()
      • setGroupID

        public void setGroupID​(java.lang.String group3)
        Overrides:
        setGroupID in class Group