RdcPanda
Class Pdb

java.lang.Object
  extended by RdcPanda.Pdb

public class Pdb
extends java.lang.Object

This class provides data structures and functions for processing and generating PDB files and extracting backbone angles etc. Written by Lincong Wang (2001-2005) and Jianyang (Michael) Zeng (2005-2009).


Nested Class Summary
static class Pdb.PdbComparator
          The Class PdbComparator.
 
Constructor Summary
Pdb()
          Instantiates a new pdb.
Pdb(int No)
          Instantiates a new pdb.
Pdb(int No, java.lang.String res, java.util.Vector aa)
          Instantiates a new pdb.
Pdb(int No, java.lang.String res, java.util.Vector aa, double ra)
          Instantiates a new pdb.
Pdb(Pdb pp)
          Instantiates a new pdb.
 
Method Summary
 java.util.Vector AlaninizeStructure(java.util.Vector vecPdb, boolean[] resIndex, java.lang.String rotSrc)
          replace all non-NOE residues in pdb with alaline.
 java.util.Vector AlaninizeStructureResName(java.util.Vector vecPdb, java.lang.String rotSrc)
          replace all non-NOE residues in pdb with alaline, according to the residue names.
 java.util.Vector AllRotamersStructure(java.util.Vector pdbBBVec, java.lang.String rotSrc)
          put all rotamers at each redidue.
 java.util.Vector AssembleTwoSSEs(java.util.Vector vecSSEPdb1, java.util.Vector vecSSEPdb2, int brkResNo, java.util.Vector<Dipolar> rdcVecNh, java.util.Vector<Dipolar> rdcVecCh, double Syy, double Szz)
          assemble two sses with some phi psi deviations in the break point, the assembled structure has minimum rdc rmsd and vdw energy.
 java.util.Vector CombinRotBB(java.util.Vector rotamVec, java.util.Vector pdbVecN, int resNo)
          plug rotamer into backbone.
 java.util.Vector compDistPatternForRotam_old(java.util.Vector rotamVec, int resNo, java.util.Vector pdbVec, double DistBound)
          Compute all distance patterns for a rotamer, distances are from each proton in the rotamer to backbone protons including HA,HN, HB.
 java.util.Vector compDistPatternForRotam(java.util.Vector rotamVec, int resNo, java.util.Vector pdbVec, double DistBound)
          Compute all distance patterns for a rotamer, distances are from each proton in the rotamer to backbone protons including HA,HN, HB.
 java.util.Vector compDistPatternForSSEPacking(java.util.Vector pdbVecA, java.util.Vector pdbVecB, double DistBound)
          Compute all distance patterns for two secondary structure elements, whose coordinates are fixed.
 java.util.Vector compDistPatternFromPairRotams(int resNoA, int resNoB, Pdb pdbA, Pdb pdbB, double DistBound)
          Compute all distance patterns for a pair of rotamers, distances are from each proton in the rotamer to backbone protons including HA,HN, HB rotamers are in the same coordinate system,includes both from A->B and from B->A.
 double compOverAllRmsdBetweenRotXray(java.util.Vector pdbBBVec, java.util.Vector asgVec, java.lang.String rotSrc, java.util.Vector hnNoeVec, java.util.Vector cNoeVec, java.util.Vector pdbVecXray, double distBound, int pickNum)
          Compute a structure, given the backbone and rotamers at all residue positions.
 double compResRmsd(Pdb pdb1, Pdb pdb2)
          Compute rmsd between two rotamers only for non-proton atoms, assume they are in the same coordinate system.
 double compResRmsdPairWise(Pdb pdb1, Pdb pdb2)
          Compute rmsd between two rotamers (for all atoms), assume they are in the same coordinate system.
 double compRmsdBetwTwoPdbs(java.util.Vector vecPdb1, java.util.Vector vecPdb2, boolean isHeavy)
          Compute rmsd between two pdb structures with the same length and in the same coordinate system.
 boolean compRmsdRotXrayBB(java.util.Vector vecPdbXray, java.util.Vector vecRotam, int resNo, double[] rmsd, boolean isHeavy)
          Compute rmsd between a rotamer and corresponding side-chain in x-ray structure.
 double dihedralAngle(double[] n2CO1, double[] n2CA, double[] ca2CO)
          Method for computing dihedral angles between two planes defined by three vectors.
 double[] dirCos(double[] vec)
          cal the directioal cosines of the vector vec.
 void doCalNOEScores(java.lang.String src, java.lang.String strOut, java.lang.String strInput)
          * compute the NOE satisfaction scores for all structure in an ensemble.
 void doReadPdbFragments(java.lang.String src, java.lang.String strOut, java.lang.String strInput)
          HANA algorithm for the NOE assignment and output the NOE table.
 java.util.Vector extractBackbone(java.util.Vector pdbVec)
          Extract backbone atoms from a PDB file.
 java.util.Vector extractFragment(java.util.Vector pdbVec, int residueFirst, int residueLast)
          Extract backbone atoms from a PDB file.
 java.util.Vector extractFragment(java.util.Vector pdbVec, int residueFirst, int residueLast, double[] firstCoords, double[] lastCoords)
          Extract backbone atoms from a PDB file.
 java.util.Vector getAtomVec()
          Gets the atom vec.
 java.lang.String getResidue()
          Gets the residue.
 int getResidueNo()
          Gets the residue no.
 double getRotamerRatio()
          Gets the rotamer ratio.
 void h1Distance(java.lang.String pdbLists, java.lang.String aaType, java.lang.String nucType)
          A method to compute all the angles from ultrahigh resolution PDBs.
 double interAngle(double[] v1, double[] v2)
          calculate the angles between two vectors v1 and v2 The returned angle is the [0,Pi] region.
 double[] internuclearVec(double[] n1, double[] n2)
          Compute the internuclear vector between two atoms.
 boolean isInAtomVec(java.util.Vector vecAtom, java.lang.String atomName)
          Checks if is in atom vec.
 boolean isInPdbClusters(java.util.Vector vecEnsemblePdb, java.util.Vector vecPdb, double rmsThreshold)
          tell whether a structure is within the clusters of previous ensemble.
 boolean isInPointClusters(java.util.Vector vecPoints, Cartesian cc, double rmsThreshold)
          tell whether a point is within the clusters of previous ensemble.
 double length(double[] v1)
          Length.
 java.util.Vector LoopComputFromNOEPatterns(double csErrH, double csErrN, double csErrCA, java.util.Vector seqVec, java.util.Vector vecPdbBbSSE, java.util.Vector asgVec, java.lang.String rotSrc, java.util.Vector NoesyVec, double distBound, int firstResNo, int secondResNo)
          Compute a structure, given the backbone and rotamers at all residue positions.
