RDKit
Open-source cheminformatics and machine learning.
Loading...
Searching...
No Matches
RDKit::EvenSamplePairsStrategy Class Reference

EvenSamplePairsStrategy. More...

#include <EvenSamplePairs.h>

Inheritance diagram for RDKit::EvenSamplePairsStrategy:
RDKit::EnumerationStrategyBase

Public Member Functions

 EvenSamplePairsStrategy ()
 
 EvenSamplePairsStrategy (const EvenSamplePairsStrategy &rhs)
 
const chartype () const override
 
void initializeStrategy (const ChemicalReaction &, const EnumerationTypes::BBS &) override
 
const EnumerationTypes::RGROUPSnext () override
 The current permutation {r1, r2, ...}.
 
boost::uint64_t getPermutationIdx () const override
 Returns how many permutations have been processed by this strategy.
 
 operator bool () const override
 
EnumerationStrategyBasecopy () const override
 copy the enumeration strategy complete with current state
 
std::string stats () const
 
void initialize (const ChemicalReaction &reaction, const EnumerationTypes::BBS &building_blocks)
 
- Public Member Functions inherited from RDKit::EnumerationStrategyBase
 EnumerationStrategyBase ()
 
virtual ~EnumerationStrategyBase ()
 
void initialize (const ChemicalReaction &reaction, const EnumerationTypes::BBS &building_blocks)
 
const EnumerationTypes::RGROUPSgetPosition () const
 The current position in the enumeration.
 
boost::uint64_t getNumPermutations () const
 
bool skip (boost::uint64_t skipCount)
 

Friends

class boost::serialization::access
 

Additional Inherited Members

- Static Public Attributes inherited from RDKit::EnumerationStrategyBase
static const boost::uint64_t EnumerationOverflow
 
- Protected Member Functions inherited from RDKit::EnumerationStrategyBase
void internalInitialize (const EnumerationTypes::RGROUPS &rgroups)
 
- Protected Attributes inherited from RDKit::EnumerationStrategyBase
EnumerationTypes::RGROUPS m_permutation
 
EnumerationTypes::RGROUPS m_permutationSizes
 
boost::uint64_t m_numPermutations {}
 

Detailed Description

EvenSamplePairsStrategy.

Randomly sample Pairs evenly from a collection of building blocks This is a good strategy for choosing a relatively small selection of building blocks from a larger set. As the amount of work needed to retrieve the next evenly sample building block grows with the number of samples, this method performs progressively worse as the number of samples gets larger.

See EnumeartionStrategyBase for more details.

Definition at line 55 of file EvenSamplePairs.h.

Constructor & Destructor Documentation

◆ EvenSamplePairsStrategy() [1/2]

RDKit::EvenSamplePairsStrategy::EvenSamplePairsStrategy ( )
inline

Definition at line 72 of file EvenSamplePairs.h.

◆ EvenSamplePairsStrategy() [2/2]

RDKit::EvenSamplePairsStrategy::EvenSamplePairsStrategy ( const EvenSamplePairsStrategy & rhs)
inline

Definition at line 81 of file EvenSamplePairs.h.

Member Function Documentation

◆ copy()

EnumerationStrategyBase * RDKit::EvenSamplePairsStrategy::copy ( ) const
inlineoverridevirtual

copy the enumeration strategy complete with current state

Implements RDKit::EnumerationStrategyBase.

Definition at line 135 of file EvenSamplePairs.h.

◆ getPermutationIdx()

boost::uint64_t RDKit::EvenSamplePairsStrategy::getPermutationIdx ( ) const
inlineoverridevirtual

Returns how many permutations have been processed by this strategy.

Implements RDKit::EnumerationStrategyBase.

Definition at line 129 of file EvenSamplePairs.h.

◆ initialize()

void RDKit::EnumerationStrategyBase::initialize ( const ChemicalReaction & reaction,
const EnumerationTypes::BBS & building_blocks )
inline

This is a class for enumerating RGroups using Cartesian Products of reagents.

basic usage:

std::vector<MOL_SPTR_VECT> bbs;
bbs.push_back( bbs_for_reactants_1 );
bbs.push_back( bbs_for_reactants_2 );

EvenSamplePairsStrategy rgroups;
rgroups.initialize(rxn, bbs);
for(boost::uint64_t i=0; i<num_samples && rgroups; ++i) {
  MOL_SPTR_VECT rvect = getReactantsFromRGroups(bbs, rgroups.next());
  std::vector<MOL_SPTR_VECT> lprops = rxn.RunReactants(rvect);
  ...
}

Definition at line 145 of file EnumerationStrategyBase.h.

◆ initializeStrategy()

void RDKit::EvenSamplePairsStrategy::initializeStrategy ( const ChemicalReaction & ,
const EnumerationTypes::BBS &  )
overridevirtual

◆ next()

const EnumerationTypes::RGROUPS & RDKit::EvenSamplePairsStrategy::next ( )
overridevirtual

The current permutation {r1, r2, ...}.

Implements RDKit::EnumerationStrategyBase.

◆ operator bool()

RDKit::EvenSamplePairsStrategy::operator bool ( ) const
inlineoverridevirtual

returns true if there are more permutations left random enumerators may always return true...

Implements RDKit::EnumerationStrategyBase.

Definition at line 133 of file EvenSamplePairs.h.

◆ stats()

std::string RDKit::EvenSamplePairsStrategy::stats ( ) const

◆ type()

const char * RDKit::EvenSamplePairsStrategy::type ( ) const
inlineoverridevirtual

Reimplemented from RDKit::EnumerationStrategyBase.

Definition at line 100 of file EvenSamplePairs.h.

Friends And Related Symbol Documentation

◆ boost::serialization::access

friend class boost::serialization::access
friend

Definition at line 142 of file EvenSamplePairs.h.


The documentation for this class was generated from the following file: