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.
1.8.5