static void main(java.lang.String[] argv)
          The main method.
static void main0(java.lang.String[] argv)
          Main0.
static void main00(java.lang.String[] argv)
          Main00.
static void main1(java.lang.String[] argv)
          Main1.
 boolean measureDis(java.util.Vector pdbVec, int noA, java.lang.String residueA, java.lang.String nucleusA, int noB, java.lang.String residueB, java.lang.String nucleusB, double[] distance)
          Compute the NOE distance between two nuclei (A, B) in a structure specified by pdbVec There are two numbers: 15 Degree and 45 Degree for correct the most possible orientation changing.
 boolean measureDisFromRotam(java.util.Vector pdbVec, java.util.Vector rotamVecA, java.util.Vector rotamVecB, int noA, java.lang.String residueA, java.lang.String nucleusA, int noB, java.lang.String residueB, java.lang.String nucleusB, double[] distance)
          Compute the NOE distance between two nuclei (A, B) in a structure specified by pdbVec There are two numbers: 15 Degree and 45 Degree for correct the most possible orientation changing.
 boolean measureDisXray(java.util.Vector pdbVec, int noA, java.lang.String residueA, java.lang.String nucleusA, int noB, java.lang.String residueB, java.lang.String nucleusB, double[] distance)
          Compute the NOE distance between two nuclei (A, B) in a structure specified by pdbVec.
 boolean measurePackDisAllRotamers(java.util.Vector pdbVecA, java.util.Vector pdbVecB, int noA, java.lang.String nucleusA, int noB, java.lang.String nucleusB, double lower, double upper, double[] disRMS, double[] distance)
          measure the packing distances between two sses all rotamers are put into the sse backbones The number themselves are set rather arbitrariry.
 java.util.Vector nameConvert(java.util.Vector pdbVec)
          Lincong's original function: Convert the old PDB namaclature to new one bugs fixed...
 java.util.Vector nameConvert22(java.util.Vector pdbVec)
          Convert the old PDB namaclature to new one.
 java.util.Vector nameConvert2PDBNew(java.util.Vector pdbVec)
          Convert the old PDB namaclature to new one zeng changed the code,.
 java.util.Vector nameConvert4SmallRotLibCS(java.util.Vector pdbVec)
          Convert the old PDB namaclature to new one zeng changed the code, such that all methel group protons become one proxy proton.
 java.util.Vector nameConvert4SmallRotLibStr(java.util.Vector pdbVec)
          Convert the old PDB namaclature to new one for computing the structure rmsd.
 java.util.Vector nameConvertCS(java.util.Vector pdbVec)
          Convert the old PDB namaclature to new one zeng changed the code, such that all methel group protons become one proxy proton.
 java.util.Vector nameConvertOrder(java.util.Vector pdbVec)
          In this function, only the order of atom name is changed, and H-> HN eg 2HB=>HB2, 3HB=>HB3.
 java.util.Vector nameConvertStr(java.util.Vector pdbVec)
          Convert the old PDB namaclature to new one zeng changed the code, such that all methel group protons become one proxy proton.
 java.lang.String NameFromBMRBToPDB(java.lang.String resName, java.lang.String atomName)
          Convert the BMRB-NEW namaclature to PDB-NEW namaclature return new atom name.
 java.lang.String NameFromPdbToBMRB(java.lang.String resid, java.lang.String atomNameInput)
          Convert the PDB-NEW namaclature to BMRB-NEW namaclature: e.g.
 java.lang.String NameFromPDBToPDB(java.lang.String resName, java.lang.String atomName)
          Convert the PDB-NEW namaclature to PDB-NEW namaclature change the methel groups return new atom name.
 java.util.Vector newPdb(java.util.Vector pdbVec, Matrix R)
          compute new PDB coordinates after the rotation by matrix R.
 java.util.Vector newPdbByTranslation(java.util.Vector pdbVec, double[] vT)
          compute new PDB coordinates after the translation.
 java.util.Vector OutputBackbone(java.util.Vector vecPdb)
          output the backbone of a pdb structure.
 java.util.Vector OutputBackboneNoCB(java.util.Vector vecPdb)
          output the backbone of a pdb structure.
 double PhiPsiCalPDB(double[] n2CO1, double[] n2CA, double[] ca2CO)
          Compute Phi and Psi directly from three backbone vectors (not NH vector).
 java.util.Vector PhiPsiTotalPdb(java.util.Vector pdbVec)
          Compute all the backbone Phi and Psi angles from PDB from the backbone backbone bond vectors between heavy atoms.
 void print(java.util.Vector pdbVec)
          A method for printing the coordinates in PDB format the magic Number comes from PDB file format.
 void printArray(double[] n1)
          Prints the array.
 void printToFile(java.util.Vector pdbVec, java.lang.String fileName, java.io.PrintWriter out)
          A method for printing the coordinates in PDB format the magic Number comes from PDB file format.
 java.util.Vector radiiFromCb(java.util.Vector pdbVec, java.lang.String residue, java.lang.String hAtom)
          We can also derived the minimum and maximam using analytic expression but using rotamer as appeared in PDB may have certain advantage.
 java.util.Vector radiiFromNH(java.util.Vector pdbVec, java.lang.String residue, java.lang.String hAtom)
          Compute the distance from the nucleu NH to other nucleu.
 java.util.Vector readPdb(java.lang.String pdbFile)
          Reading PDB file in PDB Format!!! the magic number for substring is based on format for pdb file.
 java.util.Vector readPdbAndNoeHarmFromEnsemble(java.lang.String pdbFile)
          Reading PDB file and other parameters in PDB Format from ensemble!!!.
 java.util.Vector readPdbAndNoeRmsdFromEnsemble(java.lang.String pdbFile)
          Reading PDB file and other parameters in PDB Format from ensemble!!!.
 java.util.Vector readPdbAndParametersFromEnsemble(java.lang.String pdbFile)
          Reading PDB file and other parameters in PDB Format from ensemble!!!.
 java.util.Vector readPdbAndParaXplor(java.lang.String pdbFile, double[] vdwSc, double[] noeSc)
          Read pdb and para xplor.
 void readPdbEnergy(java.lang.String pdbFile, double[] scEnerg, int rowPos, int colPos)
          Read pdb energy.
 java.util.Vector readPdbFromEnsemble(java.lang.String pdbFile)
          Reading PDB file in PDB Format from ensemble!!! the magic number for substring is based on format for pdb file.
 java.util.Vector readRotamerPdb(java.lang.String pdbFile)
          Reading Rotamer file in PDB Format!!!.
 java.util.Vector RefineRotamerSelection(java.util.Vector vecGrowPdb, java.util.Vector vecRot4AllResidues, int[] rotID)
          refine the rotamer selection until no steric clash happens.
 java.util.Vector RefineRotamerSelectionRandom(java.util.Vector vecGrowPdb, java.util.Vector vecRot4AllResidues, int[] rotID)
          refine the rotamer selection until no steric clash happens, using Gaussian random sampling at each rotamer position.
 boolean RefineRotamerSelectionRecur(java.util.Vector vecGrowPdb, java.util.Vector vecRot4AllResidues, int resInd, java.util.Vector vecSavePdb, boolean[] resNoeIndex)
          refine the rotamer selection until no steric clash happens, by enumerating all possible rotamers in the order of NOE matching scores.
 java.util.Vector RefineRotamerSelectionSearch(java.util.Vector vecGrowPdb, int resNo, java.lang.String rotSrc, int depth)
          wait...
 java.lang.String residueNameFromSeq(java.util.Vector seqVec, int resNo)
          get the residue name from protein sequence.
 java.util.Vector residueNameUpdate_from_structure(java.util.Vector pdbVec1, java.util.Vector pdbVec2)
          A temporary method for converting the residue name in the RDC-derived PDB file, which are "ALA", to real Residue name, also to build the conformation of proline and glycine residue.
 java.util.Vector residueNameUpdate(java.util.Vector seqVec, java.util.Vector pdbVec2)
          work for bb only? A temporary method for converting the residue name in the RDC-derived PDB file, which are "ALA", to real Residue name, also to build the conformation of proline and glycine residue.
 java.util.Vector residueNameUpdateNoStr(java.util.Vector seqVec, java.util.Vector pdbVec2)
          change residue name according to sequnce, without changing structure.
 java.util.Vector RotamSelectAndStructure(double csErrH, double csErrN, double csErrCA, java.util.Vector pdbBBVec, java.util.Vector asgVec, java.lang.String rotSrc, java.util.Vector NoesyVec, double distBound, int pickNum, double constant)
          Compute a structure, given the backbone and rotamers at all residue positions.
 java.util.Vector RotamSelectAndStructureNoClash(double csErrH, double csErrN, double csErrCA, java.util.Vector pdbBBVec, java.util.Vector asgVec, java.lang.String rotSrc, java.util.Vector NoesyVec, double distBound, int pickNum, boolean[] resIndex)
          Rotam select and structure no clash.
 void setAtomVec(java.util.Vector aVec)
          Sets the atom vec.
 void setResidue(java.lang.String res)
          Sets the residue.
 void setResidueNo(int no)
          Sets the residue no.
 void setRotamerRatio(double ra)
          Sets the rotamer ratio.
 java.util.Vector sixAngles(java.util.Vector pdbVec)
          pdbVec is a Vector of Pdb Objects e.g.
 void statsOfSixAngles(java.lang.String pdbLists)
          A method to compute all the angles from ultrahigh resolution PDBs.
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

