ATLAS Offline Software
Loading...
Searching...
No Matches
CscCalibTool.cxx File Reference
#include "CscCalibTool.h"
#include "StoreGate/DataHandle.h"
#include <sstream>
#include <cmath>
Include dependency graph for CscCalibTool.cxx:

Go to the source code of this file.

Functions

Double_t bipfunc (const Double_t *x, const Double_t *par)
Double_t dualbipfunc (const Double_t *x, const Double_t *par)

Function Documentation

◆ bipfunc()

Double_t bipfunc ( const Double_t * x,
const Double_t * par )

Definition at line 36 of file CscCalibTool.cxx.

36 {
37 if (x[0] < par[1]) return 0.;
38 Double_t integrationNumber = par[2]; //12
39 Double_t integrationNumber2 = par[3]; //11.66
40 // Double_t samplingTime = par[4]; //50 ns
41 Double_t signalWidth = par[4]; //50 ns
42 Double_t sum = integrationNumber+integrationNumber2;
43 Double_t z0 = 0.5*( (sum+2)
44 -std::sqrt(std::pow(sum+2,2)
45 -4*integrationNumber*(integrationNumber2+1))
46 );
47
48 Double_t norm = (1.0 - z0 / (1 + integrationNumber2))
49 * std::pow(z0, 1.0 * integrationNumber)
50 * std::exp(-z0);
51
52 Double_t z = (x[0]-par[1])/signalWidth;//*3.47/samplingTime;
53 Double_t amplitude =
54 par[0]*(1-z/(1+integrationNumber2))
55 *std::pow(z,integrationNumber)*std::exp(-1.0*z)/norm;
56 return amplitude;
57}
#define x
#define z

◆ dualbipfunc()

Double_t dualbipfunc ( const Double_t * x,
const Double_t * par )

Definition at line 59 of file CscCalibTool.cxx.

59 {
60 return ( bipfunc(x,par) + bipfunc(x,&par[5]) );
61}
Double_t bipfunc(const Double_t *x, const Double_t *par)