BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
calib_barrel_common Class Reference

#include <calib_barrel_common.h>

Inheritance diagram for calib_barrel_common:

Public Member Functions

 calib_barrel_common (const unsigned int nzbin)
 ~calib_barrel_common ()
void calculate (RecordSet *&data, unsigned int icounter)
Public Member Functions inherited from TofCalibFit
 TofCalibFit (bool isbarrel, const int npar)
 ~TofCalibFit ()
const std::string & name () const
void fillTxt (const char *file)
void fillRoot (const char *file)
HepVector tcorrelation ()
void setTCorrelation (HepVector tc)

Additional Inherited Members

Protected Attributes inherited from TofCalibFit
int m_npar
unsigned int nKind
unsigned int nBinPerCounter
unsigned int nHistPerCounter
unsigned int nCanvasPerCounter
std::vector< unsigned int > nGraphPerCanvasPerCounter
unsigned int nHistogram
unsigned int nCanvas
std::vector< unsigned int > nGraphPerCanvas
string m_name
HepVector X
std::vector< TH1F * > m_histograms
std::vector< TH1F * > m_graphs
std::vector< HepVector > m_result
std::vector< string > CanvasPerCounterName
std::vector< string > CanvasName
HepVector m_tcorrelation

Detailed Description

Definition at line 10 of file calib_barrel_common.h.

Constructor & Destructor Documentation

◆ calib_barrel_common()

calib_barrel_common::calib_barrel_common ( const unsigned int nzbin)

Definition at line 4 of file calib_barrel_common.cxx.

5 : TofCalibFit( true, nBarrelCommon ) {
6
7 nKind = 4;
8 nBinPerCounter = nzbin;
9
13 nCanvas = 4;
14 CanvasName.push_back( static_cast<string>( "Offset" ) );
15 CanvasName.push_back( static_cast<string>( "Offset-PlusMinus" ) );
16 CanvasName.push_back( static_cast<string>( "Sigma" ) );
17 CanvasName.push_back( static_cast<string>( "Sigma-TCorrelation" ) );
18 nGraphPerCanvas.push_back( 2 );
19 nGraphPerCanvas.push_back( 2 );
20 nGraphPerCanvas.push_back( 2 );
21 nGraphPerCanvas.push_back( 3 );
22
23 int numGraphs = 0;
24 std::vector<unsigned int>::iterator iter = nGraphPerCanvas.begin();
25 for ( ; iter != nGraphPerCanvas.end(); iter++ ) { numGraphs = numGraphs + ( *iter ); }
26 if ( numGraphs != nGraphTotalCommon )
27 {
28 cout << "tofcalgsec::calib_barrel_common: the number of Graphs is NOT reasonable!!!"
29 << endl;
30 exit( 0 );
31 }
32
33 m_name = string( "calib_barrel_common" );
34
35 const int tbin = 150;
36 const double tbegin = -1.5;
37 const double tend = 1.5;
38
39 char hname[256];
40 // histograms
41 for ( unsigned int j = 0; j < nKind; j++ )
42 {
43 for ( unsigned int k = 0; k < nBinPerCounter; k++ )
44 {
45 if ( j == 0 ) { sprintf( hname, "tleft-z%i", k ); }
46 else if ( j == 1 ) { sprintf( hname, "tright-z%i", k ); }
47 else if ( j == 2 ) { sprintf( hname, "tplus-z%i", k ); }
48 else if ( j == 3 ) { sprintf( hname, "tminus-z%i", k ); }
49 m_fitresult.push_back( HepVector( nParCommon, 0 ) );
50 m_histograms.push_back( new TH1F( hname, hname, tbin, tbegin, tend ) );
51 }
52 }
53 sprintf( hname, "deltaT" );
54 m_fitresult.push_back( HepVector( nParCommon, 0 ) );
55 m_histograms.push_back( new TH1F( hname, hname, tbin, tbegin, tend ) );
56
57 zpos.resize( nBinPerCounter );
58 zposerr.resize( nBinPerCounter );
59 zstep = ( zend - zbegin ) / nBinPerCounter;
60 for ( unsigned int i = 0; i < nBinPerCounter; i++ )
61 {
62 zpos[i] = zbegin + ( i + 0.5 ) * zstep;
63 zposerr[i] = 0.5 * zstep;
64 }
65}
sprintf(cut, "kal_costheta0_em>-0.93&&kal_costheta0_em<0.93&&kal_pxy0_em>=0.05+%d*0.1&&kal_" "pxy0_em<0.15+%d*0.1&&NGch>=2", j, j)
EvtStreamInputIterator< typename Generator::result_type > iter(Generator gen, int N=0)
const double zend
Definition TofCalibFit.h:13
const double zbegin
Definition TofCalibFit.h:12
const int nBarrelCommon
Definition TofCalibFit.h:19
const int nParCommon
const int nGraphTotalCommon
string m_name
Definition TofCalibFit.h:50
unsigned int nCanvas
Definition TofCalibFit.h:47
std::vector< TH1F * > m_histograms
Definition TofCalibFit.h:53
unsigned int nBinPerCounter
Definition TofCalibFit.h:41
unsigned int nKind
Definition TofCalibFit.h:40
unsigned int nCanvasPerCounter
Definition TofCalibFit.h:44
unsigned int nHistPerCounter
Definition TofCalibFit.h:43
std::vector< unsigned int > nGraphPerCanvas
Definition TofCalibFit.h:48
std::vector< string > CanvasName
Definition TofCalibFit.h:58
unsigned int nHistogram
Definition TofCalibFit.h:46
TofCalibFit(bool isbarrel, const int npar)

◆ ~calib_barrel_common()

calib_barrel_common::~calib_barrel_common ( )

Definition at line 67 of file calib_barrel_common.cxx.

67 {
68 m_fitresult.clear();
69 zpos.clear();
70 zposerr.clear();
71}

Member Function Documentation

◆ calculate()

void calib_barrel_common::calculate ( RecordSet *& data,
unsigned int icounter )
virtual

Implements TofCalibFit.

Definition at line 73 of file calib_barrel_common.cxx.

73 {
74
75 std::cout << setiosflags( ios::left ) << setw( 10 ) << icounter << setw( 8 ) << data->size()
76 << setw( 30 ) << name() << std::endl;
77
78 if ( data->size() > 0 )
79 {
80 std::vector<Record*>::iterator iter = data->begin();
81 for ( ; iter != data->end(); iter++ ) { fillRecord( ( *iter ) ); }
82 }
83
84 if ( icounter == ( NBarrel - 1 ) )
85 {
86 fitHistogram();
87 fillGraph();
88 fitGraph();
89 }
90
91 return;
92}
TTree * data
const unsigned int NBarrel
Definition TofDataSet.h:12
const std::string & name() const
Definition TofCalibFit.h:27

The documentation for this class was generated from the following files: