KaliVeda
Toolkit for HIC analysis
KVIDINDRACsI Class Reference

Detailed Description

Definition at line 30 of file KVIDINDRACsI.h.

#include <KVIDINDRACsI.h>

Inheritance diagram for KVIDINDRACsI:

Public Member Functions

 KVIDINDRACsI ()
 
Bool_t CanIdentify (Int_t Z, Int_t) override
 
Bool_t Identify (KVIdentificationResult *, Double_t x=-1., Double_t y=-1.) override
 
void Initialize () override
 
void SetIdentificationStatus (KVIdentificationResult *IDR, const KVNucleus *) override
 
- Public Member Functions inherited from KVIDTelescope
 KVIDTelescope ()
 
virtual void AddDetector (KVDetector *d)
 
KVIDGrid * CalculateDeltaE_EGrid (const KVNameValueList &AperZ, Int_t npoints=30, Double_t xfactor=1.)
 
KVIDGrid * CalculateDeltaE_EGrid (const KVNumberList &Zrange, Int_t deltaMasse, Int_t npoints, Double_t lifetime=-10, UChar_t massformula=0, Double_t xfactor=1.)
 
KVIDGrid * CalculateDeltaE_EGrid (const KVNumberList &Zrange, Int_t npoints, Double_t Einc_max, UChar_t massformula=0)
 Generate ID grid for given list of Z values (1 line per Z), up to the given maximum incident energy. More...
 
KVIDGrid * CalculateDeltaE_EGrid (TH2 *haa_zz, Bool_t Zonly, Int_t npoints)
 
void CheckIdentificationBilan (const TString &system)
 Set status of ID Telescope for given system. More...
 
virtual Bool_t CheckTheoreticalIdentificationThreshold (KVNucleus *, Double_t=0.0)
 
virtual Int_t GetCalibStatus () const
 virtual void CalculateParticleEnergy(KVReconstructedNucleus* nuc); More...
 
const Char_t * GetDefaultIDGridClass ()
 
KVDetector * GetDetector (const Char_t *name) const
 Return a pointer to the detector in the telescope with the name "name". More...
 
KVDetector * GetDetector (UInt_t n) const
 
KVString GetDetectorLabelsForGridCoord (const KVString &axis) const
 
UInt_t GetDetectorRank (const KVDetector *kvd) const
 
const KVSeqCollection * GetDetectors () const
 
KVGroup * GetGroup () const
 
UInt_t GetGroupNumber ()
 
virtual UShort_t GetIDCode ()
 
KVIDGraph * GetIDGrid () const
 
KVIDGraph * GetIDGrid (const TString &name) const
 
KVIDGraph * GetIDGrid (Int_t) const
 
bool GetIDGridCoords (Double_t &X, Double_t &Y, KVIDGraph *grid, Double_t x=-1, Double_t y=-1)
 
Double_t GetIDGridXCoord (KVIDGraph *, bool &) const
 
Double_t GetIDGridYCoord (KVIDGraph *, bool &) const
 
const KVSeqCollection * GetListOfIDGrids () const
 
virtual Double_t GetMeanDEFromID (Int_t &status, Int_t Z, Int_t A=-1, Double_t Eres=-1.0)
 
UInt_t GetSize () const
 
Bool_t HasDetector (const KVDetector *d) const
 
Bool_t HasMassID () const
 
void init ()
 default init More...
 
Bool_t IsIndependent () const
 
virtual Bool_t IsReadyForID ()
 
Bool_t LoadIdentificationParameters (const KVMultiDetArray *multidet, const TString &_filename="")
 
void Print (Option_t *opt="") const override
 
Bool_t ReadIdentificationParameterFiles (const KVMultiDetArray *multidet)
 
virtual void RemoveGrids ()
 
virtual void RemoveIdentificationParameters ()
 
void SetGroup (KVGroup *kvg)
 
void SetHasMassID (Bool_t yes=kTRUE)
 
virtual void SetIDCode (UShort_t c)
 
virtual Bool_t SetIdentificationParameters (const KVMultiDetArray *)
 
void SetIDGrid (KVIDGraph *)
 
- Public Member Functions inherited from KVBase
 KVBase ()
 Default constructor. More...
 
 KVBase (const Char_t *name, const Char_t *title="")
 Ctor for object with given name and type. More...
 
 KVBase (const KVBase &)
 copy ctor More...
 
