Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Common MDI #381

Open
wants to merge 31 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
31 commits
Select commit Hold shift + click to select a range
3a73b48
Merge pull request #7 from key4hep/main
aciarma Aug 26, 2024
b46055a
taken lumical from CLD_o2_v06
aciarma Aug 26, 2024
a05f5e7
Merge branch 'key4hep:main' into commonMDI
aciarma Aug 28, 2024
6a4bf57
dimensions compact + standalone compact
aciarma Aug 28, 2024
e704601
Merge branch 'commonMDI' of github.com:aciarma/k4geo into commonMDI
aciarma Aug 28, 2024
fd3c79a
Merge branch 'key4hep:main' into commonMDI
aciarma Aug 29, 2024
f424af0
updated for LumiCal_o3_v05
aciarma Aug 29, 2024
e15659e
added field maps (to fix) and quadrupoles
aciarma Aug 29, 2024
b33ed0d
change name FFQuads
aciarma Aug 29, 2024
4f52f42
fix FFQ file name
aciarma Aug 29, 2024
5854a26
addded FFQ magnetic field for different optics
aciarma Aug 30, 2024
b1660ee
Merge branch 'key4hep:main' into commonMDI
aciarma Sep 2, 2024
b1cad71
field map correctly read. fix a variable in FFQ
aciarma Sep 2, 2024
51825b6
add 2T detector solenoid field
aciarma Sep 2, 2024
b121ae3
fix ideal antisolenoid field
aciarma Sep 2, 2024
a5dfeeb
apply also to MDI_o1_v01
aciarma Sep 2, 2024
e8957b4
fix identical files
aciarma Sep 2, 2024
f3ff764
fix v01
aciarma Sep 2, 2024
a9776a3
update README
aciarma Sep 2, 2024
2438088
update README
aciarma Sep 2, 2024
0858110
add MDI elements to ALLEGRO_o1_v03
aciarma Sep 2, 2024
775610d
update on ALLEGRO_o1_v03
aciarma Sep 2, 2024
9f7db07
add MDI elements to IDEA_o1_v03
aciarma Sep 2, 2024
5b3554f
fixed paths in IDEA test
aciarma Sep 2, 2024
41863a4
fix IDEA_withDRC test
aciarma Sep 3, 2024
29e5b4b
fix IDEA_withDRC test again
aciarma Sep 3, 2024
7d59c06
Merge branch 'key4hep:main' into commonMDI
aciarma Sep 4, 2024
b6649fc
FFQuads_v01 made not sensitive, FFQuads_v01_sens to be used when needed
aciarma Sep 5, 2024
5d0f568
Merge branch 'commonMDI' of github.com:aciarma/k4geo into commonMDI
aciarma Sep 5, 2024
fb48223
fix non sensitive quads
aciarma Sep 5, 2024
4967b9d
fix non sensitive quads
aciarma Sep 5, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
74 changes: 14 additions & 60 deletions FCCee/ALLEGRO/compact/ALLEGRO_o1_v03/ALLEGRO_o1_v03.xml
Original file line number Diff line number Diff line change
Expand Up @@ -26,10 +26,12 @@
<constant name="world_x" value="world_size"/>
<constant name="world_y" value="world_size"/>
<constant name="world_z" value="world_size"/>
<constant name="FFQ_ON" value="1"/>
</define>

<include ref="./DectDimensions.xml" />

<include ref="../../../MDI/compact/MDI_o1_v00/MDI_Dimensions_Materials_o1_v00.xml" />

<!-- shape based model of the beam pipe -->
<include ref="../../../MDI/compact/MDI_o1_v00/Beampipe_o4_v05.xml" />
<include ref="../../../MDI/compact/MDI_o1_v00/BeamInstrumentation_o1_v01.xml" />
Expand All @@ -40,7 +42,16 @@
<!-- <include ref="../../../MDI/compact/MDI_o1_v01/Beampipe_CADimport_o1_v02.xml" /> -->
<!-- <include ref="../../../MDI/compact/MDI_o1_v01/BeamInstrumentation_o1_v01.xml"/> -->

