Describing ATLAS Detector with AGDD
description
Transcript of Describing ATLAS Detector with AGDD
![Page 1: Describing ATLAS Detector with AGDD](https://reader036.fdocuments.net/reader036/viewer/2022062409/56814f73550346895dbd27e4/html5/thumbnails/1.jpg)
CERN Summer Student 2002
Describing ATLAS Detector with AGDD
Mercedes PanicciaUniversity of Rome “La Sapienza”
![Page 2: Describing ATLAS Detector with AGDD](https://reader036.fdocuments.net/reader036/viewer/2022062409/56814f73550346895dbd27e4/html5/thumbnails/2.jpg)
DetectorDescriptionDatabase
Simulation
Reconstruction
Offline SoftwareDesign
Test
![Page 3: Describing ATLAS Detector with AGDD](https://reader036.fdocuments.net/reader036/viewer/2022062409/56814f73550346895dbd27e4/html5/thumbnails/3.jpg)
ATLAS Muon System
ATLAS offline software for the Muon Spectometerobtains detector description data from two ASCIIdatabases:
ATLASMuonDataBase
ATLASGenericDetector
Description
![Page 4: Describing ATLAS Detector with AGDD](https://reader036.fdocuments.net/reader036/viewer/2022062409/56814f73550346895dbd27e4/html5/thumbnails/4.jpg)
ATLAS Muon Data Base Formatted ASCII file Basic parameters for the geometry:
active material & inert matter Algorithms to build geometrical structures embedded
in the application programs
********* End-cap Toroid ***************************************************
M ENC 2 | ENC Description version
4 ! *** CRYOSTAT ****************** Matter identifier
783.00 1283.00 90.50 ! Z_min, Z_max, R_min
3.00 8.00 8.50 ! T_Thickness(Rmax), Z_Thickness, R_Thickness(Rmin)
430.00 535.00 70.00 60.00 ! Tecma1, Tecma2, Secma1, Secma2
290.00 10.00 8.00 0.00 ! Stay Tube : T_Position, Radius, D_Radius, D_Phi
9 ! Nectu
![Page 5: Describing ATLAS Detector with AGDD](https://reader036.fdocuments.net/reader036/viewer/2022062409/56814f73550346895dbd27e4/html5/thumbnails/5.jpg)
MuonAGDD Package Extend AGDD language for detector
specific elements
Detector SpecificAGDD
GenericAGDD
C++ interface
expand() method
Applications
![Page 6: Describing ATLAS Detector with AGDD](https://reader036.fdocuments.net/reader036/viewer/2022062409/56814f73550346895dbd27e4/html5/thumbnails/6.jpg)
Compact XML <!--Toroid definition ***************************
-->
<compact name="ENC_CRYO_STAYTUBE">
<ENC_Cryostat_StayTube T_Position="2900.0" Radius="100.0"
D_Radius="80.0" D_Phi="0.0" Nectu="9"
unit_length="mm" />
</compact>
<compact name="ENC_CRYO">
<ENC_Cryostat T_Thickness="30.0" Z_Thickness="80.0" R_Thickness="85.0"
Tecma1="4300.0" Tecma2="5350.0" Secma1="700.0" Secma2="600.0"
StayTube_Desc="ENC_CRYO_STAYTUBE"
unit_length="mm" />
</compact>
![Page 7: Describing ATLAS Detector with AGDD](https://reader036.fdocuments.net/reader036/viewer/2022062409/56814f73550346895dbd27e4/html5/thumbnails/7.jpg)
C++ interfacevoid ENC_Cryostat::get_attributes(){ AGDD* agdd; agdd = AGDD_Factory::Xerces_instance().get_detector_description(); m_z_thickness = getDoubleAttValue("Z_Thickness"); m_t_thickness = getDoubleAttValue("T_Thickness"); m_r_thickness = getDoubleAttValue("R_Thickness"); m_out_rad1 = getDoubleAttValue("Tecma1"); m_out_rad2 = getDoubleAttValue("Tecma2"); m_out_segm1 = getDoubleAttValue("Secma1"); m_out_segm2 = getDoubleAttValue("Secma2"); m_unit_length = getDoubleAttValue("unit_length");
m_cryostat_staytube = dynamic_cast<ENC_Cryostat_StayTube*>( getCompactAttValue("StayTube_Desc", agdd)); assert(m_cryostat_staytube);
cout <<"Finished getting Cryostat attributes!" << endl; }
![Page 8: Describing ATLAS Detector with AGDD](https://reader036.fdocuments.net/reader036/viewer/2022062409/56814f73550346895dbd27e4/html5/thumbnails/8.jpg)
expand( ) methodvoid ENC_Toroid::expandCryostat(double Tor_Length,double Tor_Inner_Radius){ cout << "Expanding the Cryostat--" << endl; . . AGDD_Tube* Inner_tube = new AGDD_Tube; m_expandedVolumes.push_back(Inner_tube); Inner_tube->setName("ENC_CRYO_Inner_tube"); Inner_tube->m_total_length = Tor_Length - 2*Cryostat()->Z_Thickness(); Inner_tube->m_inner_radius = Tor_Inner_Radius; Inner_tube->m_outer_radius = Tor_Inner_Radius + Cryostat()->R_Thickness(); Inner_tube->m_starting_angle = -2*Cryostat()->alpha2(); Inner_tube->m_angle = 45; Inner_tube->m_material_name = "Aluminum";
AGDD_Tube* Stay_tube = new AGDD_Tube; m_expandedVolumes.push_back(Stay_tube); Stay_tube->setName("ENC_CRYO_Stay_tube"); Stay_tube->m_total_length = Tor_Length - 2*Cryostat()->Z_Thickness(); Stay_tube->m_inner_radius = Cryostat()->Cryostat_StayTube()->Inner_Rad() ……… Stay_tube->m_outer_radius = Cryostat()->Cryostat_StayTube()->Outer_Rad() …….. Stay_tube->m_material_name = "Aluminum";
![Page 9: Describing ATLAS Detector with AGDD](https://reader036.fdocuments.net/reader036/viewer/2022062409/56814f73550346895dbd27e4/html5/thumbnails/9.jpg)
Expanded XML <tubs name="ENC_CRYO_Inner_tube" material="Aluminum" Rio_Z="905 990 4840"
profile="-26.5078 45" />
<tubs name="ENC_CRYO_Stay_tube" material="Aluminum" Rio_Z="104.433 130.541 4840" />
.
.
.
.
<composition name="ENC_CRYO" >
<posXYZ volume="ENC_CRYO_Inner_tube" />
<posRPhiZ volume="ENC_CRYO_Stay_tube" R_Phi_Z="2900 9.24611 0" />
<posXYZ volume="ENC_CRYO_Outer_surf" />
<posXYZ volume="ENC_CRYO_Side" />
</composition>
![Page 10: Describing ATLAS Detector with AGDD](https://reader036.fdocuments.net/reader036/viewer/2022062409/56814f73550346895dbd27e4/html5/thumbnails/10.jpg)
ATLAS Barrel Toroid
![Page 11: Describing ATLAS Detector with AGDD](https://reader036.fdocuments.net/reader036/viewer/2022062409/56814f73550346895dbd27e4/html5/thumbnails/11.jpg)
ATLAS Endcap Toroid
![Page 12: Describing ATLAS Detector with AGDD](https://reader036.fdocuments.net/reader036/viewer/2022062409/56814f73550346895dbd27e4/html5/thumbnails/12.jpg)
ATLAS Feet
![Page 13: Describing ATLAS Detector with AGDD](https://reader036.fdocuments.net/reader036/viewer/2022062409/56814f73550346895dbd27e4/html5/thumbnails/13.jpg)