Commit in hps-detectors/gdml on MAIN
ecal_vacuum_flange_simple_v2.gdml+170-761.3 -> 1.4
break flange into three volumes to avoid quirks of boolean volumes

hps-detectors/gdml
ecal_vacuum_flange_simple_v2.gdml 1.3 -> 1.4
diff -u -r1.3 -r1.4
--- ecal_vacuum_flange_simple_v2.gdml	13 Jul 2013 02:44:02 -0000	1.3
+++ ecal_vacuum_flange_simple_v2.gdml	22 Jul 2013 21:14:03 -0000	1.4
@@ -2,11 +2,20 @@
 <!-- 
   ECal vacuum flange based on manufacturing drawings from Stepan.
   @author Sho Uemura <[log in to unmask]>
-  @version $Id: ecal_vacuum_flange_simple_v2.gdml,v 1.3 2013/07/13 02:44:02 meeg Exp $
+  @version $Id: ecal_vacuum_flange_simple_v2.gdml,v 1.4 2013/07/22 21:14:03 meeg Exp $
 -->
 <gdml xmlns:gdml="http://cern.ch/2001/Schemas/GDML" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.lcsim.org/schemas/gdml/1.0/gdml.xsd" >
 
-    <define/>
+    <define>
+        <constant name="front_x" value="0.0"/>
+        <constant name="front_z" value="10.0"/>
+        <constant name="back_x" value="-147.505"/>
+        <constant name="back_z" value="440.0"/>
+        <constant name="chamber_x" value="-140.828"/>
+        <constant name="chamber_z" value="225.0"/>
+        <constant name="ecal_flange_x" value="21.17"/>
+        <constant name="ecal_flange_z" value="1318"/>
+    </define>
 
     <materials>
         <material Z="1" name="G4_Galactic" state="gas">
@@ -23,149 +32,234 @@
     </materials>
 
     <solids>
+        <eltube name="flange_egap_inside_tube" lunit="mm" dx="26.33" dy="26.33" dz="30"/>
+        <eltube name="flange_photontube_inside" lunit="mm" dx="11" dy="11" dz="30"/>
+
         <box lunit="mm" name="front_flange_box" x="768.35" y="457.2" z="20"/>
+        
+        <trap name="front_egap_trap" aunit="deg" lunit="mm" z="30" theta="-4.796" phi="0" 
+              y1="52.66" x1="25.683" x2="25.683" alpha1="0"
+              y2="52.66" x3="29.716" x4="29.716" alpha2="0"/>
+        <trap name="front_chamber_trap" aunit="deg" lunit="mm" z="30" theta="-0.988" phi="0" 
+              y1="16" x1="331.198" x2="331.198" alpha1="0"
+              y2="16" x3="334.064" x4="334.064" alpha2="0"/>
+        
+        <subtraction name="front_minus_chamber">
+            <first ref="front_flange_box"/>
+            <second ref="front_chamber_trap"/>
+            <position name="front_chamber_pos" unit="mm" x="-146.309" y="0" z="0"/>
+        </subtraction>
+        <subtraction name="front_minus_photontube">
+            <first ref="front_minus_chamber"/>
+            <second ref="flange_photontube_inside"/>
+            <position name="front_photontube_pos" unit="mm" x="20.007" y="0" z="0"/>
+            <rotation name="front_photontube_rot" unit="deg" x="0" y="1.748" z="0"/>
+        </subtraction>
+        <subtraction name="front_minus_egap">
+            <first ref="front_minus_photontube"/>
+            <second ref="front_egap_trap"/>
+            <position name="front_egap_pos" unit="mm" x="-44.683" y="0" z="0"/>
+        </subtraction>
+        <subtraction name="front_minus_egapleft">
+            <first ref="front_minus_egap"/>
+            <second ref="flange_egap_inside_tube"/>
+            <position name="front_egapleft_pos" unit="mm" x="-30.833" y="0" z="0"/>
+            <rotation name="front_egapleft_rot" unit="deg" x="0" y="-0.956" z="0"/>
+        </subtraction>
+        <subtraction name="front_minus_egapright">
+            <first ref="front_minus_egapleft"/>
+            <second ref="flange_egap_inside_tube"/>
+            <position name="front_egapright_pos" unit="mm" x="-58.532" y="0" z="0"/>
+            <rotation name="front_egapright_rot" unit="deg" x="0" y="-8.594" z="0"/>
+        </subtraction>
+        
+
         <box lunit="mm" name="back_flange_box" x="505" y="160" z="20"/>