<include ref="LumiCal.xml"/>
<include ref="../../../MDI/compact/MDI_o1_v00/LumiCal_o3_v02_05.xml"/>
<include ref="../../../MDI/compact/MDI_o1_v00/HOMAbsorber.xml"/>
<!-- must use one FFQuads_params_xxx.xml BEFORE FFQuads_v01.xml -->
<!--<include ref="../../../MDI/compact/MDI_o1_v00/FFQuads_params_v530_Z.xml"/>-->
<include ref="../../../MDI/compact/MDI_o1_v00/FFQuads_params_v572_Z.xml"/>
<!-- <include ref="../../../MDI/compact/MDI_o1_v00/FFQuads_params_v572_T.xml"/>-->
<include ref="../../../MDI/compact/MDI_o1_v00/FFQuads_v01.xml"/>
<include ref="../../../MDI/compact/MDI_o1_v00/fields_antisol_map.xml"/>
<!--<include ref="../../../MDI/compact/MDI_o1_v00/fields_antisol_ideal.xml"/>-->

<include ref="Vertex_IDEA_o1_v01.xml"/> <!-- symbolic link to ../../../IDEA/compact/IDEA_o1_v03/Vertex_IDEA_o1_v01.xml"/>-->
<include ref="DriftChamber_o1_v02.xml"/> <!-- symbolic link to ../../../IDEA/compact/IDEA_o1_v03/DriftChamber_o1_v02.xml -->
<include ref="ECalBarrel_thetamodulemerged.xml"/> <!-- if you remove the ECalBarrel, you also have to remove or update the "GlobalSolenoid" field (it depends on ECAL dimensions) -->
Expand All @@ -50,7 +61,7 @@
<include ref="MuonTagger.xml"/>

<fields>
<!-- FIXME this is a place holder to get a reasonable magnetic field, it should be a real MAP obtained from FEM tools taking into account HCAL return yoke -->
<!-- Only the Detector 2T solenoid field. The fields from antisolenoids and quadrupoles are located in the MDI folder -->
<!-- The z extent should also accomodate space for the feedthroughs, need input from R&D and decisions on cold/warm electronics -->
<field name="GlobalSolenoid" type="solenoid"
inner_field="SolenoidField"
Expand All @@ -59,63 +70,6 @@
outer_radius="BarCryoECal_rmax-CryoBarrelBackWarm-CryoBarrelBackCold">
</field>


<!-- MDI magnetic fields -->
<!-- Important for background studies -->

<field name="CompensatingSolenoidZplus" type="solenoid"
inner_field="-SolenoidField -SolenoidField * QD0_min_z / ( QD0_min_z - CompSol_min_z)"
outer_field="0*tesla"
zmax="QD0_min_z"
zmin="CompSol_min_z"
outer_radius="20*cm">
</field>

<field name="CompensatingSolenoidZminus" type="solenoid"
inner_field="-SolenoidField -SolenoidField * QD0_min_z / ( QD0_min_z - CompSol_min_z)"
outer_field="0*tesla"
zmin="-QD0_min_z"
zmax="-CompSol_min_z"
outer_radius="20*cm">
</field>

<!-- FFQ fields at Z pole, V23) -->
<!--
<field name="QC1L1_field_ED" type="MultipoleMagnet" Z="0.0*tesla">
<position y="0*cm" x="(QC1L1_len/2. + QC1L1_start)*sin(CrossingAngle/2.)" z="(QC1L1_len/2. + QC1L1_start)*cos(CrossingAngle/2.)"/>
<rotation x="0" y="CrossingAngle/2." z="0.0"/>
<coefficient coefficient="0*tesla"/>
<coefficient coefficient="(-1)*(45.6)*(-0.273)/0.3*tesla/m"/>
<shape type="Tube" rmin="0.*cm" rmax="QC1_rmin" dz="QC1L1_len/2." />
</field>

