6#include "GeoModelKernel/throwExcept.h"
13 THROW_EXCEPTION(
"RtSimplePolynomial::_init() - Not enough parameters!");
27 if (t <
tLower())
return 0.0;
28 if (t >
tUpper())
return 14.6;
35 for (
unsigned int k = 0; k <
nDoF(); k++) {
36 rad +=
par(k+2) * std::pow(
x,k);
38 return std::max(rad, 0.);
51 for (
unsigned int k = 1; k <
nDoF(); ++k) {
52 drdt +=
par(k+2) * k * std::pow(
x,k-1)*dx_dt;
61 for (
unsigned int k = 2; k <
nDoF(); ++k) {
62 acc +=
par(k+2) *k * (k-1) * std::pow(
x,k-2)*std::pow(dx_dt,2);
std::vector< size_t > vec
const ParVec & parameters() const
double par(unsigned int index) const
unsigned int nPar() const
std::vector< double > ParVec
generic interface for a rt-relation
static constexpr double s_tBinWidth
double dReducedTimeDt() const
double getReducedTime(const double t) const
map the in the interval [tLower;tUpper] onto the interval [-1.;1.
RtSimplePolynomial(const ParVec &vec)
virtual double driftAcceleration(double t) const override final
Returns the acceleration of the r-t relation.
virtual unsigned nDoF() const override final
get the coefficients of the r(t) polynomial
std::vector< double > rtParameters() const
virtual std::string name() const override final
get the class name
virtual double tBinWidth() const override final
Returns the step-size for the sampling.
virtual double tUpper() const override final
Returns the upper time covered by the r-t.
virtual double tLower() const override final
< get the lower drift-time bound
virtual double driftVelocity(double t) const override final
get the drift acceleration
virtual double radius(double t) const override final
get the drift velocity
CscCalcPed - algorithm that finds the Cathode Strip Chamber pedestals from an RDO.
#define THROW_EXCEPTION(MESSAGE)