-        <trap name="chamber_trap" aunit="deg" lunit="mm" z="450" theta="1.864" phi="0" 
+
+        <trap name="back_egap_trap" aunit="deg" lunit="mm" z="30" theta="-4.796" phi="0" 
+              y1="52.66" x1="83.493" x2="83.493" alpha1="0"
+              y2="52.66" x3="87.526" x4="87.526" alpha2="0"/>
+        <trap name="back_chamber_trap" aunit="deg" lunit="mm" z="30" theta="-0.988" phi="0" 
+              y1="16" x1="372.279" x2="372.279" alpha1="0"
+              y2="16" x3="375.145" x4="375.145" alpha2="0"/>
+
+        <subtraction name="back_minus_chamber">
+            <first ref="back_flange_box"/>
+            <second ref="back_chamber_trap"/>
+            <position name="back_chamber_pos" unit="mm" x="-153.726-back_x" y="0" z="0"/>
+        </subtraction>
+        <subtraction name="back_minus_photontube">
+            <first ref="back_minus_chamber"/>
+            <second ref="flange_photontube_inside"/>
+            <position name="back_photontube_pos" unit="mm" x="33.130-back_x" y="0" z="0"/>
+            <rotation name="back_photontube_rot" unit="deg" x="0" y="1.748" z="0"/>
+        </subtraction>
+        <subtraction name="back_minus_egap">
+            <first ref="back_minus_photontube"/>
+            <second ref="back_egap_trap"/>
+            <position name="back_egap_pos" unit="mm" x="-80.763-back_x" y="0" z="0"/>
+        </subtraction>
+        <subtraction name="back_minus_egapleft">
+            <first ref="back_minus_egap"/>
+            <second ref="flange_egap_inside_tube"/>
+            <position name="back_egapleft_pos" unit="mm" x="-38.008-back_x" y="0" z="0"/>
+            <rotation name="back_egapleft_rot" unit="deg" x="0" y="-0.956" z="0"/>
+        </subtraction>
+        <subtraction name="back_minus_egapright">
+            <first ref="back_minus_egapleft"/>
+            <second ref="flange_egap_inside_tube"/>
+            <position name="back_egapright_pos" unit="mm" x="-123.518-back_x" y="0" z="0"/>
+            <rotation name="back_egapright_rot" unit="deg" x="0" y="-8.594" z="0"/>
+        </subtraction>
+        
+        
+        
+        <trap name="chamber_trap" aunit="deg" lunit="mm" z="450" theta="-1.864" phi="0" 
               y1="28" x1="377" x2="377" alpha1="0"
               y2="28" x3="406.29" x4="406.29" alpha2="0"/>
 
-        <box lunit="mm" name="chamber_cutaway_box" x="500" y="10" z="265"/>
+        <box lunit="mm" name="chamber_cutaway_box" x="500" y="10" z="300"/>
 
         <subtraction name="chamber_trim1">
             <first ref="chamber_trap"/>
             <second ref="chamber_cutaway_box"/>
-            <position name="chamber_trim1_pos" unit="mm" x="0" y="16" z="-72.5"/>
+            <position name="chamber_trim1_pos" unit="mm" x="0" y="16" z="-90"/>
         </subtraction>
         <subtraction name="chamber_trim2">
             <first ref="chamber_trim1"/>
             <second ref="chamber_cutaway_box"/>
