BOSS
8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
MucGapCal.cxx
Go to the documentation of this file.
1
//------------------------------------------------------------------------------|
2
// [File ]: MucGapCal.cxx |
3
// [Brief ]: MUC geometry yoke creating class |
4
// [Author]: Xie Yuguang, <ygxie@mail.ihep.ac.cn> |
5
// [Date ]: May 22, 2005 |
6
//------------------------------------------------------------------------------|
7
8
#include <cmath>
9
#include <iostream>
10
11
#include "MucCalib/MucGapCal.h"
12
#include "MucCalib/MucStructConst.h"
13
14
using namespace
std
;
15
16
// Constructor
17
MucGapCal::MucGapCal
(
int
part,
int
segment,
int
layer )
18
:
MucEntityCal
( part, segment, layer ) {
19
MucGapCal::Init
();
20
m_MucBoxCal = NULL;
21
}
22
23
// Copy constructor
24
MucGapCal::MucGapCal
(
const
MucGapCal
& other ) :
MucEntityCal
( other ) {
25
m_MucBoxCal = other.m_MucBoxCal;
26
}
27
28
// Operator =
29
MucGapCal
&
MucGapCal::operator=
(
const
MucGapCal
& other ) {
30
if
(
this
== &other )
return
*
this
;
31
MucEntityCal::operator=
( other );
32
m_MucBoxCal = other.m_MucBoxCal;
33
34
return
*
this
;
35
}
36
37
// Destructor
38
MucGapCal::~MucGapCal
() {
delete
m_MucBoxCal; }
39
40
// Initialize
41
void
MucGapCal::Init
() {
42
SetTheta
();
43
SetRin
();
44
SetRout
();
45
SetRc
();
46
47
SetThin
();
48
SetW
();
49
SetWu
();
50
SetWd
();
51
SetH
();
52
SetL
();
53
}
54
55
// ------------------- Get methods --------------------
56
57
MucBoxCal
*
MucGapCal::GetBox
() {
58
if
( m_MucBoxCal != NULL )
return
m_MucBoxCal;
59
else
return
( m_MucBoxCal =
new
MucBoxCal
(
m_Part
,
m_Segment
,
m_Layer
) );
60
}
61
62
// --------------------- Set motheds ----------------------
63
void
MucGapCal::SetTheta
() {
64
if
(
m_Part
== BRID )
m_Theta
=
m_Segment
* (
PI
/ 4.0 );
65
else
m_Theta
= ( 2 *
m_Segment
+ 1 ) * (
PI
/ 4.0 );
66
}
67
68
void
MucGapCal::SetRin
() {
69
if
(
m_Part
== BRID )
m_Rin
= B_AS_RMIN[
m_Layer
] - AS_GAP;
70
else
m_Rin
= 0.;
71
}
72
73
void
MucGapCal::SetRout
() {
74
if
(
m_Part
== BRID )
m_Rout
= B_AS_RMIN[
m_Layer
];
75
else
m_Rout
= E_AS_RMAX;
76
}
77
78
void
MucGapCal::SetRc
() {
79
if
(
m_Part
== BRID )
m_Rc
= B_AS_RMIN[
m_Layer
] - AS_GAP / 2.0;
80
else
m_Rc
= sqrt( 2.0 ) * E_AS_RMAX / 2.0;
81
}
82
83
void
MucGapCal::SetThin
() {
m_Thin
= AS_GAP; }
84
85
void
MucGapCal::SetW
() {
86
if
(
m_Part
== BRID )
m_W
= B_GP_WT[
m_Layer
];
87
else
m_W
= E_AS_RMAX - E_GP_DX;
88
}
89
90
void
MucGapCal::SetH
() {
91
if
(
m_Part
== BRID )
m_H
= AS_GAP - 0.2;
// avoid overlap between absorber and gap
92
else
m_H
= E_AS_RMAX - E_GP_DY;
93
}
94
95
void
MucGapCal::SetL
() {
96
if
(
m_Part
== BRID )
m_L
= B_GP_LT;
97
else
m_L
= AS_GAP;
98
}
99
100
void
MucGapCal::SetWu
() {
m_Wu
=
m_W
; }
101
102
void
MucGapCal::SetWd
() {
m_Wd
=
m_W
; }
103
104
// END
PI
#define PI
Definition
EvtD0ToKKpi0.cc:40
MucBoxCal
Definition
InstallArea/x86_64-el9-gcc13-dbg/include/MucCalib/MucBoxCal.h:17
MucEntityCal::MucEntityCal
MucEntityCal(int part, int segment, int layer)
Definition
MucEntityCal.cxx:16
MucEntityCal::m_Rout
double m_Rout
Definition
InstallArea/x86_64-el9-gcc13-dbg/include/MucCalib/MucEntityCal.h:65
MucEntityCal::m_Thin
double m_Thin
Definition
InstallArea/x86_64-el9-gcc13-dbg/include/MucCalib/MucEntityCal.h:67
MucEntityCal::m_Theta
double m_Theta
Definition
InstallArea/x86_64-el9-gcc13-dbg/include/MucCalib/MucEntityCal.h:61
MucEntityCal::m_Layer
int m_Layer
Definition
InstallArea/x86_64-el9-gcc13-dbg/include/MucCalib/MucEntityCal.h:58
MucEntityCal::m_Rc
double m_Rc
Definition
InstallArea/x86_64-el9-gcc13-dbg/include/MucCalib/MucEntityCal.h:66
MucEntityCal::m_H
double m_H
Definition
InstallArea/x86_64-el9-gcc13-dbg/include/MucCalib/MucEntityCal.h:69
MucEntityCal::m_L
double m_L
Definition
InstallArea/x86_64-el9-gcc13-dbg/include/MucCalib/MucEntityCal.h:70
MucEntityCal::m_Rin
double m_Rin
Definition
InstallArea/x86_64-el9-gcc13-dbg/include/MucCalib/MucEntityCal.h:64
MucEntityCal::operator=
MucEntityCal & operator=(const MucEntityCal &other)
Definition
MucEntityCal.cxx:50
MucEntityCal::m_Wu
double m_Wu
Definition
InstallArea/x86_64-el9-gcc13-dbg/include/MucCalib/MucEntityCal.h:71
MucEntityCal::m_Segment
int m_Segment
Definition
InstallArea/x86_64-el9-gcc13-dbg/include/MucCalib/MucEntityCal.h:57
MucEntityCal::m_W
double m_W
Definition
InstallArea/x86_64-el9-gcc13-dbg/include/MucCalib/MucEntityCal.h:68
MucEntityCal::m_Part
int m_Part
Definition
InstallArea/x86_64-el9-gcc13-dbg/include/MucCalib/MucEntityCal.h:56
MucEntityCal::m_Wd
double m_Wd
Definition
InstallArea/x86_64-el9-gcc13-dbg/include/MucCalib/MucEntityCal.h:72
MucGapCal::SetWd
virtual void SetWd()
Definition
MucGapCal.cxx:102
MucGapCal::Init
virtual void Init()
Definition
MucGapCal.cxx:41
MucGapCal::SetH
virtual void SetH()
Definition
MucGapCal.cxx:90
MucGapCal::SetWu
virtual void SetWu()
Definition
MucGapCal.cxx:100
MucGapCal::SetW
virtual void SetW()
Definition
MucGapCal.cxx:85
MucGapCal::operator=
MucGapCal & operator=(const MucGapCal &other)
Definition
MucGapCal.cxx:29
MucGapCal::MucGapCal
MucGapCal(int part, int segment, int layer)
Definition
MucGapCal.cxx:17
MucGapCal::SetRc
virtual void SetRc()
Definition
MucGapCal.cxx:78
MucGapCal::GetBox
MucBoxCal * GetBox()
Definition
MucGapCal.cxx:57
MucGapCal::~MucGapCal
~MucGapCal()
Definition
MucGapCal.cxx:38
MucGapCal::SetL
virtual void SetL()
Definition
MucGapCal.cxx:95
MucGapCal::SetRout
virtual void SetRout()
Definition
MucGapCal.cxx:73
MucGapCal::SetRin
virtual void SetRin()
Definition
MucGapCal.cxx:68
MucGapCal::SetThin
virtual void SetThin()
Definition
MucGapCal.cxx:83
MucGapCal::SetTheta
virtual void SetTheta()
Definition
MucGapCal.cxx:63
std
Definition
x86_64-el9-gcc13-dbg/Event/RootEventData/RootEventDataDict.cxx:101
8.0.0
BOSS_Source
Muc
MucCalib
src
MucGapCal.cxx
Generated by
1.16.1