OEPerceiveInteractionOptions¶
class OEPerceiveInteractionOptions
This class is a container for all the parameters that control interaction
perception when
invoking the OEPerceiveInteractionHints
function.
The current list of interactions include:
cation-pi (see also OECationPiInteractionHint class and
OECationPiInteractionHintType
namespace)clashes (see also OEClashInteractionHint class)
contacts (see also OEContactInteractionHint class)
metal interactions (see also OEChelatorInteractionHint class and
OEChelatorInteractionHintType
namespace)covalents (see also OECovalentInteractionHint class)
halogen bonds (see also OEHalogenBondInteractionHint class and
OEHalogenBondInteractionHintType
namespace)hydrogen bonds (see also OEHBondInteractionHint class and
OEHBondInteractionHintType
namespace)salt-bridges (see also OESaltBridgeInteractionHint class and
OESaltBridgeInteractionHintType
namespace)Pi and T stacking (see also OEStackingInteractionHint class and
OEStackingInteractionHintType
namespace)
Each interaction type has one or more parameters that control its perception. In addition, hydrogen-bonding clashes, intramolecular hydrogen-bonds, unpaired hydrogen-bonds and unpaired salt-bridges are also perceived. Unpaired interactions are those that are near the protein-ligand interface, but do not form an apparent bond.
Get method |
Set method |
Interaction type(s) |
Default value |
salt bridge |
|||
hbond |
30 degrees |
||
cation-Pi |
40 degrees |
||
cation-Pi |
5.5 Ångströms |
||
hbond |
3.5 Ångströms |
||
contact |
1.2 |
||
covalent |
1.1 |
||
hbond |
35 degrees |
||
hbond |
3.2 Ångströms |
||
halogen bond |
35 degrees |
||
halogen bond |
3.2 Ångströms |
||
chelator |
3.5 Ångströms |
||
hbond |
30 degrees |
||
hbond |
45 degrees |
||
hbond |
3.8 Ångströms |
||
Pi-stacking |
\(\frac{\pi}{9.0}\) |
||
Pi-stacking |
5.0 Ångströms |
||
salt bridge |
5.0 Ångströms |
||
T-stacking |
\(\frac{\pi}{9.0}\) |
||
T-stacking |
5.35 Ångströms |
||
hbond |
\(\frac{\pi}{2}\) |
||
hbond |
5.0 Ångströms |
||
contact, clash |
0.8 |
||
covalent |
0.9 |
||
hbond |
0.5 |
Constructors¶
OEPerceiveInteractionOptions()
The default constructor for perception of interaction options. It sets all of the interaction parameters to their default value.
GetExtendedSaltBridgeDistance¶
double GetExtendedSaltBridgeDistance() const
Actual salt bridge interaction distance is calculated from the geometric centers of the two interacting
charge groups, which may or may not be comprised of a single atom. The distance returned by this function
is the maximum distance between two formally charged atoms for subsequent identification of charge groups.
This is a simple increment larger than the value associated with
OEPerceiveInteractionOptions.GetMaxSaltBridgeDistance
and
OEPerceiveInteractionOptions.SetMaxSaltBridgeDistance
.
GetMaxAcceptorAngle¶
double GetMaxAcceptorAngle() const
Returns the value set by OEPerceiveInteractionOptions.SetMaxAcceptorAngle
.
GetMaxCationPiAngle¶
double GetMaxCationPiAngle() const
Returns the value set by OEPerceiveInteractionOptions.SetMaxCationPiAngle
.
GetMaxCationPiDistance¶
double GetMaxCationPiDistance() const
Returns the value set by OEPerceiveInteractionOptions.SetMaxCationPiDistance
.
GetMaxChargeAidedHBondDistance¶
double GetMaxChargeAidedHBondDistance() const
Returns the value set by OEPerceiveInteractionOptions.SetMaxChargeAidedHBondDistance
.
GetMaxContactFraction¶
double GetMaxContactFraction() const
Returns the value set by OEPerceiveInteractionOptions.SetMaxContactFraction
.
GetMaxCovalentFraction¶
double GetMaxCovalentFraction() const
Returns the value set by OEPerceiveInteractionOptions.SetMaxCovalentFraction
.
GetMaxDonorAngle¶
double GetMaxDonorAngle() const
Returns the value set by OEPerceiveInteractionOptions.SetMaxDonorAngle
.
GetMaxHBondDistance¶
double GetMaxHBondDistance() const
Returns the value set by OEPerceiveInteractionOptions.SetMaxHBondDistance
.
GetMaxHalogenAngle¶
double GetMaxHalogenAngle() const
Returns the value set by OEPerceiveInteractionOptions.SetMaxHalogenAngle
.
GetMaxHalogenBondDistance¶
double GetMaxHalogenBondDistance() const
Returns the value set by OEPerceiveInteractionOptions.SetMaxHalogenBondDistance
.
GetMaxMetalBondDistance¶
double GetMaxMetalBondDistance() const
Returns the value set by OEPerceiveInteractionOptions.SetMaxMetalBondDistance
.
GetMaxNonIdealAcceptorAngle¶
double GetMaxNonIdealAcceptorAngle() const
Returns the value set by OEPerceiveInteractionOptions.SetMaxNonIdealAcceptorAngle
.
GetMaxNonIdealDonorAngle¶
double GetMaxNonIdealDonorAngle() const
Returns the value set by OEPerceiveInteractionOptions.SetMaxNonIdealDonorAngle
.
GetMaxNonIdealHBondDistance¶
double GetMaxNonIdealHBondDistance() const
Returns the value set by OEPerceiveInteractionOptions.SetMaxNonIdealHBondDistance
.
GetMaxPiStackAngle¶
double GetMaxPiStackAngle() const
Returns the value set by OEPerceiveInteractionOptions.SetMaxPiStackAngle
.
GetMaxPiStackDistance¶
double GetMaxPiStackDistance() const
Returns the value set by OEPerceiveInteractionOptions.SetMaxPiStackDistance
.
GetMaxSaltBridgeDistance¶
double GetMaxSaltBridgeDistance() const
Returns the value set by OEPerceiveInteractionOptions.SetMaxSaltBridgeDistance
.
GetMaxTStackAngle¶
double GetMaxTStackAngle() const
Returns the value set by OEPerceiveInteractionOptions.SetMaxTStackAngle
.
GetMaxTStackDistance¶
double GetMaxTStackDistance() const
Returns the value set by OEPerceiveInteractionOptions.SetMaxTStackDistance
.
GetMaxUnpairedAngle¶
double GetMaxUnpairedAngle() const
Returns the value set by OEPerceiveInteractionOptions.SetMaxUnpairedAngle
.
GetMaxUnpairedDistance¶
double GetMaxUnpairedDistance() const
Returns the value set by OEPerceiveInteractionOptions.SetMaxUnpairedDistance
.
GetMinContactFraction¶
double GetMinContactFraction() const
Returns the value set by OEPerceiveInteractionOptions.SetMinContactFraction
.
GetMinCovalentFraction¶
double GetMinCovalentFraction() const
Returns the value set by OEPerceiveInteractionOptions.SetMinCovalentFraction
.
GetMinHBondContactFraction¶
double GetMinHBondContactFraction() const
Returns the value set by OEPerceiveInteractionOptions.SetMinHBondContactFraction
.
SetMaxAcceptorAngle¶
void SetMaxAcceptorAngle(double radians)
In perception of a hydrogen bond, we define the angle \(X-A...D\), where A and D are the acceptor and donor respectively, and X is one or more points in space that are located so that an idealized hydrogen-bond would give an angle of \(\pi\). The maximum acceptor angle is the maximum allowed deviation (in radians) from the idealized angle (or the minimum deviation from multiple angles when more than one X position is possible).
Default= \((\pi * \frac{10.0}{36.0})\) = 50 degrees
SetMaxCationPiAngle¶
void SetMaxCationPiAngle(double radians)
This option sets the maximum allowed angle defined by a point on the vector normal from the pi ring system, the geometric center of the ring system and the geometric center of the charged system. For the purposes of Cation Pi interaction hints, only Lysine, N-methyl Lysine and Arginine are recognized cations. For Lysine and N-methyl Lysine, the charge center is the charged Nitrogen atom, while for the Arginine residue, the charge center will be the geometric center of the Carbon and three Nitrogen atoms that share the resonant charge. Each smallest aromatic ring (independent of ring fusions) is considered separately and a cation can interact with more than one pi system simultaneously.
Default= \((\pi * \frac{10.0}{36.0})\) = 50 degrees
See also
SetMaxCationPiDistance¶
void SetMaxCationPiDistance(double dist)
This is the maximum allowed distance between the center of a cation system and the center of an aromatic pi system. For the purposes of Cation Pi interaction hints, only Lysine, N-methyl Lysine and Arginine are recognized cations. Each smallest aromatic ring (independent of ring fusions) is considered separately and a cation can interact with more than one pi system simultaneously.
Default= 5.5 Ångströms
See also
SetMaxChargeAidedHBondDistance¶
void SetMaxChargeAidedHBondDistance(double dist)
For the purpose of hydrogen bond perception, charge assisted hydrogen bonds, are identified when one of the two bonding partners is part of a functional group with a net formal charge. These interactions include dipole - charge interactions and are perceived at slightly longer range than simple hydrogen- bonds by default.
Default= 3.5 Ångströms
SetMaxContactFraction¶
void SetMaxContactFraction(double frac)
Van der Waals interactions are perceived as non-interacting, in attractive contact, or clashing. The three
classes are determined by comparing the atom - atom distance Daa to the sum of the
van der Waals radii of the two atoms VDWtot. The distance Daa is represented as a
fraction of VDWtot which we will call Faa. If the value of Faa is greater than
the value stored in
OEPerceiveInteractionOptions.SetMaxContactFraction
, then the two atoms are
non-interacting. If the value of Faa is between the values set by
OEPerceiveInteractionOptions.SetMaxContactFraction
and
OEPerceiveInteractionOptions.SetMinContactFraction
then the atoms are in attractive
contact. If the value of Faa is less than
OEPerceiveInteractionOptions.SetMinContactFraction
then the atoms are clashing.
Any two atoms that are forming a hydrogen bond can be in attractive contact at shorter distances than
generic atom pairs because of the balance of forces. To handle this, when two atoms are forming a
hydrogen bond, the value of Faa is compared to
OEPerceiveInteractionOptions.SetMinHBondContactFraction
to determine clashing
rather than OEPerceiveInteractionOptions.SetMinContactFraction
.
Default = 1.2
SetMaxCovalentFraction¶
void SetMaxCovalentFraction(double frac)
This function sets the maximum ratio of the distance between to atoms to the sum of their covalent radii allowed for perception of a covalent bond.
Covalent interactions are perceived based on comparing the distance between two atoms D to the
sum of the covalent radii SumRc. If D is > SumRc times the value set by
OEPerceiveInteractionOptions.SetMinCovalentFraction
and D is < SumRc times the
value set by OEPerceiveInteractionOptions.SetMaxCovalentFraction
, then a covalent
interaction will be perceived. Currently no angle constraint is used in perceiving covalent interactions.
Hydrogen and Halide atoms as well as water molecules are excluded from covalent interaction hint perception. Metal atom interactions are perceived as OEChelatorInteractionHint rather than as covalent interactions.
When a covalent interaction exists between atom P of the protein and atom L of the ligand, then no other interactions will be perceived for atoms P and L. Further, atoms bonded to atoms L and P will be excluded from perception of clash or contact interactions. Bonded atoms will be able to participate in other interactions such as hydrogen bonding.
Default = 1.1
See also
SetMaxDonorAngle¶
void SetMaxDonorAngle(double radians)
In the perception of a hydrogen bond with the interaction \(A...H-D\), the angle \(A-D-H\) is ideally zero in most cases. This function determines the maximum allowed value of this angle in a perceived hydrogen-bond.
Default = \((\pi * \frac{7.0}{36.0})\) = 35 degrees
SetMaxHBondDistance¶
void SetMaxHBondDistance(double dist)
This function sets the maximum distance between the donor and acceptor heavy atoms for a hydrogen-bond to be perceived.
Default = 3.2 Ångströms
SetMaxHalogenAngle¶
void SetMaxHalogenAngle(double radians)
In the perception of halogen bonds, there is an angle formed between \(R-X...E/N\) where X is a univalent halogen, E/N are the electrophile or nucleophile, and R is the attachment of the halogen. For nucleophiles, the ideal interaction angle is \(\pi\), for electrophiles, the ideal interaction angle \(\frac{\pi}{2}\). This function determines the maximum allowed deviation (in radian) from these ideal angles, respectively, for perception of a halogen bond.
Default = \((\pi * \frac{7.0}{36.0})\) = 35 degrees
See also
SetMaxHalogenBondDistance¶
void SetMaxHalogenBondDistance(double dist)
This is the maximum distance between the halogen atom and the electrophile or nucleophile atom for perception of a halogen bond.
Default = 3.2 Ångströms
See also
SetMaxMetalBondDistance¶
void SetMaxMetalBondDistance(double dist)
This is the maximum distance allowed for an interaction to be perceived between a metal atom and a chelating non-metal atom.
Default = 3.5 Ångströms
SetMaxNonIdealAcceptorAngle¶
void SetMaxNonIdealAcceptorAngle(double radians)
Sets the maximum angle deviation (in radian) from the non-ideal angle.
Default= \((\pi * \frac{14.0}{36.0})\) = 70 degrees
See also
SetMaxNonIdealDonorAngle¶
void SetMaxNonIdealDonorAngle(double radians)
Sets the maximum allowed value of this angle in a perceived non-ideal hydrogen bond.
Default= \((\pi * \frac{10.0}{36.0})\) = 50 degrees
See also
SetMaxNonIdealHBondDistance¶
void SetMaxNonIdealHBondDistance(double dist)
This function sets the maximum distance between the donor and acceptor heavy atoms for a non-ideal hydrogen bond to be perceived.
Default = 3.7 Ångströms
SetMaxPiStackAngle¶
void SetMaxPiStackAngle(double radians)
Sets the maximum angle deviation (in radian) from the ideal angle calculated between the two aromatic ring normals to be considered for Pi-stacking interaction.
Default = \(\frac{\pi}{9.0}\)
See also
SetMaxPiStackDistance¶
void SetMaxPiStackDistance(double dist)
Sets the maximum distance (in Ångström) allowed between the geometric center of two aromatic rings in order to being considered for Pi-stacking interaction.
Default = 5.0 Ångströms
See also
SetMaxSaltBridgeDistance¶
void SetMaxSaltBridgeDistance(double dist)
Sets the maximum distance (in Ångströms) allowed between the geometric centers of the two formally charged groups in a perceived salt bridge interaction.
Default = 5.0 Ångströms
See also
SetMaxTStackAngle¶
void SetMaxTStackAngle(double radians)
Sets the maximum angle deviation (in radian) from the ideal angle (\(\frac{\pi}{2}\)) calculated between the two aromatic ring normals to be considered for T-stacking interaction.
Default = \(\frac{\pi}{9.0}\)
See also
SetMaxTStackDistance¶
void SetMaxTStackDistance(double dist)
Sets the maximum distance (in Ångström) allowed between the geometric center of two aromatic rings in order to being considered for T-stacking interaction.
Default = 5.35 Ångströms
See also
SetMaxUnpairedAngle¶
void SetMaxUnpairedAngle(double radians)
In perception of unpaired interactions, the unpaired potential interaction group should be oriented toward the ligand or protein where it could make an interaction. This is the maximum deviation (in radian) allowed between the potential interaction group and the nearest potential partner atom.
Default = \(\frac{\pi}{2}\)
See also
SetMaxUnpairedDistance¶
void SetMaxUnpairedDistance(double dist)
In perception of unpaired interactions, the unpaired potential interaction group should be within a minimum distance of the nearest potential paired atom. This function sets the maximum distance (in Ångströms) for perception of an unpaired potential.
Default = 5.0 Ångströms
See also
SetMinContactFraction¶
void SetMinContactFraction(double frac)
der Waals interactions are perceived as non-interacting, in attractive contact, or clashing. The three
classes are determined by comparing the atom - atom distance Daa to the sum of the
van der Waals radii of the two atoms VDWtot. The distance Daa is represented as a
fraction of VDWtot which we will call Faa. If the value of Faa is greater than
the value stored in
OEPerceiveInteractionOptions.SetMaxContactFraction
, then the two atoms are
non-interacting. If the value of Faa is between the values set by
OEPerceiveInteractionOptions.SetMaxContactFraction
and
OEPerceiveInteractionOptions.SetMinContactFraction
then the atoms are in attractive
contact. If the value of Faa is less than
OEPerceiveInteractionOptions.SetMinContactFraction
then the atoms are clashing.
Any two atoms that are forming a hydrogen bond can be in attractive contact at shorter distances than
generic atom pairs because of the balance of forces. To handle this, when two atoms are forming a
hydrogen bond, the value of Faa is compared to
OEPerceiveInteractionOptions.SetMinHBondContactFraction
to determine clashing
rather than OEPerceiveInteractionOptions.SetMinContactFraction
.
Default = 0.8
SetMinCovalentFraction¶
void SetMinCovalentFraction(double frac)
This function sets the minimum ratio of the distance between to atoms to the sum of their covalent radii allowed for perception of a covalent bond.
Covalent interactions are perceived based on comparing the distance between two atoms D to the
sum of the covalent radii SumRc. If D is > SumRc times the value set by
OEPerceiveInteractionOptions.SetMinCovalentFraction
and D is < SumRc times the
value set by OEPerceiveInteractionOptions.SetMaxCovalentFraction
, then a covalent
interaction will be perceived. Currently no angle constraint is used in perceiving covalent interactions.
Hydrogen and Halide atoms as well as water molecules are excluded from covalent interaction hint perception. Metal atom interactions are perceived as OEChelatorInteractionHint rather than as covalent interactions.
When a covalent interaction exists between atom P of the protein and atom L of the ligand, then no other interactions will be perceived for atoms P and L. Further, atoms bonded to atoms L and P will be excluded from perception of clash or contact interactions. Bonded atoms will be able to participate in other interactions such as hydrogen bonding.
Default = 0.9
See also
SetMinHBondContactFraction¶
void SetMinHBondContactFraction(double frac)
der Waals interactions are perceived as non-interacting, in attractive contact, or clashing. The three
classes are determined by comparing the atom - atom distance Daa to the sum of the
van der Waals radii of the two atoms VDWtot. The distance Daa is represented as a
fraction of VDWtot which we will call Faa. If the value of Faa is greater than
the value stored in
OEPerceiveInteractionOptions.SetMaxContactFraction
, then the two atoms are
non-interacting. If the value of Faa is between the values set by
OEPerceiveInteractionOptions.SetMaxContactFraction
and
OEPerceiveInteractionOptions.SetMinContactFraction
then the atoms are in attractive
contact. If the value of Faa is less than
OEPerceiveInteractionOptions.SetMinContactFraction
then the atoms are clashing.
Any two atoms that are forming a hydrogen bond can be in attractive contact at shorter distances than
generic atom pairs because of the balance of forces. To handle this, when two atoms are forming a
hydrogen bond, the value of Faa is compared to
OEPerceiveInteractionOptions.SetMinHBondContactFraction
to determine clashing
rather than OEPerceiveInteractionOptions.SetMinContactFraction
.
Default = 0.5