-            <position name="chamber_trim2_pos" unit="mm" x="0" y="-16" z="-72.5"/>
+            <position name="chamber_trim2_pos" unit="mm" x="0" y="-16" z="-90"/>
         </subtraction>
 
-        <union name="ecal_flange_1">
-            <first ref="front_flange_box"/>
-            <second ref="chamber_trim2"/>
-            <position name="chamber_base_pos" unit="mm" x="140.828" y="0" z="215"/>
-        </union>
-        <union name="ecal_flange_2">
-            <first ref="ecal_flange_1"/>
-            <second ref="back_flange_box"/>
-            <position name="back_flange_box_pos" unit="mm" x="147.505" y="0" z="430"/>
-        </union>
-
 
         <eltube name="photontube_outside" lunit="mm" dx="13" dy="13" dz="235"/>
         
-        <union name="flange_with_photontube">
-            <first ref="ecal_flange_2"/>
+        <union name="chamber_with_photontube">
+            <first ref="chamber_trim2"/>
             <second ref="photontube_outside"/>
-            <position name="photontube_outside_pos" unit="mm" x="-26.569" y="0" z="215"/>
-            <rotation name="photontube_outside_rot" unit="deg" x="0" y="-1.748" z="0"/>
+            <position name="photontube_outside_pos" unit="mm" x="26.569-chamber_x" y="0" z="0"/>
+            <rotation name="photontube_outside_rot" unit="deg" x="0" y="1.748" z="0"/>
         </union>
 
 
-        <trap name="egap_outside_trap_upper" aunit="deg" lunit="mm" z="450" theta="4.796" phi="0" 
-              y1="32.33" x1="106.912" x2="52.344" alpha1="-0.269"
-              y2="32.33" x3="167.411" x4="112.843" alpha2="-0.269"/>
-        <trap name="egap_outside_trap_lower" aunit="deg" lunit="mm" z="450" theta="4.796" phi="0" 
-              y1="32.33" x2="106.912" x1="52.344" alpha1="0.269"
-              y2="32.33" x4="167.411" x3="112.843" alpha2="0.269"/>
-        <union name="egap_outside">
-            <first ref="egap_outside_trap_upper"/>
+        <trap name="egap_outside_trap_upper" aunit="deg" lunit="mm" z="450" theta="-4.796" phi="0" 
+              y1="32.33" x1="106.912" x2="52.344" alpha1="0.269"
+              y2="32.33" x3="167.411" x4="112.843" alpha2="0.269"/>
+        <trap name="egap_outside_trap_lower" aunit="deg" lunit="mm" z="450" theta="-4.796" phi="0" 
+              y1="32.33" x2="106.912" x1="52.344" alpha1="-0.269"
+              y2="32.33" x4="167.411" x3="112.843" alpha2="-0.269"/>
+        <union name="chamber_with_egap_upper">
+            <first ref="chamber_with_photontube"/>
+            <second ref="egap_outside_trap_upper"/>
+            <position name="egap_upper_pos" unit="mm" x="-63.810-chamber_x" y="16.165" z="0"/>
+        </union>
+        <union name="chamber_with_egap_lower">
+            <first ref="chamber_with_egap_upper"/>
             <second ref="egap_outside_trap_lower"/>
-            <position name="egap_outside_trap_pos" unit="mm" x="0" y="-32.33" z="0"/>
+            <position name="egap_lower_pos" unit="mm" x="-63.810-chamber_x" y="-16.165" z="0"/>
         </union>
-        <subtraction name="egap_outside_trim1">
-            <first ref="egap_outside"/>
+        <subtraction name="chamber_with_egap_trimtop">
+            <first ref="chamber_with_egap_lower"/>
             <second ref="chamber_cutaway_box"/>
-            <position name="egap_trim1_pos" unit="mm" x="0" y="18.165" z="-72.5"/>
+            <position name="egap_trimtop_pos" unit="mm" x="0" y="34.33" z="-90"/>
         </subtraction>
