#include "AliEMCALDigitizer.h"
#include "AliEMCAL.h"
#include "AliEMCALGeometry.h"
-#include "AliEMCALHistoUtilities.h"
+//JLK
+//#include "AliEMCALHistoUtilities.h"
#include "AliEMCALRecParam.h"
#include "AliEMCALReconstructor.h"
#include "AliCDBManager.h"
//____________________________________________________________________________
AliEMCALClusterizerv1::AliEMCALClusterizerv1()
: AliEMCALClusterizer(),
- fHists(0),fPointE(0),fPointL1(0),fPointL2(0),
- fPointDis(0),fPointMult(0),fDigitAmp(0),fMaxE(0),
- fMaxL1(0),fMaxL2(0),fMaxDis(0),fGeom(0),
+ //JLK
+ //fHists(0),fPointE(0),fPointL1(0),fPointL2(0),
+ //fPointDis(0),fPointMult(0),fDigitAmp(0),fMaxE(0),
+ //fMaxL1(0),fMaxL2(0),fMaxDis(0),
+ fGeom(0),
fDefaultInit(kFALSE),
fToUnfold(kFALSE),
fNumberOfECAClusters(0),fCalibData(0),
if(!fCalibData)
AliFatal("Calibration parameters not found in CDB!");
- // Please fix it!! Or better just remove it...
-// if(!fCalibData)
-// {
-// //If calibration is not available use default parameters
-// //Loader
-// if ( !emcalLoader->Digitizer() )
-// emcalLoader->LoadDigitizer();
-// AliEMCALDigitizer * dig = dynamic_cast<AliEMCALDigitizer*>(emcalLoader->Digitizer());
-
-// fADCchannelECA = dig->GetECAchannel() ;
-// fADCpedestalECA = dig->GetECApedestal();
-// }
}
//____________________________________________________________________________
if(!gMinuit)
gMinuit = new TMinuit(100) ;
- fHists = BookHists();
+ //JLK
+ //fHists = BookHists();
}
//____________________________________________________________________________
while ( (digit = dynamic_cast<AliEMCALDigit *>(nextdigitC())) ) { // clean up digits
e = Calibrate(digit->GetAmp(), digit->GetId());
- AliEMCALHistoUtilities::FillH1(fHists, 10, digit->GetAmp());
- AliEMCALHistoUtilities::FillH1(fHists, 11, e);
+ //JLK
+ //AliEMCALHistoUtilities::FillH1(fHists, 10, digit->GetAmp());
+ //AliEMCALHistoUtilities::FillH1(fHists, 11, e);
if ( e < fMinECut || digit->GetTimeR() > fTimeCut )
digitsC->Remove(digit);
else
AliDebug(1,Form("total no of clusters %d from %d digits",fNumberOfECAClusters,fDigitsArr->GetEntriesFast()));
}
+//____________________________________________________________________________
void AliEMCALClusterizerv1::MakeUnfolding() const
{
Fatal("AliEMCALClusterizerv1::MakeUnfolding", "--> Unfolding not implemented") ;
Float_t maxL2=0;
Float_t maxDis=0;
- AliEMCALHistoUtilities::FillH1(fHists, 12, double(fRecPoints->GetEntries()));
+ //JLK
+ //AliEMCALHistoUtilities::FillH1(fHists, 12, double(fRecPoints->GetEntries()));
for (index = 0 ; index < fRecPoints->GetEntries() ; index++) {
AliEMCALRecPoint * rp = dynamic_cast<AliEMCALRecPoint * >(fRecPoints->At(index)) ;
maxL2=lambda[1];
maxDis=rp->GetDispersion();
}
- fPointE->Fill(rp->GetEnergy());
- fPointL1->Fill(lambda[0]);
- fPointL2->Fill(lambda[1]);
- fPointDis->Fill(rp->GetDispersion());
- fPointMult->Fill(rp->GetMultiplicity());
+ //JLK
+ //fPointE->Fill(rp->GetEnergy());
+ //fPointL1->Fill(lambda[0]);
+ //fPointL2->Fill(lambda[1]);
+ //fPointDis->Fill(rp->GetDispersion());
+ //fPointMult->Fill(rp->GetMultiplicity());
/////////////
if(strstr(option,"deb")){
for (Int_t iprimary=0; iprimary<nprimaries; iprimary++) {
}
}
- fMaxE->Fill(maxE);
- fMaxL1->Fill(maxL1);
- fMaxL2->Fill(maxL2);
- fMaxDis->Fill(maxDis);
+ //JLK
+ // fMaxE->Fill(maxE);
+ // fMaxL1->Fill(maxL1);
+ // fMaxL2->Fill(maxL2);
+ // fMaxDis->Fill(maxDis);
if(strstr(option,"deb"))
printf("\n-----------------------------------------------------------------------\n");
}
}
+
+/*
TList* AliEMCALClusterizerv1::BookHists()
{
//set up histograms for monitoring clusterizer performance
{
AliEMCALHistoUtilities::SaveListOfHists(fHists, fn, kTRUE);
}
+*/
+//___________________________________________________________________
void AliEMCALClusterizerv1::PrintRecoInfo()
{
printf(" AliEMCALClusterizerv1::PrintRecoInfo() : version %s \n", Version() );
- TH1F *h = (TH1F*)fHists->At(12);
- if(h) {
- printf(" ## Multiplicity of RecPoints ## \n");
- for(int i=1; i<=h->GetNbinsX(); i++) {
- int nbin = int((*h)[i]);
- int mult = int(h->GetBinCenter(i));
- if(nbin > 0) printf(" %i : %5.5i %6.3f %% \n", mult, nbin, 100.*nbin/h->GetEntries());
- }
- }
+ //JLK
+ //TH1F *h = (TH1F*)fHists->At(12);
+ //if(h) {
+ // printf(" ## Multiplicity of RecPoints ## \n");
+ // for(int i=1; i<=h->GetNbinsX(); i++) {
+ // int nbin = int((*h)[i]);
+ // int mult = int(h->GetBinCenter(i));
+ // if(nbin > 0) printf(" %i : %5.5i %6.3f %% \n", mult, nbin, 100.*nbin/h->GetEntries());
+ // }
+ // }
+
}
+/*
+//___________________________________________________________________
void AliEMCALClusterizerv1::DrawLambdasHists()
{
if(fMaxL1) {
}
}
}
+*/
// Chi^2 of the fit. Should be static to be passes to MINUIT
virtual const char * Version() const { return "clu-v1" ; }
- TList* BookHists();
- void SaveHists(const char *fn="reco.root"); //*MENU*
+ //JLK
+ //TList* BookHists();
+ //void SaveHists(const char *fn="reco.root"); //*MENU*
+ //void DrawLambdasHists(); //*MENU*
+
void PrintRecoInfo(); //*MENU*
- void DrawLambdasHists(); //*MENU*
+
protected:
virtual void MakeClusters();
-
+
+ //JLK
/////////////////////
- TList *fHists; //!
- TH1F* fPointE; //histogram of point energy
- TH1F* fPointL1; //histogram of point L1
- TH1F* fPointL2; //histogram of point L2
- TH1F* fPointDis; //histogram of point dispersion
- TH1F* fPointMult; //histogram of point multiplicity
- TH1F* fDigitAmp; //histogram of digit ADC Amplitude
- TH1F* fMaxE; //histogram of maximum point energy
- TH1F* fMaxL1; //histogram of largest (first) of eigenvalue of covariance matrix
- TH1F* fMaxL2; //histogram of smalest (second) of eigenvalue of covariace matrix
- TH1F* fMaxDis; //histogram of point dispersion
+ // TList *fHists; //!
+ // TH1F* fPointE; //histogram of point energy
+ // TH1F* fPointL1; //histogram of point L1
+ // TH1F* fPointL2; //histogram of point L2
+ // TH1F* fPointDis; //histogram of point dispersion
+ // TH1F* fPointMult; //histogram of point multiplicity
+ // TH1F* fDigitAmp; //histogram of digit ADC Amplitude
+ // TH1F* fMaxE; //histogram of maximum point energy
+ // TH1F* fMaxL1; //histogram of largest (first) of eigenvalue of covariance matrix
+ // TH1F* fMaxL2; //histogram of smalest (second) of eigenvalue of covariace matrix
+ // TH1F* fMaxDis; //histogram of point dispersion
///////////////////////
Float_t fTimeCut ; // Maximum time difference between the digits in ont EMC cluster
Float_t fMinECut; // Minimum energy for a digit to be a member of a cluster
- ClassDef(AliEMCALClusterizerv1,6) // Clusterizer implementation version 1
+ //JLK
+ //ClassDef(AliEMCALClusterizerv1,6) // Clusterizer implementation version 1
+ ClassDef(AliEMCALClusterizerv1,7) // Clusterizer implementation version 1
};
#include "AliEMCALSDigitizer.h"
#include "AliEMCALGeometry.h"
#include "AliEMCALTick.h"
-#include "AliEMCALHistoUtilities.h"
+//JLK
+//#include "AliEMCALHistoUtilities.h"
ClassImp(AliEMCALDigitizer)
fEventFolderName(""),
fFirstEvent(0),
fLastEvent(0),
- fControlHists(0),
- fHists(0),fCalibData(0x0)
+ //JLK
+ //fControlHists(0),
+ //fHists(0),
+ fCalibData(0x0)
{
// ctor
InitParameters() ;
fEventFolderName(eventFolderName),
fFirstEvent(0),
fLastEvent(0),
- fControlHists(0),
- fHists(0),fCalibData(0x0)
+ //JLK
+ //fControlHists(0),
+ //fHists(0),
+ fCalibData(0x0)
{
// ctor
InitParameters() ;
fEventFolderName(d.fEventFolderName),
fFirstEvent(d.fFirstEvent),
fLastEvent(d.fLastEvent),
- fControlHists(d.fControlHists),
- fHists(d.fHists),fCalibData(d.fCalibData)
+ //JLK
+ //fControlHists(d.fControlHists),
+ //fHists(d.fHists),
+ fCalibData(d.fCalibData)
{
// copyy ctor
}
fEventFolderName(0),
fFirstEvent(0),
fLastEvent(0),
- fControlHists(0),
- fHists(0),fCalibData(0x0)
+ //JLK
+ //fControlHists(0),
+ //fHists(0),
+ fCalibData(0x0)
{
// ctor Init() is called by RunDigitizer
fManager = rd ;
delete [] fInputFileNames ;
delete [] fEventNames ;
- if(fHists) delete fHists;
+ //JLK
+ //if(fHists) delete fHists;
}
//____________________________________________________________________________
digits->Compress() ;
Int_t ndigits = digits->GetEntriesFast() ;
-
+
+ //JLK
//Set indexes in list of digits and fill hists.
- AliEMCALHistoUtilities::FillH1(fHists, 0, Double_t(ndigits));
+ //AliEMCALHistoUtilities::FillH1(fHists, 0, Double_t(ndigits));
Float_t energy=0., esum=0.;
for (i = 0 ; i < ndigits ; i++) {
digit = dynamic_cast<AliEMCALDigit *>( digits->At(i) ) ;
energy = sDigitizer->Calibrate(digit->GetAmp()) ;
esum += energy;
digit->SetAmp(DigitizeEnergy(energy, digit->GetId()) ) ; // for what ??
- AliEMCALHistoUtilities::FillH1(fHists, 2, double(digit->GetAmp()));
- AliEMCALHistoUtilities::FillH1(fHists, 3, double(energy));
- AliEMCALHistoUtilities::FillH1(fHists, 4, double(digit->GetId()));
+ //JLK
+ //AliEMCALHistoUtilities::FillH1(fHists, 2, double(digit->GetAmp()));
+ //AliEMCALHistoUtilities::FillH1(fHists, 3, double(energy));
+ //AliEMCALHistoUtilities::FillH1(fHists, 4, double(digit->GetId()));
// if(digit->GetId() == nEMC) {
// printf(" i %i \n", i );
// digit->Dump();
// assert(0);
//}
}
- AliEMCALHistoUtilities::FillH1(fHists, 1, esum);
+ //JLK
+ //AliEMCALHistoUtilities::FillH1(fHists, 1, esum);
}
// //_____________________________________________________________________
fNADCEC = (Int_t) TMath::Power(2,16) ; // number of channels in Tower ADC - 65536
fTimeThreshold = 0.001*10000000 ; // Means 1 MeV in terms of SDigits amplitude ??
+ //JLK
// hists. for control; no hists on default
- fControlHists = 0;
- fHists = 0;
+ //fControlHists = 0;
+ //fHists = 0;
}
//__________________________________________________________________
//__________________________________________________________________
void AliEMCALDigitizer::Browse(TBrowser* b)
{
- if(fHists) b->Add(fHists);
+ //JLK
+ //if(fHists) b->Add(fHists);
TTask::Browse(b);
}
+/*
//__________________________________________________________________
TList *AliEMCALDigitizer::BookControlHists(int var)
{
{
AliEMCALHistoUtilities::SaveListOfHists(fHists, name, kSingleKey, opt);
}
+*/
Float_t GetTimeResolution() const { return fTimeResolution ; }
Float_t GetECAchannel() const { return fADCchannelEC ; }
Float_t GetECApedestal() const { return fADCpedestalEC ; }
- void SetEventRange(Int_t first=0, Int_t last=-1) {fFirstEvent=first; fLastEvent=last; }
+ void SetEventRange(Int_t first=0, Int_t last=-1) {fFirstEvent=first; fLastEvent=last; }
void SetDigitThreshold(Float_t EMCThreshold) {fDigitThreshold = EMCThreshold;}
void SetPinNoise(Float_t PinNoise ) {fPinNoise = PinNoise;}
//General
- Int_t GetDigitsInRun() const { return fDigitsInRun; }
+ Int_t GetDigitsInRun() const { return fDigitsInRun; }
void MixWith(TString alirunFileName,
TString eventFolderName = AliConfig::GetDefaultEventFolderName()) ; // Add another one file to mix
void Print(Option_t* option="") const ;
}
virtual void Browse(TBrowser* b);
+ //JLK
// hists
- void SetControlHists(Int_t var=0) {fControlHists=var;}
- Int_t GetControlHist() const {return fControlHists;}
- TList *GetListOfHists() {return fHists;}
- TList* BookControlHists(int var=0);
- void SaveHists(const char* name="RF/TRD1/Digitizations/DigiVar?",
- Bool_t kSingleKey=kTRUE, const char* opt="RECREATE"); // *MENU*
+ //void SetControlHists(Int_t var=0) {fControlHists=var;}
+ //Int_t GetControlHist() const {return fControlHists;}
+ //TList *GetListOfHists() {return fHists;}
+ //TList* BookControlHists(int var=0);
+ //void SaveHists(const char* name="RF/TRD1/Digitizations/DigiVar?",
+ //Bool_t kSingleKey=kTRUE, const char* opt="RECREATE"); // *MENU*
private:
TString fEventFolderName; // skowron: name of EFN to read data from in stand alone mode
Int_t fFirstEvent; // first event to process
Int_t fLastEvent; // last event to process
+ //JLK
// Control hists
- Int_t fControlHists; //!
- TList *fHists; //!
+ //Int_t fControlHists; //!
+ //TList *fHists; //!
AliEMCALCalibData * fCalibData; //Calibration data pointer
- ClassDef(AliEMCALDigitizer,6) // description
+ //JLK
+ //ClassDef(AliEMCALDigitizer,6) // description
+ ClassDef(AliEMCALDigitizer,7) // description
};
#include "AliEMCALHit.h"
#include "AliEMCALSDigitizer.h"
#include "AliEMCALGeometry.h"
-#include "AliEMCALHistoUtilities.h"
+//JLK
+//#include "AliEMCALHistoUtilities.h"
ClassImp(AliEMCALSDigitizer)
fSDigitsInRun(0),
fFirstEvent(0),
fLastEvent(0),
- fSampling(0.),
- fControlHists(0),
- fHists(0)
+ fSampling(0.)
+ //JLK
+ //fControlHists(0),
+ //fHists(0)
{
// ctor
InitParameters();
fSDigitsInRun(0),
fFirstEvent(0),
fLastEvent(0),
- fSampling(0.),
- fControlHists(1),
- fHists(0)
+ fSampling(0.)
+ //JLK
+ //fControlHists(1),
+ //fHists(0)
{
// ctor
Init();
InitParameters() ;
- if(fControlHists) BookControlHists(1);
+
+ //JLK
+ //if(fControlHists) BookControlHists(1);
}
fSDigitsInRun(sd.fSDigitsInRun),
fFirstEvent(sd.fFirstEvent),
fLastEvent(sd.fLastEvent),
- fSampling(sd.fSampling),
- fControlHists(sd.fControlHists),
- fHists(sd.fHists)
+ fSampling(sd.fSampling)
+ //JLK
+ //fControlHists(sd.fControlHists),
+ //fHists(sd.fHists)
{
//cpy ctor
}
nSdigits = sdigits->GetEntriesFast() ;
fSDigitsInRun += nSdigits ;
- Double_t e=0.,esum=0.;
- AliEMCALHistoUtilities::FillH1(fHists, 0, double(sdigits->GetEntriesFast()));
+ //JLK
+ //Double_t e=0.,esum=0.;
+ //AliEMCALHistoUtilities::FillH1(fHists, 0, double(sdigits->GetEntriesFast()));
for (i = 0 ; i < sdigits->GetEntriesFast() ; i++) {
AliEMCALDigit * sdigit = dynamic_cast<AliEMCALDigit *>(sdigits->At(i)) ;
sdigit->SetIndexInList(i) ;
- AliEMCALHistoUtilities::FillH1(fHists, 2, double(sdigit->GetAmp()));
- e = double(Calibrate(sdigit->GetAmp()));
- esum += e;
- AliEMCALHistoUtilities::FillH1(fHists, 3, e);
- AliEMCALHistoUtilities::FillH1(fHists, 4, double(sdigit->GetId()));
+ //JLK
+ //AliEMCALHistoUtilities::FillH1(fHists, 2, double(sdigit->GetAmp()));
+ //e = double(Calibrate(sdigit->GetAmp()));
+ //esum += e;
+ //AliEMCALHistoUtilities::FillH1(fHists, 3, e);
+ //AliEMCALHistoUtilities::FillH1(fHists, 4, double(sdigit->GetId()));
}
- if(esum>0.) AliEMCALHistoUtilities::FillH1(fHists, 1, esum);
+ //JLK
+ //if(esum>0.) AliEMCALHistoUtilities::FillH1(fHists, 1, esum);
// Now write SDigits
}
//__________________________________________________________________
-
Int_t AliEMCALSDigitizer::Digitize(Float_t energy)const {
// Digitize the energy
Double_t aSignal = fA + energy*fB;
void AliEMCALSDigitizer::PrintSDigits(Option_t * option)
{
//Prints list of digits produced at the current pass of AliEMCALDigitizer
-
-
- // AliEMCALGetter * gime = AliEMCALGetter::Instance() ;
+
AliEMCALLoader *rl = dynamic_cast<AliEMCALLoader*>(AliRunLoader::GetRunLoader()->GetDetectorLoader("EMCAL"));
const TClonesArray * sdigits = rl->SDigits() ;
//____________________________________________________________________________
void AliEMCALSDigitizer::Browse(TBrowser* b)
{
- if(fHists) b->Add(fHists);
+ //JLK
+ //if(fHists) b->Add(fHists);
TTask::Browse(b);
}
+/*
//____________________________________________________________________________
TList *AliEMCALSDigitizer::BookControlHists(int var)
{
{
AliEMCALHistoUtilities::SaveListOfHists(fHists, name, kSingleKey, opt);
}
+*/
const AliEMCALSDigitizer & operator = (const AliEMCALSDigitizer & /*sd*/) {return *this ;}
virtual void Browse(TBrowser* b);
+ //JLK
// hists
- void SetControlHists(Int_t var=0) {fControlHists=var;}
- Int_t GetControlHist() const {return fControlHists;}
- TList *GetListOfHists() {return fHists;}
- TList* BookControlHists(int var=0);
- void SaveHists(const char* name="RF/TRD1/Digitizations/SDigiVar?",
- Bool_t kSingleKey=kTRUE, const char* opt="RECREATE"); // *MENU*
+ //void SetControlHists(Int_t var=0) {fControlHists=var;}
+ //Int_t GetControlHist() const {return fControlHists;}
+ //TList *GetListOfHists() {return fHists;}
+ //TList* BookControlHists(int var=0);
+ //void SaveHists(const char* name="RF/TRD1/Digitizations/SDigiVar?",
+ //Bool_t kSingleKey=kTRUE, const char* opt="RECREATE"); // *MENU*
private:
void Init() ;
Int_t fFirstEvent; // first event to process
Int_t fLastEvent; // last event to process
Float_t fSampling; // See AliEMCALGeometry
+ //JLK
// Control hists
- Int_t fControlHists; //!
- TList *fHists; //!
+ //Int_t fControlHists; //!
+ //TList *fHists; //!
- ClassDef(AliEMCALSDigitizer,5) // description
+ //JLK
+ //ClassDef(AliEMCALSDigitizer,5) // description
+ ClassDef(AliEMCALSDigitizer,6) // description
};
#endif // AliEMCALSDigitizer_H