Skip to content
Snippets Groups Projects
tube_defs.xml 7.21 KiB
Newer Older
  <constant name="TUBE_innerCylinder_zEnd_real" value="500*mm"/>
  <constant name="TUBE_innerCylinder_zEnd"      value="TUBE_IPInnerTube_end_z"/>
  <constant name="TUBE_innerCylinder_rInner"    value="TUBE_central_inner_radius"/>
  <constant name="TUBE_innerCylinder_thickness" value="TUBE_central_thickness"/>

  <constant name="TUBE_firstCone_zEnd_real" value="700*mm"/>
  <constant name="TUBE_firstCone_zStart" value="TUBE_innerCylinder_zEnd"/>
  <constant name="TUBE_firstCone_zEnd" value="TUBE_IPInnerBulge_end_z"/>
  <constant name="TUBE_firstCone_rInnerStart" value="TUBE_innerCylinder_rInner"/>
  <constant name="TUBE_firstCone_rInnerEnd" value="TUBE_IPInnerBulge_end_innerradius"/>
  <constant name="TUBE_firstCone_thickness" value="0.5*mm"/>
  <constant name="TUBE_firstCone_rInnerEnd_real" value="17*mm"/>
  <!--
     D. Jeans, update april 2017
     in this driver, we have to define the what I call the radial thickness
     this is the thickness in the radial direction, not that perpendicular to the surface.
     in the cones, we increase the thickness by a factor 1/cos(theta), where theta is the cone angle (half opening angle)
     (previously the nominal thickness was used as the radial thickness)
    -->
  <constant name="TUBE_firstCone_dz" value="TUBE_firstCone_zEnd-TUBE_firstCone_zStart"/>
  <constant name="TUBE_firstCone_dr" value="TUBE_firstCone_rInnerEnd-TUBE_firstCone_rInnerStart"/>
  <constant name="TUBE_firstCone_costh" value="TUBE_firstCone_dz/sqrt( TUBE_firstCone_dz**2. + TUBE_firstCone_dr**2. )"/>
  <!--constant name="TUBE_firstCone_RadThickness" value="TUBE_firstCone_thickness/TUBE_firstCone_costh"/-->
  <constant name="TUBE_firstCone_RadThickness" value="TUBE_firstCone_thickness"/>

  <constant name="TUBE_secondCylinder_zStart"    value="TUBE_firstCone_zEnd"/>
  <constant name="TUBE_secondCylinder_zEnd"      value="TUBE_IPOuterTube_end_z"/>
  <constant name="TUBE_secondCylinder_rInner"    value="TUBE_firstCone_rInnerEnd"/>
  <constant name="TUBE_secondCylinder_thickness" value="0.5*mm"/>

  <constant name="TUBE_IPOuterTube_end_radius" value="TUBE_secondCylinder_rInner+TUBE_secondCylinder_thickness"/>

  <!-- max radius of beampipe (in case fillet radius=0: with a realsitic fillet, true maximum radius will be a little smaller) -->
  <!-- this is actually the radius of the intersection of the second cone with the cupola -->

  <constant name="TUBE_secondCone_rMax" value="Lcal_outer_radius-LumiCal_tubebulge_overshoot"/>
  <constant name="TUBE_cupola_thickness" value="2*mm"/>
  <constant name="TUBE_cupola_zEnd" value="TUBE_IPOuterBulge_end_z"/>

  <constant name="TUBE_secondCone_tanOpeningAngle" value="(TUBE_secondCone_rMax-TUBE_secondCylinder_rInner)/(TUBE_cupola_zEnd-TUBE_secondCylinder_zEnd)"/>
  <constant name="TUBE_secondCone_cosOpeningAngle" value="1./( 1. + TUBE_secondCone_tanOpeningAngle**2 )"/>

  <constant name="TUBE_secondCone_part1_zStart" value="TUBE_secondCylinder_zEnd"/>
  <constant name="TUBE_secondCone_part1_zEnd" value="FTD_disk3_zPosRelToTpcLength*TPC_Ecal_Hcal_barrel_halfZ"/>
  <constant name="TUBE_secondCone_part1_rInnerStart" value="TUBE_secondCylinder_rInner"/>
  <constant name="TUBE_secondCone_part1_rInnerEnd" value="TUBE_secondCone_part1_rInnerStart + TUBE_secondCone_tanOpeningAngle*(TUBE_secondCone_part1_zEnd-TUBE_secondCone_part1_zStart)"/>
  <!-- include 0.7mm thickness for the cables -->
  <constant name="TUBE_secondCone_part1_thickness" value="2.7*mm"/> 
  <constant name="TUBE_secondCone_part1_RadThickness" value="TUBE_secondCone_part1_thickness/TUBE_secondCone_cosOpeningAngle"/>

  <constant name="TUBE_secondCone_part2_zStart" value="TUBE_secondCone_part1_zEnd"/>
  <constant name="TUBE_secondCone_part2_zEnd" value="FTD_disk4_zPosRelToTpcLength*TPC_Ecal_Hcal_barrel_halfZ"/>
  <constant name="TUBE_secondCone_part2_rInnerStart" value="TUBE_secondCone_part1_rInnerEnd"/>
  <constant name="TUBE_secondCone_part2_rInnerEnd" value="TUBE_secondCone_part2_rInnerStart + TUBE_secondCone_tanOpeningAngle*(TUBE_secondCone_part2_zEnd-TUBE_secondCone_part2_zStart)"/>
  <constant name="TUBE_secondCone_part2_thickness" value="2.7*mm"/>
  <constant name="TUBE_secondCone_part2_RadThickness" value="TUBE_secondCone_part2_thickness/TUBE_secondCone_cosOpeningAngle"/>

  <constant name="TUBE_secondCone_part3_zStart" value="TUBE_secondCone_part2_zEnd"/>
  <constant name="TUBE_secondCone_part3_zEnd" value="FTD_disk5_zPosRelToTpcLength*TPC_Ecal_Hcal_barrel_halfZ"/>
  <constant name="TUBE_secondCone_part3_rInnerStart" value="TUBE_secondCone_part2_rInnerEnd"/>
  <constant name="TUBE_secondCone_part3_rInnerEnd" value="TUBE_secondCone_part3_rInnerStart + TUBE_secondCone_tanOpeningAngle*(TUBE_secondCone_part3_zEnd-TUBE_secondCone_part3_zStart)"/>
  <constant name="TUBE_secondCone_part3_thickness" value="2.7*mm"/>
  <constant name="TUBE_secondCone_part3_RadThickness" value="TUBE_secondCone_part3_thickness/TUBE_secondCone_cosOpeningAngle"/>

  <constant name="TUBE_secondCone_part4_zStart" value="TUBE_secondCone_part3_zEnd"/>
  <constant name="TUBE_secondCone_part4_zEnd" value="TUBE_cupola_zEnd"/>
  <constant name="TUBE_secondCone_part4_rInnerStart" value="TUBE_secondCone_part3_rInnerEnd"/>
  <constant name="TUBE_secondCone_part4_rInnerEnd" value="TUBE_secondCone_part4_rInnerStart + TUBE_secondCone_tanOpeningAngle*(TUBE_secondCone_part4_zEnd-TUBE_secondCone_part4_zStart)"/>
  <constant name="TUBE_secondCone_part4_thickness" value="2.7*mm"/>
  <constant name="TUBE_secondCone_part4_RadThickness" value="TUBE_secondCone_part4_thickness/TUBE_secondCone_cosOpeningAngle"/>
  
  <!-- the tube going through lumical -->
  <constant name="TUBE_lumiTube_zStart" value="TUBE_cupola_zEnd+TUBE_cupola_thickness"/>
  <constant name="TUBE_lumiTube_zEnd" value="BeamCal_min_z-5*mm"/>
  <constant name="TUBE_lumiTube_thickness" value="1*mm"/>
  <constant name="TUBE_lumiTube_rInner" value="Lcal_inner_radius-TUBE_lumiTube_thickness-1*mm"/>

  <!-- tubes in beamcal -->
  <constant name="TUBE_incoming_inBeamcal_InnerRadius" value="14*mm"/>
  <constant name="TUBE_incoming_inBeamcal_OuterRadius" value="15*mm"/>

  <constant name="TUBE_outgoing_inBeamcal_InnerRadius" value="16*mm"/>
  <constant name="TUBE_outgoing_inBeamcal_OuterRadius" value="17*mm"/>

  <!-- beams beyond beamcal, into qd0 and extraction magnet-->
  <constant name="TUBE_upstream_thickness" value="2*mm"/>
  <constant name="TUBE_transition_length" value="20*mm"/> <!-- distance over which beampipe size changes between sections-->

  <constant name="TUBE_incoming_beamcalToQD0_InnerRadius" value="9.5*mm"/>
  <constant name="TUBE_outgoing_beamcalToQD0_InnerRadius" value="12*mm"/>

  <constant name="TUBE_incoming_QD0andBeyond_InnerRadius" value="8*mm"/>
  <constant name="TUBE_outgoing_QD0andBeyond_InnerRadius" value="12*mm"/>

  <constant name="TUBE_QD0_Lstar" value="4100*mm"/>
  <constant name="TUBE_QD0_length" value="2200*mm"/>

  <constant name="TUBE_QD0_gap_SD0" value="150*mm"/>
  <constant name="TUBE_SD0_length" value="600*mm"/>

  <constant name="TUBE_QD0_cryostat_length" value="TUBE_QD0_length+TUBE_QD0_gap_SD0+TUBE_SD0_length"/>

  <!-- extraction magnets: guestimates by DJeans, no recent official design available -->
  <constant name="TUBE_QDEX1A_Lstar" value="5500*mm"/>
  <constant name="TUBE_QDEX1A_length" value="TUBE_QD0_Lstar+TUBE_QD0_cryostat_length-TUBE_QDEX1A_Lstar"/>

</define>