Skip to content

Commit

Permalink
Merge pull request #3042 from skaplanhex/PLTGeometry_710pre4
Browse files Browse the repository at this point in the history
Geometry -- PLT Geometry Update
  • Loading branch information
nclopezo committed Mar 28, 2014
2 parents 3fb5781 + c5db4a4 commit d0c39d9
Show file tree
Hide file tree
Showing 2 changed files with 31 additions and 42 deletions.
69 changes: 29 additions & 40 deletions Geometry/ForwardCommonData/data/plt.xml
Expand Up @@ -10,22 +10,23 @@
<ConstantsSection label="plt" eval="true">
<Constant name = "pltTilt" value = "1.57*deg" />

<Constant name = "SiPlane0RtoCenter" value = "48.5*mm" />
<Constant name = "SiPlane1RtoCenter" value = "49.5*mm" />
<Constant name = "SiPlane2RtoCenter" value = "50.5*mm" />
<Constant name = "SiPlane0RtoCenter" value = "49.9*mm" />
<Constant name = "SiPlane1RtoCenter" value = "51.*mm" />
<Constant name = "SiPlane2RtoCenter" value = "52.1*mm" />

<Constant name = "SiPlane0ZtoCenter" value = "1714.1*mm" />
<Constant name = "SiPlane1ZtoCenter" value = "1751.8*mm" />
<Constant name = "SiPlane2ZtoCenter" value = "1789.5*mm" />
<Constant name = "SiPlane0ZtoCenter" value = "1726.9*mm" />
<Constant name = "SiPlane1ZtoCenter" value = "1764.6*mm" />
<Constant name = "SiPlane2ZtoCenter" value = "1802.3*mm" />

<Constant name = "ROCWidthX" value = "10.0*mm" />
<Constant name = "ROCWidthY" value = "10.0*mm" />
<Constant name = "ROCWidthX" value = "8.0*mm" />
<Constant name = "ROCWidthY" value = "10.5*mm" />
<Constant name = "SiThkZ" value = "0.30*mm" />

<Constant name = "TelWidthX" value = "[ROCWidthX]+2.*mm" />
<Constant name = "TelWidthY" value = "[ROCWidthY]" />
<Constant name = "TelWidthX" value = "[ROCWidthX]" />
<Constant name = "TelWidthY" value = "[ROCWidthY]+2.2*mm" />
<Constant name = "TelWidthZ" value = "[SiPlane2ZtoCenter]-[SiPlane0ZtoCenter]+[SiThkZ]" />
<Constant name = "PLTMaxR" value = "sqrt((([SiPlane2RtoCenter]+[ROCWidthX]/2.)*([SiPlane2RtoCenter]+[ROCWidthX]/2.))+([ROCWidthX]/2.)*([ROCWidthX]/2.))" />
<Constant name = "PLTMinR" value = "[cms:TrackBeamR1]" />
<Constant name = "PLTMaxR" value = "[cms:TrackLumiR1]" />

<Constant name = "NumberOfRows" value = "80" />
<Constant name = "NumberOfColumns" value = "52" />
Expand All @@ -39,29 +40,20 @@
<!-- Declare PLT component Solids -->
<SolidSection label="plt">

<!-- Declare telescope components-->
<Box name="PLTSensorPlane" dx="[ROCWidthX]/2." dy="[ROCWidthY]/2."
dz="[SiThkZ]/2." />
<Box name="PLTSensorPlane" dx="[ROCWidthX]/2." dy="[ROCWidthY]/2." dz="[SiThkZ]/2." />

<Tubs name="PLT" startPhi="0.0*deg" deltaPhi="360*deg" rMin="[cms:TrackBeamR1]"
rMax="[PLTMaxR]"
dz="[TelWidthZ]/2."/>
<!--
<Tubs name="Telescope" startPhi="-22.5*deg" deltaPhi="45.*deg" rMin="0.*mm"
rMax="56.*mm" dz="[TelWidthZ]"/> -->
<Tubs name="PLT" startPhi="0.0*deg" deltaPhi="360*deg" rMin="[PLTMinR]" rMax="[PLTMaxR]" dz="[TelWidthZ]/2."/>

<Box name="Telescope" dx="[TelWidthX]/2." dy="[TelWidthY]/2." dz="[TelWidthZ]/2." />
<Box name="Telescope" dx="[TelWidthX]/2." dy="[TelWidthY]/2." dz="[TelWidthZ]/2." />

<Box name="PLTPixel" dx="[PixelColumnWidth]/2." dy="[PixelRowWidth]/2." dz="[SiThkZ]/2." />
<Box name="PLTPixel" dx="[PixelColumnWidth]/2." dy="[PixelRowWidth]/2." dz="[SiThkZ]/2." />

<Box name ="PLTSensorRow" dx="[ActiveAreaColumnWidth]/2." dy="[PixelRowWidth]/2." dz="[SiThkZ]/2." />
<Box name="PLTSensorRow" dx="[ActiveAreaColumnWidth]/2." dy="[PixelRowWidth]/2." dz="[SiThkZ]/2." />

</SolidSection>

