Skip to content

Commit 4ea1ee2

Browse files
plarionoPavel Larionovalibuild
authored
FT3: build v3b version of the geometry by default (AliceO2Group#11590)
* Modifications of beampipe * Changes outer radius, correct version * Please consider the following formatting changes --------- Co-authored-by: Pavel Larionov <plariono@alicecerno2.cern.ch> Co-authored-by: ALICE Action Bot <alibuild@cern.ch>
1 parent 02eb38d commit 4ea1ee2

2 files changed

Lines changed: 51 additions & 1 deletion

File tree

Detectors/Upgrades/ALICE3/FT3/simulation/include/FT3Simulation/Detector.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -113,6 +113,7 @@ class Detector : public o2::base::DetImpl<Detector>
113113

114114
void buildBasicFT3(const FT3BaseParam& param);
115115
void buildFT3V1();
116+
void buildFT3V3b();
116117
void buildFT3FromFile(std::string);
117118

118119
GeometryTGeo* mGeometryTGeo; //! access to geometry details

Detectors/Upgrades/ALICE3/FT3/simulation/src/Detector.cxx

Lines changed: 50 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -221,6 +221,55 @@ void Detector::buildFT3V1()
221221
}
222222
}
223223

224+
//_________________________________________________________________________________________________
225+
void Detector::buildFT3V3b()
226+
{
227+
// Build FT3 detector according to
228+
// https://www.overleaf.com/project/6051acc870e39aaeb4653621
229+
230+
LOG(info) << "Building FT3 Detector: V3b";
231+
232+
mNumberOfLayers = 12;
233+
Float_t sensorThickness = 30.e-4;
234+
Float_t layersx2X0 = 1.e-2;
235+
std::vector<std::array<Float_t, 5>> layersConfig{
236+
{26., .5, 3., 0.1f * layersx2X0}, // {z_layer, r_in, r_out, Layerx2X0}
237+
{30., .5, 3., 0.1f * layersx2X0},
238+
{34., .5, 3., 0.1f * layersx2X0},
239+
{77., 5.0, 35., layersx2X0},
240+
{100., 5.0, 35., layersx2X0},
241+
{122., 5.0, 35., layersx2X0},
242+
{150., 5.5, 80.f, layersx2X0},
243+
{180., 6.6, 80.f, layersx2X0},
244+
{220., 8.1, 80.f, layersx2X0},
245+
{279., 10.2, 80.f, layersx2X0},
246+
{340., 12.5, 80.f, layersx2X0},
247+
{400., 14.7, 80.f, layersx2X0}};
248+
249+
mLayerName.resize(2);
250+
mLayerName[0].resize(mNumberOfLayers);
251+
mLayerName[1].resize(mNumberOfLayers);
252+
mLayerID.clear();
253+
mLayers.resize(2);
254+
255+
for (auto direction : {0, 1}) {
256+
for (int layerNumber = 0; layerNumber < mNumberOfLayers; layerNumber++) {
257+
std::string directionName = std::to_string(direction);
258+
std::string layerName = GeometryTGeo::getFT3LayerPattern() + directionName + std::string("_") + std::to_string(layerNumber);
259+
mLayerName[direction][layerNumber] = layerName;
260+
auto& z = layersConfig[layerNumber][0];
261+
262+
auto& rIn = layersConfig[layerNumber][1];
263+
auto& rOut = layersConfig[layerNumber][2];
264+
auto& x0 = layersConfig[layerNumber][3];
265+
266+
LOG(info) << "Adding Layer " << layerName << " at z = " << z;
267+
// Add layers
268+
auto& thisLayer = mLayers[direction].emplace_back(direction, layerNumber, layerName, z, rIn, rOut, x0);
269+
}
270+
}
271+
}
272+
224273
//_________________________________________________________________________________________________
225274
Detector::Detector(Bool_t active)
226275
: o2::base::DetImpl<Detector>("FT3", active),
@@ -238,7 +287,7 @@ Detector::Detector(Bool_t active)
238287
} else {
239288
switch (ft3BaseParam.geoModel) {
240289
case Default:
241-
buildFT3V1(); // FT3V1
290+
buildFT3V3b(); // FT3V3b
242291
break;
243292
case Telescope:
244293
buildBasicFT3(ft3BaseParam); // BasicFT3 = Parametrized telescopic detector (equidistant layers)

0 commit comments

Comments
 (0)