Commit 21e02957 authored by cbm's avatar cbm
Browse files

optimize trd and much posn in mcbm2022, refs #2306

parent ee11f32b
set(GEOMETRY_VERSION 1b9edab7db86b78fe26a58cf5ce032adb9e2da25)
set(GEOMETRY_VERSION 929a1468f2efbfc31c3a0e3290caaa97247064e0)
set(GEOMETRY_SRC_URL "https://git.cbm.gsi.de/CbmSoft/cbmroot_geometry.git")
......
......@@ -61,7 +61,7 @@ const TString g10 = "G10";
const Int_t fNst = 1; // Number of stations
Int_t fNlayers = 2; // Number of layers
Double_t fLayersZ0[2] = {55.7, 98.7}; // Layers Positions shifted -10cm,-20cm z axis {65.7,118.7)
Double_t fLayersZ0[2] = {65.7, 88.7}; // Layers Positions shifted z axis old {65.7,118.7)
// Double_t fLayersZ0[2] = {85.7, 118.7}; // Layers Positions
Int_t fDetType[2] = {3, 3}; // Detector type
Double_t fX[2] = {7.2, 7.2}; // Placement of modules in X [cm]
......
......@@ -2,103 +2,66 @@
SPDX-License-Identifier: GPL-3.0-only
Authors: David Emschermann [committer], Alexandru Bercuci */
// clang-format off
///
/// \file Create_TRD_Geometry_v22a.C
/// \brief Generates TRD geometry in Root format.
///
// 2021-10-07 - SR -v22a - based on v20b the trd 2d is inserted
// 2021-10-28 - SR - v22c - based on v22a the trd 2d-h is removed
// 2021-10-28 - SR - v22b - based on v22a the trd 2d is removed
// 2021-10-07 - SR - v22a - based on v20b the trd 2d is inserted
// 2021-09-28 - SR - v21b - based on v21a the position is corrected
// 2021-07-25 - AB - v21a - based on v20b, add 2 TRD2D modules and their
// support structure for the 2021 setup
// 2021-07-25 - AB - v21a - based on v20b, add 2 TRD2D modules and their support structure for the 2021 setup
// 2020-05-25 - DE - v20b - based on v20a, use 2 TRD modules for 2021 setup
// 2020-05-23 - DE - v20a - add support structure to TRD v18q, realign module
// in x
// 2020-05-23 - DE - v20a - add support structure to TRD v18q, realign module in x
// 2018-08-24 - DE - v18q - use only 1st 2 layers of TRD in 2018 setup
// 2017-11-22 - DE - v18n - do not generate mBUCH at z=125 cm, only mTRD
// 2017-11-22 - DE - v18m - mBUCH at z=125 cm, mTRD at z=149, 171, 193 and
// 215 cm - layer pitch 22 cm from CAD
// 2017-11-03 - DE - v18l - shift mTRD to z=140 cm for acceptance matching
// with mSTS (= same result as v18g)
// 2017-11-03 - DE - v18k - plot 4 mTRD modules first, then mBUCH to simplyfy
// the realignment in x (= same result as v18j)
// 2017-11-02 - DE - v18j - move Muenster TRD modules back to original
// positions in x (fix bug in v18i)
// 2017-10-17 - DE - v18i - add Bucharest 60x60 cm2 Bucharest TRD module with
// FASP ASICs
// 2017-05-16 - DE - v18e - re-align all TRD modules to same theta angle
// using left side of 4th TRD module as reference
// 2017-11-22 - DE - v18m - mBUCH at z=125 cm, mTRD at z=149, 171, 193 and 215 cm - layer pitch 22 cm from CAD
// 2017-11-03 - DE - v18l - shift mTRD to z=140 cm for acceptance matching with mSTS (= same result as v18g)
// 2017-11-03 - DE - v18k - plot 4 mTRD modules first, then mBUCH to simplyfy the realignment in x (= same result as v18j)
// 2017-11-02 - DE - v18j - move Muenster TRD modules back to original positions in x (fix bug in v18i)
// 2017-10-17 - DE - v18i - add Bucharest 60x60 cm2 Bucharest TRD module with FASP ASICs
// 2017-05-16 - DE - v18e - re-align all TRD modules to same theta angle using left side of 4th TRD module as reference
// 2017-05-02 - DE - v18a - re-base miniTRD v18e on CBM TRD v17a
// 2017-04-28 - DE - v17 - implement power bus bars as defined in the TDR
// 2017-04-26 - DE - v17 - add aluminium ledge around backpanel
// 2017-01-10 - DE - v17a_3e - replace 6 ultimate density by 9 super density
// FEBs for TRD type 1 modules
// 2016-07-05 - FU - v16a_3e - identical to v15a, change the way the trd volume
// is exported to resolve a bug with TGeoShape destructor
// 2015-01-08 - DE - v15a_3e - reduce frame thickness in large modules to 15 mm
// instead of 20 mm
// 2014-06-25 - DE - v14a_3e - consists of only 3 small and 3 large modules
// types (was 4+4 before)
// 2017-01-10 - DE - v17a_3e - replace 6 ultimate density by 9 super density FEBs for TRD type 1 modules
// 2016-07-05 - FU - v16a_3e - identical to v15a, change the way the trd volume is exported to resolve a bug with TGeoShape destructor
// 2015-01-08 - DE - v15a_3e - reduce frame thickness in large modules to 15 mm instead of 20 mm
// 2014-06-25 - DE - v14a_3e - consists of only 3 small and 3 large modules types (was 4+4 before)
// 2014-06-25 - DE - v14a_3e - inner part of all 3 stations is now identical
// 2014-05-02 - DE - v14a_3e - redesign inner part of station 3, now with 5x5-1
// small modules, like in station 1 and station 2
// 2014-05-02 - DE - v14a_3e - include optional GBTX readout boards on each
// module
// 2014-05-02 - DE - v14a_3e - introduce 3x5=15 Spadic FEBs for ultimate density
// on module type 1
//
// 2013-11-14 - DE - v13q_3e - generate information about pad plane layout
// (CbmTrdPads_v14a.h) for all module types in this macro
//
// 2013-11-04 - DE - v13p4 - adapt the number of front-end boards to the pad
// layout of the 540 mm modules
// 2013-11-04 - DE - v13p4 - use 8 module types (4x S + 4x L) to better match
// the occupancy
// 2013-10-31 - DE - v13p4 - modify the support structure of station 1 to match
// with the MUCH/RICH platform
// 2013-10-29 - DE - v13p4 - build lattice grid as TGeoBBox instead of
// VolumeAssembly - in run_sim.C save 9% of time compared to v13p7
// 2013-10-29 - DE - v13p4 - build lattice grid as TGeoBBox instead of
// CompositeShape - in run_sim.C save 18% of time compared to v13p6
//
// 2013-10-28 - DE - introduce new geometry naming scheme: v13p1 - SIS 100
// hadron
// 2013-10-28 - DE - introduce new geometry naming scheme: v13p2 - SIS 100
// electron
// 2014-05-02 - DE - v14a_3e - redesign inner part of station 3, now with 5x5-1 small modules, like in station 1 and station 2
// 2014-05-02 - DE - v14a_3e - include optional GBTX readout boards on each module
// 2014-05-02 - DE - v14a_3e - introduce 3x5=15 Spadic FEBs for ultimate density on module type 1
// 2013-11-14 - DE - v13q_3e - generate information about pad plane layout (CbmTrdPads_v14a.h) for all module types in this macro
// 2013-11-04 - DE - v13p4 - adapt the number of front-end boards to the pad layout of the 540 mm modules
// 2013-11-04 - DE - v13p4 - use 8 module types (4x S + 4x L) to better match the occupancy
// 2013-10-31 - DE - v13p4 - modify the support structure of station 1 to match with the MUCH/RICH platform
// 2013-10-29 - DE - v13p4 - build lattice grid as TGeoBBox instead of VolumeAssembly - in run_sim.C save 9% of time compared to v13p7
// 2013-10-29 - DE - v13p4 - build lattice grid as TGeoBBox instead of CompositeShape - in run_sim.C save 18% of time compared to v13p6
// 2013-10-28 - DE - introduce new geometry naming scheme: v13p1 - SIS 100 hadron
// 2013-10-28 - DE - introduce new geometry naming scheme: v13p2 - SIS 100 electron
// 2013-10-28 - DE - introduce new geometry naming scheme: v13p3 - SIS 100 muon
// 2013-10-28 - DE - introduce new geometry naming scheme: v13p4 - SIS 300
// electron
// 2013-10-28 - DE - introduce new geometry naming scheme: v13p4 - SIS 300 electron
// 2013-10-28 - DE - introduce new geometry naming scheme: v13p5 - SIS 300 muon
// 2013-10-28 - DE - add option to draw the magnetic field vector in the magnet
// 2013-09-27 - DE - do not use TGeoXtru to build the supports, use TGeoBBox
// instead
//
// 2013-06-25 - DE - v13g trd300_rich (10 layers, z = 4100 ) - TRD
// right behind SIS300 RICH
// 2013-06-25 - DE - v13h trd100_sts ( 4 layers, z = 2600 ) - TRD
// completely on RICH/MUCH platform to allow TOF to move upstream
// 2013-06-25 - DE - v13i trd100_rich ( 2 layers, z = 4100 ) - TRD
// right behind RICH
// 2013-06-25 - DE - v13j trd100_rich ( 3 layers, z = 4100 ) - TRD
// right behind RICH
// 2013-06-25 - DE - v13k trd100_rich ( 4 layers, z = 4100 ) - TRD
// right behind RICH
// 2013-06-25 - DE - --- trd100_much_2_absorbers ( 4 layers, z = 4300 ) - same
// as version at z = 4600
// 2013-06-25 - DE - v13l trd100_much_3_absorbers ( 4 layers, z = 4600 ) - TRD
// right behind SIS100 MUCH
// 2013-06-25 - DE - v13m trd300_much_6_absorbers (10 layers, z = 5500 ) - TRD
// right behind SIS300 MUCH
// 2013-06-25 - DE - v13n trd300_rich_stretched (10 layers, z = 4600 ) - TRD
// stretched behind SIS300 RICH
//
// 2013-09-27 - DE - do not use TGeoXtru to build the supports, use TGeoBBox instead
// 2013-06-25 - DE - v13g trd300_rich (10 layers, z = 4100 ) - TRD right behind SIS300 RICH
// 2013-06-25 - DE - v13h trd100_sts ( 4 layers, z = 2600 ) - TRD completely on RICH/MUCH platform to allow TOF to move upstream
// 2013-06-25 - DE - v13i trd100_rich ( 2 layers, z = 4100 ) - TRD right behind RICH
// 2013-06-25 - DE - v13j trd100_rich ( 3 layers, z = 4100 ) - TRD right behind RICH
// 2013-06-25 - DE - v13k trd100_rich ( 4 layers, z = 4100 ) - TRD right behind RICH
// 2013-06-25 - DE - --- trd100_much_2_absorbers ( 4 layers, z = 4300 ) - same as version at z = 4600
// 2013-06-25 - DE - v13l trd100_much_3_absorbers ( 4 layers, z = 4600 ) - TRD right behind SIS100 MUCH
// 2013-06-25 - DE - v13m trd300_much_6_absorbers (10 layers, z = 5500 ) - TRD right behind SIS300 MUCH
// 2013-06-25 - DE - v13n trd300_rich_stretched (10 layers, z = 4600 ) - TRD stretched behind SIS300 RICH
// 2013-06-19 - DE - add TRD (I, II, III) labels on support structure
// 2013-05-29 - DE - allow for flexible TRD z-positions defined by position of
// layer01
// 2013-05-29 - DE - allow for flexible TRD z-positions defined by position of layer01
// 2013-05-23 - DE - remove "trd_" prefix from node names (except top node)
// 2013-05-22 - DE - radiators G30 (z=240 mm)
// 2013-05-22 - DE - radiators H (z=275 mm - 125 * 2.2mm), (H++ z=335 mm)
// 2013-05-22 - DE - radiators B++ (z=254 mm - 350 * 0.724 mm), K++ (z=254 mm -
// 350 * 0.724 mm)
// 2013-05-22 - DE - radiators B++ (z=254 mm - 350 * 0.724 mm), K++ (z=254 mm - 350 * 0.724 mm)
// 2013-04-17 - DE - introduce volume assembly for layers, e.g. trd_layer03
// 2013-03-26 - DE - use Air as ASIC material
// 2013-03-26 - DE - put support structure into its own assembly
......@@ -108,8 +71,7 @@
// 2013-03-06 - DE - add ASICs on FEBs
// 2013-03-05 - DE - introduce supports for SIS100 and SIS300
// 2013-03-05 - DE - replace all Float_t by Double_t
// 2013-01-21 - DE - introduce TRD media, use TRDG10 as material for pad plane
// and FEBs
// 2013-01-21 - DE - introduce TRD media, use TRDG10 as material for pad plane and FEBs
// 2013-01-21 - DE - put backpanel into the geometry
// 2013-01-11 - DE - allow for misalignment of TRD modules
// 2012-11-04 - DE - add kapton foil, add FR4 padplane
......@@ -248,7 +210,7 @@ const Int_t MaxLayers = 10; // max layers
// SIS300-mu // 1: plot, 0: hide
// const Int_t ShowLayer[MaxLayers] = { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 }; //
// SIS300-e // 1: plot, 0: hide
Int_t ShowLayer[MaxLayers] = {1, 1, 1, 1, 0, 0, 0, 0, 0, 0}; // SIS100-4l is default
Int_t ShowLayer[MaxLayers] = {1, 1, 0, 1, 0, 0, 0, 0, 0, 0}; // SIS100-4l is default
Int_t BusBarOrientation[MaxLayers] = {1, 1, 0, 0, 1, 0, 0, 0, 0, 0}; // 1 = vertical
......@@ -797,8 +759,8 @@ void Create_TRD_Geometry_v22a()
if (IncludeFieldVector) create_mag_field_vector();
gGeoMan->CloseGeometry();
// gGeoMan->CheckOverlaps(0.001);
// gGeoMan->PrintOverlaps();
gGeoMan->CheckOverlaps(0.001);
gGeoMan->PrintOverlaps();
gGeoMan->Test();
trd->Export(FileNameSim); // an alternative way of writing the trd volume
......@@ -3254,7 +3216,10 @@ void create_detector_layers(Int_t layerId)
Double_t zPos = 0.;
if (layerId == 3) {
xPos = xPos - 35.5;
// DESH
xPos = 0;
yPos = 0;
// xPos = xPos - 35.5;
zPos = -2.0;
}
if (layerId == 2) {
......
This diff is collapsed.
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment