15 #ifndef BORNAGAIN_CORE_MULTILAYER_IINTERFERENCEFUNCTIONSTRATEGY_H 
   16 #define BORNAGAIN_CORE_MULTILAYER_IINTERFERENCEFUNCTIONSTRATEGY_H 
   48     void init(
const std::vector<FormFactorCoherentSum>& weighted_formfactors,
 
   56     std::unique_ptr<IInterferenceFunction> 
mP_iff;
 
   72     std::unique_ptr<IntegratorMCMiser<IInterferenceFunctionStrategy>> 
mP_integrator;
 
Defines complex_t, and a few elementary functions.
 
Defines class SimulationOptions.
 
Base class of all interference function strategy classes.
 
double evaluate_for_fixed_angles(double *fractions, size_t dim, void *params) const
 
virtual double scalarCalculation(const SimulationElement &sim_element) const =0
Evaluates the intensity in the scalar case.
 
double evaluate(const SimulationElement &sim_element) const
Calculates the intensity for scalar particles/interactions.
 
std::vector< FormFactorCoherentSum > m_formfactor_wrappers
 
virtual ~IInterferenceFunctionStrategy()
 
double evaluateSinglePoint(const SimulationElement &sim_element) const
 
IInterferenceFunctionStrategy(const SimulationOptions &sim_params, bool polarized)
 
void init(const std::vector< FormFactorCoherentSum > &weighted_formfactors, const IInterferenceFunction *p_iff)
Initializes the object with form factors and an interference function.
 
virtual void strategy_specific_post_init()
 
double MCIntegratedEvaluate(const SimulationElement &sim_element) const
Performs a Monte Carlo integration over the bin for the evaluation of the intensity.
 
virtual double polarizedCalculation(const SimulationElement &sim_element) const =0
Evaluates the intensity in the polarized case.
 
std::unique_ptr< IntegratorMCMiser< IInterferenceFunctionStrategy > > mP_integrator
 
std::unique_ptr< IInterferenceFunction > mP_iff
 
SimulationOptions m_options
 
Pure virtual base class of interference functions.
 
Template class to use Monte Carlo MISER integration of class member functions.
 
Data stucture containing both input and output of a single detector cell.
 
Collect the different options for simulation.