-        <subtraction name="egap_outside_trim2">
-            <first ref="egap_outside_trim1"/>
+        <subtraction name="chamber_with_egap_trimbot">
+            <first ref="chamber_with_egap_trimtop"/>
             <second ref="chamber_cutaway_box"/>
-            <position name="egap_trim2_pos" unit="mm" x="0" y="-50.495" z="-72.5"/>
-        </subtraction>                
-        
-        <union name="flange_outside">
-            <first ref="flange_with_photontube"/>
-            <second ref="egap_outside_trim2"/>
-            <position name="egap_outside_pos" unit="mm" x="63.810" y="16.165" z="215"/>
-        </union>
+            <position name="egap_trimbot_pos" unit="mm" x="0" y="-34.33" z="-90"/>
+        </subtraction>
 
+        <box lunit="mm" name="chamber_end_box" x="768.35" y="457.2" z="50"/>
 
-        <subtraction name="flange_outside_trim1">
-            <first ref="flange_outside"/>
-            <second ref="front_flange_box"/>
-            <position name="outside_trim1_pos" unit="mm" x="0" y="0" z="-20"/>
-        </subtraction>
-        <subtraction name="flange_outside_trim2">
-            <first ref="flange_outside_trim1"/>
-            <second ref="front_flange_box"/>
-            <position name="outside_trim2_pos" unit="mm" x="0" y="0" z="450"/>
+        <subtraction name="chamber_outside_trim1">
+            <first ref="chamber_with_egap_trimbot"/>
+            <second ref="chamber_end_box"/>
+            <position name="outside_trim1_pos" unit="mm" x="0" y="0" z="-230"/>
+        </subtraction>
+        <subtraction name="chamber_outside_trim2">
+            <first ref="chamber_outside_trim1"/>
+            <second ref="chamber_end_box"/>
+            <position name="outside_trim2_pos" unit="mm" x="0" y="0" z="230"/>
         </subtraction>
 
 
         <eltube name="photontube_inside" lunit="mm" dx="11" dy="11" dz="235"/>
 
-        <subtraction name="flange_minus_photontube">
-            <first ref="flange_outside_trim2"/>
+        <subtraction name="chamber_minus_photontube">
+            <first ref="chamber_outside_trim2"/>
             <second ref="photontube_inside"/>
-            <position name="photontube_inside_pos" unit="mm" x="-26.569" y="0" z="215"/>
-            <rotation name="photontube_inside_rot" unit="deg" x="0" y="-1.748" z="0"/>
+            <position name="photontube_inside_pos" unit="mm" x="26.569-chamber_x" y="0" z="0"/>
+            <rotation name="photontube_inside_rot" unit="deg" x="0" y="1.748" z="0"/>
         </subtraction>
         
         
-        <trap name="chamber_inside_trap" aunit="deg" lunit="mm" z="450" theta="0.988" phi="0" 
+        <trap name="chamber_inside_trap" aunit="deg" lunit="mm" z="450" theta="-0.988" phi="0" 
               y1="16" x1="331.676" x2="331.676" alpha1="0"
               y2="16" x3="374.667" x4="374.667" alpha2="0"/>
 
-        <subtraction name="flange_minus_inside">
-            <first ref="flange_minus_photontube"/>
+        <subtraction name="chamber_minus_inside">
+            <first ref="chamber_minus_photontube"/>
             <second ref="chamber_inside_trap"/>
-            <position name="flange_inside_pos" unit="mm" x="150.017" y="0" z="215"/>
+            <position name="chamber_inside_pos" unit="mm" x="-150.017-chamber_x" y="0" z=""/>
         </subtraction>
 
 
-        <trap name="egap_inside_trap" aunit="deg" lunit="mm" z="450" theta="4.796" phi="0" 
+        <trap name="egap_inside_trap" aunit="deg" lunit="mm" z="450" theta="-4.796" phi="0" 
               y1="52.66" x1="26.355" x2="26.355" alpha1="0"
               y2="52.66" x3="86.854" x4="86.854" alpha2="0"/>
 
