17 def create_train_data(
22 environmentType='MC5',
31 if not os.path.exists(working_dir)
and working_dir
is not '':
32 os.makedirs(working_dir)
34 inputMdstList(environmentType, filelist=file_names, path=main)
36 findMCDecay(
'B0:sig',
'B0 -> nu_tau anti-nu_tau', writeOut=
True, path=main)
37 matchMCTruth(
'B0:sig', main)
38 applyCuts(
'B0:sig',
'isSignal > 0.5', path=main)
40 buildRestOfEvent(
'B0:sig', path=main)
42 DeepFlavorTagger(
'B0:sig', mode, working_dir, identifier, variable_list, target=target, overwrite=overwrite,
43 path=main, *args, **kwargs)
45 main.add_module(
'ProgressBar')
47 process(main, max_events)
51 def test_expert(working_dir, file_names, identifier, output_variable='networkOutput', environmentType='MC5',
55 inputMdstList(environmentType, file_names, path=main)
57 findMCDecay(
'B0:sig',
'B0 -> nu_tau anti-nu_tau', writeOut=
True, path=main)
58 matchMCTruth(
'B0:sig', main)
59 applyCuts(
'B0:sig',
'isSignal > 0.5', path=main)
61 buildRestOfEvent(
'B0:sig', path=main)
64 DeepFlavorTagger(
'B0:sig',
'expert', working_dir, identifier, path=main)
67 output_variable_name =
''.join(
'extraInfo(', output_variable,
')')
70 filename=os.path.join(working_dir, identifier +
'_test_output.root'),
73 main.add_module(
'ProgressBar')
75 process(main, max_events)
79 def test_expert_jpsi(working_dir, file_names, prefix, environmentType='MC5', max_events=0):
82 inputMdstList(environmentType, file_names, path=main)
84 fillParticleList(
'pi+:highPID',
'piid >= .1', path=main)
85 fillParticleList(
'mu+:highPID',
'muid >= .1', path=main)
89 reconstructDecay(
'K_S0:pipi -> pi+:highPID pi-:highPID',
'.25 <= M <= .75', path=main)
92 raveFit(
'K_S0:pipi', 0., path=main, silence_warning=
True)
95 reconstructDecay(
'J/psi:mumu -> mu+:highPID mu-:highPID',
'3.0 <= M <= 3.2 ', path=main)
98 applyCuts(
'J/psi:mumu',
'', path=main)
99 raveFit(
'J/psi:mumu', 0., fit_type=
'massvertex', path=main, silence_warning=
True)
102 reconstructDecay(
'B0:jpsiks -> J/psi:mumu K_S0:pipi',
'5.2 <= M <= 5.4', path=main)
105 raveFit(
'B0:jpsiks', 0.,
'vertex',
'B0 -> [J/psi -> ^mu+ ^mu-] K_S0',
'', path=main, silence_warning=
True)
108 matchMCTruth(
'B0:jpsiks', path=main)
111 buildRestOfEvent(
'B0:jpsiks', path=main)
112 applyCuts(
'B0:jpsiks',
'isSignal > 0.5', path=main)
115 DeepFlavorTagger(
'B0:jpsiks',
'Expert', working_dir, prefix, transform_to_probability=
True, path=main)
116 variablesToNtuple(
'B0:jpsiks', [
'extraInfo(qrCombined)',
'extraInfo(qrMC)',
'extraInfo(B0Probability)',
117 'extraInfo(BOProbabilityMC)'],
118 filename=os.path.join(working_dir,
'test_output.root'), path=main)
120 main.add_module(
'ProgressBar')
122 process(main, max_events)