Go to the source code of this file.
Functions | |
Math::BigFloat | precision (-16) |
GetOptions ("help|h"=>\$help,"suffix|s:s"=>\$suffix,"output|o:s"=>\$output,"wires|w:s"=>\$wires,"helpcube|c"=>\$helpcube) | |
if (defined $help) | |
if (!defined $suffix) | |
gen_Define () | |
gen_Materials () | |
gen_TPC () | |
gen_Cryostat () | |
gen_Enclosure () | |
gen_World () | |
write_fragments () | |
sub | usage () |
Variables | |
else | |
$wires_on = 1 | |
$tpc_on =1 | |
$inch = 2.54 | |
$UWirePitch = 0.3 | |
$VWirePitch = 0.3 | |
$XWirePitch = 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) ) | |
$UWireCornerInt_y = $UWirePitch * $CosUAngle | |
$UWireCornerInt_z = $UWirePitch * $SinUAngle | |
$UWire_ypitch = $UWirePitch / $SinUAngle | |
$UWire_zpitch = $UWirePitch / $CosUAngle | |
$VWireCornerInt_y = $VWirePitch * $CosVAngle | |
$VWireCornerInt_z = $VWirePitch * $SinVAngle | |
$VWire_ypitch = $VWirePitch / $SinVAngle | |
$VWire_zpitch = $VWirePitch / $CosVAngle | |
$TPCWireThickness = 0.015 | |
$TPCWirePlane_x = $TPCWireThickness | |
$nSkipCornerUWires = 0 | |
$nSkipCornerVWires = 0 | |
$CPA_x = 5.1 | |
$WirePlaneSpacing = 0.476 | |
$MaxDrift = 150 | |
$SpaceWirePlToWall = 50 | |
$SpaceWirePlToWirePl = 85 | |
$SpaceTPCToFloor = 50 | |
$SpaceTPCToTopLAr = 50 | |
$UpstreamLArPadding = 50 | |
$DownstreamLArPadding = 50 | |
$TPC_x = $MaxDrift + $TPCWirePlane_x + 3*$WirePlaneSpacing | |
$TPC_y = 390 | |
$TPC_z = 1990 | |
$LAr_x | |
$LAr_y | |
$LAr_z | |
$SteelThickness = 0.5*$inch | |
$GaseousAr_y = 20 | |
$Cryostat_x = $LAr_x + 2*$SteelThickness | |
$Cryostat_y = $LAr_y + 2*$SteelThickness + $GaseousAr_y | |
$Cryostat_z = $LAr_z + 2*$SteelThickness | |
$TPCWirePlane_y = $TPC_y | |
$TPCWirePlane_z = $TPC_z | |
$TPCinCryo_x [0] = - $LAr_x/2 + $SpaceWirePlToWall + 0.5*($TPC_x) | |
$posRightCat_x = - $Cryostat_x/2 + 1.0*($TPC_x) + $SpaceWirePlToWall + $CPA_x/2 | |
$posLeftCat_x = $Cryostat_x/2 - 1.0*($TPC_x) - $SpaceWirePlToWall - $CPA_x/2 | |
$TPCinCryo_y = - $Cryostat_y/2 + $TPC_y/2 + $SpaceTPCToFloor | |
$TPCinCryo_z = - $Cryostat_z/2 + $TPC_z/2 + $UpstreamLArPadding | |
$TPCActive_x = $MaxDrift | |
$TPCActive_y = $TPCWirePlane_y | |
$TPCActive_z = $TPCWirePlane_z | |
$posTPCActive_x = $TPC_x/2-$TPCActive_x/2 | |
$posTPCActive_y = 0 | |
$posTPCActive_z = 0 | |
$ConcretePadding = 50 | |
$FoamPadding = 80 | |
$TotalPadding = $ConcretePadding+$FoamPadding | |
$DetEnc_x = $Cryostat_x+2*$TotalPadding | |
$DetEnc_y = $Cryostat_y+$ConcretePadding | |
$DetEnc_z = $Cryostat_z+2*$TotalPadding | |
$CryoInDetEnc_x = 0 | |
$CryoInDetEnc_y = -$DetEnc_y/2 + $ConcretePadding + $Cryostat_y/2 | |
$CryoInDetEnc_z = 0 | |
$OriginZSet | |
$OriginYSet | |
$OriginXSet | |
$World_x = 2*$DetEnc_x | |
$World_y = 2*$DetEnc_y | |
$World_z = 2*$DetEnc_z | |
exit | |
gen_Cryostat | ( | ) |
gen_Define | ( | ) |
gen_Enclosure | ( | ) |
gen_Materials | ( | ) |
gen_TPC | ( | ) |
gen_World | ( | ) |
GetOptions | ( | "help|h" | , |
\ | $help, | ||
"suffix|s:s" | , | ||
\ | $suffix, | ||
"output|o:s" | , | ||
\ | $output, | ||
"wires|w:s" | , | ||
\ | $wires, | ||
"helpcube|c" | , | ||
\ | $helpcube | ||
) |
if | ( | defined | $help | ) |
Definition at line 31 of file generate_ICARUS.pl.
if | ( | !defined | $suffix | ) |
Definition at line 38 of file generate_ICARUS.pl.
Math::BigFloat precision | ( | - | 16 | ) |
sub usage | ( | ) |
Definition at line 261 of file generate_ICARUS.pl.
write_fragments | ( | ) |
Definition at line 1168 of file generate_gdml_simple.pl.
$ConcretePadding = 50 |
Definition at line 191 of file generate_ICARUS.pl.
$CosUAngle = cos( deg2rad($UAngle) ) |
Definition at line 80 of file generate_ICARUS.pl.
$CosVAngle = cos( deg2rad($VAngle) ) |
Definition at line 84 of file generate_ICARUS.pl.
$CPA_x = 5.1 |
Definition at line 113 of file generate_ICARUS.pl.
$CryoInDetEnc_x = 0 |
Definition at line 200 of file generate_ICARUS.pl.
$CryoInDetEnc_y = -$DetEnc_y/2 + $ConcretePadding + $Cryostat_y/2 |
Definition at line 201 of file generate_ICARUS.pl.
$CryoInDetEnc_z = 0 |
Definition at line 202 of file generate_ICARUS.pl.
$Cryostat_x = $LAr_x + 2*$SteelThickness |
Definition at line 154 of file generate_ICARUS.pl.
$Cryostat_y = $LAr_y + 2*$SteelThickness + $GaseousAr_y |
Definition at line 155 of file generate_ICARUS.pl.
$Cryostat_z = $LAr_z + 2*$SteelThickness |
Definition at line 156 of file generate_ICARUS.pl.
$DetEnc_x = $Cryostat_x+2*$TotalPadding |
Definition at line 194 of file generate_ICARUS.pl.
$DetEnc_y = $Cryostat_y+$ConcretePadding |
Definition at line 195 of file generate_ICARUS.pl.
$DetEnc_z = $Cryostat_z+2*$TotalPadding |
Definition at line 197 of file generate_ICARUS.pl.
$DownstreamLArPadding = 50 |
Definition at line 126 of file generate_ICARUS.pl.
$FoamPadding = 80 |
Definition at line 192 of file generate_ICARUS.pl.
$GaseousAr_y = 20 |
Definition at line 152 of file generate_ICARUS.pl.
$inch = 2.54 |
Definition at line 65 of file generate_ICARUS.pl.
$LAr_x |
Definition at line 141 of file generate_ICARUS.pl.
$LAr_y |
Definition at line 144 of file generate_ICARUS.pl.
$LAr_z |
Definition at line 147 of file generate_ICARUS.pl.
$MaxDrift = 150 |
Definition at line 116 of file generate_ICARUS.pl.
$nSkipCornerUWires = 0 |
Definition at line 105 of file generate_ICARUS.pl.
$nSkipCornerVWires = 0 |
Definition at line 106 of file generate_ICARUS.pl.
$OriginXSet |
Definition at line 222 of file generate_ICARUS.pl.
$OriginYSet |
Definition at line 216 of file generate_ICARUS.pl.
$OriginZSet |
Definition at line 211 of file generate_ICARUS.pl.
$posLeftCat_x = $Cryostat_x/2 - 1.0*($TPC_x) - $SpaceWirePlToWall - $CPA_x/2 |
Definition at line 171 of file generate_ICARUS.pl.
$posRightCat_x = - $Cryostat_x/2 + 1.0*($TPC_x) + $SpaceWirePlToWall + $CPA_x/2 |
Definition at line 170 of file generate_ICARUS.pl.
$posTPCActive_x = $TPC_x/2-$TPCActive_x/2 |
Definition at line 181 of file generate_ICARUS.pl.
$posTPCActive_y = 0 |
Definition at line 182 of file generate_ICARUS.pl.
$posTPCActive_z = 0 |
Definition at line 183 of file generate_ICARUS.pl.
$SinUAngle = sin( deg2rad($UAngle) ) |
Definition at line 79 of file generate_ICARUS.pl.
$SinVAngle = sin( deg2rad($VAngle) ) |
Definition at line 83 of file generate_ICARUS.pl.
$SpaceTPCToFloor = 50 |
Definition at line 123 of file generate_ICARUS.pl.
$SpaceTPCToTopLAr = 50 |
Definition at line 124 of file generate_ICARUS.pl.
$SpaceWirePlToWall = 50 |
Definition at line 121 of file generate_ICARUS.pl.
$SpaceWirePlToWirePl = 85 |
Definition at line 122 of file generate_ICARUS.pl.
$SteelThickness = 0.5*$inch |
Definition at line 151 of file generate_ICARUS.pl.
$TanUAngle = tan( deg2rad($UAngle) ) |
Definition at line 81 of file generate_ICARUS.pl.
$TanVAngle = tan( deg2rad($VAngle) ) |
Definition at line 85 of file generate_ICARUS.pl.
$TotalPadding = $ConcretePadding+$FoamPadding |
Definition at line 193 of file generate_ICARUS.pl.
$tpc_on =1 |
Definition at line 64 of file generate_ICARUS.pl.
$TPC_x = $MaxDrift + $TPCWirePlane_x + 3*$WirePlaneSpacing |
Definition at line 136 of file generate_ICARUS.pl.
$TPC_y = 390 |
Definition at line 137 of file generate_ICARUS.pl.
$TPC_z = 1990 |
Definition at line 138 of file generate_ICARUS.pl.
$TPCActive_x = $MaxDrift |
Definition at line 176 of file generate_ICARUS.pl.
$TPCActive_y = $TPCWirePlane_y |
Definition at line 177 of file generate_ICARUS.pl.
$TPCActive_z = $TPCWirePlane_z |
Definition at line 178 of file generate_ICARUS.pl.
$TPCinCryo_x[3] = - $LAr_x/2 + $SpaceWirePlToWall + 0.5*($TPC_x) |
Definition at line 164 of file generate_ICARUS.pl.
$TPCinCryo_y = - $Cryostat_y/2 + $TPC_y/2 + $SpaceTPCToFloor |
Definition at line 173 of file generate_ICARUS.pl.
$TPCinCryo_z = - $Cryostat_z/2 + $TPC_z/2 + $UpstreamLArPadding |
Definition at line 174 of file generate_ICARUS.pl.
$TPCWirePlane_x = $TPCWireThickness |
Definition at line 101 of file generate_ICARUS.pl.
$TPCWirePlane_y = $TPC_y |
Definition at line 160 of file generate_ICARUS.pl.
$TPCWirePlane_z = $TPC_z |
Definition at line 161 of file generate_ICARUS.pl.
$TPCWireThickness = 0.015 |
Definition at line 99 of file generate_ICARUS.pl.
$UAngle = 60 |
Definition at line 75 of file generate_ICARUS.pl.
$UpstreamLArPadding = 50 |
Definition at line 125 of file generate_ICARUS.pl.
$UWire_ypitch = $UWirePitch / $SinUAngle |
Definition at line 89 of file generate_ICARUS.pl.
$UWire_zpitch = $UWirePitch / $CosUAngle |
Definition at line 90 of file generate_ICARUS.pl.
$UWireCornerInt_y = $UWirePitch * $CosUAngle |
Definition at line 87 of file generate_ICARUS.pl.
$UWireCornerInt_z = $UWirePitch * $SinUAngle |
Definition at line 88 of file generate_ICARUS.pl.
$UWirePitch = 0.3 |
Definition at line 71 of file generate_ICARUS.pl.
$VAngle = 60 |
Definition at line 76 of file generate_ICARUS.pl.
$VWire_ypitch = $VWirePitch / $SinVAngle |
Definition at line 95 of file generate_ICARUS.pl.
$VWire_zpitch = $VWirePitch / $CosVAngle |
Definition at line 96 of file generate_ICARUS.pl.
$VWireCornerInt_y = $VWirePitch * $CosVAngle |
Definition at line 93 of file generate_ICARUS.pl.
$VWireCornerInt_z = $VWirePitch * $SinVAngle |
Definition at line 94 of file generate_ICARUS.pl.
$VWirePitch = 0.3 |
Definition at line 72 of file generate_ICARUS.pl.
$WirePlaneSpacing = 0.476 |
Definition at line 114 of file generate_ICARUS.pl.
$wires_on = 1 |
Definition at line 58 of file generate_ICARUS.pl.
$World_x = 2*$DetEnc_x |
Definition at line 229 of file generate_ICARUS.pl.
$World_y = 2*$DetEnc_y |
Definition at line 230 of file generate_ICARUS.pl.
$World_z = 2*$DetEnc_z |
Definition at line 231 of file generate_ICARUS.pl.
$XWirePitch = 0.3 |
Definition at line 73 of file generate_ICARUS.pl.
else |
Definition at line 45 of file generate_ICARUS.pl.
exit |
Definition at line 254 of file generate_ICARUS.pl.