diff --git a/README.md b/README.md index 95655e3..8b79af5 100644 --- a/README.md +++ b/README.md @@ -138,18 +138,21 @@ The user can select: - Output format: default output is analysistree format optional: plain tree: output is a simple root tree containing the candidates +### 3-body-decays For 3-body decays, the list of available cuts is extended, amoung others, to cuts on the secondary mothers (SM) of combinations of 2 daughters. E.g. for H3L->p + pi + d, cuts on the SM of p-pi can be applied. The cuts that test the mother against the PV, e.g. chi2topo, are inverted for the SM to exclude SMs that come from the PV. +### Multiple decays If more than one decay should be reconstructed in the same run, additional parfiles at_interface/parfile2_add.txt or at_interface/parfile3_add.txt can be added where 1.) - 3.) can be selected. 4.) - 6.) can not be changed in the same run. The decays can be independent or build a cascade decay. Multiple additional parfiles can be added. +### Cascade decays The reconstruction of a cascade decay works the same way as adding an additional decay to the run as described above. The order of the parfiles need to be from last generation to first generation. Cascade decays with multiple stages as well as combinations of diff --git a/at_interface/ConverterIn.cpp b/at_interface/ConverterIn.cpp index dde044d..6b12955 100644 --- a/at_interface/ConverterIn.cpp +++ b/at_interface/ConverterIn.cpp @@ -104,7 +104,7 @@ void ConverterIn::Init() { if (pid_mode_ > 1) rec_pdg_field_ = kf_tracks_.GetField("pid"); - + if (pid_mode_ > 2) { prob_p_field_ = kf_tracks_.GetField("prob_p"); prob_pi_field_ = kf_tracks_.GetField("prob_pi"); diff --git a/at_interface/example_parfiles/parfile3_H3L_pidmode4.txt b/at_interface/example_parfiles/parfile3_H3L_pidmode4.txt index e3ec2d0..e53c297 100644 --- a/at_interface/example_parfiles/parfile3_H3L_pidmode4.txt +++ b/at_interface/example_parfiles/parfile3_H3L_pidmode4.txt @@ -67,8 +67,8 @@ H3L name mother 0.7, specific purity tof for background (optional, if = -1: purity for all species will be used) -------------------------------------------------------------------------- ## Input / Output information -pTree treename in input analysistree -RecTracks branchname for reconstructed tracks in input analysistree +aTree treename in input analysistree +RecParticles branchname for reconstructed tracks in input analysistree 0, write detailed BG information -1, number of events to be processed (-1 = all events) 1, make plain tree: =1; make no plain tree: =0 diff --git a/at_interface/main.cpp b/at_interface/main.cpp index 0860796..57a617d 100644 --- a/at_interface/main.cpp +++ b/at_interface/main.cpp @@ -82,8 +82,8 @@ int main(int argc, char** argv) { fscanf(inputInfo, "%*[^\n]%*c"); fscanf(inputInfo, "%f %*[^\n]%*c", &dist); - fscanf(inputInfo, "%f %*[^\n]%*c", &distSV); if (ndaughters == 3) { + fscanf(inputInfo, "%f %*[^\n]%*c", &distSV); fscanf(inputInfo, "%f %*[^\n]%*c", &chi2geoSM.at(0)); fscanf(inputInfo, "%f %*[^\n]%*c", &chi2geoSM.at(1)); fscanf(inputInfo, "%f %*[^\n]%*c", &chi2geoSM.at(2)); @@ -148,7 +148,7 @@ int main(int argc, char** argv) { atree_name = atree_name_c; rec_tracks_name = rec_tracks_name_c; } - + fclose(inputInfo); std::vector daughters;