ATLAS Offline Software
AFPProtonTransportParam.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 
9  for (int i = 0; i < 8; i++) m_polynomial[i] = poly_array[i];
10 }
11 
13  for (int i = 0; i < 8; i++)
14  delete m_polynomial[i];
15 }
16 
17 double AFPProtonTransportParam::evaluate(double x0, double y0, double z0, double sx0, double sy0, double E) const {
18  const double xi = (m_energy - E) / m_energy;
19 
20  double v0 = m_polynomial[0]->evaluate(xi);
21  double v1 = x0 * m_polynomial[1]->evaluate(xi);
22  double v2 = y0 * m_polynomial[2]->evaluate(xi);
23  double v3 = z0 * m_polynomial[3]->evaluate(xi);
24  double v4 = sx0 * m_polynomial[4]->evaluate(xi);
25  double v5 = sy0 * m_polynomial[5]->evaluate(xi);
26  double v6 = z0 * sx0 * m_polynomial[6]->evaluate(xi);
27  double v7 = z0 * sy0 * m_polynomial[7]->evaluate(xi);
28 
29  double value = v0 + v1 + v2 + v3 + v4 + v5 + v6 + v7;
30 
31  return value;
32 }
AFPProtonTransportParam::AFPProtonTransportParam
AFPProtonTransportParam(double beam_energy, AFPProtonTransportPolynomial *poly_array[8])
Constructor which sets m_energy and m_polynomial.
Definition: AFPProtonTransportParam.cxx:7
AFPProtonTransportParam.h
athena.value
value
Definition: athena.py:122
AFPProtonTransportPolynomial::evaluate
double evaluate(double x) const
This function of returns the sum of the polynomial coeficients of a given argument x.
Definition: AFPProtonTransportPolynomial.cxx:32
AFPProtonTransportParam::evaluate
double evaluate(double x0, double y0, double z0, double sx, double sy, double E) const
This function evaluates value of the parameterization given a certain polynomial. It takes as argumen...
Definition: AFPProtonTransportParam.cxx:17
parseMapping.v0
def v0
Definition: parseMapping.py:149
lumiFormat.i
int i
Definition: lumiFormat.py:92
trigbs_createHLTBSTestFile.beam_energy
beam_energy
Definition: trigbs_createHLTBSTestFile.py:124
AFPProtonTransportPolynomial
Definition: AFPProtonTransportPolynomial.h:8
TRT::Track::z0
@ z0
Definition: InnerDetector/InDetCalibEvent/TRT_CalibData/TRT_CalibData/TrackInfo.h:63
VP1PartSpect::E
@ E
Definition: VP1PartSpectFlags.h:21
ReadCellNoiseFromCoolCompare.v2
v2
Definition: ReadCellNoiseFromCoolCompare.py:364
AFPProtonTransportParam::m_energy
double m_energy
Nominal beam energy.
Definition: AFPProtonTransportParam.h:30
AFPProtonTransportParam::~AFPProtonTransportParam
~AFPProtonTransportParam()
Destructor of the class. It deletes the polynomial objects set in the constructor.
Definition: AFPProtonTransportParam.cxx:12
AFPProtonTransportParam::m_polynomial
AFPProtonTransportPolynomial * m_polynomial[8]
Object of the AFPProtonTransportPolynomial class used for the position calculations.
Definition: AFPProtonTransportParam.h:32