Pdb

public Pdb()
Instantiates a new pdb.


Pdb

public Pdb(int No)
Instantiates a new pdb.

Parameters:
No - the no

Pdb

public Pdb(int No,
           java.lang.String res,
           java.util.Vector aa)
Instantiates a new pdb.

Parameters:
No - the no
res - the res
aa - the aa

Pdb

public Pdb(int No,
           java.lang.String res,
           java.util.Vector aa,
           double ra)
Instantiates a new pdb.

Parameters:
No - the no
res - the res
aa - the aa
ra - the ra

Pdb

public Pdb(Pdb pp)
Instantiates a new pdb.

Parameters:
pp - the pp
Method Detail

getResidueNo

public int getResidueNo()
Gets the residue no.

Returns:
the residue no

getAtomVec

public java.util.Vector getAtomVec()
Gets the atom vec.

Returns:
the atom vec

getResidue

public java.lang.String getResidue()
Gets the residue.

Returns:
the residue

getRotamerRatio

public double getRotamerRatio()
Gets the rotamer ratio.

Returns:
the rotamer ratio

setResidueNo

public void setResidueNo(int no)
Sets the residue no.

Parameters:
no - the new residue no

setResidue

public void setResidue(java.lang.String res)
Sets the residue.

Parameters:
res - the new residue

setAtomVec

public void setAtomVec(java.util.Vector aVec)
Sets the atom vec.

Parameters:
aVec - the new atom vec

setRotamerRatio

public void setRotamerRatio(double ra)
Sets the rotamer ratio.

Parameters:
ra - the new rotamer ratio

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

printArray

public void printArray(double[] n1)
Prints the array.

Parameters:
n1 - the n1

length

public double length(double[] v1)
Length.

Parameters:
v1 - the v1
Returns:
the double

dirCos

public double[] dirCos(double[] vec)
cal the directioal cosines of the vector vec.

Parameters:
vec - the vec
Returns:
the double[]

interAngle

public double interAngle(double[] v1,
                         double[] v2)
calculate the angles between two vectors v1 and v2 The returned angle is the [0,Pi] region.

Parameters:
v1 - the v1
v2 - the v2
Returns:
the double

internuclearVec

public double[] internuclearVec(double[] n1,
                                double[] n2)
Compute the internuclear vector between two atoms.

Parameters:
n1 - the coordinate for atom 1
n2 - the coordinate for atom 2
Returns:
a vector from n1->n2

readRotamerPdb

public java.util.Vector readRotamerPdb(java.lang.String pdbFile)
Reading Rotamer file in PDB Format!!!.

Parameters:
pdbFile - the pdb file
Returns:
a vector of Pdb object

readPdb

public java.util.Vector readPdb(java.lang.String pdbFile)
Reading PDB file in PDB Format!!! the magic number for substring is based on format for pdb file.

Parameters:
pdbFile - the pdb file
Returns:
a vector of Pdb object Comment: There is always some irregularity in PDB files so when reading a real PDB file you must be cautious and ready to check the output from the reader However, in our case we simply need coordinates which is much easier.

