Answers.Body: <p>A hydrogen bond donor heavy atom is one that is protonated, while the acceptor has a lone pair. If you talking about amino acids, then it's simple as they are fixed.</p>
  <div class="s-table-container">
  <table class="s-table">
  <thead>
  <tr>
  <th>atom name</th>
  <th>description</th>
  <th>role</th>
  <th>note</th>
  </tr>
  </thead>
  <tbody>
  <tr>
  <td><code>N</code></td>
  <td>backbone nitrogen</td>
  <td>donor</td>
  <td>SS</td>
  </tr>
  <tr>
  <td><code>CA</code></td>
  <td>backbone Cα</td>
  <td>apolar</td>
  <td></td>
  </tr>
  <tr>
  <td><code>C</code></td>
  <td>backbone carboxyl C</td>
  <td>sterically hindered and electrophilic</td>
  <td>nucleophilic attack</td>
  </tr>
  <tr>
  <td><code>O</code></td>
  <td>backbone carboxyl O</td>
  <td>acceptor</td>
  <td>SS</td>
  </tr>
  <tr>
  <td><code>CB</code> etc.</td>
  <td>sidechain carbons</td>
  <td>apolar</td>
  <td></td>
  </tr>
  <tr>
  <td><code>OXT</code></td>
  <td>C-terminal oxygen</td>
  <td>acceptor</td>
  <td>may be protonated especially if a membrane embedded C-terminus</td>
  </tr>
  <tr>
  <td>Serine's <code>OG</code> / Threonine's <code>OG1</code></td>
  <td>sidechain hydroxyl</td>
  <td>donor</td>
  <td>SS: may form ST turns. Fairly uncommon: may be a donor</td>
  </tr>
  <tr>
  <td>Asp <code>OD1</code>/<code>OD2</code>/Asn <code>OD1</code></td>
  <td>sidechain carboxyl/amide O</td>
  <td>acceptor</td>
  <td>SS: may form Asx turns</td>
  </tr>
  <tr>
  <td>Glu <code>OG1</code>/<code>OG2</code>/Gln <code>OG1</code></td>
  <td>sidechain carboxyl/amide O</td>
  <td>acceptor</td>
  <td></td>
  </tr>
  <tr>
  <td>Lysine <code>NZ</code></td>
  <td>sidechain amine</td>
  <td>donor</td>
  <td></td>
  </tr>
  <tr>
  <td>Asn <code>ND2</code> / Gln <code>NG2</code></td>
  <td>terminal admide N</td>
  <td>donor</td>
  <td>the direction of an Asn/Gln may be accidentally filled if manually assigned as N/O have the same density in X-ray crystals</td>
  </tr>
  </tbody>
  </table>
  </div>
  <p>Water can be both a donor and an acceptor.
  Two charged residues form a salt bridge more so than a hydrogen bond, because the interaction is driven by the Coulomb electrostatic forces of the two heavy atoms.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2021-10-28T10:49:17.163Z
