<lccdd>

  <comment> Endcap Tracker  </comment>        

  <define>
    <constant name="GEMTrackerEndcap_zmin"            value="BarrelTracking_zmax"/>
    <constant name="GEMTrackerEndcap_NLayers"         value="1"/>
    <constant name="GEMTrackerEndcapFoilOpeningAngle" value="30.1*degree"/>
    <comment>
      ____X2____ 
      \        /
       \      /    Y (=z for the trd)
        \_X1_/ 
    </comment>
    <constant name="GEMTrackerEndcapFoilX1"           value="43.0 * mm"/>

    <constant name="GEMTrackerEndcapLayer_thickness"  value="ForwardTrackingGEMLength/GEMTrackerEndcap_NLayers"/>
    <constant name="GEMTrackerEndcapFoil_rmin"        value="GEMTrackerEndcapFoilX1/(tan(GEMTrackerEndcapFoilOpeningAngle/2.0)*2.0)"/>
    <constant name="GEMTrackerEndcapFoilY"            value="BarrelTracking_rmax- GEMTrackerEndcapFoil_rmin- 1.0*cm"/>
    <constant name="GEMTrackerEndcapFoilX2"           value="2*GEMTrackerEndcapFoilY*tan(GEMTrackerEndcapFoilOpeningAngle/2.0) +  GEMTrackerEndcapFoilX1"/>
    <constant name="GEMTrackerEndcapFoil_rmax"        value="(GEMTrackerEndcapFoilY+GEMTrackerEndcapFoil_rmin)/(cos(GEMTrackerEndcapFoilOpeningAngle/2.0))"/>

    <comment> 
              Needs implimentation:
	      Carbon fiber support ring and spokes
              Initial preliminary details can be found here: https://www.dropbox.com/s/grt9p8feqlsh52f/GEM-RD-GEMWheel.pdf?dl=0
              This design is still very much preliminary

      // Frame parameters accoring to Kondo's sbsCrossSection.pdf file),
      //frame thickness is from 1*3mm (drift gap) + 5*2mm frames
    </comment>

    <constant name="GEMTrackerEndcapFrame_thickness"     value="13.0 * mm"/>
    <constant name="GEMTrackerEndcapFrameBotEdge_width"  value="10.0 * mm"/>
    <constant name="GEMTrackerEndcapFrameTopEdge_width"  value="15.0 * mm"/>
    <constant name="GEMTrackerEndcapFrameSideEdge_width" value=" 8.0 * mm"/>
    <comment> Account for the fact that GEMs have holes, so they are not solid volumes </comment>
    <constant name="GEMAreaFactor" value="0.80" />
    <comment>
      From https://github.com/eic/EicToyModel/blob/master/source/eicroot/GemGeoParData.cxx

      // FIXME: put aluminum layer later as well),
      mEntranceWindowMaterial     ( "GemKapton"),
      mEntranceWindowThickness    (   50.0 * etm::um),

      // Use evaristo.pdf p.10 for the foil parameters:
      //  - drift foil    : 50um kapton + 3um copper)
      //  - GEM foil      : 30um kapton + 3um copper (80% area fraction))
      //  - readout foils : 30um kapton + 3um copper total)
      mDriftFoilKaptonThickness   (   50.0 * etm::um),
      mDriftFoilCopperThickness   (    3.0 * etm::um),
      mGemFoilAreaFraction        (   0.80),
      mGemFoilKaptonThickness     (   30.0 * etm::um),
      mGemFoilCopperThickness     (    3.0 * etm::um),

      mReadoutG10Thickness        (    0.0 * etm::mm),
      mReadoutKaptonThickness     (   30.0 * etm::um), 
      mReadoutCopperThickness     (    3.0 * etm::um),

      // 3mm thick Nomex honeycomb for SBS GEMs),
      mReadoutSupportMaterial     ( "GemNomex"),
      mReadoutSupportThickness    (    3.0 * etm::mm),

      mEntranceRegionLength       (    3.0 * etm::mm),
      mDriftRegionLength          (    3.0 * etm::mm),
      // Assume triple GEM layout),
      mFirstTransferRegionLength  (    2.0 * etm::mm),
      mSecondTransferRegionLength (    2.0 * etm::mm),
      mInductionRegionLength      (    2.0 * etm::mm)
    </comment>
  </define>

  <limits>
  </limits>

  <regions>
  </regions>

  <display>
  </display>

  <detectors>
    <detector
      id="GEMTrackerEndcap_ID"
      name="GEMTrackerEndcap"
      type="athena_GEMTrackerEndcap"
      readout="GEMTrackerEndcapHits"
      vis="AnlRed"
      reflect="false">
      <module name="GEMModule1" vis="AnlProcess_Blue">
        <trd x1="GEMTrackerEndcapFoilX1/2.0" x2="GEMTrackerEndcapFoilX2/2.0" z="GEMTrackerEndcapFoilY/2"/>
        <frame material="G10" thickness="GEMTrackerEndcapFrame_thickness" vis="TrackerSupportVis">
          <position x="0"  y="0" z="0" />
          <trd x1="GEMTrackerEndcapFoilX1/2.0 - GEMTrackerEndcapFrameSideEdge_width/cos(GEMTrackerEndcapFoilOpeningAngle) 
                                              + GEMTrackerEndcapFrameBotEdge_width*tan(GEMTrackerEndcapFoilOpeningAngle)"
               x2="GEMTrackerEndcapFoilX2/2.0 - GEMTrackerEndcapFrameSideEdge_width/cos(GEMTrackerEndcapFoilOpeningAngle)
                                              - GEMTrackerEndcapFrameTopEdge_width*tan(GEMTrackerEndcapFoilOpeningAngle)"
            z="GEMTrackerEndcapFoilY/2    - (GEMTrackerEndcapFrameBotEdge_width +GEMTrackerEndcapFrameTopEdge_width)/2.0 ">
            <position x="0" y="0" z="0" />
          </trd>
        </frame>
        <comment> Going from HV side to readout side</comment>
	<module_component thickness="25.0*um" material="Mylar" name="entrance_window"/>
	<module_component thickness=" 2.0*mm" material="Ar10CO2" name="entrance_region" />
        <module_component thickness="50.0*um" material="Kapton" name="cathode_foil"/>
	<module_component thickness=" 5.0*um" material="Copper" name="cathode_cu"/>
        <module_component thickness=" 3.0*mm" material="Ar10CO2" sensitive="true" name="drift_region" vis="AnlProcess_Blue"/>
        <module_component thickness="GEMAreaFactor*50.0*um" material="Kapton"  name="gem_foil_1"/>
        <module_component thickness="GEMAreaFactor*10.0*um" material="Copper"  name="gem_foil_1_cu"/>
        <module_component thickness=" 2.0*mm" material="Ar10CO2" name="transfer_region_I"/>
        <module_component thickness="GEMAreaFactor*50.0*um" material="Kapton"  name="gem_foil_2"/>
        <module_component thickness="GEMAreaFactor*10.0*um" material="Copper"  name="gem_foil_2_cu"/>
        <module_component thickness=" 2.0*mm" material="Ar10CO2" name="transfer_region_II"/>
        <module_component thickness="GEMAreaFactor*50.0*um" material="Kapton"  name="gem_foil_3"/>
        <module_component thickness="GEMAreaFactor*10.0*um" material="Copper"  name="gem_foil_3_cu"/>
        <module_component thickness=" 2.0*mm" material="Ar10CO2" name="induction_region"/>
        <module_component thickness="50.0*um" material="Kapton"  name="readout_foil"/>
	<module_component thickness=" 5.0*um" material="Copper"  name="readout_cu"/>
	<module_component thickness=" 2.0*mm" material="Ar10CO2" name="exit_region"/>
        <module_component thickness="25.0*um" material="Mylar" name="exit_window"/>
      </module>
      <module name="GEMSupportModule1" vis="AnlProcess_Blue">
        <trd x1="GEMTrackerEndcapFoilX1/2.0" x2="GEMTrackerEndcapFoilX2/2.0" z="GEMTrackerEndcapFoilY/2"/>
        <frame material="G10" thickness="GEMTrackerEndcapFrame_thickness" vis="TrackerSupportVis">
          <position x="0"  y="0" z="0" />
          <trd x1="GEMTrackerEndcapFoilX1/2.0 - GEMTrackerEndcapFrameSideEdge_width/cos(GEMTrackerEndcapFoilOpeningAngle) 
                                              + GEMTrackerEndcapFrameBotEdge_width*tan(GEMTrackerEndcapFoilOpeningAngle)"
               x2="GEMTrackerEndcapFoilX2/2.0 - GEMTrackerEndcapFrameSideEdge_width/cos(GEMTrackerEndcapFoilOpeningAngle)
                                              - GEMTrackerEndcapFrameTopEdge_width*tan(GEMTrackerEndcapFoilOpeningAngle)"
            z="GEMTrackerEndcapFoilY/2    - (GEMTrackerEndcapFrameBotEdge_width +GEMTrackerEndcapFrameTopEdge_width)/2.0 ">
            <position x="0" y="0" z="0" />
          </trd>
        </frame>
      </module>
      <module name="GEMSupportModule2" vis="AnlProcess_Blue">
        <trd x1="GEMTrackerEndcapFrameSideEdge_width" x2="GEMTrackerEndcapFrameSideEdge_width" z="GEMTrackerEndcapFoilY/2"/>
        <module_component thickness="1.0*mm" material="Mylar"/>
      </module>
      <layer id="1" >
        <ring vis="AnlRed" module="GEMModule1"
          r="GEMTrackerEndcapFoil_rmin+GEMTrackerEndcapFoilY/2.0"
          zstart="GEMTrackerEndcap_zmin + 0.5*GEMTrackerEndcapLayer_thickness"
          nmodules="12" dz="10 * mm" />
        <!--
        <ring vis="AnlRed" module="GEMSupportModule1" 
          r="GEMTrackerEndcapFoil_rmin+GEMTrackerEndcapFoilY/2.0"
          zstart="GEMTrackerEndcap_zmin + 0.5*GEMTrackerEndcapLayer_thickness"
          nmodules="12" dz="10 * mm"/>
        -->
        <ring vis="AnlBlue" phi0="15.0*degree"  module="GEMSupportModule2"
          r="GEMTrackerEndcapFoil_rmin+GEMTrackerEndcapFoilY/2.0"
          zstart="GEMTrackerEndcap_zmin + 0.5*GEMTrackerEndcapLayer_thickness"
          nmodules="12" dz="0 * mm" />
      </layer>
    </detector>

    <detector
      id="GEMTrackerEndcapN_ID"
      name="GEMTrackerEndcapN"
      type="athena_GEMTrackerEndcap"
      readout="GEMTrackerEndcapHits"
      vis="AnlRed"
      reflect="true">
      <module name="GEMModule1" vis="AnlProcess_Blue">
        <trd x1="GEMTrackerEndcapFoilX1/2.0" x2="GEMTrackerEndcapFoilX2/2.0" z="GEMTrackerEndcapFoilY/2"/>
        <frame material="G10" thickness="GEMTrackerEndcapFrame_thickness" vis="TrackerSupportVis">
          <position x="0"  y="0" z="0" />
          <trd x1="GEMTrackerEndcapFoilX1/2.0 - GEMTrackerEndcapFrameSideEdge_width/cos(GEMTrackerEndcapFoilOpeningAngle) 
                                              + GEMTrackerEndcapFrameBotEdge_width*tan(GEMTrackerEndcapFoilOpeningAngle)"
               x2="GEMTrackerEndcapFoilX2/2.0 - GEMTrackerEndcapFrameSideEdge_width/cos(GEMTrackerEndcapFoilOpeningAngle)
                                              - GEMTrackerEndcapFrameTopEdge_width*tan(GEMTrackerEndcapFoilOpeningAngle)"
            z="GEMTrackerEndcapFoilY/2    - (GEMTrackerEndcapFrameBotEdge_width +GEMTrackerEndcapFrameTopEdge_width)/2.0 ">
            <position x="0" y="0" z="0" />
          </trd>
        </frame>
        <comment> Going from HV side to readout side</comment>
	<module_component thickness="25.0*um" material="Mylar" name="entrance_window"/>
	<module_component thickness=" 2.0*mm" material="Ar10CO2" name="entrance_region" />
        <module_component thickness="50.0*um" material="Kapton" name="cathode_foil"/>
	<module_component thickness=" 5.0*um" material="Copper" name="cathode_cu"/>
        <module_component thickness=" 3.0*mm" material="Ar10CO2" sensitive="true" name="drift_region" vis="AnlProcess_Blue"/>
        <module_component thickness="GEMAreaFactor*50.0*um" material="Kapton"  name="gem_foil_1"/>
        <module_component thickness="GEMAreaFactor*10.0*um" material="Copper"  name="gem_foil_1_cu"/>
        <module_component thickness=" 2.0*mm" material="Ar10CO2" name="transfer_region_I"/>
        <module_component thickness="GEMAreaFactor*50.0*um" material="Kapton"  name="gem_foil_2"/>
        <module_component thickness="GEMAreaFactor*10.0*um" material="Copper"  name="gem_foil_2_cu"/>
        <module_component thickness=" 2.0*mm" material="Ar10CO2" name="transfer_region_II"/>
        <module_component thickness="GEMAreaFactor*50.0*um" material="Kapton"  name="gem_foil_3"/>
        <module_component thickness="GEMAreaFactor*10.0*um" material="Copper"  name="gem_foil_3_cu"/>
        <module_component thickness=" 2.0*mm" material="Ar10CO2" name="induction_region"/>
        <module_component thickness="50.0*um" material="Kapton"  name="readout_foil"/>
	<module_component thickness=" 5.0*um" material="Copper"  name="readout_cu"/>
	<module_component thickness=" 2.0*mm" material="Ar10CO2" name="exit_region"/>
	<module_component thickness="25.0*um" material="Mylar" name="exit_window"/>       
      </module>
      <module name="GEMSupportModule1" vis="AnlProcess_Blue">
        <trd x1="GEMTrackerEndcapFoilX1/2.0" x2="GEMTrackerEndcapFoilX2/2.0" z="GEMTrackerEndcapFoilY/2"/>
        <frame material="G10" thickness="GEMTrackerEndcapFrame_thickness" vis="TrackerSupportVis">
          <position x="0"  y="0" z="0" />
          <trd x1="GEMTrackerEndcapFoilX1/2.0 - GEMTrackerEndcapFrameSideEdge_width/cos(GEMTrackerEndcapFoilOpeningAngle) 
                                              + GEMTrackerEndcapFrameBotEdge_width*tan(GEMTrackerEndcapFoilOpeningAngle)"
               x2="GEMTrackerEndcapFoilX2/2.0 - GEMTrackerEndcapFrameSideEdge_width/cos(GEMTrackerEndcapFoilOpeningAngle)
                                              - GEMTrackerEndcapFrameTopEdge_width*tan(GEMTrackerEndcapFoilOpeningAngle)"
            z="GEMTrackerEndcapFoilY/2    - (GEMTrackerEndcapFrameBotEdge_width +GEMTrackerEndcapFrameTopEdge_width)/2.0 ">
            <position x="0" y="0" z="0" />
          </trd>
        </frame>
      </module>
      <module name="GEMSupportModule2" vis="AnlProcess_Blue">
        <trd x1="GEMTrackerEndcapFrameSideEdge_width" x2="GEMTrackerEndcapFrameSideEdge_width" z="GEMTrackerEndcapFoilY/2"/>
        <module_component thickness="1.0*mm" material="Mylar"/>
      </module>
      <layer id="1" >
        <ring vis="AnlRed" module="GEMModule1"
          r="GEMTrackerEndcapFoil_rmin+GEMTrackerEndcapFoilY/2.0"
          zstart="GEMTrackerEndcap_zmin + 0.5*GEMTrackerEndcapLayer_thickness"
          nmodules="12" dz="10 * mm" />
        <ring vis="AnlBlue" phi0="15.0*degree"  module="GEMSupportModule2"
          r="GEMTrackerEndcapFoil_rmin+GEMTrackerEndcapFoilY/2.0"
          zstart="GEMTrackerEndcap_zmin + 0.5*GEMTrackerEndcapLayer_thickness"
          nmodules="12" dz="0 * mm" />
      </layer>
    </detector>

  </detectors>

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

  <plugins>
  </plugins>

  <fields>
  </fields>
</lccdd>