You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

114 lines
3.3 KiB

# flake8: noqa
"""
This set of options is used for reconstruction development purposes,
and assumes that the input contains MCHits (i.e. is of `Exended`
DST/digi type).
author: Furkan Cetin
date: 10/2023
"""
from Moore import options, run_reconstruction
from Moore.config import Reconstruction
from PyConf.Algorithms import (
PrMatchNN,
fromPrMatchTracksV1Tracks,
)
from PyConf.Tools import TrackMasterExtrapolator
from RecoConf.hlt1_tracking import make_all_pvs
from RecoConf.event_filters import require_gec
from RecoConf.mc_checking import (
check_track_resolution,
check_tracking_efficiency,
get_mc_categories,
get_hit_type_mask,
make_links_lhcbids_mcparticles_tracking_system,
make_links_tracks_mcparticles,
get_track_checkers,
get_fitted_tracks_checkers,
)
from RecoConf.core_algorithms import make_unique_id_generator
from RecoConf.hlt2_tracking import (
make_hlt2_tracks,
get_default_out_track_types_for_light_reco,
get_global_ut_hits_tool,
)
from RecoConf.hlt1_tracking import (
make_VeloClusterTrackingSIMD_hits,
make_PrStorePrUTHits_hits,
make_PrStoreSciFiHits_hits,
get_global_materiallocator,
)
import glob
decay = "testJpsi"
options.evt_max = -1
options.ntuple_file = f"/work/cetin/LHCb/reco_tuner/data_matching/sample4_data/match_effs_{decay}_EFilter.root"
options.input_type = "ROOT"
if decay == "B":
options.input_files = glob.glob("/auto/data/guenther/Bd_Kstee/*.xdigi")
elif decay == "BJpsi":
options.input_files = glob.glob("/auto/data/guenther/Bd_JpsiKst_ee/*.xdigi")
elif decay == "D":
options.input_files = glob.glob("/auto/data/guenther/Dst_D0ee/*.xdigi")
elif decay == "testJpsi":
options.input_files = [
"/auto/data/guenther/Bd_JpsiKst_ee/00143565_00000009_1.xdigi",
"/auto/data/guenther/Bd_JpsiKst_ee/00143565_00000059_1.xdigi",
"/auto/data/guenther/Bd_JpsiKst_ee/00143565_00000020_1.xdigi",
]
elif decay == "test":
options.input_files = ["/auto/data/guenther/Bd_Kstee/00151673_00000002_1.xdigi"]
options.dddb_tag = "dddb-20210617"
options.conddb_tag = "sim-20210617-vc-md100"
options.simulation = True
options.output_level = 3
def run_tracking_debug():
tracks = make_hlt2_tracks(light_reco=True, fast_reco=False, use_pr_kf=True)
matching_params = dict(
MinMatchNN=0.5, # NN response cut value
)
match_long = PrMatchNN(
VeloInput=tracks["Velo"]["Pr"],
SeedInput=tracks["Seed"]["Pr"],
AddUTHitsToolName=get_global_ut_hits_tool(),
**matching_params,
).MatchOutput
match_tracks = {}
match_tracks["Pr"] = match_long
match_tracks["v1"] = fromPrMatchTracksV1Tracks(
InputTracksLocation=match_tracks["Pr"],
VeloTracksLocation=tracks["Velo"]["v1"],
SeedTracksLocation=tracks["Seed"]["v1"],
).OutputTracksLocation
types_and_locations_for_checkers = {
"Forward": tracks["Forward"],
"Seed": tracks["Seed"],
"Match": match_tracks,
}
best_tracks = {
"BestLong": tracks["BestLong"],
}
data = [match_long]
data += get_track_checkers(types_and_locations_for_checkers)
# data += get_fitted_tracks_checkers(best_tracks, fitted_track_types=["BestLong"])
return Reconstruction("hlt2_matching_reco", data, [require_gec()])
run_reconstruction(options, run_tracking_debug)