Skip to content

Commit 6901eac

Browse files
committed
new branch created
1 parent 2c6742c commit 6901eac

7 files changed

Lines changed: 210 additions & 217 deletions

File tree

‎DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/SimTraits.h‎

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,7 @@ class SimTraits
100100
/*RCH*/ VS{ "RCHHit" },
101101
/*MI3*/ VS{ "MI3Hit" },
102102
/*ECL*/ VS{ "ECLHit" },
103-
/*FD */ VS{ "FDHit" }
103+
/*FD3*/ VS{ "FD3Hit" }
104104
#endif
105105
};
106106
// clang-format on
@@ -176,6 +176,10 @@ namespace focal
176176
{
177177
class Hit;
178178
}
179+
namespace fd3
180+
{
181+
class Hit;
182+
}
179183
namespace detectors
180184
{
181185

@@ -260,6 +264,10 @@ template <>
260264
struct DetIDToHitTypes<o2::detectors::DetID::FCT> {
261265
using HitType = o2::itsmft::Hit;
262266
};
267+
template <>
268+
struct DetIDToHitTypes<o2::detectors::DetID::FD3> {
269+
using HitType = o2::fd3::Hit;
270+
};
263271
#endif
264272

265273
} // namespace detectors

‎DataFormats/Detectors/Upgrades/ALICE3/FD3/include/DataFormatsFD3/Hit.h‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@
1212
/// \file Hit.h
1313
/// \brief Definition of the FD3 Hit class (based on ITSMFT and FV0)
1414

15-
#ifndef ALICEO2_FVD_HIT_H_
16-
#define ALICEO2_FVD_HIT_H_
15+
#ifndef ALICEO2_FD3_HIT_H_
16+
#define ALICEO2_FD3_HIT_H_
1717

1818
#include <iosfwd>
1919
#include "SimulationDataFormat/BaseHits.h" // for BasicXYZEHit

‎Detectors/Upgrades/ALICE3/FD3/base/include/FD3Base/Constants.h‎

Lines changed: 14 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// Copyright 2019-2020 CERN and copyright holders of ALICE O2.
1+
// Copyright 2019-2026 CERN and copyright holders of ALICE O2.
22
// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders.
33
// All rights not expressly granted are reserved.
44
//
@@ -10,9 +10,7 @@
1010
// or submit itself to any jurisdiction.
1111

1212
/// \file Constants.h
13-
/// \brief General constants in FV0
14-
///
15-
/// \author Maciej Slupecki, University of Jyvaskyla, Finland
13+
/// \brief General constants in FD3
1614

1715
#ifndef ALICEO2_FD3_CONSTANTS_
1816
#define ALICEO2_FD3_CONSTANTS_
@@ -22,15 +20,20 @@ namespace o2
2220
namespace fd3
2321
{
2422
struct Constants {
25-
static constexpr unsigned int nsect = 8;
26-
static constexpr unsigned int nringsA = 5;
27-
static constexpr unsigned int nringsC = 6;
23+
static constexpr unsigned int nSectScint = 8;
24+
static constexpr unsigned int nRingsScint = 5;
2825

29-
static constexpr float etaMax = 7.0f;
30-
static constexpr float etaMin = 4.0f;
26+
static constexpr float zScint = 420.0f;
27+
static constexpr float zCher = 430.0f;
3128

32-
static constexpr unsigned int nringsA_withMG = 3;
33-
static constexpr float etaMinA_withMG = 5.0f;
29+
static constexpr float dzScint = 4.0f;
30+
static constexpr float dzCher = 2.0f;
31+
32+
static constexpr float etaMin = 2.5f;
33+
static constexpr float etaMax = 4.9f;
34+
static constexpr float etaMax2 = 5.5f; // asymmetric configuration
35+
36+
static constexpr float rsizeq = 1.025f; // quartz radiator transverse size
3437
};
3538

3639
} // namespace fd3

‎Detectors/Upgrades/ALICE3/FD3/base/include/FD3Base/FD3BaseParam.h‎

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -15,22 +15,16 @@
1515
#include "FD3Base/GeometryTGeo.h"
1616
#include "FD3Base/Constants.h"
1717
#include "CommonUtils/ConfigurableParamHelper.h"
18+
#include <string>
1819

