RDKit: ReducedGraphs.h Source File

| RDKit Open-source cheminformatics and machine learning.

- Main Page
- Namespaces
- Classes
- Files

- File List
- File Members

ReducedGraphs.h
Go to the documentation of this file.
1 //
2 // Copyright (C) 2013 Greg Landrum
3 //
4 // @@ All Rights Reserved @@
5 // This file is part of the RDKit.
6 // The contents are covered by the terms of the BSD license
7 // which is included in the file license.txt, found at the root
8 // of the RDKit source tree.
9 //
10 #ifndef _RD_REDUCEDGRAPHS_H_
11 #define _RD_REDUCEDGRAPHS_H_
12
13 #include <vector>
14 #include <boost/cstdint.hpp>
15 #include <boost/dynamic_bitset.hpp>
16 #include <Numerics/Vector.h>
17
18 namespace RDKit {
19 class ROMol;
20
21 namespace ReducedGraphs {
22 //! \brief Generates a reduced graph representation of a molecule
23 /*!
24
25 \param mol: the molecule to be fingerprinted
26
27 \return a new molecule
28
29 <b>Notes:</b>
30 - the caller is responsible for <tt>delete</tt>ing the result
31
32 */
33 ROMol *generateMolExtendedReducedGraph(
34 const ROMol &mol, std::vector<boost::dynamic_bitset<> > *atomTypes = 0);
35 //! \brief Generates a ErG fingerprint vector for a molecule that's already a
36 // reduced graph
37 /*!
38
39 \param mol: the molecule to be fingerprinted
40 \param atomTypes: [optional] contains bit vectors indicating whether each
41 atom in
42 the molecule matches each type.
43 \param fuzzIncrement: amount to be added to neighboring bins
44 \param minPath: minimum distance (in bonds) to be considered
45 \param maxPath: maximum distance (in bonds) to be considered
46
47 \return the fingerprint, as a DoubleVector
48
49 <b>Notes:</b>
50 - the caller is responsible for <tt>delete</tt>ing the result
51
52 */
53 RDNumeric::DoubleVector *generateErGFingerprintForReducedGraph(
54 const ROMol &mol, std::vector<boost::dynamic_bitset<> > *atomTypes = 0,
55 double fuzzIncrement = 0.3, unsigned int minPath = 1,
56 unsigned int maxPath = 15);
57
58 //! \brief Generates a ErG fingerprint vector for a molecule
59 /*!
60
61 \param mol: the molecule to be fingerprinted
62 \param atomTypes: [optional] contains bit vectors indicating whether each
63 atom in
64 the molecule matches each type.
65 \param fuzzIncrement: amount to be added to neighboring bins
66 \param minPath: minimum distance (in bonds) to be considered
67 \param maxPath: maximum distance (in bonds) to be considered
68
69 \return the fingerprint, as a DoubleVector
70
71 <b>Notes:</b>
72 - the caller is responsible for <tt>delete</tt>ing the result
73
74 */
75 RDNumeric::DoubleVector *getErGFingerprint(
76 const ROMol &mol, std::vector<boost::dynamic_bitset<> > *atomTypes = 0,
77 double fuzzIncrement = 0.3, unsigned int minPath = 1,
78 unsigned int maxPath = 15);
79 } // end of ReducedGraphs namespace
80 } // end of RDKit namespace
81
82 #endif
RDKit::ReducedGraphs::getErGFingerprint
RDNumeric::DoubleVector * getErGFingerprint(const ROMol &mol, std::vector< boost::dynamic_bitset<> > *atomTypes=0, double fuzzIncrement=0.3, unsigned int minPath=1, unsigned int maxPath=15)
Generates a ErG fingerprint vector for a molecule.
RDKit::ROMol
ROMol is a molecule class that is intended to have a fixed topology.
Definition: ROMol.h:103
RDKit
Std stuff.
Definition: Atom.h:29
Vector.h
RDKit::ReducedGraphs::generateErGFingerprintForReducedGraph
RDNumeric::DoubleVector * generateErGFingerprintForReducedGraph(const ROMol &mol, std::vector< boost::dynamic_bitset<> > *atomTypes=0, double fuzzIncrement=0.3, unsigned int minPath=1, unsigned int maxPath=15)
Generates a ErG fingerprint vector for a molecule that&#39;s already a.
RDKit::ReducedGraphs::generateMolExtendedReducedGraph
ROMol * generateMolExtendedReducedGraph(const ROMol &mol, std::vector< boost::dynamic_bitset<> > *atomTypes=0)
Generates a reduced graph representation of a molecule.
RDNumeric::Vector
A class to represent vectors of numbers.
Definition: Vector.h:28