#ifndef __EXAMPLESIMDATAANALYSIS_H
#define __EXAMPLESIMDATAANALYSIS_H
#include "KVEventSelector.h"
public:
ExampleSimDataAnalysis() {}
virtual ~ExampleSimDataAnalysis() {}
ClassDef(ExampleSimDataAnalysis, 1)
};
#endif
General purpose analysis base class for TTree containing KVEvent objects.
virtual void InitAnalysis()
virtual Bool_t Analysis()
virtual void EndAnalysis()
#include "ExampleSimDataAnalysis.h"
#include "KVSimNucleus.h"
#include "KVBatchSystem.h"
ClassImp(ExampleSimDataAnalysis)
#include "KVSimEvent.h"
void ExampleSimDataAnalysis::InitAnalysis()
{
AddGV("KVMult", "mult");
AddGV(
"KVMult",
"Mcha")->SetSelection({
"Z>0", [](
const KVNucleus * n)
{
return n->GetZ() > 0;
}});
for (int EC = 0; EC <= 5; ++EC)
AddHisto<TH2F>(Form("VparVper_alphas_EC%d", EC),
Form("#alpha particle velocities EC=%d", EC),
250, -15, 15, 250, -15, 15);
auto t = AddTree("data", GetOpt("SimulationInfos"));
GetGVList()->MakeBranches(t);
}
Bool_t ExampleSimDataAnalysis::Analysis()
{
Int_t EC = GetGV("mult_EC")->GetValue();
if (part.IsIsotope(2, 4)) FillHisto(Form("VparVper_alphas_EC%d", EC),
part.GetVpar(), part.GetVperp());
}
GetGVList()->FillBranches();
FillTree();
return kTRUE;
}
Simple class for sorting events according to global variables.
Description of properties and kinematics of atomic nuclei.
Wrapper class for iterating over nuclei in KVSimEvent accessed through base pointer or reference.