Back to home page

Project CMSSW displayed by LXR

 
 

    


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>