RDKit: ReducedGraphs.h Source File

| RDKit Open-source cheminformatics and machine learning.

Loading...
Searching...
No Matches
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#include <RDGeneral/export.h>
11#ifndef _RD_REDUCEDGRAPHS_H_
12#define _RD_REDUCEDGRAPHS_H_
13
14#include <vector>
15#include <cstdint>
16#include <boost/dynamic_bitset.hpp>
17#include <Numerics/Vector.h>
18
19namespace RDKit {
20class ROMol;
21
22 namespace ReducedGraphs {
23//! \brief Generates a reduced graph representation of a molecule
24/*!
25
26 \param mol: the molecule to be fingerprinted
27
28 \return a new molecule
29
30 <b>Notes:</b>
31 - the caller is responsible for <tt>delete</tt>ing the result
32
33*/
34 RDKIT_REDUCEDGRAPHS_EXPORT ROMol *generateMolExtendedReducedGraph(
35 const ROMol &mol,
36 std::vector<boost::dynamic_bitset<>> *atomTypes = nullptr);
37//! \brief Generates a ErG fingerprint vector for a molecule that's already a
38/// reduced graph
39/*!
40
41 \param mol: the molecule to be fingerprinted
42 \param atomTypes: [optional] contains bit vectors indicating whether each
43 atom in
44 the molecule matches each type.
45 \param fuzzIncrement: amount to be added to neighboring bins
46 \param minPath: minimum distance (in bonds) to be considered
47 \param maxPath: maximum distance (in bonds) to be considered
48
49 \return the fingerprint, as a DoubleVector
50
51 <b>Notes:</b>
52 - the caller is responsible for <tt>delete</tt>ing the result
53
54*/
55 RDKIT_REDUCEDGRAPHS_EXPORT RDNumeric::DoubleVector *
56generateErGFingerprintForReducedGraph(
57 const ROMol &mol, std::vector<boost::dynamic_bitset<>> *atomTypes = nullptr,
58 double fuzzIncrement = 0.3, unsigned int minPath = 1,
59 unsigned int maxPath = 15);
60
61//! \brief Generates a ErG fingerprint vector for a molecule
62/*!
63
64 \param mol: the molecule to be fingerprinted
65 \param atomTypes: [optional] contains bit vectors indicating whether each
66 atom in
67 the molecule matches each type.
68 \param fuzzIncrement: amount to be added to neighboring bins
69 \param minPath: minimum distance (in bonds) to be considered
70 \param maxPath: maximum distance (in bonds) to be considered
71
72 \return the fingerprint, as a DoubleVector
73
74 <b>Notes:</b>
75 - the caller is responsible for <tt>delete</tt>ing the result
76
77*/
78 RDKIT_REDUCEDGRAPHS_EXPORT RDNumeric::DoubleVector *getErGFingerprint(
79 const ROMol &mol, std::vector<boost::dynamic_bitset<>> *atomTypes = nullptr,
80 double fuzzIncrement = 0.3, unsigned int minPath = 1,
81 unsigned int maxPath = 15);
82} // namespace ReducedGraphs
83} // namespace RDKit
84
85#endif
Vector.h
RDKit::ROMol
Definition ROMol.h:199
export.h
RDKIT_REDUCEDGRAPHS_EXPORT
#define RDKIT_REDUCEDGRAPHS_EXPORT
Definition export.h:489
RDKit::ReducedGraphs
Definition ReducedGraphs.h:22
RDKit::ReducedGraphs::getErGFingerprint
RDKIT_REDUCEDGRAPHS_EXPORT RDNumeric::DoubleVector * getErGFingerprint(const ROMol &mol, std::vector< boost::dynamic_bitset<> > *atomTypes=nullptr, double fuzzIncrement=0.3, unsigned int minPath=1, unsigned int maxPath=15)
Generates a ErG fingerprint vector for a molecule.
RDKit::ReducedGraphs::generateMolExtendedReducedGraph
RDKIT_REDUCEDGRAPHS_EXPORT ROMol * generateMolExtendedReducedGraph(const ROMol &mol, std::vector< boost::dynamic_bitset<> > *atomTypes=nullptr)
Generates a reduced graph representation of a molecule.
RDKit::ReducedGraphs::generateErGFingerprintForReducedGraph
RDKIT_REDUCEDGRAPHS_EXPORT RDNumeric::DoubleVector * generateErGFingerprintForReducedGraph(const ROMol &mol, std::vector< boost::dynamic_bitset<> > *atomTypes=nullptr, double fuzzIncrement=0.3, unsigned int minPath=1, unsigned int maxPath=15)
Generates a ErG fingerprint vector for a molecule that's already a reduced graph.
RDKit
Std stuff.
Definition Abbreviations.h:19
RDNumeric::DoubleVector
Vector< double > DoubleVector
Definition Vector.h:296