4 #include "KVDataPatch_INDRA_CorrectEtalonTrajectories.h"
5 #include "KVDetectorStack.h"
6 #include "KVReconstructedEvent.h"
7 #include "KVINDRADetector.h"
20 SetTitle(
Class()->GetTitle());
56 if (!
N->IsOK())
return;
58 int ring =
N->GetStoppingDetector()->GetIndex() / 100;
60 if (ring < 10)
return;
63 if (!(csi = (
KVINDRADetector*)
N->GetStoppingDetector())->IsType(
"CSI"))
return;
65 auto si75 = (
KVINDRADetector*)
N->GetReconstructionTrajectory()->GetDetector(
"SI75");
66 auto sili = (
KVINDRADetector*)
N->GetReconstructionTrajectory()->GetDetector(
"SILI");
73 etalon_stack.
Add(si75);
75 {
Info(
"ApplyToParticle",
"si75=%p sili=%p", si75, sili);
N->GetReconstructionTrajectory()->Print();}
77 etalon_stack.
Add(sili);
79 {
Info(
"ApplyToParticle",
"si75=%p sili=%p", si75, sili);
N->GetReconstructionTrajectory()->Print();}
84 N->ReplaceReconTraj(traj->GetName());
86 if (
fRandomAngles)
N->GetAnglesFromReconstructionTrajectory(
"random");
87 else N->GetAnglesFromReconstructionTrajectory(
"mean");
99 std::cout <<
"Apply the following correction to INDRA data:\n";
100 std::cout <<
" all particles identified in etalon modules by either CSI_R_L or CI_CSI\n";
101 std::cout <<
" identification were treated as if they passed through the etalon detectors.\n";
102 std::cout <<
" we check the coherency of this with the energy of the particle and\n";
103 std::cout <<
" correct when necessary\n";
Correct angular distributions for CsI & ChIo-CsI identified particles in etalon telescopes.
void ApplyToParticle(KVReconstructedNucleus *) override
void PrintPatchInfo() const override
void ApplyToEvent(KVReconstructedEvent *) override
Correction to be applied to reconstructed calibrated data.
Easily calculate energy losses etc. in a stack of detectors.
Double_t GetPunchThroughEnergy(Int_t Z, Int_t A)
KVGeoDetectorNode * GetNode()
Path taken by particles through multidetector geometry.
const KVSeqCollection * GetTrajectories() const
Base class for detectors of INDRA array.
KVINDRADetector * GetChIo() const
Event containing KVReconstructedNucleus nuclei reconstructed from hits in detectors.
Nuclei reconstructed from data measured by a detector array .
virtual TObject * FindObjectWithMethod(const Char_t *retvalue, const Char_t *method) const
virtual void Info(const char *method, const char *msgfmt,...) const
RooCmdArg ClassName(const char *name)