doCalNOEScores

public void doCalNOEScores(java.lang.String src,
                           java.lang.String strOut,
                           java.lang.String strInput)
                    throws JampackException
* compute the NOE satisfaction scores for all structure in an ensemble.

Parameters:
src - location of the input file
strOut - location of the output file
strInput - input file name
Throws:
JampackException - the jampack exception

main1

public static void main1(java.lang.String[] argv)
Main1.

Parameters:
argv - the argv

main00

public static void main00(java.lang.String[] argv)
Main00.

Parameters:
argv - the argv

main

public static void main(java.lang.String[] argv)
The main method.

Parameters:
argv - the arguments

readPdbAndNoeRmsdFromEnsemble

public java.util.Vector readPdbAndNoeRmsdFromEnsemble(java.lang.String pdbFile)
Reading PDB file and other parameters in PDB Format from ensemble!!!.

Parameters:
pdbFile - the pdb file
Returns:
a vector of Pdb object ensemble

readPdbAndNoeHarmFromEnsemble

public java.util.Vector readPdbAndNoeHarmFromEnsemble(java.lang.String pdbFile)
Reading PDB file and other parameters in PDB Format from ensemble!!!.

Parameters:
pdbFile - the pdb file
Returns:
a vector of Pdb object ensemble

readPdbAndParaXplor

public java.util.Vector readPdbAndParaXplor(java.lang.String pdbFile,
                                            double[] vdwSc,
                                            double[] noeSc)
Read pdb and para xplor.

Parameters:
pdbFile - the pdb file
vdwSc - the vdw sc
noeSc - the noe sc
Returns:
the vector

readPdbEnergy

public void readPdbEnergy(java.lang.String pdbFile,
                          double[] scEnerg,
                          int rowPos,
                          int colPos)
Read pdb energy.

Parameters:
pdbFile - the pdb file
scEnerg - the sc energ
rowPos - the row pos
colPos - the col pos

readPdbAndParametersFromEnsemble

public java.util.Vector readPdbAndParametersFromEnsemble(java.lang.String pdbFile)
Reading PDB file and other parameters in PDB Format from ensemble!!!.

Parameters:
pdbFile - the pdb file
Returns:
a vector of Pdb object ensemble

readPdbFromEnsemble

public java.util.Vector readPdbFromEnsemble(java.lang.String pdbFile)
Reading PDB file in PDB Format from ensemble!!! the magic number for substring is based on format for pdb file.

Parameters:
pdbFile - the pdb file
Returns:
a vector of Pdb object ensemble Comment: There is always some irregularity in PDB files so when reading a real PDB file you must be cautious and ready to check the output from the reader However, in our case we simply need coordinates which is much easier.

newPdb

public java.util.Vector newPdb(java.util.Vector pdbVec,
                               Matrix R)
compute new PDB coordinates after the rotation by matrix R.

Parameters:
pdbVec - original PDB coordinates
R - the rotation matrix
Returns:
a new vector of PDB object

newPdbByTranslation

public java.util.Vector newPdbByTranslation(java.util.Vector pdbVec,
                                            double[] vT)
compute new PDB coordinates after the translation.

Parameters:
pdbVec - original PDB coordinates
vT - the center in which the PDB is being tranlated to
Returns:
a new vector of PDB object

dihedralAngle

public double dihedralAngle(double[] n2CO1,
                            double[] n2CA,
                            double[] ca2CO)
Method for computing dihedral angles between two planes defined by three vectors. The middle plane is shared by two planes: the intersection of the two planes. The first two vectors (n2CO1, n2CA) define the first plane. The second two vectors (n2CA, ca2CO) define the second plane. The names of vectors are for computing backbone (\phi, \psi) angles but the program should be able to compute any dihedral angle. Please note that if the first vector is from CO(i-1) ->N(i) the computed angle will differ from that computed from the direction N(i)->CO(i-1) by 180 degree. In other words, the method is defined with the 1st and 3rd vectors point away from the shared vector (the 2nd vector).

Parameters:
n2CO1 - the N(i)->CO(i-1) vector
n2CA - the N(i)->CA(i) vector
ca2CO - the CA(i)->CO(i) vector
Returns:
the dihedral angle

PhiPsiCalPDB

public double PhiPsiCalPDB(double[] n2CO1,
                           double[] n2CA,
                           double[] ca2CO)
Compute Phi and Psi directly from three backbone vectors (not NH vector).

Parameters:
n2CO1 - N->CO vector
n2CA - N->CA vector
ca2CO - CA->CO vector
Returns:
phipsi angles

PhiPsiTotalPdb

public java.util.Vector PhiPsiTotalPdb(java.util.Vector pdbVec)
Compute all the backbone Phi and Psi angles from PDB from the backbone backbone bond vectors between heavy atoms.

Parameters:
pdbVec - the pdb vec
Returns:
a vector of PhiPsi object

extractBackbone

public java.util.Vector extractBackbone(java.util.Vector pdbVec)
Extract backbone atoms from a PDB file.

Parameters:
pdbVec - the original Pdb vector
Returns:
a Pdb file with only protein backbone atoms

extractFragment

public java.util.Vector extractFragment(java.util.Vector pdbVec,
                                        int residueFirst,
                                        int residueLast,
                                        double[] firstCoords,
                                        double[] lastCoords)
Extract backbone atoms from a PDB file.

Parameters:
pdbVec - the original Pdb vector
residueFirst - the residue first
residueLast - the residue last
firstCoords - the first coords
lastCoords - the last coords
Returns:
a Pdb file with only protein backbone atoms

extractFragment

public java.util.Vector extractFragment(java.util.Vector pdbVec,
                                        int residueFirst,
                                        int residueLast)
Extract backbone atoms from a PDB file.

Parameters:
pdbVec - the original Pdb vector
residueFirst - the residue first
residueLast - the residue last
Returns:
a Pdb file with only protein backbone atoms

nameConvert2PDBNew

public java.util.Vector nameConvert2PDBNew(java.util.Vector pdbVec)
Convert the old PDB namaclature to new one zeng changed the code,.

Parameters:
pdbVec - the pdb vec
Returns:
the vector

nameConvert4SmallRotLibCS

public java.util.Vector nameConvert4SmallRotLibCS(java.util.Vector pdbVec)
Convert the old PDB namaclature to new one zeng changed the code, such that all methel group protons become one proxy proton.

