BmnRoot
26.10.0-18-g4e3414f9
Software framework of the BM@N experiment
Toggle main menu visibility
Loading...
Searching...
No Matches
BmnMwpcGeometry.cxx
Go to the documentation of this file.
1
// @(#)bmnroot/mwpc:$Id$
2
// Author: Pavel Batyuk (VBLHEP) <pavel.batyuk@jinr.ru> 2017-02-10
3
4
////////////////////////////////////////////////////////////////////////////////
5
// //
6
// BmnMwpcGeometry //
7
// //
8
// A class containing geometry params. of //
9
// the Multi Wire Prop. Chambers of the BM@N experiment //
10
// //
11
////////////////////////////////////////////////////////////////////////////////
12
#include "
BmnMwpcGeometry.h
"
13
14
BmnMwpcGeometry::BmnMwpcGeometry
()
15
:
fDebug
(
kFALSE
)
16
{
17
fNChambers
= 2;
18
fNPlanes
= 6;
19
fTimeBin
= 8;
20
fNWires
= 96;
21
fAngleStep
= 60 *
DegToRad
();
22
fWireStep
= 0.25;
23
fPlaneStep
= 1.0015;
// According to schemes given by M. Rumyantsev
24
25
fPlaneHeight
= 43.3;
26
fPlaneWidth
=
fNWires
*
fWireStep
;
27
28
fSpaceLeft
= 2.1338;
// According to schemes given by M. Rumyantsev
29
fSpaceRight
= 2.1328;
// According to schemes given by M. Rumyantsev
30
31
fChamberWidth
=
fSpaceLeft
+
fSpaceLeft
+ (
fNPlanes
- 1) *
fPlaneStep
;
32
fDistanceBetweenMWPC
= 140.5;
33
34
/*
35
Reference frame is related to left side of the magnetic pole (z = 0, zC = 124.5 cm)
36
-----> Z -----> (MWPC -> GEM -> DCH)
37
MWPC1 MWPC2
38
39
zLeft[0] (fSpaceLeft | | | | | | fSpaceRight) zRight[0] zLeft[1] (fSpaceLeft | | | | | | fSpaceRight) zRight[1]
40
1 2 3 4 5 6 1 2 3 4 5 6
41
42
*/
43
44
zRight
[1] = -(186. + 22.);
// http://bmnshift.jinr.ru/wiki/lib/exe/fetch.php?media=geom_bmn_pc_dch_run5.pdf
45
zLeft
[1] =
zRight
[1] -
fChamberWidth
;
46
47
zRight
[0] =
zLeft
[1] -
fDistanceBetweenMWPC
;
48
zLeft
[0] =
zRight
[0] -
fChamberWidth
;
49
50
for
(
Int_t
iChamber = 0; iChamber <
fNChambers
; iChamber++)
51
for
(
Int_t
iPlane = 0; iPlane <
fNPlanes
; iPlane++)
52
zPlanePos
[iChamber][iPlane] =
zLeft
[iChamber] +
fSpaceLeft
+ iPlane *
fPlaneStep
;
53
54
// Check built geometry
55
if
(
fDebug
)
56
for
(
Int_t
iChamber = 0; iChamber <
fNChambers
; iChamber++) {
57
cout <<
"MWPC"
<< iChamber + 1 << endl;
58
cout <<
"Zleft = "
<<
zLeft
[iChamber] <<
" Zright = "
<<
zRight
[iChamber] << endl;
59
for
(
Int_t
iPlane = 0; iPlane <
fNPlanes
; iPlane++)
60
cout <<
"zPlanePos "
<< iPlane + 1 <<
" "
<<
zPlanePos
[iChamber][iPlane] << endl;
61
cout << endl;
62
}
63
}
64
65
TVector3
BmnMwpcGeometry::GetChamberCenter
(
Int_t
chamber)
66
{
67
return
TVector3
(0.0, 0.0, (
zRight
[chamber] +
zLeft
[chamber]) * 0.5);
68
}
69
70
BmnMwpcGeometry::~BmnMwpcGeometry
() {}
Int_t
int Int_t
kFALSE
constexpr Bool_t kFALSE
BmnMwpcGeometry::fNChambers
Short_t fNChambers
Definition
BmnMwpcGeometry.h:60
BmnMwpcGeometry::fDebug
Bool_t fDebug
Definition
BmnMwpcGeometry.h:80
BmnMwpcGeometry::fNWires
Short_t fNWires
Definition
BmnMwpcGeometry.h:63
BmnMwpcGeometry::GetChamberCenter
TVector3 GetChamberCenter(Int_t chamber)
Definition
BmnMwpcGeometry.cxx:65
BmnMwpcGeometry::fTimeBin
Short_t fTimeBin
Definition
BmnMwpcGeometry.h:62
BmnMwpcGeometry::BmnMwpcGeometry
BmnMwpcGeometry()
Default constructor.
Definition
BmnMwpcGeometry.cxx:14
BmnMwpcGeometry::fPlaneStep
Double_t fPlaneStep
Definition
BmnMwpcGeometry.h:66
BmnMwpcGeometry::fAngleStep
Double_t fAngleStep
Definition
BmnMwpcGeometry.h:64
BmnMwpcGeometry::fPlaneHeight
Double_t fPlaneHeight
Definition
BmnMwpcGeometry.h:67
BmnMwpcGeometry::fNPlanes
Short_t fNPlanes
Definition
BmnMwpcGeometry.h:61
BmnMwpcGeometry::zPlanePos
Double_t zPlanePos[2][6]
Definition
BmnMwpcGeometry.h:72
BmnMwpcGeometry::fPlaneWidth
Double_t fPlaneWidth
Definition
BmnMwpcGeometry.h:68
BmnMwpcGeometry::fSpaceLeft
Double_t fSpaceLeft
Definition
BmnMwpcGeometry.h:69
BmnMwpcGeometry::fDistanceBetweenMWPC
Double_t fDistanceBetweenMWPC
Definition
BmnMwpcGeometry.h:77
BmnMwpcGeometry::fSpaceRight
Double_t fSpaceRight
Definition
BmnMwpcGeometry.h:70
BmnMwpcGeometry::fChamberWidth
Double_t fChamberWidth
Definition
BmnMwpcGeometry.h:76
BmnMwpcGeometry::fWireStep
Double_t fWireStep
Definition
BmnMwpcGeometry.h:65
BmnMwpcGeometry::~BmnMwpcGeometry
virtual ~BmnMwpcGeometry()
Destructor.
Definition
BmnMwpcGeometry.cxx:70
BmnMwpcGeometry::zLeft
Double_t zLeft[2]
Definition
BmnMwpcGeometry.h:74
BmnMwpcGeometry::zRight
Double_t zRight[2]
Definition
BmnMwpcGeometry.h:73
TVector3
BmnMwpcGeometry.h
TMath::DegToRad
constexpr Double_t DegToRad()
detectors
mwpc
BmnMwpcGeometry.cxx
Generated on
for BmnRoot by
1.17.0