-        <subtraction name="flange_minus_egapinside">
-            <first ref="flange_minus_inside"/>
+        <subtraction name="chamber_minus_egapinside">
+            <first ref="chamber_minus_inside"/>
             <second ref="egap_inside_trap"/>
-            <position name="egap_inside_pos" unit="mm" x="62.723" y="0" z="215"/>
+            <position name="egap_inside_pos" unit="mm" x="-62.723-chamber_x" y="0" z="0"/>
         </subtraction>
 
 
         <eltube name="egap_inside_tube" lunit="mm" dx="26.33" dy="26.33" dz="240"/>
 
-        <subtraction name="flange_minus_egap_left">
-            <first ref="flange_minus_egapinside"/>
+        <subtraction name="chamber_minus_egap_left">
+            <first ref="chamber_minus_egapinside"/>
             <second ref="egap_inside_tube"/>
-            <position name="egap_inside_left_pos" unit="mm" x="34.4205" y="0" z="215"/>
-            <rotation name="egap_inside_left_rot" unit="deg" x="0" y="0.956" z="0"/>
+            <position name="egap_inside_left_pos" unit="mm" x="-34.4205-chamber_x" y="0" z="0"/>
+            <rotation name="egap_inside_left_rot" unit="deg" x="0" y="-0.956" z="0"/>
         </subtraction>
-        <subtraction name="flange_minus_egap_right">
-            <first ref="flange_minus_egap_left"/>
+        <subtraction name="chamber_minus_egap_right">
+            <first ref="chamber_minus_egap_left"/>
             <second ref="egap_inside_tube"/>
-            <position name="egap_inside_right_pos" unit="mm" x="91.025" y="0" z="215"/>
-            <rotation name="egap_inside_rightt_rot" unit="deg" x="0" y="8.594" z="0"/>
+            <position name="egap_inside_right_pos" unit="mm" x="-91.025-chamber_x" y="0" z="0"/>
+            <rotation name="egap_inside_right_rot" unit="deg" x="0" y="-8.594" z="0"/>
         </subtraction>
 
         <box lunit="mm" name="WorldBox" x="80000" y="80000" z="80000" /> 
     </solids>
 
     <structure>
-        <volume name="ecal_flange_vol">
+        <volume name="ecal_front_flange_vol">
+            <materialref ref="Aluminum"/>
+            <solidref ref="front_minus_egapright"/>
+        </volume>
+        <volume name="ecal_back_flange_vol">
+            <materialref ref="Aluminum"/>
+            <solidref ref="back_minus_egapright"/>
+        </volume>
+        <volume name="ecal_chamber_vol">
             <materialref ref="Aluminum"/>
-            <solidref ref="flange_minus_egap_right"/>
+            <solidref ref="chamber_minus_egap_right"/>
         </volume>
         <volume name="world_volume" > 
             <materialref ref="G4_Galactic" /> 
             <solidref ref="WorldBox" /> 
             <physvol> 
-                <volumeref ref="ecal_flange_vol" /> 
-                <position name="ecal_flange_position" x="21.17" y="500" z="1328" />      
+                <volumeref ref="ecal_front_flange_vol"/> 
+                <position name="ecal_front_flange_pos" unit="mm" x="ecal_flange_x" y="0" z="ecal_flange_z+front_z"/>
+            </physvol> 
+            <physvol> 
+                <volumeref ref="ecal_back_flange_vol"/> 
+                <position name="ecal_back_flange_pos" unit="mm" x="ecal_flange_x+back_x" y="0" z="ecal_flange_z+back_z"/>
+            </physvol> 
+            <physvol> 
+                <volumeref ref="ecal_chamber_vol"/> 
+                <position name="ecal_chamber_pos" unit="mm" x="ecal_flange_x+chamber_x" y="0" z="ecal_flange_z+chamber_z"/>
             </physvol> 
         </volume> 
     </structure>
CVSspam 0.2.12


Use REPLY-ALL to reply to list

To unsubscribe from the LCD-CVS list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=LCD-CVS&A=1