Parameters:
pdbVec - the pdb vec
Returns:
the vector

nameConvert4SmallRotLibStr

public java.util.Vector nameConvert4SmallRotLibStr(java.util.Vector pdbVec)
Convert the old PDB namaclature to new one for computing the structure rmsd. each proton has different id

Parameters:
pdbVec - the pdb vec
Returns:
the vector

nameConvertCS

public java.util.Vector nameConvertCS(java.util.Vector pdbVec)
Convert the old PDB namaclature to new one zeng changed the code, such that all methel group protons become one proxy proton.

Parameters:
pdbVec - the pdb vec
Returns:
the vector

nameConvertStr

public java.util.Vector nameConvertStr(java.util.Vector pdbVec)
Convert the old PDB namaclature to new one zeng changed the code, such that all methel group protons become one proxy proton.

Parameters:
pdbVec - the pdb vec
Returns:
the vector

nameConvertOrder

public java.util.Vector nameConvertOrder(java.util.Vector pdbVec)
In this function, only the order of atom name is changed, and H-> HN eg 2HB=>HB2, 3HB=>HB3.

Parameters:
pdbVec - the pdb vec
Returns:
the vector

nameConvert

public java.util.Vector nameConvert(java.util.Vector pdbVec)
Lincong's original function: Convert the old PDB namaclature to new one bugs fixed... be careful of the original format. it may have some problem if converting from new format to new format eg HB2=>HB1, HB3=>HB3

Parameters:
pdbVec - the pdb vec
Returns:
the vector

NameFromPdbToBMRB

public java.lang.String NameFromPdbToBMRB(java.lang.String resid,
                                          java.lang.String atomNameInput)
Convert the PDB-NEW namaclature to BMRB-NEW namaclature: e.g. HB1,HB2 or 1HB, 2HB-->HB2,HB3. return new atom name

Parameters:
resid - the resid
atomNameInput - the atom name input
Returns:
the string

NameFromBMRBToPDB

public java.lang.String NameFromBMRBToPDB(java.lang.String resName,
                                          java.lang.String atomName)
Convert the BMRB-NEW namaclature to PDB-NEW namaclature return new atom name.

Parameters:
resName - the res name
atomName - the atom name
Returns:
the string

NameFromPDBToPDB

public java.lang.String NameFromPDBToPDB(java.lang.String resName,
                                         java.lang.String atomName)
Convert the PDB-NEW namaclature to PDB-NEW namaclature change the methel groups return new atom name.

Parameters:
resName - the res name
atomName - the atom name
Returns:
the string

nameConvert22

public java.util.Vector nameConvert22(java.util.Vector pdbVec)
Convert the old PDB namaclature to new one.

Parameters:
pdbVec - the pdb vec
Returns:
the vector

residueNameUpdate_from_structure

public java.util.Vector residueNameUpdate_from_structure(java.util.Vector pdbVec1,
                                                         java.util.Vector pdbVec2)
A temporary method for converting the residue name in the RDC-derived PDB file, which are "ALA", to real Residue name, also to build the conformation of proline and glycine residue.

Parameters:
pdbVec1 - a pdb object with correct residue name, which can be replaced with a protein sequence file
pdbVec2 - a pdb object with all the residue name as "ALA"
Returns:
a new Pdb object with the residue name changed and conformation for Gly and Proline side chain.

residueNameFromSeq

public java.lang.String residueNameFromSeq(java.util.Vector seqVec,
                                           int resNo)
get the residue name from protein sequence.

Parameters:
seqVec - vector of residues, namely protein sequence
resNo - residue no
Returns:
residue name

residueNameUpdate

public java.util.Vector residueNameUpdate(java.util.Vector seqVec,
                                          java.util.Vector pdbVec2)
work for bb only? A temporary method for converting the residue name in the RDC-derived PDB file, which are "ALA", to real Residue name, also to build the conformation of proline and glycine residue.

Parameters:
seqVec - vector of residues, namely protein sequence
pdbVec2 - a pdb object with all the residue name as "ALA"
Returns:
a new Pdb object with the residue name changed and conformation for Gly and Proline side chain.

residueNameUpdateNoStr

public java.util.Vector residueNameUpdateNoStr(java.util.Vector seqVec,
                                               java.util.Vector pdbVec2)
change residue name according to sequnce, without changing structure.

Parameters:
seqVec - vector of residues, namely protein sequence
pdbVec2 - a pdb object with all the residue name as "ALA"
Returns:
a new Pdb object with the residue name changed and conformation for Gly and Proline side chain.

isInPdbClusters

public boolean isInPdbClusters(java.util.Vector vecEnsemblePdb,
                               java.util.Vector vecPdb,
                               double rmsThreshold)
tell whether a structure is within the clusters of previous ensemble.

Parameters:
vecEnsemblePdb - ensemble of structures to
vecPdb - the pdb structure
rmsThreshold - rmsd thresold to one structure in the ensemble
Returns:
rmsd

isInPointClusters

public boolean isInPointClusters(java.util.Vector vecPoints,
                                 Cartesian cc,
                                 double rmsThreshold)
tell whether a point is within the clusters of previous ensemble.

Parameters:
vecPoints - ensemble of point to
cc - the obj point
rmsThreshold - rmsd thresold to one structure in the ensemble
Returns:
rmsd

doReadPdbFragments

public void doReadPdbFragments(java.lang.String src,
                               java.lang.String strOut,
                               java.lang.String strInput)
                        throws JampackException
HANA algorithm for the NOE assignment and output the NOE table.

Parameters:
src - location of the input file
strOut - location of the output file
strInput - input file name
Throws:
JampackException - the jampack exception

compRmsdBetwTwoPdbs

public double compRmsdBetwTwoPdbs(java.util.Vector vecPdb1,
                                  java.util.Vector vecPdb2,
                                  boolean isHeavy)
Compute rmsd between two pdb structures with the same length and in the same coordinate system.

Parameters:
vecPdb1 - the first structure
vecPdb2 - the second structure
isHeavy - whether compute rmsd between heavy atoms or all atoms
Returns:
rmsd

compRmsdRotXrayBB

public boolean compRmsdRotXrayBB(java.util.Vector vecPdbXray,
                                 java.util.Vector vecRotam,
                                 int resNo,
                                 double[] rmsd,
                                 boolean isHeavy)
Compute rmsd between a rotamer and corresponding side-chain in x-ray structure.

