herwig is hosted by Hepforge, IPPP Durham
Herwig  7.2.1
exsample::generator< Function, Random > Class Template Reference

A generator for plain sampling and integrating. More...

#include <generator.h>

Public Member Functions

 generator ()
 default constructor
 
template<class SlaveStatistics >
void initialize (SlaveStatistics &)
 initialize this generator
 
template<class SlaveStatistics >
double generate (SlaveStatistics &)
 generate an event, returning the sign of the weight
 
const std::vector< double > & last_point () const
 return the last sampled phase space point
 
void reject ()
 indicate that the last generated point has been rejected
 
void finalize ()
 finalize this generator
 
bool initialized () const
 return true, if this generator has been initialized
 
bool did_split () const
 return true, if at least one split has been performed
 
Function & function ()
 access the function
 
void function (Function *f)
 set the function
 
const statisticsstats () const
 return the statistics object
 
double volume () const
 return the sampled volume
 
double integral () const
 return the integral
 
double integral_uncertainty () const
 return the error on the integral
 
double current_integral () const
 return the integral
 
double current_integral_uncertainty () const
 return the error on the integral
 
double integral_variance () const
 return the variance of the integral estimate
 
adaption_infosampling_parameters ()
 access the adaption_info object
 
bool compensating () const
 return true, if still compensating
 
template<class OStream >
void put (OStream &os) const
 put to ostream
 
template<class IStream >
void get (IStream &is)
 get from istream
 

Private Member Functions

bool split ()
 check for and possibly split the last selected cell
 
void compensate ()
 compensate the last selected cell indicating the value and position of the new overestimate
 

Private Attributes

Function * function_
 function to be sampled
 
statistics statistics_
 the global statistics object
 
unsigned long check_events_
 the number of events after which a cell is checked for splits
 
adaption_info adaption_info_
 the adaption info object
 
binary_tree< cellroot_cell_
 the root cell
 
rnd_generator< Random > rnd_gen_
 the random number generator to be used
 
bool did_split_
 wether a split has already been performed
 
bool initialized_
 wether this generator has been initialized
 
binary_tree< cell >::iterator last_cell_
 the last selected cell
 
std::vector< double > last_point_
 the last sampled phasespace point
 
double last_value_
 the last function value
 
bool compensating_
 wether or not we are compensating
 

Detailed Description

template<class Function, class Random>
class exsample::generator< Function, Random >

A generator for plain sampling and integrating.

Definition at line 27 of file generator.h.


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