1920
namespace o2
2021
{
2122
namespace fd3
2223
{
23-
struct FD3BaseParam : public o2::conf::ConfigurableParamHelper<FD3BaseParam> {
24-
25-
float zmodA = 1700.0f;
26-
float zmodC = -1850.0f;
27-
float dzscint = 4.0f;
2824

29-
bool withMG = false; // modified geometry with 3 rings on A side
25+
struct FD3BaseParam : public o2::conf::ConfigurableParamHelper<FD3BaseParam> {
3026

31-
bool plateBehindA = false;
32-
bool fullContainer = false;
33-
float dzplate = 1.0f; // Aluminium plate width
27+
bool isSymmetric = true;
3428

3529
O2ParamDef(FD3BaseParam, "FD3Base");
3630
};

‎Detectors/Upgrades/ALICE3/FD3/base/include/FD3Base/GeometryTGeo.h‎

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// Copyright 2019-2020 CERN and copyright holders of ALICE O2.
1+
// Copyright 2019-2026 CERN and copyright holders of ALICE O2.
22
// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders.
33
// All rights not expressly granted are reserved.
44
//
@@ -8,6 +8,7 @@
88
// In applying this license CERN does not waive the privileges and immunities
99
// granted to it by virtue of its status as an Intergovernmental Organization
1010
// or submit itself to any jurisdiction.
11+
1112
#ifndef ALICEO2_FD3_GEOMETRYTGEO_H_
1213
#define ALICEO2_FD3_GEOMETRYTGEO_H_
1314

‎Detectors/Upgrades/ALICE3/FD3/simulation/include/FD3Simulation/Detector.h‎

Lines changed: 14 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// Copyright 2019-2020 CERN and copyright holders of ALICE O2.
1+
// Copyright 2019-2026 CERN and copyright holders of ALICE O2.
22
// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders.
33
// All rights not expressly granted are reserved.
44
//
@@ -57,8 +57,12 @@ class Detector : public o2::base::DetImpl<Detector>
5757
o2::fd3::Hit* addHit(int trackId, unsigned int detId,
5858
const math_utils::Point3D<float>& startPos,
5959
const math_utils::Point3D<float>& endPos,
60-
const math_utils::Vector3D<float>& startMom, double startE,
61-
double endTime, double eLoss, int particlePdg);
60+
const math_utils::Vector3D<float>& startMom,
61+
double startE,
62+
double endTime,
63+
double eLoss,
64+
int particlePdg);
65+
6266
// unsigned int startStatus,
6367
// unsigned int endStatus);
6468

@@ -86,7 +90,7 @@ class Detector : public o2::base::DetImpl<Detector>
8690

8791
enum EMedia {
8892
Scintillator,
89-
Aluminium
93+
RadiatorOpticalGlass,
9094
};
9195

9296
private:
@@ -96,20 +100,14 @@ class Detector : public o2::base::DetImpl<Detector>
96100
std::vector<o2::fd3::Hit>* mHits = nullptr;
97101
GeometryTGeo* mGeometryTGeo = nullptr;
98102

99-
TGeoVolumeAssembly* buildModuleA();
100-
TGeoVolumeAssembly* buildModuleC();
101-
102-
float ringSize(float zmod, float eta);
103-
104-
unsigned int mNumberOfRingsA, mNumberOfRingsC, mNumberOfSectors;
105-
float mDzScint, mDzPlate;
106-
107-
std::vector<float> mRingSizesA = {}, mRingSizesC = {};
103+
TGeoVolumeAssembly* buildModuleScint(float etaMin, float etaMax);
104+
TGeoVolumeAssembly* buildModuleCherenkov_v1();
105+
TGeoVolumeAssembly* buildModuleCherenkov_v2();
108106

109-
float mEtaMaxA, mEtaMaxC, mEtaMinA, mEtaMinC;
110-
float mZA, mZC;
107+
int mChannelCounter;
108+
std::map<int, int> mChannelId;
111109

112-
bool mPlateBehindA, mFullContainer;
110+
float getRingSize(float zmod, float eta);
113111

114112
void defineSensitiveVolumes();
115113
void definePassiveVolumes();

0 commit comments

Comments
 (0)