Parameters:
vecPdbXray - xray backbone structure, each proton uses specific name, eg hg21...
vecRotam - rotamer vector that keeps the same naming scheme as xray backbone
isHeavy - whether compute rmsd between heavy atoms or all atoms
resNo - the res no
rmsd - the rmsd
Returns:
rmsd

compResRmsd

public double compResRmsd(Pdb pdb1,
                          Pdb pdb2)
Compute rmsd between two rotamers only for non-proton atoms, assume they are in the same coordinate system.

Parameters:
pdb1 - rotmaer 1
pdb2 - rotmaer 2
Returns:
rmsd

compResRmsdPairWise

public double compResRmsdPairWise(Pdb pdb1,
                                  Pdb pdb2)
Compute rmsd between two rotamers (for all atoms), assume they are in the same coordinate system.

Parameters:
pdb1 - rotmaer 1
pdb2 - rotmaer 2
Returns:
rmsd

compDistPatternForSSEPacking

public java.util.Vector compDistPatternForSSEPacking(java.util.Vector pdbVecA,
                                                     java.util.Vector pdbVecB,
                                                     double DistBound)
Compute all distance patterns for two secondary structure elements, whose coordinates are fixed.

Parameters:
pdbVecA - the first sse
pdbVecB - the secondary sse
DistBound - the bound to compute noe distance beween two protons
Returns:
the Hdist vector that stores all pairs of NOE distances (including from sc to sc)

compDistPatternFromPairRotams

public java.util.Vector compDistPatternFromPairRotams(int resNoA,
                                                      int resNoB,
                                                      Pdb pdbA,
                                                      Pdb pdbB,
                                                      double DistBound)
Compute all distance patterns for a pair of rotamers, distances are from each proton in the rotamer to backbone protons including HA,HN, HB rotamers are in the same coordinate system,includes both from A->B and from B->A.

Parameters:
DistBound - the bound to compute noe distance beween two protons
resNoA - the res no a
resNoB - the res no b
pdbA - the pdb a
pdbB - the pdb b
Returns:
the Hdist vector that stores all pairs of NOE distances from rotamer proton to backbone protons

compDistPatternForRotam

public java.util.Vector compDistPatternForRotam(java.util.Vector rotamVec,
                                                int resNo,
                                                java.util.Vector pdbVec,
                                                double DistBound)
Compute all distance patterns for a rotamer, distances are from each proton in the rotamer to backbone protons including HA,HN, HB.

Parameters:
rotamVec - the rotamer vector in pdb format, note: only *one* rotamer
resNo - residue No of the rotamer
pdbVec - the pdb vector of the whole protein backbone
DistBound - the bound to compute noe distance beween two protons
Returns:
the Hdist vector that stores all pairs of NOE distances from rotamer proton to backbone protons

compDistPatternForRotam_old

public java.util.Vector compDistPatternForRotam_old(java.util.Vector rotamVec,
                                                    int resNo,
                                                    java.util.Vector pdbVec,
                                                    double DistBound)
Compute all distance patterns for a rotamer, distances are from each proton in the rotamer to backbone protons including HA,HN, HB.

Parameters:
rotamVec - the rotamer vector in pdb format, note: only *one* rotamer
resNo - residue No of the rotamer
pdbVec - the pdb vector of the whole protein backbone
DistBound - the bound to compute noe distance beween two protons
Returns:
the Hdist vector that stores all pairs of NOE distances from rotamer proton to backbone protons

measureDisXray

public boolean measureDisXray(java.util.Vector pdbVec,
                              int noA,
                              java.lang.String residueA,
                              java.lang.String nucleusA,
                              int noB,
                              java.lang.String residueB,
                              java.lang.String nucleusB,
                              double[] distance)
Compute the NOE distance between two nuclei (A, B) in a structure specified by pdbVec.

Parameters:
pdbVec - the PDB structure
noA - the residue NO of nucleus A
residueA - the residue type of nucleus A
nucleusA - the name of the nucleus of nucleus A
noB - the residue NO of nucleus A
residueB - the residue type of nucleus A
nucleusB - the name of the nucleus of nucleus A
distance - save the back-computed NOE distance
Returns:
true if such a distance can be computed in the structure, false if there is no such nuclei in the structure.

measurePackDisAllRotamers

public boolean measurePackDisAllRotamers(java.util.Vector pdbVecA,
                                         java.util.Vector pdbVecB,
                                         int noA,
                                         java.lang.String nucleusA,
                                         int noB,
                                         java.lang.String nucleusB,
                                         double lower,
                                         double upper,
                                         double[] disRMS,
                                         double[] distance)
measure the packing distances between two sses all rotamers are put into the sse backbones The number themselves are set rather arbitrariry. Reaaly need search through PDB to compute them.

Parameters:
noA - the residue NO of nucleus A
nucleusA - the name of the nucleus of residue A
noB - the residue NO of nucleus A
nucleusB - the name of the nucleus of residue B
lower - lower bound of NOE constraint
upper - upper bound of NOE constraint
distance - save distance deviation
pdbVecA - the pdb vec a
pdbVecB - the pdb vec b
disRMS - the dis rms
Returns:
true if such a distance can be computed in the structure, false if there is no such nuclei in the structure.

measureDis

public boolean measureDis(java.util.Vector pdbVec,
                          int noA,
                          java.lang.String residueA,
                          java.lang.String nucleusA,
                          int noB,
                          java.lang.String residueB,
                          java.lang.String nucleusB,
                          double[] distance)
Compute the NOE distance between two nuclei (A, B) in a structure specified by pdbVec There are two numbers: 15 Degree and 45 Degree for correct the most possible orientation changing. The number themselves are set rather arbitrariry. Reaaly need search through PDB to compute them.

Parameters:
pdbVec - the PDB structure
noA - the residue NO of nucleus A
residueA - the residue type of nucleus A
nucleusA - the name of the nucleus of residue A
noB - the residue NO of nucleus A
residueB - the residue type of nucleus B
nucleusB - the name of the nucleus of residue B
distance - save the back-computed NOE distance
Returns:
true if such a distance can be computed in the structure, false if there is no such nuclei in the structure.

compOverAllRmsdBetweenRotXray

public double compOverAllRmsdBetweenRotXray(java.util.Vector pdbBBVec,
                                            java.util.Vector asgVec,
                                            java.lang.String rotSrc,
                                            java.util.Vector hnNoeVec,
                                            java.util.Vector cNoeVec,
                                            java.util.Vector pdbVecXray,
                                            double distBound,
                                            int pickNum)
