1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
|
<?xml version="1.0"?>
<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">
<!--
== CMS Forward Pixels Geometry ==
@version 3.02.01 May 30, 2006
@created Victoria Martin
@modified Dmitry Onoprienko
== Subsystem or component described by the file ==
1x2 Plaquette (Left and Right versions).
== Root volume and its reference frame ==
Root volume : PixelForwardPlaquette1x2Left and PixelForwardPlaquette1x2Right
Y is in the plane of the plaquette, pointing away from the beam line
Z is perpendicular to the plaquette, pointing to the sensor side
== Positioning ==
The file defines AnchorXLeft(AnchorXRight) and AnchorY constants that
correspond to the anchor point (aka active center) coordinates in the plaquette
root volume PixelForwardPlaquette1x2Left(PixelForwardPlaquette1x2Right).
The two root volumes defined by this file contain ...........
PixelForwardPlaquette1x2Right should be positioned unrotated into "PixelForwardPanel3Right" panel,
and PixelForwardPlaquette1x2Left should be positioned unrotated into "PixelForwardPanel4Left" panel.
== Additional comments ==
The volume representing the active part of the sensor is placed with 90 degrees
rotation around Z axis to make its local reference frame Y go along the longer side.
-->
<ConstantsSection label="Input" eval="true">
<Constant name="PlaquetteW" value="21.358*mm"/>
<Constant name="PlaquetteH" value="15.048*mm"/>
<Constant name="SensorW" value="18.494*mm"/>
<Constant name="SensorH" value="10.394*mm"/>
<Constant name="ActiveW" value="16.200*mm"/>
<Constant name="ActiveH" value="8.100*mm"/>
<Constant name="ROChipX_TopRight" value="3.074*mm"/>
<Constant name="ROChipY_TopRight" value="3.905*mm"/>
<Constant name="ActiveCenterXRight" value="11.137*mm"/>
<Constant name="ActiveCenterXLeft" value="11.116*mm"/>
<Constant name="ActiveCenterY" value="9.833*mm"/>
</ConstantsSection>
<ConstantsSection label="Common" eval="true">
<Constant name="AnchorXRight" value=" [PlaquetteW]/2.-[ActiveCenterXRight]"/>
<Constant name="AnchorXLeft" value="-[PlaquetteW]/2.+[ActiveCenterXLeft]"/>
<Constant name="AnchorY" value="[PlaquetteH]/2.-[ActiveCenterY]"/>
</ConstantsSection>
<SolidSection label="All">
<!-- Root volume -->
<Box name="PixelForwardPlaquette1x2" dx="[PlaquetteW]/2." dy="[PlaquetteH]/2." dz="[pixfwdPlaq:PlaquetteT]/2."/>
<!-- Sensor -->
<Box name="PixelForwardSensor1x2" dx="[SensorH]/2." dy="[SensorW]/2" dz="[pixfwdPlaq:SensorT]/2."/>
<Box name="PixelForwardActive1x2" dx="[ActiveH]/2." dy="[ActiveW]/2" dz="[pixfwdPlaq:SensorT]/2."/>
<!-- Passive part -->
<Box name="PixelForwardPassive1x2" dx="[PlaquetteW]/2." dy="[PlaquetteH]/2." dz="[pixfwdPlaq:PassiveT]/2."/>
<Box name="PixelForwardFlexCircuit1x2" dx="[PlaquetteW]/2." dy="[PlaquetteH]/2." dz="[pixfwdPlaq:FlexCircuitT]/2."/>
<Box name="PixelForwardAdhFilm1x2" dx="[PlaquetteW]/2." dy="[PlaquetteH]/2." dz="[pixfwdPlaq:AdhFilmT]/2."/>
<Box name="PixelForwardBacking1x2" dx="[PlaquetteW]/2." dy="[PlaquetteH]/2." dz="[pixfwdPlaq:BackingT]/2."/>
<Box name="PixelForwardChoTherm1x2" dx="[PlaquetteW]/2." dy="[PlaquetteH]/2." dz="[pixfwdPlaq:ChoThermT]/2."/>
</SolidSection>
<LogicalPartSection label="All">
<!-- Root volumes -->
<LogicalPart name="PixelForwardPlaquette1x2Right" category="envelope">
<rSolid name="PixelForwardPlaquette1x2"/>
<rMaterial name="materials:Air"/>
</LogicalPart>
<LogicalPart name="PixelForwardPlaquette1x2Left" category="envelope">
<rSolid name="PixelForwardPlaquette1x2"/>
<rMaterial name="materials:Air"/>
</LogicalPart>
<!-- Sensor -->
<LogicalPart name="PixelForwardSensor1x2" category="unspecified">
<rSolid name="PixelForwardSensor1x2"/>
<rMaterial name="materials:Silicon"/>
</LogicalPart>
<LogicalPart name="PixelForwardActive1x2" category="sensitive">
<rSolid name="PixelForwardActive1x2"/>
<rMaterial name="materials:Silicon"/>
</LogicalPart>
<!-- Passive part -->
<LogicalPart name="PixelForwardPassive1x2" category="envelope">
<rSolid name="PixelForwardPassive1x2"/>
<rMaterial name="materials:Air"/>
</LogicalPart>
<LogicalPart name="PixelForwardFlexCircuit1x2" category="unspecified">
<rSolid name="PixelForwardFlexCircuit1x2"/>
<rMaterial name="pixfwdMaterials:Pix_Fwd_VHDI"/>
</LogicalPart>
<LogicalPart name="PixelForwardAdhFilm1x2" category="unspecified">
<rSolid name="PixelForwardAdhFilm1x2"/>
<rMaterial name="pixfwdMaterials:Pix_Fwd_AdhFilm"/>
</LogicalPart>
<LogicalPart name="PixelForwardBacking1x2" category="unspecified">
<rSolid name="PixelForwardBacking1x2"/>
<rMaterial name="materials:Silicon"/>
</LogicalPart>
<LogicalPart name="PixelForwardChoTherm1x2" category="unspecified">
<rSolid name="PixelForwardChoTherm1x2"/>
<rMaterial name="pixfwdMaterials:Pix_Fwd_AgEpoxy"/>
</LogicalPart>
</LogicalPartSection>
<PosPartSection label="All">
<!-- Sensor -->
<PosPart copyNumber="1">
<rParent name="PixelForwardSensor1x2"/>
<rChild name="PixelForwardActive1x2"/>
</PosPart>
<PosPart copyNumber="1">
<rParent name="PixelForwardPlaquette1x2Right"/>
<rChild name="PixelForwardSensor1x2"/>
<Translation x="[AnchorXRight]" y="[AnchorY]" z="[pixfwdPlaq:SensorZ]"/>
<rRotation name="pixfwdPlaq:Z270"/>
</PosPart>
<PosPart copyNumber="2">
<rParent name="PixelForwardPlaquette1x2Left"/>
<rChild name="PixelForwardSensor1x2"/>
<Translation x="[AnchorXLeft]" y="[AnchorY]" z="[pixfwdPlaq:SensorZ]"/>
<rRotation name="pixfwdPlaq:Z270"/>
</PosPart>
<!-- Passive part -->
<PosPart copyNumber="1">
<rParent name="PixelForwardPlaquette1x2Right"/>
<rChild name="PixelForwardPassive1x2"/>
<Translation x="0.*mm" y="0.*mm" z="[pixfwdPlaq:PassiveZ]"/>
</PosPart>
<PosPart copyNumber="2">
<rParent name="PixelForwardPlaquette1x2Left"/>
<rChild name="PixelForwardPassive1x2"/>
<Translation x="0.*mm" y="0.*mm" z="[pixfwdPlaq:PassiveZ]"/>
<rReflectionRotation name="pixfwdCommon:ReflectionX"/>
</PosPart>
<PosPart copyNumber="1">
<rParent name="PixelForwardPassive1x2"/>
<rChild name="PixelForwardFlexCircuit1x2"/>
<Translation x="0." y="0." z="[pixfwdPlaq:FlexCircuitZ]"/>
</PosPart>
<PosPart copyNumber="1">
<rParent name="PixelForwardPassive1x2"/>
<rChild name="PixelForwardAdhFilm1x2"/>
<Translation x="0." y="0." z="[pixfwdPlaq:AdhFilmZ]"/>
</PosPart>
<PosPart copyNumber="1">
<rParent name="PixelForwardPassive1x2"/>
<rChild name="PixelForwardBacking1x2"/>
<Translation x="0." y="0." z="[pixfwdPlaq:BackingZ]"/>
</PosPart>
<PosPart copyNumber="1">
<rParent name="PixelForwardPassive1x2"/>
<rChild name="PixelForwardChoTherm1x2"/>
<Translation x="0." y="0." z="[pixfwdPlaq:ChoThermZ]"/>
</PosPart>
<!-- Readout chips in the passive part -->
<PosPart copyNumber="1">
<rParent name="PixelForwardPassive1x2"/>
<rChild name="pixfwdPlaq:PixelForwardBumpROChipEpoxy"/>
<Translation x="[PlaquetteW]/2.-[ROChipX_TopRight]-[pixfwdPlaq:ROChipW]/2." y="[PlaquetteH]/2.-[ROChipY_TopRight]-[pixfwdPlaq:ROChipH]/2." z="[pixfwdPlaq:BumpROChipEpoxyZ]"/>
</PosPart>
<PosPart copyNumber="2">
<rParent name="PixelForwardPassive1x2"/>
<rChild name="pixfwdPlaq:PixelForwardBumpROChipEpoxy"/>
<Translation x="[PlaquetteW]/2.-[ROChipX_TopRight]-[pixfwdPlaq:ROChipSpaceW]-[pixfwdPlaq:ROChipW]/2." y="[PlaquetteH]/2.-[ROChipY_TopRight]-[pixfwdPlaq:ROChipH]/2." z="[pixfwdPlaq:BumpROChipEpoxyZ]"/>
</PosPart>
</PosPartSection>
</DDDefinition>
|