| [807] | 1 | # $Id: tiaraSpecifications.py,v 1.3 2003/06/20 12:41:07 dressel Exp $
|
|---|
| 2 | # -------------------------------------------------------------------
|
|---|
| 3 | # GEANT4 tag $Name: $
|
|---|
| 4 | # -------------------------------------------------------------------
|
|---|
| 5 | #
|
|---|
| 6 | import CLHEP
|
|---|
| 7 | import G4Kernel
|
|---|
| 8 |
|
|---|
| 9 | ColWidth = {"43":40*CLHEP.cm,
|
|---|
| 10 | "68":80*CLHEP.cm}
|
|---|
| 11 |
|
|---|
| 12 | BinEdgesScinti = {"43":range(4,45),
|
|---|
| 13 | "68":range(6,45) + range(46,71,2)}
|
|---|
| 14 |
|
|---|
| 15 | BinEdgesBonner = {"43": [4.500E+07,
|
|---|
| 16 | 3.500E+07,
|
|---|
| 17 | 2.750E+07,
|
|---|
| 18 | 2.250E+07,
|
|---|
| 19 | 1.750E+07,
|
|---|
| 20 | 1.350E+07,
|
|---|
| 21 | 1.000E+07,
|
|---|
| 22 | 6.700E+06,
|
|---|
| 23 | 4.490E+06,
|
|---|
| 24 | 3.010E+06,
|
|---|
| 25 | 2.020E+06,
|
|---|
| 26 | 1.350E+06,
|
|---|
| 27 | 9.070E+05,
|
|---|
| 28 | 4.980E+05,
|
|---|
| 29 | 2.240E+05,
|
|---|
| 30 | 8.650E+04,
|
|---|
| 31 | 1.500E+04,
|
|---|
| 32 | 3.350E+03,
|
|---|
| 33 | 4.540E+02,
|
|---|
| 34 | 2.260E+01,
|
|---|
| 35 | 5.040E+00,
|
|---|
| 36 | 1.120E+00,
|
|---|
| 37 | 4.140E-01,
|
|---|
| 38 | 1.000E-04],
|
|---|
| 39 | "68": [ 8.000E+07,
|
|---|
| 40 | 6.500E+07,
|
|---|
| 41 | 5.500E+07,
|
|---|
| 42 | 4.500E+07,
|
|---|
| 43 | 3.500E+07,
|
|---|
| 44 | 2.750E+07,
|
|---|
| 45 | 2.250E+07,
|
|---|
| 46 | 1.750E+07,
|
|---|
| 47 | 1.350E+07,
|
|---|
| 48 | 1.000E+07,
|
|---|
| 49 | 6.700E+06,
|
|---|
| 50 | 4.490E+06,
|
|---|
| 51 | 3.010E+06,
|
|---|
| 52 | 2.020E+06,
|
|---|
| 53 | 1.350E+06,
|
|---|
| 54 | 9.070E+05,
|
|---|
| 55 | 4.980E+05,
|
|---|
| 56 | 2.240E+05,
|
|---|
| 57 | 8.650E+04,
|
|---|
| 58 | 1.500E+04,
|
|---|
| 59 | 3.350E+03,
|
|---|
| 60 | 4.540E+02,
|
|---|
| 61 | 2.260E+01,
|
|---|
| 62 | 5.040E+00,
|
|---|
| 63 | 1.120E+00,
|
|---|
| 64 | 4.140E-01,
|
|---|
| 65 | 1.000E-04]}
|
|---|
| 66 |
|
|---|
| 67 |
|
|---|
| 68 | tallyBinEdges = {}
|
|---|
| 69 | tallyBinEdges["43"] = [0,10,35,45]
|
|---|
| 70 | tallyBinEdges["68"] = [0,10,60,70]
|
|---|
| 71 |
|
|---|
| 72 | sourceTallyEdges = {}
|
|---|
| 73 | sourceTallyEdges["43"] = [0,36.3, 45.5,50]
|
|---|
| 74 | sourceTallyEdges["68"] = [0,60.8, 72.5,80]
|
|---|
| 75 |
|
|---|
| 76 | class Experiment(object):
|
|---|
| 77 | def __init__(self,
|
|---|
| 78 | energy,
|
|---|
| 79 | minNeutronEnergyCut,
|
|---|
| 80 | particleCut,
|
|---|
| 81 | shieldWidth,
|
|---|
| 82 | shieldMaterial):
|
|---|
| 83 | self.energy = "%(energy)d" % vars()
|
|---|
| 84 | self.minNeutronEnergyCut = minNeutronEnergyCut
|
|---|
| 85 | self.particleCut = particleCut
|
|---|
| 86 | self.shieldWidth = shieldWidth
|
|---|
| 87 | self.shieldMaterial = shieldMaterial
|
|---|
| 88 | self.binEdgesBonner = BinEdgesBonner[self.energy]
|
|---|
| 89 | self.binEdgesScinti = BinEdgesScinti[self.energy]
|
|---|
| 90 | self.colWidth = 0
|
|---|
| 91 | if self.shieldWidth <= 50.0*CLHEP.cm:
|
|---|
| 92 | self.colWidth = ColWidth[self.energy]
|
|---|
| 93 |
|
|---|
| 94 |
|
|---|
| 95 | class Specifications(object):
|
|---|
| 96 | def __init__(self,dimensions, experiment, materials):
|
|---|
| 97 | self.dimensions = dimensions
|
|---|
| 98 | self.experiment = experiment
|
|---|
| 99 | self.materials = materials
|
|---|
| 100 |
|
|---|