Compute a structure, given the backbone and rotamers at all residue positions.

Parameters:
pdbBBVec - the PDB backbone structure
asgVec - resonace list
rotSrc - the path of rotmaer library
hnNoeVec - hn Noe vector
cNoeVec - ha noe vector
pdbVecXray - x-ray structure, including both backbone and side-chains
distBound - the distance bound for back computing distance pattern for each rotamer
pickNum - the best number of rotamers picked for computation
Returns:
overall rmsd.

isInAtomVec

public boolean isInAtomVec(java.util.Vector vecAtom,
                           java.lang.String atomName)
Checks if is in atom vec.

Parameters:
vecAtom - the vec atom
atomName - the atom name
Returns:
true, if is in atom vec

OutputBackbone

public java.util.Vector OutputBackbone(java.util.Vector vecPdb)
output the backbone of a pdb structure.

Parameters:
vecPdb - pdb structure, new naming scheme, eg HB2,HB3...
Returns:
the backbone pdb

OutputBackboneNoCB

public java.util.Vector OutputBackboneNoCB(java.util.Vector vecPdb)
output the backbone of a pdb structure.

Parameters:
vecPdb - pdb structure, new naming scheme, eg HB2,HB3...
Returns:
the backbone pdb

CombinRotBB

public java.util.Vector CombinRotBB(java.util.Vector rotamVec,
                                    java.util.Vector pdbVecN,
                                    int resNo)
plug rotamer into backbone.

Parameters:
rotamVec - the rotamer vector in pdb format, note: only *one* rotamer
resNo - residue No of the rotamer
pdbVecN - the pdb vec n
Returns:
the new structure after pluging rotamer into backbone

AllRotamersStructure

public java.util.Vector AllRotamersStructure(java.util.Vector pdbBBVec,
                                             java.lang.String rotSrc)
put all rotamers at each redidue.

Parameters:
pdbBBVec - the PDB backbone structure
rotSrc - the path of rotmaer library
Returns:
final structure.

RotamSelectAndStructure

public java.util.Vector RotamSelectAndStructure(double csErrH,
                                                double csErrN,
                                                double csErrCA,
                                                java.util.Vector pdbBBVec,
                                                java.util.Vector asgVec,
                                                java.lang.String rotSrc,
                                                java.util.Vector NoesyVec,
                                                double distBound,
                                                int pickNum,
                                                double constant)
Compute a structure, given the backbone and rotamers at all residue positions.

Parameters:
csErrH - csErrN csErrCA error window size at each dimension
pdbBBVec - the PDB backbone structure
asgVec - resonace list
rotSrc - the path of rotmaer library
NoesyVec - Noe vector including both ha and hn noes
distBound - the distance bound for back computing distance pattern for each rotamer
pickNum - the best number of rotamers picked for computation
csErrN - the cs err n
csErrCA - the cs err ca
constant - the constant
Returns:
final structure. and Updated asgVec. Note: the structure will be rotated for installing rotamers. So the strucgture need to be rotated back outside this function.

AlaninizeStructure

public java.util.Vector AlaninizeStructure(java.util.Vector vecPdb,
                                           boolean[] resIndex,
                                           java.lang.String rotSrc)
                                    throws JampackException
replace all non-NOE residues in pdb with alaline.

Parameters:
vecPdb - original (bb) pdb structrue
resIndex - whether the residue index is non-ala, the value is true if yes, otherwise false
rotSrc - the rot src
Returns:
the updated structure. Note: the structure will be rotated for installing rotamers. So the strucgture need to be rotated back outside this function.
Throws:
JampackException - the jampack exception

AlaninizeStructureResName

public java.util.Vector AlaninizeStructureResName(java.util.Vector vecPdb,
                                                  java.lang.String rotSrc)
                                           throws JampackException
replace all non-NOE residues in pdb with alaline, according to the residue names.

Parameters:
vecPdb - original (bb) pdb structrue
rotSrc - the rot src
Returns:
the updated structure. Note: the structure will be rotated for installing rotamers. So the strucgture need to be rotated back outside this function.
Throws:
JampackException - the jampack exception

RotamSelectAndStructureNoClash

public java.util.Vector RotamSelectAndStructureNoClash(double csErrH,
                                                       double csErrN,
                                                       double csErrCA,
                                                       java.util.Vector pdbBBVec,
                                                       java.util.Vector asgVec,
                                                       java.lang.String rotSrc,
                                                       java.util.Vector NoesyVec,
                                                       double distBound,
                                                       int pickNum,
                                                       boolean[] resIndex)
                                                throws JampackException
Rotam select and structure no clash.

Parameters:
csErrH - csErrN csErrCA error window size at each dimension
pdbBBVec - the PDB backbone structure
asgVec - resonace list
rotSrc - the path of rotmaer library
NoesyVec - Noe vector including both ha and hn noes
distBound - the distance bound for back computing distance pattern for each rotamer
resIndex - residue index to be analized
csErrN - the cs err n
csErrCA - the cs err ca
pickNum - the pick num
Returns:
vector (ensemble) of structures. Note: the structure will be rotated for installing rotamers. So the strucgture need to be rotated back outside this function.
Throws:
JampackException - the jampack exception

RefineRotamerSelection

public java.util.Vector RefineRotamerSelection(java.util.Vector vecGrowPdb,
                                               java.util.Vector vecRot4AllResidues,
                                               int[] rotID)
refine the rotamer selection until no steric clash happens.

Parameters:
vecGrowPdb - previous structure after placing rotmaers into the backbone
vecRot4AllResidues - vector of rotamers at each residue
rotID - store the rotamer that is current in the residue
Returns:
refined structure.

RefineRotamerSelectionRandom

public java.util.Vector RefineRotamerSelectionRandom(java.util.Vector vecGrowPdb,
                                                     java.util.Vector vecRot4AllResidues,
                                                     int[] rotID)
refine the rotamer selection until no steric clash happens, using Gaussian random sampling at each rotamer position.

Parameters:
vecGrowPdb - previous structure after placing rotmaers into the backbone
vecRot4AllResidues - vector of rotamers at each residue
rotID - store the rotamer that is current in the residue
Returns:
refined structure.

RefineRotamerSelectionSearch

