14def create_csv_field_map(options):
15 r.gErrorIgnoreLevel = r.kWarning
16 r.gSystem.Load('libpythia8')
17
18 ship_geo = ConfigRegistry.loadpy(
19 '$FAIRSHIP/geometry/geometry_config.py',
20 Yheight=globalDesigns["dy"],
21 tankDesign=globalDesigns["dv"],
22 nuTauTargetDesign=globalDesigns["nud"],
23 CaloDesign=globalDesigns["caloDesign"],
24 strawDesign=globalDesigns["strawDesign"],
25 muShieldDesign=options.ds,
26 muShieldStepGeo=options.muShieldStepGeo,
27 muShieldWithCobaltMagnet=options.muShieldWithCobaltMagnet,
28 muShieldGeo=options.geofile)
29
30 ship_geo.muShield.WithConstField = True
31
32
33 run = r.FairRunSim()
34 run.SetName('TGeant4')
35 run.SetOutputFile("tmp_file")
36
37 run.SetUserConfig('g4Config.C')
39 primGen = r.FairPrimaryGenerator()
40 primGen.SetTarget(ship_geo.target.z0+70.845*u.m, 0.)
41
42 run.SetGenerator(primGen)
43 run.SetStoreTraj(r.kFALSE)
44 run.Init()
46
48 print("SHIELD ONLY: CENTER: {}, HALFLENGTH: {}, half_X: {}, half_Y: {}".format(field_center,
49 shield_half_length,
50 ship_geo.muShield.half_X_max,
51 ship_geo.muShield.half_Y_max))
52 fieldMaker.generateFieldMap(os.path.expandvars("$FAIRSHIP/files/fieldMap.csv"), 2.5,
53 ship_geo.muShield.half_X_max, ship_geo.muShield.half_Y_max,
54 shield_half_length, field_center)
55
56
find_shield_center(ship_geo)
addVMCFields(shipGeo, controlFile='', verbose=False, withVirtualMC=True)