CMS 3D CMS Logo

PadeTableODE.h
Go to the documentation of this file.
1 #ifndef CalibCalorimetry_HcalAlgos_PadeTableODE_h_
2 #define CalibCalorimetry_HcalAlgos_PadeTableODE_h_
3 
4 //
5 // Differential equations are built using the delay formula
6 // I_out(s) = I_in(s) exp(-tau s), where I_out(s), etc. are the Laplace
7 // transforms. exp(-tau s) is then represented by fractions according
8 // to the Pade table. See http://en.wikipedia.org/wiki/Pade_table and
9 // replace z by (-tau s).
10 //
12 {
13 public:
14  PadeTableODE(unsigned padeRow, unsigned padeColumn);
15 
16  void calculate(double tau, double inputCurrent,
17  double dIdt, double d2Id2t,
18  const double* x, unsigned lenX,
19  unsigned firstNode, double* derivative) const;
20 
21  inline unsigned getPadeRow() const {return row_;}
22  inline unsigned getPadeColumn() const {return col_;}
23  inline unsigned nParameters() const {return 0U;}
24  void setParameters(const double* pars, unsigned nPars);
25 
26 private:
27  unsigned row_;
28  unsigned col_;
29 };
30 
31 #endif // CalibCalorimetry_HcalAlgos_PadeTableODE_h_
Derivative< X, A >::type derivative(const A &_)
Definition: Derivative.h:18
unsigned nParameters() const
Definition: PadeTableODE.h:23
void setParameters(const double *pars, unsigned nPars)
unsigned getPadeRow() const
Definition: PadeTableODE.h:21
unsigned getPadeColumn() const
Definition: PadeTableODE.h:22
PadeTableODE(unsigned padeRow, unsigned padeColumn)
Definition: PadeTableODE.cc:6
unsigned col_
Definition: PadeTableODE.h:28
void calculate(double tau, double inputCurrent, double dIdt, double d2Id2t, const double *x, unsigned lenX, unsigned firstNode, double *derivative) const
Definition: PadeTableODE.cc:16
unsigned row_
Definition: PadeTableODE.h:27