ATLAS Offline Software
Loading...
Searching...
No Matches
LArG4::BarrelCryostat Namespace Reference

Classes

class  CalibrationCalculator
class  CalibrationLArCalculator
class  CalibrationMixedCalculator
struct  CopyNumberInfo_t
struct  IdentifierInfo_t
struct  RegionInfo_t
struct  VolumeInfo_t

Typedefs

typedef std::map< G4int, const IdentifierInfo_t * > identifierMap_t
typedef std::map< G4String, identifierMap_tvolumeMap_t

Functions

const volumeMap_tvolumeMap ()
 volumeMap singleton

Variables

static const RegionInfo_t region010 []
static const RegionInfo_t region012 []
static const RegionInfo_t region020 []
static const RegionInfo_t region021 []
static const CopyNumberInfo_t info1 []
static const CopyNumberInfo_t info2 []
static const CopyNumberInfo_t info3 []
static const VolumeInfo_t volume1
static const VolumeInfo_t volume2
static const VolumeInfo_t volume3
static const VolumeInfo_t volumes [] = { volume1, volume2, volume3}
static const G4int numberOfVolumes = sizeof(volumes) / sizeof(VolumeInfo_t)

Typedef Documentation

◆ identifierMap_t

typedef std::map< G4int, const IdentifierInfo_t* > LArG4::BarrelCryostat::identifierMap_t

Definition at line 372 of file CryostatCalibrationCalculator.cxx.

◆ volumeMap_t

typedef std::map< G4String, identifierMap_t > LArG4::BarrelCryostat::volumeMap_t

Definition at line 373 of file CryostatCalibrationCalculator.cxx.

Function Documentation

◆ volumeMap()

const volumeMap_t & LArG4::BarrelCryostat::volumeMap ( )

volumeMap singleton

Definition at line 379 of file CryostatCalibrationCalculator.cxx.

380 {
381 static const volumeMap_t instance = []()
382 {
384 // For each volume managed by this calculator...
385 for (G4int v = 0; v != numberOfVolumes; v++)
386 {
387 const VolumeInfo_t& volume = volumes[v];
388
389#if defined (DEBUG_HITS) || defined (DEBUG_MAPS)
390 G4cout << "LArG4::BarrelCryostat::CalibrationCalculator::CalibrationCalculator - "
391 << " volume '"
392 << volume.volumeName
393 << "' has number of entries=" << volume.numberOfCopies
394 << G4endl;
395#endif
396
397 identifierMap_t identifierMap;
398 const CopyNumberInfo_t* copyInfo = volume.copyInfo;
399
400 // For each range copy numbers that can be found in a volume with this name...
401 for (G4int c = 0; c != volume.numberOfCopies; c++, copyInfo++)
402 {
403 // For each copy in the range of copy numbers
404 for (G4int copy = copyInfo->copyNumberLow;
405 copy <= copyInfo->copyNumberHigh;
406 copy++)
407 {
408#if defined (DEBUG_HITS) || defined (DEBUG_MAPS)
409 G4cout << "LArG4::BarrelCryostat::CalibrationCalculator::CalibrationCalculator - "
410 << " adding copy=" << copy
411 << " to identifierMap"
412 << G4endl;
413#endif
414 // Add to the map that's based on copy number.
415 identifierMap[copy] = &(copyInfo->identifierInfo);
416 }
417 }
418
419 // Add to the map that's based on volume name; it
420 // contains maps based on copy number.
421 volumeMap[volume.volumeName] = std::move(identifierMap);
422
423#if defined (DEBUG_HITS) || defined (DEBUG_MAPS)
424 G4cout << "LArG4::BarrelCryostat::CalibrationCalculator::CalibrationCalculator - "
425 << " volume '"
426 << volume.volumeName
427 << "' added to map."
428 << G4endl;
429#endif
430
431 }
432 return volumeMap;
433 }(); // end of lambda
434
435 return instance;
436 }
std::map< std::string, double > instance
std::map< G4String, identifierMap_t > volumeMap_t
const volumeMap_t & volumeMap()
volumeMap singleton
static const VolumeInfo_t volumes[]
std::map< G4int, const IdentifierInfo_t * > identifierMap_t

Variable Documentation

◆ info1

const CopyNumberInfo_t LArG4::BarrelCryostat::info1[]
static

Definition at line 166 of file CryostatCalibrationCalculator.cxx.

