Line Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89
<?xml version="1.0"?>
<DDDefinition xmlns="http://www.cern.ch/cms/DDL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.cern.ch/cms/DDL ../../../../DetectorDescription/Schema/DDLSchema.xsd">

<ConstantsSection label="hgcalHE.xml" eval="true">
  <Constant name="rMinFine"   value="0.0*fm"/>
  <Constant name="rMaxFine"   value="0.0*fm"/>
  <Constant name="rMaxMiddle" value="0.0*fm"/>
  <Constant name="rMaxCoarse" value="2000.0*cm"/>
  <Constant name="rMin"       value="[hgcal:rminHE]"/>
  <Constant name="rMax"       value="[hgcal:rmaxHE]"/>
  <Constant name="absorbW"    value="1.5*[hgcal:WaferW]"/>
  <Constant name="absorbH"    value="1.5*[hgcal:WaferW]"/>
</ConstantsSection>

<PosPartSection label="hgcalHE.xml">
  <Algorithm name="hgcal:DDHGCalTBModule">
    <rParent name="hgcal:HGCalHE"/>
    <Vector name="WaferName" type="string" nEntries="2">
      hgcalwafer:HGCalHEWaferFine, hgcalwafer:HGCalHEWaferCoarse</Vector>
    <Vector name="CoverName" type="string" nEntries="3">
      hgcal:HGCalHEPCB, hgcal:HGCalHEKapton, hgcal:HGCalHEAbsorber</Vector>
    <Vector name="MaterialNames" type="string" nEntries="16">
      materials:StainlessSteel, materials:Air, materials:Air, 
      materials:Copper, materials:Air, materials:Air, materials:Air,
      materials:StainlessSteel, materials:Air, materials:Air, materials:Air,
      materials:Air, materials:Air, materials:Air, materials:Air, 
      materials:Air</Vector>
    <Vector name="VolumeNames" type="string" nEntries="16">
      HESiliconAbsorber1, HESiliconPCB1, HESiliconShield1, HESiliconHeatShield, 
      HESiliconSensitive, HESiliconKapton1, HESiliconAirGap, 
      HESiliconSupport, HEAirGap1, HEAirGap2, HEAirGap3, HEAirGap4, HEAirGap5, 
      HEAirGap6, HEAirGap7, HEAirGap8</Vector>
    <Vector name="Thickness" type="numeric" nEntries="16">
      40.0*mm, [hgcal:thPCB], [hgcal:thAbsHE], 6.0*mm, 0.1*mm, [hgcal:thKapton],
      26.9*mm, 10.0*mm, 30.0*mm, 38.0*mm, 42.0*mm, 46.9*mm, 48.9*mm, 58.9*mm, 
      78.0*mm, 63.0*mm</Vector>
    <Vector name="Layers" type="numeric" nEntries="5"> 
      10, 11, 14, 11, 4 </Vector>
    <Vector name="LayerThick" type="numeric" nEntries="5"> 
      137.11*mm, 176.01*mm, 239.01*mm, 188.01*mm, 140.90*mm</Vector>
    <Vector name="LayerType" type="numeric" nEntries="50"> 
      7, 14, 0,  3, 2, 5, 4, 4, 4, 1,
      11, 0, 0,  0, 3, 2, 5, 4, 4, 4, 1,
      6,  0, 7, 15, 7, 0, 0, 3, 2, 5, 4, 4, 4, 1,
      13, 0, 0,  0, 3, 2, 5, 4, 4, 4, 1, 
      12, 0, 10, 7
    </Vector>
    <Vector name="LayerSense" type="numeric" nEntries="50">
      0, 0, 0, 0, 4, 3, 1, 1, 1, 2,
      0, 0, 0, 0, 0, 4, 3, 1, 1, 1, 2, 
      0, 0, 0, 0, 0, 0, 0, 0, 4, 3, 1, 1, 1, 2, 
      0, 0, 0, 0, 0, 4, 3, 1, 1, 1, 2,
      0, 0, 0, 0
    </Vector>
    <Numeric name="zMinBlock"   value="[hgcal:zminHE]"/>
    <Numeric name="rMaxFine"    value="[rMaxFine]"/>
    <Numeric name="waferW"      value="[hgcal:WaferW]"/>
    <Numeric name="waferGap"    value="1.0*mm"/>
    <Numeric name="absorberW"   value="[hgcalHE:absorbW]"/>
    <Numeric name="absorberH"   value="[hgcalHE:absorbH]"/>
    <Numeric name="Sectors"     value="12"/>
    <Vector name="SlopeBottom" type="numeric" nEntries="2">
      0.0, 0.0</Vector>
    <Vector name="SlopeTop" type="numeric" nEntries="2">
      0, 0</Vector>
    <Vector name="ZFront" type="numeric" nEntries="2">
      [hgcal:zminHE], [hgcal:zmaxHE]</Vector>
    <Vector name="RMaxFront" type="numeric" nEntries="2">
      [hgcal:rmaxHE], [hgcal:rmaxHE]</Vector>
    <String name="RotNameSpace" value="hgcalmodule"/>
  </Algorithm>
</PosPartSection> 

<SpecParSection label="hgcalHE.xml" eval="true">
  <SpecPar name="HGCalHE">
    <PartSelector path="//HGCalHESiliconSensitive.*"/>
    <Parameter name="Volume" value="HGCalHESiliconSensitive" eval="false"/>
    <Parameter name="GeometryMode" value="HGCalGeometryMode::Hexagon" eval="false"/>
    <Parameter name="RadiusBound"  value="[rMinFine]"/>
    <Parameter name="RadiusBound"  value="[rMaxFine]"/>
    <Parameter name="RadiusBound"  value="[rMaxMiddle]"/>
    <Parameter name="RadiusBound"  value="[rMaxCoarse]"/>
    <Parameter name="RadiusLimits" value="[rMin]"/>
    <Parameter name="RadiusLimits" value="[rMax]"/>
    <Parameter name="LevelTop"     value="99"/>
  </SpecPar>
</SpecParSection>

</DDDefinition>