<field name="QC1L1_field_EU" type="MultipoleMagnet" Z="0.0*tesla">
<position y="0*cm" x="-(QC1L1_len/2. + QC1L1_start)*sin(CrossingAngle/2.)" z="-(QC1L1_len/2. + QC1L1_start)*cos(CrossingAngle/2.)"/>
<rotation x="0" y="CrossingAngle/2." z="0.0"/>
<coefficient coefficient="0*tesla"/>
<coefficient coefficient="(-1)*(45.6)*(-0.273)/0.3*tesla/m"/>
<shape type="Tube" rmin="0.*cm" rmax="QC1_rmin" dz="QC1L1_len/2." />
</field>

<field name="QC1L1_field_PD" type="MultipoleMagnet" Z="0.0*tesla">
<position y="0*cm" x="(QC1L1_len/2. + QC1L1_start)*sin(CrossingAngle/2.)" z="-(QC1L1_len/2. + QC1L1_start)*cos(CrossingAngle/2.)"/>
<rotation x="0" y="-CrossingAngle/2." z="0.0"/>
<coefficient coefficient="0*tesla"/>
<coefficient coefficient="(+1)*(45.6)*(-0.273)/0.3*tesla/m"/>
<shape type="Tube" rmin="0.*cm" rmax="QC1_rmin" dz="QC1L1_len/2." />
</field>

<field name="QC1L1_field_PU" type="MultipoleMagnet" Z="0.0*tesla">
<position y="0*cm" x="-(QC1L1_len/2. + QC1L1_start)*sin(CrossingAngle/2.)" z="(QC1L1_len/2. + QC1L1_start)*cos(CrossingAngle/2.)"/>
<rotation x="0" y="-CrossingAngle/2.+pi" z="0.0"/>
<coefficient coefficient="0*tesla"/>
<coefficient coefficient="(-1)*(45.6)*(-0.273)/0.3*tesla/m"/>
<shape type="Tube" rmin="0.*cm" rmax="QC1_rmin" dz="QC1L1_len/2." />
</field>
-->

<!--End of MDI magnetic fields -->

</fields>

</lccdd>
86 changes: 2 additions & 84 deletions FCCee/ALLEGRO/compact/ALLEGRO_o1_v03/DectDimensions.xml
Original file line number Diff line number Diff line change
Expand Up @@ -47,31 +47,9 @@
<constant name="DetID_LumiCalBackShield" value=" 18"/>
<constant name="DetID_HOMAbsorber" value=" 19"/>
<constant name="DetID_LumiCalNoseShield" value=" 22"/>
<constant name="DetID_FFQs" value="23"/>


<!-- BPW: Beam Pipe Width -->
<constant name="BPWWall" value="0.35*mm" />
<constant name="BPWCool" value="1.0*mm" />
<constant name="BeamPipeWidth" value="2.0*BPWWall + BPWCool"/>

<constant name="BeamPipeWidthFirstCone" value="2.0*mm" />
<constant name="CentralBeamPipe_zmax" value="9.0*cm"/> <!-- Shorter central beam pipe -->
<constant name="SeparatedBeamPipe_z" value="1190.0*mm"/> <!-- was 1159.97*mm in FCCDetectors/> -->
<constant name="CentralBeamPipe_rmax" value="10.0*mm"/>
<constant name="ConeBeamPipe_Rmax" value="28.9*mm" />
<constant name="BeamPipeGoldWidth" value="0.005*mm" />
<constant name="BeamPipeGoldTolerance" value="0.001*mm" /> <!-- dummy tolerance, some small non zero value -->
<constant name="BeamPipeConeHalfAngle" value="(ConeBeamPipe_Rmax + BeamPipeWidthFirstCone - CentralBeamPipe_rmax ) / (SeparatedBeamPipe_z - CentralBeamPipe_zmax)" />

<constant name="SeparatedBeamPipe_rmax" value="15*mm"/>
<constant name="BeamPipeTantalShieldWidth" value="15*mm"/>
<constant name="SideFillerShieldWidth" value="7*mm"/>
<constant name="TopFillerShieldWidth" value="8*mm"/>
<constant name="BeamPipe_end" value="12500*mm"/>

<!-- Mike Sullivan's Synch Rad mask -->
<constant name="MiddleOfSRMask_z" value="2.1*m" />
<constant name="SynchRadMaskSize" value="5*mm" /> <!-- mask tip is at 10 mm from the beamline -->
<constant name="mask_epsilon" value="0.001*mm" />

