meshi.energy.solvate.hydrogenBonds
Class HydrogenBondDahiyatList

java.lang.Object
  extended by meshi.energy.solvate.hydrogenBonds.AbstractHydrogenBondList
      extended by meshi.energy.solvate.hydrogenBonds.HydrogenBondDahiyatList
All Implemented Interfaces:
Updateable

public class HydrogenBondDahiyatList
extends AbstractHydrogenBondList

This class describe a list of hydrogen bonds in a protein. The hydrogen bonds are described as in: Dahiyat et al. Protein Sci. 1996 May;5(5):895-903. See the "HydrogenBondDahiyat" class for a much more detailed description. The construcor requires a parameter that points to an instance of "SolvateParametersList". From this instance the distance dependence of the hydrogen bonds are extracted. See the heading documentation of the SolvateParametersList class for more details. This parameter 30 determines the refresh rate of the HB vector. Once every this number of updates, broken hydrogen bonds that are no longer in the non-bonded-list are removed from the vector. This number should be >>1 so that the refresh does not impend the updates too much, but 30 was just a thumb figure.


Field Summary
protected  Atom[] baseAtom
          This array stores pointers to the base atoms of every non-hydrogen polar atom in the protein.
(package private)  SolvateParametersList parameters
          Since currently the hydrogen bond list is only used by the solvate energy, we use the parameters for the hydrogen bond from this class.
 
Fields inherited from class meshi.energy.solvate.hydrogenBonds.AbstractHydrogenBondList
atomList, atomListSize, bondList, dm, lut, lutHB, maxAtomNum
 
Constructor Summary
HydrogenBondDahiyatList()
           
HydrogenBondDahiyatList(DistanceMatrix dm, AtomList atomList, SolvateParametersList parameters)
           
 
Method Summary
protected  void buildSpecificStructures()
          This method updates the pointers in the baseAtom array.
protected  AbstractHydrogenBond createHBfromPolars(Atom atom1, Atom atom2)
          Creating a Dahiyat-like hydrogen-bond.
 
Methods inherited from class meshi.energy.solvate.hydrogenBonds.AbstractHydrogenBondList
findBondByPolars, findBondByPolars, lutHB, print, update, update
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

baseAtom

protected Atom[] baseAtom
This array stores pointers to the base atoms of every non-hydrogen polar atom in the protein. The indexation is through the atom number (field)


parameters

SolvateParametersList parameters
Since currently the hydrogen bond list is only used by the solvate energy, we use the parameters for the hydrogen bond from this class. Later, this can be changed.

Constructor Detail

HydrogenBondDahiyatList

public HydrogenBondDahiyatList()

HydrogenBondDahiyatList

public HydrogenBondDahiyatList(DistanceMatrix dm,
                               AtomList atomList,
                               SolvateParametersList parameters)
Method Detail

buildSpecificStructures

protected void buildSpecificStructures()
This method updates the pointers in the baseAtom array. For non-polar atoms they should remain null. For any polar atom (O,N or S in Cys) we calculate the base atom that participate in the definition of the hydrogen bond angle. This base atom is the attached hydrogen (if present), or the heavy atom to which the polar atom is attached (when the hydrogen is not present).

Specified by:
buildSpecificStructures in class AbstractHydrogenBondList

createHBfromPolars

protected AbstractHydrogenBond createHBfromPolars(Atom atom1,
                                                  Atom atom2)
Creating a Dahiyat-like hydrogen-bond.

Specified by:
createHBfromPolars in class AbstractHydrogenBondList