Skip to content

Commit 1d4762c

Browse files
A and C side cables (#5559)
* add cables * almost full material budget
1 parent 73278d5 commit 1d4762c

File tree

2 files changed

+186
-58
lines changed

2 files changed

+186
-58
lines changed

Detectors/FIT/FT0/simulation/include/FT0Simulation/Detector.h

Lines changed: 26 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
#ifndef ALICEO2_FT0_DETECTOR_H_
1515
#define ALICEO2_FT0_DETECTOR_H_
1616

17+
#include <TGeoShape.h>
1718
#include "SimulationDataFormat/BaseHits.h"
1819
#include "DetectorsBase/Detector.h" // for Detector
1920
#include "FT0Base/Geometry.h"
@@ -47,13 +48,15 @@ class Detector : public o2::base::DetImpl<Detector>
4748
kVac = 3,
4849
kCeramic = 4,
4950
kGlass = 6,
50-
kOpAir = 7,
51+
// kOpAir = 7,
5152
kAl = 15,
5253
kOpGlass = 16,
5354
kOptAl = 17,
5455
kOptBlack = 18,
5556
kOpGlassCathode = 19,
56-
kSensAir = 22
57+
// kSensAir = 22,
58+
kCable = 23,
59+
kMCPwalls = 25
5760
}; // materials
5861

5962
/// Name : Detector Name
@@ -93,6 +96,9 @@ class Detector : public o2::base::DetImpl<Detector>
9396
void ConstructOpGeometry() override;
9497
void SetOneMCP(TGeoVolume* stl);
9598

99+
void SetCablesA(TGeoVolume* stl);
100+
TGeoVolume* SetCablesSize(int mod);
101+
96102
// Optical properties reader: e-Energy, abs-AbsorptionLength[cm], n-refractive index
97103
void DefineOpticalProperties();
98104
Int_t ReadOptProperties(const std::string inputFilePath);
@@ -110,6 +116,11 @@ class Detector : public o2::base::DetImpl<Detector>
110116
void Read(std::istream* is);
111117

112118
void DefineSim2LUTindex();
119+
/// Create the shape of cables for a specified cell.
120+
/// \param shapeName The name of the shape.
121+
/// \param cellID The number of the cell
122+
/// \return The cable pattern shape.
123+
// TGeoShape* CreateCableShape(const std::string& shapeName, int cellID) const;
113124

114125
private:
115126
/// copy constructor (used in MT)
@@ -156,7 +167,19 @@ class Detector : public o2::base::DetImpl<Detector>
156167

157168
int mSim2LUT[Geometry::Nchannels];
158169

159-
ClassDefOverride(Detector, 3);
170+
float mPosModuleAx[Geometry::NCellsA] = {-11.8, -5.9, 0, 5.9, 11.8, -11.8, -5.9, 0, 5.9, 11.8, -12.8, -6.9,
171+
6.9, 12.8, -11.8, -5.9, 0, 5.9, 11.8, -11.8, -5.9, 0, 5.9, 11.8};
172+
float mPosModuleAy[Geometry::NCellsA] = {11.9, 11.9, 12.9, 11.9, 11.9, 6.0, 6.0, 7.0, 6.0, 6.0, -0.1, -0.1,
173+
0.1, 0.1, -6.0, -6.0, -7.0, -6.0, -6.0, -11.9, -11.9, -12.9, -11.9, -11.9};
174+
175+
float mPosModuleCx[Geometry::NCellsC];
176+
float mPosModuleCy[Geometry::NCellsC];
177+
float mPosModuleCz[Geometry::NCellsC];
178+
Float_t mStartC[3] = {20., 20, 5.5};
179+
Float_t mStartA[3] = {20., 20., 5};
180+
Float_t mInStart[3] = {2.9491, 2.9491, 2.75};
181+
182+
ClassDefOverride(Detector, 4);
160183
};
161184

162185
// Input and output function for standard C++ input/output.

0 commit comments

Comments
 (0)