![]() |
Belle II Software
release-08-02-04
|
Geometry parameters of HAPD. More...
#include <ARICHGeoAerogelPlane.h>


Classes | |
| struct | layer |
| Struct to hold aerogel layer parameters Only for averaged properties of the aerogel tiles/layers. More... | |
| struct | tilestr |
| Struct to hold individual aerogel tile parameters layer : 0 - up layer : 1 - down. More... | |
Public Member Functions | |
| ARICHGeoAerogelPlane () | |
| Default constructor. | |
| bool | isConsistent () const override |
| Consistency check of geometry parameters. More... | |
| void | print (const std::string &title="Aerogel plane parameters:") const override |
| Print the content of the class. More... | |
| void | setPlacement (double x, double y, double z, double rx, double ry, double rz) |
| Set aerogel plane positioning within ARICH local volume. More... | |
| void | addSupportPlate (double inR, double outR, double thick, const std::string &material) |
| Set parameters of aerogel support plate. More... | |
| void | setWallThickness (double thick) |
| Set thickness of aluminum walls between aerogel tiles. More... | |
| void | setWallHeight (double height) |
| Set height of aluminum walls between aerogel tiles. More... | |
| void | setTileGap (double gap) |
| Set gap between aerogel tile and aluminum wall. More... | |
| void | addTileParameters (int ring, int column, int layerN, double n, double transmL, double thick, const std::string &material) |
| Add parameters of individual tile. More... | |
| TVector3 | getPosition () const |
| get position vector of aerogel plane in ARICH local frame More... | |
| TRotation | getRotation () const |
| get rotation matrix of aerogel plane in ARICH local frame More... | |
| double | getRotationX () const |
| Get angle of rotation around X axis. More... | |
| double | getRotationY () const |
| Get angle of rotation around Y axis. More... | |
| double | getRotationZ () const |
| Get angle of rotation around Z axis. More... | |
| double | getSupportInnerR () const |
| Get support plate inner radius. More... | |
| double | getSupportOuterR () const |
| Get support plate outer radius. More... | |
| double | getSupportThickness () const |
| Get support plate thickness. More... | |
| double | getWallThickness () const |
| Get thickness of aluminum walls between aerogel tiles. More... | |
| double | getWallHeight () const |
| Get height of aluminum walls between aerogel tiles. More... | |
| double | getTileGap () const |
| Get gap between aerogel tile and aluminum wall. More... | |
| const std::string & | getSupportMaterial () const |
| Get material of support plate. More... | |
| void | setWallRadius (std::vector< double > &rs) |
| Set radiuses at which "r" aluminum walls between tiles are placed (+inner+outter aluminum ring) More... | |
| void | setWallDPhi (std::vector< double > &dphi) |
| Set phi (angle) distance between "phi" aluminum walls between aerogel tiles for all aerogel tile rings. More... | |
| void | setAerogelLayer (unsigned ilayer, double thick, double rIndex, double trLen, const std::string &material) |
| Set parameters of i-th aerogel layer. More... | |
| void | setNAeroSlotsIndividualRing (const std::vector< int > &nAeroSlotsIndividualRing) |
| Set vector of numbers of aerogel slots in individual ring. More... | |
| unsigned | getNLayers () const |
| Get number of aerogel layers. More... | |
| unsigned | getNRings () const |
| Get number of aluminum wall rings (should be number of tile rings + 1) More... | |
| double | getRingRadius (unsigned iRing) const |
| Get radius of i-th aluminum ring between aerogel tiles (inner radius of ring) More... | |
| double | getRingDPhi (unsigned iRing) const |
| Get phi (angle) distance between "phi" aluminum wall between aerogel tiles in i-th tile ring. More... | |
| double | getLayerThickness (unsigned iLayer) const |
| Get thickness of tiles i-th aerogel layer. More... | |
| double | getLayerRefIndex (unsigned iLayer) const |
| Get refractive index of tiles i-th aerogel layer. More... | |
| double | getLayerTrLength (unsigned iLayer) const |
| Get transmission length of tiles i-th aerogel layer. More... | |
| const std::string & | getLayerMaterial (unsigned iLayer) const |
| Get material name of tiles i-th aerogel layer. More... | |
| unsigned | getAerogelTileID (double x, double y) const |
| Get ID of aerogel tile containing point (x,y) (actually this is tile slot ID, as it is the same for all layers) More... | |
| void | setSimple (std::vector< double > ¶ms) |
| Set to use simple aerogel plane (single square aerogel tile (2 layers), for cosmic test for example) Vector of parameters should have the for of: x size, y size, x position, y position, rotation phi angle. More... | |
| bool | isSimple () const |
| Use simple aerogel configuration. More... | |
| const std::vector< double > & | getSimpleParams () const |
| Get parameters of simple aerogel configuration. More... | |
| const std::vector< int > & | getNAeroSlotsIndividualRing () const |
| Get vector of numbers of aerogel slots in individual ring. More... | |
| double | getAerogelZPosition () const |
| Get starting Z position of first aerogel layer. More... | |
| void | setFullAerogelMaterialDescriptionKey (int fullAerogelMaterialDescriptionKey) |
| Set full aerogel material description key. More... | |
| int | getFullAerogelMaterialDescriptionKey () const |
| Get full aerogel material description key. More... | |
| unsigned | getTileParameters (int ring, int column, int layerN, double &n, double &transmL, double &thick, std::string &material) const |
| Get parameters of individual tile. More... | |
| double | getTileThickness (int ring, int column, int layerN) const |
| Get thickness of individual tile. More... | |
| std::string | getTileMaterialName (int ring, int column, int layerN) const |
| Get material name of individual tile. More... | |
| double | getTotalTileThickness (int ring, int column) const |
| Get total thickness of the aerogel tiles tile_up + tile_down for a given slot. More... | |
| double | getMaximumTotalTileThickness () const |
| Get maximum total thickness of the aerogel tiles tile_up + tile_down for all the slots. More... | |
| void | setImgTubeThickness (double imgTubeThickness) |
| Set imaginary tube thikness just after aerogel layers used as volume to which tracks are extrapolated. More... | |
| double | getImgTubeThickness () const |
| Get imaginary tube thikness just after aerogel layers used as volume to which tracks are extrapolated. More... | |
| void | setCompensationARICHairVolumeThick_min (double compensationARICHairVolumeThick_min) |
| Set minimum thickness of the compensation volume with ARICH air. More... | |
| double | getCompensationARICHairVolumeThick_min () const |
| Get minimum thickness of the compensation volume with ARICH air. More... | |
| void | printTileParameters (const std::string &title="Aerogel tiles parameters:") const |
| Print the content of the m_tiles vector of tilestr structure it contains position of the tile its refractive index, rayleigh scattering length, thickness. More... | |
| void | printSingleTileParameters (unsigned i) const |
| Print the content of the single tilestr structure it contains position of the tile its refractive index, rayleigh scattering length, thickness. More... | |
| void | testGetTileParametersFunction () const |
| This function tests the getTileParameters function. | |
| void | setName (const std::string &name) |
| Sets object name. More... | |
| const std::string & | getName () const |
| Returns object name. More... | |
| virtual void | printSurface (const GeoOpticalSurface &surface) const |
| Print the content of optical surface. More... | |
| virtual void | printPlacement (double x, double y, double z, double rx, double ry, double rz) const |
| Print volume positioning parameters. More... | |
Protected Member Functions | |
| ClassDef (ARICHGeoBase, 2) | |
| ClassDef. | |
Protected Attributes | |
| std::string | m_name |
| geometry object name | |
Static Protected Attributes | |
| static double | s_unit = Unit::cm |
| conversion unit for length | |
| static std::string | s_unitName |
| conversion unit name | |
Private Member Functions | |
| ClassDefOverride (ARICHGeoAerogelPlane, 3) | |
| ClassDef. | |
Private Attributes | |
| double | m_x = 0 |
| x position | |
| double | m_y = 0 |
| y position | |
| double | m_z = 0 |
| z position | |
| double | m_rx = 0 |
| rotation around x-axis | |
| double | m_ry = 0 |
| rotation around y-axis | |
| double | m_rz = 0 |
| rotation around z-axis | |
| std::vector< double > | m_r |
| "r" aluminum wall radiuses | |
| std::vector< double > | m_dPhi |
| "phi" aluminum wall distances in tile ring | |
| std::vector< int > | m_nAeroSlotsIndividualRing |
| Number of aerogel slots in individual ring. | |
| std::vector< layer > | m_layers |
| parameters averaged properties of the aerogel tiles/layers (up and down) | |
| std::vector< tilestr > | m_tiles |
| parameters of the individual aerogel tiles | |
| double | m_tileGap = 0 |
| gap between aerogel tiles and aluminum walls | |
| std::string | m_supportMaterial |
| material of support plate | |
| double | m_innerR = 0 |
| inner radius of support plate | |
| double | m_outerR = 0 |
| outer radius of support plate | |
| double | m_thickness = 0 |
| thickness of support plate | |
| double | m_wallThickness = 0 |
| thickness of aluminum walls between aerogel tiles | |
| double | m_wallHeight = 0 |
| height (z) of aluminum walls between aerogel tiles | |
| unsigned | m_rSize = 0 |
| size of m_r vector | |
| unsigned | m_dPhiSize = 0 |
| size of m_dPhi vector | |
| unsigned | m_nLayers = 0 |
| number of aerogel tile layers | |
| bool | m_simple = 0 |
| std::vector< double > | m_simpleParams |
| int | m_fullAerogelMaterialDescriptionKey |
| Full aerogel material description key : 1 - use material explicitly for each aerogel tile, 0 - use two types of aerogel material. More... | |
| double | m_imgTubeThickness |
| imaginary tube thikness just after aerogel layers used as volume to which tracks are extrapolated More... | |
| double | m_compensationARICHairVolumeThick_min = 0 |
| Minimum thickness of the compensation volume with ARICH air. | |
Geometry parameters of HAPD.
Definition at line 27 of file ARICHGeoAerogelPlane.h.
|
inline |
Set parameters of aerogel support plate.
| inR | inner radius |
| outR | outer radius |
| thick | thickness |
| material | material |
Definition at line 92 of file ARICHGeoAerogelPlane.h.
|
inline |
Add parameters of individual tile.
| ring | aerogel tile ring ID (range : [1;4]) |
| column | aerogel tile column ID (range : [1;22] [1;28] [1;34] [1;40]) |
| layer | aerogel tile layer ID (layer : 0 - up; layer : 1 - down) |
| n | aerogel tile refractive index |
| transmL | aerogel tile rayleigh scattering length |
| thick | aerogel tile thickness |
| material | aerogel tile material name |
Definition at line 128 of file ARICHGeoAerogelPlane.h.
| unsigned getAerogelTileID | ( | double | x, |
| double | y | ||
| ) | const |
Get ID of aerogel tile containing point (x,y) (actually this is tile slot ID, as it is the same for all layers)
| x | x position |
| y | y position |
Definition at line 120 of file ARICHGeoAerogelPlane.cc.
|
inline |
Get starting Z position of first aerogel layer.
Definition at line 351 of file ARICHGeoAerogelPlane.h.
|
inline |
Get minimum thickness of the compensation volume with ARICH air.
Definition at line 457 of file ARICHGeoAerogelPlane.h.
|
inline |
Get full aerogel material description key.
1 - use material explicitly for each aerogel tile. Any integer (but not 1) - uses two types of aerogel material for upstream and downstream.
Definition at line 373 of file ARICHGeoAerogelPlane.h.
|
inline |
Get imaginary tube thikness just after aerogel layers used as volume to which tracks are extrapolated.
Definition at line 439 of file ARICHGeoAerogelPlane.h.
|
inline |
Get material name of tiles i-th aerogel layer.
| iLayer | layer number |
Definition at line 298 of file ARICHGeoAerogelPlane.h.
|
inline |
Get refractive index of tiles i-th aerogel layer.
| iLayer | layer number |
Definition at line 284 of file ARICHGeoAerogelPlane.h.
|
inline |
Get thickness of tiles i-th aerogel layer.
| iLayer | layer number |
Definition at line 277 of file ARICHGeoAerogelPlane.h.
|
inline |
Get transmission length of tiles i-th aerogel layer.
| iLayer | layer number |
Definition at line 291 of file ARICHGeoAerogelPlane.h.
| double getMaximumTotalTileThickness | ( | ) | const |
Get maximum total thickness of the aerogel tiles tile_up + tile_down for all the slots.
Definition at line 221 of file ARICHGeoAerogelPlane.cc.
|
inline |
Get vector of numbers of aerogel slots in individual ring.
| nAeroSlotsIndividualRing | vector of numbers of aerogel slots in individual ring |
Definition at line 342 of file ARICHGeoAerogelPlane.h.
|
inlineinherited |
|
inline |
Get number of aerogel layers.
Definition at line 250 of file ARICHGeoAerogelPlane.h.
|
inline |
Get number of aluminum wall rings (should be number of tile rings + 1)
Definition at line 256 of file ARICHGeoAerogelPlane.h.
|
inline |
get position vector of aerogel plane in ARICH local frame
Definition at line 137 of file ARICHGeoAerogelPlane.h.
|
inline |
Get phi (angle) distance between "phi" aluminum wall between aerogel tiles in i-th tile ring.
| iRing | ring number (from 1->) |
Definition at line 270 of file ARICHGeoAerogelPlane.h.
|
inline |
Get radius of i-th aluminum ring between aerogel tiles (inner radius of ring)
| iRing | ring number (from 1->) |
Definition at line 263 of file ARICHGeoAerogelPlane.h.
|
inline |
get rotation matrix of aerogel plane in ARICH local frame
Definition at line 143 of file ARICHGeoAerogelPlane.h.
|
inline |
Get angle of rotation around X axis.
Definition at line 154 of file ARICHGeoAerogelPlane.h.
|
inline |
Get angle of rotation around Y axis.
Definition at line 160 of file ARICHGeoAerogelPlane.h.
|
inline |
Get angle of rotation around Z axis.
Definition at line 166 of file ARICHGeoAerogelPlane.h.
|
inline |
Get parameters of simple aerogel configuration.
Definition at line 333 of file ARICHGeoAerogelPlane.h.
|
inline |
Get support plate inner radius.
Definition at line 172 of file ARICHGeoAerogelPlane.h.
|
inline |
Get material of support plate.
Definition at line 208 of file ARICHGeoAerogelPlane.h.
|
inline |
Get support plate outer radius.
Definition at line 178 of file ARICHGeoAerogelPlane.h.
|
inline |
Get support plate thickness.
Definition at line 184 of file ARICHGeoAerogelPlane.h.
|
inline |
Get gap between aerogel tile and aluminum wall.
Definition at line 202 of file ARICHGeoAerogelPlane.h.
| std::string getTileMaterialName | ( | int | ring, |
| int | column, | ||
| int | layerN | ||
| ) | const |
Get material name of individual tile.
| ring | aerogel tile ring ID (range : [1;4]) |
| column | aerogel tile column ID (range : [1;22] [1;28] [1;34] [1;40]) |
| layer | aerogel tile layer ID (layer : 0 - up; layer : 1 - down) |
Definition at line 189 of file ARICHGeoAerogelPlane.cc.
| unsigned getTileParameters | ( | int | ring, |
| int | column, | ||
| int | layerN, | ||
| double & | n, | ||
| double & | transmL, | ||
| double & | thick, | ||
| std::string & | material | ||
| ) | const |
Get parameters of individual tile.
| ring | aerogel tile ring ID (range : [1;4]) |
| column | aerogel tile column ID (range : [1;22] [1;28] [1;34] [1;40]) |
| layer | aerogel tile layer ID (layer : 0 - up; layer : 1 - down) |
| &n | address of the variable : n aerogel tile refractive index |
| &transmL | address of the variable : transmL aerogel tile rayleigh scattering length |
| &thick | address of the variable : thick aerogel tile thickness |
| &material | address of the variable : material aerogel tile material name |
Definition at line 146 of file ARICHGeoAerogelPlane.cc.
| double getTileThickness | ( | int | ring, |
| int | column, | ||
| int | layerN | ||
| ) | const |
Get thickness of individual tile.
| ring | aerogel tile ring ID (range : [1;4]) |
| column | aerogel tile column ID (range : [1;22] [1;28] [1;34] [1;40]) |
| layer | aerogel tile layer ID (layer : 0 - up; layer : 1 - down) |
Definition at line 174 of file ARICHGeoAerogelPlane.cc.
| double getTotalTileThickness | ( | int | ring, |
| int | column | ||
| ) | const |
Get total thickness of the aerogel tiles tile_up + tile_down for a given slot.
| ring | aerogel tile ring ID |
| column | aerogel tile column ID |
Definition at line 204 of file ARICHGeoAerogelPlane.cc.
|
inline |
Get height of aluminum walls between aerogel tiles.
Definition at line 196 of file ARICHGeoAerogelPlane.h.
|
inline |
Get thickness of aluminum walls between aerogel tiles.
Definition at line 190 of file ARICHGeoAerogelPlane.h.
|
overridevirtual |
Consistency check of geometry parameters.
Reimplemented from ARICHGeoBase.
Definition at line 17 of file ARICHGeoAerogelPlane.cc.
|
inline |
Use simple aerogel configuration.
Definition at line 324 of file ARICHGeoAerogelPlane.h.
|
overridevirtual |
Print the content of the class.
| title | title to be printed |
Reimplemented from ARICHGeoBase.
Definition at line 55 of file ARICHGeoAerogelPlane.cc.
|
virtualinherited |
Print volume positioning parameters.
| x | x position |
| y | y position |
| z | z position |
| rx | rotation around x-axis |
| ry | rotation around y-axis |
| rz | rotation around z-axis |
Definition at line 25 of file ARICHGeoBase.cc.
| void printSingleTileParameters | ( | unsigned | i | ) | const |
Print the content of the single tilestr structure it contains position of the tile its refractive index, rayleigh scattering length, thickness.
| i | entry counter |
Definition at line 260 of file ARICHGeoAerogelPlane.cc.
|
virtualinherited |
Print the content of optical surface.
| surface | optical surface parameters |
Definition at line 32 of file ARICHGeoBase.cc.
| void printTileParameters | ( | const std::string & | title = "Aerogel tiles parameters:" | ) | const |
Print the content of the m_tiles vector of tilestr structure it contains position of the tile its refractive index, rayleigh scattering length, thickness.
| title | title to be printed |
Definition at line 237 of file ARICHGeoAerogelPlane.cc.
|
inline |
Set parameters of i-th aerogel layer.
| ilayer | layer number (1 is placed first, at lowest z, etc...) |
| thick | thickness of aerogel tiles in layer |
| rIndex | refractive index of aerogel tiles in layer |
| trLen | transmission length of aerogel tiles in layer |
| material | material of aerogel tiles in layer |
Definition at line 230 of file ARICHGeoAerogelPlane.h.
|
inline |
Set minimum thickness of the compensation volume with ARICH air.
| compensationARICHairVolumeThick_min | minimum thickness of the compensation volume with ARICH air. |
Definition at line 448 of file ARICHGeoAerogelPlane.h.
|
inline |
Set full aerogel material description key.
1 - use material explicitly for each aerogel tile. Any integer (but not 1) - uses two types of aerogel material for upstream and downstream.
| fullAerogelMaterialDescriptionKey | - full aerogel material description key. |
Definition at line 362 of file ARICHGeoAerogelPlane.h.
|
inline |
Set imaginary tube thikness just after aerogel layers used as volume to which tracks are extrapolated.
| imgTubeThickness | imaginary tube thikness. |
Definition at line 429 of file ARICHGeoAerogelPlane.h.
|
inline |
Set vector of numbers of aerogel slots in individual ring.
| nAeroSlotsIndividualRing | vector of numbers of aerogel slots in individual ring |
Definition at line 244 of file ARICHGeoAerogelPlane.h.
|
inlineinherited |
|
inline |
Set aerogel plane positioning within ARICH local volume.
| x | x position |
| y | y position |
| z | z position |
| rx | rotation around x-axis |
| ry | rotation around y-axis |
| rz | rotation around z-axis |
Definition at line 83 of file ARICHGeoAerogelPlane.h.
|
inline |
Set to use simple aerogel plane (single square aerogel tile (2 layers), for cosmic test for example) Vector of parameters should have the for of: x size, y size, x position, y position, rotation phi angle.
| params | vector of aerogel tile parameters |
Definition at line 313 of file ARICHGeoAerogelPlane.h.
|
inline |
Set gap between aerogel tile and aluminum wall.
| gap | gap size |
Definition at line 116 of file ARICHGeoAerogelPlane.h.
|
inline |
Set phi (angle) distance between "phi" aluminum walls between aerogel tiles for all aerogel tile rings.
| dphi | vector of phi (angle) distances |
Definition at line 220 of file ARICHGeoAerogelPlane.h.
|
inline |
Set height of aluminum walls between aerogel tiles.
| height | wall height |
Definition at line 110 of file ARICHGeoAerogelPlane.h.
|
inline |
Set radiuses at which "r" aluminum walls between tiles are placed (+inner+outter aluminum ring)
| rs | vector of aluminum rings between aerogel tiles radiuses (inner radius!) |
Definition at line 214 of file ARICHGeoAerogelPlane.h.
|
inline |
Set thickness of aluminum walls between aerogel tiles.
| thick | wall thickness |
Definition at line 104 of file ARICHGeoAerogelPlane.h.
|
private |
Full aerogel material description key : 1 - use material explicitly for each aerogel tile, 0 - use two types of aerogel material.
Definition at line 516 of file ARICHGeoAerogelPlane.h.
|
private |
imaginary tube thikness just after aerogel layers used as volume to which tracks are extrapolated
Definition at line 519 of file ARICHGeoAerogelPlane.h.