<constant name="size_x" value="60*mm"/>
<constant name="size_y" value="12*mm"/>
Expand Down Expand Up @@ -139,67 +117,7 @@
<constant name="MuonTaggerEndcap_min_z" value="5550*mm"/>
<constant name="MuonTaggerEndcap_max_z" value="6000*mm"/>

<!-- MDI -->
<constant name="CompSol_min_z" value="1230*mm"/>

<constant name="LumiCal_max_z" value="1186.5*mm" />
<constant name="LumiCal_min_z" value="1074*mm"/>

<constant name="LumiCal_dz" value="(LumiCal_max_z-LumiCal_min_z)/2.0"/>

<constant name="LumiCal_inner_radius" value="55.0*mm"/>
<constant name="LumiCal_outer_radius" value="112.0*mm- env_safety"/>

<constant name="LumiCal_Instr_thickness" value="20*mm"/>
<constant name="LumiCal_Instr_inner_radius" value="LumiCal_outer_radius"/>
<constant name="LumiCal_Instr_outer_radius" value="LumiCal_outer_radius+LumiCal_Instr_thickness - env_safety"/>

<constant name="LumiCal_Cool_thickness" value="9.75*mm"/>
<constant name="LumiCal_Cool_inner_radius" value="LumiCal_Instr_outer_radius"/>
<constant name="LumiCal_Cool_outer_radius" value="LumiCal_Instr_outer_radius+LumiCal_Cool_thickness"/>

<constant name="Lcal_services_rmax" value="LumiCal_outer_radius+30*mm"/>
<constant name="Lcal_offset_phi" value=" 0."/>
<!--preliminary LumiCal shielding-->
<!--back shielding-->
<constant name="LumiCal_Shield_inner_radius" value="LumiCal_inner_radius"/>
<constant name="LumiCal_Shield_outer_radius" value="LumiCal_outer_radius+LumiCal_Instr_thickness+LumiCal_Cool_thickness"/>
<constant name="LumiCal_shield_dz" value="1.75*mm"/>
<!--nose-->
<constant name="LumiCal_NoseShield_inner_radius" value="LumiCal_inner_radius-5*mm"/>
<constant name="LumiCal_NoseShield_outer_radius" value="LumiCal_inner_radius+10*mm"/>
<constant name="LumiCal_nose_shield_dz" value="12*mm"/>

<constant name="BeamCal_inner_radius" value="32*mm"/>
<constant name="BeamCal_outer_radius" value="150*mm"/>
<constant name="BeamCal_min_z" value="3181*mm"/>
<constant name="BeamCal_max_z" value="3441*mm"/>
<constant name="BeamCal_dz" value="(BeamCal_max_z-BeamCal_min_z)/2.0"/>

<constant name="Kicker_inner_radius" value="4*mm"/>
<constant name="Kicker_outer_radius" value="25*mm"/>
<constant name="Kicker_min_z" value="3480*mm"/>
<constant name="Kicker_max_z" value="3780*mm"/>

<constant name="BPM_inner_radius" value="36*mm"/>
<constant name="BPM_outer_radius" value="55*mm"/>
<constant name="BPM_min_z" value="3790*mm"/>
<constant name="BPM_max_z" value="3880*mm"/>

<constant name="QD0_min_z" value="2000*mm"/>
<constant name="QD0_max_z" value="5200*mm"/>
<constant name="QD0Coil_outer_radius" value="30*mm"/>
<constant name="CollimatorInFrontOfQD0_dz" value="20*cm"/>
<constant name="CollimatorInFrontOfQD0_radius" value="10*mm"/>
<constant name="CollimatorInFrontOfQD0_dr" value="16*mm"/>

<constant name="QC1_rmin" value="42/2*mm"/>
<constant name="QC1_rmax" value="64/2*mm"/>
<constant name="QC1L1_len" value="700*mm"/>
<constant name="QC1L1_start" value="2200*mm"/>
<constant name="screenstart" value="-10*mm"/>
<!-- end MDI -->

