9 **kwargs):
10
11 result = ComponentAccumulator()
12
13 from HGTD_GeoModelXml.HGTD_GeoModelConfig import HGTD_GeoModelCfg
14 result.merge(HGTD_GeoModelCfg(flags))
15
16
17
18
19
20 histoSvc = CompFactory.THistSvc(
21 Output=[
22 "IDENTIFIERTREE DATAFILE='HGTDIdentifierTree.root' TYPE='ROOT' OPT='RECREATE'"
23 ]
24 )
25 result.addService(histoSvc)
26
27 ntupSvc = CompFactory.NTupleSvc(
28 Output=[
29 "CREATEMISALIGN DATAFILE='CreateMisalignmentHGTD.root' TYPE='ROOT' OPT='NEW'"
30 ]
31 )
32 result.addService(ntupSvc)
33
34 result.setAppProperty("HistogramPersistency", "ROOT")
35
36 alg = CompFactory.HGTD_MisalignAlg(name)
37
38 dbTool = kwargs.pop("AlignDBTool", None)
39 if dbTool is None:
40 from HGTD_AlignGenTools.HGTD_AlignGenToolsConfig import HGTD_AlignDBToolCfg
41 dbTool = result.popToolsAndMerge(HGTD_AlignDBToolCfg(flags))
42
43 alg.AlignDBTool = dbTool
44
45
46
47
48
49 alg.AlignDBTool = dbTool
50
51
52
53
54
55 alg.MisalignMode = int(kwargs.get("MisalignMode", 1))
56
57 alg.ShiftX = float(kwargs.get("ShiftX", 0.05))
58 alg.ShiftY = float(kwargs.get("ShiftY", 0.0))
59 alg.ShiftZ = float(kwargs.get("ShiftZ", 0.0))
60
61 alg.SigmaX = float(kwargs.get("SigmaX", 0.01))
62 alg.SigmaY = float(kwargs.get("SigmaY", 0.01))
63 alg.SigmaZ = float(kwargs.get("SigmaZ", 0.01))
64
65
66
67
68
69 alg.ApplyTranslation = kwargs.get("ApplyTranslation", True)
70 alg.ApplyRotation = kwargs.get("ApplyRotation", False)
71
72 alg.DoDebugPrint = kwargs.get("DoDebugPrint", True)
73 alg.MaxModules = int(kwargs.get("MaxModules", -1))
74 alg.ApplyToGeometry = kwargs.get("ApplyToGeometry", False)
75 alg.TestHash = int(kwargs.get("TestHash", -1))
76
77 alg.CreateFreshDB = kwargs.get("CreateFreshDB", True)
78 alg.SQLiteTag = kwargs.get("SQLiteTag", "HGTD_AlignTag")
79 alg.OutputFile = kwargs.get("OutputFile", "hgtd_misalignment.txt")
80 alg.WriteToDB = kwargs.get("WriteToDB", False)
81 alg.RandomStream = kwargs.get("RandomStream", "HGTDMisalignment")
82
83 result.addEventAlgo(alg)
84
85 return result