1 #ifndef GsfBetheHeitlerUpdator_h_
2 #define GsfBetheHeitlerUpdator_h_
36 for ( std::vector<double>::const_iterator
i=
theCoeffs.begin();
59 typedef std::vector< Triplet<double,double,double> >
GSContainer;
virtual void storeArguments(const TrajectoryStateOnSurface &, const PropagationDirection) const
storage of arguments for later use of
std::vector< Polynomial > thePolyVars
parametrisation of mean for each component
std::vector< double > theCoeffs
std::vector< Polynomial > thePolyMeans
parametrisation of weight for each component
Polynomial readPolynomial(std::ifstream &, const int)
Read coefficients of one polynomial from file.
float theLastDz
correction of 1st or 1st&2nd moments
void correctWeights(GSContainer &) const
Correction for weight of component 1.
double correctedFirstVar(const double, const GSContainer &) const
Correction for variance of component 1.
std::vector< Polynomial > thePolyWeights
values to be transformed by logistic / exp. function?
void getMixtureParameters(const double, GSContainer &) const
Filling of mixture (in terms of z=E/E0)
virtual void compute(const TrajectoryStateOnSurface &, const PropagationDirection) const
Computation: generates vectors of weights, means and standard deviations.
virtual bool newArguments(const TrajectoryStateOnSurface &, const PropagationDirection) const
check of arguments for use with cached values
double BetheHeitlerMean(const double rl) const
First moment of the Bethe-Heitler distribution (in z=E/E0)
std::vector< Triplet< double, double, double > > GSContainer
double BetheHeitlerVariance(const double rl) const
Second moment of the Bethe-Heitler distribution (in z=E/E0)
double operator()(const double &x) const
Evaluation of the polynomial.
double logisticFunction(const double x) const
Logistic function (needed for transformation of weight and mean)
int theTransformationCode
number of components used for parameterisation
PropagationDirection theLastPropDir
Polynomial(const std::vector< double > &coefficients)
GsfBetheHeitlerUpdator(const std::string fileName, const int correctionFlag)
constructor with explicit filename and correction flag
int theCorrectionFlag
parametrisation of variance for each component
double correctedFirstMean(const double, const GSContainer &) const
Correction for mean of component 1.
void readParameters(const std::string)
Read parametrization from file.
virtual GsfBetheHeitlerUpdator * clone() const
Polynomial()
Default constructor (needed for construction of a vector)