KaliVeda
Toolkit for HIC analysis
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 // 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 
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  block->Build();
70 
71  Double_t theta = 0;
72  Double_t phi = 0;
73 
74  Double_t arc = block->GetTotalSideWithBlindage() / (distance_block_cible + thick_si1 / 2.);
75  arc /= 2;
76  arc *= TMath::RadToDeg();
77 
78  for (Int_t bb = 0; bb < fNblocks; bb += 1) {
79  if (bb == 3) {
80  phi = 90;
81  theta = 11.8 + arc;
82  }
83  else if (bb == 2) {
84  phi = 90;
85  theta = 2.3 + arc;
86  }
87  else if (bb == 1) {
88  phi = -90;
89  theta = 2.3 + arc;
90  }
91  else if (bb == 0) {
92  phi = -90;
93  theta = 11.8 + arc;
94  }
95  top->AddNode(block, bb,
97  theta, phi));
98  }
99 
100 }
101 
102 
int Int_t
double Double_t
R__EXTERN TGeoManager * gGeoManager
Standard geometry of 16-telescope FAZIA block.
Definition: KVFAZIABlock.h:17
virtual void Build()
Set default dimensions for all parts of geometry.
Double_t GetNominalDistanceTargetBlockCentre(double dist_SI1=100.) const
Definition: KVFAZIABlock.h:76
Double_t GetTotalSideWithBlindage() const
Definition: KVFAZIABlock.h:71
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
static TGeoHMatrix * GetFAZIAVolumePositioningMatrix(Double_t distance, Double_t theta, Double_t phi, TGeoTranslation *postTrans=nullptr)
Definition: KVFAZIA.h:273
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
void BuildFAZIA() override
Definition: KVISOFAZIA.cpp:58
virtual ~KVISOFAZIA()
Destructor.
Definition: KVISOFAZIA.cpp:49
void GetGeometryParameters() override
Definition: KVISOFAZIA.cpp:35
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)
constexpr Double_t RadToDeg()
ClassImp(TPyArg)