6#ifndef AFP_GLOBRECO_PARAMETRIZATION_H
7#define AFP_GLOBRECO_PARAMETRIZATION_H
32 double evaluate(
double x,
double y,
double z,
double sx,
double sy,
double E)
const;
51 double x(
double x0,
double y0,
double z0,
double sx0,
double sy0,
double E)
const;
54 double y(
double x0,
double y0,
double z0,
double sx0,
double sy0,
double E)
const;
57 double sx(
double x0,
double y0,
double z0,
double sx0,
double sy0,
double E)
const;
60 double sy(
double x0,
double y0,
double z0,
double sx0,
double sy0,
double E)
const;
Local class for storing parameterization equation.
const TF1 * getPolynomial(int iPoly) const
Returns const raw poiner to polynomial of number iPoly.
double m_energy
Nominal energy of proton.
std::vector< std::unique_ptr< TF1 > > m_polynomial
Vector of TF1 polynomials.
double evaluate(double x, double y, double z, double sx, double sy, double E) const
Evaluates value of function with given initial positions, slopes and energy.
Equation(double energy, std::vector< std::unique_ptr< TF1 > > polynomial)
Takes nominal energy and vector of polynomials as arguments.
double sy(double x0, double y0, double z0, double sx0, double sy0, double E) const
Evaluates value of vertical slope equation.
Parameterization(std::string_view filename)
Takes filename of parametrization file as argument.
bool yIsUsed() const
Returns m_yIsUsed.
std::array< double, 2 > m_slopeInitIP
Crossing angles in rad.
double x(double x0, double y0, double z0, double sx0, double sy0, double E) const
Evaluates value of horizontal position equation.
double energy() const
Returns nominal energy for which parametrization was performed.
std::vector< std::unique_ptr< Equation > > m_equation
Vector of equations: 0 - x, 1 - y, 2 - sx, 3 - sy.
static constexpr int m_numberOfEquations
Number of equations - each for one measured value.
double parametrizationPosition() const
Returns position for which parametrization was performed.
const Equation * getEquation(int iEqu) const
Returns const raw pointer to equation of number iEqu.
static constexpr int m_numberOfPolynomials
Number of polynomials in equation.
double m_energy
Nominal beam energy.
bool m_yIsUsed
True if y measurements are used in reconstruction.
double sx(double x0, double y0, double z0, double sx0, double sy0, double E) const
Evaluates value of horizontal slope equation.
double y(double x0, double y0, double z0, double sx0, double sy0, double E) const
Evaluates value of vertical position equation.
double m_parametrizationPosition
Position for which the parameterisation was performed.
std::array< double, 3 > m_positionInitIP
Initial vertex postition.
Header file for interface of SiGlobAlignDBTool used to read global alignment for database.