public java.util.Vector RefineRotamerSelectionSearch(java.util.Vector vecGrowPdb,
                                                     int resNo,
                                                     java.lang.String rotSrc,
                                                     int depth)
wait...

Parameters:
vecGrowPdb - previous structure after placing rotmaers into the backbone
resNo - the res no
rotSrc - the rot src
depth - the depth
Returns:
refined structure.

RefineRotamerSelectionRecur

public boolean RefineRotamerSelectionRecur(java.util.Vector vecGrowPdb,
                                           java.util.Vector vecRot4AllResidues,
                                           int resInd,
                                           java.util.Vector vecSavePdb,
                                           boolean[] resNoeIndex)
refine the rotamer selection until no steric clash happens, by enumerating all possible rotamers in the order of NOE matching scores.

Parameters:
vecGrowPdb - previous structure after placing rotmaers into the backbone
vecRot4AllResidues - vector of rotamers at each residue
vecSavePdb - vector to save returing pdbs
resInd - the res ind
resNoeIndex - the res noe index
Returns:
refined structure.

AssembleTwoSSEs

public java.util.Vector AssembleTwoSSEs(java.util.Vector vecSSEPdb1,
                                        java.util.Vector vecSSEPdb2,
                                        int brkResNo,
                                        java.util.Vector<Dipolar> rdcVecNh,
                                        java.util.Vector<Dipolar> rdcVecCh,
                                        double Syy,
                                        double Szz)
                                 throws JampackException
assemble two sses with some phi psi deviations in the break point, the assembled structure has minimum rdc rmsd and vdw energy.

Parameters:
vecSSEPdb1 - the first sse
vecSSEPdb2 - the second sse
rdcVecNh - a vector of NH RDC values
rdcVecCh - a vector of CH RDC values
Szz - the three diagonalized Saupe elements
Syy - the three diagonalized Saupe elements
brkResNo - the brk res no
Returns:
new structure after being assembled.
Throws:
JampackException - the jampack exception

LoopComputFromNOEPatterns

public java.util.Vector LoopComputFromNOEPatterns(double csErrH,
                                                  double csErrN,
                                                  double csErrCA,
                                                  java.util.Vector seqVec,
                                                  java.util.Vector vecPdbBbSSE,
                                                  java.util.Vector asgVec,
                                                  java.lang.String rotSrc,
                                                  java.util.Vector NoesyVec,
                                                  double distBound,
                                                  int firstResNo,
                                                  int secondResNo)
Compute a structure, given the backbone and rotamers at all residue positions.

Parameters:
csErrH - csErrN csErrCA error window size at each dimension
seqVec - vector of protein sequence
vecPdbBbSSE - the secondary structure backbone structure solved from RDC-EXACT
asgVec - resonace list
rotSrc - the path of rotmaer library
NoesyVec - Noe vector including both ha and hn noes
distBound - the distance bound for back computing distance pattern for each rotamer
firstResNo - the first residue no of the loop
secondResNo - the first residue no of the loop
csErrN - the cs err n
csErrCA - the cs err ca
Returns:
final structure.

measureDisFromRotam

public boolean measureDisFromRotam(java.util.Vector pdbVec,
                                   java.util.Vector rotamVecA,
                                   java.util.Vector rotamVecB,
                                   int noA,
                                   java.lang.String residueA,
                                   java.lang.String nucleusA,
                                   int noB,
                                   java.lang.String residueB,
                                   java.lang.String nucleusB,
                                   double[] distance)
Compute the NOE distance between two nuclei (A, B) in a structure specified by pdbVec There are two numbers: 15 Degree and 45 Degree for correct the most possible orientation changing. The number themselves are set rather arbitrariry. Reaaly need search through PDB to compute them.

Parameters:
pdbVec - the PDB structure
noA - the residue NO of nucleus A
residueA - the residue type of nucleus A
nucleusA - the name of the nucleus of residue A
noB - the residue NO of nucleus A
residueB - the residue type of nucleus B
nucleusB - the name of the nucleus of residue B
distance - save the back-computed NOE distance
rotamVecA - the rotam vec a
rotamVecB - the rotam vec b
Returns:
true if such a distance can be computed in the structure, false if there is no such nuclei in the structure.

statsOfSixAngles

public void statsOfSixAngles(java.lang.String pdbLists)
A method to compute all the angles from ultrahigh resolution PDBs.

Parameters:
pdbLists - the pdb lists

radiiFromCb

public java.util.Vector radiiFromCb(java.util.Vector pdbVec,
                                    java.lang.String residue,
                                    java.lang.String hAtom)
We can also derived the minimum and maximam using analytic expression but using rotamer as appeared in PDB may have certain advantage.

Parameters:
pdbVec - is an array of PDB object
residue - the type of residue
hAtom - the h atom
Returns:
the vector

radiiFromNH

public java.util.Vector radiiFromNH(java.util.Vector pdbVec,
                                    java.lang.String residue,
                                    java.lang.String hAtom)
Compute the distance from the nucleu NH to other nucleu. We can also derived the minimum and maximam using analytic expression but using rotamer as appeared in PDB may have certain advantage

Parameters:
pdbVec - is an array of PDB object
residue - the type of residue
hAtom - the h atom
Returns:
the vector

sixAngles

public java.util.Vector sixAngles(java.util.Vector pdbVec)
pdbVec is a Vector of Pdb Objects e.g. that from the pdbRead method return the all the OmegaNH angle of the peptide plane as a vector The program may have bugs if some seq no are missing!!!! We want to compute all the relavant angles. Six plus angles for HA and CO, CACB vectors

Parameters:
pdbVec - the pdb vec
Returns:
the vector

printToFile

public void printToFile(java.util.Vector pdbVec,
                        java.lang.String fileName,
                        java.io.PrintWriter out)
A method for printing the coordinates in PDB format the magic Number comes from PDB file format.

Parameters:
pdbVec - a vector of Pdb object
fileName - the file name
out - the out

print

public void print(java.util.Vector pdbVec)
A method for printing the coordinates in PDB format the magic Number comes from PDB file format.

Parameters:
pdbVec - a vector of Pdb object

h1Distance

public void h1Distance(java.lang.String pdbLists,
                       java.lang.String aaType,
                       java.lang.String nucType)
A method to compute all the angles from ultrahigh resolution PDBs.

Parameters:
pdbLists - the pdb lists
aaType - the aa type
nucType - the nuc type

main0

public static void main0(java.lang.String[] argv)
Main0.

Parameters:
argv - the argv