test
CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Functions
SiStripPulseShape.cc File Reference
#include "DQM/SiStripCommissioningAnalysis/interface/SiStripPulseShape.h"
#include <TF1.h>
#include <TMath.h>

Go to the source code of this file.

Functions

double fdeconv (double *x, double *par)
 
double fdeconv_convoluted (double *x, double *par)
 
double fpeak (double *x, double *par)
 
double fpeak_convoluted (double *x, double *par)
 

Function Documentation

double fdeconv ( double *  x,
double *  par 
)

Definition at line 11 of file SiStripPulseShape.cc.

References fpeak().

12  {
13  double xm = par[4]*(x[0]-25);
14  double xp = par[4]*(x[0]+25);
15  double xz = par[4]*x[0];
16  return 1.2131*fpeak(&xp,par)-1.4715*fpeak(&xz,par)+0.4463*fpeak(&xm,par);
17  }
T x() const
Cartesian x coordinate.
double fpeak(double *x, double *par)
double fdeconv_convoluted ( double *  x,
double *  par 
)

Definition at line 25 of file SiStripPulseShape.cc.

References fpeak_convoluted().

Referenced by CalibrationAlgorithm::CalibrationAlgorithm(), SiStripPulseShape::getNormalizedValue(), and SamplingAlgorithm::SamplingAlgorithm().

26  {
27  double xm = (x[0]-25);
28  double xp = (x[0]+25);
29  double xz = x[0];
30  return 1.2131*fpeak_convoluted(&xp,par)-1.4715*fpeak_convoluted(&xz,par)+0.4463*fpeak_convoluted(&xm,par);
31  }
double fpeak_convoluted(double *x, double *par)
T x() const
Cartesian x coordinate.
double fpeak ( double *  x,
double *  par 
)

Definition at line 5 of file SiStripPulseShape.cc.

Referenced by fdeconv(), and fpeak_convoluted().

6  {
7  if(x[0]+par[1]<0) return par[0];
8  return par[0]+par[2]*(x[0]+par[1])*TMath::Exp(-(x[0]+par[1])/par[3]);
9  }
T x() const
Cartesian x coordinate.
double fpeak_convoluted ( double *  x,
double *  par 
)

Definition at line 19 of file SiStripPulseShape.cc.

References f, and fpeak().

Referenced by CalibrationAlgorithm::CalibrationAlgorithm(), fdeconv_convoluted(), SiStripPulseShape::getNormalizedValue(), and SamplingAlgorithm::SamplingAlgorithm().

20  {
21  TF1 f("peak_convoluted",fpeak,0,200,4);
22  return f.IntegralError(x[0]-par[4]/2.,x[0]+par[4]/2.,par,0,1.)/(par[4]);
23  }
T x() const
Cartesian x coordinate.
double f[11][100]
double fpeak(double *x, double *par)