Answers.Text: *A hydrogen bond donor heavy atom is one that is protonated, while the acceptor has a lone pair.* -- Does this apply to BioPython's `Atom` object? I mean, can I test or search it using BioPython?
Answers.UserDisplayName: user366312
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2021-10-28T10:57:06.163Z
Answers.Text: Yeah nah. A heavy atom is an atom that diffracts under X-ray crystallography —not hydrogens. The `Atom` instance is a graph network node representation of any atom. It may be a hydrogen —_in silico_ protonated, neutron diffraction or 1H NMR. Technically to the most pedantically punctilious level, it could be virtual (e.g. Drude particle)...
Answers.UserDisplayName: Matteo Ferla
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2021-10-28T11:03:28.627Z
Answers.Text: So, can I use your supplied information and apply them on a PDB file via BioPython and extract donor and acceptor atom info from that PDB file?
Answers.UserDisplayName: user366312
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2021-10-28T11:06:28.987Z
Answers.Text: Totally — assuming a pair is within about 3Å
Answers.UserDisplayName: Matteo Ferla
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2021-10-28T11:10:04.430Z
Answers.Text: So, if I can extract donor and acceptor atom-related info, can I predict Hydrogen bonds in this way?
Answers.UserDisplayName: user366312
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2021-10-28T11:17:39.917Z
Answers.Text: Completely... as said somewhere else though it is way easier working in dihedral space and assigning the SS by Ramachandran plot bins, e.g. see ABEGO bins in SI Fig 1 of https://www.nature.com/articles/s41594-018-0141-6#MOESM1 —however, looking at the hydrogen bonds is more precise as you can better assign the correct type of turns.
Answers.UserDisplayName: Matteo Ferla
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2021-10-28T17:08:43.577Z
Answers.Text: @MatteoFerla so treshold for distance would be  about 3Å, does this change with resolution of the stucture ? what about the bond geometry (https://academic.oup.com/peds/article/15/5/359/1508259)?
Answers.UserDisplayName: pippo1980
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2021-10-28T17:10:14.773Z
Answers.Text: @user366312 I guess you should add hydrogens to your pdb first
Answers.UserDisplayName: pippo1980
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2021-10-28T17:17:04.757Z
Answers.Text: @pippo1980, *I guess you should add hydrogens to your pdb first* --- that option has been forbidden by my P.I. According to him, this adds too much noise to the generated data.
Answers.UserDisplayName: user366312
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2021-10-28T17:26:05.357Z
Answers.Text: 2.8Å is an ideal, >3.2Å is weak. Mathematically the [Lenard-Jones term](https://en.wikipedia.org/wiki/Lennard-Jones_potential) is used in thermodynamic simulations —in the wiki page you can see the potential plateaus quickly.  Sure, the true distance will be marginally affected by the b-factors of the atoms (both anisotropic/isotropic) but in solution the distance is likely a distribution (i.e. the atoms wobbling around).
Answers.UserDisplayName: Matteo Ferla
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2021-10-28T10:27:27.520Z
Answers.LastActivityDate: 2021-10-28T10:27:27.520Z
Answers.UserDisplayName: Matteo Ferla
Body: <p>I know how to traverse through structures, models, residues, and atoms in a protein chain using BioPython (which is very easy).</p>
  <p>How can I identify donor and acceptor atoms in a chain?</p>
  
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2021-10-27T16:59:42.367Z
Comments.Text: donor/acceptor belongs to the main chain (MC) or side chain (SC) of amino acids ??
Comments.UserDisplayName: pippo1980
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2021-10-27T17:24:10.033Z
Comments.Text: @pippo1980, side chain. My target is to measure the distance between donor and acceptor atoms.
Comments.UserDisplayName: user366312
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2021-10-27T17:39:04.130Z
Comments.Text: Ligand or hydrogen atoms of other side chains ? Just trying to put it into a perspective
Comments.UserDisplayName: pippo1980
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2021-10-27T17:44:32.153Z
Comments.Text: I guess once you know coordinates of each putative donor and acceptor, you calculate the distances between all the possible pairs and take the ones under a threshold. My PhD examiner was blabbing about right geometry too … but we were talking about X-ray crystallography no way to know where  the hydrogens are and a kind of middle resolution so … but remember geometry is important too
Comments.UserDisplayName: pippo1980
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2021-10-27T17:45:47.593Z
Comments.Text: Here a informative link https://www.biostars.org/p/182325/ this links to another post : most software simply looks for donor + acceptor pairs separated by an appropriate distance and bond angle.
Comments.UserDisplayName: pippo1980
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2021-10-27T17:53:16.007Z
Comments.Text: @pippo1980, How does DSSP/STRIDE help in finding donor/acceptors? They are just supposed to detect secondary structures, no?
Comments.UserDisplayName: user366312
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2021-10-27T18:47:30.257Z
Comments.Text: Auch you got me !!! Used STRIDE to assign secondary on my models !!! Don’t know how pdf validate nowadays secondary structure signatures : here about stride http://webclu.bio.wzw.tum.de/stride/stride.pdf
Comments.UserDisplayName: pippo1980
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2021-10-27T18:49:41.973Z
Comments.Text: DSSP. Dictionary of Secondary Structure of Proteins (DSSP) assigns eight state secondary structure using hydrogen bonds alone. DSSP defines a hydrogen bond where the bond energy is below -0.5 kcal/mol based on a Coulomb approximation of the hydrogen bond energy.
Comments.UserDisplayName: pippo1980
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2021-10-27T18:52:19.617Z
Comments.Text: My hydrogen bonding problem was about Ligand —> side chain dono/acceptor. Now you can point to new way to asses that for ligand interaction too
Comments.UserDisplayName: pippo1980
Tags: <python><proteins><small-molecules>
Title: How can I identify acceptor and donor atoms using BioPython?
ThreadText: # How can I identify acceptor and donor atoms using BioPython?
  
  (Asked by: username_0 on 2021-10-27)
  
  I know how to traverse through structures, models, residues, and atoms in a protein chain using BioPython (which is very easy).
  
  How can I identify donor and acceptor atoms in a chain?
  
  **Tags:** python, proteins, small-molecules
  
  > **Comments:**
  > **username_1**: donor/acceptor belongs to the main chain (MC) or side chain (SC) of amino acids ??  
  > **username_0**: @username_1, side chain. My target is to measure the distance between donor and acceptor atoms.  
  > **username_1**: Ligand or hydrogen atoms of other side chains ? Just trying to put it into a perspective  
  > **username_1**: I guess once you know coordinates of each putative donor and acceptor, you calculate the distances between all the possible pairs and take the ones under a threshold. My PhD examiner was blabbing about right geometry too … but we were talking about X-ray crystallography no way to know where  the hydrogens are and a kind of middle resolution so … but remember geometry is important too  
  > **username_1**: Here a informative link https://www.biostars.org/p/182325/ this links to another post : most software simply looks for donor + acceptor pairs separated by an appropriate distance and bond angle.  
  > **username_0**: @username_1, How does DSSP/STRIDE help in finding donor/acceptors? They are just supposed to detect secondary structures, no?  
  > **username_1**: Auch you got me !!! Used STRIDE to assign secondary on my models !!! Don’t know how pdf validate nowadays secondary structure signatures : here about stride http://webclu.bio.wzw.tum.de/stride/stride.pdf  
  > **username_1**: DSSP. Dictionary of Secondary Structure of Proteins (DSSP) assigns eight state secondary structure using hydrogen bonds alone. DSSP defines a hydrogen bond where the bond energy is below -0.5 kcal/mol based on a Coulomb approximation of the hydrogen bond energy.  
  > **username_1**: My hydrogen bonding problem was about Ligand —> side chain dono/acceptor. Now you can point to new way to asses that for ligand interaction too  
  
  ---
  
  ## 1 answers
  
  ### Answer by username_2 on 2021-10-28. Score: 3 | Accepted answer
  
  A hydrogen bond donor heavy atom is one that is protonated, while the acceptor has a lone pair. If you talking about amino acids, then it's simple as they are fixed.
  
  | atom name | description | role | note |
  | --- | --- | --- | --- |
  | `N` | backbone nitrogen | donor | SS |
  | `CA` | backbone Cα | apolar |  |
  | `C` | backbone carboxyl C | sterically hindered and electrophilic | nucleophilic attack |
  | `O` | backbone carboxyl O | acceptor | SS |
  | `CB` etc. | sidechain carbons | apolar |  |
  | `OXT` | C-terminal oxygen | acceptor | may be protonated especially if a membrane embedded C-terminus |
  | Serine's `OG` / Threonine's `OG1` | sidechain hydroxyl | donor | SS: may form ST turns. Fairly uncommon: may be a donor |
  | Asp `OD1`/`OD2`/Asn `OD1` | sidechain carboxyl/amide O | acceptor | SS: may form Asx turns |
  | Glu `OG1`/`OG2`/Gln `OG1` | sidechain carboxyl/amide O | acceptor |  |
  | Lysine `NZ` | sidechain amine | donor |  |
  | Asn `ND2` / Gln `NG2` | terminal admide N | donor | the direction of an Asn/Gln may be accidentally filled if manually assigned as N/O have the same density in X-ray crystals |
  
  Water can be both a donor and an acceptor.
  Two charged residues form a salt bridge more so than a hydrogen bond, because the interaction is driven by the Coulomb electrostatic forces of the two heavy atoms.
  
  > **Comments:**
  > **username_0**: *A hydrogen bond donor heavy atom is one that is protonated, while the acceptor has a lone pair.* -- Does this apply to BioPython's `Atom` object? I mean, can I test or search it using BioPython?  
  > **username_2**: Yeah nah. A heavy atom is an atom that diffracts under X-ray crystallography —not hydrogens. The `Atom` instance is a graph network node representation of any atom. It may be a hydrogen —_in silico_ protonated, neutron diffraction or 1H NMR. Technically to the most pedantically punctilious level, it could be virtual (e.g. Drude particle)...  
  > **username_0**: So, can I use your supplied information and apply them on a PDB file via BioPython and extract donor and acceptor atom info from that PDB file?  
  > **username_2**: Totally — assuming a pair is within about 3Å  
  > **username_0**: So, if I can extract donor and acceptor atom-related info, can I predict Hydrogen bonds in this way?  
  > **username_2**: Completely... as said somewhere else though it is way easier working in dihedral space and assigning the SS by Ramachandran plot bins, e.g. see ABEGO bins in SI Fig 1 of https://www.nature.com/articles/s41594-018-0141-6#MOESM1 —however, looking at the hydrogen bonds is more precise as you can better assign the correct type of turns.  
  > **username_1**: @username_2 so treshold for distance would be  about 3Å, does this change with resolution of the stucture ? what about the bond geometry (https://academic.oup.com/peds/article/15/5/359/1508259)?  
  > **username_1**: @username_0 I guess you should add hydrogens to your pdb first  
  > **username_0**: @username_1, *I guess you should add hydrogens to your pdb first* --- that option has been forbidden by my P.I. According to him, this adds too much noise to the generated data.  
  > **username_2**: 2.8Å is an ideal, >3.2Å is weak. Mathematically the [Lenard-Jones term](https://en.wikipedia.org/wiki/Lennard-Jones_potential) is used in thermodynamic simulations —in the wiki page you can see the potential plateaus quickly.  Sure, the true distance will be marginally affected by the b-factors of the atoms (both anisotropic/isotropic) but in solution the distance is likely a distribution (i.e. the atoms wobbling around).  
  
  ---
  
  