1#ifndef CALIB_BARREL_ATTEN_H
2#define CALIB_BARREL_ATTEN_H
4#include "tofcalgsec/TofCalib.h"
11 m_name = string(
"calib_barrel_atten");
15 double z = r->
zrhit();
16 double q1 = r->
qleft();
19 if( q1>0.0 && q2>0.0 ) {
32 double q1 = r->
qleft();
34 if( q1>0.0 && q2>0.0 ) {
44 if(
data->size() > 0 ) {
45 std::vector<Record*>::iterator
iter =
data->begin();
47 double z = (*iter)->zrhit();
48 double sintheta = (*iter)->theta();
49 double q1 = (*iter)->qleft();
50 double q2 = (*iter)->qright();
51 double latten = 1.0/
X[0];
52 double a1overa2 =
exp(
X[1]);
53 double q0 = sintheta*(q1*
exp((115.0-z)/latten)+q2*
exp((115.0+z)/latten))/(1.0+a1overa2);
EvtComplex exp(const EvtComplex &c)
std::vector< Record * > RecordSet
void updateData(RecordSet *&data)
void calculate_funcs(const Record *r)
void calculate_y(const Record *r)