29 #if ROOT_VERSION_CODE >= ROOT_VERSION(3,4,0)
137 idr->
SetComment(
"no identification: (x,y) out of range covered by grid");
153 idr->
SetComment(
"Z ok, mass may be greater than A");
156 idr->
SetComment(
"Z ok, mass may be smaller than A");
159 idr->
SetComment(
"Z ok, mass may be greater or smaller than A");
162 idr->
SetComment(
"Z ok, mass out of range, >=A");
165 idr->
SetComment(
"Z ok, mass out of range, <=A");
168 idr->
SetComment(
"point above IMF line, Z is a minimum value");
171 idr->
SetComment(
"point is left of IMF line, Z is the most probable lower limit");
174 idr->
SetComment(
"no identification: (x,y) out of range covered by grid");
177 idr->
SetComment(
"no identification for this module");
180 idr->
SetComment(
"no identification: (x,y) out of range covered by grid");
209 && (index < (nlines - 1)))
212 if (
line->GetZ() != z) {
236 while ((
line->GetZ() != z ||
line->GetA() !=
a)
237 && (index < (nlines - 1))) {
240 if (
line->GetZ() != z ||
line->GetA() !=
a) {
469 else if (
kinf > -1) {
539 dt = -(y1 + y2) /
dist;
546 else if (ix2 == -ix1 * 2) {
548 if (tmp > 0. &&
dist != 0) {
549 dt = -(y1 + 2. * y2 -
557 else if (ix1 == -ix2 * 2) {
559 if (tmp > 0. &&
dist != 0) {
560 dt = -(y2 + 2. * y1 +
572 deltaA = yy * ix2 / y2 / 2.;
578 if (
dist > -1. && dt * yy > -1.)
591 if (ibif == 1 || ibif == 3) {
600 if (nextline->
GetZ() == Z
608 if (ibif == 2 || ibif == 3) {
614 if (idx > -1 && --idx >= 0) {
617 if (nextline->
GetZ() == Z
657 Error(
"Initialize",
"%s: Cut 'gamma_line' not found in grid. Not a valid CsI R-L grid. Listing existing cuts:",
663 Error(
"Initialize",
"%s: Cut 'IMF_line' not found in grid. Not a valid CsI R-L grid. Listing existing cuts:",
700 Fatal(
"BackwardsCompatibilityFix",
701 "This fix no longer works. There will be problems.");
ClassImp(KVPartitionList) void KVPartitionList
Initialisation.
Base class for CsI R-L identification lines (A and Z identification).
Line in ID grid used to delimit regions where no identification is possible.
Identification grids for CsI R-L (fast-slow) matrices.
KVIDZALine * GetZALine(Int_t z, Int_t a, Int_t &) const
void IdentZA(Double_t x, Double_t y, Int_t &Z, Double_t &A)
KVIDZALine * GetZLine(Int_t z, Int_t &) const
virtual void Initialize()
virtual void BackwardsCompatibilityFix()
virtual Bool_t IsIdentifiable(Double_t x, Double_t y, TString *=nullptr) const
virtual void Identify(Double_t x, Double_t y, KVIdentificationResult *) const
KVIDGCsI()
Default constructor.
virtual void SetVarX(const char *v)
Int_t GetNumberOfIdentifiers() const
KVIDentifier * GetCut(const Char_t *name) const
KVNameValueList * fPar
parameters associated to grid
KVList * fIdentifiers
list of identification objects
KVIDentifier * GetIdentifierAt(Int_t index) const
virtual void SetVarY(const char *v)
const Char_t * GetName() const
virtual void BackwardsCompatibilityFix()
virtual void SetInfos(Double_t, Double_t, KVIdentificationResult *) const
loop over KVIDGraph::fInfoZones to set flags in KVIdentificationResult
KVList * GetIdentifiers() const
Base class for lines/cuts used for particle identification in 2D data maps.
Bool_t WhereAmI(Double_t px, Double_t py, Option_t *opt)
Bool_t IsBetweenEndPoints(Double_t x, Double_t y, const Char_t *axis="") const
Identification grid with lines corresponding to different nuclear isotopes (KVIDZALine)
virtual void Copy(TObject &) const
Copy this to 'obj'.
Int_t ksups
used by IdentZA and IdentZ
virtual void Initialize()
Int_t fIdxClosest
index of closest line in main list fIdentifiers
Int_t fICode
code de retour
virtual Bool_t FindFourEmbracingLines(Double_t x, Double_t y, const Char_t *position)
Int_t Aint
mass of line used to identify particle
Base class for identification ridge lines corresponding to different nuclear species.
virtual Int_t GetZ() const
Full result of one attempted particle identification.
Bool_t IDOK
general quality of identification, =kTRUE if acceptable identification made
void SetComment(const Char_t *c)
Bool_t Aident
= kTRUE if A of particle established
Double_t PID
= "real" Z if Zident==kTRUE and Aident==kFALSE, "real" A if Zident==Aident==kTRUE
Int_t A
A of particle found (if Aident==kTRUE)
Int_t Z
Z of particle found (if Zident==kTRUE)
Int_t IDquality
specific quality code returned by identification procedure
Bool_t Zident
=kTRUE if Z of particle established
Extended TList class which owns its objects by default.
Bool_t HasParameter(const Char_t *name) const
virtual void AddLast(TObject *obj)
virtual TObject * At(Int_t idx) const
virtual TObject * Remove(TObject *obj)
Remove object from list.
virtual TObject * FindObject(const char *name) const
virtual void ls(Option_t *option="") const
virtual const char * GetName() const
virtual void Error(const char *method, const char *msgfmt,...) const
virtual void Fatal(const char *method, const char *msgfmt,...) const
double dist(AxisAngle const &r1, AxisAngle const &r2)
Double_t Min(Double_t a, Double_t b)
Double_t Sqrt(Double_t x)
Double_t Max(Double_t a, Double_t b)
add_remove_imf_line(KVList *l, KVIDLine *i)