<constant name="tracker_region_zmax" value="DCH_half_length_total"/>
<constant name="tracker_region_rmax" value="DCH_outer_cyl_R_total"/>

Expand Down
46 changes: 0 additions & 46 deletions FCCee/ALLEGRO/compact/ALLEGRO_o1_v03/materials.xml
Original file line number Diff line number Diff line change
Expand Up @@ -459,51 +459,5 @@
<fraction n="0.117748421296248" ref="C"/>
<fraction n="0.156851578703752" ref="O"/>
</material>

<material name="TungstenDens24">
<D value="17.8" unit="g/cm3"/>
<fraction n="0.93" ref="W"/>
<fraction n="0.061" ref="Ni"/>
<fraction n="0.009" ref="Fe"/>
</material>

<material name="SolenoidMixture">
<D value="4.38" unit="g/cm3"/>
<fraction n="0.666" ref="Al"/>
<fraction n="0.166" ref="Cu"/>
<fraction n="0.084" ref="Ti"/>
<fraction n="0.084" ref="Nb"/>
</material>


<material name="Water">
<D value="1" unit="g/cm3" />
<composite n="2" ref="H" />
<composite n="1" ref="O" />
</material>

<material name="DefaultMaterial">
<D value="7.85" unit="g/cm3"/>
<fraction n="0.998" ref="Fe"/>
<fraction n=".002" ref="C"/>
</material>

<material name="IronDens785">
<D value="7.85" unit="g/cm3"/>
<fraction n="1.0" ref="Fe"/>
</material>

<material name="AlBeMet162">
<D value="2.1" unit="g/cm3"/>
<fraction n="0.38" ref="Al"/>
<fraction n="0.62" ref="Be"/>
</material>

<material name="LiquidNDecane">
<D value="0.73" unit="g/cm3"/>
<composite n="10" ref="C" />
<composite n="22" ref="H" />
</material>


</materials>
80 changes: 2 additions & 78 deletions FCCee/IDEA/compact/IDEA_o1_v03/DectDimensions_IDEA_o1_v03.xml
Original file line number Diff line number Diff line change
Expand Up @@ -57,31 +57,8 @@
<constant name="DetID_FiberDRCalo" value=" 25"/>

<constant name="DetID_muonSystem" value=" 26"/>

<!-- BPW: Beam Pipe Width -->
<constant name="BPWWall" value="0.35*mm" />
<constant name="BPWCool" value="1.0*mm" />
<constant name="BeamPipeWidth" value="2.0*BPWWall + BPWCool"/>

<constant name="BeamPipeWidthFirstCone" value="2.0*mm" />
<constant name="CentralBeamPipe_zmax" value="9.0*cm"/> <!-- Shorter central beam pipe -->
<constant name="SeparatedBeamPipe_z" value="1190.0*mm"/> <!-- was 1159.97*mm in FCCDetectors/> -->
<constant name="CentralBeamPipe_rmax" value="10.0*mm"/>
<constant name="ConeBeamPipe_Rmax" value="28.9*mm" />
<constant name="BeamPipeGoldWidth" value="0.005*mm" />
<constant name="BeamPipeGoldTolerance" value="0.001*mm" /> <!-- dummy tolerance, some small non zero value -->
<constant name="BeamPipeConeHalfAngle" value="(ConeBeamPipe_Rmax + BeamPipeWidthFirstCone - CentralBeamPipe_rmax ) / (SeparatedBeamPipe_z - CentralBeamPipe_zmax)" />

<constant name="SeparatedBeamPipe_rmax" value="15*mm"/>
<constant name="BeamPipeTantalShieldWidth" value="15*mm"/>
<constant name="SideFillerShieldWidth" value="7*mm"/>
<constant name="TopFillerShieldWidth" value="8*mm"/>
<constant name="BeamPipe_end" value="12500*mm"/>

<!-- Mike Sullivan's Synch Rad mask -->
<constant name="MiddleOfSRMask_z" value="2.1*m" />
<constant name="SynchRadMaskSize" value="5*mm" /> <!-- mask tip is at 10 mm from the beamline -->
<constant name="mask_epsilon" value="0.001*mm" />
<constant name="DetID_FFQs" value="27"/>


