Skip to content
Snippets Groups Projects
rwell_tracker_barrel.xml 15.1 KiB
Newer Older
<lccdd>

  <comment>RWell tracker barrel based on Fun4All implementation https://www.dropbox.com/sh/j4n4g5h80g9tai6/AAAzmXSHRGQCShoSiewe6HCDa?dl=0 Where the detector is constructed in the G4_RWell.C and Build_G4_RWell_Sup01.C files
      original R=(78.67, 90.0)cm,
               DirftGap=(0.4, 0.4)cm,
               Length=(200, 200)cm
               kapton_thickness = 0.0175; //cm
               cu_thickness = 0.002; //cm
               prepreg_thickness = 0.005; //cm
               pcb_thickness = 0.010; //cm
               //inner tube
               support_01_thickness = 0.50;
               support_01_length = 7.2;
               //inner ring
               support_02_thickness = 1.6;
               support_02_length = 1.2;
               //outer ring
               support_03_thickness = 0.50;
               support_03_length = 1.2;
               Length=TrackerBarrelOuter_length=(160, 160) cm // to avoid conflict with GEM tracker
               TODO: fix GEM geometry and restore length
    <constant name="RWellTrackerBarrel_length"              value="BarrelTracking_length"/>
    <constant name="RWellTrackerBarrel_NZModules"           value="1"/>
    <constant name="RWellTrackerBarrel_NZSupport"           value="2"/>

    <constant name="RWellTrackerBarrel_Kapton_thickness"    value="175.0*um"/>
    <constant name="RWellTrackerBarrel_Gas_thickness"       value="4.0*mm"/>
    <constant name="RWellTrackerBarrel_Cu_thickness"        value="20.0*um"/>
    <constant name="RWellTrackerBarrel_Prepreg_thickness"   value="50.0*um"/>
    <constant name="RWellTrackerBarrel_Pcb_thickness"       value="0.1*mm"/>

    <constant name="RWellTrackerBarrelLayer1_length"        value="RWellTrackerBarrel_length"/>
    <constant name="RWellTrackerBarrelLayer1_gas_rmin"      value="786.7 * mm"/>
    <constant name="RWellTrackerBarrelLayer1_rmin"          value="RWellTrackerBarrelLayer1_gas_rmin - RWellTrackerBarrel_Kapton_thickness"/>
    <constant name="RWellTrackerBarrelLayer1_thickness"     value="RWellTrackerBarrel_Kapton_thickness + RWellTrackerBarrel_Gas_thickness + RWellTrackerBarrel_Cu_thickness + RWellTrackerBarrel_Prepreg_thickness + RWellTrackerBarrel_Pcb_thickness"/>
    
    <constant name="RWellTrackerBarrelLayer2_length"        value="RWellTrackerBarrel_length"/>
    <constant name="RWellTrackerBarrelLayer2_gas_rmin"      value="900.0 * mm"/>
    <constant name="RWellTrackerBarrelLayer2_rmin"          value="RWellTrackerBarrelLayer2_gas_rmin - RWellTrackerBarrel_Kapton_thickness"/>
    <constant name="RWellTrackerBarrelLayer2_thickness"     value="RWellTrackerBarrel_Kapton_thickness + RWellTrackerBarrel_Gas_thickness + RWellTrackerBarrel_Cu_thickness + RWellTrackerBarrel_Prepreg_thickness + RWellTrackerBarrel_Pcb_thickness"/>
    
    <constant name="RWellTrackerBarrel_STube_thickness"     value="0.5*cm"/>
    <constant name="RWellTrackerBarrel_STube_length"        value="7.2*cm"/>
    <constant name="RWellTrackerBarrel_IRing_thickness"     value="1.6*cm"/>
    <constant name="RWellTrackerBarrel_IRing_length"        value="1.2*cm"/>
    <constant name="RWellTrackerBarrel_ORing_thickness"     value="0.5*cm"/>
    <constant name="RWellTrackerBarrel_ORing_length"        value="1.2*cm"/>
    <constant name="RWellTrackerBarrelLayer1_support_rmin" value="RWellTrackerBarrelLayer1_rmin + RWellTrackerBarrelLayer1_thickness"/>
    <constant name="RWellTrackerBarrelLayer2_support_rmin" value="RWellTrackerBarrelLayer2_rmin + RWellTrackerBarrelLayer2_thickness"/>
  </define>

  <limits>
  </limits>

  <regions>
  </regions>

  <display>
  </display>

  <detectors>
    <detector id="RWellTrackerBarrel_ID" name="RWellTrackerBarrel" type="refdet_RWellTrackerBarrel" readout="RWellTrackerBarrelHits">
        
        <module name="Module1" vis="GreenVis">
          <module_envelope
            rmin="RWellTrackerBarrelLayer1_rmin" thickness="RWellTrackerBarrelLayer1_thickness" length="RWellTrackerBarrelLayer1_length" phi="360*degree" />
          <module_component rmin="RWellTrackerBarrelLayer1_rmin" thickness="RWellTrackerBarrel_Kapton_thickness" material="Kapton"  name="entrance_window" sensitive="false"/>
          <module_component rmin="RWellTrackerBarrelLayer1_rmin + RWellTrackerBarrel_Kapton_thickness" thickness="RWellTrackerBarrel_Gas_thickness" material="Ar10CO2" name="drift region"    sensitive="true"/>
          <module_component rmin="RWellTrackerBarrelLayer1_rmin + RWellTrackerBarrel_Kapton_thickness + RWellTrackerBarrel_Gas_thickness" thickness="RWellTrackerBarrel_Cu_thickness" material="Copper"  name="Cu"              sensitive="false"/>
          <module_component rmin="RWellTrackerBarrelLayer1_rmin + RWellTrackerBarrel_Kapton_thickness + RWellTrackerBarrel_Gas_thickness + RWellTrackerBarrel_Cu_thickness" thickness="RWellTrackerBarrel_Prepreg_thickness" material="Nomex"   name="Prepreg"         sensitive="false"/>
          <module_component rmin="RWellTrackerBarrelLayer1_rmin + RWellTrackerBarrel_Kapton_thickness + RWellTrackerBarrel_Gas_thickness + RWellTrackerBarrel_Cu_thickness + RWellTrackerBarrel_Prepreg_thickness" thickness="RWellTrackerBarrel_Pcb_thickness" material="Fr4"     name="Pcb"             sensitive="false"/>
        </module>
        
        <module name="Module1_STube" vis="GreenVis">
           <module_envelope
             rmin="RWellTrackerBarrelLayer1_support_rmin" thickness="RWellTrackerBarrel_STube_thickness" length="RWellTrackerBarrel_STube_length" phi="360*degree" />
           <module_component rmin="RWellTrackerBarrelLayer1_support_rmin" thickness="RWellTrackerBarrel_STube_thickness" material="Cfrp_intt"  name="support_tube" sensitive="false"/>
        </module>
        <module name="Module1_IRing" vis="GreenVis">
           <module_envelope
             rmin="RWellTrackerBarrelLayer1_support_rmin + RWellTrackerBarrel_STube_thickness" thickness="RWellTrackerBarrel_IRing_thickness" length="RWellTrackerBarrel_IRing_length" phi="360*degree" />
           <module_component rmin="RWellTrackerBarrelLayer1_support_rmin + RWellTrackerBarrel_STube_thickness" thickness="RWellTrackerBarrel_IRing_thickness" material="Cfrp_intt"  name="support_inner_ring" sensitive="false"/>
        </module>
        <module name="Module1_ORing" vis="GreenVis">
           <module_envelope
             rmin="RWellTrackerBarrelLayer1_support_rmin + RWellTrackerBarrel_STube_thickness + RWellTrackerBarrel_IRing_thickness" thickness="RWellTrackerBarrel_ORing_thickness" length="RWellTrackerBarrel_ORing_length" phi="360*degree" />
           <module_component rmin="RWellTrackerBarrelLayer1_support_rmin + RWellTrackerBarrel_STube_thickness + RWellTrackerBarrel_IRing_thickness" thickness="RWellTrackerBarrel_ORing_thickness" material="Cfrp_intt"  name="support_outer_ring" sensitive="false"/>
        </module>
      
        <module name="Module2" vis="GreenVis">
          <module_envelope
              rmin="RWellTrackerBarrelLayer2_rmin" thickness="RWellTrackerBarrelLayer2_thickness" length="RWellTrackerBarrelLayer2_length" phi="360*degree" />
          <module_component rmin="RWellTrackerBarrelLayer2_rmin" thickness="RWellTrackerBarrel_Kapton_thickness" material="Kapton"  name="entrance_window" sensitive="false"/>
          <module_component rmin="RWellTrackerBarrelLayer2_rmin + RWellTrackerBarrel_Kapton_thickness" thickness="RWellTrackerBarrel_Gas_thickness" material="Ar10CO2" name="drift region"    sensitive="true"/>
          <module_component rmin="RWellTrackerBarrelLayer2_rmin + RWellTrackerBarrel_Kapton_thickness + RWellTrackerBarrel_Gas_thickness" thickness="RWellTrackerBarrel_Cu_thickness" material="Copper"  name="Cu"              sensitive="false"/>
          <module_component rmin="RWellTrackerBarrelLayer2_rmin + RWellTrackerBarrel_Kapton_thickness + RWellTrackerBarrel_Gas_thickness + RWellTrackerBarrel_Cu_thickness" thickness="RWellTrackerBarrel_Prepreg_thickness" material="Nomex"   name="Prepreg"         sensitive="false"/>
          <module_component rmin="RWellTrackerBarrelLayer2_rmin + RWellTrackerBarrel_Kapton_thickness + RWellTrackerBarrel_Gas_thickness + RWellTrackerBarrel_Cu_thickness + RWellTrackerBarrel_Pcb_thickness" thickness="RWellTrackerBarrel_Pcb_thickness" material="Fr4"     name="Pcb"             sensitive="false"/>
        </module>
        
        <module name="Module2_STube" vis="GreenVis">
           <module_envelope
             rmin="RWellTrackerBarrelLayer2_support_rmin" thickness="RWellTrackerBarrel_STube_thickness" length="RWellTrackerBarrel_STube_length" phi="360*degree" />
           <module_component rmin="RWellTrackerBarrelLayer2_support_rmin" thickness="RWellTrackerBarrel_STube_thickness" material="Cfrp_intt"  name="support_tube" sensitive="false"/>
        </module>
        <module name="Module2_IRing" vis="GreenVis">
           <module_envelope
             rmin="RWellTrackerBarrelLayer2_support_rmin + RWellTrackerBarrel_STube_thickness" thickness="RWellTrackerBarrel_IRing_thickness" length="RWellTrackerBarrel_IRing_length" phi="360*degree" />
           <module_component rmin="RWellTrackerBarrelLayer2_support_rmin + RWellTrackerBarrel_STube_thickness" thickness="RWellTrackerBarrel_IRing_thickness" material="Cfrp_intt"  name="support_inner_ring" sensitive="false"/>
        </module>
        <module name="Module2_ORing" vis="GreenVis">
           <module_envelope
             rmin="RWellTrackerBarrelLayer2_support_rmin + RWellTrackerBarrel_STube_thickness + RWellTrackerBarrel_IRing_thickness" thickness="RWellTrackerBarrel_ORing_thickness" length="RWellTrackerBarrel_ORing_length" phi="360*degree" />
           <module_component rmin="RWellTrackerBarrelLayer2_support_rmin + RWellTrackerBarrel_STube_thickness + RWellTrackerBarrel_IRing_thickness" thickness="RWellTrackerBarrel_ORing_thickness" material="Cfrp_intt"  name="support_outer_ring" sensitive="false"/>
        </module>

      <layer module="Module1" id="1" vis="GreenVis">
        <barrel_envelope
          inner_r="RWellTrackerBarrelLayer1_rmin"
          outer_r="RWellTrackerBarrelLayer1_rmin + RWellTrackerBarrelLayer1_thickness"
          z_length="RWellTrackerBarrel_length" />
        <rphi_layout phi_tilt="0.0" nphi="1" phi0="0." rc="RWellTrackerBarrelLayer1_rmin" dr="0.0 * mm"/>
        <z_layout dr="0.0 * mm" z0="-RWellTrackerBarrel_length/2.0 + RWellTrackerBarrelLayer1_length/2.0"
          nz="RWellTrackerBarrel_NZModules"/>
      </layer>
      <layer module="Module1_STube" id="2" vis="InvisibleWithDaughters">
        <barrel_envelope
          inner_r="RWellTrackerBarrelLayer1_support_rmin"
          outer_r="RWellTrackerBarrelLayer1_support_rmin + RWellTrackerBarrel_STube_thickness"
          z_length="RWellTrackerBarrel_length" />
        <rphi_layout phi_tilt="0.0" nphi="1" phi0="0." rc="RWellTrackerBarrelLayer1_support_rmin" dr="0.0 * mm"/>
        <z_layout dr="0.0 * mm" z0="-RWellTrackerBarrel_length/2.0 + RWellTrackerBarrel_STube_length/2.0"
          nz="RWellTrackerBarrel_NZSupport"/>
      </layer>
      <layer module="Module1_IRing" id="3" vis="InvisibleWithDaughters">
        <barrel_envelope
          inner_r="RWellTrackerBarrelLayer1_support_rmin + RWellTrackerBarrel_STube_thickness"
          outer_r="RWellTrackerBarrelLayer1_support_rmin + RWellTrackerBarrel_STube_thickness + RWellTrackerBarrel_IRing_thickness"
          z_length="RWellTrackerBarrel_length" />
        <rphi_layout phi_tilt="0.0" nphi="1" phi0="0." rc="RWellTrackerBarrelLayer1_support_rmin + RWellTrackerBarrel_STube_thickness" dr="0.0 * mm"/>
        <z_layout dr="0.0 * mm" z0="-RWellTrackerBarrel_length/2.0 + RWellTrackerBarrel_IRing_length/2.0"
          nz="RWellTrackerBarrel_NZSupport"/>
      </layer>
      <layer module="Module1_ORing" id="4" vis="InvisibleWithDaughters">
        <barrel_envelope
          inner_r="RWellTrackerBarrelLayer1_support_rmin + RWellTrackerBarrel_STube_thickness + RWellTrackerBarrel_IRing_thickness"
          outer_r="RWellTrackerBarrelLayer1_support_rmin + RWellTrackerBarrel_STube_thickness + RWellTrackerBarrel_IRing_thickness + RWellTrackerBarrel_ORing_thickness"
          z_length="RWellTrackerBarrel_length" />
        <rphi_layout phi_tilt="0.0" nphi="1" phi0="0." rc="RWellTrackerBarrelLayer1_support_rmin + RWellTrackerBarrel_STube_thickness + RWellTrackerBarrel_IRing_thickness" dr="0.0 * mm"/>
        <z_layout dr="0.0 * mm" z0="-RWellTrackerBarrel_length/2.0 + RWellTrackerBarrel_ORing_length/2.0"
          nz="RWellTrackerBarrel_NZSupport"/>
      </layer>

      <layer module="Module2" id="5" vis="GreenVis">
        <barrel_envelope
          inner_r="RWellTrackerBarrelLayer2_rmin"
          outer_r="RWellTrackerBarrelLayer2_rmin + RWellTrackerBarrelLayer2_thickness"
          z_length="RWellTrackerBarrel_length" />
        <rphi_layout phi_tilt="0.0" nphi="1" phi0="0." rc="RWellTrackerBarrelLayer2_rmin" dr="0.0 * mm"/>
        <z_layout dr="0.0 * mm" z0="-RWellTrackerBarrel_length/2.0 + RWellTrackerBarrelLayer2_length/2.0"
          nz="RWellTrackerBarrel_NZModules"/>
      </layer>
      <layer module="Module2_STube" id="6" vis="InvisibleWithDaughters">
        <barrel_envelope
          inner_r="RWellTrackerBarrelLayer2_support_rmin"
          outer_r="RWellTrackerBarrelLayer2_support_rmin + RWellTrackerBarrel_STube_thickness"
          z_length="RWellTrackerBarrel_length" />
        <rphi_layout phi_tilt="0.0" nphi="1" phi0="0." rc="RWellTrackerBarrelLayer2_support_rmin" dr="0.0 * mm"/>
        <z_layout dr="0.0 * mm" z0="-RWellTrackerBarrel_length/2.0 + RWellTrackerBarrel_STube_length/2.0"
          nz="RWellTrackerBarrel_NZSupport"/>
      </layer>
      <layer module="Module2_IRing" id="7" vis="InvisibleWithDaughters">
        <barrel_envelope
          inner_r="RWellTrackerBarrelLayer2_support_rmin + RWellTrackerBarrel_STube_thickness"
          outer_r="RWellTrackerBarrelLayer2_support_rmin + RWellTrackerBarrel_STube_thickness + RWellTrackerBarrel_IRing_thickness"
          z_length="RWellTrackerBarrel_length" />
        <rphi_layout phi_tilt="0.0" nphi="1" phi0="0." rc="RWellTrackerBarrelLayer2_support_rmin + RWellTrackerBarrel_STube_thickness" dr="0.0 * mm"/>
        <z_layout dr="0.0 * mm" z0="-RWellTrackerBarrel_length/2.0 + RWellTrackerBarrel_IRing_length/2.0"
          nz="RWellTrackerBarrel_NZSupport"/>
      </layer>
      <layer module="Module2_ORing" id="8" vis="InvisibleWithDaughters">
        <barrel_envelope
          inner_r="RWellTrackerBarrelLayer2_support_rmin + RWellTrackerBarrel_STube_thickness + RWellTrackerBarrel_IRing_thickness"
          outer_r="RWellTrackerBarrelLayer2_support_rmin + RWellTrackerBarrel_STube_thickness + RWellTrackerBarrel_IRing_thickness + RWellTrackerBarrel_ORing_thickness"
          z_length="RWellTrackerBarrel_length" />
        <rphi_layout phi_tilt="0.0" nphi="1" phi0="0." rc="RWellTrackerBarrelLayer2_support_rmin + RWellTrackerBarrel_STube_thickness + RWellTrackerBarrel_IRing_thickness" dr="0.0 * mm"/>
        <z_layout dr="0.0 * mm" z0="-RWellTrackerBarrel_length/2.0 + RWellTrackerBarrel_ORing_length/2.0"
          nz="RWellTrackerBarrel_NZSupport"/>
      </layer>

    </detector>

  </detectors>

  <readouts>
    <readout name="RWellTrackerBarrelHits">
      <segmentation type="CartesianGridXY" grid_size_x="1.0*mm" grid_size_y="1.0*mm" />
      <id>system:8,barrel:3,layer:4,module:7,sensor:2,x:32:-16,y:-16</id>
    </readout>
  </readouts>

  <plugins>
  </plugins>

  <fields>
  </fields>
</lccdd>