Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found
Select Git revision

Target

Select target project
  • EIC/detectors/athena
  • zwzhao/athena
  • FernandoTA/athena
  • palspeic/athena
4 results
Select Git revision
Show changes
Showing
with 1041 additions and 882 deletions
......@@ -373,7 +373,7 @@
1240*eV/210 10*mm
1240*eV/200 0*mm
"/>
<!-- BEGIN dRICh material properties
<!-- BEGIN dRICh and pfRICh material properties
- dumped from fun4all implementation
- see https://github.com/cisbani/dRICh/blob/main/share/source/g4dRIChOptics.hh
-->
......@@ -391,19 +391,44 @@
6.19921*eV 1.00084
"/>
<matrix name="ABSLENGTH__C2F6_DRICH" coldim="2" values="
1.7712*eV 1000*mm
1.92389*eV 1000*mm
2.10539*eV 1000*mm
2.3247*eV 1000*mm
2.59502*eV 1000*mm
2.93647*eV 1000*mm
3.38139*eV 1000*mm
3.98521*eV 1000*mm
4.85156*eV 1000*mm
6.19921*eV 1000*mm
1.7712*eV 10.0*m
1.92389*eV 10.0*m
2.10539*eV 10.0*m
2.3247*eV 10.0*m
2.59502*eV 10.0*m
2.93647*eV 10.0*m
3.38139*eV 10.0*m
3.98521*eV 10.0*m
4.85156*eV 10.0*m
6.19921*eV 10.0*m
"/>
<!-- dRICh aerogel -->
<matrix name="RINDEX__Aerogel_DRICH" coldim="2" values="
<!-- pfRICh gas -->
<matrix name="RINDEX__C4F10_PFRICH" coldim="2" values="
1.7712*eV 1.0013
1.92389*eV 1.0013
2.10539*eV 1.00131
2.3247*eV 1.00131
2.59502*eV 1.00132
2.93647*eV 1.00133
3.38139*eV 1.00134
3.98521*eV 1.00136
4.85156*eV 1.0014
6.19921*eV 1.00149
"/>
<matrix name="ABSLENGTH__C4F10_PFRICH" coldim="2" values="
1.7712*eV 6.0*m
1.92389*eV 6.0*m
2.10539*eV 6.0*m
2.3247*eV 6.0*m
2.59502*eV 6.0*m
2.93647*eV 6.0*m
3.38139*eV 6.0*m
3.98521*eV 6.0*m
4.85156*eV 6.0*m
6.19921*eV 6.0*m
"/>
<!-- dRICh aerogel, for density=0.11 g/cm3 (OLD versions are for 0.1g/cm3) -->
<matrix name="RINDEX__Aerogel_DRICH_OLD" coldim="2" values="
1.87855*eV 1.01638
1.96673*eV 1.01642
2.0549*eV 1.01647
......@@ -455,7 +480,59 @@
6.11103*eV 1.02147
6.19921*eV 1.02167
"/>
<matrix name="ABSLENGTH__Aerogel_DRICH" coldim="2" values="
<matrix name="RINDEX__Aerogel_DRICH" coldim="2" values="
1.87855*eV 1.01852
1.96673*eV 1.01856
2.05490*eV 1.01861
2.14308*eV 1.01866
2.23126*eV 1.01871
2.31943*eV 1.01876
2.40761*eV 1.01881
2.49579*eV 1.01887
2.58396*eV 1.01893
2.67214*eV 1.01899
2.76032*eV 1.01905
2.84849*eV 1.01912
2.93667*eV 1.01919
3.02485*eV 1.01926
3.11302*eV 1.01933
3.20120*eV 1.01941
3.28938*eV 1.01948
3.37755*eV 1.01956
3.46573*eV 1.01965
3.55391*eV 1.01973
3.64208*eV 1.01982
3.73026*eV 1.01991
3.81844*eV 1.02001
3.90661*eV 1.02010
3.99479*eV 1.02020
4.08297*eV 1.02030
4.17114*eV 1.02041
4.25932*eV 1.02052
4.34750*eV 1.02063
4.43567*eV 1.02074
4.52385*eV 1.02086
4.61203*eV 1.02098
4.70020*eV 1.02111
4.78838*eV 1.02123
4.87656*eV 1.02136
4.96473*eV 1.02150
5.05291*eV 1.02164
5.14109*eV 1.02178
5.22927*eV 1.02193
5.31744*eV 1.02208
5.40562*eV 1.02223
5.49380*eV 1.02239
5.58197*eV 1.02255
5.67015*eV 1.02271
5.75833*eV 1.02288
5.84650*eV 1.02306
5.93468*eV 1.02324
6.02286*eV 1.02342
6.11103*eV 1.02361
6.19921*eV 1.02381
"/>
<matrix name="ABSLENGTH__Aerogel_DRICH_OLD" coldim="2" values="
1.87855*eV 154*mm
1.96673*eV 156.17*mm
2.0549*eV 158.154*mm
......@@ -507,7 +584,59 @@
6.11103*eV 7.29168*mm
6.19921*eV 6.69064*mm
"/>
<matrix name="RAYLEIGH__Aerogel_DRICH" coldim="2" values="
<matrix name="ABSLENGTH__Aerogel_DRICH" coldim="2" values="
1.87855*eV 140.000*mm
1.96673*eV 141.973*mm
2.05490*eV 143.776*mm
2.14308*eV 145.431*mm
2.23126*eV 146.955*mm
2.31943*eV 148.364*mm
2.40761*eV 149.669*mm
2.49579*eV 150.882*mm
2.58396*eV 152.012*mm
2.67214*eV 153.067*mm
2.76032*eV 154.055*mm
2.84849*eV 154.982*mm
2.93667*eV 155.854*mm
3.02485*eV 156.674*mm
3.11302*eV 157.448*mm
3.20120*eV 158.180*mm
3.28938*eV 158.872*mm
3.37755*eV 159.528*mm
3.46573*eV 160.150*mm
3.55391*eV 160.742*mm
3.64208*eV 147.916*mm
3.73026*eV 128.139*mm
3.81844*eV 111.378*mm
3.90661*eV 97.121*mm
3.99479*eV 84.948*mm
4.08297*eV 74.518*mm
4.17114*eV 65.552*mm
4.25932*eV 57.819*mm
4.34750*eV 51.130*mm
4.43567*eV 45.327*mm
4.52385*eV 40.278*mm
4.61203*eV 35.873*mm
4.70020*eV 32.019*mm
4.78838*eV 28.641*mm
4.87656*eV 25.670*mm
4.96473*eV 23.054*mm
5.05291*eV 20.742*mm
5.14109*eV 18.698*mm
5.22927*eV 16.884*mm
5.31744*eV 15.272*mm
5.40562*eV 13.837*mm
5.49380*eV 12.557*mm
5.58197*eV 11.413*mm
5.67015*eV 10.389*mm
5.75833*eV 9.470*mm
5.84650*eV 8.645*mm
5.93468*eV 7.902*mm
6.02286*eV 7.233*mm
6.11103*eV 6.629*mm
6.19921*eV 6.082*mm
"/>
<matrix name="RAYLEIGH__Aerogel_DRICH_OLD" coldim="2" values="
1.87855*eV 309.218*mm
1.96673*eV 257.383*mm
2.0549*eV 215.968*mm
......@@ -559,6 +688,58 @@
6.11103*eV 2.76144*mm
6.19921*eV 2.607*mm
"/>
<matrix name="RAYLEIGH__Aerogel_DRICH" coldim="2" values="
1.87855*eV 281.107*mm
1.96673*eV 233.984*mm
2.05490*eV 196.334*mm
2.14308*eV 165.962*mm
2.23126*eV 141.242*mm
2.31943*eV 120.958*mm
2.40761*eV 104.188*mm
2.49579*eV 90.226*mm
2.58396*eV 78.527*mm
2.67214*eV 68.663*mm
2.76032*eV 60.301*mm
2.84849*eV 53.174*mm
2.93667*eV 47.070*mm
3.02485*eV 41.816*mm
3.11302*eV 37.277*mm
3.20120*eV 33.336*mm
3.28938*eV 29.903*mm
3.37755*eV 26.900*mm
3.46573*eV 24.265*mm
3.55391*eV 21.946*mm
3.64208*eV 19.896*mm
3.73026*eV 18.080*mm
3.81844*eV 16.468*mm
3.90661*eV 15.030*mm
3.99479*eV 13.746*mm
4.08297*eV 12.596*mm
4.17114*eV 11.564*mm
4.25932*eV 10.637*mm
4.34750*eV 9.799*mm
4.43567*eV 9.043*mm
4.52385*eV 8.358*mm
4.61203*eV 7.738*mm
4.70020*eV 7.172*mm
4.78838*eV 6.659*mm
4.87656*eV 6.191*mm
4.96473*eV 5.762*mm
5.05291*eV 5.370*mm
5.14109*eV 5.011*mm
5.22927*eV 4.681*mm
5.31744*eV 4.379*mm
5.40562*eV 4.100*mm
5.49380*eV 3.844*mm
5.58197*eV 3.606*mm
5.67015*eV 3.386*mm
5.75833*eV 3.184*mm
5.84650*eV 2.996*mm
5.93468*eV 2.822*mm
6.02286*eV 2.660*mm
6.11103*eV 2.510*mm
6.19921*eV 2.370*mm
"/>
<!-- dRICh acrylic -->
<matrix name="RINDEX__Acrylic_DRICH" coldim="2" values="
4.13281*eV 1.5017
......@@ -675,6 +856,14 @@
<property name="RINDEX" ref="RINDEX__Air"/>
<property name="ABSLENGTH" coldim="2" values="1*eV 200*m 5*eV 200*m"/>
</material>
<material name="VacuumOptical">
<D type="density" unit="g/cm3" value="0.0000000001"/>
<fraction n="0.754" ref="N"/>
<fraction n="0.234" ref="O"/>
<fraction n="0.012" ref="Ar"/>
<property name="RINDEX" ref="RINDEX__Vacuum"/>
<property name="ABSLENGTH" coldim="2" values="1*eV 2000*m 5*eV 2000*m"/>
</material>
<material name="N2cherenkov">
<D type="density" value="0.00125" unit="g/cm3"/>
<composite n="1" ref="N"/>
......@@ -705,7 +894,7 @@
<property name="RINDEX" ref="RINDEX__Acrylic"/>
<property name="ABSLENGTH" ref="ABSLENGTH__Acrylic"/>
</material>
<!-- BEGIN dRICh material definitions -->
<!-- BEGIN dRICh and pfRICh material definitions -->
<material name="C2F6_DRICH">
<D type="density" value="0.005734" unit="g/cm3"/>
<composite n="2" ref="C"/>
......@@ -713,11 +902,27 @@
<property name="RINDEX" ref="RINDEX__C2F6_DRICH"/>
<property name="ABSLENGTH" ref="ABSLENGTH__C2F6_DRICH"/>
</material>
<material name="Aerogel_DRICH">
<D type="density" value="0.1" unit="g/cm3"/>
<material name="C4F10_PFRICH">
<D type="density" value="0.009935" unit="g/cm3"/>
<composite n="4" ref="C"/>
<composite n="10" ref="F"/>
<property name="RINDEX" ref="RINDEX__C4F10_PFRICH"/>
<property name="ABSLENGTH" ref="ABSLENGTH__C4F10_PFRICH"/>
</material>
<material name="Aerogel_DRICH_OLD">
<D type="density" value="0.100" unit="g/cm3"/>
<comment> n_air = [dens(Si02)-dens(aerogel)] / [dens(Si02)-dens(Air) ] </comment>
<fraction n=" (2.32-0.1) / (2.32-0.0012)" ref="Air"/>
<fraction n="1 - (2.32-0.1) / (2.32-0.0012)" ref="SiliconDioxide"/>
<property name="RINDEX" ref="RINDEX__Aerogel_DRICH_OLD"/>
<property name="ABSLENGTH" ref="ABSLENGTH__Aerogel_DRICH_OLD"/>
<property name="RAYLEIGH" ref="RAYLEIGH__Aerogel_DRICH_OLD"/>
</material>
<material name="Aerogel_DRICH">
<D type="density" value="0.110" unit="g/cm3"/>
<comment> n_air = [dens(Si02)-dens(aerogel)] / [dens(Si02)-dens(Air) ] </comment>
<fraction n=" (2.32-0.11) / (2.32-0.0012)" ref="Air"/>
<fraction n="1 - (2.32-0.11) / (2.32-0.0012)" ref="SiliconDioxide"/>
<property name="RINDEX" ref="RINDEX__Aerogel_DRICH"/>
<property name="ABSLENGTH" ref="ABSLENGTH__Aerogel_DRICH"/>
<property name="RAYLEIGH" ref="RAYLEIGH__Aerogel_DRICH"/>
......
<?xml version="1.0" encoding="UTF-8"?>
<lccdd>
<define>
<!-- vessel geometry -->
<constant name="PFRICH_Length" value="BackwardRICHRegion_length"/> <!-- vessel z-length -->
<constant name="PFRICH_zmin" value="-BackwardRICHRegion_zmin"/> <!-- vessel front -->
<constant name="PFRICH_zmax" value="PFRICH_zmin - PFRICH_Length"/> <!-- vessel back -->
<constant name="PFRICH_rmin0" value="BackwardPIDRegion_tan * BackwardRICHRegion_zmin"/> <!-- bore radius at vessel frontplane -->
<constant name="PFRICH_rmin1" value="BackwardPIDRegion_tan * (BackwardRICHRegion_zmin + BackwardRICHRegion_length)"/> <!-- bore radius at vessel backplane -->
<constant name="PFRICH_rmax" value="BackwardPIDRegion_rmax - 2*cm"/> <!-- vessel backplane radius -->
<constant name="PFRICH_wall_thickness" value="0.5*cm"/> <!-- thickness of radial walls -->
<constant name="PFRICH_window_thickness" value="0.1*cm"/> <!-- thickness of entrance and exit walls -->
<!-- additional parameters -->
<constant name="PFRICH_aerogel_thickness" value="3.0*cm"/> <!-- aerogel thickness -->
<constant name="PFRICH_sensor_active_size_default" value="24.0*mm"/> <!-- sensor side length (effective area) -->
<constant name="PFRICH_sensor_full_size_default" value="25.8*mm"/> <!-- sensor side length (full size, with enclosure) -->
<!-- lores values are used for global vizualizations _only_ -->
<constant name="PFRICH_sensor_active_size_lores" value="PFRICH_sensor_active_size_default * 4"/>
<constant name="PFRICH_sensor_full_size_lores" value="PFRICH_sensor_full_size_default * 4"/>
<!-- actual values used by the parametrization -->
<constant name="PFRICH_sensor_active_size" value="PFRICH_sensor_active_size_default"/>
<constant name="PFRICH_sensor_full_size" value="PFRICH_sensor_full_size_default"/>
<constant name="PFRICH_sensor_thickness" value="1.5*mm"/> <!-- sensor thickness -->
<constant name="PFRICH_sensor_dist" value="40*cm"/> <!-- distance between aerogel exit plane and sensor entrance plane -->
<constant name="PFRICH_num_px" value="8"/> <!-- number of pixels along one side of the sensor -->
<!-- debugging switches -->
<comment>
- `PFRICH_debug_optics`: 1 = all components become vacuum; test opticalphotons from IP
2 = all components become vacuum, except for `gasvol`, test charged particles from IP
0 = off
</comment>
<constant name="PFRICH_debug_optics" value="0"/>
</define>
<detectors>
<!-- /detectors/detector -->
<documentation level="10">
### pfRICH: Proximity Focusing RICH
</documentation>
<detector
id="BackwardRICH_ID"
name="PFRICH"
type="athena_PFRICH"
readout="PFRICHHits"
gas="C4F10_PFRICH"
material="Aluminum"
vis_vessel="DRICH_vessel_vis"
vis_gas="DRICH_gas_vis"
debug_optics="PFRICH_debug_optics"
>
<!-- /detectors/detector/dimensions -->
<documentation level="10">
#### Vessel
- dimensions:
- `zmin`: z-position of vessel front plane
- `length`: overall z-length of the full vessel
- `rmin0` and `rmin1`: bore radius at front plane and back plane, respectively
- `rmax0` and `rmax1`: outer radius of vessel, at front plane and back plane, respectively
- `wall_thickness`: thickness of radial walls
- `window_thickness`: thickness of entrance and exit disks
</documentation>
<dimensions
zmin="PFRICH_zmin"
zmax="PFRICH_zmax"
length="PFRICH_Length"
rmin0="PFRICH_rmin0"
rmin1="PFRICH_rmin1"
rmax0="PFRICH_rmax"
rmax1="PFRICH_rmax"
wall_thickness="PFRICH_wall_thickness"
window_thickness="PFRICH_window_thickness"
/>
<!-- /detectors/detector/radiator -->
<documentation level="10">
#### Radiator
- radiator is defined in a wedge of azimuthal space, composed of aerogel and a
filter; the filter is applied to the back of the aerogel, so that it separates
the aerogel and gas radiators
- dimensions:
- `frontplane`: front of the aerogel, w.r.t. front plane of the vessel envelope
- `rmin` and `rmax`: inner and outer radius (at the front plane; radial bounds are conical)
- `phiw`: azimuthal width of wedge
- `thickness`: radiator thickness, defined separately for aerogel and filter
- `pitch`: controls the angle of the radiator (0=vertical)
</documentation>
<radiator
frontplane="-PFRICH_window_thickness"
rmin="PFRICH_rmin0 + PFRICH_wall_thickness + 0.2*cm"
rmax="(PFRICH_rmax/PFRICH_zmax)*PFRICH_zmin + 8.0*cm"
phiw="60*degree"
pitch="0*degree"
>
<aerogel
material="Aerogel_DRICH"
vis="DRICH_aerogel_vis"
thickness="PFRICH_aerogel_thickness"
/>
<filter
material="Acrylic_DRICH"
vis="DRICH_filter_vis"
thickness="0.3*mm"
/>
</radiator>
<!-- /detectors/detector/sensors -->
<documentation level="10">
#### Sensors
</documentation>
<sensors>
<!-- /detectors/detector/sensors/module -->
<documentation level="10">
##### Sensor module
- based on Hamamatsu S13361-3050AE-08
- effective area: 24.0 x 24.0 mm
- enclosure size: 25.8 x 25.8 mm
- pixel size: 3x3 mm (8x8 matrix)
- thickness: 1.5 mm
- dimensions:
- `side`: side length of the square module
- `thickness`: thickness of the sensor module
- `gap`: provides room between the squares, to help prevent them from overlapping
- note: the values of `side` and `gap` will determine how many sensors there are, since the
sensor placement algorithm will try to place as many as it can in the specified region
</documentation>
<module
material="Silicon"
surface="SensorSurface_DRICH"
vis="PFRICH_sensor_vis"
side="PFRICH_sensor_active_size"
thickness="PFRICH_sensor_thickness"
gap="0.5*(PFRICH_sensor_full_size-PFRICH_sensor_active_size) + 0.5*mm"
/>
<!-- /detectors/detector/sensors/plane -->
<documentation level="10">
##### Sensor plane
- sensors will be placed on a plane
- plane dimensions:
- `sensordist`: distance between sensor plane active surface (e.g., photocathode) and aerogel backplane
- `rmin`: minimum radial position of a sensor's centroid
- `rmax`: maximum radial position of a sensor's centroid
</documentation>
<plane
sensordist="PFRICH_sensor_dist"
rmin="PFRICH_rmin1 + 2*cm"
rmax="PFRICH_rmax - 4*cm"
/>
<services>
<comment>
Material should be equivallent with 3x0.5cm Al, spread over the entire available distance.
This was confirmed by Silvia.
</comment>
<component name="aluminum" thickness="5*mm" vis="RICHServiceVis" material="Aluminum"/>
<component name="air" thickness="40*mm" vis="InvisibleNoDaughters" material="Air"/>
<component name="aluminum" thickness="5*mm" vis="RICHServiceVis" material="Aluminum"/>
<component name="air" thickness="40*mm" vis="InvisibleNoDaughters" material="Air"/>
<component name="aluminum" thickness="5*mm" vis="RICHServiceVis" material="Aluminum"/>
</services>
</sensors>
</detector>
</detectors>
<documentation level="10">
#### Readout
- segmentation: square matrix of pixels
- `grid_size_x,y`: size of each sensor, but note we must divide sensor size
by 1 less than the number of pixels, to account for fenceposting
- `offset_x,y`: specified such that the `x` and `y` indicators are unsigned
- indicators and `cellID` bits:
| indicator | offset | length |
|-----------|--------|--------|
| pfRICH ID | 0 | 8 |
| sensor | 8 | 12 |
| x pixel | 20 | 16 |
| y pixel | 36 | 16 |
</documentation>
<readouts>
<readout name="PFRICHHits">
<segmentation
type="CartesianGridXY"
grid_size_x="PFRICH_sensor_active_size/(PFRICH_num_px-1)"
grid_size_y="PFRICH_sensor_active_size/(PFRICH_num_px-1)"
offset_x="-PFRICH_sensor_active_size/2.0"
offset_y="-PFRICH_sensor_active_size/2.0"
/>
<id>system:8,module:12,x:20:16,y:16</id>
</readout>
</readouts>
</lccdd>
<lccdd>
<include ref="fake_dirc.xml"/>
<!--include ref="dirc.xml"/-->
<include ref="mrich.xml"/>
<include ref="drich.xml"/>
</lccdd>
<lccdd>
<include ref="fake_dirc.xml"/>
<!--include ref="dirc.xml"/-->
<include ref="drich.xml"/>
<include ref="pfrich.xml"/>
</lccdd>
<lccdd>
<include ref="fake_dirc.xml"/>
<!--include ref="dirc.xml"/-->
<include ref="drich.xml"/>
<include ref="pfrich.xml"/>
<!--include ref="tof_endcap.xml"/-->
<include ref="tof_barrel.xml"/>
</lccdd>
......@@ -11,11 +11,11 @@
<constant name="SolenoidBarrelInnerSecondMLILayerThickness" value=" 20.0 * mm"/>
<constant name="SolenoidBarrelInnerThermalShieldThickness" value=" 10.0 * mm"/>
<constant name="SolenoidBarrelInnerFirstMLILayerThickness" value=" 15.0 * mm"/>
<constant name="SolenoidBarrelInnerHeliumVesselThickness" value=" 20.0 * mm"/>
<constant name="SolenoidBarrelInnerHeliumVesselThickness" value=" 15.0 * mm"/>
<constant name="SolenoidBarrelInnerHeliumThickness" value=" 10.0 * mm"/>
<constant name="SolenoidBarrelCoilFormerThickness" value=" 50.0 * mm"/>
<constant name="SolenoidBarrelCoilThickness" value="200.0 * mm"/>
<constant name="SolenoidBarrelCoilOverbindThickness" value="200.0 * mm"/>
<constant name="SolenoidBarrelCoilFormerThickness" value=" 10.0 * mm"/>
<constant name="SolenoidBarrelCoilThickness" value="210.0 * mm"/>
<constant name="SolenoidBarrelCoilOverbindThickness" value=" 50.0 * mm"/>
<constant name="SolenoidBarrelOuterHeliumThickness" value=" 15.0 * mm"/>
<constant name="SolenoidBarrelOuterHeliumVesselThickness" value=" 10.0 * mm"/>
<constant name="SolenoidBarrelOuterFirstMLILayerThickness" value=" 15.0 * mm"/>
......@@ -130,7 +130,7 @@
inner_r="SolenoidBarrelInnerSecondMLILayer_rmin"
outer_z="SolenoidBarrelInnerSecondMLILayer_zmax"
vis="SolenoidCryostatVis">
<slice material="Vacuum" thickness="SolenoidBarrelInnerSecondMLILayerThickness"/>
<slice material="MylarMLI" thickness="SolenoidBarrelInnerSecondMLILayerThickness"/>
</layer>
<layer id="3"
inner_r="SolenoidBarrelInnerThermalShield_rmin"
......@@ -142,7 +142,7 @@
inner_r="SolenoidBarrelInnerFirstMLILayer_rmin"
outer_z="SolenoidBarrelInnerFirstMLILayer_zmax"
vis="SolenoidCryostatVis">
<slice material="Vacuum" thickness="SolenoidBarrelInnerFirstMLILayerThickness"/>
<slice material="MylarMLI" thickness="SolenoidBarrelInnerFirstMLILayerThickness"/>
</layer>
<layer id="5"
inner_r="SolenoidBarrelInnerHeliumVessel_rmin"
......@@ -162,19 +162,19 @@
inner_r="SolenoidBarrelCoilFormer_rmin"
outer_z="SolenoidBarrelCoilFormer_zmax"
vis="SolenoidCryostatVis">
<slice material="Steel235" thickness="SolenoidBarrelCoilFormerThickness"/>
<slice material="Aluminum" thickness="SolenoidBarrelCoilFormerThickness"/>
</layer>
<layer id="8"
inner_r="SolenoidBarrelCoil_rmin"
outer_z="SolenoidBarrelCoil_zmax"
vis="SolenoidCryostatVis">
<slice material="Copper" thickness="SolenoidBarrelCoilThickness"/>
<slice material="Aluminum" thickness="SolenoidBarrelCoilThickness"/>
</layer>
<layer id="9"
inner_r="SolenoidBarrelCoilOverbind_rmin"
outer_z="SolenoidBarrelCoilOverbind_zmax"
vis="SolenoidCryostatVis">
<slice material="Steel235" thickness="SolenoidBarrelCoilOverbindThickness"/>
<slice material="Aluminum" thickness="SolenoidBarrelCoilOverbindThickness"/>
</layer>
<layer id="10"
......@@ -194,7 +194,7 @@
inner_r="SolenoidBarrelOuterFirstMLILayer_rmin"
outer_z="SolenoidBarrelOuterFirstMLILayer_zmax"
vis="SolenoidCryostatVis">
<slice material="Vacuum" thickness="SolenoidBarrelOuterFirstMLILayerThickness"/>
<slice material="MylarMLI" thickness="SolenoidBarrelOuterFirstMLILayerThickness"/>
</layer>
<layer id="13"
inner_r="SolenoidBarrelOuterThermalShield_rmin"
......@@ -206,7 +206,7 @@
inner_r="SolenoidBarrelOuterSecondMLILayer_rmin"
outer_z="SolenoidBarrelOuterSecondMLILayer_zmax"
vis="SolenoidCryostatVis">
<slice material="Vacuum" thickness="SolenoidBarrelOuterSecondMLILayerThickness"/>
<slice material="MylarMLI" thickness="SolenoidBarrelOuterSecondMLILayerThickness"/>
</layer>
<layer id="15"
inner_r="SolenoidBarrelOuterVacuumVessel_rmin"
......@@ -228,7 +228,7 @@
inner_z="SolenoidEndcapCoilEndSupport_zmin"
inner_r="SolenoidEndcapCoilEndSupport_rmin"
outer_r="SolenoidEndcapCoilEndSupport_rmax">
<slice material="Steel235" thickness="SolenoidEndcapCoilEndSupportThickness"/>
<slice material="Aluminum" thickness="SolenoidEndcapCoilEndSupportThickness"/>
</layer>
<layer id="2"
inner_z="SolenoidEndcapHelium_zmin"
......@@ -246,7 +246,7 @@
inner_z="SolenoidEndcapFirstMLILayer_zmin"
inner_r="SolenoidEndcapFirstMLILayer_rmin"
outer_r="SolenoidEndcapFirstMLILayer_rmax">
<slice material="Vacuum" thickness="SolenoidEndcapFirstMLILayerThickness"/>
<slice material="MylarMLI" thickness="SolenoidEndcapFirstMLILayerThickness"/>
</layer>
<layer id="5"
inner_z="SolenoidEndcapThermalShield_zmin"
......@@ -258,7 +258,7 @@
inner_z="SolenoidEndcapSecondMLILayer_zmin"
inner_r="SolenoidEndcapSecondMLILayer_rmin"
outer_r="SolenoidEndcapSecondMLILayer_rmax">
<slice material="Vacuum" thickness="SolenoidEndcapSecondMLILayerThickness"/>
<slice material="MylarMLI" thickness="SolenoidEndcapSecondMLILayerThickness"/>
</layer>
<layer id="7"
inner_z="SolenoidEndcapVacuumVessel_zmin"
......@@ -280,7 +280,7 @@
inner_z="SolenoidEndcapCoilEndSupport_zmin"
inner_r="SolenoidEndcapCoilEndSupport_rmin"
outer_r="SolenoidEndcapCoilEndSupport_rmax">
<slice material="Steel235" thickness="SolenoidEndcapCoilEndSupportThickness"/>
<slice material="Aluminum" thickness="SolenoidEndcapCoilEndSupportThickness"/>
</layer>
<layer id="2"
inner_z="SolenoidEndcapHelium_zmin"
......@@ -298,7 +298,7 @@
inner_z="SolenoidEndcapFirstMLILayer_zmin"
inner_r="SolenoidEndcapFirstMLILayer_rmin"
outer_r="SolenoidEndcapFirstMLILayer_rmax">
<slice material="Vacuum" thickness="SolenoidEndcapFirstMLILayerThickness"/>
<slice material="MylarMLI" thickness="SolenoidEndcapFirstMLILayerThickness"/>
</layer>
<layer id="5"
inner_z="SolenoidEndcapThermalShield_zmin"
......@@ -310,7 +310,7 @@
inner_z="SolenoidEndcapSecondMLILayer_zmin"
inner_r="SolenoidEndcapSecondMLILayer_rmin"
outer_r="SolenoidEndcapSecondMLILayer_rmax">
<slice material="Vacuum" thickness="SolenoidEndcapSecondMLILayerThickness"/>
<slice material="MylarMLI" thickness="SolenoidEndcapSecondMLILayerThickness"/>
</layer>
<layer id="7"
inner_z="SolenoidEndcapVacuumVessel_zmin"
......@@ -327,12 +327,12 @@
zmin="-SolenoidBarrelCoil_zmax" zmax="SolenoidBarrelCoil_zmax"
inner_radius="SolenoidalFieldRadius" outer_radius="SolenoidalFieldRadius+20*cm"/-->
<field type="FieldMapBrBz" name="GlobalSolenoid" field_type="magnetic"
field_map="fieldmaps/EIC_Magnetic_Field_Map_2021_05_07_radial_coords__cm___T_.120000.lines.Bmap"
url="https://eicweb.phy.anl.gov/EIC/detectors/athena/uploads/9179a98c5a80df1f2b98968c747c1c48/EIC_Magnetic_Field_Map_2021_05_07_radial_coords__cm___T_.120000.lines.Bmap"
field_map="fieldmaps/EIC_v.2.0.3_Magnetic_Field_Map_2021_09_28_radial_coords_cm_T.Bmap.txt"
url="https://eicweb.phy.anl.gov/EIC/detectors/athena/uploads/fd64db33e1c99547ab1840d8847fd1c1/EIC_v.2.0.3_Magnetic_Field_Map_2021_09_28_radial_coords_cm_T.Bmap.txt"
scale="-1.0">
<dimensions>
<transverse step="2.0*cm" rmin="0*cm" rmax="398*cm" />
<longitudinal step="2.0*cm" zmin="-600*cm" zmax="598*cm" />
<transverse step="2.0*cm" rmin="0*cm" rmax="998*cm" />
<longitudinal step="2.0*cm" zmin="-800*cm" zmax="798*cm" />
<translation x="0.0*cm" y="0.0*cm" z="0.0*cm" />
<rotation x="0" y="0" z="0" />
</dimensions>
......
# subsytem_views
These compact detector files are copies of the main `athena.xml` compact description file, modified to only show certain subsystems.
To add or update a subsystem:
1. Copy `athena.xml` to this directory (`compact/subsystem_views`) with the appropriate name.
2. Remove all the undesired detectors from this xml file. **Do not modify any of the included xml files** -- only modify the top level xml file here.
3. Check that that you have the desired color scheme (eg. `colors.xml`) and display attributes (eg. `display_detailed.xml`) included.
These compact detector files should not be used for any real simulations or studies.
......@@ -33,7 +33,8 @@
The ip6 (or other ip) defines should be included first.
These files have only a define tags.
</documentation>
<include ref="ip6/ip6_defs.xml" />
<include ref="ip6/definitions.xml" />
<include ref="ip6/far_forward/fields_275.xml" />
<include ref="compact/definitions.xml" />
</define>
......@@ -58,9 +59,7 @@
<display>
<include ref="compact/colors.xml" />
<!--include ref="compact/colors2.xml"/-->
<include ref="compact/display.xml" />
<!--include ref="compact/display_detailed.xml"/-->
<include ref="compact/display_detailed.xml" />
</display>
<documentation level="0">
......@@ -87,6 +86,7 @@
Beamline elements
-----------------
</comment>
<include ref="ip6/central_beampipe.xml" />
<documentation level="5">
## Main magnet
......@@ -95,125 +95,12 @@
</documentation>
<include ref="compact/solenoid.xml"/>
<documentation level="5">
### Tracker subassemblies for ACTS
</documentation>
<detectors>
<detector id="VertexBarrelSubAssembly_ID"
name="VertexBarrelSubAssembly"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="VertexBarrel" />
</detector>
<detector id="VertexEndcapSubAssembly_ID"
name="VertexEndcapSubAssembly"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="VertexEndcapN" />
<composite name="VertexEndcapP" />
</detector>
<detector id="TrackerBarrelSubAssembly_Inner_ID"
name="TrackerBarrelSubAssembly_Inner"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="TrackerBarrel_Inner"/>
</detector>
<detector id="TrackerEndcapSubAssembly_Inner_ID"
name="TrackerEndcapSubAssembly_Inner"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="TrackerEndcapN_Inner"/>
<composite name="TrackerEndcapP_Inner"/>
</detector>
<detector id="TrackerBarrelSubAssembly_Outer_ID"
name="TrackerSubAssembly_Outer"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="TrackerBarrel_Outer"/>
<composite name="TrackerEndcapP_Outer"/>
<composite name="TrackerEndcapN_Outer"/>
</detector>
</detectors>
<documentation level="10">
## Central calorimetry
</documentation>
<include ref="compact/ecal.xml"/>
<include ref="compact/hcal.xml"/>
<fields>
<field name="B0PF_Magnet" type="MultipoleMagnet">
<position x="B0PF_XPosition" y="0" z="B0PF_CenterPosition"/>
<rotation x="0" y="B0PF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="B0PF_InnerRadius" dz="B0PF_Length*0.5"/>
<coefficient coefficient="B0PF_Bmax" skew="0.0*tesla"/>
<!--<coefficient coefficient="2.0*tesla/cm" skew="0.2*tesla/cm"/> -->
</field>
<field name="B0APF_Magnet" type="MultipoleMagnet">
<position x="B0APF_XPosition" y="0" z="B0APF_CenterPosition"/>
<rotation x="0" y="B0APF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="B0APF_InnerRadius" dz="B0APF_Length*0.5"/>
<coefficient coefficient="B0APF_Bmax" skew="0.0*tesla"/>
<!--<coefficient coefficient="2.0*tesla/cm" skew="0.2*tesla/cm"/> -->
</field>
<field name="Q1APF_Magnet" type="MultipoleMagnet">
<position x="Q1APF_XPosition" y="0" z="Q1APF_CenterPosition"/>
<rotation x="0" y="Q1APF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="Q1APF_InnerRadius" dz="Q1APF_Length*0.5"/>
<coefficient coefficient="Q1APF_Bmax" skew="0.0*tesla"/>
<coefficient coefficient="Q1APF_GradientMax" skew="0.0*tesla/cm"/>
</field>
<field name="Q1BPF_Magnet" type="MultipoleMagnet">
<position x="Q1BPF_XPosition" y="0" z="Q1BPF_CenterPosition"/>
<rotation x="0" y="Q1BPF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="Q1BPF_InnerRadius" dz="Q1BPF_Length*0.5"/>
<coefficient coefficient="Q1BPF_Bmax" skew="0.0*tesla"/>
<coefficient coefficient="Q1BPF_GradientMax" skew="0.0*tesla/cm"/>
</field>
<field name="Q2PF_Magnet" type="MultipoleMagnet">
<position x="Q2PF_XPosition" y="0" z="Q2PF_CenterPosition"/>
<rotation x="0" y="Q2PF_RotationAngle" z="pi/2.0"/>
<shape type="Tube" rmin="0.0" rmax="Q2PF_InnerRadius" dz="Q2PF_Length*0.5"/>
<coefficient coefficient="Q2PF_Bmax" skew="0.0*tesla"/>
<coefficient coefficient="Q2PF_GradientMax" skew="0.0*tesla/cm"/>
</field>
<field name="B1PF_Magnet" type="MultipoleMagnet">
<position x="B1PF_XPosition" y="0" z="B1PF_CenterPosition"/>
<rotation x="0" y="B1PF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="B1PF_InnerRadius" dz="B1PF_Length*0.5"/>
<coefficient coefficient="B1PF_Bmax" skew="0.0*tesla"/>
<coefficient coefficient="B1PF_GradientMax" skew="0.0*tesla/cm"/>
</field>
<field name="B1APF_Magnet" type="MultipoleMagnet">
<position x="B1APF_XPosition" y="0" z="B1APF_CenterPosition"/>
<rotation x="0" y="B1APF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="B1APF_InnerRadius" dz="B1APF_Length*0.5"/>
<coefficient coefficient="B1APF_Bmax" skew="0.0*tesla"/>
<coefficient coefficient="B1APF_GradientMax" skew="0.0*tesla/cm"/>
</field>
<field name="B2PF_Magnet" type="MultipoleMagnet">
<position x="B2PF_XPosition" y="0" z="B2PF_CenterPosition"/>
<rotation x="0" y="B2PF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="B2PF_InnerRadius" dz="B2PF_Length*0.5"/>
<coefficient coefficient="B2PF_Bmax" skew="0.0*tesla"/>
<coefficient coefficient="B2PF_GradientMax" skew="0.0*tesla/cm"/>
</field>
</fields>
<comment>
FB elements
-----------
None (TODO)
What is FB?
</comment>
<readouts>
</readouts>
......
......@@ -33,7 +33,8 @@
The ip6 (or other ip) defines should be included first.
These files have only a define tags.
</documentation>
<include ref="ip6/ip6_defs.xml" />
<include ref="ip6/definitions.xml" />
<include ref="ip6/far_forward/fields_275.xml" />
<include ref="compact/definitions.xml" />
</define>
......@@ -58,7 +59,7 @@
<display>
<include ref="compact/colors.xml" />
<include ref="compact/display.xml" />
<include ref="compact/display_detailed.xml" />
</display>
<documentation level="0">
......@@ -134,7 +135,7 @@
</detectors>
<include ref="compact/dirc.xml"/>
<include ref="compact/fake_dirc.xml"/>
<readouts>
</readouts>
......
<lccdd xmlns:compact="http://www.lcsim.org/schemas/compact/1.0"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xs:noNamespaceSchemaLocation="http://www.lcsim.org/schemas/compact/1.0/compact.xsd">
<debug>
<type name="surface" value="0"/>
<type name="material" value="0"/>
<type name="readout" value="0"/>
<type name="segmentation" value="0"/>
<type name="limits" value="0"/>
<type name="region" value="0"/>
<type name="includes" value="0"/>
</debug>
<documentation level="-1">
# Athena Detector
- https://eicweb.phy.anl.gov/EIC/detectors/athena.git
- https://eicweb.phy.anl.gov/EIC/detectors/ip6.git
</documentation>
<!-- Some information about detector -->
<info name="Athena Detector" title="Athena Detector"
author="Athena Collaboration"
url="https://eicweb.phy.anl.gov/EIC/detectors/athena.git"
status="development"
version="v1 2021-03-16">
<comment> Athena </comment>
</info>
<define>
<documentation level="2">
## Main Constant Definitions
The ip6 (or other ip) defines should be included first.
These files have only a define tags.
</documentation>
<include ref="ip6/definitions.xml" />
<include ref="ip6/far_forward/fields_275.xml" />
<include ref="compact/definitions.xml" />
</define>
<includes>
<gdmlFile ref="compact/elements.xml"/>
<gdmlFile ref="compact/materials.xml"/>
<file ref="compact/optical_materials.xml"/>
</includes>
<limits>
<limitset name="EICBeamlineLimits">
<limit name="step_length_max" particles="*" value="1.0" unit="mm" />
<limit name="track_length_max" particles="*" value="1.0" unit="mm" />
<limit name="time_max" particles="*" value="0.1" unit="ns" />
<limit name="ekin_min" particles="*" value="0.001" unit="MeV" />
<limit name="range_min" particles="*" value="0.1" unit="mm" />
</limitset>
<limitset name="cal_limits">
<limit name="step_length_max" particles="*" value="5.0" unit="mm"/>
</limitset>
</limits>
<display>
<include ref="compact/colors.xml" />
<include ref="compact/display_detailed.xml" />
</display>
<documentation level="10">
## dRICh only
</documentation>
<include ref="ip6/central_beampipe.xml" />
<include ref="compact/drich.xml" />
</lccdd>
......@@ -33,7 +33,8 @@
The ip6 (or other ip) defines should be included first.
These files have only a define tags.
</documentation>
<include ref="ip6/ip6_defs.xml" />
<include ref="ip6/definitions.xml" />
<include ref="ip6/far_forward/fields_275.xml" />
<include ref="compact/definitions.xml" />
</define>
......@@ -59,8 +60,7 @@
<display>
<include ref="compact/colors.xml" />
<!--include ref="compact/colors2.xml"/-->
<include ref="compact/display.xml" />
<!--include ref="compact/display_detailed.xml"/-->
<include ref="compact/display.xml"/>
</display>
<documentation level="0">
......@@ -87,7 +87,7 @@
Beamline elements
-----------------
</comment>
<include ref="ip6/beampipe.xml" />
<include ref="ip6/central_beampipe.xml" />
<documentation level="5">
## Main magnet
......@@ -95,159 +95,15 @@
Note: When changing magnet, also select dimensions in definitions.xml.
</documentation>
<documentation level="5">
### Tracker subassemblies for ACTS
</documentation>
<detectors>
<detector id="VertexBarrelSubAssembly_ID"
name="VertexBarrelSubAssembly"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="VertexBarrel" />
</detector>
<detector id="VertexEndcapSubAssembly_ID"
name="VertexEndcapSubAssembly"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="VertexEndcapN" />
<composite name="VertexEndcapP" />
</detector>
<detector id="TrackerBarrelSubAssembly_Inner_ID"
name="TrackerBarrelSubAssembly_Inner"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="TrackerBarrel_Inner"/>
</detector>
<detector id="TrackerEndcapSubAssembly_Inner_ID"
name="TrackerEndcapSubAssembly_Inner"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="TrackerEndcapN_Inner"/>
<composite name="TrackerEndcapP_Inner"/>
</detector>
<detector id="TrackerBarrelSubAssembly_Outer_ID"
name="TrackerSubAssembly_Outer"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="TrackerBarrel_Outer"/>
<composite name="TrackerEndcapP_Outer"/>
<composite name="TrackerEndcapN_Outer"/>
</detector>
<comment>
TOF disabled for baseline
<detector id="OuterTrackingSubAssembly_ID"
name="OuterTrackingSubAssembly"
type="DD4hep_SubdetectorAssembly"
vis="TOFSubAssemblyVis">
<composite name="BarrelTOF"/>
<composite name="ForwardTOF"/>
<composite name="BackwardTOF"/>
</detector>
</comment>
<detector id="OuterTrackingSubAssembly_ID"
name="OuterTrackingSubAssembly"
type="DD4hep_SubdetectorAssembly"
vis="SubAssemblyVis">
<composite name="GEMTrackerEndcapP"/>
<composite name="GEMTrackerEndcapN"/>
</detector>
</detectors>
<documentation level="10">
## Central tracking detectors
</documentation>
<include ref="compact/tracking_config_accadia.xml"/>
<!--include ref="compact/tracking_config_mgpds.xml"/-->
<include ref="compact/tracking_config_deathvalley.xml"/>
<documentation level="10">
### PID detectors
</documentation>
<!--include ref="compact/dirc.xml"/-->
<include ref="compact/mrich.xml"/>
<!--include ref="compact/forward_trd.xml"/-->
<include ref="compact/drich.xml"/>
<documentation level="10">
## Central calorimetry
</documentation>
<documentation level="11">
## Far foward detectors
</documentation>
<fields>
<field name="B0PF_Magnet" type="MultipoleMagnet">
<position x="B0PF_XPosition" y="0" z="B0PF_CenterPosition"/>
<rotation x="0" y="B0PF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="B0PF_InnerRadius" dz="B0PF_Length*0.5"/>
<coefficient coefficient="B0PF_Bmax" skew="0.0*tesla"/>
<!--<coefficient coefficient="2.0*tesla/cm" skew="0.2*tesla/cm"/> -->
</field>
<field name="B0APF_Magnet" type="MultipoleMagnet">
<position x="B0APF_XPosition" y="0" z="B0APF_CenterPosition"/>
<rotation x="0" y="B0APF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="B0APF_InnerRadius" dz="B0APF_Length*0.5"/>
<coefficient coefficient="B0APF_Bmax" skew="0.0*tesla"/>
<!--<coefficient coefficient="2.0*tesla/cm" skew="0.2*tesla/cm"/> -->
</field>
<field name="Q1APF_Magnet" type="MultipoleMagnet">
<position x="Q1APF_XPosition" y="0" z="Q1APF_CenterPosition"/>
<rotation x="0" y="Q1APF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="Q1APF_InnerRadius" dz="Q1APF_Length*0.5"/>
<coefficient coefficient="Q1APF_Bmax" skew="0.0*tesla"/>
<coefficient coefficient="Q1APF_GradientMax" skew="0.0*tesla/cm"/>
</field>
<field name="Q1BPF_Magnet" type="MultipoleMagnet">
<position x="Q1BPF_XPosition" y="0" z="Q1BPF_CenterPosition"/>
<rotation x="0" y="Q1BPF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="Q1BPF_InnerRadius" dz="Q1BPF_Length*0.5"/>
<coefficient coefficient="Q1BPF_Bmax" skew="0.0*tesla"/>
<coefficient coefficient="Q1BPF_GradientMax" skew="0.0*tesla/cm"/>
</field>
<field name="Q2PF_Magnet" type="MultipoleMagnet">
<position x="Q2PF_XPosition" y="0" z="Q2PF_CenterPosition"/>
<rotation x="0" y="Q2PF_RotationAngle" z="pi/2.0"/>
<shape type="Tube" rmin="0.0" rmax="Q2PF_InnerRadius" dz="Q2PF_Length*0.5"/>
<coefficient coefficient="Q2PF_Bmax" skew="0.0*tesla"/>
<coefficient coefficient="Q2PF_GradientMax" skew="0.0*tesla/cm"/>
</field>
<field name="B1PF_Magnet" type="MultipoleMagnet">
<position x="B1PF_XPosition" y="0" z="B1PF_CenterPosition"/>
<rotation x="0" y="B1PF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="B1PF_InnerRadius" dz="B1PF_Length*0.5"/>
<coefficient coefficient="B1PF_Bmax" skew="0.0*tesla"/>
<coefficient coefficient="B1PF_GradientMax" skew="0.0*tesla/cm"/>
</field>
<field name="B1APF_Magnet" type="MultipoleMagnet">
<position x="B1APF_XPosition" y="0" z="B1APF_CenterPosition"/>
<rotation x="0" y="B1APF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="B1APF_InnerRadius" dz="B1APF_Length*0.5"/>
<coefficient coefficient="B1APF_Bmax" skew="0.0*tesla"/>
<coefficient coefficient="B1APF_GradientMax" skew="0.0*tesla/cm"/>
</field>
<field name="B2PF_Magnet" type="MultipoleMagnet">
<position x="B2PF_XPosition" y="0" z="B2PF_CenterPosition"/>
<rotation x="0" y="B2PF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="B2PF_InnerRadius" dz="B2PF_Length*0.5"/>
<coefficient coefficient="B2PF_Bmax" skew="0.0*tesla"/>
<coefficient coefficient="B2PF_GradientMax" skew="0.0*tesla/cm"/>
</field>
</fields>
<comment>
FB elements
-----------
None (TODO)
What is FB?
</comment>
<include ref="compact/pid_config_deathvalley.xml"/>
<readouts>
</readouts>
......
......@@ -4,7 +4,7 @@
<debug>
<type name="surface" value="0"/>
<type name="material" value="0"/>
<type name="material" value="0"/>
<type name="readout" value="0"/>
<type name="segmentation" value="0"/>
<type name="limits" value="0"/>
......@@ -21,9 +21,9 @@
<!-- Some information about detector -->
<info name="Athena Detector" title="Athena Detector"
author="Athena Collaboration"
url="https://eicweb.phy.anl.gov/EIC/detectors/athena.git"
status="development"
version="v1 2021-03-16">
url="https://eicweb.phy.anl.gov/EIC/detectors/athena.git"
status="development"
version="v1 2021-03-16">
<comment> Athena </comment>
</info>
<define>
......@@ -33,7 +33,8 @@
The ip6 (or other ip) defines should be included first.
These files have only a define tags.
</documentation>
<include ref="ip6/ip6_defs.xml" />
<include ref="ip6/definitions.xml" />
<include ref="ip6/far_forward/fields_275.xml" />
<include ref="compact/definitions.xml" />
</define>
......@@ -58,7 +59,9 @@
<display>
<include ref="compact/colors.xml" />
<!--include ref="compact/colors2.xml"/-->
<include ref="compact/display.xml" />
<!--include ref="compact/display_detailed.xml"/-->
</display>
<documentation level="0">
......@@ -81,161 +84,19 @@
- and more...
</documentation>
<comment>
Beamline elements
-----------------
</comment>
<comment>
Main magnet
-----------
Note: When changing magnet, also select dimensions in definitions.xml.
</comment>
<!--include ref="compact/solenoid.xml"/-->
<comment>
Tracker subassemblies for ACTS
------------------------------
</comment>
<detectors>
<detector id="VertexBarrelSubAssembly_ID"
name="VertexBarrelSubAssembly"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="VertexBarrel" />
</detector>
<detector id="VertexEndcapSubAssembly_ID"
name="VertexEndcapSubAssembly"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="VertexEndcapN" />
<composite name="VertexEndcapP" />
</detector>
<detector id="TrackerBarrelSubAssembly_Inner_ID"
name="TrackerBarrelSubAssembly_Inner"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="TrackerBarrel_Inner"/>
</detector>
<detector id="TrackerEndcapSubAssembly_Inner_ID"
name="TrackerEndcapSubAssembly_Inner"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="TrackerEndcapN_Inner"/>
<composite name="TrackerEndcapP_Inner"/>
</detector>
<detector id="TrackerBarrelSubAssembly_Outer_ID"
name="TrackerSubAssembly_Outer"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="TrackerBarrel_Outer"/>
<composite name="TrackerEndcapP_Outer"/>
<composite name="TrackerEndcapN_Outer"/>
</detector>
<comment>
TOF disabled for baseline
<detector id="OuterTrackingSubAssembly_ID"
name="OuterTrackingSubAssembly"
type="DD4hep_SubdetectorAssembly"
vis="TOFSubAssemblyVis">
<composite name="BarrelTOF"/>
<composite name="ForwardTOF"/>
<composite name="BackwardTOF"/>
</detector>
</comment>
<detector id="OuterTrackingSubAssembly_ID"
name="OuterTrackingSubAssembly"
type="DD4hep_SubdetectorAssembly"
vis="SubAssemblyVis">
<composite name="GEMTrackerEndcapP"/>
<composite name="GEMTrackerEndcapN"/>
</detector>
</detectors>
<comment>
Central tracking detectors
--------------------------
</comment>
<include ref="compact/vertex_tracker.xml"/>
<include ref="compact/central_tracker.xml"/>
<comment>
PID detectors
-------------
</comment>
<fields>
<field name="B0PF_Magnet" type="MultipoleMagnet">
<position x="B0PF_XPosition" y="0" z="B0PF_CenterPosition"/>
<rotation x="0" y="B0PF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="B0PF_InnerRadius" dz="B0PF_Length*0.5"/>
<coefficient coefficient="B0PF_Bmax" skew="0.0*tesla"/>
<!--<coefficient coefficient="2.0*tesla/cm" skew="0.2*tesla/cm"/> -->
</field>
<field name="B0APF_Magnet" type="MultipoleMagnet">
<position x="B0APF_XPosition" y="0" z="B0APF_CenterPosition"/>
<rotation x="0" y="B0APF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="B0APF_InnerRadius" dz="B0APF_Length*0.5"/>
<coefficient coefficient="B0APF_Bmax" skew="0.0*tesla"/>
<!--<coefficient coefficient="2.0*tesla/cm" skew="0.2*tesla/cm"/> -->
</field>
<field name="Q1APF_Magnet" type="MultipoleMagnet">
<position x="Q1APF_XPosition" y="0" z="Q1APF_CenterPosition"/>
<rotation x="0" y="Q1APF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="Q1APF_InnerRadius" dz="Q1APF_Length*0.5"/>
<coefficient coefficient="Q1APF_Bmax" skew="0.0*tesla"/>
<coefficient coefficient="Q1APF_GradientMax" skew="0.0*tesla/cm"/>
</field>
<field name="Q1BPF_Magnet" type="MultipoleMagnet">
<position x="Q1BPF_XPosition" y="0" z="Q1BPF_CenterPosition"/>
<rotation x="0" y="Q1BPF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="Q1BPF_InnerRadius" dz="Q1BPF_Length*0.5"/>
<coefficient coefficient="Q1BPF_Bmax" skew="0.0*tesla"/>
<coefficient coefficient="Q1BPF_GradientMax" skew="0.0*tesla/cm"/>
</field>
<field name="Q2PF_Magnet" type="MultipoleMagnet">
<position x="Q2PF_XPosition" y="0" z="Q2PF_CenterPosition"/>
<rotation x="0" y="Q2PF_RotationAngle" z="pi/2.0"/>
<shape type="Tube" rmin="0.0" rmax="Q2PF_InnerRadius" dz="Q2PF_Length*0.5"/>
<coefficient coefficient="Q2PF_Bmax" skew="0.0*tesla"/>
<coefficient coefficient="Q2PF_GradientMax" skew="0.0*tesla/cm"/>
</field>
<field name="B1PF_Magnet" type="MultipoleMagnet">
<position x="B1PF_XPosition" y="0" z="B1PF_CenterPosition"/>
<rotation x="0" y="B1PF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="B1PF_InnerRadius" dz="B1PF_Length*0.5"/>
<coefficient coefficient="B1PF_Bmax" skew="0.0*tesla"/>
<coefficient coefficient="B1PF_GradientMax" skew="0.0*tesla/cm"/>
</field>
<field name="B1APF_Magnet" type="MultipoleMagnet">
<position x="B1APF_XPosition" y="0" z="B1APF_CenterPosition"/>
<rotation x="0" y="B1APF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="B1APF_InnerRadius" dz="B1APF_Length*0.5"/>
<coefficient coefficient="B1APF_Bmax" skew="0.0*tesla"/>
<coefficient coefficient="B1APF_GradientMax" skew="0.0*tesla/cm"/>
</field>
<field name="B2PF_Magnet" type="MultipoleMagnet">
<position x="B2PF_XPosition" y="0" z="B2PF_CenterPosition"/>
<rotation x="0" y="B2PF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="B2PF_InnerRadius" dz="B2PF_Length*0.5"/>
<coefficient coefficient="B2PF_Bmax" skew="0.0*tesla"/>
<coefficient coefficient="B2PF_GradientMax" skew="0.0*tesla/cm"/>
</field>
</fields>
<documentation level="11">
## Far foward detectors
</documentation>
<include ref="ip6/central_beampipe.xml"/>
<comment>
FB elements
-----------
None (TODO)
</comment>
<documentation level="11">
## Far foward detectors
</documentation>
<include ref="ip6/far_forward.xml"/>
<readouts>
</readouts>
<documentation level="11">
## Far backward detectors
</documentation>
<include ref="ip6/far_backward.xml"/>
</lccdd>
<lccdd xmlns:compact="http://www.lcsim.org/schemas/compact/1.0"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xs:noNamespaceSchemaLocation="http://www.lcsim.org/schemas/compact/1.0/compact.xsd">
<debug>
<type name="surface" value="0"/>
<type name="material" value="0"/>
<type name="readout" value="0"/>
<type name="segmentation" value="0"/>
<type name="limits" value="0"/>
<type name="region" value="0"/>
<type name="includes" value="0"/>
</debug>
<documentation level="-1">
# Athena Detector
- https://eicweb.phy.anl.gov/EIC/detectors/athena.git
- https://eicweb.phy.anl.gov/EIC/detectors/ip6.git
</documentation>
<!-- Some information about detector -->
<info name="Athena Detector" title="Athena Detector"
author="Athena Collaboration"
url="https://eicweb.phy.anl.gov/EIC/detectors/athena.git"
status="development"
version="v1 2021-03-16">
<comment> Athena </comment>
</info>
<define>
<documentation level="2">
## Main Constant Definitions
The ip6 (or other ip) defines should be included first.
These files have only a define tags.
</documentation>
<include ref="ip6/definitions.xml" />
<include ref="ip6/far_forward/fields_275.xml" />
<include ref="compact/definitions.xml" />
</define>
<includes>
<gdmlFile ref="compact/elements.xml"/>
<gdmlFile ref="compact/materials.xml"/>
<file ref="compact/optical_materials.xml"/>
</includes>
<limits>
<limitset name="EICBeamlineLimits">
<limit name="step_length_max" particles="*" value="1.0" unit="mm" />
<limit name="track_length_max" particles="*" value="1.0" unit="mm" />
<limit name="time_max" particles="*" value="0.1" unit="ns" />
<limit name="ekin_min" particles="*" value="0.001" unit="MeV" />
<limit name="range_min" particles="*" value="0.1" unit="mm" />
</limitset>
<limitset name="cal_limits">
<limit name="step_length_max" particles="*" value="5.0" unit="mm"/>
</limitset>
</limits>
<display>
<include ref="compact/colors.xml" />
<include ref="compact/display_detailed.xml" />
</display>
<documentation level="10">
## pfRICH only
</documentation>
<include ref="ip6/central_beampipe.xml" />
<include ref="compact/pfrich.xml" />
</lccdd>
......@@ -33,7 +33,8 @@
The ip6 (or other ip) defines should be included first.
These files have only a define tags.
</documentation>
<include ref="ip6/ip6_defs.xml" />
<include ref="ip6/definitions.xml" />
<include ref="ip6/far_forward/fields_275.xml" />
<include ref="compact/definitions.xml" />
</define>
......@@ -58,7 +59,7 @@
<display>
<include ref="compact/colors.xml" />
<include ref="compact/display.xml" />
<include ref="compact/display_detailed.xml" />
</display>
<documentation level="0">
......@@ -85,158 +86,13 @@
Beamline elements
-----------------
</comment>
<comment>
Main magnet
-----------
Note: When changing magnet, also select dimensions in definitions.xml.
</comment>
<comment>
Tracker subassemblies for ACTS
------------------------------
</comment>
<detectors>
<detector id="VertexBarrelSubAssembly_ID"
name="VertexBarrelSubAssembly"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="VertexBarrel" />
</detector>
<detector id="VertexEndcapSubAssembly_ID"
name="VertexEndcapSubAssembly"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="VertexEndcapN" />
<composite name="VertexEndcapP" />
</detector>
<detector id="TrackerBarrelSubAssembly_Inner_ID"
name="TrackerBarrelSubAssembly_Inner"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="TrackerBarrel_Inner"/>
</detector>
<detector id="TrackerEndcapSubAssembly_Inner_ID"
name="TrackerEndcapSubAssembly_Inner"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="TrackerEndcapN_Inner"/>
<composite name="TrackerEndcapP_Inner"/>
</detector>
<detector id="TrackerBarrelSubAssembly_Outer_ID"
name="TrackerSubAssembly_Outer"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="TrackerBarrel_Outer"/>
<composite name="TrackerEndcapP_Outer"/>
<composite name="TrackerEndcapN_Outer"/>
</detector>
<comment>
TOF disabled for baseline
<detector id="OuterTrackingSubAssembly_ID"
name="OuterTrackingSubAssembly"
type="DD4hep_SubdetectorAssembly"
vis="TOFSubAssemblyVis">
<composite name="BarrelTOF"/>
<composite name="ForwardTOF"/>
<composite name="BackwardTOF"/>
</detector>
</comment>
<detector id="OuterTrackingSubAssembly_ID"
name="OuterTrackingSubAssembly"
type="DD4hep_SubdetectorAssembly"
vis="SubAssemblyVis">
<composite name="GEMTrackerEndcapP"/>
<composite name="GEMTrackerEndcapN"/>
</detector>
</detectors>
<documentation level="10">
## Central tracking detectors
</documentation>
<include ref="ip6/central_beampipe.xml" />
<comment>
PID detectors
-------------
</comment>
<include ref="compact/dirc.xml"/>
<include ref="compact/mrich.xml"/>
<include ref="compact/drich.xml"/>
<comment>
FF elements
-----------
</comment>
<fields>
<field name="B0PF_Magnet" type="MultipoleMagnet">
<position x="B0PF_XPosition" y="0" z="B0PF_CenterPosition"/>
<rotation x="0" y="B0PF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="B0PF_InnerRadius" dz="B0PF_Length*0.5"/>
<coefficient coefficient="B0PF_Bmax" skew="0.0*tesla"/>
<!--<coefficient coefficient="2.0*tesla/cm" skew="0.2*tesla/cm"/> -->
</field>
<field name="B0APF_Magnet" type="MultipoleMagnet">
<position x="B0APF_XPosition" y="0" z="B0APF_CenterPosition"/>
<rotation x="0" y="B0APF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="B0APF_InnerRadius" dz="B0APF_Length*0.5"/>
<coefficient coefficient="B0APF_Bmax" skew="0.0*tesla"/>
<!--<coefficient coefficient="2.0*tesla/cm" skew="0.2*tesla/cm"/> -->
</field>
<field name="Q1APF_Magnet" type="MultipoleMagnet">
<position x="Q1APF_XPosition" y="0" z="Q1APF_CenterPosition"/>
<rotation x="0" y="Q1APF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="Q1APF_InnerRadius" dz="Q1APF_Length*0.5"/>
<coefficient coefficient="Q1APF_Bmax" skew="0.0*tesla"/>
<coefficient coefficient="Q1APF_GradientMax" skew="0.0*tesla/cm"/>
</field>
<field name="Q1BPF_Magnet" type="MultipoleMagnet">
<position x="Q1BPF_XPosition" y="0" z="Q1BPF_CenterPosition"/>
<rotation x="0" y="Q1BPF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="Q1BPF_InnerRadius" dz="Q1BPF_Length*0.5"/>
<coefficient coefficient="Q1BPF_Bmax" skew="0.0*tesla"/>
<coefficient coefficient="Q1BPF_GradientMax" skew="0.0*tesla/cm"/>
</field>
<field name="Q2PF_Magnet" type="MultipoleMagnet">
<position x="Q2PF_XPosition" y="0" z="Q2PF_CenterPosition"/>
<rotation x="0" y="Q2PF_RotationAngle" z="pi/2.0"/>
<shape type="Tube" rmin="0.0" rmax="Q2PF_InnerRadius" dz="Q2PF_Length*0.5"/>
<coefficient coefficient="Q2PF_Bmax" skew="0.0*tesla"/>
<coefficient coefficient="Q2PF_GradientMax" skew="0.0*tesla/cm"/>
</field>
<field name="B1PF_Magnet" type="MultipoleMagnet">
<position x="B1PF_XPosition" y="0" z="B1PF_CenterPosition"/>
<rotation x="0" y="B1PF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="B1PF_InnerRadius" dz="B1PF_Length*0.5"/>
<coefficient coefficient="B1PF_Bmax" skew="0.0*tesla"/>
<coefficient coefficient="B1PF_GradientMax" skew="0.0*tesla/cm"/>
</field>
<field name="B1APF_Magnet" type="MultipoleMagnet">
<position x="B1APF_XPosition" y="0" z="B1APF_CenterPosition"/>
<rotation x="0" y="B1APF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="B1APF_InnerRadius" dz="B1APF_Length*0.5"/>
<coefficient coefficient="B1APF_Bmax" skew="0.0*tesla"/>
<coefficient coefficient="B1APF_GradientMax" skew="0.0*tesla/cm"/>
</field>
<field name="B2PF_Magnet" type="MultipoleMagnet">
<position x="B2PF_XPosition" y="0" z="B2PF_CenterPosition"/>
<rotation x="0" y="B2PF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="B2PF_InnerRadius" dz="B2PF_Length*0.5"/>
<coefficient coefficient="B2PF_Bmax" skew="0.0*tesla"/>
<coefficient coefficient="B2PF_GradientMax" skew="0.0*tesla/cm"/>
</field>
</fields>
<comment>
FB elements
-----------
None (TODO)
</comment>
<include ref="compact/pid_config_deathvalley.xml"/>
<readouts>
</readouts>
......
<lccdd xmlns:compact="http://www.lcsim.org/schemas/compact/1.0"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xs:noNamespaceSchemaLocation="http://www.lcsim.org/schemas/compact/1.0/compact.xsd">
<debug>
<type name="surface" value="0"/>
<type name="material" value="0"/>
<type name="readout" value="0"/>
<type name="segmentation" value="0"/>
<type name="limits" value="0"/>
<type name="region" value="0"/>
<type name="includes" value="0"/>
</debug>
<documentation level="-1">
# Athena Detector
- https://eicweb.phy.anl.gov/EIC/detectors/athena.git
- https://eicweb.phy.anl.gov/EIC/detectors/ip6.git
</documentation>
<!-- Some information about detector -->
<info name="Athena Detector" title="Athena Detector"
author="Athena Collaboration"
url="https://eicweb.phy.anl.gov/EIC/detectors/athena.git"
status="development"
version="v1 2021-03-16">
<comment> Athena </comment>
</info>
<define>
<documentation level="2">
## Main Constant Definitions
The ip6 (or other ip) defines should be included first.
These files have only a define tags.
</documentation>
<include ref="ip6/definitions.xml" />
<include ref="ip6/far_forward/fields_275.xml" />
<include ref="compact/definitions.xml" />
</define>
<includes>
<gdmlFile ref="compact/elements.xml"/>
<gdmlFile ref="compact/materials.xml"/>
<file ref="compact/optical_materials.xml"/>
</includes>
<limits>
<limitset name="EICBeamlineLimits">
<limit name="step_length_max" particles="*" value="1.0" unit="mm" />
<limit name="track_length_max" particles="*" value="1.0" unit="mm" />
<limit name="time_max" particles="*" value="0.1" unit="ns" />
<limit name="ekin_min" particles="*" value="0.001" unit="MeV" />
<limit name="range_min" particles="*" value="0.1" unit="mm" />
</limitset>
<limitset name="cal_limits">
<limit name="step_length_max" particles="*" value="5.0" unit="mm"/>
</limitset>
</limits>
<display>
<include ref="compact/colors.xml" />
<include ref="compact/display_detailed.xml" />
</display>
<documentation level="10">
## TOF only
</documentation>
<include ref="ip6/central_beampipe.xml" />
<include ref="compact/tof_barrel.xml" />
</lccdd>
......@@ -33,7 +33,8 @@
The ip6 (or other ip) defines should be included first.
These files have only a define tags.
</documentation>
<include ref="ip6/ip6_defs.xml" />
<include ref="ip6/definitions.xml" />
<include ref="ip6/far_forward/fields_275.xml" />
<include ref="compact/definitions.xml" />
</define>
......@@ -58,7 +59,7 @@
<display>
<include ref="compact/colors.xml" />
<include ref="compact/display.xml" />
<include ref="compact/display_detailed.xml" />
</display>
<documentation level="0">
......@@ -85,154 +86,20 @@
Beamline elements
-----------------
</comment>
<comment>
Main magnet
-----------
Note: When changing magnet, also select dimensions in definitions.xml.
</comment>
<!--include ref="compact/solenoid.xml"/-->
<comment>
Tracker subassemblies for ACTS
------------------------------
</comment>
<detectors>
<detector id="VertexBarrelSubAssembly_ID"
name="VertexBarrelSubAssembly"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="VertexBarrel" />
</detector>
<detector id="VertexEndcapSubAssembly_ID"
name="VertexEndcapSubAssembly"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="VertexEndcapN" />
<composite name="VertexEndcapP" />
</detector>
<detector id="TrackerBarrelSubAssembly_Inner_ID"
name="TrackerBarrelSubAssembly_Inner"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="TrackerBarrel_Inner"/>
</detector>
<detector id="TrackerEndcapSubAssembly_Inner_ID"
name="TrackerEndcapSubAssembly_Inner"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="TrackerEndcapN_Inner"/>
<composite name="TrackerEndcapP_Inner"/>
</detector>
<detector id="TrackerBarrelSubAssembly_Outer_ID"
name="TrackerSubAssembly_Outer"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="TrackerBarrel_Outer"/>
<composite name="TrackerEndcapP_Outer"/>
<composite name="TrackerEndcapN_Outer"/>
</detector>
<comment>
TOF disabled for baseline
<detector id="OuterTrackingSubAssembly_ID"
name="OuterTrackingSubAssembly"
type="DD4hep_SubdetectorAssembly"
vis="TOFSubAssemblyVis">
<composite name="BarrelTOF"/>
<composite name="ForwardTOF"/>
<composite name="BackwardTOF"/>
</detector>
</comment>
<detector id="OuterTrackingSubAssembly_ID"
name="OuterTrackingSubAssembly"
type="DD4hep_SubdetectorAssembly"
vis="SubAssemblyVis">
<composite name="GEMTrackerEndcapP"/>
<composite name="GEMTrackerEndcapN"/>
</detector>
</detectors>
<include ref="ip6/central_beampipe.xml" />
<comment>
Central tracking detectors
--------------------------
</comment>
<include ref="compact/tracking_config_accadia.xml"/>
<!--include ref="compact/tracking_config_canyonlands.xml"/-->
<include ref="compact/tracking_config_deathvalley.xml"/>
<comment>
PID detectors
-------------
</comment>
<fields>
<field name="B0PF_Magnet" type="MultipoleMagnet">
<position x="B0PF_XPosition" y="0" z="B0PF_CenterPosition"/>
<rotation x="0" y="B0PF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="B0PF_InnerRadius" dz="B0PF_Length*0.5"/>
<coefficient coefficient="B0PF_Bmax" skew="0.0*tesla"/>
<!--<coefficient coefficient="2.0*tesla/cm" skew="0.2*tesla/cm"/> -->
</field>
<field name="B0APF_Magnet" type="MultipoleMagnet">
<position x="B0APF_XPosition" y="0" z="B0APF_CenterPosition"/>
<rotation x="0" y="B0APF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="B0APF_InnerRadius" dz="B0APF_Length*0.5"/>
<coefficient coefficient="B0APF_Bmax" skew="0.0*tesla"/>
<!--<coefficient coefficient="2.0*tesla/cm" skew="0.2*tesla/cm"/> -->
</field>
<field name="Q1APF_Magnet" type="MultipoleMagnet">
<position x="Q1APF_XPosition" y="0" z="Q1APF_CenterPosition"/>
<rotation x="0" y="Q1APF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="Q1APF_InnerRadius" dz="Q1APF_Length*0.5"/>
<coefficient coefficient="Q1APF_Bmax" skew="0.0*tesla"/>
<coefficient coefficient="Q1APF_GradientMax" skew="0.0*tesla/cm"/>
</field>
<field name="Q1BPF_Magnet" type="MultipoleMagnet">
<position x="Q1BPF_XPosition" y="0" z="Q1BPF_CenterPosition"/>
<rotation x="0" y="Q1BPF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="Q1BPF_InnerRadius" dz="Q1BPF_Length*0.5"/>
<coefficient coefficient="Q1BPF_Bmax" skew="0.0*tesla"/>
<coefficient coefficient="Q1BPF_GradientMax" skew="0.0*tesla/cm"/>
</field>
<field name="Q2PF_Magnet" type="MultipoleMagnet">
<position x="Q2PF_XPosition" y="0" z="Q2PF_CenterPosition"/>
<rotation x="0" y="Q2PF_RotationAngle" z="pi/2.0"/>
<shape type="Tube" rmin="0.0" rmax="Q2PF_InnerRadius" dz="Q2PF_Length*0.5"/>
<coefficient coefficient="Q2PF_Bmax" skew="0.0*tesla"/>
<coefficient coefficient="Q2PF_GradientMax" skew="0.0*tesla/cm"/>
</field>
<field name="B1PF_Magnet" type="MultipoleMagnet">
<position x="B1PF_XPosition" y="0" z="B1PF_CenterPosition"/>
<rotation x="0" y="B1PF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="B1PF_InnerRadius" dz="B1PF_Length*0.5"/>
<coefficient coefficient="B1PF_Bmax" skew="0.0*tesla"/>
<coefficient coefficient="B1PF_GradientMax" skew="0.0*tesla/cm"/>
</field>
<field name="B1APF_Magnet" type="MultipoleMagnet">
<position x="B1APF_XPosition" y="0" z="B1APF_CenterPosition"/>
<rotation x="0" y="B1APF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="B1APF_InnerRadius" dz="B1APF_Length*0.5"/>
<coefficient coefficient="B1APF_Bmax" skew="0.0*tesla"/>
<coefficient coefficient="B1APF_GradientMax" skew="0.0*tesla/cm"/>
</field>
<field name="B2PF_Magnet" type="MultipoleMagnet">
<position x="B2PF_XPosition" y="0" z="B2PF_CenterPosition"/>
<rotation x="0" y="B2PF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="B2PF_InnerRadius" dz="B2PF_Length*0.5"/>
<coefficient coefficient="B2PF_Bmax" skew="0.0*tesla"/>
<coefficient coefficient="B2PF_GradientMax" skew="0.0*tesla/cm"/>
</field>
</fields>
<comment>
FB elements
-----------
None (TODO)
</comment>
<include ref="compact/tof_barrel.xml"/>
<readouts>
</readouts>
......
......@@ -33,7 +33,8 @@
The ip6 (or other ip) defines should be included first.
These files have only a define tags.
</documentation>
<include ref="ip6/ip6_defs.xml" />
<include ref="ip6/definitions.xml" />
<include ref="ip6/far_forward/fields_275.xml" />
<include ref="compact/definitions.xml" />
</define>
......@@ -58,7 +59,7 @@
<display>
<include ref="compact/colors.xml" />
<include ref="compact/display.xml" />
<include ref="compact/display_detailed.xml" />
</display>
<documentation level="0">
......@@ -81,158 +82,11 @@
- and more...
</documentation>
<comment>
Beamline elements
-----------------
</comment>
<comment>
Main magnet
-----------
Note: When changing magnet, also select dimensions in definitions.xml.
</comment>
<!--include ref="compact/solenoid.xml"/-->
<comment>
Tracker subassemblies for ACTS
------------------------------
</comment>
<detectors>
<detector id="VertexBarrelSubAssembly_ID"
name="VertexBarrelSubAssembly"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="VertexBarrel" />
</detector>
<detector id="VertexEndcapSubAssembly_ID"
name="VertexEndcapSubAssembly"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="VertexEndcapN" />
<composite name="VertexEndcapP" />
</detector>
<detector id="TrackerBarrelSubAssembly_Inner_ID"
name="TrackerBarrelSubAssembly_Inner"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="TrackerBarrel_Inner"/>
</detector>
<detector id="TrackerEndcapSubAssembly_Inner_ID"
name="TrackerEndcapSubAssembly_Inner"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="TrackerEndcapN_Inner"/>
<composite name="TrackerEndcapP_Inner"/>
</detector>
<detector id="TrackerBarrelSubAssembly_Outer_ID"
name="TrackerSubAssembly_Outer"
type="DD4hep_SubdetectorAssembly"
vis="TrackerSubAssemblyVis">
<composite name="TrackerBarrel_Outer"/>
<composite name="TrackerEndcapP_Outer"/>
<composite name="TrackerEndcapN_Outer"/>
</detector>
<comment>
TOF disabled for baseline
<detector id="OuterTrackingSubAssembly_ID"
name="OuterTrackingSubAssembly"
type="DD4hep_SubdetectorAssembly"
vis="TOFSubAssemblyVis">
<composite name="BarrelTOF"/>
<composite name="ForwardTOF"/>
<composite name="BackwardTOF"/>
</detector>
</comment>
<detector id="OuterTrackingSubAssembly_ID"
name="OuterTrackingSubAssembly"
type="DD4hep_SubdetectorAssembly"
vis="SubAssemblyVis">
<composite name="GEMTrackerEndcapP"/>
<composite name="GEMTrackerEndcapN"/>
</detector>
</detectors>
<comment>
Central tracking detectors
--------------------------
</comment>
<include ref="compact/vertex_tracker.xml"/>
<comment>
PID detectors
-------------
</comment>
<fields>
<field name="B0PF_Magnet" type="MultipoleMagnet">
<position x="B0PF_XPosition" y="0" z="B0PF_CenterPosition"/>
<rotation x="0" y="B0PF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="B0PF_InnerRadius" dz="B0PF_Length*0.5"/>
<coefficient coefficient="B0PF_Bmax" skew="0.0*tesla"/>
<!--<coefficient coefficient="2.0*tesla/cm" skew="0.2*tesla/cm"/> -->
</field>
<field name="B0APF_Magnet" type="MultipoleMagnet">
<position x="B0APF_XPosition" y="0" z="B0APF_CenterPosition"/>
<rotation x="0" y="B0APF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="B0APF_InnerRadius" dz="B0APF_Length*0.5"/>
<coefficient coefficient="B0APF_Bmax" skew="0.0*tesla"/>
<!--<coefficient coefficient="2.0*tesla/cm" skew="0.2*tesla/cm"/> -->
</field>
<field name="Q1APF_Magnet" type="MultipoleMagnet">
<position x="Q1APF_XPosition" y="0" z="Q1APF_CenterPosition"/>
<rotation x="0" y="Q1APF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="Q1APF_InnerRadius" dz="Q1APF_Length*0.5"/>
<coefficient coefficient="Q1APF_Bmax" skew="0.0*tesla"/>
<coefficient coefficient="Q1APF_GradientMax" skew="0.0*tesla/cm"/>
</field>
<field name="Q1BPF_Magnet" type="MultipoleMagnet">
<position x="Q1BPF_XPosition" y="0" z="Q1BPF_CenterPosition"/>
<rotation x="0" y="Q1BPF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="Q1BPF_InnerRadius" dz="Q1BPF_Length*0.5"/>
<coefficient coefficient="Q1BPF_Bmax" skew="0.0*tesla"/>
<coefficient coefficient="Q1BPF_GradientMax" skew="0.0*tesla/cm"/>
</field>
<field name="Q2PF_Magnet" type="MultipoleMagnet">
<position x="Q2PF_XPosition" y="0" z="Q2PF_CenterPosition"/>
<rotation x="0" y="Q2PF_RotationAngle" z="pi/2.0"/>
<shape type="Tube" rmin="0.0" rmax="Q2PF_InnerRadius" dz="Q2PF_Length*0.5"/>
<coefficient coefficient="Q2PF_Bmax" skew="0.0*tesla"/>
<coefficient coefficient="Q2PF_GradientMax" skew="0.0*tesla/cm"/>
</field>
<field name="B1PF_Magnet" type="MultipoleMagnet">
<position x="B1PF_XPosition" y="0" z="B1PF_CenterPosition"/>
<rotation x="0" y="B1PF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="B1PF_InnerRadius" dz="B1PF_Length*0.5"/>
<coefficient coefficient="B1PF_Bmax" skew="0.0*tesla"/>
<coefficient coefficient="B1PF_GradientMax" skew="0.0*tesla/cm"/>
</field>
<field name="B1APF_Magnet" type="MultipoleMagnet">
<position x="B1APF_XPosition" y="0" z="B1APF_CenterPosition"/>
<rotation x="0" y="B1APF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="B1APF_InnerRadius" dz="B1APF_Length*0.5"/>
<coefficient coefficient="B1APF_Bmax" skew="0.0*tesla"/>
<coefficient coefficient="B1APF_GradientMax" skew="0.0*tesla/cm"/>
</field>
<field name="B2PF_Magnet" type="MultipoleMagnet">
<position x="B2PF_XPosition" y="0" z="B2PF_CenterPosition"/>
<rotation x="0" y="B2PF_RotationAngle" z="0"/>
<shape type="Tube" rmin="0.0" rmax="B2PF_InnerRadius" dz="B2PF_Length*0.5"/>
<coefficient coefficient="B2PF_Bmax" skew="0.0*tesla"/>
<coefficient coefficient="B2PF_GradientMax" skew="0.0*tesla/cm"/>
</field>
</fields>
<comment>
FB elements
-----------
None (TODO)
</comment>
<include ref="compact/vertex_tracker_3layers.xml"/>
<readouts>
</readouts>
......
......@@ -12,8 +12,10 @@
</documentation>
<!--include ref="tof_endcap.xml"/-->
<include ref="tof_barrel.xml"/>
<include ref="tof_endcap.xml"/>
<include ref="tof_forward.xml"/>
<include ref="tof_backward.xml"/>
</lccdd>
......@@ -2,28 +2,60 @@
<lccdd>
<define>
<constant name="BarrelTOFSpaceFrame_width" value="40.0*mm"/>
<constant name="BarrelTOFSpaceFrame_height" value="sqrt(3.0)*32.0*mm/2.0"/>
<constant name="BarrelTOFSensor_thickness" value="0.3*mm"/>
<constant name="BarrelTOFModule_thickness" value="2.00/100*9.37*cm"/>
<constant name="BarrelTOFService_thickness" value="BarrelTOFModule_thickness-BarrelTOFSensor_thickness"/>
<comment>
Layer_rOffset is used to add inside space so the _rmin value is the nominal sensor radius.
--------------------------
Barrel TOF Parameters
--------------------------
</comment>
<constant name="BarrelTOFLayer_rOffset" value="0.5*cm"/>
<constant name="BarrelTOF_Sensor_thickness" value="0.3*mm"/>
<constant name="BarrelTOF_Hybrid_thickness" value="2*0.008125*cm"/>
<constant name="BarrelTOF_CFSkin_thickness" value="2*0.0075*cm"/>
<constant name="BarrelTOF_CFoam_thickness" value="2*0.29*cm"/>
<constant name="BarrelTOF_CHoneycomb_thickness" value="2*0.29*cm"/>
<constant name="BarrelTOF_CoolingTube_thickness" value="0.08*cm"/>
<constant name="BarrelTOF_Coolant_thickness" value="0.08*cm"/>
<constant name="BarrelTOF_Module_thickness" value="BarrelTOF_Sensor_thickness+2*BarrelTOF_Hybrid_thickness+2*BarrelTOF_CFSkin_thickness+BarrelTOF_CFoam_thickness+BarrelTOF_CoolingTube_thickness+BarrelTOF_Coolant_thickness"/>
<constant name="BarrelTOF_rmin1" value="50.0*cm"/>
<constant name="BarrelTOF_rmin2" value="BarrelTOF_rmin1 + BarrelTOFSpaceFrame_width"/>
<constant name="BarrelTOF_length1" value="192.0*cm"/>
<constant name="BarrelTOF_length2" value="200.0*cm"/>
<constant name="BarrelTOF_radius_design" value="50.0*cm"/>
<constant name="BarrelTOF_Module_width_design" value="56.0*mm"/>
<constant name="BarrelTOF_Sensor_width_design" value="32.0*mm"/>
<constant name="BarrelTOF_CFoam_width_design" value="BarrelTOF_Sensor_width_design-5.0*mm"/>
<constant name="BarrelTOF_CHoneycomb_width_design" value="BarrelTOF_Module_width_design-BarrelTOF_CFoam_width_design"/>
<constant name="BarrelTOF_CoolingTube_width_design" value="0.75*cm"/>
<constant name="BarrelTOF_Coolant_width_design" value="0.75*cm"/>
<constant name="BarrelTOF_thickness" value="BarrelTOF_rmin2 - BarrelTOF_rmin1"/>
<constant name="BarrelTOF_length" value="BarrelTOF_length2"/>
<constant name="BarrelTOF_Sensor_position_design" value="0.5*(BarrelTOF_Sensor_width_design-BarrelTOF_Module_width_design)"/>
<constant name="BarrelTOF_CFoam_position_design" value="0.5*(BarrelTOF_CFoam_width_design-BarrelTOF_Module_width_design)"/>
<constant name="BarrelTOF_CHoneycomb_position_design" value="0.5*(BarrelTOF_Module_width_design-BarrelTOF_CHoneycomb_width_design)"/>
<constant name="BarrelTOF_CoolingTube_position_design" value="BarrelTOF_CHoneycomb_position_design"/>
<constant name="BarrelTOF_Coolant_position_design" value="BarrelTOF_CHoneycomb_position_design"/>
<constant name="BarrelTOF_Service_position_design" value="0.0*mm"/>
<comment> TODO: These should be computed </comment>
<constant name="BarrelTOF_NModules" value="80"/>
<constant name="BarrelTOF_scale" value="1.05"/>
<constant name="BarrelTOF_radius" value="BarrelTOF_scale * BarrelTOF_radius_design"/>
<constant name="BarrelTOF_Sensor_width" value="BarrelTOF_scale * BarrelTOF_Sensor_width_design"/>
<constant name="BarrelTOF_CFoam_width" value="BarrelTOF_scale * BarrelTOF_CFoam_width_design"/>
<constant name="BarrelTOF_CHoneycomb_width" value="BarrelTOF_scale * BarrelTOF_CHoneycomb_width_design"/>
<constant name="BarrelTOF_CoolingTube_width" value="BarrelTOF_scale * BarrelTOF_CoolingTube_width_design"/>
<constant name="BarrelTOF_Coolant_width" value="BarrelTOF_scale * BarrelTOF_Coolant_width_design"/>
<constant name="BarrelTOF_Sensor_position" value="BarrelTOF_scale * BarrelTOF_Sensor_position_design"/>
<constant name="BarrelTOF_CFoam_position" value="BarrelTOF_scale * BarrelTOF_CFoam_position_design"/>
<constant name="BarrelTOF_CHoneycomb_position" value="BarrelTOF_scale * BarrelTOF_CHoneycomb_position_design"/>
<constant name="BarrelTOF_CoolingTube_position" value="BarrelTOF_scale * BarrelTOF_CoolingTube_position_design"/>
<constant name="BarrelTOF_Coolant_position" value="BarrelTOF_scale * BarrelTOF_Coolant_position_design"/>
<constant name="BarrelTOF_Service_position" value="BarrelTOF_scale * BarrelTOF_Service_position_design"/>
<constant name="BarrelTOF_Module_width" value="BarrelTOF_scale*BarrelTOF_Module_width_design"/>
<constant name="BarrelTOF_Module_tiltangle" value="18.0*degree"/>
<constant name="BarrelTOF_Module_nphi" value="108"/>
<constant name="BarrelTOF_Module_nz" value="1"/>
<constant name="BarrelTOF_rmin" value="BarrelTOF_radius"/>
<constant name="BarrelTOF_rmax" value="BarrelTOF_rmin+BarrelTOF_Module_width*tan(BarrelTOF_Module_tiltangle)"/>
<constant name="BarrelTOF_thickness" value="BarrelTOF_rmax-BarrelTOF_rmin"/>
<constant name="BarrelTOF_rOffset" value="16.0*mm"/>
<constant name="BarrelTOF_length1" value="2 * BarrelTOF_rmin / CentralTrackingBarrel_tan * 0.995"/>
<constant name="BarrelTOF_length2" value="2 * BarrelTOF_rmax / CentralTrackingBarrel_tan * 0.995"/>
<constant name="BarrelTOF_length" value="BarrelTOF_length2"/>
</define>
......@@ -34,46 +66,61 @@
<detector
id="BarrelTOF_ID"
name="BarrelTOF"
type="athena_TrackerBarrel"
readout="BarrelTOFHits"
type="athena_TOFBarrel"
readout="TOFBarrelHits"
insideTrackingVolume="true">
<dimensions
rmin="BarrelTOF_rmin1-BarrelTOFLayer_rOffset"
rmax="BarrelTOF_rmin2-BarrelTOFLayer_rOffset + BarrelTOF_thickness"
rmin="BarrelTOF_rmin-BarrelTOF_rOffset"
rmax="BarrelTOF_rmax+BarrelTOF_rOffset"
length="BarrelTOF_length"/>
<comment>
Tracker Barrel Modules
</comment>
<module name="BarrelTOF_Module1" vis="TOFVis">
<frame material="CarbonFiber_25percent" vis="TOFVis"
width="BarrelTOFSpaceFrame_width"
height="BarrelTOFSpaceFrame_height"
length="BarrelTOF_length1"
thickness="0.1*mm" />
<module_component name="silicon" material="Silicon" sensitive="true"
width="BarrelTOFSpaceFrame_width" length="BarrelTOF_length1-0.1*mm" thickness="BarrelTOFSensor_thickness" >
<module name="BarrelTOF_Module1" vis="TOFBarrelModuleVis">
<module_component name="sensor" material="Silicon" sensitive="true" width="BarrelTOF_Sensor_width" length="BarrelTOF_length1" thickness="BarrelTOF_Sensor_thickness" vis="TOFSensorVis" >
<position x="BarrelTOF_Sensor_position" y="0" z="0" />
</module_component>
<module_component name="hybridtop" material="Kapton" sensitive="false" width="BarrelTOF_Module_width" length="BarrelTOF_length1" thickness="BarrelTOF_Hybrid_thickness" vis="TOFHybridVis" >
<position x="BarrelTOF_Service_position" y="0" z="0" />
</module_component>
<module_component name="cfskintop" material="CFRPMix2" sensitive="false" width="BarrelTOF_Module_width" length="BarrelTOF_length1" thickness="BarrelTOF_CFSkin_thickness" vis="TOFCSkinVis" >
<position x="BarrelTOF_Service_position" y="0" z="0" />
</module_component>
<module_component name="coolingtube" material="Aluminum" sensitive="false" width="BarrelTOF_CoolingTube_width" length="BarrelTOF_length1" thickness="BarrelTOF_CoolingTube_thickness" vis="TOFCoolingTubeVis" >
<position x="BarrelTOF_CoolingTube_position" y="0" z="0" />
</module_component>
<module_component name="coolant" material="NOVEC7200" sensitive="false" width="BarrelTOF_Coolant_width" length="BarrelTOF_length1" thickness="BarrelTOF_Coolant_thickness" vis="TOFCoolantVis" >
<position x="BarrelTOF_Coolant_position" y="0" z="0" />
</module_component>
<module_component name="cfoam" material="CarbonFoam" sensitive="false" width="BarrelTOF_CFoam_width" length="BarrelTOF_length1" thickness="BarrelTOF_CFoam_thickness" vis="TOFCFoamVis" >
<position x="BarrelTOF_CFoam_position" y="0" z="0" />
</module_component>
<module_component name="choneycomb" material="CFRPMix" sensitive="false" width="BarrelTOF_CHoneycomb_width" length="BarrelTOF_length1" thickness="BarrelTOF_CHoneycomb_thickness" vis="TOFCHoneycombVis" >
<position x="BarrelTOF_CHoneycomb_position" y="0" z="-1*BarrelTOF_CFoam_thickness" />
</module_component>
<module_component name="cfskinbottom" material="CFRPMix2" sensitive="false" width="BarrelTOF_Module_width" length="BarrelTOF_length1" thickness="BarrelTOF_CFSkin_thickness" vis="TOFCSkinVis" >
<position x="BarrelTOF_Service_position" y="0" z="0" />
</module_component>
<module_component name="hybridbottom" material="Kapton" sensitive="false" width="BarrelTOF_Module_width" length="BarrelTOF_length1" thickness="BarrelTOF_Hybrid_thickness" vis="TOFHybridVis" >
<position x="BarrelTOF_Service_position" y="0" z="0" />
</module_component>
<module_component name="service" material="Silicon" sensitive="false"
width="BarrelTOFSpaceFrame_width" length="BarrelTOF_length1-0.1*mm" thickness="BarrelTOFService_thickness" />
</module>
<layer module="BarrelTOF_Module1" id="1" vis="TOFVis">
<layer module="BarrelTOF_Module1" id="1" vis="TOFLayerVis">
<barrel_envelope
inner_r="BarrelTOF_rmin1-BarrelTOFLayer_rOffset"
outer_r="BarrelTOF_rmin1-BarrelTOFLayer_rOffset + BarrelTOF_thickness-1.0*mm"
inner_r="BarrelTOF_rmin-BarrelTOF_rOffset"
outer_r="BarrelTOF_rmax+BarrelTOF_rOffset"
z_length="BarrelTOF_length"/>
<rphi_layout phi_tilt="10.0*degree" nphi="BarrelTOF_NModules" phi0="0.0" rc="BarrelTOF_rmin1" dr="0.0 * mm"/>
<z_layout dr="0.0 * mm" z0="0.0 * mm" nz="1"/>
<rphi_layout phi_tilt="BarrelTOF_Module_tiltangle" nphi="BarrelTOF_Module_nphi" phi0="0.0" rc="BarrelTOF_rmin" dr="0.0*mm"/>
<z_layout dr="0.0*mm" z0="0.0*mm" nz="BarrelTOF_Module_nz"/>
</layer>
</detector>
</detectors>
<readouts>
<readout name="BarrelTOFHits">
<segmentation type="CartesianGridXY" grid_size_x="0.150*mm" grid_size_y="0.150*mm" />
<id>system:8,barrel:2,layer:4,module:12,sensor:2,x:32:-16,y:-16</id>
<readout name="TOFBarrelHits">
<segmentation type="CartesianGridXY" grid_size_x="0.05*mm" grid_size_y="BarrelTOF_length1/48" />
<id>system:8,layer:4,module:12,sensor:2,x:32:-16,y:-16</id>
</readout>
</readouts>
</lccdd>
......@@ -3,45 +3,65 @@
<define>
<comment>
--------------------------
Forward and backward TOF Parameters
Forward TOF Parameters
--------------------------
</comment>
<comment> Forward/backward TOF position </comment>
<constant name="ForwardTOF_length" value="min(ForwardTOFRegion_length, 2.*cm)"/>
<constant name="ForwardTOF_zmin" value="ForwardTOFRegion_zmin + ForwardTOFRegion_length - ForwardTOF_length - 1*cm"/>
<constant name="ForwardTOF_nlayers" value="2"/>
<constant name="ForwardTOFMod_offset" value="1.2*cm"/>
<constant name="BackwardTOF_length" value="min(BackwardTOFRegion_length, 2.*cm)"/>
<constant name="BackwardTOF_zmin" value="BackwardTOFRegion_zmin + 0.5*cm"/>
<constant name="BackwardTOF_nlayers" value="2"/>
<constant name="BackwardTOFMod_offset" value="1.2*cm"/>
<constant name="TOFEndcapSensor_thickness" value="0.3*mm"/>
<constant name="TOFEndcap_thickness" value="2.00/100*9.37*cm"/>
<constant name="TOFEndcapService_thickness" value="TOFEndcap_thickness-TOFEndcapSensor_thickness"/>
<constant name="TOFEndcap_nLayers" value="2"/>
<comment> LGAD parameters for the endcap TOFs </comment>
<constant name="TOFEndcapSensor_thickness" value="300*um" />
<constant name="TOFEndcapService_thickness" value="5.00/100*9.37*cm-TOFEndcapSensor_thickness" />
<constant name="TOFEndcapMod_count" value="36" />
<constant name="TOFEndcapMod_dz" value="0" />
<constant name="TOFEndcapMod_overlap" value="0" />
</define>
<documentation>
## Forward and backward TOF double-disks,
## a potential ATHENA upgrade
</documentation>
<comment>
Actual detector implementation.
</comment>
<define>
<constant name="TOFEndcapMod_thickness" value="TOFEndcapSensor_thickness + TOFEndcapService_thickness" />
<constant name="TOFEndcapMod_angle" value="360.0*degree / TOFEndcapMod_count * (1 + TOFEndcapMod_overlap)" />
<comment> 1 um padding to not have layer and module touch (ACTS requirement) </comment>
<constant name="TOFEndcapLayer_thickness" value="TOFEndcapMod_thickness + 2 * TOFEndcapMod_dz + 1 * um" />
<constant name="ForwardTOF_zmin" value="BarrelTracking_length/2.0 + ForwardTracking_length + ForwardRICH_length + ForwardTRD_length"/>
<constant name="ForwardTOF_dz" value="(ForwardTOF_length-0.4*cm)/TOFEndcap_nLayers"/>
<constant name="ForwardTOF_rmin1" value="ForwardPID_rmin1"/>
<constant name="ForwardTOF_rmin2" value="ForwardPID_rmin1"/>
<constant name="ForwardTOF_rmax1" value="Solenoid_rmin"/>
<constant name="ForwardTOF_rmax2" value="Solenoid_rmin"/>
<constant name="ForwardTOFModOpeningAngle" value="30.0*degree"/>
<constant name="ForwardTOFMod1_x1" value="2.0*ForwardTOF_rmin1*sin(ForwardTOFModOpeningAngle/2.0)"/>
<constant name="ForwardTOFMod1_x2" value="2.0*ForwardTOF_rmax1*sin(ForwardTOFModOpeningAngle/2.0)"/>
<constant name="ForwardTOFMod1_y" value="ForwardTOF_rmax1*cos(ForwardTOFModOpeningAngle/2.0) - ForwardTOF_rmin1"/>
<constant name="ForwardTOFMod2_x1" value="2.0*ForwardTOF_rmin2*sin(ForwardTOFModOpeningAngle/2.0)"/>
<constant name="ForwardTOFMod2_x2" value="2.0*ForwardTOF_rmax2*sin(ForwardTOFModOpeningAngle/2.0)"/>
<constant name="ForwardTOFMod2_y" value="ForwardTOF_rmax2*cos(ForwardTOFModOpeningAngle/2.0) - ForwardTOF_rmin2"/>
<constant name="ForwardTOFMod_rmin" value="ForwardTOFRegion_tan * ForwardTOF_zmin" />
<constant name="ForwardTOFMod_rmax" value="ForwardTOFRegion_rmax" />
<constant name="ForwardTOFMod_x1" value="2 * ForwardTOFMod_rmin * tan(TOFEndcapMod_angle/2)" />
<constant name="ForwardTOFMod_x2" value="2 * ForwardTOFMod_rmax * sin(TOFEndcapMod_angle/2)" />
<constant name="ForwardTOFMod_y" value="ForwardTOFMod_rmax * cos(TOFEndcapMod_angle/2) - ForwardTOFMod_rmin" />
<constant name="ForwardTOFMod1_zmin" value="ForwardTOF_zmin" />
<constant name="ForwardTOFMod2_zmin" value="ForwardTOF_zmin + ForwardTOFMod_offset" />
<constant name="ForwardTOFLayer_rmin" value="ForwardTOFMod_rmin - 1*um" />
<constant name="ForwardTOFLayer_rmax" value="ForwardTOFMod_rmax + 1*um" />
<constant name="ForwardTOFLayer1_zmin" value="ForwardTOFMod1_zmin - TOFEndcapLayer_thickness / 2" />
<constant name="ForwardTOFLayer2_zmin" value="ForwardTOFMod2_zmin - TOFEndcapLayer_thickness / 2" />
<constant name="BackwardTOF_zmin" value="BarrelTracking_length/2.0 + BackwardTracking_length + BackwardCherenkov_length "/>
<constant name="BackwardTOF_dz" value="(BackwardTOF_length-0.4*cm)/TOFEndcap_nLayers"/>
<constant name="BackwardTOF_thickness" value="BackwardTOF_dz - 1.0*mm"/>
<comment> Note, the -1.0*mm is so the layers do not touch surfaces.
This is a limitation of ACTS geometry which will likely go away in the future.</comment>
<constant name="BackwardTOF_rmin1" value="ForwardPID_rmin1"/>
<constant name="BackwardTOF_rmin2" value="ForwardPID_rmin1"/>
<constant name="BackwardTOF_rmax1" value="BarrelTracking_rmax"/>
<constant name="BackwardTOF_rmax2" value="BarrelTracking_rmax"/>
<constant name="BackwardTOFModOpeningAngle" value="30.0*degree"/>
<constant name="BackwardTOFMod1_x1" value="2.0*BackwardTOF_rmin1*sin(BackwardTOFModOpeningAngle/2.0)"/>
<constant name="BackwardTOFMod1_x2" value="2.0*BackwardTOF_rmax1*sin(BackwardTOFModOpeningAngle/2.0)"/>
<constant name="BackwardTOFMod1_y" value="BackwardTOF_rmax1*cos(BackwardTOFModOpeningAngle/2.0) - BackwardTOF_rmin1"/>
<constant name="BackwardTOFMod2_x1" value="2.0*BackwardTOF_rmin2*sin(BackwardTOFModOpeningAngle/2.0)"/>
<constant name="BackwardTOFMod2_x2" value="2.0*BackwardTOF_rmax2*sin(BackwardTOFModOpeningAngle/2.0)"/>
<constant name="BackwardTOFMod2_y" value="BackwardTOF_rmax2*cos(BackwardTOFModOpeningAngle/2.0) - BackwardTOF_rmin2"/>
<constant name="BackwardTOFMod_rmin" value="BackwardPIDRegion_tan * BackwardTOF_zmin" />
<constant name="BackwardTOFMod_rmax" value="BackwardPIDRegion_rmax" />
<constant name="BackwardTOFMod_x1" value="2 * BackwardTOFMod_rmin * tan(TOFEndcapMod_angle/2)" />
<constant name="BackwardTOFMod_x2" value="2 * BackwardTOFMod_rmax * sin(TOFEndcapMod_angle/2)" />
<constant name="BackwardTOFMod_y" value="BackwardTOFMod_rmax * cos(TOFEndcapMod_angle/2) - BackwardTOFMod_rmin" />
<constant name="BackwardTOFMod1_zmin" value="BackwardTOF_zmin" />
<constant name="BackwardTOFMod2_zmin" value="BackwardTOF_zmin + BackwardTOFMod_offset" />
<constant name="BackwardTOFLayer_rmin" value="BackwardTOFMod_rmin - 1*um" />
<constant name="BackwardTOFLayer_rmax" value="BackwardTOFMod_rmax + 1*um" />
<constant name="BackwardTOFLayer1_zmin" value="BackwardTOFMod1_zmin - TOFEndcapLayer_thickness / 2" />
<constant name="BackwardTOFLayer2_zmin" value="BackwardTOFMod2_zmin - TOFEndcapLayer_thickness / 2" />
</define>
<detectors>
......@@ -52,40 +72,39 @@
readout="TOFEndcapHits"
vis="TOFVis"
reflect="false">
<module name="Module1" vis="TOFVis">
<trd x1="ForwardTOFMod1_x1/2.0" x2="ForwardTOFMod1_x2/2.0" z="ForwardTOFMod1_y/2"/>
<module_component thickness="ITS3Thickness" material="Silicon" sensitive="true"/>
<module_component thickness="TOFEndcapService_thickness" material="Silicon"/>
</module>
<module name="Module2" vis="TOFVis">
<trd x1="ForwardTOFMod2_x1/2.0" x2="ForwardTOFMod2_x2/2.0" z="ForwardTOFMod2_y/2"/>
<module_component thickness="TOFEndcapSensor_thickness" material="Silicon" sensitive="true"/>
<module_component thickness="TOFEndcapService_thickness" material="Silicon"/>
<module name="ForwardModule" vis="TOFModuleVis">
<trd x1="ForwardTOFMod_x1/2.0" x2="ForwardTOFMod_x2/2.0" z="ForwardTOFMod_y/2"/>
<comment> TRDs are built back-to-front </comment>
<module_component thickness="TOFEndcapService_thickness" material="Silicon" vis="TOFVis"/>
<module_component thickness="TOFEndcapSensor_thickness" material="Silicon" sensitive="true" vis="TOFSensorVis"/>
</module>
<layer id="1">
<envelope vis="TOFVis"
rmin="ForwardTOF_rmin1"
rmax="ForwardTOF_rmax1"
length="BackwardTOF_thickness"
zstart="ForwardTOF_zmin" />
<ring vis="TOFVis"
r="ForwardTOF_rmin1+ForwardTOFMod1_y/2.0"
zstart="0.0*mm"
nmodules="12" dz="2.5 * mm" module="Module1" />
<envelope vis="TOFLayerVis"
rmin="ForwardTOFLayer_rmin"
rmax="ForwardTOFLayer_rmax"
length="TOFEndcapLayer_thickness"
zstart="ForwardTOFLayer1_zmin" />
<ring
r="ForwardTOFMod_rmin + ForwardTOFMod_y/2.0"
zstart="0"
nmodules="TOFEndcapMod_count"
dz="TOFEndcapMod_dz"
module="ForwardModule" />
</layer>
<layer id="2">
<envelope vis="TOFVis"
rmin="ForwardTOF_rmin2"
rmax="ForwardTOF_rmax2"
length="BackwardTOF_thickness"
zstart="ForwardTOF_zmin + ForwardTOF_dz" />
<ring vis="TOFVis"
r="ForwardTOF_rmin2+ForwardTOFMod2_y/2.0"
zstart="0.0*mm"
nmodules="12" dz="2.5 * mm" module="Module2" />
<envelope vis="TOFLayerVis"
rmin="ForwardTOFLayer_rmin"
rmax="ForwardTOFLayer_rmax"
length="TOFEndcapLayer_thickness"
zstart="ForwardTOFLayer2_zmin" />
<ring
r="ForwardTOFMod_rmin + ForwardTOFMod_y/2.0"
zstart="0"
nmodules="TOFEndcapMod_count"
dz="TOFEndcapMod_dz"
module="ForwardModule" />
</layer>
</detector>
<detector
id="BackwardTOF_ID"
name="BackwardTOF"
......@@ -93,45 +112,45 @@
readout="TOFEndcapHits"
vis="TOFVis"
reflect="true">
<module name="Module1" vis="TOFVis">
<trd x1="BackwardTOFMod1_x1/2.0" x2="BackwardTOFMod1_x2/2.0" z="BackwardTOFMod1_y/2"/>
<module_component thickness="TOFEndcapSensor_thickness" material="Silicon" sensitive="true"/>
<module_component thickness="TOFEndcapService_thickness" material="Silicon"/>
</module>
<module name="Module2" vis="TOFVis">
<trd x1="BackwardTOFMod2_x1/2.0" x2="BackwardTOFMod2_x2/2.0" z="BackwardTOFMod2_y/2"/>
<module_component thickness="TOFEndcapSensor_thickness" material="Silicon" sensitive="true"/>
<module_component thickness="TOFEndcapService_thickness" material="Silicon"/>
<module name="BackwardModule" vis="TOFModuleVis">
<trd x1="BackwardTOFMod_x1/2.0" x2="BackwardTOFMod_x2/2.0" z="BackwardTOFMod_y/2"/>
<comment> TRDs are built back-to-front </comment>
<module_component thickness="TOFEndcapService_thickness" material="Silicon" vis="TOFVis"/>
<module_component thickness="TOFEndcapSensor_thickness" material="Silicon" sensitive="true" vis="TOFSensorVis"/>
</module>
<layer id="1">
<envelope vis="TOFVis"
rmin="BackwardTOF_rmin1 + 0 * 1.2*cm"
rmax="BackwardTOF_rmax1"
length="BackwardTOF_thickness"
zstart="BackwardTOF_zmin" />
<ring vis="TOFVis"
r="BackwardTOF_rmin1+BackwardTOFMod1_y/2.0"
zstart="0.0*mm"
nmodules="12" dz="2.5 * mm" module="Module1" />
<envelope vis="TOFLayerVis"
rmin="BackwardTOFLayer_rmin"
rmax="BackwardTOFLayer_rmax"
length="TOFEndcapLayer_thickness"
zstart="BackwardTOFLayer1_zmin" />
<ring
r="BackwardTOFMod_rmin + BackwardTOFMod_y/2.0"
zstart="0"
nmodules="TOFEndcapMod_count"
dz="TOFEndcapMod_dz"
module="BackwardModule" />
</layer>
<layer id="2">
<envelope vis="TOFVis"
rmin="BackwardTOF_rmin2"
rmax="BackwardTOF_rmax2"
length="BackwardTOF_thickness"
zstart="BackwardTOF_zmin + BackwardTOF_dz" />
<ring vis="TOFVis"
r="BackwardTOF_rmin2+BackwardTOFMod2_y/2.0"
zstart="0.0*mm"
nmodules="12" dz="2.5 * mm" module="Module2" />
<envelope vis="TOFLayerVis"
rmin="BackwardTOFLayer_rmin"
rmax="BackwardTOFLayer_rmax"
length="TOFEndcapLayer_thickness"
zstart="BackwardTOFLayer2_zmin" />
<ring
r="BackwardTOFMod_rmin + BackwardTOFMod_y/2.0"
zstart="0"
nmodules="TOFEndcapMod_count"
dz="TOFEndcapMod_dz"
module="BackwardModule" />
</layer>
</detector>
</detectors>
<readouts>
<readout name="TOFEndcapHits">
<segmentation type="CartesianGridXY" grid_size_x="0.20*mm" grid_size_y="0.20*mm" />
<id>system:8,barrel:2,layer:4,module:12,sensor:2,x:32:-16,y:-16</id>
<segmentation type="CartesianGridXZ" grid_size_x="50*um" grid_size_z="50*um" />
<id>system:8,layer:4,module:12,sensor:2,x:32:-16,z:-16</id>
</readout>
</readouts>
......