33 #ifndef _KINE_GENERATOR_WITH_CACHE_H_
34 #define _KINE_GENERATOR_WITH_CACHE_H_
82 #endif // _KINE_GENERATOR_WITH_CACHE_H_
Cross Section Calculation Interface.
bool fGenerateUniformly
uniform over allowed phase space + event weight?
Defines the EventRecordVisitorI interface. Concrete implementations of this interface use the 'Visito...
double fSafetyFactor
ComputeMaxXSec -> ComputeMaxXSec * fSafetyFactor.
virtual void AssertXSecLimits(const Interaction *in, double xsec, double xsec_max) const
double fMaxXSecDiffTolerance
max{100*(xsec-maxxsec)/.5*(xsec+maxxsec)} if xsec>maxxsec
int fNumOfSafetyFactors
Number of given safety factors.
virtual double MaxXSec(GHepRecord *evrec, const int nkey=0) const
Abstract class. Provides a data caching mechanism for for concrete implementations of the EventRecord...
const XSecAlgorithmI * fXSecModel
int fNumOfInterpolatorTypes
Number of given interpolators types.
virtual double ComputeMaxXSec(const Interaction *in) const =0
std::vector< double > vSafetyFactors
MaxXSec -> MaxXSec * fSafetyFactors[nkey].
Summary information for an interaction.
virtual CacheBranchFx * AccessCacheBranch(const Interaction *in, const int nkey=0) const
double fEMin
min E for which maxxsec is cached - forcing explicit calc.
virtual double Energy(const Interaction *in) const
virtual double FindMaxXSec(const Interaction *in, const int nkey=0) const
A simple cache branch storing the cached data in a TNtuple.
GENIE's GHEP MC event record.
~KineGeneratorWithCache()
std::vector< string > vInterpolatorTypes
Type of interpolator for each key in a branch.
virtual void CacheMaxXSec(const Interaction *in, double xsec, const int nkey=0) const