KaliVeda
Toolkit for HIC analysis
Loading...
Searching...
No Matches
KVISOFAZIA.cpp
1//Created by KVClassFactory on Thu Jan 22 16:02:02 2015
2//Author: ,,,
3
4#include "KVISOFAZIA.h"
5
6#include "KVUnits.h"
7#include "KVFAZIABlock.h"
8
10
11
12// BEGIN_HTML <!--
13/* -->
14<h2>KVISOFAZIA</h2>
15<h4>FAZIA set-up for ISOFAZIA experiment June 2015 - 4 blocks</h4>
16<!-- */
17// --> END_HTML
19
20
21
23
25 : KVFAZIA()
26{
27 // Default constructor
28 SetTitle(ClassName());
29}
30
31
32
34
36{
37
38 fNblocks = 4;
39 fFDist = 80.0;
40
41}
42
43
44
45
48
50{
51 // Destructor
52}
53
54
55
57
59{
60 Info("BuildFAZIA", "Compact geometry, %f cm from target",
61 fFDist);
62
64
65 Double_t distance_block_cible = fFDist * KVUnits::cm;
66 Double_t thick_si1 = 300 * KVUnits::um;
67
68 KVFAZIABlock* block = new KVFAZIABlock;
69
70 Double_t theta = 0;
71 Double_t phi = 0;
72
73 Double_t arc = block->GetTotalSideWithBlindage() / (distance_block_cible + thick_si1 / 2.);
74 arc /= 2;
75 arc *= TMath::RadToDeg();
76
77 for (Int_t bb = 0; bb < fNblocks; bb += 1) {
78 if (bb == 3) {
79 phi = 90;
80 theta = 11.8 + arc;
81 }
82 else if (bb == 2) {
83 phi = 90;
84 theta = 2.3 + arc;
85 }
86 else if (bb == 1) {
87 phi = -90;
88 theta = 2.3 + arc;
89 }
90 else if (bb == 0) {
91 phi = -90;
92 theta = 11.8 + arc;
93 }
94 top->AddNode(block, bb,
96 theta, phi));
97 }
98
99}
100
101
int Int_t
double Double_t
R__EXTERN TGeoManager * gGeoManager
Standard geometry of 16-telescope FAZIA block.
Double_t GetNominalDistanceTargetBlockCentre(double dist_SI1=100.) const
Double_t GetTotalSideWithBlindage() const
Description of a FAZIA detector geometry.
Definition KVFAZIA.h:33
Double_t fFDist
distance of FAZIA detectors from target (in cm)
Definition KVFAZIA.h:36
Int_t fNblocks
number of blocks
Definition KVFAZIA.h:38
FAZIA set-up with two blocks used in LNS 2014 commissioning.
Definition KVISOFAZIA.h:16
virtual void BuildFAZIA()
virtual ~KVISOFAZIA()
Destructor.
virtual void GetGeometryParameters()
static TGeoHMatrix * GetVolumePositioningMatrix(Double_t distance, Double_t theta, Double_t phi, TGeoTranslation *postTrans=nullptr)
TGeoVolume * GetTopVolume() const
virtual TGeoNode * AddNode(TGeoVolume *vol, Int_t copy_no, TGeoMatrix *mat=nullptr, Option_t *option="")
virtual void Info(const char *method, const char *msgfmt,...) const
RooCmdArg ClassName(const char *name)
const long double um
Definition KVUnits.h:68
const long double cm
Definition KVUnits.h:66
constexpr Double_t RadToDeg()
ClassImp(TPyArg)