Warning, /Geometry/ForwardCommonData/data/plt/2021/v1/plt.xml is written in an unsupported language. File is not indexed.
0001 <?xml version="1.0"?>
0002 <DDDefinition>
0003
0004 <!-- Author: Steven M. Kaplan -->
0005
0006 <!-- Declare constants used in the PLT DDL -->
0007 <ConstantsSection label="plt" eval="true">
0008 <Constant name = "pltTilt" value = "1.57*deg" />
0009
0010 <Constant name = "SiPlane0RtoCenter" value = "49.9*mm" />
0011 <Constant name = "SiPlane1RtoCenter" value = "51.*mm" />
0012 <Constant name = "SiPlane2RtoCenter" value = "52.1*mm" />
0013
0014 <Constant name = "SiPlane0ZtoCenter" value = "1726.9*mm" />
0015 <Constant name = "SiPlane1ZtoCenter" value = "1764.6*mm" />
0016 <Constant name = "SiPlane2ZtoCenter" value = "1802.3*mm" />
0017
0018 <Constant name = "ROCWidthX" value = "8.0*mm" />
0019 <Constant name = "ROCWidthY" value = "10.5*mm" />
0020 <Constant name = "SiThkZ" value = "0.30*mm" />
0021
0022 <Constant name = "TelWidthX" value = "[ROCWidthX]" />
0023 <Constant name = "TelWidthY" value = "[ROCWidthY]+2.2*mm" />
0024 <Constant name = "TelWidthZ" value = "[SiPlane2ZtoCenter]-[SiPlane0ZtoCenter]+[SiThkZ]" />
0025 <Constant name = "PLTMinR" value = "[cms:TrackBeamR12]" />
0026 <Constant name = "PLTMaxR" value = "[cms:TrackLumiR1]" />
0027
0028 <Constant name = "NumberOfRows" value = "80" />
0029 <Constant name = "NumberOfColumns" value = "52" />
0030 <Constant name = "PixelRowWidth" value = "0.1*mm" />
0031 <Constant name = "PixelColumnWidth" value = "0.15*mm" />
0032 <Constant name = "ActiveAreaColumnWidth" value = "[PixelColumnWidth]*[NumberOfColumns]" />
0033 <Constant name = "ActiveAreaRowWidth" value = "[PixelRowWidth]*[NumberOfRows]" />
0034
0035 </ConstantsSection>
0036
0037 <!-- Declare PLT component Solids -->
0038 <SolidSection label="plt">
0039
0040 <Box name="PLTSensorPlane" dx="[ROCWidthX]/2." dy="[ROCWidthY]/2." dz="[SiThkZ]/2." />
0041
0042 <Tubs name="PLT" startPhi="0.0*deg" deltaPhi="360*deg" rMin="[PLTMinR]" rMax="[PLTMaxR]" dz="[TelWidthZ]/2."/>
0043
0044 <Box name="Telescope" dx="[TelWidthX]/2." dy="[TelWidthY]/2." dz="[TelWidthZ]/2." />
0045
0046 <Box name="PLTPixel" dx="[PixelColumnWidth]/2." dy="[PixelRowWidth]/2." dz="[SiThkZ]/2." />
0047
0048 <Box name="PLTSensorRow" dx="[ActiveAreaColumnWidth]/2." dy="[PixelRowWidth]/2." dz="[SiThkZ]/2." />
0049
0050 </SolidSection>
0051
0052 <!-- Define the Physical PLT Solids, i.e. the Logical Parts -->
0053 <LogicalPartSection label="plt">
0054 <LogicalPart name="PLT" category="unspecified">
0055 <rSolid name="PLT"/>
0056 <rMaterial name="materials:Vacuum"/>
0057 </LogicalPart>
0058
0059 <LogicalPart name="Telescope" category="unspecified">
0060 <rSolid name="Telescope"/>
0061 <rMaterial name="materials:Vacuum"/>
0062 </LogicalPart>
0063
0064 <LogicalPart name="PLTSensorPlane" category="unspecified">
0065 <rSolid name="PLTSensorPlane"/>
0066 <rMaterial name="materials:Vacuum"/>
0067 </LogicalPart>
0068
0069 <LogicalPart name="PLTSensorRow" category="unspecified">
0070 <rSolid name="PLTSensorRow"/>
0071 <rMaterial name="materials:Vacuum"/>
0072 </LogicalPart>
0073
0074 <LogicalPart name="PLTPixel" category="unspecified">
0075 <rSolid name="PLTPixel"/>
0076 <rMaterial name="materials:Silicon"/>
0077 </LogicalPart>
0078
0079 </LogicalPartSection>
0080
0081 <!-- Position the Silicon in the telescope and copy the telescope to have 8 of them. Take this amalgamation of 8 telescopes then copy it into the PLTBCM volume-->
0082 <PosPartSection label="plt">
0083 <!-- Copy the pixels into a row to form the columns -->
0084 <Algorithm name="global:DDLinear">
0085 <rParent name="plt:PLTSensorRow"/>
0086 <String name="ChildName" value="plt:PLTPixel"/>
0087 <Numeric name="StartCopyNo" value="0"/>
0088 <Numeric name="IncrCopyNo" value="1"/>
0089 <Numeric name="N" value="[NumberOfColumns]"/>
0090 <Numeric name="Delta" value="[PixelColumnWidth]"/>
0091 <Vector name="Base" type="numeric" nEntries="3"> -[ActiveAreaColumnWidth]/2.+[PixelColumnWidth]/2.,0.*mm,0.*mm </Vector>
0092 <Numeric name="Theta" value="90*deg"/>
0093 <Numeric name="Phi" value="0.*deg"/>
0094 </Algorithm>
0095 <!-- Copy the rows to form the sensor plane! -->
0096 <Algorithm name="global:DDLinear">
0097 <rParent name="plt:PLTSensorPlane"/>
0098 <String name="ChildName" value="plt:PLTSensorRow"/>
0099 <Numeric name="StartCopyNo" value="0"/>
0100 <Numeric name="IncrCopyNo" value="1"/>
0101 <Numeric name="N" value="[NumberOfRows]"/>
0102 <Numeric name="Delta" value="[PixelRowWidth]"/>
0103 <Vector name="Base" type="numeric" nEntries="3"> 0.*mm,-[ROCWidthY]/2.+[ActiveAreaRowWidth]-([PixelRowWidth]/2.),0.*mm </Vector>
0104 <Numeric name="Theta" value="90*deg"/>
0105 <Numeric name="Phi" value="-90.*deg"/>
0106 </Algorithm>
0107 <!-- Copy the three sensor planes into the telescope-->
0108 <PosPart copyNumber="0">
0109 <rParent name="plt:Telescope"/>
0110 <rChild name="plt:PLTSensorPlane"/>
0111 <Translation x="0.*mm" y="-[TelWidthY]/2.+[ROCWidthY]/2." z="-[TelWidthZ]/2.+[SiThkZ]/2." />
0112 <rRotation name="rotations:000D" />
0113 </PosPart>
0114
0115 <PosPart copyNumber="1">
0116 <rParent name="plt:Telescope"/>
0117 <rChild name="plt:PLTSensorPlane"/>
0118 <Translation x="0.*mm" y="-[TelWidthY]/2.+[ROCWidthY]/2.+1.1*mm" z="0.*mm" />
0119 <rRotation name="rotations:000D" />
0120 </PosPart>
0121
0122 <PosPart copyNumber="2">
0123 <rParent name="plt:Telescope"/>
0124 <rChild name="plt:PLTSensorPlane"/>
0125 <Translation x="0.*mm" y="-[TelWidthY]/2.+[ROCWidthY]/2.+2.2*mm" z="[TelWidthZ]/2.-[SiThkZ]/2" />
0126 <rRotation name="rotations:000D" />
0127 </PosPart>
0128 <!-- Copy the PLT into the PLTBCM volume -->
0129 <!-- NOTE: The 2mm shift is due to the new tracker volume to make the plt planes positioned in |z| correctly.-->
0130 <PosPart copyNumber="1">
0131 <rParent name="pltbcm:PLTBCM"/>
0132 <rChild name="plt:PLT"/>
0133 <Translation x="0.*mm" y="0.*mm" z="[SiPlane1ZtoCenter]-[pltbcm:PltBcmZ]-2.*mm" />
0134 <rRotation name="rotations:000D"/>
0135 </PosPart>
0136
0137 <!-- Old positioning without PLTBCM volume
0138 <PosPart copyNumber="1">
0139 <rParent name="cms:CMSE"/>
0140 <rChild name="PLT"/>
0141 <Translation x="0.*mm" y="0.*mm" z="[SiPlane1ZtoCenter]" />
0142 <rRotation name="rotations:000D"/>
0143 </PosPart>
0144
0145
0146 <PosPart copyNumber="0">
0147 <rParent name="cms:CMSE"/>
0148 <rChild name="PLT"/>
0149 <Translation x="0.*mm" y="0.*mm" z="-[SiPlane1ZtoCenter]" />
0150 <rRotation name="rotations:180D"/>
0151 </PosPart> -->
0152 <!-- Copy the telescopes into the PLT volume starting with phi=112.5 degrees. RotateSolid vector gives correct orientation of the planes-->
0153 <Algorithm name="global:DDAngular">
0154 <rParent name="plt:PLT"/>
0155 <String name="ChildName" value="plt:Telescope"/>
0156 <Numeric name="StartCopyNo" value="0"/>
0157 <Numeric name="IncrCopyNo" value="1"/>
0158 <Numeric name="N" value="8"/>
0159 <Numeric name="Radius" value="[SiPlane1RtoCenter]"/>
0160 <Numeric name="StartAngle" value="112.5*deg"/>
0161 <Numeric name="RangeAngle" value="360*deg"/>
0162 <Vector name="Center" type="numeric" nEntries="3"> 0, 0, 0 </Vector>
0163 <Vector name="RotateSolid" type="numeric" nEntries="24"> 0.*deg, 0.*deg, -90.*deg, 0.*deg, 0.*deg, 0.*deg, 0.*deg, 0.*deg, 0.*deg, 0.*deg, 0.*deg, 0.*deg, 0.*deg, 0.*deg, 0*deg, 0.*deg, 0.*deg, 0.*deg, 0.*deg, 0.*deg, 0.*deg, 0.*deg, 0.*deg, 0.*deg </Vector>
0164 </Algorithm>
0165
0166 </PosPartSection>
0167
0168 </DDDefinition>