![]() |
Project
|
Implementation of the slat-stations geometry. More...
#include "Materials.h"
#include "Station345Geometry.h"
#include <TGeoCompositeShape.h>
#include <TGeoManager.h>
#include <TGeoMedium.h>
#include <TGeoShape.h>
#include <TGeoTube.h>
#include <TGeoVolume.h>
#include <TMath.h>
#include <rapidjson/document.h>
#include <rapidjson/filereadstream.h>
#include <iostream>
#include <string>
#include <array>
Go to the source code of this file.
Namespaces | |
namespace | o2 |
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete objects | |
namespace | o2::mch |
Functions | |
TGeoVolume * | o2::mch::getDualSampa () |
bool | o2::mch::isRounded (string name) |
bool | o2::mch::isShort (string name) |
TGeoCompositeShape * | o2::mch::getRoundedShape (const char *name, float halfThickness, float xPos, float yPos, float radius) |
void | o2::mch::createCommonVolumes () |
void | o2::mch::createPCBs () |
void | o2::mch::createSlats () |
void | o2::mch::createSupportPanels () |
void | o2::mch::buildHalfChambers (TGeoVolume &topVolume) |
vector< TGeoVolume * > | o2::mch::getStation345SensitiveVolumes () |
void | o2::mch::createStation345Geometry (TGeoVolume &topVolume) |
Variables | |
const float | o2::mch::kGasLength = 40. |
Constants. | |
const float | o2::mch::kGasHalfHeight = 40. / 2 |
const float | o2::mch::kPCBLength = kGasLength |
const float | o2::mch::kShortPCBLength = 35. |
const float | o2::mch::kRoundedPCBLength = 42.5 |
const float | o2::mch::kR1PCBLength = 19.25 |
const float | o2::mch::kPCBHalfHeight = 58. / 2 |
const float | o2::mch::kSlatPanelHalfHeight = 42.5 / 2 |
const float | o2::mch::kGlueHalfThickness = 0.004 / 2 |
const float | o2::mch::kNomexBulkHalfThickness = 0.025 / 2 |
const float | o2::mch::kCarbonHalfThickness = 0.02 / 2 |
const float | o2::mch::kNomexHalfThickness = 0.8 / 2 |
const float | o2::mch::kSpacerHalfThickness = kGasHalfThickness |
const float | o2::mch::kHoriSpacerHalfHeight = 1.95 / 2 |
const float | o2::mch::kVertSpacerHalfLength = 2.5 / 2 |
const float | o2::mch::kRoundedSpacerHalfLength = 1. |
const float | o2::mch::kBorderHalfHeight = 2.5 |
const float | o2::mch::kBorderHalfThickness = kGasHalfThickness |
const float | o2::mch::kDualSampaHalfLength = 3.2 / 2 |
const float | o2::mch::kDualSampaHalfHeight = 2.5 |
const float | o2::mch::kDualSampaHalfThickness = 0.027 / 2 |
const float | o2::mch::kDualSampaYPos = 0.45 + kSlatPanelHalfHeight + kDualSampaHalfHeight |
const float | o2::mch::kLVCableHalfHeight = 2.6 / 2 |
Cables (copper) | |
const float | o2::mch::kLVCableHalfThickness = 0.026 / 2 |
const float | o2::mch::kCarbonSupportHalfThickness = 0.03 / 2 |
Support panels. | |
const float | o2::mch::kGlueSupportHalfThickness = 0.02 / 2 |
const float | o2::mch::kNomexSupportHalfThickness = 1.5 / 2 |
const float | o2::mch::kSt3SupportHalfHeight = 361. / 2 |
const float | o2::mch::kSt4SupportHalfHeight = 530. / 2 |
const float | o2::mch::kSt5SupportHalfHeight = 570. / 2 |
const float | o2::mch::kCh5SupportHalfLength = 162. / 2 |
const float | o2::mch::kCh6SupportHalfLength = 167. / 2 |
const float | o2::mch::kSt45SupportHalfLength = 260. / 2 |
const float | o2::mch::kSt3Radius = 29.5 |
const float | o2::mch::kSt45Radius = 37.5 |
const float | o2::mch::kSt3RoundedSlatYPos = 37.8 |
const float | o2::mch::kSt45RoundedSlatYPos = 38.2 |
const map< string, array< int, 4 > > | o2::mch::kPcbTypes = {{"B1N1", {10, 10, 7, 7}}, {"B2N2-", {5, 5, 4, 3}}, {"B2N2+", {5, 5, 3, 4}}, {"B3-N3", {3, 2, 2, 2}}, {"B3+N3", {2, 3, 2, 2}}, {"R1", {3, 4, 2, 3}}, {"R2", {13, 4, 9, 3}}, {"R3", {13, 1, 10, 0}}, {"S2-", {4, 5, 3, 3}}, {"S2+", {5, 4, 3, 3}}} |
const map< string, vector< string > > | o2::mch::kSlatTypes |
const string | o2::mch::jsonSlatDescription |
Json string describing all the necessary parameters to place the slats in the half-chambers. | |
Implementation of the slat-stations geometry.
Definition in file Station345Geometry.cxx.