167 {
168 // ------------- region inner warm wall and solenoid ------------
169 // copy number range (low, high)
170 // { 1, 1,
171 // // Det Sub Typ Sam
172 // { 10, 4, 1, 1,
173 // sizeof(region010)/sizeof(RegionInfo_t),
174 // region010 }
175 // },
176 // copy number range (low, high)
177 { 56, 60,
178 // Det Sub Typ Sam
179 { 10, 4, 1, 1,
180 sizeof(region010)/sizeof(RegionInfo_t),
181 region010 }
182 },
183 // ------------------ region inner cold wall, Cyl -----------------
184 // copy number range (low, high)
185 // { 4, 5,
186 // // Det Sub Typ Sam
187 // { 10, 4, 1, 1,
188 // sizeof(region011)/sizeof(RegionInfo_t),
189 // region011 }
190 // },
191 // copy number range (low, high)
192 // { 55, 55,
193 // // Det Sub Typ Sam
194 // { 10, 4, 1, 1,
195 // sizeof(region011)/sizeof(RegionInfo_t),
196 // region011 }
197 // },
198 // copy number range (low, high)
199 // { 61, 61,
200 // // Det Sub Typ Sam
201 // { 10, 4, 1, 1,
202 // sizeof(region011)/sizeof(RegionInfo_t),
203 // region011 }
204 // // 84 bolts inside this cylinder have the same name
205 // // and the same copy#=61 => Edeposits in bolts are collected
206 //
207 // },
208 // --- region: inner warm walls, cables and services in front of EMEC
209 // copy number range (low, high)
210 // { 17, 19,
211 // // Det Sub Typ Sam
212 // { 10, 4, 1, 1,
213 // sizeof(region012)/sizeof(RegionInfo_t),
214 // region012 }
215 // },
216 // { 50, 52,
217 // // Det Sub Typ Sam
218 // { 10, 4, 1, 1,
219 // sizeof(region012)/sizeof(RegionInfo_t),
220 // region012 }
221 // },
222
223 // ---------------- outer warm and cold walls, cables and services
224 // copy number range (low, high)
225 // { 3, 3,
226 // // Det Sub Typ Sam
227 // { 10, 4, 1, 2,
228 // sizeof(region021)/sizeof(RegionInfo_t),
229 // region021 }
230 // },
231 { 6, 6,
232 // Det Sub Typ Sam
233 { 10, 4, 1, 2,
234 sizeof(region020)/sizeof(RegionInfo_t),
235 region020 }
236 },
237 { 7, 10,
238 // Det Sub Typ Sam
239 { 10, 4, 1, 2,
240 sizeof(region021)/sizeof(RegionInfo_t),
241 region021 }
242 },
243 { 11, 11,
244 // Det Sub Typ Sam
245 { 10, 4, 1, 2,
246 sizeof(region020)/sizeof(RegionInfo_t),
247 region020 }
248 },
249 { 12, 12,
250 // Det Sub Typ Sam
251 { 10, 4, 1, 2,
252 sizeof(region021)/sizeof(RegionInfo_t),
253 region021 }
254 },
255 { 14, 16,
256 // Det Sub Typ Sam
257 { 10, 4, 1, 2,
258 sizeof(region021)/sizeof(RegionInfo_t),
259 region021 }
260 },
261 // { 48, 48,
262 // // Det Sub Typ Sam
263 // { 10, 4, 1, 2,
264 // sizeof(region021)/sizeof(RegionInfo_t),
265 // region021 }
266 // },
267 // --------------- Half::Cylinder (Old name, info4 was moved to here)
268 // --- placed inside LAr of each Half Barrel ------
269 // copy number range (low, high)
270 { 20, 20, // outer of acco in the center
271 // Det Sub Typ Sam
272 { 10, 4, 1, 2,
273 sizeof(region020)/sizeof(RegionInfo_t),
274 region020 }
275 },
276 { 24, 44, // 24 - 44 outer support-rings
277 // Det Sub Typ Sam
278 { 10, 4, 1, 2,
279 sizeof(region020)/sizeof(RegionInfo_t),
280 region020 }
281 },
282 };
static const RegionInfo_t region021[]
static const RegionInfo_t region010[]
static const RegionInfo_t region020[]

◆ info2

