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