void Clear (Option_t *opt="") override
 Clear object properties : name, type/title, number, label. More...
 
void Copy (TObject &) const override
 Make a copy of this object. More...
 
const Char_t * GetLabel () const
 
UInt_t GetNumber () const
 
virtual TObject * GetObject () const
 
virtual const Char_t * GetType () const
 
Bool_t HasLabel () const
 
Bool_t IsCalled (const Char_t *name, bool case_insensitive=false) const
 
Bool_t IsLabelled (const Char_t *l, bool case_insensitive=false) const
 
Bool_t IsType (const Char_t *typ, bool case_insensitive=false) const
 
virtual void List ()
 
KVBase & operator= (const KVBase &)
 copy assignment operator More...
 
void Print (Option_t *option="") const override
 
void SetLabel (const Char_t *lab)
 
virtual void SetNumber (UInt_t num)
 
virtual void SetType (const Char_t *str)
 

Additional Inherited Members

- Public Types inherited from KVIDTelescope
enum  {
  kCalibStatus_OK , kCalibStatus_Calculated , kCalibStatus_NoCalibrations , kCalibStatus_Multihit ,
  kCalibStatus_Coherency
}
 status of particle calibration after Calibrate(KVReconstructedNucleus*) is called More...
 
enum  { kMeanDE_OK , kMeanDE_XtooSmall , kMeanDE_XtooLarge , kMeanDE_NoIdentifier }
 status codes for GetMeanDEFromID More...
 
- Public Types inherited from KVBase
enum  EKaliVedaBits { kIsKaliVedaObject = BIT(23) }
 
enum class  GetX_status {
  ok , above_maximum , below_minimum , at_maximum ,
  at_minimum
}
 
- Static Public Member Functions inherited from KVIDTelescope
static KVIDTelescope * MakeIDTelescope (const Char_t *name)
 
static void OpenIdentificationBilan (const TString &path)
 Open IdentificationBilan.dat file with given path. More...
 
- Static Public Member Functions inherited from KVBase
static std::optional< TString > AbsoluteUnixPath (const TString &)
 
static Bool_t AreEqual (Double_t x, Double_t y, Long64_t maxdif=1)
 Comparison between two 64-bit floating-point values. More...
 
static void BackupFileWithDate (const Char_t *path)
 
static void CombineFiles (const Char_t *file1, const Char_t *file2, const Char_t *newfilename, Bool_t keep=kTRUE)
 
static void Deprecated (const char *method, const char *advice)
 
static Bool_t FindClassSourceFiles (const KVString &class_name, KVString &imp_file, KVString &dec_file, const KVString &dir_name=".")
 
static Bool_t FindExecutable (TString &exec, const Char_t *path="$(PATH)")
 
static const Char_t * FindFile (const Char_t *search, TString &wfil)
 
static const Char_t * GetBINDIRFilePath (const Char_t *namefile="")
 
static const Char_t * GetDATABASEFilePath ()
 
static const Char_t * GetDATADIRFilePath (const Char_t *namefile="")
 
template<typename ValType >
static ValType GetDataSetEnv (const KVString &dataset, const KVString &type, const ValType &defval={})
 
static const Char_t * GetETCDIRFilePath (const Char_t *namefile="")
 
static const Char_t * GetExampleFilePath (const Char_t *library, const Char_t *namefile)
 Return full path to example file for given library (="KVMultiDet", "BackTrack", etc.) More...
 
static const Char_t * GetINCDIRFilePath (const Char_t *namefile="")
 
static const Char_t * GetKVBuildDate ()
 Returns KaliVeda build date. More...
 
static const Char_t * GetKVBuildDir ()
 Returns top-level directory used for build. More...
 
static const Char_t * GetKVBuildTime ()
 Returns KaliVeda build time. More...
 
static const Char_t * GetKVBuildType ()
 Returns KaliVeda build type (cmake build: Release, Debug, RelWithDebInfo, ...) More...
 
static const Char_t * GetKVBuildUser ()
 Returns username of person who performed build. More...
 
static int GetKVMajorVersion ()
 
static int GetKVMinorVersion ()
 
static int GetKVPatchVersion ()
 
static const Char_t * GetKVSourceDir ()
 Returns top-level directory of source tree used for build. More...
 
static const Char_t * GetKVVersion ()
 Returns KaliVeda version string. More...
 
