Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Limit hydrogen bond establishment for macromolecules #5987

Open
ljubica-milovic opened this issue Nov 18, 2024 · 0 comments
Open

Limit hydrogen bond establishment for macromolecules #5987

ljubica-milovic opened this issue Nov 18, 2024 · 0 comments
Labels
draft feature request Hydrogen bonds Bucket: Bugs related to Hydrogen bonds

Comments

@ljubica-milovic
Copy link
Collaborator

ljubica-milovic commented Nov 18, 2024

Background

Currently, the user is able to establish a hydrogen bond between any two monomers, and not able to establish bonds with small molecules (ticket for introducing H-bonds: #5403). That is not ideal behavior - thusly, in this ticket, (some) limitation on hydrogen bond establishment will be set, and users will also be able to establish H-bond with small molecules if necessary conditions are met.

Theory

Hydrogen bond donor (or donor)
A donor is any fluorine (F), oxygen (O), or nitrogen (N) bound to hydrogen(s) via a covalent bond.
image

Sufficiently electropositive hydrogen bound to a donor (or donor bound hydrogen)
Any hydrogen bound to a donor via a covalent bond.
image

Hydrogen bond acceptor (or acceptor)
Any fluorine (F), oxygen (O), or nitrogen (N).
image
Note that all the example acceptors can also be donors, except the oxygen on the top (it is not bound to any hydrogens).

Notes

  • H-bonds can only be established between donor bound hydrogens and acceptors.
  • Donor and acceptor for one H-bond do not have to be the same atom (both the donor and the acceptor do not have to be oxygens, for example).
  • One atom can be a donor for one H-bond and an acceptor for another.
  • One donor/acceptor can participate in multiple hydrogen bonds.
  • One donor bound hydrogen can only participate in one H-bond.

Requirements

  1. A hydrogen bond can only be established between monomers where one has a donor bound hydrogen and the other one has an acceptor (taking (un)occupied attachment points into account).

For example, R1 of peptides is (usually) a hydrogen bound to a nitrogen. If the AP is unoccupied, that hydrogen is free to participate in a hydrogen bond. If it is occupied, that hydrogen cannot participate in a hydrogen bond.

  1. When a hydrogen bond is established between two monomers, all possible pairs of donor bound hydrogens and acceptors should be considered to be occupied.

Even though multiple hydrogen bonds between two monomers are represented via a single dashed line, Ketcher should determine how many actual hydrogen bonds there are between them.
Structures should be rotated, and explicit hydrogens added, to determine the maximum number of possible hydrogen bonds that can be drawn with the length of one bond (tolerance of 5%)
Lets look at cytosine and guanine:
image
For C: If the attachment point is occupied, the base has 2 donor bound hydrogens and 4 acceptors, so could theoretically participate in (at least) 6 H-bonds.
For G: If the attachment point is occupied, the base has 3 donor bound hydrogens and 6 acceptors, so could theoretically participate in (at least) 9 H-bonds.
Because an H-bond has to be between an acceptor and a donor bound hydrogen, these two molecules can THEORETICALLY have 5 hydrogen bonds (2 + 3 donor bound hydrogens):
image
Some of the arrangements with multiple H-bonds are these (where every H-bond is the length of a bond):
image
image
But the optimal arrangement with maximum H-bonds is this:
image
Cytosine is than free to participate in at least 2 more H-bonds, and guanine in 4, for example:
image

  1. Hydrogen bonds between small molecules and monomers can only be established between an acceptor on a small molecule and a donor bound hydrogen on a monomer (or the opposite). When one
@ljubica-milovic ljubica-milovic added draft feature request Hydrogen bonds Bucket: Bugs related to Hydrogen bonds labels Nov 18, 2024
@ljubica-milovic ljubica-milovic added this to the Refined Backlog milestone Nov 20, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
draft feature request Hydrogen bonds Bucket: Bugs related to Hydrogen bonds
Projects
None yet
Development

No branches or pull requests

1 participant