Bioplib
Protein Structure C Library
 All Data Structures Files Functions Variables Typedefs Macros Pages
Macros | Functions
hbond.c File Reference

Report whether two residues are H-bonded using Baker & Hubbard criteria. More...

#include <math.h>
#include "MathType.h"
#include "SysDefs.h"
#include "pdb.h"
#include "macros.h"
#include "general.h"
#include "angle.h"
#include "hbond.h"

Go to the source code of this file.

Macros

#define DADIST   3.5
 
#define DADISTSQ   (DADIST*DADIST)
 
#define HADIST   2.5
 
#define HADISTSQ   (HADIST*HADIST)
 

Functions

int blIsHBonded (PDB *res1, PDB *res2, int type)
 
BOOL blValidHBond (PDB *AtomH, PDB *AtomD, PDB *AtomA, PDB *AtomP)
 
int blIsMCDonorHBonded (PDB *res1, PDB *res2, int type)
 
int blIsMCAcceptorHBonded (PDB *res1, PDB *res2, int type)
 
void blSetMaxProteinHBondDADistance (REAL dist)
 
HBLISTblListAllHBonds (PDB *res1, PDB *res2)
 

Detailed Description

Report whether two residues are H-bonded using Baker & Hubbard criteria.

Version
V1.8
Date
20.07.15
Author
Dr. Andrew C. R. Martin
Institute of Structural & Molecular Biology, University College London, Gower Street, London. WC1E 6BT.
andre.nosp@m.w@bi.nosp@m.oinf..nosp@m.org..nosp@m.uk andre.nosp@m.w.ma.nosp@m.rtin@.nosp@m.ucl..nosp@m.ac.uk

This code is NOT IN THE PUBLIC DOMAIN, but it may be copied according to the conditions laid out in the accompanying file COPYING.DOC.

The code may be modified as required, but any modifications must be documented so that the person responsible can be identified.

The code may not be sold commercially or included as part of a commercial product except as described in the file COPYING.DOC.

Description:

Usage:

NOTE, explicit hydrogens must be added to the PDB linked list before calling this routine.

The only external entry points are blIsHBonded() and blValidHBond()

Revision History:

Definition in file hbond.c.

Macro Definition Documentation

#define DADIST   3.5

Definition at line 112 of file hbond.c.

#define DADISTSQ   (DADIST*DADIST)

Definition at line 113 of file hbond.c.

#define HADIST   2.5

Definition at line 114 of file hbond.c.

#define HADISTSQ   (HADIST*HADIST)

Definition at line 115 of file hbond.c.

Function Documentation

int blIsHBonded ( PDB res1,
PDB res2,
int  type 
)
Parameters
[in]*res1First residue
[in]*res2Second residue
[in]typeHBond type to search for
Returns
HBond type found or 0 if none

Determines whether 2 residues are H-bonded using the crude criteria of Baker & Hubbard, 1984 (Prog. Biophys. & Mol. Biol, 44, 97-179)

N.B. Explicit hydrogens must be added to the PDB linked list before calling this routine!

Searches may be made for any H-bond, or just for those involving backbone or sidechain. These requirements may be combined in any way for the two residues by ORing the appropriate flags in the type variable.

  The flags are:
  HBOND_BACK1 (res1 b/b)
  HBOND_BACK2 (res2 b/b)
  HBOND_SIDE1 (res1 s/c)
  HBOND_SIDE2 (res2 s/c)


  The most common flag combinations are already provided:
  HBOND_BB         (b/b -- b/b)
  HBOND_BS         (b/b -- s/c)
  HBOND_SS         (s/c -- s/c)
  HBOND_SB         (s/c -- b/b)
  HBOND_SIDECHAIN  (s/c -- any)
  HBOND_BACKBONE   (b/b -- any)
  HBOND_ANY        (any -- any)
  • 25.01.96 Original By: ACRM
  • 07.07.14 Use bl prefix for functions By: CTP

Definition at line 173 of file hbond.c.

int blIsMCAcceptorHBonded ( PDB res1,
PDB res2,
int  type 
)
Parameters
[in]*res1First residue
[in]*res2Second residue
[in]typeHBond type to search for
Returns
HBond type found or 0 if none

Determines whether 2 residues are H-bonded using the crude criteria of Baker & Hubbard, 1984 (Prog. Biophys. & Mol. Biol, 44, 97-179)

N.B. Explicit hydrogens must be added to the PDB linked list before calling this routine!

Searches for HBonds, in which the first residue is a mainchain acceptor and the second residue is a donor. Type should be HBOND_BACK2 or HBOND_SIDE2 depending whether the second residue (the acceptor) is backbond or sidechain

  • 17.01.06 Original By: ACRM
  • 07.07.14 Use bl prefix for functions By: CTP

Definition at line 717 of file hbond.c.

int blIsMCDonorHBonded ( PDB res1,
PDB res2,
int  type 
)
Parameters
[in]*res1First residue
[in]*res2Second residue
[in]typeHBond type to search for
Returns
HBond type found or 0 if none

Determines whether 2 residues are H-bonded using the crude criteria of Baker & Hubbard, 1984 (Prog. Biophys. & Mol. Biol, 44, 97-179)

N.B. Explicit hydrogens must be added to the PDB linked list before calling this routine!

Searches for HBonds, in which the first residue is a mainchain donor and the second residue is an acceptor. Type should be HBOND_BACK2 or HBOND_SIDE2 depending whether the second residue (the acceptor) is backbond or sidechain

  • 17.01.06 Original modified from IsHbonded() By: ACRM
  • 07.07.14 Use bl prefix for functions By: CTP

Definition at line 660 of file hbond.c.

HBLIST* blListAllHBonds ( PDB res1,
PDB res2 
)
Parameters
[in]*res1Pointer to first residue
[in]*res2Pointer to second residue
Returns
Linked list of hydrogen bonds

Finds all HBonds between two specified residues

Definition at line 781 of file hbond.c.

void blSetMaxProteinHBondDADistance ( REAL  dist)
Parameters
[in]distDistance

Wrapper to set the static variable for maximum D-A distance

16.06.99 Original By: ACRM

Definition at line 761 of file hbond.c.

BOOL blValidHBond ( PDB AtomH,
PDB AtomD,
PDB AtomA,
PDB AtomP 
)
Parameters
[in]*AtomHThe hydrogen
[in]*AtomDThe donor (to which the H is attached)
[in]*AtomAThe acceptor
[in]*AtomPThe antecedent to the acceptor
Returns
Valid?

Determines whether a set of atoms form a valid H-bond using the Baker and Hubbard criteria

  • 25.01.96 Original By: ACRM
  • 02.06.99 Added NULL antecedent handling to allow calculation of HBonds with missing antecedents. Previously AtomP==NULL was handled as an invalid HBond.
  • 07.07.14 Use bl prefix for functions By: CTP
  • 20.07.15 Changed DADISTSQ to sDADistSq By: ACRM

Definition at line 303 of file hbond.c.