- tray = I3Tray()
- tray.AddService("I3JavaVMFactory","javavm")(
- ("Options",[expandvars("-Djava.class.path=$I3_BUILD/lib/mmc.jar"),"-Xmx2g","-Xms1g"])
- )
- # random seed
- tray.AddService("I3SPRNGRandomServiceFactory","random")(
- ("Seed",Seeed),
- ("NStreams",Seeed+1),
- ("StreamNum",1)
- )
- tray.AddService("I3PhotonicsServiceFactory","PSService")(
- ("TablesDirectory",tablesDir),
- ("DriverFileDirectory",driverFilePath),
- ("PhotonicsLevel1DriverFile",level1Driver),
- ("PhotonicsLevel2DriverFile",level2Driver),
- ("PhotonicsAngularSelectionLow",photonicsAngleLowDeg*I3Units.deg),
- ("PhotonicsAngularSelectionHigh",photonicsAngleHighDeg*I3Units.deg),
- ("UseDummyService",True),
- )
- tray.AddModule("I3InfiniteSource", "source",
- prefix = expandvars("$I3_PORTS/test-data/sim/GeoCalibDetectorStatus_IC86.55380_corrected.i3.gz")
- )
- tray.AddModule("I3NeutrinoGenerator","generator")(
- ("WeightDictName", weightdict_name),
- ("AutomaticMuonFinalVolume", auto_muon_finalvolume),
- ("GammaIndex", gammaIndex),
- ("NeutrinoFlavor", flavorString),
- ("EnergyMinLog", energyMinLog),
- ("EnergyMaxLog", energyMaxLog),
- ("PointSourceZenith", Zenith * I3Units.deg),
- ("PointSourceZenithSigma", Sigma * I3Units.deg),
- ("PointSourceAzimuth", Azimuth * I3Units.deg),
- ("PointSourceAzimuthSigma", Sigma * I3Units.deg),
- ("SimulatePointSource", True),
- ("AzimuthMin", 0 * I3Units.deg),
- ("AzimuthMax", 360 * I3Units.deg),
- ("ZenithMin", 0 * I3Units.deg),
- ("ZenithMax", 180 * I3Units.deg),
- ("InjectionRadius", injectionRadius),
- ("DistanceEntrance", distanceEntrance),
- ("DistanceExit", distanceExit),
- ("DetectorDepth", detectorDepth),
- #If this is true, neutrino is injected on the
- #surface of in-depth cylinder, not on the Earth
- ("NoInEarthPropagation", onlyweight),
- ("NEvents",nEvents),
- )
- tray.AddModule("I3PropagatorMMC","mmc")(
- ('rerr',"/dev/null"),
- ("mode", -1),
- ("opts", "-seed=1 -radius=1000 -length=1700" ),
- ("ShiftParticles", 0)
- )
- tray.AddModule("I3HitMakerModule","hit-constructor")(
- )
- tray.AddModule("I3PMTSimulator","pmt")(
- )
- tray.AddModule("I3DOMsimulator","domsimulator")(
- )
- tray.AddModule("I3Writer","writer")(
- ("filename", outputBaseName),
- )
- tray.AddModule("TrashCan", "the can")
- tray.Execute()
- tray.Finish()