Go to the source code of this file.
Macros | |
#define | the racetrack geometrical parameters |
Functions | |
Math::BigFloat | precision (-16) |
GetOptions ("help|h"=>\$help,"suffix|s:s"=>\$suffix,"output|o:s"=>\$output,"concrete|c:s"=>\$thickness_over,"wires|w:s"=>\$wires,"vetocrt|v:s"=>\$crt) | |
if (defined $help) | |
if (!defined $suffix) | |
gen_Define () | |
gen_Materials () | |
gen_RaceTracks () | |
gen_TPC () | |
gen_PMT () | |
gen_Mech_Structure () | |
gen_Cryostat () | |
if ($crt_on==1) | |
gen_Enclosure () | |
gen_World () | |
write_fragments () | |
sub | usage () |
sub | define_RaceTrack () |
push (@gdmlFiles, $RACETRACK) | |
open (RACETRACK) or die("Could not open file $RACETRACK for writing") | |
for ($it=0;$it< $RaceTrack_number;$it++) | |
open (PMT) or die("Could not open file $PMT for writing") | |
open (MECH) or die("Could not open file $MECH for writing") | |
sub | gen_CRT () |
Variables | |
else | |
$inch = 2.54 | |
$YWirePitch = 0.3 | |
$UWirePitch = 0.3 | |
$VWirePitch = 0.3 | |
$UAngle = 60 | |
$VAngle = 60 | |
$SinUAngle = sin( deg2rad($UAngle) ) | |
$CosUAngle = cos( deg2rad($UAngle) ) | |
$TanUAngle = tan( deg2rad($UAngle) ) | |
$SinVAngle = sin( deg2rad($VAngle) ) | |
$CosVAngle = cos( deg2rad($VAngle) ) | |
$TanVAngle = tan( deg2rad($VAngle) ) | |
$UWire_ypitch = $UWirePitch / $CosUAngle | |
$UWire_zpitch = $UWirePitch / $SinUAngle | |
$VWire_ypitch = $VWirePitch / $CosVAngle | |
$VWire_zpitch = $VWirePitch / $SinVAngle | |
$TPCWireThickness = 0.015 | |
$TPCWireRadius = $TPCWireThickness /2 | |
$CommonWireLength = (1056 * $YWirePitch) / $SinUAngle | |
$CPA_x = 0.15 | |
$WirePlaneSpacing = 0.3 | |
$MaxDrift = 148.2 | |
$SpaceWirePlToWall = 31.8 | |
$SpaceWirePlToWirePl = 85 | |
$SpaceTPCToFloor = 36 | |
$SpaceTPCToTopLAr = 29.5 | |
$UpstreamLArPadding = 90.0 | |
$DownstreamLArPadding = 90.0 | |
$CPA_epsi = 0.001 | |
$CPA_y = 320 | |
$CPA_z = 1800 | |
$CPAStrip_x = $CPA_x-$CPA_epsi | |
$CPAStrip_y = 2.1 | |
$CPAStrip_pitch = 5 | |
$TPCActive_x = $MaxDrift | |
$TPCActive_y = $CommonWireLength * $SinUAngle + 0.02 | |
$TPCActive_z = $CommonWireLength * $CosUAngle + (4640 - 1) * $UWire_zpitch - 0.000000000002 | |
$TPCActiveHalf_z = $TPCActive_z/2 | |
$TPCWirePlane_x = 2*$TPCWireThickness | |
$TPCWirePlane_y = $TPCActive_y | |
$TPCWirePlane_z = $TPCActive_z | |
$TPCWirePlaneHalf_z = $TPCActiveHalf_z | |
$TPC_x = $MaxDrift+ 6*$TPCWireThickness + 3*$WirePlaneSpacing + $CPA_x | |
$DeltaLUCorner = $UWirePitch/($SinUAngle*$CosUAngle) | |
$DeltaLVCorner = $VWirePitch/($SinVAngle*$CosVAngle) | |
$LAr_x | |
$LAr_y | |
$LAr_z | |
$LArHalf_z = $TPCActiveHalf_z + $UpstreamLArPadding | |
$TPC_y = $LAr_y | |
$TPC_z = $LAr_z | |
$TPCHalf_z = $LArHalf_z | |
$AlumThickness = 19 | |
$GaseousAr_y = 6.5 | |
$CryoDist = 20 | |
$Cryostat_x = $LAr_x + 2*$AlumThickness | |
$Cryostat_y = $TPC_y + $GaseousAr_y + 2*$AlumThickness | |
$Cryostat_z = $TPC_z + 2*$AlumThickness | |
$LAr_x_orig = 2*$LAr_x + 2*$AlumThickness + $CryoDist | |
$Cryostat_x_orig = $LAr_x_orig + 2*$AlumThickness | |
$TPCinCryo_x [0] = - $TPC_x/2 - $CPA_x/2 | |
$posCat_x = 0 | |
$TPCinCryo_y = -$GaseousAr_y/2 | |
$TPCinCryo_z = 0. | |
$TPCinCryo_zneg = (-$TPCHalf_z/2) | |
$TPCinCryo_zpos = ( $TPCHalf_z/2) | |
$posTPCActive0_x = 0.570000000000007 | |
$posTPCActive_y = 0 | |
$posTPCActive_z = $UpstreamLArPadding/2 | |
$struct_width = 10. | |
$ext_struct_x = $struct_width | |
$ext_struct_y = 341.8 | |
$ext_struct_z = 199.532 | |
$int_struct_x = $ext_struct_x | |
$int_struct_y = $ext_struct_y - 2*$struct_width | |
$int_struct_z = $ext_struct_z - 2*$struct_width | |
$NumberPMT = 90 | |
$PMTthickness = 0.5 | |
$PMTradius = 4*$inch | |
$PMTradiusOuter = 4*$inch | |
$PMTradiusInner = $PMTradiusOuter - $PMTthickness | |
$PMTGrid_offset = 2 | |
$PMTx = 0.557*$PMTradiusOuter | |
$PMTtubeRmax = 4.225 | |
$PMTtubeRmin = 3.725 | |
$PMTtube_x = 2*$PMTtubeRmax | |
$PMTPlane_x = 2*$PMTradius+$PMTGrid_offset+$PMTtube_x | |
$PMTPlane_y = $ext_struct_y + 6. | |
$PMTPlane_z = 9*$ext_struct_z + 2*$struct_width + 6. | |
$PMTWiresOffset = 0.5 | |
$FoamPadding = 60 | |
$WarmVesselThickness = 27.4 | |
$WarmVesselThickness_x = 21.8 | |
$SpaceTop = 22.4 | |
$SpaceUpstream = 65.55 | |
$SpaceDownstream = 15.55 | |
$SpaceBottom = 18.0 | |
$ThermIns_x = 2*$Cryostat_x+2*$FoamPadding + 3*$CryoDist | |
$ThermIns_y = $Cryostat_y+2*$FoamPadding+$SpaceTop+$SpaceBottom | |
$ThermIns_z = $Cryostat_z+2*$FoamPadding+$SpaceUpstream+$SpaceDownstream | |
$ThermInsInDetEncl_x = 0 | |
$ThermInsInDetEncl_z = 0 | |
$WarmVessel_x = $ThermIns_x+2*$WarmVesselThickness_x | |
$WarmVessel_y = $ThermIns_y+2*$WarmVesselThickness | |
$WarmVessel_z = $ThermIns_z+2*$WarmVesselThickness | |
$WarmVesselInDetEncl_x = 0 | |
$WarmVesselInDetEncl_z = 0 | |
$Cryo1InWarmVessel_x = -$Cryostat_x/2 - $CryoDist | |
$Cryo2InWarmVessel_x = $Cryostat_x/2 + $CryoDist | |
$CryoInWarmVessel_z = 0 | |
$OriginXSet = 0 | |
$OriginYSet = 0 | |
$OriginZSet = 0 | |
$Building_y = 1040.0 | |
$ExpHall_y = 1170.0 + 80 | |
$Hall_x = 1890.0 | |
$Hall_y = $Building_y + $ExpHall_y | |
$Hall_z = 3870.0 | |
$HallWallThicnekss = 60 | |
$Overburden_yDefault = 300 | |
$Overburden_x = 1830.0 | |
$Overburden_y = $concrete_on | |
$Overburden_z = 3810.0 | |
$posOverburden_x = $OriginXSet | |
$posOverburden_z = $OriginZSet | |
$ExpHall_VertSpace = $ExpHall_y - $HallWallThicnekss - $Overburden_y/3 | |
$DetEnc_pad = 0.1 | |
$DetEnc_x = 1245 | |
$DetEnc_y = $ExpHall_VertSpace - 2*$DetEnc_pad | |
$DetEnc_z = 3200 | |
$WarmVessel_FootHeight = 6.0 | |
$WarmVessel_FloorSpace = 10.16 | |
$WarmVessel_CenterToFloor = $WarmVessel_FootHeight + $WarmVessel_FloorSpace + $WarmVessel_y/2 | |
$World_x = 1e4 | |
$World_y = 1e4 | |
$World_z = 1e4 | |
$CRTSHELL_WV_OFFSET_Y = 15 | |
$CRTSHELL_WV_OFFSET_Z = 164.5865 | |
$Ground_y = 780.0 | |
$DetEncl_yOffset = $Ground_y - $Overburden_y/3 - $ExpHall_VertSpace/2 -$DetEnc_pad | |
$ThermInsInDetEncl_y = -1*$DetEncl_yOffset | |
$WarmVesselInDetEncl_y = $ThermInsInDetEncl_y | |
$CryoInWarmVessel_y = $WarmVesselInDetEncl_y -$WarmVessel_y/2 + $FoamPadding + $WarmVesselThickness + $Cryostat_y/2 | |
exit | |
sub | gen_RaceTracks |
$RACETRACK = "icarus_racetracks" . $suffix . ".gdml" | |
print RACETRACK<< EOF;<?xml version='1.0'?>< gdml > EOF | $RTy_T = ($RaceTrack_ly - $RaceTrack_thickness )/2. + $RT_epsilon |
$RTy_B =-($RaceTrack_ly - $RaceTrack_thickness )/2. + $RT_epsilon | |
$RTx_T = ($TPC_x - $RaceTrack_pitch -$RaceTrack_width )/2. | |
$RTx_B = $RTx_T | |
$RTx_U = $RTx_T | |
$RTz_U = -($RaceTrackT_length - $RaceTrack_thickness)/2. - $RT_epsilon + 45 - ($RaceTrackT_length - $TPCActiveHalf_z)/2 | |
$RTx_D = $RTx_T | |
$RTz_D = -$RTz_U | |
$RTz_T = 45 - ($RaceTrackT_length - $TPCActiveHalf_z)/2 | |
$RTz_B = 45 - ($RaceTrackT_length - $TPCActiveHalf_z)/2 | |
print RACETRACK<< EOF;< define > < positionname="posRaceTrackTInTPC"unit="cm"x="$RTx_T"y="$RTy_T"z="$RTz_T"/> < positionname="posRaceTrackBInTPC"unit="cm"x="$RTx_B"y="$RTy_B"z="$RTz_B"/> < positionname="posRaceTrackUInTPC"unit="cm"x="$RTx_U"y="0"z="$RTz_U"/> < positionname="posRaceTrackDInTPC"unit="cm"x="$RTx_D"y="0"z="$RTz_D"/> </define > <!--+++++++++++++++++++RACETRACKSolids+++++++++++++++++++--> EOF print RACETRACK<< EOF; < solids >< boxname="RaceTrackTVolume"x="$RaceTrack_width"y="$RaceTrack_thickness"z="$RaceTrackT_length"lunit="cm"/> < boxname="RaceTrackBVolume"x="$RaceTrack_width"y="$RaceTrack_thickness"z="$RaceTrackB_length"lunit="cm"/> < boxname="RaceTrackUVolume"x="$RaceTrack_width"y="$RaceTrack_thickness"z="$RaceTrackU_length"lunit="cm"/> < tubename="RaceTrackTTubeVolume"rmax="$RaceTrack_ExternalRadius"rmin="$RaceTrack_InnerRadius"z="$RaceTrackTTube_length"deltaphi="360"aunit="deg"lunit="cm"/> < tubename="RaceTrackBTubeVolume"rmax="$RaceTrack_ExternalRadius"rmin="$RaceTrack_InnerRadius"z="$RaceTrackBTube_length"deltaphi="360"aunit="deg"lunit="cm"/> < tubename="RaceTrackUTubeVolume"rmax="$RaceTrack_ExternalRadius"rmin="$RaceTrack_InnerRadius"z="$RaceTrackUTube_length"deltaphi="360"aunit="deg"lunit="cm"/> </solids > EOF print RACETRACK << EOF;< structure > <!--+++++++++++++++++RACETRACKLogicalVolumes++++++++++++++++++++--> < volumename="volRaceTrackTTubeVolume"> < materialrefref="STEEL_STAINLESS_Fe7Cr2Ni"/> < solidrefref="RaceTrackTTubeVolume"/> </volume >< volumename="volRaceTrackBTubeVolume"> < materialrefref="STEEL_STAINLESS_Fe7Cr2Ni"/> < solidrefref="RaceTrackBTubeVolume"/> </volume >< volumename="volRaceTrackUTubeVolume"> < materialrefref="STEEL_STAINLESS_Fe7Cr2Ni"/> < solidrefref="RaceTrackUTubeVolume"/> </volume > EOF print RACETRACK << EOF; <!--+++++++++++++++++RACETRACK Top Volume++++++++++++++++++++--> < volumename="volRaceTrackTVolume"> < materialrefref="LAr"/> < solidrefref="RaceTrackTVolume"/> EOF | $xTpos =-($RaceTrack_width - $RaceTrack_pitch - $RT_epsilon )/2. |
print RACETRACK<< EOF;</volume > EOF print RACETRACK<< EOF; <!--+++++++++++++++++RACETRACK end structure+++++++++++++++++++--> </structure > EOF print RACETRACK<< EOF;</gdml > EOF sub | gen_PMT |
$PMT = ">" . $PMT | |
print PMT<< EOF;<?xml version='1.0'?> < gdml > EOF print PMT<< EOF; <!--+++++++++++++++++++PMT Solids++++++++++++++++++++++--> EOF print PMT<< EOF;< solids > < spherename="PMTVolume"rmin="$PMTradiusInner"rmax="$PMTradiusOuter"deltaphi="360"deltatheta="90"aunit="deg"lunit="cm"/> < spherename="PMTPassSphere"rmin="$PMTradiusInner"rmax="$PMTradiusOuter"deltaphi="360"deltatheta="90"aunit="deg"lunit="cm"/> < tubename="PMTPassTube"rmax="$PMTtubeRmax"rmin="$PMTtubeRmin"z="$PMTtube_x"deltaphi="360"aunit="deg"lunit="cm"/> < unionname="PMTPassVolume"> < firstref="PMTPassSphere"/> < secondref="PMTPassTube"/> < positionrefref="PMTtube"/> < rotationrefref="rMinus90AboutZ"/> </union ></solids > EOF print PMT<< EOF;< structure > <!--+++++++++++++++++PMTLogicalVolumes++++++++++++++++++++--> < volumename="volOpDetSensitive"> < materialrefref="LAr"/> < solidrefref="PMTVolume"/> </volume >< volumename="volNotOpDetSensitive"> < materialrefref="Glass"/> < solidrefref="PMTPassVolume"/> </volume ></structure > EOF print PMT<< EOF;</gdml > EOF sub | gen_Mech_Structure |
$MECH = ">" . $MECH | |
#define the racetrack geometrical parameters |
sub define_RaceTrack | ( | ) |
Definition at line 1511 of file generate_icarus_geometry_splitwire.pl.
for | ( | ) |
Definition at line 1671 of file generate_icarus_geometry_splitwire.pl.
sub gen_CRT | ( | ) |
Definition at line 2153 of file generate_icarus_geometry_splitwire.pl.
sub gen_Cryostat | ( | ) |
Definition at line 1139 of file generate_ICARUS.pl.
sub gen_Define | ( | ) |
Definition at line 454 of file generate_icarus_geometry_splitwire.pl.
sub gen_Enclosure | ( | ) |
Definition at line 2192 of file generate_icarus_geometry_splitwire.pl.
sub gen_Materials | ( | ) |
Definition at line 517 of file generate_icarus_geometry_splitwire.pl.
gen_Mech_Structure | ( | ) |
gen_PMT | ( | ) |
gen_RaceTracks | ( | ) |
sub gen_TPC | ( | ) |
Definition at line 830 of file generate_icarus_geometry_splitwire.pl.
sub gen_World | ( | ) |
Definition at line 2332 of file generate_icarus_geometry_splitwire.pl.
GetOptions | ( | "help|h" | , |
\ | $help, | ||
"suffix|s:s" | , | ||
\ | $suffix, | ||
"output|o:s" | , | ||
\ | $output, | ||
"concrete|c:s" | , | ||
\ | $thickness_over, | ||
"wires|w:s" | , | ||
\ | $wires, | ||
"vetocrt|v:s" | , | ||
\ | $crt | ||
) |
if | ( | defined | $help | ) |
Definition at line 25 of file generate_icarus_geometry_splitwire.pl.
if | ( | !defined | $suffix | ) |
Definition at line 32 of file generate_icarus_geometry_splitwire.pl.
if | ( | $crt_on = =1 | ) |
Definition at line 422 of file generate_icarus_geometry_splitwire.pl.
open | ( | RACETRACK | ) |
open | ( | PMT | ) |
open | ( | MECH | ) |
Math::BigFloat precision | ( | - | 16 | ) |
push | ( | @ | gdmlFiles, |
$RACETRACK | |||
) |
sub usage | ( | ) |
Definition at line 436 of file generate_icarus_geometry_splitwire.pl.
sub write_fragments | ( | ) |
Definition at line 1168 of file generate_gdml_simple.pl.
$AlumThickness = 19 |
Definition at line 196 of file generate_icarus_geometry_splitwire.pl.
$Building_y = 1040.0 |
Definition at line 348 of file generate_icarus_geometry_splitwire.pl.
$CommonWireLength = (1056 * $YWirePitch) / $SinUAngle |
Definition at line 112 of file generate_icarus_geometry_splitwire.pl.
$CosUAngle = cos( deg2rad($UAngle) ) |
Definition at line 91 of file generate_icarus_geometry_splitwire.pl.
$CosVAngle = cos( deg2rad($VAngle) ) |
Definition at line 95 of file generate_icarus_geometry_splitwire.pl.
$CPA_epsi = 0.001 |
Definition at line 138 of file generate_icarus_geometry_splitwire.pl.
$CPA_x = 0.15 |
Definition at line 119 of file generate_icarus_geometry_splitwire.pl.
$CPA_y = 320 |
Definition at line 139 of file generate_icarus_geometry_splitwire.pl.
$CPA_z = 1800 |
Definition at line 140 of file generate_icarus_geometry_splitwire.pl.
$CPAStrip_pitch = 5 |
Definition at line 143 of file generate_icarus_geometry_splitwire.pl.
$CPAStrip_x = $CPA_x-$CPA_epsi |
Definition at line 141 of file generate_icarus_geometry_splitwire.pl.
$CPAStrip_y = 2.1 |
Definition at line 142 of file generate_icarus_geometry_splitwire.pl.
$CRTSHELL_WV_OFFSET_Y = 15 |
Definition at line 391 of file generate_icarus_geometry_splitwire.pl.
$CRTSHELL_WV_OFFSET_Z = 164.5865 |
Definition at line 392 of file generate_icarus_geometry_splitwire.pl.
$Cryo1InWarmVessel_x = -$Cryostat_x/2 - $CryoDist |
Definition at line 323 of file generate_icarus_geometry_splitwire.pl.
$Cryo2InWarmVessel_x = $Cryostat_x/2 + $CryoDist |
Definition at line 324 of file generate_icarus_geometry_splitwire.pl.
$CryoDist = 20 |
Definition at line 198 of file generate_icarus_geometry_splitwire.pl.
$CryoInWarmVessel_y = $WarmVesselInDetEncl_y -$WarmVessel_y/2 + $FoamPadding + $WarmVesselThickness + $Cryostat_y/2 |
Definition at line 401 of file generate_icarus_geometry_splitwire.pl.
$CryoInWarmVessel_z = 0 |
Definition at line 327 of file generate_icarus_geometry_splitwire.pl.
$Cryostat_x = $LAr_x + 2*$AlumThickness |
Definition at line 200 of file generate_icarus_geometry_splitwire.pl.
$Cryostat_x_orig = $LAr_x_orig + 2*$AlumThickness |
Definition at line 211 of file generate_icarus_geometry_splitwire.pl.
$Cryostat_y = $TPC_y + $GaseousAr_y + 2*$AlumThickness |
Definition at line 204 of file generate_icarus_geometry_splitwire.pl.
$Cryostat_z = $TPC_z + 2*$AlumThickness |
Definition at line 205 of file generate_icarus_geometry_splitwire.pl.
$DeltaLUCorner = $UWirePitch/($SinUAngle*$CosUAngle) |
Definition at line 174 of file generate_icarus_geometry_splitwire.pl.
$DeltaLVCorner = $VWirePitch/($SinVAngle*$CosVAngle) |
Definition at line 175 of file generate_icarus_geometry_splitwire.pl.
$DetEnc_pad = 0.1 |
Definition at line 376 of file generate_icarus_geometry_splitwire.pl.
$DetEnc_x = 1245 |
Definition at line 377 of file generate_icarus_geometry_splitwire.pl.
$DetEnc_y = $ExpHall_VertSpace - 2*$DetEnc_pad |
Definition at line 378 of file generate_icarus_geometry_splitwire.pl.
$DetEnc_z = 3200 |
Definition at line 379 of file generate_icarus_geometry_splitwire.pl.
$DetEncl_yOffset = $Ground_y - $Overburden_y/3 - $ExpHall_VertSpace/2 -$DetEnc_pad |
Definition at line 398 of file generate_icarus_geometry_splitwire.pl.
$DownstreamLArPadding = 90.0 |
Definition at line 133 of file generate_icarus_geometry_splitwire.pl.
$ExpHall_VertSpace = $ExpHall_y - $HallWallThicnekss - $Overburden_y/3 |
Definition at line 375 of file generate_icarus_geometry_splitwire.pl.
$ExpHall_y = 1170.0 + 80 |
Definition at line 349 of file generate_icarus_geometry_splitwire.pl.
$ext_struct_x = $struct_width |
Definition at line 245 of file generate_icarus_geometry_splitwire.pl.
$ext_struct_y = 341.8 |
Definition at line 246 of file generate_icarus_geometry_splitwire.pl.
$ext_struct_z = 199.532 |
Definition at line 247 of file generate_icarus_geometry_splitwire.pl.
$FoamPadding = 60 |
Definition at line 285 of file generate_icarus_geometry_splitwire.pl.
$GaseousAr_y = 6.5 |
Definition at line 197 of file generate_icarus_geometry_splitwire.pl.
$Ground_y = 780.0 |
Definition at line 397 of file generate_icarus_geometry_splitwire.pl.
$Hall_x = 1890.0 |
Definition at line 351 of file generate_icarus_geometry_splitwire.pl.
$Hall_y = $Building_y + $ExpHall_y |
Definition at line 352 of file generate_icarus_geometry_splitwire.pl.
$Hall_z = 3870.0 |
Definition at line 353 of file generate_icarus_geometry_splitwire.pl.
$HallWallThicnekss = 60 |
Definition at line 355 of file generate_icarus_geometry_splitwire.pl.
$inch = 2.54 |
Definition at line 76 of file generate_icarus_geometry_splitwire.pl.
$int_struct_x = $ext_struct_x |
Definition at line 248 of file generate_icarus_geometry_splitwire.pl.
$int_struct_y = $ext_struct_y - 2*$struct_width |
Definition at line 249 of file generate_icarus_geometry_splitwire.pl.
$int_struct_z = $ext_struct_z - 2*$struct_width |
Definition at line 250 of file generate_icarus_geometry_splitwire.pl.
$LAr_x |
Definition at line 180 of file generate_icarus_geometry_splitwire.pl.
$LAr_x_orig = 2*$LAr_x + 2*$AlumThickness + $CryoDist |
Definition at line 209 of file generate_icarus_geometry_splitwire.pl.
$LAr_y |
Definition at line 182 of file generate_icarus_geometry_splitwire.pl.
$LAr_z |
Definition at line 185 of file generate_icarus_geometry_splitwire.pl.
$LArHalf_z = $TPCActiveHalf_z + $UpstreamLArPadding |
Definition at line 188 of file generate_icarus_geometry_splitwire.pl.
$MaxDrift = 148.2 |
Definition at line 121 of file generate_icarus_geometry_splitwire.pl.
$MECH = ">" . $MECH |
Definition at line 1854 of file generate_icarus_geometry_splitwire.pl.
$NumberPMT = 90 |
Definition at line 255 of file generate_icarus_geometry_splitwire.pl.
$OriginXSet = 0 |
Definition at line 342 of file generate_icarus_geometry_splitwire.pl.
$OriginYSet = 0 |
Definition at line 343 of file generate_icarus_geometry_splitwire.pl.
$OriginZSet = 0 |
Definition at line 344 of file generate_icarus_geometry_splitwire.pl.
$Overburden_x = 1830.0 |
Definition at line 364 of file generate_icarus_geometry_splitwire.pl.
$Overburden_y = $concrete_on |
Definition at line 365 of file generate_icarus_geometry_splitwire.pl.
$Overburden_yDefault = 300 |
Definition at line 356 of file generate_icarus_geometry_splitwire.pl.
$Overburden_z = 3810.0 |
Definition at line 366 of file generate_icarus_geometry_splitwire.pl.
Definition at line 1769 of file generate_icarus_geometry_splitwire.pl.
$PMTGrid_offset = 2 |
Definition at line 260 of file generate_icarus_geometry_splitwire.pl.
$PMTPlane_x = 2*$PMTradius+$PMTGrid_offset+$PMTtube_x |
Definition at line 267 of file generate_icarus_geometry_splitwire.pl.
$PMTPlane_y = $ext_struct_y + 6. |
Definition at line 269 of file generate_icarus_geometry_splitwire.pl.
$PMTPlane_z = 9*$ext_struct_z + 2*$struct_width + 6. |
Definition at line 271 of file generate_icarus_geometry_splitwire.pl.
$PMTradius = 4*$inch |
Definition at line 257 of file generate_icarus_geometry_splitwire.pl.
$PMTradiusInner = $PMTradiusOuter - $PMTthickness |
Definition at line 259 of file generate_icarus_geometry_splitwire.pl.
$PMTradiusOuter = 4*$inch |
Definition at line 258 of file generate_icarus_geometry_splitwire.pl.
$PMTthickness = 0.5 |
Definition at line 256 of file generate_icarus_geometry_splitwire.pl.
$PMTtube_x = 2*$PMTtubeRmax |
Definition at line 265 of file generate_icarus_geometry_splitwire.pl.
$PMTtubeRmax = 4.225 |
Definition at line 263 of file generate_icarus_geometry_splitwire.pl.
$PMTtubeRmin = 3.725 |
Definition at line 264 of file generate_icarus_geometry_splitwire.pl.
$PMTWiresOffset = 0.5 |
Definition at line 272 of file generate_icarus_geometry_splitwire.pl.
$PMTx = 0.557*$PMTradiusOuter |
Definition at line 261 of file generate_icarus_geometry_splitwire.pl.
$posCat_x = 0 |
Definition at line 219 of file generate_icarus_geometry_splitwire.pl.
$posOverburden_x = $OriginXSet |
Definition at line 370 of file generate_icarus_geometry_splitwire.pl.
$posOverburden_z = $OriginZSet |
Definition at line 372 of file generate_icarus_geometry_splitwire.pl.
$posTPCActive0_x = 0.570000000000007 |
Definition at line 235 of file generate_icarus_geometry_splitwire.pl.
$posTPCActive_y = 0 |
Definition at line 237 of file generate_icarus_geometry_splitwire.pl.
$posTPCActive_z = $UpstreamLArPadding/2 |
Definition at line 238 of file generate_icarus_geometry_splitwire.pl.
$RACETRACK = "icarus_racetracks" . $suffix . ".gdml" |
Definition at line 1549 of file generate_icarus_geometry_splitwire.pl.
$RTx_B = $RTx_T |
Definition at line 1566 of file generate_icarus_geometry_splitwire.pl.
$RTx_D = $RTx_T |
Definition at line 1569 of file generate_icarus_geometry_splitwire.pl.
$RTx_T = ($TPC_x - $RaceTrack_pitch -$RaceTrack_width )/2. |
Definition at line 1565 of file generate_icarus_geometry_splitwire.pl.
$RTx_U = $RTx_T |
Definition at line 1567 of file generate_icarus_geometry_splitwire.pl.
$RTy_B =-($RaceTrack_ly - $RaceTrack_thickness )/2. + $RT_epsilon |
Definition at line 1564 of file generate_icarus_geometry_splitwire.pl.
print RACETRACK<<EOF; <?xml version='1.0'?><gdml> EOF $RTy_T = ($RaceTrack_ly - $RaceTrack_thickness )/2. + $RT_epsilon |
Definition at line 1563 of file generate_icarus_geometry_splitwire.pl.
$RTz_B = 45 - ($RaceTrackT_length - $TPCActiveHalf_z)/2 |
Definition at line 1572 of file generate_icarus_geometry_splitwire.pl.
$RTz_D = -$RTz_U |
Definition at line 1570 of file generate_icarus_geometry_splitwire.pl.
$RTz_T = 45 - ($RaceTrackT_length - $TPCActiveHalf_z)/2 |
Definition at line 1571 of file generate_icarus_geometry_splitwire.pl.
$RTz_U = -($RaceTrackT_length - $RaceTrack_thickness)/2. - $RT_epsilon + 45 - ($RaceTrackT_length - $TPCActiveHalf_z)/2 |
Definition at line 1568 of file generate_icarus_geometry_splitwire.pl.
$SinUAngle = sin( deg2rad($UAngle) ) |
Definition at line 90 of file generate_icarus_geometry_splitwire.pl.
$SinVAngle = sin( deg2rad($VAngle) ) |
Definition at line 94 of file generate_icarus_geometry_splitwire.pl.
$SpaceBottom = 18.0 |
Definition at line 291 of file generate_icarus_geometry_splitwire.pl.
$SpaceDownstream = 15.55 |
Definition at line 290 of file generate_icarus_geometry_splitwire.pl.
$SpaceTop = 22.4 |
Definition at line 288 of file generate_icarus_geometry_splitwire.pl.
$SpaceTPCToFloor = 36 |
Definition at line 128 of file generate_icarus_geometry_splitwire.pl.
$SpaceTPCToTopLAr = 29.5 |
Definition at line 129 of file generate_icarus_geometry_splitwire.pl.
$SpaceUpstream = 65.55 |
Definition at line 289 of file generate_icarus_geometry_splitwire.pl.
$SpaceWirePlToWall = 31.8 |
Definition at line 124 of file generate_icarus_geometry_splitwire.pl.
$SpaceWirePlToWirePl = 85 |
Definition at line 125 of file generate_icarus_geometry_splitwire.pl.
$struct_width = 10. |
Definition at line 244 of file generate_icarus_geometry_splitwire.pl.
$TanUAngle = tan( deg2rad($UAngle) ) |
Definition at line 92 of file generate_icarus_geometry_splitwire.pl.
$TanVAngle = tan( deg2rad($VAngle) ) |
Definition at line 96 of file generate_icarus_geometry_splitwire.pl.
$ThermIns_x = 2*$Cryostat_x+2*$FoamPadding + 3*$CryoDist |
Definition at line 294 of file generate_icarus_geometry_splitwire.pl.
$ThermIns_y = $Cryostat_y+2*$FoamPadding+$SpaceTop+$SpaceBottom |
Definition at line 295 of file generate_icarus_geometry_splitwire.pl.
$ThermIns_z = $Cryostat_z+2*$FoamPadding+$SpaceUpstream+$SpaceDownstream |
Definition at line 296 of file generate_icarus_geometry_splitwire.pl.
$ThermInsInDetEncl_x = 0 |
Definition at line 301 of file generate_icarus_geometry_splitwire.pl.
$ThermInsInDetEncl_y = -1*$DetEncl_yOffset |
Definition at line 399 of file generate_icarus_geometry_splitwire.pl.
$ThermInsInDetEncl_z = 0 |
Definition at line 303 of file generate_icarus_geometry_splitwire.pl.
$TPC_x = $MaxDrift+ 6*$TPCWireThickness + 3*$WirePlaneSpacing + $CPA_x |
Definition at line 171 of file generate_icarus_geometry_splitwire.pl.
$TPC_y = $LAr_y |
Definition at line 192 of file generate_icarus_geometry_splitwire.pl.
$TPC_z = $LAr_z |
Definition at line 193 of file generate_icarus_geometry_splitwire.pl.
$TPCActive_x = $MaxDrift |
Definition at line 149 of file generate_icarus_geometry_splitwire.pl.
$TPCActive_y = $CommonWireLength * $SinUAngle + 0.02 |
Definition at line 150 of file generate_icarus_geometry_splitwire.pl.
$TPCActive_z = $CommonWireLength * $CosUAngle + (4640 - 1) * $UWire_zpitch - 0.000000000002 |
Definition at line 156 of file generate_icarus_geometry_splitwire.pl.
$TPCActiveHalf_z = $TPCActive_z/2 |
Definition at line 157 of file generate_icarus_geometry_splitwire.pl.
$TPCHalf_z = $LArHalf_z |
Definition at line 194 of file generate_icarus_geometry_splitwire.pl.
$TPCinCryo_x[1] = - $TPC_x/2 - $CPA_x/2 |
Definition at line 214 of file generate_icarus_geometry_splitwire.pl.
$TPCinCryo_y = -$GaseousAr_y/2 |
Definition at line 227 of file generate_icarus_geometry_splitwire.pl.
$TPCinCryo_z = 0. |
Definition at line 228 of file generate_icarus_geometry_splitwire.pl.
$TPCinCryo_zneg = (-$TPCHalf_z/2) |
Definition at line 232 of file generate_icarus_geometry_splitwire.pl.
$TPCinCryo_zpos = ( $TPCHalf_z/2) |
Definition at line 233 of file generate_icarus_geometry_splitwire.pl.
$TPCWirePlane_x = 2*$TPCWireThickness |
Definition at line 162 of file generate_icarus_geometry_splitwire.pl.
$TPCWirePlane_y = $TPCActive_y |
Definition at line 163 of file generate_icarus_geometry_splitwire.pl.
$TPCWirePlane_z = $TPCActive_z |
Definition at line 164 of file generate_icarus_geometry_splitwire.pl.
$TPCWirePlaneHalf_z = $TPCActiveHalf_z |
Definition at line 165 of file generate_icarus_geometry_splitwire.pl.
$TPCWireRadius = $TPCWireThickness /2 |
Definition at line 110 of file generate_icarus_geometry_splitwire.pl.
$TPCWireThickness = 0.015 |
Definition at line 109 of file generate_icarus_geometry_splitwire.pl.
$UAngle = 60 |
Definition at line 87 of file generate_icarus_geometry_splitwire.pl.
$UpstreamLArPadding = 90.0 |
Definition at line 132 of file generate_icarus_geometry_splitwire.pl.
$UWire_ypitch = $UWirePitch / $CosUAngle |
Definition at line 100 of file generate_icarus_geometry_splitwire.pl.
$UWire_zpitch = $UWirePitch / $SinUAngle |
Definition at line 101 of file generate_icarus_geometry_splitwire.pl.
$UWirePitch = 0.3 |
Definition at line 82 of file generate_icarus_geometry_splitwire.pl.
$VAngle = 60 |
Definition at line 88 of file generate_icarus_geometry_splitwire.pl.
$VWire_ypitch = $VWirePitch / $CosVAngle |
Definition at line 105 of file generate_icarus_geometry_splitwire.pl.
$VWire_zpitch = $VWirePitch / $SinVAngle |
Definition at line 106 of file generate_icarus_geometry_splitwire.pl.
$VWirePitch = 0.3 |
Definition at line 83 of file generate_icarus_geometry_splitwire.pl.
$WarmVessel_CenterToFloor = $WarmVessel_FootHeight + $WarmVessel_FloorSpace + $WarmVessel_y/2 |
Definition at line 382 of file generate_icarus_geometry_splitwire.pl.
$WarmVessel_FloorSpace = 10.16 |
Definition at line 381 of file generate_icarus_geometry_splitwire.pl.
$WarmVessel_FootHeight = 6.0 |
Definition at line 380 of file generate_icarus_geometry_splitwire.pl.
$WarmVessel_x = $ThermIns_x+2*$WarmVesselThickness_x |
Definition at line 307 of file generate_icarus_geometry_splitwire.pl.
$WarmVessel_y = $ThermIns_y+2*$WarmVesselThickness |
Definition at line 308 of file generate_icarus_geometry_splitwire.pl.
$WarmVessel_z = $ThermIns_z+2*$WarmVesselThickness |
Definition at line 309 of file generate_icarus_geometry_splitwire.pl.
$WarmVesselInDetEncl_x = 0 |
Definition at line 311 of file generate_icarus_geometry_splitwire.pl.
$WarmVesselInDetEncl_y = $ThermInsInDetEncl_y |
Definition at line 400 of file generate_icarus_geometry_splitwire.pl.
$WarmVesselInDetEncl_z = 0 |
Definition at line 313 of file generate_icarus_geometry_splitwire.pl.
$WarmVesselThickness = 27.4 |
Definition at line 286 of file generate_icarus_geometry_splitwire.pl.
$WarmVesselThickness_x = 21.8 |
Definition at line 287 of file generate_icarus_geometry_splitwire.pl.
$WirePlaneSpacing = 0.3 |
Definition at line 120 of file generate_icarus_geometry_splitwire.pl.
$World_x = 1e4 |
Definition at line 387 of file generate_icarus_geometry_splitwire.pl.
$World_y = 1e4 |
Definition at line 388 of file generate_icarus_geometry_splitwire.pl.
$World_z = 1e4 |
Definition at line 389 of file generate_icarus_geometry_splitwire.pl.
print RACETRACK<<EOF; </volume> EOF print RACETRACK<<EOF;<!--+++++++++++++++++ RACETRACK Upstream Volume ++++++++++++++++++++--><volumename="volRaceTrackUVolume"><materialrefref="LAr"/><solidrefref="RaceTrackUVolume"/> EOF $xTpos =-($RaceTrack_width - $RaceTrack_pitch - $RT_epsilon )/2. |
Definition at line 1670 of file generate_icarus_geometry_splitwire.pl.
$YWirePitch = 0.3 |
Definition at line 81 of file generate_icarus_geometry_splitwire.pl.
else |
Definition at line 39 of file generate_icarus_geometry_splitwire.pl.
Definition at line 430 of file generate_icarus_geometry_splitwire.pl.
print PMT<<EOF;<?xml version='1.0'?><gdml> EOF print PMT<<EOF;<!--+++++++++++++++++++ PMT Solids ++++++++++++++++++++++--> EOF print PMT<<EOF;<solids><spherename="PMTVolume"rmin="$PMTradiusInner"rmax="$PMTradiusOuter"deltaphi="360"deltatheta="90"aunit="deg"lunit="cm"/><spherename="PMTPassSphere"rmin="$PMTradiusInner"rmax="$PMTradiusOuter"deltaphi="360"deltatheta="90"aunit="deg"lunit="cm"/><tubename="PMTPassTube"rmax="$PMTtubeRmax"rmin="$PMTtubeRmin"z="$PMTtube_x"deltaphi="360"aunit="deg"lunit="cm"/><unionname="PMTPassVolume"><firstref="PMTPassSphere"/><secondref="PMTPassTube"/><positionrefref="PMTtube"/><rotationrefref="rMinus90AboutZ"/></union></solids> EOF print PMT<<EOF;<structure><!--+++++++++++++++++PMTLogicalVolumes++++++++++++++++++++--><volumename="volOpDetSensitive"><materialrefref="LAr"/><solidrefref="PMTVolume"/></volume><volumename="volNotOpDetSensitive"><materialrefref="Glass"/><solidrefref="PMTPassVolume"/></volume></structure> EOF print PMT<<EOF;</gdml> EOF sub gen_Mech_Structure |
Definition at line 1850 of file generate_icarus_geometry_splitwire.pl.
print RACETRACK<<EOF; </volume> EOF print RACETRACK<<EOF;<!--+++++++++++++++++ RACETRACK end structure +++++++++++++++++++--></structure> EOF print RACETRACK<<EOF;</gdml> EOF sub gen_PMT |
Definition at line 1765 of file generate_icarus_geometry_splitwire.pl.
sub gen_RaceTracks |
Definition at line 1543 of file generate_icarus_geometry_splitwire.pl.