Back to home page

Project CMSSW displayed by LXR

 
 

    


Warning, /Geometry/TrackerCommonData/data/pixfwdNipple/2008/v1/pixfwdNipple.xml is written in an unsupported language. File is not indexed.

0001 <?xml version="1.0"?>
0002 <DDDefinition>
0003   <ConstantsSection label="Input" eval="true">
0004     <Constant name="R01" value="2.00*mm"/>
0005     <Constant name="R02" value="2.50*mm"/>
0006     <Constant name="R03" value="2.00*mm"/>
0007     <Constant name="R04" value="2.50*mm"/>
0008     <Constant name="R05" value="3.00*mm"/>
0009     <Constant name="R06" value="3.00*mm"/>
0010     <Constant name="R07" value="3.50*mm"/>
0011     <Constant name="R08" value="4.50*mm"/>
0012     <Constant name="R09" value="3.25*mm"/>
0013     <Constant name="R10" value="3.75*mm"/>
0014     <Constant name="R11" value="3.50*mm"/>
0015     <Constant name="L01" value="8.23*mm"/>
0016     <Constant name="L02" value="8.23*mm"/>
0017     <Constant name="L03" value="6.73*mm"/>
0018     <Constant name="L04" value="9.50*mm"/>
0019     <Constant name="L05" value="4.00*mm"/>
0020     <Constant name="L06" value="4.00*mm"/>
0021     <Constant name="L07" value="1.00*mm"/>
0022     <Constant name="L08" value="1.00*mm"/>
0023     <Constant name="A01" value="60*deg"/>
0024     <Constant name="RootHalfThickness" value="[pixfwdPanelBase:RootHalfThickness]"/>
0025   </ConstantsSection>
0026  
0027   <!-- Nipple root and a solid for boolean subtraction -->
0028   <ConstantsSection label="Root" eval="true">
0029     <Constant name="JK" value="16.9*mm"/>
0030     <!-- 16.9523 as printed by algorithm, made slightly smaller
0031          to avoid overlaps due to numerical errors. Can be made
0032          more precise once DDL is able to use constants defined 
0033          in algorithms directly. -->
0034     <Constant name="AngleBody" value="0.172941*rad"/>
0035     <Constant name="AngleCover" value="0.172941*rad"/>
0036     <Constant name="Dsub" value="2.0*mm"/>
0037     <Constant name="Rsub" value="[R08]/cos([AngleBody]) + ([Dsub]/2)*tan([AngleBody]) + [pixfwdCommon:SmallBool]"/>
0038     <Constant name="DeltaBody" value="([Dsub]/2 - 0.5*mm) / cos([AngleBody])"/>
0039     <Constant name="DeltaCover" value="([Dsub]/2 - 0.5*mm) / cos([AngleCover])"/>
0040   </ConstantsSection>
0041   <SolidSection label="Root">
0042     <Tubs name="PixelForwardNipple_01" rMin="0.*mm" rMax="[R08]-0.9*mm" dz="[L04]/2+3.7*mm" startPhi="0." deltaPhi="360*deg"/>
0043     <Tubs name="PixelForwardNippleSubtract" rMin="0.*mm" rMax="[Rsub]-0.9*mm" dz="[Dsub]/2." startPhi="0." deltaPhi="360*deg"/>
0044     <Tubs name="PixelForwardNippleMiddle" rMin="0.*mm" rMax="[R08]" dz="[L04]/2.+0.4*mm" startPhi="0." deltaPhi="360*deg"/>
0045     <SubtractionSolid name="PixelForwardNipple_int01">
0046       <rSolid name="PixelForwardNipple_01"/>
0047       <rSolid name="PixelForwardNippleSubtract"/>
0048       <Translation x="0." y="0." z="-[L04]/2.-3.7*mm-[DeltaCover]"/>
0049       <rRotation name="pixfwdNipple:NippleToCoverZPlus"/>
0050     </SubtractionSolid>
0051     <SubtractionSolid name="PixelForwardNippleZPlus_01">
0052       <rSolid name="PixelForwardNipple_int01"/>
0053       <rSolid name="PixelForwardNippleSubtract"/>
0054       <Translation x="0." y="0." z="[L04]/2.+3.7*mm+[DeltaBody]"/>
0055       <rRotation name="pixfwdNipple:NippleToBodyZPlus"/>
0056     </SubtractionSolid>
0057     <UnionSolid name="PixelForwardNippleZPlus">
0058       <rSolid name="PixelForwardNippleZPlus_01"/>
0059       <rSolid name="PixelForwardNippleMiddle"/>
0060       <Translation x="0." y="0." z="0."/>
0061     </UnionSolid>
0062     <SubtractionSolid name="PixelForwardNipple_int02">
0063       <rSolid name="PixelForwardNipple_01"/>
0064       <rSolid name="PixelForwardNippleSubtract"/>
0065       <Translation x="0." y="0." z="-[L04]/2.-3.7*mm-[DeltaCover]"/>
0066       <rRotation name="pixfwdNipple:NippleToCoverZMinus"/>
0067     </SubtractionSolid>
0068     <SubtractionSolid name="PixelForwardNippleZMinus_01">
0069       <rSolid name="PixelForwardNipple_int02"/>
0070       <rSolid name="PixelForwardNippleSubtract"/>
0071       <Translation x="0." y="0." z="[L04]/2.+3.7*mm+[DeltaBody]"/>
0072       <rRotation name="pixfwdNipple:NippleToBodyZMinus"/>
0073     </SubtractionSolid>
0074     <UnionSolid name="PixelForwardNippleZMinus">
0075       <rSolid name="PixelForwardNippleZMinus_01"/>
0076       <rSolid name="PixelForwardNippleMiddle"/>
0077       <Translation x="0." y="0." z="0."/>
0078     </UnionSolid>
0079   </SolidSection>
0080   <LogicalPartSection label="Root">
0081     <LogicalPart name="PixelForwardNippleZPlus" category="envelope">
0082       <rSolid name="PixelForwardNippleZPlus"/>
0083       <rMaterial name="materials:Air"/>
0084     </LogicalPart>
0085     <LogicalPart name="PixelForwardNippleZMinus" category="envelope">
0086       <rSolid name="PixelForwardNippleZMinus"/>
0087       <rMaterial name="materials:Air"/>
0088     </LogicalPart>
0089   </LogicalPartSection>
0090   <!-- Sleeve and pipes inside it -->
0091   <ConstantsSection label="Sleeve" eval="true">
0092     <Constant name="e01" value="[JK]-[L01]-[L02]"/>
0093   </ConstantsSection>
0094   <SolidSection label="Sleeve">
0095     <Polycone name="PixelForwardNippleSleeve" startPhi="0.*deg" deltaPhi="360*deg">
0096       <ZSection z="-[L04]/2" rMin="0." rMax="[R08]"/>
0097       <ZSection z="[L04]/2-([R08]-[R07])*tan([A01])" rMin="0." rMax="[R08]"/>
0098       <ZSection z="[L04]/2" rMin="0." rMax="[R07]"/>
0099     </Polycone>
0100     <Polycone name="PixelForwardNippleEpoxyCover" startPhi="0.*deg" deltaPhi="360*deg">
0101       <ZSection z="-[L06]/2" rMin="[R05]" rMax="[R11]"/>
0102       <ZSection z="[L06]/2-[L07]-([R10]-[R11])" rMin="[R05]" rMax="[R11]"/>
0103       <ZSection z="[L06]/2-[L07]" rMin="[R05]" rMax="[R10]"/>
0104       <ZSection z="[L06]/2" rMin="[R05]" rMax="[R10]"/>
0105     </Polycone>
0106     <Polycone name="PixelForwardNippleEpoxyBody" startPhi="0.*deg" deltaPhi="360*deg">
0107       <ZSection z="-[L05]/2" rMin="[R02]" rMax="[R09]"/>
0108       <ZSection z="-[L05]/2+[L08]" rMin="[R02]" rMax="[R09]"/>
0109       <ZSection z="-[L05]/2+[L08]+([R09]-[R06])" rMin="[R02]" rMax="[R06]"/>
0110       <ZSection z="[L05]/2" rMin="[R02]" rMax="[R06]"/>
0111     </Polycone>
0112     <Polycone name="PixelForwardNippleSleeveCoolant" startPhi="0.*deg" deltaPhi="360*deg">
0113       <ZSection z="-[L04]/2" rMin="0.0" rMax="[R04]"/>
0114       <ZSection z="-[L04]/2+[L06]-([L02]-[L03])" rMin="0.0" rMax="[R04]"/>
0115       <ZSection z="-[L04]/2+[L06]-([L02]-[L03])+([R04]-[R03])" rMin="0.0" rMax="[R03]"/>
0116       <ZSection z="-[L04]/2+[L06]" rMin="0.0" rMax="[R03]"/>
0117       <ZSection z="-[L04]/2+[L06]" rMin="0.0" rMax="[R02]"/>
0118       <ZSection z="-[L04]/2+[L06]+[e01]" rMin="0.0" rMax="[R02]"/>
0119       <ZSection z="-[L04]/2+[L06]+[e01]" rMin="0.0" rMax="[R01]"/>
0120       <ZSection z="[L04]/2" rMin="0.0" rMax="[R01]"/>
0121     </Polycone>
0122   </SolidSection>
0123   <LogicalPartSection label="Sleeve">
0124     <LogicalPart name="PixelForwardNippleSleeve" category="cooling">
0125       <rSolid name="PixelForwardNippleSleeve"/>
0126       <rMaterial name="trackermaterial:T_Aluminium"/>
0127     </LogicalPart>
0128     <LogicalPart name="PixelForwardNippleEpoxyCover" category="cooling">
0129       <rSolid name="PixelForwardNippleEpoxyCover"/>
0130       <rMaterial name="pixfwdMaterials:Pix_Fwd_AgEpoxy"/>
0131     </LogicalPart>
0132     <LogicalPart name="PixelForwardNippleEpoxyBody" category="cooling">
0133       <rSolid name="PixelForwardNippleEpoxyBody"/>
0134       <rMaterial name="pixfwdMaterials:Pix_Fwd_AgEpoxy"/>
0135     </LogicalPart>
0136     <LogicalPart name="PixelForwardNippleSleeveCoolant" category="cooling">
0137       <rSolid name="PixelForwardNippleSleeveCoolant"/>
0138       <rMaterial name="pixfwdMaterials:PixelForwardCoolant"/>
0139     </LogicalPart>
0140   </LogicalPartSection>
0141   <PosPartSection label="Sleeve">
0142     <PosPart copyNumber="1">
0143       <rParent name="pixfwdNipple:PixelForwardNippleZPlus"/>
0144       <rChild name="pixfwdNipple:PixelForwardNippleSleeve"/>
0145       <Translation x="0." y="0." z="-[JK]/2 + [L02] - [L06] + [L04]/2"/>
0146     </PosPart>
0147     <PosPart copyNumber="2">
0148       <rParent name="pixfwdNipple:PixelForwardNippleZMinus"/>
0149       <rChild name="pixfwdNipple:PixelForwardNippleSleeve"/>
0150       <Translation x="0." y="0." z="-[JK]/2 + [L02] - [L06] + [L04]/2"/>
0151     </PosPart>
0152     <PosPart copyNumber="1">
0153       <rParent name="pixfwdNipple:PixelForwardNippleSleeve"/>
0154       <rChild name="pixfwdNipple:PixelForwardNippleEpoxyCover"/>
0155       <Translation x="0." y="0." z="-[L04]/2 + [L06]/2"/>
0156     </PosPart>
0157     <PosPart copyNumber="1">
0158       <rParent name="pixfwdNipple:PixelForwardNippleSleeve"/>
0159       <rChild name="pixfwdNipple:PixelForwardNippleEpoxyBody"/>
0160       <Translation x="0." y="0." z="[L04]/2 - [L05]/2"/>
0161     </PosPart>
0162     <PosPart copyNumber="1">
0163       <rParent name="pixfwdNipple:PixelForwardNippleSleeve"/>
0164       <rChild name="pixfwdNipple:PixelForwardNippleSleeveCoolant"/>
0165     </PosPart>
0166   </PosPartSection>
0167   <!-- Cover side : -->
0168   <ConstantsSection label="Cover" eval="true">
0169     <Constant name="e02" value="([L02]-[L06])/2"/>
0170     <!-- Half length of cover side -->
0171   </ConstantsSection>
0172   <SolidSection label="Cover">
0173     <Tubs name="PixelForwardNippleCover_01" rMin="0.*mm" rMax="[R05]" dz="[e02]" startPhi="0." deltaPhi="360*deg"/>
0174     <Tubs name="PixelForwardNippleCoverCoolant_01" rMin="0.*mm" rMax="[R04]" dz="[e02]" startPhi="0." deltaPhi="360*deg"/>
0175     <SubtractionSolid name="PixelForwardNippleCoverZPlus">
0176       <rSolid name="PixelForwardNippleCover_01"/>
0177       <rSolid name="PixelForwardNippleSubtract"/>
0178       <Translation x="0." y="0." z="-[e02]-[DeltaCover]"/>
0179       <rRotation name="pixfwdNipple:NippleToCoverZPlus"/>
0180     </SubtractionSolid>
0181     <SubtractionSolid name="PixelForwardNippleCoverCoolantZPlus">
0182       <rSolid name="PixelForwardNippleCoverCoolant_01"/>
0183       <rSolid name="PixelForwardNippleSubtract"/>
0184       <Translation x="0." y="0." z="-[e02]-[DeltaCover]"/>
0185       <rRotation name="pixfwdNipple:NippleToCoverZPlus"/>
0186     </SubtractionSolid>
0187     <SubtractionSolid name="PixelForwardNippleCoverZMinus">
0188       <rSolid name="PixelForwardNippleCover_01"/>
0189       <rSolid name="PixelForwardNippleSubtract"/>
0190       <Translation x="0." y="0." z="-[e02]-[DeltaCover]"/>
0191       <rRotation name="pixfwdNipple:NippleToCoverZMinus"/>
0192     </SubtractionSolid>
0193     <SubtractionSolid name="PixelForwardNippleCoverCoolantZMinus">
0194       <rSolid name="PixelForwardNippleCoverCoolant_01"/>
0195       <rSolid name="PixelForwardNippleSubtract"/>
0196       <Translation x="0." y="0." z="-[e02]-[DeltaCover]"/>
0197       <rRotation name="pixfwdNipple:NippleToCoverZMinus"/>
0198     </SubtractionSolid>
0199   </SolidSection>
0200   <LogicalPartSection label="Cover">
0201     <LogicalPart name="PixelForwardNippleCoverZPlus" category="cooling">
0202       <rSolid name="PixelForwardNippleCoverZPlus"/>
0203       <rMaterial name="trackermaterial:T_Aluminium"/>
0204     </LogicalPart>
0205     <LogicalPart name="PixelForwardNippleCoverCoolantZPlus" category="cooling">
0206       <rSolid name="PixelForwardNippleCoverCoolantZPlus"/>
0207       <rMaterial name="pixfwdMaterials:PixelForwardCoolant"/>
0208     </LogicalPart>
0209     <LogicalPart name="PixelForwardNippleCoverZMinus" category="cooling">
0210       <rSolid name="PixelForwardNippleCoverZMinus"/>
0211       <rMaterial name="trackermaterial:T_Aluminium"/>
0212     </LogicalPart>
0213     <LogicalPart name="PixelForwardNippleCoverCoolantZMinus" category="cooling">
0214       <rSolid name="PixelForwardNippleCoverCoolantZMinus"/>
0215       <rMaterial name="pixfwdMaterials:PixelForwardCoolant"/>
0216     </LogicalPart>
0217   </LogicalPartSection>
0218   <PosPartSection label="Cover">
0219     <PosPart copyNumber="1">
0220       <rParent name="pixfwdNipple:PixelForwardNippleZPlus"/>
0221       <rChild name="pixfwdNipple:PixelForwardNippleCoverZPlus"/>
0222       <Translation x="0." y="0." z="-[JK]/2 + [e02]"/>
0223     </PosPart>
0224     <PosPart copyNumber="1">
0225       <rParent name="pixfwdNipple:PixelForwardNippleCoverZPlus"/>
0226       <rChild name="pixfwdNipple:PixelForwardNippleCoverCoolantZPlus"/>
0227     </PosPart>
0228     <PosPart copyNumber="1">
0229       <rParent name="pixfwdNipple:PixelForwardNippleZMinus"/>
0230       <rChild name="pixfwdNipple:PixelForwardNippleCoverZMinus"/>
0231       <Translation x="0." y="0." z="-[JK]/2 + [e02]"/>
0232     </PosPart>
0233     <PosPart copyNumber="1">
0234       <rParent name="pixfwdNipple:PixelForwardNippleCoverZMinus"/>
0235       <rChild name="pixfwdNipple:PixelForwardNippleCoverCoolantZMinus"/>
0236     </PosPart>
0237   </PosPartSection>
0238   <!-- Body side : -->
0239   <ConstantsSection label="Body" eval="true">
0240     <Constant name="e03" value="([JK]-[e02]*2-[L04])/2"/>
0241     <!--Half length of body side -->
0242   </ConstantsSection>
0243   <SolidSection label="Body">
0244     <Tubs name="PixelForwardNippleBody_01" rMin="0.*mm" rMax="[R02]" dz="[e03]" startPhi="0." deltaPhi="360*deg"/>
0245     <Tubs name="PixelForwardNippleBodyCoolant_01" rMin="0.*mm" rMax="[R01]" dz="[e03]" startPhi="0." deltaPhi="360*deg"/>
0246     <SubtractionSolid name="PixelForwardNippleBodyZPlus">
0247       <rSolid name="PixelForwardNippleBody_01"/>
0248       <rSolid name="PixelForwardNippleSubtract"/>
0249       <Translation x="0." y="0." z="[e03]+[DeltaBody]"/>
0250       <rRotation name="pixfwdNipple:NippleToBodyZPlus"/>
0251     </SubtractionSolid>
0252     <SubtractionSolid name="PixelForwardNippleBodyCoolantZPlus">
0253       <rSolid name="PixelForwardNippleBodyCoolant_01"/>
0254       <rSolid name="PixelForwardNippleSubtract"/>
0255       <Translation x="0." y="0." z="[e03]+[DeltaBody]"/>
0256       <rRotation name="pixfwdNipple:NippleToBodyZPlus"/>
0257     </SubtractionSolid>
0258     <SubtractionSolid name="PixelForwardNippleBodyZMinus">
0259       <rSolid name="PixelForwardNippleBody_01"/>
0260       <rSolid name="PixelForwardNippleSubtract"/>
0261       <Translation x="0." y="0." z="[e03]+[DeltaBody]"/>
0262       <rRotation name="pixfwdNipple:NippleToBodyZMinus"/>
0263     </SubtractionSolid>
0264     <SubtractionSolid name="PixelForwardNippleBodyCoolantZMinus">
0265       <rSolid name="PixelForwardNippleBodyCoolant_01"/>
0266       <rSolid name="PixelForwardNippleSubtract"/>
0267       <Translation x="0." y="0." z="[e03]+[DeltaBody]"/>
0268       <rRotation name="pixfwdNipple:NippleToBodyZMinus"/>
0269     </SubtractionSolid>
0270   </SolidSection>
0271   <LogicalPartSection label="Body">
0272     <LogicalPart name="PixelForwardNippleBodyZPlus" category="cooling">
0273       <rSolid name="PixelForwardNippleBodyZPlus"/>
0274       <rMaterial name="trackermaterial:T_Aluminium"/>
0275     </LogicalPart>
0276     <LogicalPart name="PixelForwardNippleBodyCoolantZPlus" category="cooling">
0277       <rSolid name="PixelForwardNippleBodyCoolantZPlus"/>
0278       <rMaterial name="pixfwdMaterials:PixelForwardCoolant"/>
0279     </LogicalPart>
0280     <LogicalPart name="PixelForwardNippleBodyZMinus" category="cooling">
0281       <rSolid name="PixelForwardNippleBodyZMinus"/>
0282       <rMaterial name="trackermaterial:T_Aluminium"/>
0283     </LogicalPart>
0284     <LogicalPart name="PixelForwardNippleBodyCoolantZMinus" category="cooling">
0285       <rSolid name="PixelForwardNippleBodyCoolantZMinus"/>
0286       <rMaterial name="pixfwdMaterials:PixelForwardCoolant"/>
0287     </LogicalPart>
0288   </LogicalPartSection>
0289   <PosPartSection label="BodyPlus">
0290     <PosPart copyNumber="1">
0291       <rParent name="pixfwdNipple:PixelForwardNippleZPlus"/>
0292       <rChild name="pixfwdNipple:PixelForwardNippleBodyZPlus"/>
0293       <Translation x="0." y="0." z="[JK]/2 - [e03]"/>
0294     </PosPart>
0295     <PosPart copyNumber="1">
0296       <rParent name="pixfwdNipple:PixelForwardNippleBodyZPlus"/>
0297       <rChild name="pixfwdNipple:PixelForwardNippleBodyCoolantZPlus"/>
0298     </PosPart>
0299   </PosPartSection>
0300   <PosPartSection label="BodyMinus">
0301     <PosPart copyNumber="1">
0302       <rParent name="pixfwdNipple:PixelForwardNippleZMinus"/>
0303       <rChild name="pixfwdNipple:PixelForwardNippleBodyZMinus"/>
0304       <Translation x="0." y="0." z="[JK]/2 - [e03]"/>
0305     </PosPart>
0306     <PosPart copyNumber="1">
0307       <rParent name="pixfwdNipple:PixelForwardNippleBodyZMinus"/>
0308       <rChild name="pixfwdNipple:PixelForwardNippleBodyCoolantZMinus"/>
0309     </PosPart>
0310   </PosPartSection>
0311 </DDDefinition>