-
Notifications
You must be signed in to change notification settings - Fork 46
/
Copy pathrun_hfjets.py
executable file
·55 lines (51 loc) · 2.66 KB
/
run_hfjets.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
#!/bin/env python3
# © Copyright CERN 2024. All rights not expressly granted are reserved. #
# #
# This program is free software: you can redistribute it and/or modify it #
# under the terms of the GNU General Public License as published by the #
# Free Software Foundation, either version 3 of the License, or (at your #
# option) any later version. This program is distributed in the hope that #
# it will be useful, but WITHOUT ANY WARRANTY; without even the implied #
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. #
# See the GNU General Public License for more details. #
# You should have received a copy of the GNU General Public License #
# along with this program. if not, see <https://www.gnu.org/licenses/>. #
import argparse
import subprocess
import sys
parser = argparse.ArgumentParser()
parser.add_argument("--case", "-c", default="d0jet")
parser.add_argument("--analysis", "-a", default="jet_obs")
parser.add_argument("--steps", "-s", nargs="+", default=["analyzer"])
parser.add_argument("--interactive", "-i", action="store_true")
parser.add_argument("--delete", "-d", action="store_true")
# parser.add_argument('--dryrun', '-n', action='store_true')
args = parser.parse_args()
match args.case:
case "jet":
DB = "machine_learning_hep/data/data_run3/database_ml_parameters_Jet_pp.yml"
case "d0jet":
DB = "machine_learning_hep/data/data_run3/database_ml_parameters_D0Jet_pp.yml"
# DB = 'machine_learning_hep/data/data_run3/database_ml_parameters_D0Jet_pp_fitting_rebin_0.yml'
# DB = 'machine_learning_hep/data/data_run3/database_ml_parameters_D0Jet_pp_fitting_rebin_1.yml'
# DB = 'machine_learning_hep/data/data_run3/database_ml_parameters_D0Jet_pp_fitting_rebin_2.yml'
# DB = 'machine_learning_hep/data/data_run3/database_ml_parameters_D0Jet_pp_fitting_bkgfunc.yml'
case "d0jetr2":
DB = "machine_learning_hep/data/data_run3/database_ml_parameters_D0pp_jet_run2cmp.yml"
case "lcjet":
DB = "machine_learning_hep/data/data_run3/database_ml_parameters_LcJet_pp.yml"
case "jpsijet":
DB = "machine_learning_hep/data/data_run3/database_ml_parameters_JPsiJet_pp.yml"
case _:
print(f"Unknown case <{args.case}>")
sys.exit(-1)
for step in args.steps:
subprocess.run(
f"mlhep -r machine_learning_hep/submission/{step}.yml "
+ f"-d {DB} {'-b' if not args.interactive else ''} "
+ f"-a {args.analysis} {'--delete' if args.delete else ''}",
shell=True,
stdout=sys.stdout,
stderr=sys.stderr,
check=True,
)