const CopyNumberInfo_t LArG4::BarrelCryostat::info2[]
static
Initial value:
=
{
{ 1, 1,
{ 10, 4, 1, 1,
sizeof(region010)/sizeof(RegionInfo_t),
},
}

Definition at line 284 of file CryostatCalibrationCalculator.cxx.

285 {
286 //----region: inner wall ---------------------
287 { 1, 1,
288 // Det Sub Typ Sam
289 { 10, 4, 1, 1,
290 sizeof(region010)/sizeof(RegionInfo_t),
291 region010 }
292 },
293 };

◆ info3

const CopyNumberInfo_t LArG4::BarrelCryostat::info3[]
static
Initial value:
=
{
{ 12, 12,
{ 10, 4, 1, 2,
sizeof(region021)/sizeof(RegionInfo_t),
},
{ 7, 7,
{ 10, 4, 1, 2,
sizeof(region021)/sizeof(RegionInfo_t),
},
{ 1, 1,
{ 10, 4, 1, 1,
sizeof(region012)/sizeof(RegionInfo_t),
},
}
static const RegionInfo_t region012[]

Definition at line 295 of file CryostatCalibrationCalculator.cxx.

296 {
297 // ---------------Sectors -----------------
298 // copy number range (low, high)
299 { 12, 12, // legs
300 // Det Sub Typ Sam
301 { 10, 4, 1, 2,
302 sizeof(region021)/sizeof(RegionInfo_t),
303 region021 }
304 },
305 { 7, 7, // ears
306 // Det Sub Typ Sam
307 { 10, 4, 1, 2,
308 sizeof(region021)/sizeof(RegionInfo_t),
309 region021 }
310 },
311 { 1, 1, // Ti blocks 11 - 34 (copy number arbitrary)
312 // Det Sub Typ Sam
313 { 10, 4, 1, 1,
314 sizeof(region012)/sizeof(RegionInfo_t),
315 region012 }
316 },
317 };

◆ numberOfVolumes

const G4int LArG4::BarrelCryostat::numberOfVolumes = sizeof(volumes) / sizeof(VolumeInfo_t)
static

Definition at line 370 of file CryostatCalibrationCalculator.cxx.

◆ region010

const RegionInfo_t LArG4::BarrelCryostat::region010[]
static
Initial value:
=
{ { 0, 0.0, 1.5, 0.1, M_PI/32. },
{ 4, 1.5, 1.6, 0.1, M_PI/32. },
{ 5, 1.5, 1.8, 0.1, M_PI/32. },
{ 6, 1.3, 3.2, 0.1, M_PI/32. } }
#define M_PI

Definition at line 125 of file CryostatCalibrationCalculator.cxx.

128 { { 0, 0.0, 1.5, 0.1, M_PI/32. },
129 { 4, 1.5, 1.6, 0.1, M_PI/32. },
130 { 5, 1.5, 1.8, 0.1, M_PI/32. },
131 { 6, 1.3, 3.2, 0.1, M_PI/32. } };

◆ region012

const RegionInfo_t LArG4::BarrelCryostat::region012[]
static
Initial value:
=
{ { 4, 1.5, 1.6, 0.1, M_PI/32. },
{ 5, 1.5, 1.8, 0.1, M_PI/32. },
{ 6, 1.3, 3.2, 0.1, M_PI/32. } }

Definition at line 142 of file CryostatCalibrationCalculator.cxx.

145 { { 4, 1.5, 1.6, 0.1, M_PI/32. },
146 { 5, 1.5, 1.8, 0.1, M_PI/32. },
147 { 6, 1.3, 3.2, 0.1, M_PI/32. } };

◆ region020

const RegionInfo_t LArG4::BarrelCryostat::region020[]
static
Initial value:
=
{ { 0, 0.0, 1.0, 0.1, M_PI/32. },
{ 2, 1.0, 1.5, 0.1, M_PI/32. } }

Definition at line 150 of file CryostatCalibrationCalculator.cxx.

153 { { 0, 0.0, 1.0, 0.1, M_PI/32. },
154 { 2, 1.0, 1.5, 0.1, M_PI/32. } };

◆ region021

const RegionInfo_t LArG4::BarrelCryostat::region021[]
static
Initial value:
=
{ { 1, 0.0, 1.0, 0.1, M_PI/32. },
{ 2, 1.0, 1.5, 0.1, M_PI/32. } }

Definition at line 156 of file CryostatCalibrationCalculator.cxx.

160 { { 1, 0.0, 1.0, 0.1, M_PI/32. },
161 { 2, 1.0, 1.5, 0.1, M_PI/32. } };

◆ volume1

const VolumeInfo_t LArG4::BarrelCryostat::volume1
static
Initial value:
=
{ "LAr::Barrel::Cryostat::Cylinder",
sizeof(info1) / sizeof(CopyNumberInfo_t),
}
static const CopyNumberInfo_t info1[]

Definition at line 340 of file CryostatCalibrationCalculator.cxx.

341 { "LAr::Barrel::Cryostat::Cylinder",
342 sizeof(info1) / sizeof(CopyNumberInfo_t),
343 info1
344 };

◆ volume2

const VolumeInfo_t LArG4::BarrelCryostat::volume2
static
Initial value:
=
{ "LAr::Barrel::Cryostat::InnerWall",
sizeof(info2) / sizeof(CopyNumberInfo_t),
}
static const CopyNumberInfo_t info2[]

Definition at line 351 of file CryostatCalibrationCalculator.cxx.

352 { "LAr::Barrel::Cryostat::InnerWall",
353 sizeof(info2) / sizeof(CopyNumberInfo_t),
354 info2
355 };

◆ volume3

const VolumeInfo_t LArG4::BarrelCryostat::volume3
static
Initial value:
=
{ "LAr::Barrel::Cryostat::Sector",
sizeof(info3) / sizeof(CopyNumberInfo_t),
}
static const CopyNumberInfo_t info3[]

Definition at line 357 of file CryostatCalibrationCalculator.cxx.

358 { "LAr::Barrel::Cryostat::Sector",
359 sizeof(info3) / sizeof(CopyNumberInfo_t),
360 info3
361 };

◆ volumes

const VolumeInfo_t LArG4::BarrelCryostat::volumes[] = { volume1, volume2, volume3}
static

Definition at line 369 of file CryostatCalibrationCalculator.cxx.