RDKit
Open-source cheminformatics and machine learning.
RDKit::EvenSamplePairsStrategy Class Reference

EvenSamplePairsStrategy. More...

#include <EvenSamplePairs.h>

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

Public Member Functions

 EvenSamplePairsStrategy ()
 
 EvenSamplePairsStrategy (const EvenSamplePairsStrategy &rhs)
 
virtual const char * type () const
 
virtual void initializeStrategy (const ChemicalReaction &, const EnumerationTypes::BBS &)
 
virtual const EnumerationTypes::RGROUPSnext ()
 The current permutation {r1, r2, ...}. More...
 
virtual boost::uint64_t getPermutationIdx () const
 Returns how many permutations have been processed by this strategy. More...
 
virtual operator bool () const
 
EnumerationStrategyBasecopy () const
 copy the enumeration strategy complete with current state More...
 
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. More...
 
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 91 of file EvenSamplePairs.h.

Member Function Documentation

◆ copy()

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

copy the enumeration strategy complete with current state

Implements RDKit::EnumerationStrategyBase.

Definition at line 145 of file EvenSamplePairs.h.

◆ getPermutationIdx()

virtual boost::uint64_t RDKit::EvenSamplePairsStrategy::getPermutationIdx ( ) const
inlinevirtual

Returns how many permutations have been processed by this strategy.

Implements RDKit::EnumerationStrategyBase.

Definition at line 139 of file EvenSamplePairs.h.

◆ initialize()

void RDKit::EnumerationStrategyBase::initialize
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 141 of file EnumerationStrategyBase.h.

◆ initializeStrategy()

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

◆ next()

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

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

Implements RDKit::EnumerationStrategyBase.

◆ operator bool()

virtual RDKit::EvenSamplePairsStrategy::operator bool ( ) const
inlinevirtual

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

Implements RDKit::EnumerationStrategyBase.

Definition at line 143 of file EvenSamplePairs.h.

◆ stats()

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

◆ type()

virtual const char* RDKit::EvenSamplePairsStrategy::type ( ) const
inlinevirtual

Reimplemented from RDKit::EnumerationStrategyBase.

Definition at line 110 of file EvenSamplePairs.h.

Friends And Related Function Documentation

◆ boost::serialization::access

friend class boost::serialization::access
friend

Definition at line 152 of file EvenSamplePairs.h.


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