5#include "KVNumberList.h"
20 fVoisins =
new TH2D(
"hvoisins",
"FromKVClust3D", 1000, 0.5, 1000.5, 1000, 0.5, 1000.5);
27 fKeepLonelyCells =
kTRUE;
29 fCluster = ProduceTH3D(
"cluster_index");
50KVClust3D::KVClust3D(
const char* name,
const char* title,
Int_t nbinsx,
Double_t xlow,
Double_t xup,
Int_t nbinsy,
Double_t ylow,
Double_t yup,
Int_t nbinsz,
Double_t zlow,
Double_t zup)
51 :
TH3D(
name, title, nbinsx, xlow, xup, nbinsy, ylow, yup, nbinsz, zlow, zup)
64 :
TH3D(
name, title, nbinsx,
xbins, nbinsy, ybins, nbinsz, zbins)
77 :
TH3D(
name, title, nbinsx,
xbins, nbinsy, ybins, nbinsz, zbins)
232 printf(
"-----------------------------------------\n");
236 printf(
"-----\nseuil :\n\t- contenu : %lf\n",
GetThreshold());
355 printf(
"gros pb de coherence ... cluster %1.0lf declare avec une cellule isolee\n",
fCluster->
GetBinContent(nx, ny, nz));
402 if (compt != newid) {
413 Warning(
"Clusterize",
"Ntemp>999 ... should be some problems in the treatment of neigbouring clusters...");
438 Warning(
"Clusterize",
"Ntemp>999 ... should be some problems in the treatment of neigbouring clusters...");
470 for (
Int_t ii = Ntemp; ii >= 2; ii -= 1) {
471 for (
Int_t jj = ii + 1; jj <= Ntemp; jj += 1) {
514 for (
Int_t ii = 0; ii <= Ntemp; ii += 1) {
532 printf(
"pb de coherence %d %d\n", nreel,
fNclusters + 1);
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void value
TH3 object which allow clusterization in cell density.
void init()
initialization method
Int_t GetNclusters() const
void PrintResults() const
KVClust3D()
Default constructor.
TH3D * ProduceTH3D(const Char_t *name) const
Double_t * GetPop() const
void SetDensityThreshold(Double_t)
Set density threshold on the content of a cell to be considered has filled.
Bool_t fKeepLonelyCells
tells if we keep or not lonely cells, par default kTRUE
TArrayD * fPop
array where total contents of the clusters are stored
Int_t GetNvoisins() const
Double_t GetThreshold() const
return the value of the threshold for the content of a cell to be considered has filled
void SetThreshold(Double_t)
Set threshold on the content of a cell to be considered has filled.
TH2D * fVoisins
internal histogram to gather possible connected clusters
TArrayI * fNcells
exemple sur une dimension les cellules de nx-fNvoisins a nx+fNvoisins sont prises en compte,...
void SetLonelyCells(Bool_t)
TH3D * fCluster
3D histogram where index of each cluster is putted as content in the associated cells
TH3D * GetClusterIndex() const
Double_t GetVolumeVoisin() const
Bool_t IsLonelyCellsAreKept() const
Double_t GetVolumeCell() const
Double_t fThreshold
threshold on the content of each cell to be considered has filled
Int_t fNclusters
number of clusters found by the Clusterize method
Strings used to represent a set of ranges of values.
Int_t First() const
Returns smallest number included in list.
void Add(Int_t)
Add value 'n' to the list.
Double_t At(Int_t i) const
void Set(Int_t n) override
void AddAt(Double_t c, Int_t i)
void SetAt(Double_t v, Int_t i) override
void Set(Int_t n) override
void SetAt(Double_t v, Int_t i) override
void AddAt(Int_t c, Int_t i)
virtual Double_t GetBinWidth(Int_t bin) const
virtual Int_t GetNbinsY() const
virtual Int_t GetNbinsZ() const
virtual Int_t GetNbinsX() const
virtual Double_t GetBinLowEdge(Int_t bin) const
void Reset(Option_t *option="") override
virtual Int_t Fill(const char *namex, const char *namey, Double_t w)
virtual Double_t GetBinContent(Int_t bin) const
void Reset(Option_t *option="") override
virtual Double_t GetBinContent(Int_t bin) const
void SetBinContent(Int_t bin, Double_t content) override
virtual void Warning(const char *method, const char *msgfmt,...) const
virtual void Info(const char *method, const char *msgfmt,...) const
Double_t Min(Double_t a, Double_t b)
Double_t Power(Double_t x, Double_t y)
Double_t Max(Double_t a, Double_t b)
const double xbins[xbins_n]