CbmRoot
Loading...
Searching...
No Matches
KfpV0FinderConfig.cxx
Go to the documentation of this file.
1/* Copyright (C) 2025 GSI Helmholtzzentrum fuer Schwerionenforschung, Darmstadt
2 SPDX-License-Identifier: GPL-3.0-only
3 Authors: Sergei Zharko [committer] */
4
9
10#include "KfpV0FinderConfig.h"
11
12#include <iomanip>
13#include <sstream>
14
19
20// ---------------------------------------------------------------------------------------------------------------------
21//
22std::string CutsKfp::ToString() const
23{
24 std::stringstream msg;
25 msg << "CUTS FOR KF PARTICLE FINDER:";
26 msg << "\n\tmin. decay length (l): " << minDecayLength << " [cm]";
27 msg << "\n\tmin. l/dl ratio: " << minDecayLDL;
28 msg << "\n\tmax. chi2/NDF for primary particles (chi2_prim): " << maxChi2NdfPrim;
29 msg << "\n\tmax. chi2/NDF for V0 candidates (chi2_geo): " << maxChi2NdfGeo;
30 return msg.str();
31}
32
33// ---------------------------------------------------------------------------------------------------------------------
34//
35std::string ParticlePid::ToString() const
36{
37 std::stringstream msg;
38 msg << "\tPDG: " << pdg;
39 msg << "\n\t\tmin. DCA to PV: " << minDca << " [cm]";
40 msg << "\n\t\tmin. velocity: " << minVelocity << " [cm/ns]";
41 msg << "\n\t\tmax. velocity: " << maxVelocity << " [cm/ns]";
42 return msg.str();
43}
44
45// ---------------------------------------------------------------------------------------------------------------------
46//
47std::string Cuts::ToString() const
48{
49 std::stringstream msg;
50 msg << kfp.ToString() << '\n';
51 msg << "PARTICLE SELECTION PROPERTIES:";
52 for (const auto& particle : particles) {
53 msg << '\n' << particle.ToString();
54 }
55 return msg.str();
56}
57
58// ---------------------------------------------------------------------------------------------------------------------
59//
60std::string V0FinderConfig::ToString() const
61{
62 using std::dec;
63 using std::hex;
64 using std::setfill;
65 using std::setw;
66 std::stringstream msg;
67 msg << "\n-------------- KFP V0-finder Configuration: ------------------------------------------------";
68 msg << "\nGOAL V0 (PDG): " << reconstructPdg;
69 msg << '\n' << cuts.ToString();
70 msg << "\nOTHER PARAMETERS:";
71 msg << "\n\tt0-offset: " << tZeroOffset << " [ns]";
72 msg << "\n\tReference BMON: 0x" << hex << setw(8) << setfill('0') << bmonAddress << dec;
73 msg << "\n\tq/p relative uncertainty: " << qpAssignedUncertainty;
74 msg << "\n\tassigned PDG of primary: " << primaryAssignedPdg;
75 msg << "\n--------------------------------------------------------------------------------------------";
76 return msg.str();
77}
Configuration structure for V0 selector in mCBM.
Cuts for the KFParticleFinder.
float maxChi2NdfPrim
Maximal chi2/NDF for primary particles (coming from the PV)
std::string ToString() const
String representation of the structure.
float minDecayLDL
Minimal value of decay length to decay length error ratio.
float maxChi2NdfGeo
Maximal chi2/NDF for V0 candidates.
float minDecayLength
Minimal decay length of particles [cm].
std::string ToString() const
String representation of the structure.
std::vector< ParticlePid > particles
Daughter PID cuts and other properties.
CutsKfp kfp
Specific cuts for the KFParticleFinder.
PID and pre-selection cuts for a given particle.
int pdg
PDG code for particle.
double maxVelocity
Maximal velocity [cm/ns].
std::string ToString() const
String representation of the structure.
double minDca
Minimal DCA to PV [cm].
double minVelocity
Minimal velocity [cm/ns].
Cuts cuts
Different selection cuts.
uint32_t bmonAddress
Address of BMON diamond (if multiple alternative are present, only one must be selected)
double tZeroOffset
Offset for T0 [ns].
int primaryAssignedPdg
Assigned PDG hypothesis for primary particles.
std::string ToString() const
String representation of the contents.
int reconstructPdg
PDG of the particle, the decay of which is to be reconstructed.
double qpAssignedUncertainty
Assigned relative uncertainty for q/p estimation.