|
ATLAS Offline Software
|
Go to the documentation of this file.
12 #include "GeoModelKernel/throwExcept.h"
14 #include "GaudiKernel/IMessageSvc.h"
15 #include "GaudiKernel/MsgStream.h"
24 THROW_EXCEPTION(
"Not enough parameters!" << std::endl<<
"Minimum number of parameters is 6!");
27 if ((
nPar() % 2) != 0) {
31 std::vector<double>
x(
nPar() /2);
32 std::vector<double>
y(
nPar() /2);
33 for (
unsigned int i = 0;
i <
nPar() / 2;
i++) {
37 m_sp3 = std::make_unique<TSpline3>(
"Rt Relation",
x.data(),
y.data(),
nPar() / 2,
"b2e2", 0, 0);
40 return m_sp3->GetDelta();
45 if (t < m_sp3->GetXmin())
return m_sp3->Eval(
m_sp3->GetXmin());
47 return r >= 0 ?
r : 0;
52 constexpr
double h = 1.e-7;
singleton-like access to IMessageSvc via open function and helper
std::vector< size_t > vec
virtual double tLower() const override final
get the lower drift-time bound
#define THROW_EXCEPTION(MSG)
double par(unsigned int index) const
virtual double driftAcceleration(double t) const override final
Returns the acceleration of the r-t relation.
virtual double driftVelocity(double t) const override final
get the drift velocity
virtual double tUpper() const override final
get the upper drift-time bound
CscCalcPed - algorithm that finds the Cathode Strip Chamber pedestals from an RDO.
std::vector< double > ParVec
std::unique_ptr< TSpline3 > m_sp3
virtual double tBinWidth() const override final
Returns the step-size for the sampling.
unsigned int nPar() const
RtSpline(const ParVec &vec)
initialization constructor,
generic interface for a rt-relation
virtual double radius(double t) const override final
get the radius corresponding to the drift time t; 0 or 14.6 is returned if t is outside the range