![]() |
KaliVeda
Toolkit for HIC analysis
|
Nuclei reconstructed from data measured by a detector array .
KVReconstructedNucleus is a nucleus reconstructed from hits in the detectors of an array, either coming from experimental data or filtered simulations. In addition to the properties handled by parent class KVNucleus, a KVReconstructedNucleus provides the following informations:
Definition at line 33 of file KVReconstructedNucleus.h.
#include <KVReconstructedNucleus.h>

Public Types | |
| enum | { kStatusOK , kStatusOKafterSub , kStatusOKafterShare , kStatusStopFirstStage , kStatusPileupDE , kStatusPileupGhost } |
| status codes given to reconstructed particles by KVGroupReconstructor::AnalyseParticles More... | |
Public Types inherited from KVNucleus | |
| enum | { kBetaMass , kVedaMass , kEALMass , kEALResMass , kEPAXMass } |
| enum | { kLDModel , kEMPFunc , kELTON } |
| enum | { kDefaultFormula , kItkis1998 , kHinde1987 , kViola1985 , kViola1966 } |
| enum | { kNN , knn , kpp , knp } |
Public Types inherited from KVParticle | |
| enum | { kIsOK = BIT(14) , kIsOKSet = BIT(15) , kIsDetected = BIT(16) } |
Public Types inherited from TLorentzVector | |
| typedef Double_t | Scalar |
Public Types inherited from TObject | |
| enum | EDeprecatedStatusBits |
| enum | EStatusBits |
Static Public Member Functions | |
| static UInt_t | GetNIdentifiedInGroup (KVGroup *grp) |
| static UInt_t | GetNUnidentifiedInGroup (KVGroup *grp) |
Static Public Member Functions inherited from KVNucleus | |
| static Int_t | GetAFromZ (Double_t, Char_t mt) |
| static Int_t | GetNFromZ (Double_t, Char_t mt) |
| Calculate neutron number from the element's atomic number Z. More... | |
| static Double_t | GetRealAFromZ (Double_t, Char_t mt) |
| static Double_t | GetRealNFromZ (Double_t, Char_t mt) |
| static Int_t | GetZFromSymbol (const Char_t *) |
| static Int_t | IsMassGiven (const Char_t *) |
| static Double_t | LiquidDrop_BrackGuet (UInt_t A, UInt_t Z) |
| static Double_t | TKE_Hinde1987 (Double_t z1, Double_t a1, Double_t z2, Double_t a2) |
| static Double_t | TKE_Itkis1998 (Double_t z, Double_t a) |
| static Double_t | TKE_Kozulin2014 (Double_t zp, Double_t zt, Double_t ap, Double_t at) |
| static Double_t | TKE_Viola1966 (Double_t z, Double_t a) |
| from: V. E. Viola, Jr., Nuclear Data Sheets. Section A 1, 391 (1965). More... | |
| static Double_t | TKE_Viola1985 (Double_t z, Double_t a) |
| from: V. E. Viola, K. Kwiatkowski, and M. Walker, Physical Review C 31, 1550 (1985). More... | |
| static Double_t | u (void) |
Static Public Member Functions inherited from KVParticle | |
| static Double_t | C () |
Static Public Member Functions inherited from TLorentzVector | |
| static TClass * | Class () |
| static const char * | Class_Name () |
| static constexpr Version_t | Class_Version () |
| static const char * | DeclFileName () |
Static Public Member Functions inherited from TObject | |
| static TClass * | Class () |
| static const char * | Class_Name () |
| static constexpr Version_t | Class_Version () |
| static const char * | DeclFileName () |
| static Longptr_t | GetDtorOnly () |
| static Bool_t | GetObjectStat () |
| static void | SetDtorOnly (void *obj) |
| static void | SetObjectStat (Bool_t stat) |
Additional Inherited Members | |
Public Attributes inherited from TLorentzVector | |
| kNUM_COORDINATES | |
| kSIZE | |
| kT | |
| kX | |
| kY | |
| kZ | |
Public Attributes inherited from TObject | |
| kBitMask | |
| kCanDelete | |
| kCannotPick | |
| kHasUUID | |
| kInconsistent | |
| kInvalidObject | |
| kIsOnHeap | |
| kIsReferenced | |
| kMustCleanup | |
| kNoContextMenu | |
| kNotDeleted | |
| kObjInCanvas | |
| kOverwrite | |
| kSingleKey | |
| kWriteDelete | |
| kZombie | |
Static Public Attributes inherited from KVNucleus | |
| static Double_t | e2 = KVNucleus::hbar / 137.035999074 |
| e^2/(4.pi.epsilon_0) in MeV.fm More... | |
| static Double_t | hbar = TMath::Hbarcgs() * TMath::Ccgs() / TMath::Qe() |
| hbar*c in MeV.fm More... | |
| static Double_t | kAMU = 9.31494043e02 |
| atomic mass unit in MeV More... | |
| static Double_t | kMe = 0.510998 |
| electron mass in MeV/c2 More... | |
Protected Member Functions inherited from TObject | |
| virtual void | DoError (int level, const char *location, const char *fmt, va_list va) const |
| void | MakeZombie () |
Protected Attributes inherited from TObject | |
| kOnlyPrepStep | |
| anonymous enum |
status codes given to reconstructed particles by KVGroupReconstructor::AnalyseParticles
Definition at line 63 of file KVReconstructedNucleus.h.
| KVReconstructedNucleus::KVReconstructedNucleus | ( | ) |
default ctor.
Definition at line 38 of file KVReconstructedNucleus.cpp.
| KVReconstructedNucleus::KVReconstructedNucleus | ( | const KVReconstructedNucleus & | obj | ) |
copy ctor
Definition at line 49 of file KVReconstructedNucleus.cpp.
|
inlinevirtual |
Definition at line 78 of file KVReconstructedNucleus.h.
Reset nucleus. Calls KVNucleus::Clear. if opt!="N": Calls KVGroup::Reset for the group where it was reconstructed.
Reimplemented from TObject.
Reimplemented in KVINDRAReconNuc, and KVFAZIAReconNuc.
Definition at line 331 of file KVReconstructedNucleus.cpp.
Copy this to obj
Reimplemented from TObject.
Reimplemented in KVINDRAReconNuc, and KVFAZIAReconNuc.
Definition at line 269 of file KVReconstructedNucleus.cpp.
| void KVReconstructedNucleus::CopyAndMoveReferences | ( | const KVReconstructedNucleus * | other | ) |
Copy all characteristics of 'other' and also change all references to 'other' to references to 'this' (i.e. in detectors hit by particle). 'other' will not be fully valid after this operation (shouldn't be used further)
Definition at line 307 of file KVReconstructedNucleus.cpp.
|
virtual |
Calculate angles theta and phi for nucleus based on the detectors on its reconstruction trajectory. The momentum is set using these angles, its mass and its kinetic energy.
The detector with the smallest solid angle along the trajectory is the one which defines the angles for the reconstructed particle.
The (optional) option string can be "random" or "mean":
If "random" (default) the angles are drawn at random between the over the surface of the detector.
If "mean" the (theta,phi) position of the centre of the detector is used to fix the nucleus' direction.
Definition at line 388 of file KVReconstructedNucleus.cpp.
| TString KVReconstructedNucleus::GetArrayName | ( | ) | const |
Returns name of array particle was detected in (if known)
Definition at line 196 of file KVReconstructedNucleus.cpp.
|
inline |
Return detector with given label on particle's reconstruction trajectory
Definition at line 92 of file KVReconstructedNucleus.h.
|
inline |
Returns the detectors hit by the particle.
If i=0, this is the detector in which the particle stopped.
For i>0 one obtains the names of the detectors through which the particle must have passed before stopping, in inverse order (i.e. i=0 is the last detector, as i increases we get the detectors closer to the target).
Definition at line 97 of file KVReconstructedNucleus.h.
|
inline |
Definition at line 110 of file KVReconstructedNucleus.h.
|
inlinevirtual |
Return value of parameter "ECODE" If no value set, returns -1
Reimplemented in KVINDRAReconNuc.
Definition at line 194 of file KVReconstructedNucleus.h.
|
inline |
Return pointer to group in which the particle is detected
Definition at line 157 of file KVReconstructedNucleus.h.
|
inlinevirtual |
Return value of parameter "IDCODE" If no value set, returns -1
Reimplemented in KVINDRAReconNuc.
Definition at line 183 of file KVReconstructedNucleus.h.
|
inline |
Return pointer to result of attempted identification of given type.
This type is the type of the KVIDTelescope which was used (i.e. the string returned by KVIDTelescope::GetType()).
Returns nullptr if no identification of given type found, but even if a valid pointer is returned the identification may still not have been attempted (see comments in GetIdentificationResult(Int_t)).
Definition at line 337 of file KVReconstructedNucleus.h.
|
inline |
Definition at line 374 of file KVReconstructedNucleus.h.
|
inline |
Returns the result of the i-th (i>0) identification attempted for this nucleus:
Definition at line 304 of file KVReconstructedNucleus.h.
|
inline |
Definition at line 370 of file KVReconstructedNucleus.h.
|
inline |
Return pointer to result of identification attempted with a KVIdentificationTelescope of the given type.
This type is the type of the KVIDTelescope which was used (i.e. the string returned by KVIDTelescope::GetType()).
Returns nullptr if no identification of given type found, but even if a valid pointer is returned the identification may still not have been attemted (see comments in GetIdentificationResult(Int_t)).
Definition at line 357 of file KVReconstructedNucleus.h.
|
inline |
Definition at line 378 of file KVReconstructedNucleus.h.
|
inline |
Definition at line 173 of file KVReconstructedNucleus.h.
|
inline |
Get list of all ID telescopes on the particle's reconstruction trajectory i.e. all those made from the stopping detector and all detectors aligned in front of it. The first ID telescope in the list is that in which the particle stopped.
Definition at line 165 of file KVReconstructedNucleus.h.
|
inline |
Definition at line 114 of file KVReconstructedNucleus.h.
number of identified particles reconstructed in group
this method is kept only for backwards compatibility. it is used by AnalyseParticlesInGroup which is called by KVReconstructedEvent::Streamer when reading old data
Definition at line 383 of file KVReconstructedNucleus.h.
|
inline |
Returns the number of KVIdentificationResult objects in the TClonesArray fIDresults.
Do not assume that all of these correspond to attempted identifications (see comments in GetIdentificationResult(Int_t))
Definition at line 328 of file KVReconstructedNucleus.h.
|
inline |
Number of detectors on reconstruction trajectory
Definition at line 124 of file KVReconstructedNucleus.h.
number of unidentified particles reconstructed in group
this method is kept only for backwards compatibility. it is used by AnalyseParticlesInGroup() which is called by KVReconstructedEvent::Streamer() when reading old data
Definition at line 399 of file KVReconstructedNucleus.h.
|
inlinevirtual |
Return particle identification PID for this particle. If particle Z & A have been identified, this is "real Z" + 0.1*("real A"-2*"real Z") If only Z identification has been performed, it is the "real Z"
Definition at line 260 of file KVReconstructedNucleus.h.
|
inline |
Definition at line 253 of file KVReconstructedNucleus.h.
|
inline |
debug std::cout << "KVReconstructedNucleus::GetRealZ() returning fRealZ" << std::endl;
debug std::cout << "KVReconstructedNucleus::GetRealZ() returning GetZ() because fRealZ=" << fRealZ << std::endl;
Definition at line 240 of file KVReconstructedNucleus.h.
|
inline |
Return pointer to path through detectors of array used to reconstruct this particle.
Definition at line 409 of file KVReconstructedNucleus.h.
Returns status of reconstructed particle as decided by analysis of the group (KVGroup) in which the particle is reconstructed (see KVGroup::AnalyseParticles). This status is used to decide whether identification of the particle can be attempted straight away or if we need to wait until other particles in the same group have been identified and calibrated (case of >1 particle crossing shared detector in a group).
kStatusOK (0) : identification is, in principle at least, possible straight away kStatusOKafterSub (1) : identification is, in principle, possible after identification and subtraction of energy losses of other particles in the same group which have Status=0 kStatusOKafterShare (2) : the energy loss in the shared detector of the group must be shared (arbitrarily) between this and the other particle(s) with Status=2 kStatusStopFirstStage (3) : the particle has stopped in the first member of an identification telescope; a minimum Z could be estimated from the measured energy loss. (see KVDetector::FindZmin) kStatusPileupDE, (4) : only for filtered simulations: undetectable pile-up in DE detector kStatusPileupGhost (5) : only for filtered simulations: undetectable particle
Definition at line 130 of file KVReconstructedNucleus.h.
|
inline |
Return pointer to the detector in which this particle stopped
Definition at line 119 of file KVReconstructedNucleus.h.
|
inlinevirtual |
Return calculated energy loss in target of reconstructed nucleus (in MeV)
Definition at line 274 of file KVReconstructedNucleus.h.
Returns kTRUE if particle was detected in array with given name.
Definition at line 185 of file KVReconstructedNucleus.cpp.
default initialisation
Definition at line 14 of file KVReconstructedNucleus.cpp.
|
inlinevirtual |
Returns kTRUE for reconstructed nuclei whose mass number, A, was measured, not calculated
Definition at line 298 of file KVReconstructedNucleus.h.
|
inline |
Definition at line 227 of file KVReconstructedNucleus.h.
|
inline |
Definition at line 223 of file KVReconstructedNucleus.h.
|
inlinevirtual |
Returns kTRUE for reconstructed nuclei whose atomic number, Z, was measured, not calculated
Definition at line 292 of file KVReconstructedNucleus.h.
Reimplemented from TObject.
Definition at line 540 of file KVReconstructedNucleus.cpp.
| void KVReconstructedNucleus::ModifyReconstructionTrajectory | ( | const KVReconNucTrajectory * | t | ) |
this method modifies the reconstructed trajectory probably called during the identification coherency check
Definition at line 350 of file KVReconstructedNucleus.cpp.
Reimplemented from TLorentzVector.
Reimplemented in KVINDRAReconNuc, and KVFAZIAReconNuc.
Definition at line 208 of file KVReconstructedNucleus.cpp.
| void KVReconstructedNucleus::PrintStatusString | ( | ) | const |
Definition at line 135 of file KVReconstructedNucleus.cpp.
Change the particle's reconstruction trajectory to a different one starting from the same stopping detector (and therefore in the same group).
trajectory paths are written as "DET_1/DET_2/..."
Definition at line 473 of file KVReconstructedNucleus.cpp.
Call with yes=kTRUE for reconstructed nuclei whose mass number, A, was measured, not calculated
Definition at line 286 of file KVReconstructedNucleus.h.
Set value of parameter "ECODE"
Reimplemented in KVINDRAReconNuc.
Definition at line 189 of file KVReconstructedNucleus.h.
Set value of parameter "IDCODE"
Reimplemented in KVINDRAReconNuc.
Definition at line 178 of file KVReconstructedNucleus.h.
| void KVReconstructedNucleus::SetIdentification | ( | KVIdentificationResult * | idr, |
| KVIDTelescope * | idt | ||
| ) |
Set identification of nucleus from informations in identification result object The mass (A) information in KVIdentificationResult is only used if the mass was measured as part of the identification. Otherwise the nucleus' mass formula will be used to calculate A from the measured Z.
The identifying telescope is set to idt.
Definition at line 513 of file KVReconstructedNucleus.cpp.
|
inline |
Definition at line 83 of file KVReconstructedNucleus.h.
|
inline |
Definition at line 208 of file KVReconstructedNucleus.h.
|
inline |
When the "identification" state of the particle is set, we add 1 identified particle and subtract 1 unidentified particle from each detector in its list
Definition at line 201 of file KVReconstructedNucleus.h.
|
inline |
Definition at line 219 of file KVReconstructedNucleus.h.
|
inline |
When the "identification" state of the particle is reset, i.e. it becomes an "unidentified particle", we add 1 unidentified particle and subtract 1 identified particle from each detector in its list
Definition at line 212 of file KVReconstructedNucleus.h.
Definition at line 236 of file KVReconstructedNucleus.h.
Definition at line 232 of file KVReconstructedNucleus.h.
| void KVReconstructedNucleus::SetReconstructionTrajectory | ( | const KVReconNucTrajectory * | t | ) |
Method called in initial reconstruction of particle.
Definition at line 363 of file KVReconstructedNucleus.cpp.
Definition at line 151 of file KVReconstructedNucleus.h.
Set energy loss in target (in MeV) of reconstructed nucleus
Definition at line 269 of file KVReconstructedNucleus.h.
Call with yes=kTRUE for reconstructed nuclei whose atomic number, Z, was measured, not calculated
Definition at line 280 of file KVReconstructedNucleus.h.