diff --git a/ip6/far_forward_ZDC_Ecal.xml b/ip6/far_forward_ZDC_Ecal.xml index 1b35de18eddbd8cf2908129a730c28317613aecf..e49278909d82297fb5fe025623226fb2ec0db3f6 100644 --- a/ip6/far_forward_ZDC_Ecal.xml +++ b/ip6/far_forward_ZDC_Ecal.xml @@ -1,30 +1,38 @@ <lccdd> <comment> ////////////////////////////////////////////////// - // Far Forward Ion Zero Degree Calorimeter - Ecal - // PWO crystal bars + // Far Forward Ion Zero Degree Calorimeter + // Silicon/PbWO4 for Ecal ////////////////////////////////////////////////// </comment> <detectors> - <detector id="ffi_ZDC_ECAL_ID" name="ffi_ZDC_ECAL" type="ffi_ZDC_ECAL" readout="ffi_ZDC_ECAL_Hits" vis="ffi_ZDC_ECAL_Vis"> + <detector id="ffi_ZDC_ECAL_ID" name="ffi_ZDC_ECAL" type="ffi_ZDC_Sampling" readout="ffi_ZDC_ECAL_Hits" vis="ffi_ZDC_ECAL_Vis"> <position x="ffi_ZDC_ECAL_x_pos" y="ffi_ZDC_ECAL_y_pos" z="ffi_ZDC_ECAL_z_pos"/> <rotation x="ffi_ZDC_ECAL_rotateX_angle" y="ffi_ZDC_ECAL_rotateY_angle" z="ffi_ZDC_ECAL_rotateZ_angle"/> - <dimensions x="ffi_ZDC_ECAL_width" z="ffi_ZDC_ECAL_thickness"/> - <module name="ffi_ZDC_ECAL_module" - vis="ffi_ZDC_ECAL_module_Vis" - material="PbWO4" - thickness="ffi_ZDC_ECAL_module_thickness" - width="ffi_ZDC_ECAL_module_width" - gap="ffi_ZDC_ECAL_module_gap" - ntower="ffi_ZDC_ECAL_module_ntower"/> + <dimensions x="ffi_ZDC_ECAL_width" z="ffi_ZDC_ECAL_length"/> + <layer repeat="ffi_ZDC_SiPbWO4_NRepeat"> + <slice name="Silicon_1_slice" material="Silicon" thickness="ffi_ZDC_Silicon_1_Thickness" vis="AnlRed" sensitive="true"/> + <slice name="Glue_1_slice" material="Epoxy" thickness="ffi_ZDC_Glue_1_Thickness" vis="AnlGold"/> + <slice name="FPC_slice" material="Epoxy" thickness="ffi_ZDC_FPC_Thickness" vis="AnlGold"/> + <slice name="Air_1_slice" material="Air" thickness="ffi_ZDC_Air_1_Thickness" vis="InvisibleNoDaughters"/> + <slice name="PbWO4_slice" material="PbWO4" thickness="ffi_ZDC_PbWO4_Thickness" vis="AnlGold" sensitive="true"/> + <slice name="Air_2_slice" material="Air" thickness="ffi_ZDC_Air_2_Thickness" vis="InvisibleNoDaughters"/> + </layer> </detector> </detectors> <readouts> <readout name="ffi_ZDC_ECAL_Hits"> - <segmentation type="CartesianGridXY" grid_size_x="3.0*cm" grid_size_y="3.0*cm" /> - <id>system:8,module:14,x:32:-16,y:-16</id> + <segmentation type="MultiSegmentation" key="slice"> + <segmentation name="Si_HG_grid" type="CartesianGridXY" key_value="1" grid_size_x="3.0*mm" grid_size_y="3.0*mm"/> + <segmentation name="PbWO4_grid" type="CartesianGridXY" key_value="5" grid_size_x="3.0*cm" grid_size_y="3.0*cm"/> + </segmentation> + <hits_collections> + <hits_collection name="ffiZDCSiHits" key="slice" key_value="1"/> + <hits_collection name="ffiZDCPbWO4Hits" key="slice" key_value="5"/> + </hits_collections> + <id>system:8,layer:12,slice:12,x:32:-16,y:-16</id> </readout> </readouts> </lccdd> diff --git a/ip6/far_forward_ZDC_Hcal.xml b/ip6/far_forward_ZDC_Hcal.xml index 41b673aceb3f70d5bb20f8e778c6de17c47b98b3..c42684e00cde82e678dd7c944823722156fa4966 100644 --- a/ip6/far_forward_ZDC_Hcal.xml +++ b/ip6/far_forward_ZDC_Hcal.xml @@ -1,56 +1,94 @@ <lccdd> <comment> ////////////////////////////////////////////////// - // Far Forward Ion Zero Degree Calorimeter - Hcal - // Si+W sampling + // Far Forward Ion Zero Degree Calorimeter + // Silicon/W for Hcal ////////////////////////////////////////////////// </comment> - <define> - <constant name="ffi_ZDC_HCAL_SiW_NRepeat" value="20"/> - <constant name="ffi_ZDC_HCAL_SiPb_NRepeat" value="12"/> - <constant name="ffi_ZDC_HCAL_PbScint_NRepeat" value="30"/> - <constant name="ffiZDCHcalTungstenThickness" value="3.5 * mm"/> - <constant name="ffiZDCHcalSiliconThickness" value="320.0 * um"/> - <constant name="ffiZDCHcalGlueThickness" value="0.11 * mm"/> - <constant name="ffiZDCHcalFPCThickness" value="0.28 * mm"/> - <constant name="ffiZDCHcalAirThickness" value="1.0 * mm"/> - <constant name="ffiZDCHcalLeadThickness" value="30.0 * mm"/> - <constant name="ffiZDCHcalScintThickness" value="2.0 * mm"/> - </define> - <detectors> - <detector id="ffi_ZDC_HCAL_ID" name="ffi_ZDC_HCAL" type="ffi_ZDC_HCAL" readout="ffi_ZDC_HCAL_Hits" vis="ffi_ZDC_HCAL_Vis"> + <detector id="ffi_ZDC_HCAL_ID" name="ffi_ZDC_HCAL" type="ffi_ZDC_Sampling" readout="ffi_ZDC_HCAL_Hits" vis="ffi_ZDC_HCAL_Vis"> <position x="ffi_ZDC_HCAL_x_pos" y="ffi_ZDC_HCAL_y_pos" z="ffi_ZDC_HCAL_z_pos"/> <rotation x="ffi_ZDC_HCAL_rotateX_angle" y="ffi_ZDC_HCAL_rotateY_angle" z="ffi_ZDC_HCAL_rotateZ_angle"/> <dimensions x="ffi_ZDC_HCAL_width" z="ffi_ZDC_HCAL_length"/> - <layer repeat="ffi_ZDC_HCAL_SiW_NRepeat"> - <slice name="Tungsten_slice" material="TungstenDens24" thickness="ffiZDCHcalTungstenThickness" vis="AnlBlue"/> - <slice name="Air_slice" material="Air" thickness="ffiZDCHcalGlueThickness" vis="AnlGold"/> - <slice name="Silicon_slice" material="Silicon" thickness="ffiZDCHcalSiliconThickness" vis="AnlRed" sensitive="true"/> - <slice name="Air_slice" material="Air" thickness="ffiZDCHcalGlueThickness" vis="AnlGold"/> - <slice name="Air_slice" material="Air" thickness="ffiZDCHcalFPCThickness" vis="AnlGold"/> - <slice name="Air_slice" material="Air" thickness="ffiZDCHcalAirThickness" vis="AnlGold"/> - </layer> - <layer repeat="ffi_ZDC_HCAL_SiPb_NRepeat"> - <slice name="Lead_slice" material="Pb" thickness="ffiZDCHcalLeadThickness" vis="BlueGreenVis"/> - <slice name="Air_slice" material="Air" thickness="ffiZDCHcalGlueThickness" vis="AnlGold"/> - <slice name="Silicon_slice" material="Silicon" thickness="ffiZDCHcalSiliconThickness" vis="AnlRed" sensitive="true"/> - <slice name="Air_slice" material="Air" thickness="ffiZDCHcalGlueThickness" vis="AnlGold"/> - <slice name="Air_slice" material="Air" thickness="ffiZDCHcalFPCThickness" vis="AnlGold"/> - <slice name="Air_slice" material="Air" thickness="ffiZDCHcalAirThickness" vis="AnlGold"/> - </layer> - <layer repeat="ffi_ZDC_HCAL_PbScint_NRepeat"> - <slice name="Lead_slice" material="Pb" thickness="ffiZDCHcalLeadThickness" vis="BlueGreenVis"/> - <slice name="Scint_slice" material="PlasticScint" thickness="ffiZDCHcalScintThickness" vis="AnlOrange" sensitive="true"/> - <slice name="Air_slice" material="Air" thickness="ffiZDCHcalAirThickness" vis="AnlGold"/> + <layer repeat="ffi_ZDC_SiW_LG_Layer_NRepeat"> + <slice name="Tungsten_slice" material="TungstenDens24" thickness="ffi_ZDC_Tungsten_Thickness" vis="AnlBlue"/> + <slice name="Glue_1_slice" material="Epoxy" thickness="ffi_ZDC_Glue_1_Thickness" vis="AnlGold"/> + <slice name="Silicon_2_slice" material="Silicon" thickness="ffi_ZDC_Silicon_2_Thickness" vis="AnlRed" sensitive="true"/> + <slice name="Glue_2_slice" material="Epoxy" thickness="ffi_ZDC_Glue_2_Thickness" vis="AnlGold"/> + <slice name="FPC_slice" material="Epoxy" thickness="ffi_ZDC_FPC_Thickness" vis="AnlGold"/> + <slice name="Air_3_slice" material="Air" thickness="ffi_ZDC_Air_3_Thickness" vis="InvisibleNoDaughters"/> + </layer> + <layer repeat="ffi_ZDC_SiW_HG_Layer_NRepeat"> + <slice name="Tungsten_slice" material="TungstenDens24" thickness="ffi_ZDC_Tungsten_Thickness" vis="AnlBlue"/> + <slice name="Glue_1_slice" material="Epoxy" thickness="ffi_ZDC_Glue_1_Thickness" vis="AnlGold"/> + <slice name="Silicon_1_slice" material="Silicon" thickness="ffi_ZDC_Silicon_1_Thickness" vis="AnlRed" sensitive="true"/> + <slice name="Glue_1_slice" material="Epoxy" thickness="ffi_ZDC_Glue_1_Thickness" vis="AnlGold"/> + <slice name="FPC_slice" material="Epoxy" thickness="ffi_ZDC_FPC_Thickness" vis="AnlGold"/> + <slice name="Air_1_slice" material="Air" thickness="ffi_ZDC_Air_1_Thickness" vis="InvisibleNoDaughters"/> + </layer> + <layer repeat="ffi_ZDC_SiW_LG_Layer_NRepeat"> + <slice name="Tungsten_slice" material="TungstenDens24" thickness="ffi_ZDC_Tungsten_Thickness" vis="AnlBlue"/> + <slice name="Glue_1_slice" material="Epoxy" thickness="ffi_ZDC_Glue_1_Thickness" vis="AnlGold"/> + <slice name="Silicon_2_slice" material="Silicon" thickness="ffi_ZDC_Silicon_2_Thickness" vis="AnlRed" sensitive="true"/> + <slice name="Glue_2_slice" material="Epoxy" thickness="ffi_ZDC_Glue_2_Thickness" vis="AnlGold"/> + <slice name="FPC_slice" material="Epoxy" thickness="ffi_ZDC_FPC_Thickness" vis="AnlGold"/> + <slice name="Air_3_slice" material="Air" thickness="ffi_ZDC_Air_3_Thickness" vis="InvisibleNoDaughters"/> + </layer> + <layer repeat="ffi_ZDC_SiW_HG_Layer_NRepeat"> + <slice name="Tungsten_slice" material="TungstenDens24" thickness="ffi_ZDC_Tungsten_Thickness" vis="AnlBlue"/> + <slice name="Glue_1_slice" material="Epoxy" thickness="ffi_ZDC_Glue_1_Thickness" vis="AnlGold"/> + <slice name="Silicon_1_slice" material="Silicon" thickness="ffi_ZDC_Silicon_1_Thickness" vis="AnlRed" sensitive="true"/> + <slice name="Glue_1_slice" material="Epoxy" thickness="ffi_ZDC_Glue_1_Thickness" vis="AnlGold"/> + <slice name="FPC_slice" material="Epoxy" thickness="ffi_ZDC_FPC_Thickness" vis="AnlGold"/> + <slice name="Air_1_slice" material="Air" thickness="ffi_ZDC_Air_1_Thickness" vis="InvisibleNoDaughters"/> + </layer> + <layer repeat="ffi_ZDC_Gap_NRepeat"> + <slice name="Gap_slice" material="Air" thickness="ffi_ZDC_Gap_Thickness" vis="InvisibleNoDaughters"/> + </layer> + <layer repeat="ffi_ZDC_SiPb_NRepeat"> + <slice name="Lead_slice" material="Pb" thickness="ffi_ZDC_Lead_Thickness" vis="BlueGreenVis"/> + <slice name="Glue_1_slice" material="Epoxy" thickness="ffi_ZDC_Glue_1_Thickness" vis="AnlGold"/> + <slice name="Silicon_2_slice" material="Silicon" thickness="ffi_ZDC_Silicon_2_Thickness" vis="AnlRed" sensitive="true"/> + <slice name="Glue_2_slice" material="Epoxy" thickness="ffi_ZDC_Glue_2_Thickness" vis="AnlGold"/> + <slice name="FPC_slice" material="Epoxy" thickness="ffi_ZDC_FPC_Thickness" vis="AnlGold"/> + <slice name="Air_3_slice" material="Air" thickness="ffi_ZDC_Air_3_Thickness" vis="InvisibleNoDaughters"/> + </layer> + <layer repeat="ffi_ZDC_Gap_NRepeat"> + <slice name="Gap_slice" material="Air" thickness="ffi_ZDC_Gap_Thickness" vis="InvisibleNoDaughters"/> + </layer> + <layer repeat="ffi_ZDC_PbScint_NRepeat"> + <slice name="Lead_slice" material="Pb" thickness="ffi_ZDC_Lead_Thickness" vis="BlueGreenVis"/> + <slice name="Scint_slice" material="PlasticScint" thickness="ffi_ZDC_Scint_Thickness" vis="AnlOrange" sensitive="true"/> + <slice name="Air_4_slice" material="Air" thickness="ffi_ZDC_Air_4_Thickness" vis="InvisibleNoDaughters"/> + </layer> + <layer repeat="ffi_ZDC_Gap_NRepeat"> + <slice name="Gap_slice" material="Air" thickness="ffi_ZDC_Gap_Thickness" vis="InvisibleNoDaughters"/> + </layer> + <layer repeat="ffi_ZDC_PbScint_NRepeat"> + <slice name="Lead_slice" material="Pb" thickness="ffi_ZDC_Lead_Thickness" vis="BlueGreenVis"/> + <slice name="Scint_slice" material="PlasticScint" thickness="ffi_ZDC_Scint_Thickness" vis="AnlOrange" sensitive="true"/> + <slice name="Air_4_slice" material="Air" thickness="ffi_ZDC_Air_4_Thickness" vis="InvisibleNoDaughters"/> </layer> </detector> </detectors> <readouts> <readout name="ffi_ZDC_HCAL_Hits"> - <segmentation type="CartesianGridXY" grid_size_x="1.0*cm" grid_size_y="1.0*cm" /> + <segmentation type="MultiSegmentation" key="layer"> + <segmentation name="Si_LG_grid" type="CartesianGridXY" key_min="1" key_max="20" grid_size_x="1.0*cm" grid_size_y="1.0*cm"/> + <segmentation name="Si_HG_grid" type="CartesianGridXY" key_value="21" grid_size_x="3.0*mm" grid_size_y="3.0*mm"/> + <segmentation name="Si_LG_grid" type="CartesianGridXY" key_min="22" key_max="41" grid_size_x="1.0*cm" grid_size_y="1.0*cm"/> + <segmentation name="Si_HG_grid" type="CartesianGridXY" key_value="42" grid_size_x="3.0*mm" grid_size_y="3.0*mm"/> + <segmentation name="Si_LG_grid" type="CartesianGridXY" key_min="44" key_max="55" grid_size_x="1.0*cm" grid_size_y="1.0*cm"/> + <segmentation name="Scint_grid" type="CartesianGridXY" key_min="57" key_max="71" grid_size_x="10.0*cm" grid_size_y="10.0*cm"/> + <segmentation name="Scint_grid" type="CartesianGridXY" key_min="73" key_max="87" grid_size_x="10.0*cm" grid_size_y="10.0*cm"/> + </segmentation> + <hits_collections> + <hits_collection name="ffiZDCSiWHits" key="layer" key_min="1" key_max="42"/> + <hits_collection name="ffiZDCSiPbHits" key="layer" key_min="44" key_max="55"/> + <hits_collection name="ffiZDCScintHits" key="layer" key_min="57" key_max="87"/> + </hits_collections> <id>system:8,layer:12,slice:12,x:32:-16,y:-16</id> </readout> </readouts> diff --git a/ip6/far_forward_detectors.xml b/ip6/far_forward_detectors.xml index 0e557ef17fc5fb437b9d2db73b0f93e830f9c6d4..ddceac38915b1a80df88c6a2b9ae1e7293fd8acc 100644 --- a/ip6/far_forward_detectors.xml +++ b/ip6/far_forward_detectors.xml @@ -4,32 +4,72 @@ <define> <comment> - ---------------------- - Zero Degree Parameters - ---------------------- + ------------------------------------------- + Zero Degree Calorimeter General Parameters + ------------------------------------------- </comment> - <constant name="ffi_ZDC_ECAL_z_pos" value="3720.0 * cm"/> - <constant name="ffi_ZDC_ECAL_x_pos" value="ffi_ZDC_ECAL_z_pos * ionCrossingAngle"/> - <constant name="ffi_ZDC_ECAL_y_pos" value="0.0 * cm"/> - <constant name="ffi_ZDC_ECAL_rotateX_angle" value="0.0 * rad"/> - <constant name="ffi_ZDC_ECAL_rotateY_angle" value="-0.0125 * rad"/> - <constant name="ffi_ZDC_ECAL_rotateZ_angle" value="0.0 * rad"/> - <constant name="ffi_ZDC_ECAL_module_width" value="3.0 * cm"/> - <constant name="ffi_ZDC_ECAL_module_thickness" value="20.0 * cm"/> - <constant name="ffi_ZDC_ECAL_module_gap" value="0.000001 * mm"/> - <constant name="ffi_ZDC_ECAL_module_ntower" value="20"/> - <constant name="ffi_ZDC_ECAL_width" value="(ffi_ZDC_ECAL_module_width + ffi_ZDC_ECAL_module_gap) * ffi_ZDC_ECAL_module_ntower + 2.0 * cm"/> - <constant name="ffi_ZDC_ECAL_thickness" value="ffi_ZDC_ECAL_module_thickness + 1.0 * cm"/> - - <constant name="ffi_ZDC_HCAL_x_pos" value="ffi_ZDC_ECAL_x_pos"/> - <constant name="ffi_ZDC_HCAL_y_pos" value="ffi_ZDC_ECAL_y_pos"/> - <constant name="ffi_ZDC_HCAL_z_pos" value="ffi_ZDC_ECAL_z_pos + ffi_ZDC_ECAL_thickness + 1.0 * cm"/> - <constant name="ffi_ZDC_HCAL_rotateX_angle" value="ffi_ZDC_ECAL_rotateX_angle"/> - <constant name="ffi_ZDC_HCAL_rotateY_angle" value="ffi_ZDC_ECAL_rotateY_angle"/> - <constant name="ffi_ZDC_HCAL_rotateZ_angle" value="ffi_ZDC_ECAL_rotateZ_angle"/> - <constant name="ffi_ZDC_HCAL_width" value="ffi_ZDC_ECAL_module_width * ffi_ZDC_ECAL_module_ntower"/> - <constant name="ffi_ZDC_HCAL_length" value="200.0 * cm"/> + <constant name="ffi_ZDC_z_pos" value="3710.0 * cm"/> + <constant name="ffi_ZDC_x_pos" value="ffi_ZDC_z_pos * ionCrossingAngle"/> + <constant name="ffi_ZDC_y_pos" value="0.0 * cm"/> + <constant name="ffi_ZDC_rotateX_angle" value="0.0 * rad"/> + <constant name="ffi_ZDC_rotateY_angle" value="-0.0125 * rad"/> + <constant name="ffi_ZDC_rotateZ_angle" value="0.0 * rad"/> + <constant name="ffi_ZDC_width" value="60.0 * cm"/> + <constant name="ffi_ZDC_length" value="200.0 * cm"/> + <comment> + ------------------------------- + Zero Degree Calorimeter - ECAL + ------------------------------- + </comment> + <constant name="ffi_ZDC_ECAL_z_pos" value="ffi_ZDC_z_pos"/> + <constant name="ffi_ZDC_ECAL_x_pos" value="ffi_ZDC_ECAL_z_pos * ionCrossingAngle"/> + <constant name="ffi_ZDC_ECAL_y_pos" value="ffi_ZDC_y_pos"/> + <constant name="ffi_ZDC_ECAL_rotateX_angle" value="ffi_ZDC_rotateX_angle"/> + <constant name="ffi_ZDC_ECAL_rotateY_angle" value="ffi_ZDC_rotateY_angle"/> + <constant name="ffi_ZDC_ECAL_rotateZ_angle" value="ffi_ZDC_rotateZ_angle"/> + <constant name="ffi_ZDC_ECAL_width" value="ffi_ZDC_width"/> + + <constant name="ffi_ZDC_SiPbWO4_NRepeat" value="2"/> + + <constant name="ffi_ZDC_Silicon_1_Thickness" value="300.0 * um"/> + <constant name="ffi_ZDC_PbWO4_Thickness" value="100.0 * mm"/> + <constant name="ffi_ZDC_Glue_1_Thickness" value="0.11 * mm"/> + <constant name="ffi_ZDC_FPC_Thickness" value="0.28 * mm"/> + <constant name="ffi_ZDC_Air_1_Thickness" value="1.2 * mm"/> + <constant name="ffi_ZDC_Air_2_Thickness" value="3.0 * cm"/> + + <constant name="ffi_ZDC_ECAL_layer_thickness" value="ffi_ZDC_Silicon_1_Thickness + ffi_ZDC_Glue_1_Thickness + ffi_ZDC_FPC_Thickness + ffi_ZDC_Air_1_Thickness + ffi_ZDC_PbWO4_Thickness + ffi_ZDC_Air_2_Thickness"/> + <constant name="ffi_ZDC_ECAL_length" value="ffi_ZDC_SiPbWO4_NRepeat * ffi_ZDC_ECAL_layer_thickness"/> + + <comment> + ------------------------------- + Zero Degree Calorimeter - HCAL + ------------------------------- + </comment> + <constant name="ffi_ZDC_HCAL_x_pos" value="ffi_ZDC_ECAL_x_pos"/> + <constant name="ffi_ZDC_HCAL_y_pos" value="ffi_ZDC_ECAL_y_pos"/> + <constant name="ffi_ZDC_HCAL_z_pos" value="ffi_ZDC_ECAL_z_pos + ffi_ZDC_ECAL_length"/> + <constant name="ffi_ZDC_HCAL_rotateX_angle" value="ffi_ZDC_rotateX_angle"/> + <constant name="ffi_ZDC_HCAL_rotateY_angle" value="ffi_ZDC_rotateY_angle"/> + <constant name="ffi_ZDC_HCAL_rotateZ_angle" value="ffi_ZDC_rotateZ_angle"/> + <constant name="ffi_ZDC_HCAL_width" value="ffi_ZDC_width"/> + <constant name="ffi_ZDC_HCAL_length" value="ffi_ZDC_length"/> + + <constant name="ffi_ZDC_SiW_LG_Layer_NRepeat" value="20"/> + <constant name="ffi_ZDC_SiW_HG_Layer_NRepeat" value="1"/> + <constant name="ffi_ZDC_SiPb_NRepeat" value="12"/> + <constant name="ffi_ZDC_PbScint_NRepeat" value="15"/> + <constant name="ffi_ZDC_Gap_NRepeat" value="1"/> + + <constant name="ffi_ZDC_Silicon_2_Thickness" value="320.0 * um"/> + <constant name="ffi_ZDC_Tungsten_Thickness" value="3.5 * mm"/> + <constant name="ffi_ZDC_Glue_2_Thickness" value="0.13 * mm"/> + <constant name="ffi_ZDC_Air_3_Thickness" value="1.0 * mm"/> + <constant name="ffi_ZDC_Air_4_Thickness" value="0.0013 * mm"/> + <constant name="ffi_ZDC_Lead_Thickness" value="30.0 * mm"/> + <constant name="ffi_ZDC_Scint_Thickness" value="2.0 * mm"/> + <constant name="ffi_ZDC_Gap_Thickness" value="2.0 * cm"/> </define> <limits> @@ -41,9 +81,8 @@ <display> </display> - - <include ref="far_forward_ZDC_Ecal.xml" /> - <include ref="far_forward_ZDC_Hcal.xml" /> + <include ref="far_forward_ZDC_Ecal.xml"/> + <include ref="far_forward_ZDC_Hcal.xml"/> <detectors> </detectors> diff --git a/src/ZeroDegreeCalorimeterHcal_geo.cpp b/src/ZeroDegreeCalorimeterSampling_geo.cpp similarity index 97% rename from src/ZeroDegreeCalorimeterHcal_geo.cpp rename to src/ZeroDegreeCalorimeterSampling_geo.cpp index 7df26f3e93025cc032cd3a0359cbeab00a6d561b..e45301682b06971a051f427d29e8bade39431a8c 100644 --- a/src/ZeroDegreeCalorimeterHcal_geo.cpp +++ b/src/ZeroDegreeCalorimeterSampling_geo.cpp @@ -28,9 +28,6 @@ static Ref_t createDetector(Detector& desc, xml_h e, SensitiveDetector sens) Material Vacuum = desc.material("Vacuum"); - int layer_num = 1; - int slice_num = 1; - double totWidth = Layering(x_det).totalThickness(); Box envelope (Width/2.0, Width/2.0, totWidth/2.0); @@ -39,7 +36,8 @@ static Ref_t createDetector(Detector& desc, xml_h e, SensitiveDetector sens) PlacedVolume pv; xml_comp_t x_layer = x_det.child(_U(layer)); - + + int layer_num = 1; // Read layers for(xml_coll_t c(x_det,_U(layer)); c; ++c) { xml_comp_t x_layer = c; @@ -55,6 +53,7 @@ static Ref_t createDetector(Detector& desc, xml_h e, SensitiveDetector sens) string layer_name = detName + _toString(layer_num,"_layer%d"); Volume layer_vol(layer_name,Box(Width/2.0, Width/2.0,layerWidth/2.0), Vacuum); + int slice_num = 1; // Loop over slices for(xml_coll_t l(x_layer,_U(slice)); l; ++l) { xml_comp_t x_slice = l; @@ -92,4 +91,4 @@ static Ref_t createDetector(Detector& desc, xml_h e, SensitiveDetector sens) return det; } -DECLARE_DETELEMENT(ffi_ZDC_HCAL, createDetector) +DECLARE_DETELEMENT(ffi_ZDC_Sampling, createDetector)