static const Char_t * GetLIBDIRFilePath (const Char_t *namefile="")
 
static const Char_t * GetListOfPlugins (const Char_t *base)
 
static const Char_t * GetListOfPluginURIs (const Char_t *base)
 
static const Char_t * GetPluginURI (const Char_t *base, const Char_t *plugin)
 
static void GetTempFileName (TString &base)
 
static const Char_t * GetTEMPLATEDIRFilePath (const Char_t *namefile="")
 
static const Char_t * GetWORKDIRFilePath (const Char_t *namefile="")
 
static const Char_t * gitBranch ()
 Returns git branch of sources. More...
 
static const Char_t * gitCommit ()
 Returns last git commit of sources. More...
 
static void InitEnvironment ()
 
static bool is_gnuinstall ()
 
static Bool_t IsEnvInit ()
 
static Bool_t IsThisAPlugin (const TString &uri, TString &base)
 
static TPluginHandler * LoadPlugin (const Char_t *base, const Char_t *uri="0")
 
static Bool_t OpenContextMenu (const char *method, TObject *obj, const char *alt_method_name="")
 
static void OpenTempFile (TString &base, std::ofstream &fp)
 
static void PrintSplashScreen ()
 Prints welcome message and infos on version etc. More...
 
static Double_t ProtectedGetX (const TF1 &func, Double_t val, GetX_status &status, std::optional< Double_t > xmin={}, std::optional< Double_t > xmax={})
 
static Double_t ProtectedGetX (const TF1 *func, Double_t val, GetX_status &status, std::optional< Double_t > xmin={}, std::optional< Double_t > xmax={})
 
static Bool_t SearchAndOpenKVFile (const Char_t *name, KVSQLite::database &dbfile, const Char_t *kvsubdir="")
 
static Bool_t SearchAndOpenKVFile (const Char_t *name, std::ifstream &file, const Char_t *kvsubdir="", KVLockfile *locks=0)
 
static Bool_t SearchAndOpenKVFile (const Char_t *name, std::ofstream &file, const Char_t *kvsubdir="", KVLockfile *locks=0)
 
static Bool_t SearchKVFile (const Char_t *name, TString &fullpath, const Char_t *kvsubdir="")
 
static const Char_t * WorkingDirectory ()
 

Constructor & Destructor Documentation

◆ KVIDINDRACsI()

KVIDINDRACsI::KVIDINDRACsI ( )

Definition at line 31 of file KVIDINDRACsI.cpp.

Member Function Documentation

◆ CanIdentify()

Bool_t KVIDINDRACsI::CanIdentify ( Int_t  Z,
Int_t   
)
inlineoverridevirtual

Used for filtering simulations Returns kTRUE if this telescope is theoretically capable of identifying a given nucleus, without considering thresholds etc. For CsI detectors, identification is possible up to Z=5

Reimplemented from KVIDTelescope.

Definition at line 51 of file KVIDINDRACsI.h.

◆ Identify()

Bool_t KVIDINDRACsI::Identify ( KVIdentificationResult *  IDR,
Double_t  x = -1.,
Double_t  y = -1. 
)
overridevirtual

Particle identification and code setting using identification grid

Note that gamma identification code is no longer attributed here: in case a gamma is identified, the IDR->IDcode will be the same general ID code as for all CsI particles, but IDR->IDquality == KVIDGCsI::kICODE10

perform identification

Reimplemented from KVIDTelescope.

Definition at line 69 of file KVIDINDRACsI.cpp.

◆ Initialize()

void KVIDINDRACsI::Initialize ( void  )
inlineoverridevirtual

Reimplemented from KVIDTelescope.

Definition at line 43 of file KVIDINDRACsI.h.

◆ SetIdentificationStatus()

void KVIDINDRACsI::SetIdentificationStatus ( KVIdentificationResult *  IDR,
const KVNucleus *  nuc 
)
overridevirtual

For filtering simulations

If energy loss in CsI is above threshold for mass identification, we set IDR->Aident=true (and IDR->Zident=true). Otherwise, we just set IDR->Zident=true and A will be given by mass formula for the particle

individual thresholds defined for 1H, 2H, 3H, 3He, 4He for A>5 identification if CsI energy > 40 MeV

Reimplemented from KVIDTelescope.

Definition at line 128 of file KVIDINDRACsI.cpp.