KaliVeda
1.14/2
Toolkit for HIC analysis
KVIDChIoSi.cpp
1
/***************************************************************************
2
KVIDChIoSi.cpp - description
3
-------------------
4
begin : Fri Feb 20 2004
5
copyright : (C) 2004 by J.D. Frankland
6
email : frankland@ganil.fr
7
***************************************************************************/
8
9
/***************************************************************************
10
* *
11
* This program is free software; you can redistribute it and/or modify *
12
* it under the terms of the GNU General Public License as published by *
13
* the Free Software Foundation; either version 2 of the License, or *
14
* (at your option) any later version. *
15
* *
16
***************************************************************************/
17
18
#include "KVIDChIoSi.h"
19
#include "KVIDGChIoSi.h"
20
#include "KVIdentificationResult.h"
21
22
ClassImp
(
KVIDChIoSi
)
24
//KVIDChIoSi
25
//
26
//Identification in ChIo-Si matrices of INDRA
27
//
29
30
//________________________________________________________________________________________//
31
32
33
36
Bool_t
KVIDChIoSi
::Identify(
KVIdentificationResult
* IDR,
Double_t
x,
Double_t
y)
37
{
38
//Particle identification and code setting using identification grid KVIDGChIoSi
39
40
Bool_t
ok =
KVINDRAIDTelescope::Identify
(IDR,
x
,
y
);
41
42
//if point lies above Zmax line, we give Zmax as Z of particle (real Z is >= Zmax)
43
//general ID code = 5 (Zmin)
44
if
(IDR->IDquality ==
KVIDZAGrid::kICODE7
) {
45
IDR->IDcode = 5;
//KVINDRA::ID_STOPPED_IN_FIRST_STAGE;
46
}
47
//Identified particles with subcode kID_LeftOfBragg are given
48
//general ID code 5 (Zmin).
49
if
(IDR->IDquality ==
KVIDGChIoSi::k_LeftOfBragg
) {
50
IDR->IDcode = 5;
//KVINDRA::ID_STOPPED_IN_FIRST_STAGE;
51
}
52
//unidentifiable particles with subcode kID_BelowSeuilSi are given
53
//general ID code 5 (Zmin)
54
if
(IDR->IDquality ==
KVIDGChIoSi::k_BelowSeuilSi
) {
55
IDR->IDcode = 5;
//KVINDRA::ID_STOPPED_IN_FIRST_STAGE;
56
IDR->SetComment(
"point to identify left of Si threshold line (bruit/arret ChIo?)"
);
57
}
58
if
(IDR->IDquality ==
KVIDGChIoSi::k_RightOfEmaxSi
)
59
IDR->SetComment(
"point to identify has E_Si > Emax_Si i.e. codeur is saturated. Unidentifiable"
);
60
61
return
kTRUE
;
62
}
63
64
65
66
69
70
void
KVIDChIoSi::Initialize
()
71
{
72
// Initialisation of telescope before identification.
73
74
KVINDRAIDTelescope::Initialize
();
75
fchio
=
dynamic_cast<
KVChIo
*
>
(
GetDetector
(1));
76
}
77
78
79
84
85
Bool_t
KVIDChIoSi::CheckTheoreticalIdentificationThreshold
(
KVNucleus
* ION,
Double_t
)
86
{
87
// Overrides KVIDTelescope method
88
// We lower the calculated energy threshold to be better in agreement with data
89
// EINC argument not used as ChIo-Si is always first telescope
90
91
Double_t
emin = (1.9 / 2.5) * (
fchio
->
GetEIncOfMaxDeltaE
(ION->
GetZ
(), ION->
GetA
()));
92
return
(ION->
GetEnergy
() > emin);
93
94
}
95
96
Bool_t
bool Bool_t
Double_t
double Double_t
kTRUE
constexpr Bool_t kTRUE
KVChIo
Ionisation chamber detectors of the INDRA multidetector array.
Definition:
KVChIo.h:30
KVDetector::GetEIncOfMaxDeltaE
virtual Double_t GetEIncOfMaxDeltaE(Int_t Z, Int_t A)
Definition:
KVDetector.cpp:1501
KVIDChIoSi
Identification in ChIo-Si telescopes of INDRA.
Definition:
KVIDChIoSi.h:30
KVIDChIoSi::Initialize
virtual void Initialize()
Initialisation of telescope before identification.
Definition:
KVIDChIoSi.cpp:70
KVIDChIoSi::fchio
KVChIo * fchio
Definition:
KVIDChIoSi.h:32
KVIDChIoSi::CheckTheoreticalIdentificationThreshold
Bool_t CheckTheoreticalIdentificationThreshold(KVNucleus *, Double_t=0.0)
Definition:
KVIDChIoSi.cpp:85
KVIDGChIoSi::k_RightOfEmaxSi
@ k_RightOfEmaxSi
Definition:
KVIDGChIoSi.h:80
KVIDGChIoSi::k_LeftOfBragg
@ k_LeftOfBragg
Definition:
KVIDGChIoSi.h:79
KVIDGChIoSi::k_BelowSeuilSi
@ k_BelowSeuilSi
Definition:
KVIDGChIoSi.h:78
KVIDTelescope::Identify
virtual Bool_t Identify(KVIdentificationResult *, Double_t x=-1., Double_t y=-1.)
Definition:
KVIDTelescope.cpp:444
KVIDTelescope::GetDetector
KVDetector * GetDetector(UInt_t n) const
Definition:
KVIDTelescope.h:135
KVIDTelescope::Initialize
virtual void Initialize(void)
Definition:
KVIDTelescope.cpp:103
KVIDZAGrid::kICODE7
@ kICODE7
Definition:
KVIDZAGrid.h:109
KVIdentificationResult
Full result of one attempted particle identification.
Definition:
KVIdentificationResult.h:39
KVNucleus
Description of properties and kinematics of atomic nuclei.
Definition:
KVNucleus.h:126
KVNucleus::GetA
Int_t GetA() const
Definition:
KVNucleus.cpp:802
KVNucleus::GetZ
Int_t GetZ() const
Return the number of proton / atomic number.
Definition:
KVNucleus.cpp:773
KVParticle::GetEnergy
Double_t GetEnergy() const
Definition:
KVParticle.h:621
y
Double_t y[n]
x
Double_t x[n]
ClassImp
ClassImp(TPyArg)
kaliveda.doxygen
KVIndra
identification
KVIDChIoSi.cpp
Generated on Fri Jan 17 2025 15:03:19 for KaliVeda by
1.9.1