TopologicalPharmacophoreAtomTripletsFingerprints
use Fingerprints::TopologicalPharmacophoreAtomTripletsFingerprints;
use Fingerprints::TopologicalPharmacophoreAtomTripletsFingerprints qw(:all);
TopologicalPharmacophoreAtomTripletsFingerprints [ Ref 66, Ref 68-71 ] class provides the following methods:
new, GenerateFingerprints, GetDescription, GetAtomTripletIDs, SetAtomTypesToUse, SetDistanceBinSize, SetMaxDistance, SetMinDistance, StringifyTopologicalPharmacophoreAtomTripletsFingerprints
TopologicalPharmacophoreAtomTripletsFingerprints is derived from Fingerprints class which in turn is derived from ObjectProperty base class that provides methods not explicitly defined in TopologicalPharmacophoreAtomTripletsFingerprints, Fingerprints or ObjectProperty classes using Perl's AUTOLOAD functionality. These methods are generated on-the-fly for a specified object property:
Based on the values specified for AtomTypesToUse, pharmacophore atom types are assigned to all non-hydrogen atoms in a molecule and a distance matrix is generated. Using MinDistance, MaxDistance, and DistanceBinSize values, a binned distance matrix is generated with lower bound on the distance bin as the distance in distance matrix; the lower bound on the distance bin is also used as the distance between atom pairs for generation of atom triplet identifiers.
A pharmacophore atom triplets basis set is generated for all unique atom triplets constituting atom pairs binned distances between --MinDistance and --MaxDistance. The value of --UseTriangleInequality determines whether the triangle inequality test is applied during generation of atom triplets basis set. The lower distance bound, along with specified pharmacophore types, is used during generation of atom triplet IDs.
Using binned distance matrix and pharmacohore atom types, occurrence of unique pharmacohore atom triplets is counted.
The final pharmacophore atom triples count along with atom pair identifiers involving all non-hydrogen atoms constitute pharmacophore topological atom triplets fingerprints of the molecule.
For ArbitrarySize value of AtomTripletsSetSizeToUse, the fingerprint vector correspond to only those topological pharmacophore atom triplets which are present and have non-zero count. However, for FixedSize value of AtomTripletsSetSizeToUse, the fingerprint vector contains all possible valid topological pharmacophore atom triplets with both zero and non-zero count values.
The current release of MayaChemTools generates the following types of topological pharmacophore atom triplets fingerprints vector strings:
Using specified TopologicalPharmacophoreAtomTripletsFingerprints property names and values hash, new method creates a new object and returns a reference to newly created TopologicalPharmacophoreAtomTripletsFingerprints object. By default, the following properties are initialized:
Examples:
Returns a string containing description of topological pharmacophore atom triplets fingerprints.
Generates topological pharmacophore atom triplets fingerprints and returns TopologicalPharmacophoreAtomTripletsFP.
Returns atom triplet IDs corresponding to atom pairs count values in topological pharmacophore atom triplet fingerprints vector as an array or reference to an array.
Sets pharmacophore atom triplets set size to use for topological pharmacophore fingerprints generation and returns TopologicalPharmacophoreAtomTripletsFingerprints.
Possible values for pharmacophore atom triplets set size are: ArbitrarySize, FizedSize. Default value: ArbitrarySize.
For ArbitrarySize value of AtomTripletsSetSizeToUse, the fingerprint vector correspond to only those topological pharmacophore atom triplets which are present and have non-zero count. However, for FixedSize value of AtomTripletsSetSizeToUse, the fingerprint vector contains all possible valid topological pharmacophore atom triplets with both zero and non-zero count values.
Sets pharmacophore atom types to use for topological pharmacophore fingerprints generation and returns TopologicalPharmacophoreAtomTripletsFingerprints.
Possible values for pharmacophore atom types are: Ar, CA, H, HBA, HBD, Hal, NI, PI, RA. Default value [ Ref 71 ] : HBD,HBA,PI,NI,H,Ar.
The pharmacophore atom types abbreviations correspond to:
AtomTypes::FunctionalClassAtomTypes module is used to assign pharmacophore atom types. It uses following definitions [ Ref 60-61, Ref 65-66 ]:
Sets distance bin size used to bin distances between atom pairs in atom triplets and returns TopologicalPharmacophoreAtomTriplesFP.
For default MinDistance and MaxDistance values of 1 and 10 with DistanceBinSize of 2 [ Ref 70 ], the following 5 distance bins are generated:
The lower distance bound on the distance bin is uses to bin the distance between atom pairs in atom triplets. So in the previous example, atom pairs with distances 1 and 2 fall in first distance bin, atom pairs with distances 3 and 4 fall in second distance bin and so on.
In order to distribute distance bins of equal size, the last bin is allowed to go past MaxDistance by up to distance bin size. For example, MinDistance and MaxDistance values of 2 and 10 with DistanceBinSize of 2 generates the following 6 distance bins:
Sets maximum bond distance between atom pairs corresponding to atom triplets for generating topological pharmacophore atom triplets fingerprints and returns TopologicalPharmacophoreAtomTriplesFP.
Sets minimum bond distance between atom pairs corresponding to atom triplets for generating topological pharmacophore atom triplets fingerprints and returns TopologicalPharmacophoreAtomTriplesFP.
Returns a string containing information about TopologicalPharmacophoreAtomTripletsFingerprints object.
Fingerprints.pm, FingerprintsStringUtil.pm, AtomNeighborhoodsFingerprints.pm, AtomTypesFingerprints.pm, EStateIndiciesFingerprints.pm, ExtendedConnectivityFingerprints.pm, MACCSKeys.pm, PathLengthFingerprints.pm, TopologicalAtomPairsFingerprints.pm, TopologicalAtomTripletsFingerprints.pm, TopologicalAtomTorsionsFingerprints.pm, TopologicalPharmacophoreAtomPairsFingerprints.pm
Copyright (C) 2024 Manish Sud. All rights reserved.
This file is part of MayaChemTools.
MayaChemTools is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.