<!-- Define the Physical PLT Solids, i.e. the Logical Parts -->
<LogicalPartSection label="plt">
<!--Changed all materials to be materials:Vacuum except for silicon -->
<!-- Telescope logical parts -->
<LogicalPart name="PLT" category="unspecified">
<rSolid name="PLT"/>
<rMaterial name="materials:Vacuum"/>
Expand Down Expand Up @@ -89,11 +81,8 @@

</LogicalPartSection>

<!-- Position the Silicon in the telescope and copy the telescope to have 8 of them. Take this amalgamation of 8 telescopes then copy it to have one on each end of the IP-->
<!-- 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-->
<PosPartSection label="plt">

<!-- Positioning Silicon in the telescope -->

<!-- Copy the pixels into a row to form the columns -->
<Algorithm name="global:DDLinear">
<rParent name="PLTSensorRow"/>
Expand All @@ -118,32 +107,33 @@
<Numeric name="Theta" value="90*deg"/>
<Numeric name="Phi" value="-90.*deg"/>
</Algorithm>

<!-- Copy the three sensor planes into the telescope-->
<PosPart copyNumber="0">
<rParent name="Telescope"/>
<rChild name="PLTSensorPlane"/>
<Translation x="-[TelWidthX]/2.+[ROCWidthX]/2." y="0.*mm" z="-[TelWidthZ]/2.+[SiThkZ]/2." />
<Translation x="0.*mm" y="-[TelWidthY]/2.+[ROCWidthY]/2." z="-[TelWidthZ]/2.+[SiThkZ]/2." />
<rRotation name="rotations:000D" />
</PosPart>

<PosPart copyNumber="1">
<rParent name="Telescope"/>
<rChild name="PLTSensorPlane"/>
<Translation x="-[TelWidthX]/2.+[ROCWidthX]/2.+1.*mm" y="0.*mm" z="0.*mm" />
<Translation x="0.*mm" y="-[TelWidthY]/2.+[ROCWidthY]/2.+1.1*mm" z="0.*mm" />
<rRotation name="rotations:000D" />
</PosPart>

<PosPart copyNumber="2">
<rParent name="Telescope"/>
<rChild name="PLTSensorPlane"/>
<Translation x="-[TelWidthX]/2.+[ROCWidthX]/2.+2.*mm" y="0.*mm" z="[TelWidthZ]/2.-[SiThkZ]/2" />
<Translation x="0.*mm" y="-[TelWidthY]/2.+[ROCWidthY]/2.+2.2*mm" z="[TelWidthZ]/2.-[SiThkZ]/2" />
<rRotation name="rotations:000D" />
</PosPart>

<!-- Copy the PLT into the PLTBCM volume -->
<!-- NOTE: The 2mm shift is due to the new tracker volume to make the plt planes positioned in |z| correctly.-->
<PosPart copyNumber="1">
<rParent name="pltbcm:PLTBCM"/>
<rChild name="PLT"/>
<Translation x="0.*mm" y="0.*mm" z="[SiPlane1ZtoCenter]-[pltbcm:PltBcmZ]" />
<Translation x="0.*mm" y="0.*mm" z="[SiPlane1ZtoCenter]-[pltbcm:PltBcmZ]-2.*mm" />
<rRotation name="rotations:000D"/>
</PosPart>

Expand All @@ -155,28 +145,27 @@
<rRotation name="rotations:000D"/>
</PosPart>
<PosPart copyNumber="0">
<rParent name="cms:CMSE"/>
<rChild name="PLT"/>
<Translation x="0.*mm" y="0.*mm" z="-[SiPlane1ZtoCenter]" />
<rRotation name="rotations:180D"/>
</PosPart> -->

<!-- Copy the telescopes into the PLT volume starting with phi=112.5 degrees. RotateSolid vector gives correct orientation of the planes-->
<Algorithm name="global:DDAngular">
<rParent name="PLT"/>
<String name="ChildName" value="Telescope"/>
<Numeric name="StartCopyNo" value="0"/>
<Numeric name="IncrCopyNo" value="1"/>
<Numeric name="N" value="8"/>
<Numeric name="Radius" value="[SiPlane1RtoCenter]"/>
<Numeric name="StartAngle" value="0.*deg"/>
<Numeric name="StartAngle" value="112.5*deg"/>
<Numeric name="RangeAngle" value="360*deg"/>
<Vector name="Center" type="numeric" nEntries="3"> 0, 0, 0 </Vector>
<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>
</Algorithm>



</PosPartSection>

</DDDefinition>
4 changes: 2 additions & 2 deletions Geometry/ForwardSimData/data/pltsens.xml
Expand Up @@ -2,9 +2,9 @@
<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">
<SpecParSection label="pltsens.xml" eval="true">
<SpecPar name="plt">
<PartSelector path="//PLTSensitiveDetector"/>
<PartSelector path="//PLTPixel"/>
<Parameter name="SensitiveDetector" value="PLTSensitiveDetector" eval="false"/>
<Parameter name="ReadOutName" value="PLTHits" eval="false"/>
</SpecPar>
</SpecParSection>
</DDDefinition>
</DDDefinition>

0 comments on commit d0c39d9

Please sign in to comment.