<constant name="VertexClearanceTheta" value="0.110"/> <!-- Clearance of vertex detector in mrad-->
<constant name="VTXIB_r_clearance" value="1*mm"/> <!-- Clearance of vertex detector in radius, used for definiton of vertex DD4hep_SubdetectorAssembly -->
Expand Down Expand Up @@ -123,61 +100,8 @@
<constant name="YokeEndcap_outer_symmetry" value="12"/>
<constant name="YokeEndcap_inner_symmetry" value="0"/>

<constant name="CompSol_min_z" value="1230*mm"/>

<constant name="env_safety" value="0.1*mm"/>

<constant name="LumiCal_max_z" value="1186.5*mm" />
<constant name="LumiCal_min_z" value="1074*mm"/>

<constant name="LumiCal_dz" value="(LumiCal_max_z-LumiCal_min_z)/2.0"/>

<constant name="LumiCal_inner_radius" value="55.0*mm"/>
<constant name="LumiCal_outer_radius" value="112.0*mm- env_safety"/>

<constant name="LumiCal_Instr_thickness" value="20*mm"/>
<constant name="LumiCal_Instr_inner_radius" value="LumiCal_outer_radius"/>
<constant name="LumiCal_Instr_outer_radius" value="LumiCal_outer_radius+LumiCal_Instr_thickness - env_safety"/>

<constant name="LumiCal_Cool_thickness" value="9.75*mm"/>
<constant name="LumiCal_Cool_inner_radius" value="LumiCal_Instr_outer_radius"/>
<constant name="LumiCal_Cool_outer_radius" value="LumiCal_Instr_outer_radius+LumiCal_Cool_thickness"/>

<constant name="Lcal_services_rmax" value="LumiCal_outer_radius+30*mm"/>
<constant name="Lcal_offset_phi" value=" 0."/>
<!--preliminary LumiCal shielding-->
<!--back shielding-->
<constant name="LumiCal_Shield_inner_radius" value="LumiCal_inner_radius"/>
<constant name="LumiCal_Shield_outer_radius" value="LumiCal_outer_radius+LumiCal_Instr_thickness+LumiCal_Cool_thickness"/>
<constant name="LumiCal_shield_dz" value="1.75*mm"/>
<!--nose-->
<constant name="LumiCal_NoseShield_inner_radius" value="LumiCal_inner_radius-5*mm"/>
<constant name="LumiCal_NoseShield_outer_radius" value="LumiCal_inner_radius+10*mm"/>
<constant name="LumiCal_nose_shield_dz" value="12*mm"/>

<constant name="BeamCal_inner_radius" value="32*mm"/>
<constant name="BeamCal_outer_radius" value="150*mm"/>
<constant name="BeamCal_min_z" value="3181*mm"/>
<constant name="BeamCal_max_z" value="3441*mm"/>
<constant name="BeamCal_dz" value="(BeamCal_max_z-BeamCal_min_z)/2.0"/>

<constant name="Kicker_inner_radius" value="4*mm"/>
<constant name="Kicker_outer_radius" value="25*mm"/>
<constant name="Kicker_min_z" value="3480*mm"/>
<constant name="Kicker_max_z" value="3780*mm"/>

<constant name="BPM_inner_radius" value="36*mm"/>
<constant name="BPM_outer_radius" value="55*mm"/>
<constant name="BPM_min_z" value="3790*mm"/>
<constant name="BPM_max_z" value="3880*mm"/>

<constant name="QD0_min_z" value="2000*mm"/>
<constant name="QD0_max_z" value="5200*mm"/>
<constant name="QD0Coil_outer_radius" value="30*mm"/>
<constant name="CollimatorInFrontOfQD0_dz" value="20*cm"/>
<constant name="CollimatorInFrontOfQD0_radius" value="10*mm"/>
<constant name="CollimatorInFrontOfQD0_dr" value="16*mm"/>

<constant name="tracker_region_zmax" value="DCH_half_length_total"/>
<constant name="tracker_region_rmax" value="DCH_outer_cyl_R_total"/>

Expand Down
Loading
Loading