1 #ifndef MACRO_G4MICROMEGAS_C
2 #define MACRO_G4MICROMEGAS_C
17 #include <qa_modules/QAG4SimulationMicromegas.h>
32 namespace G4MICROMEGAS
77 mm->set_double_param(
"mm_length", 220);
89 static constexpr
double length = 210;
90 static constexpr
int nsectors = 12;
91 static constexpr
double tile_length = 50;
92 static constexpr
double tile_width = 25;
99 std::cout <<
"Micromegas_Cells - Tiles configuration: CONFIG_MINIMAL" << std::endl;
100 static constexpr
double phi0 =
M_PI * (0.5 + 1. / nsectors);
108 std::cout <<
"Micromegas_Cells - Tiles configuration: CONFIG_PHI_ONE_RING" << std::endl;
110 for (
int i = 0; i < nsectors; ++i)
114 reco->set_tiles(tiles);
121 std::cout <<
"Micromegas_Cells - Tiles configuration: CONFIG_Z_ONE_SECTOR" << std::endl;
123 static constexpr
double phi0 =
M_PI * (0.5 + 1. / nsectors);
124 static constexpr
int ntiles = 4;
125 for (
int i = 0; i < ntiles; ++i)
129 reco->set_tiles(tiles);
135 std::cout <<
"Micromegas_Cells - Tiles configuration: CONFIG_BASELINE" << std::endl;
139 static constexpr
double phi0 =
M_PI * (0.5 + 1. / nsectors);
140 static constexpr
int ntiles_z = 4;
141 for (
int i = 0; i < ntiles_z; ++i)
147 static constexpr
double zoffset = 7;
148 for (
int i = 1; i < nsectors; ++i)
150 const double phi = phi0 + 2.*
M_PI*i/nsectors;
154 reco->set_tiles(tiles);
160 std::cout <<
"Micromegas_Cells - Tiles configuration: CONFIG_MAXIMAL" << std::endl;
164 static constexpr
int ntiles_z = 4;
165 for (
int iphi = 0; iphi < nsectors; ++iphi)
167 const double phi = 2. *
M_PI * (0.5 + iphi) / nsectors;
168 for (
int iz = 0; iz < ntiles_z; ++iz)
173 reco->set_tiles(tiles);
178 se->registerSubsystem(reco);
194 se->registerSubsystem(qa);