AliRoot Core  edcc906 (edcc906)
AliTPCCalibPulser Class Reference

Implementation of the TPC pulser calibration. More...

#include <AliTPCCalibPulser.h>

Inheritance diagram for AliTPCCalibPulser:

Public Member Functions

 AliTPCCalibPulser ()
 
 AliTPCCalibPulser (const AliTPCCalibPulser &sig)
 
 AliTPCCalibPulser (const TMap *config)
 
virtual ~AliTPCCalibPulser ()
 
void Reset ()
 
AliTPCCalibPulseroperator= (const AliTPCCalibPulser &source)
 
virtual Int_t Update (const Int_t isector, const Int_t iRow, const Int_t iPad, const Int_t iTimeBin, const Float_t signal)
 
virtual void Analyse ()
 
AliTPCCalROCGetCalRocT0 (Int_t sector, Bool_t force=kFALSE)
 
AliTPCCalROCGetCalRocQ (Int_t sector, Bool_t force=kFALSE)
 
AliTPCCalROCGetCalRocRMS (Int_t sector, Bool_t force=kFALSE)
 
AliTPCCalROCGetCalRocOutliers (Int_t sector, Bool_t force=kFALSE)
 
const TObjArrayGetCalPadT0 () const
 
const TObjArrayGetCalPadQ () const
 
const TObjArrayGetCalPadRMS () const
 
const TObjArrayGetCalPadOutliers () const
 
TH2S * GetHistoQ (Int_t sector, Bool_t force=kFALSE)
 
TH2S * GetHistoT0 (Int_t sector, Bool_t force=kFALSE)
 
TH2S * GetHistoRMS (Int_t sector, Bool_t force=kFALSE)
 
TH2F * GetHistoTSec ()
 
Float_t GetMeanTimeSector (Int_t sector) const
 
const TVectorF * GetMeanTimeSectorArray () const
 
Short_t GetDebugLevel () const
 
void SetRangeTime (Int_t firstTimeBin, Int_t lastTimeBin)
 
void SetRangeRefQ (Int_t nBins, Float_t xMin, Float_t xMax)
 
void SetRangeRefT0 (Int_t nBins, Float_t xMin, Float_t xMax)
 
void SetRangeRefRMS (Int_t nBins, Float_t xMin, Float_t xMax)
 
void SetRangePeakIntegral (Int_t minus, Int_t plus)
 
void SetDebugLevel (Short_t debug=1)
 
void SetIsZeroSuppressed (Bool_t zs=kTRUE)
 
void SetPedestalDatabase (AliTPCCalPad *const pedestalTPC, AliTPCCalPad *const padNoiseTPC)
 
void SetOutliers (AliTPCCalPad *const outliers)
 
Bool_t GetIsZeroSupperssed () const
 
Float_t GetPeakIntegralMinus () const
 
Float_t GetPeakIntegralPlus () const
 
void Merge (AliTPCCalibPulser *const sig)
 
virtual Long64_t Merge (TCollection *const list)
 
TObjArrayTestBinning ()
 
- Public Member Functions inherited from AliTPCCalibRawBase
 AliTPCCalibRawBase ()
 
 AliTPCCalibRawBase (const AliTPCCalibRawBase &calib)
 
AliTPCCalibRawBaseoperator= (const AliTPCCalibRawBase &source)
 
virtual ~AliTPCCalibRawBase ()
 
Bool_t ProcessEvent (AliTPCRawStreamV3 *const rawStreamV3)
 
Bool_t ProcessEvent (AliRawReader *const rawReader)
 
Bool_t ProcessEvent (eventHeaderStruct *const event)
 
virtual void UpdateDDL ()
 
virtual void ProcessBunch (const Int_t, const Int_t, const Int_t, const Int_t, const UInt_t, const UShort_t *)
 
void MergeBase (const AliTPCCalibRawBase *calib)
 
void SetRangeTime (Int_t firstTimeBin, Int_t lastTimeBin)
 
void SetAltroMapping (AliTPCAltroMapping **mapp)
 
void SetUseL1Phase (Bool_t useL1Phase=kTRUE)
 
void SetTimeStampEvent (UInt_t timestamp)
 
void SetRunNumber (UInt_t eventnumber)
 
Int_t GetFirstTimeBin () const
 
Int_t GetLastTimeBin () const
 
Int_t GetNevents () const
 
Double_t GetL1Phase () const
 
Double_t GetL1PhaseTB () const
 
Bool_t GetUseL1Phase () const
 
UInt_t GetRunNumber () const
 
UInt_t GetFirstTimeStamp () const
 
UInt_t GetLastTimeStamp () const
 
UInt_t GetTimeStamp () const
 
UInt_t GetEventType () const
 
AliTPCAltroMapping ** GetAltroMapping ()
 
const AliAltroRawStream * GetAltroRawStream () const
 
const AliTPCROCGetTPCROC () const
 
void IncrementNevents ()
 
virtual void DumpToFile (const Char_t *filename, const Char_t *dir="", Bool_t append=kFALSE)
 
TTreeSRedirectorGetDebugStreamer ()
 
void SetStreamLevel (Int_t streamLevel)
 
void SetDebugLevel (Int_t level)
 
Int_t GetStreamLevel () const
 
Int_t GetDebugLevel () const
 

Protected Member Functions

virtual void ResetEvent ()
 
virtual void EndEvent ()
 

Private Member Functions

void FindPedestal (Float_t part=.6)
 
void FindPulserSignal (TVectorD &param, Float_t &qSum)
 
TH2S * GetHisto (Int_t sector, TObjArray *arr, Int_t nbinsY, Float_t ymin, Float_t ymax, const Char_t *type, Bool_t force)
 
AliTPCCalROCGetCalRoc (Int_t sector, TObjArray *arr, Bool_t force) const
 
TVectorF * GetPadTimesEvent (Int_t sector, Bool_t force=kFALSE)
 
Bool_t IsEdgePad (Int_t sector, Int_t row, Int_t pad)
 
void ResetPad ()
 
void ProcessPad ()
 
TVectorF * GetPadInfoEvent (Int_t sector, TObjArray *arr, Bool_t force=kFALSE)
 
TVectorF * GetPadQEvent (Int_t sector, Bool_t force=kFALSE)
 
TVectorF * GetPadRMSEvent (Int_t sector, Bool_t force=kFALSE)
 
TVectorF * GetPadPedestalEvent (Int_t sector, Bool_t force=kFALSE)
 

Private Attributes

Int_t fNbinsT0
 Number of bins for T0 reference histogram. More...
 
Float_t fXminT0
 xmin of T0 reference histogram More...
 
Float_t fXmaxT0
 xmax of T0 reference histogram More...
 
Int_t fNbinsQ
 Number of bins for T0 reference histogram. More...
 
Float_t fXminQ
 xmin of T0 reference histogram More...
 
Float_t fXmaxQ
 xmax of T0 reference histogram More...
 
Int_t fNbinsRMS
 Number of bins for T0 reference histogram. More...
 
Float_t fXminRMS
 xmin of T0 reference histogram More...
 
Float_t fXmaxRMS
 xmax of T0 reference histogram More...
 
Int_t fPeakIntMinus
 Peak integral range for COG determination. Bins used before max bin. More...
 
Int_t fPeakIntPlus
 Peak integral range for COG determination. Bins used after max bin. More...
 
Bool_t fIsZeroSuppressed
 if data is zero suppressed More...
 
Int_t fLastSector
 ! Last sector processed More...
 
AliTPCParamfParam
 ! TPC information More...
 
AliTPCCalPadfPedestalTPC
 ! Pedestal Information More...
 
AliTPCCalPadfPadNoiseTPC
 ! Pad noise Information whole TPC More...
 
AliTPCCalPadfOutliers
 ! Outlier information. Those will not be used for calculating the T0 More...
 
AliTPCCalROCfPedestalROC
 ! Pedestal Information for current ROC More...
 
AliTPCCalROCfPadNoiseROC
 ! Pad noise Information for current ROC More...
 
TObjArray fCalRocArrayT0
 Array of AliTPCCalROC class for Time0 calibration. More...
 
TObjArray fCalRocArrayQ
 Array of AliTPCCalROC class for Charge calibration. More...
 
TObjArray fCalRocArrayRMS
 Array of AliTPCCalROC class for signal width calibration. More...
 
TObjArray fCalRocArrayOutliers
 Array of AliTPCCalROC class for signal outliers. More...
 
TObjArray fHistoQArray
 Calibration histograms for Charge distribution. More...
 
TObjArray fHistoT0Array
 Calibration histograms for Time0 distribution. More...
 
TObjArray fHistoRMSArray
 Calibration histograms for signal width distribution. More...
 
TH2F * fHMeanTimeSector
 Timing distribution per sector. More...
 
TVectorF fVMeanTimeSector
 Mean time per sector from analysis of fHMeanTimeSector. More...
 
TObjArray fPadTimesArrayEvent
 ! Pad Times for the event, before mean Time0 corrections More...
 
TObjArray fPadQArrayEvent
 ! Charge for the event, only needed for debugging streamer More...
 
TObjArray fPadRMSArrayEvent
 ! Signal width for the event, only needed for debugging streamer More...
 
TObjArray fPadPedestalArrayEvent
 ! Signal width for the event, only needed for debugging streamer More...
 
Int_t fCurrentChannel
 ! current channel processed More...
 
Int_t fCurrentSector
 ! current sector processed More...
 
Int_t fCurrentRow
 ! current row processed More...
 
Int_t fCurrentPad
 ! current pad processed More...
 
Float_t fMaxPadSignal
 ! maximum bin of current pad More...
 
Int_t fMaxTimeBin
 ! time bin with maximum value More...
 
TVectorF fPadSignal
 ! signal of current Pad More...
 
Float_t fPadPedestal
 ! Pedestal Value of current pad More...
 
Float_t fPadNoise
 ! Noise Value of current pad More...
 
TVectorF fVTime0Offset
 ! Time0 Offset from preprocessing for each sector; More...
 
TVectorF fVTime0OffsetCounter
 ! Time0 Offset from preprocessing for each sector; More...
 

Additional Inherited Members

- Protected Attributes inherited from AliTPCCalibRawBase
Int_t fFirstTimeBin
 First Time bin used for analysis. More...
 
Int_t fLastTimeBin
 Last Time bin used for analysis. More...
 
Int_t fNevents
 Number of processed events. More...
 
Int_t fDebugLevel
 ! debug level More...
 
Int_t fStreamLevel
 ! level of streamer output More...
 
UInt_t fRunNumber
 current run number from event header More...
 
UInt_t fFirstTimeStamp
 First event time stamp. More...
 
UInt_t fLastTimeStamp
 Last event time stamp. More...
 
UInt_t fTimeStamp
 ! time stamp from event header More...
 
UInt_t fEventType
 ! current event Type from event header More...
 
Double_t fAltroL1Phase
 ! L1 Phase More...
 
Float_t fAltroL1PhaseTB
 ! L1 Phase in time bins More...
 
Int_t fCurrRCUId
 ! Current RCU Id More...
 
Int_t fPrevRCUId
 ! Previous RCU Id More...
 
Int_t fCurrDDLNum
 ! Current DDL number More...
 
Int_t fPrevDDLNum
 ! Current DDL number More...
 
Bool_t fUseL1Phase
 use L1 Phase information? More...
 
TTreeSRedirectorfDebugStreamer
 ! debug streamer More...
 
AliAltroRawStream * fAltroRawStream
 ! pointer to the altro object More...
 
AliTPCAltroMapping ** fMapping
 ! Altro Mapping object More...
 
AliTPCROCfROC
 ! ROC information More...
 

Detailed Description

Implementation of the TPC pulser calibration.

Iplementation of the TPC pulser calibration.

Author
Jens Wiechula, Marian Ivanov J.Wie.nosp@m.chul.nosp@m.a@gsi.nosp@m..de, Maria.nosp@m.n.Iv.nosp@m.anov@.nosp@m.cern.nosp@m..ch

Class Description

The AliTPCCalibPulser class is used to get calibration data concerning the FEE using runs performed with the calibration pulser.

The information retrieved is

  • Time0 differences
  • Signal width differences
  • Amplification variations

the seen differences arise from the manufacturing tolerances of the PASAs and are very small within one chip and somewhat large between different chips.

Histograms: For each ROC three TH2S histos 'Reference Histograms' (ROC channel vs. [Time0, signal width, Q sum]) is created when it is filled for the first time (GetHisto[T0,RMS,Q](ROC,kTRUE)). The histos are stored in the TObjArrays fHistoT0Array, fHistoRMSArray and fHistoQArray.

Working principle:

Raw calibration pulser data is processed by calling one of the ProcessEvent(...) functions (see below). These in the end call the Update(...) function.

  • the Update(...) function: In this function the array fPadSignal is filled with the adc signals between the specified range fFirstTimeBin and fLastTimeBin for the current pad. before going to the next pad the ProcessPad() function is called, which analyses the data for one pad stored in fPadSignal.
    • the ProcessPad() function: Find Pedestal and Noise information

      Find the Pulser signal information

      • calculate mean = T0, RMS = signal width and Q sum in a range of -2+7 timebins around Q max the Q sum is scaled by pad area (see FindPulserSignal(...) function)

      Fill a temprary array for the T0 information (GetPadTimesEvent(fCurrentSector,kTRUE)) (why see below) Fill the Q sum and RMS values in the histograms (GetHisto[RMS,Q](ROC,kTRUE)),

At the end of each event the EndEvent() function is called

  • the EndEvent() function: calculate the mean T0 for each ROC and fill the Time0 histogram with Time0-<Time0 for="" roc>=""> This is done to overcome syncronisation problems between the trigger and the fec clock.

After accumulating the desired statistics the Analyse() function has to be called.

  • the Analyse() function Whithin this function the mean values of T0, RMS, Q are calculated for each pad, using the AliMathBase::GetCOG(...) function, and the calibration storage classes (AliTPCCalROC) are filled for each ROC. The calibration information is stored in the TObjArrays fCalRocArrayT0, fCalRocArrayRMS and fCalRocArrayQ;

User interface for filling data:

To Fill information one of the following functions can be used:

Bool_t ProcessEvent(eventHeaderStruct *event);

Bool_t ProcessEvent(AliRawReader *rawReader);

Bool_t ProcessEvent(AliTPCRawStreamV3 *rawStream);

Int_t Update(const Int_t isector, const Int_t iRow, const Int_t iPad, const Int_t iTimeBin, const Float_t signal);

  • directly fill signal information (sector, row, pad, time bin, pad) to the reference histograms

It is also possible to merge two independently taken calibrations using the function

void Merge(AliTPCCalibPulser *sig)

  • copy histograms in 'sig' if the do not exist in this instance
  • Add histograms in 'sig' to the histograms in this instance if the allready exist
  • After merging call Analyse again!

– example: filling data using root raw data:

void fillSignal(Char_t *filename)
{
rawReader = new AliRawReaderRoot(fileName);
if ( !rawReader ) return;
while (rawReader->NextEvent()){
calib->ProcessEvent(rawReader);
}
calib->Analyse();
calib->DumpToFile("SignalData.root");
delete rawReader;
delete calib;
}

What kind of information is stored and how to retrieve them:

  • Accessing the 'Reference Histograms' (Time0, signal width and Q sum information pad by pad):

    TH2F *GetHistoT0(Int_t sector); TH2F *GetHistoRMS(Int_t sector); TH2F *GetHistoQ(Int_t sector);

  • Accessing the calibration storage objects:

    AliTPCCalROC *GetCalRocT0(Int_t sector); // for the Time0 values AliTPCCalROC *GetCalRocRMS(Int_t sector); // for the signal width values AliTPCCalROC *GetCalRocQ(Int_t sector); // for the Q sum values

    example for visualisation: if the file "SignalData.root" was created using the above example one could do the following:

TFile fileSignal("SignalData.root")
sig->GetCalRocT0(0)->Draw("colz");
sig->GetCalRocRMS(0)->Draw("colz");

or use the AliTPCCalPad functionality:

AliTPCCalPad padT0(ped->GetCalPadT0());
AliTPCCalPad padSigWidth(ped->GetCalPadRMS());
padT0->MakeHisto2D()->Draw("colz"); //Draw A-Side Time0 Information
padSigWidth->MakeHisto2D()->Draw("colz"); //Draw A-Side signal width Information

Definition at line 24 of file AliTPCCalibPulser.h.

Constructor & Destructor Documentation

AliTPCCalibPulser::AliTPCCalibPulser ( )

Definition at line 203 of file AliTPCCalibPulser.cxx.

Referenced by operator=().

AliTPCCalibPulser::AliTPCCalibPulser ( const AliTPCCalibPulser sig)

AliTPCSignal default constructor

Definition at line 258 of file AliTPCCalibPulser.cxx.

AliTPCCalibPulser::AliTPCCalibPulser ( const TMap *  config)

This constructor uses a TMap for setting some parametes

Definition at line 342 of file AliTPCCalibPulser.cxx.

AliTPCCalibPulser::~AliTPCCalibPulser ( )
virtual

destructor

Definition at line 421 of file AliTPCCalibPulser.cxx.

Member Function Documentation

void AliTPCCalibPulser::Analyse ( )
virtual

Calculate calibration constants

debug

debug

Reimplemented from AliTPCCalibRawBase.

Definition at line 1047 of file AliTPCCalibPulser.cxx.

void AliTPCCalibPulser::EndEvent ( )
protectedvirtual

Process data of current event

Reimplemented from AliTPCCalibRawBase.

Definition at line 698 of file AliTPCCalibPulser.cxx.

Referenced by GetPeakIntegralPlus().

void AliTPCCalibPulser::FindPedestal ( Float_t  part = .6)
private

find pedestal and noise for the current pad. Use either database or truncated mean with part*100%

Definition at line 498 of file AliTPCCalibPulser.cxx.

Referenced by ProcessPad().

void AliTPCCalibPulser::FindPulserSignal ( TVectorD param,
Float_t &  qSum 
)
private

Find position, signal width and height of the CE signal (last signal) param[0] = Qmax, param[1] = mean time, param[2] = rms; maxima: array of local maxima of the pad signal use the one closest to the mean CE position

Definition at line 578 of file AliTPCCalibPulser.cxx.

Referenced by ProcessPad().

const TObjArray* AliTPCCalibPulser::GetCalPadOutliers ( ) const
inline

Definition at line 49 of file AliTPCCalibPulser.h.

const TObjArray* AliTPCCalibPulser::GetCalPadQ ( ) const
inline
const TObjArray* AliTPCCalibPulser::GetCalPadRMS ( ) const
inline
const TObjArray* AliTPCCalibPulser::GetCalPadT0 ( ) const
inline
AliTPCCalROC * AliTPCCalibPulser::GetCalRoc ( Int_t  sector,
TObjArray arr,
Bool_t  force 
) const
private

return pointer to ROC Calibration if force is true create a new histogram if it doesn't exist allready

Definition at line 866 of file AliTPCCalibPulser.cxx.

Referenced by GetCalRocOutliers(), GetCalRocQ(), GetCalRocRMS(), and GetCalRocT0().

AliTPCCalROC * AliTPCCalibPulser::GetCalRocOutliers ( Int_t  sector,
Bool_t  force = kFALSE 
)

return pointer to Outliers if force is true create a new histogram if it doesn't exist allready

Definition at line 909 of file AliTPCCalibPulser.cxx.

Referenced by Analyse().

AliTPCCalROC * AliTPCCalibPulser::GetCalRocQ ( Int_t  sector,
Bool_t  force = kFALSE 
)

return pointer to T0 ROC Calibration if force is true create a new histogram if it doesn't exist allready

Definition at line 891 of file AliTPCCalibPulser.cxx.

Referenced by Analyse(), and AliTPCPreprocessor::ExtractPulser().

AliTPCCalROC * AliTPCCalibPulser::GetCalRocRMS ( Int_t  sector,
Bool_t  force = kFALSE 
)

return pointer to signal width ROC Calibration if force is true create a new histogram if it doesn't exist allready

Definition at line 900 of file AliTPCCalibPulser.cxx.

Referenced by Analyse(), and AliTPCPreprocessor::ExtractPulser().

AliTPCCalROC * AliTPCCalibPulser::GetCalRocT0 ( Int_t  sector,
Bool_t  force = kFALSE 
)

return pointer to Carge ROC Calibration if force is true create a new histogram if it doesn't exist allready

Definition at line 882 of file AliTPCCalibPulser.cxx.

Referenced by Analyse(), and AliTPCPreprocessor::ExtractPulser().

Short_t AliTPCCalibPulser::GetDebugLevel ( ) const
inline

Definition at line 60 of file AliTPCCalibPulser.h.

TH2S * AliTPCCalibPulser::GetHisto ( Int_t  sector,
TObjArray arr,
Int_t  nbinsY,
Float_t  ymin,
Float_t  ymax,
const Char_t *  type,
Bool_t  force 
)
private

return pointer to Q histogram if force is true create a new histogram if it doesn't exist allready

Definition at line 755 of file AliTPCCalibPulser.cxx.

Referenced by GetHistoQ(), GetHistoRMS(), and GetHistoT0().

TH2S * AliTPCCalibPulser::GetHistoQ ( Int_t  sector,
Bool_t  force = kFALSE 
)

return pointer to Q histogram if force is true create a new histogram if it doesn't exist allready

Definition at line 784 of file AliTPCCalibPulser.cxx.

Referenced by Analyse(), GetCalPadOutliers(), Merge(), ProcessPad(), and TestBinning().

TH2S * AliTPCCalibPulser::GetHistoRMS ( Int_t  sector,
Bool_t  force = kFALSE 
)

return pointer to Q histogram if force is true create a new histogram if it doesn't exist allready

Definition at line 793 of file AliTPCCalibPulser.cxx.

Referenced by Analyse(), GetCalPadOutliers(), Merge(), ProcessPad(), and TestBinning().

TH2S * AliTPCCalibPulser::GetHistoT0 ( Int_t  sector,
Bool_t  force = kFALSE 
)

return pointer to T0 histogram if force is true create a new histogram if it doesn't exist allready

Definition at line 775 of file AliTPCCalibPulser.cxx.

Referenced by Analyse(), EndEvent(), GetCalPadOutliers(), Merge(), and TestBinning().

TH2F * AliTPCCalibPulser::GetHistoTSec ( )

return the pointer to the abs time distribution per sector create it if it does not exist

!!if you change the binning here, you should also change it in the Analyse Function!!

Definition at line 802 of file AliTPCCalibPulser.cxx.

Referenced by FindPulserSignal(), and GetCalPadOutliers().

Bool_t AliTPCCalibPulser::GetIsZeroSupperssed ( ) const
inline

Definition at line 76 of file AliTPCCalibPulser.h.

Float_t AliTPCCalibPulser::GetMeanTimeSector ( Int_t  sector) const
inline

Definition at line 57 of file AliTPCCalibPulser.h.

const TVectorF* AliTPCCalibPulser::GetMeanTimeSectorArray ( ) const
inline

Definition at line 58 of file AliTPCCalibPulser.h.

TVectorF * AliTPCCalibPulser::GetPadInfoEvent ( Int_t  sector,
TObjArray arr,
Bool_t  force = kFALSE 
)
private

return pointer to Pad Info from 'arr' for the current event and sector if force is true create it if it doesn't exist allready

Definition at line 814 of file AliTPCCalibPulser.cxx.

Referenced by GetPadPedestalEvent(), GetPadQEvent(), GetPadRMSEvent(), and GetPadTimesEvent().

TVectorF * AliTPCCalibPulser::GetPadPedestalEvent ( Int_t  sector,
Bool_t  force = kFALSE 
)
private

return pointer to Pad RMS Array for the current event and sector if force is true create it if it doesn't exist allready for debugging purposes only

Definition at line 856 of file AliTPCCalibPulser.cxx.

Referenced by ProcessPad().

TVectorF * AliTPCCalibPulser::GetPadQEvent ( Int_t  sector,
Bool_t  force = kFALSE 
)
private

return pointer to Pad Q Array for the current event and sector if force is true create it if it doesn't exist allready for debugging purposes only

Definition at line 836 of file AliTPCCalibPulser.cxx.

Referenced by EndEvent(), and ProcessPad().

TVectorF * AliTPCCalibPulser::GetPadRMSEvent ( Int_t  sector,
Bool_t  force = kFALSE 
)
private

return pointer to Pad RMS Array for the current event and sector if force is true create it if it doesn't exist allready for debugging purposes only

Definition at line 846 of file AliTPCCalibPulser.cxx.

Referenced by EndEvent(), and ProcessPad().

TVectorF * AliTPCCalibPulser::GetPadTimesEvent ( Int_t  sector,
Bool_t  force = kFALSE 
)
private

return pointer to Pad Times Array for the current event and sector if force is true create it if it doesn't exist allready

Definition at line 827 of file AliTPCCalibPulser.cxx.

Referenced by EndEvent(), and ProcessPad().

Float_t AliTPCCalibPulser::GetPeakIntegralMinus ( ) const
inline

Definition at line 78 of file AliTPCCalibPulser.h.

Float_t AliTPCCalibPulser::GetPeakIntegralPlus ( ) const
inline

Definition at line 79 of file AliTPCCalibPulser.h.

Bool_t AliTPCCalibPulser::IsEdgePad ( Int_t  sector,
Int_t  row,
Int_t  pad 
)
private

return true if pad is on the edge of a row

Definition at line 954 of file AliTPCCalibPulser.cxx.

Referenced by FindPulserSignal().

void AliTPCCalibPulser::Merge ( AliTPCCalibPulser *const  sig)

Merge reference histograms of sig to the current AliTPCCalibPulser

Definition at line 965 of file AliTPCCalibPulser.cxx.

Referenced by GetPeakIntegralPlus(), and Merge().

Long64_t AliTPCCalibPulser::Merge ( TCollection *const  list)
virtual

Merge all objects of this type in list

Reimplemented from AliTPCCalibRawBase.

Definition at line 1025 of file AliTPCCalibPulser.cxx.

AliTPCCalibPulser & AliTPCCalibPulser::operator= ( const AliTPCCalibPulser source)

assignment operator

Definition at line 411 of file AliTPCCalibPulser.cxx.

void AliTPCCalibPulser::ProcessPad ( )
private

Process data of current pad

Definition at line 647 of file AliTPCCalibPulser.cxx.

Referenced by EndEvent(), and Update().

void AliTPCCalibPulser::Reset ( void  )

Delete all information: Arrays, Histograms, CalRoc objects

Definition at line 428 of file AliTPCCalibPulser.cxx.

Referenced by ~AliTPCCalibPulser().

void AliTPCCalibPulser::ResetEvent ( )
protectedvirtual

Reset global counters – Should be called before each event is processed

Reimplemented from AliTPCCalibRawBase.

Definition at line 918 of file AliTPCCalibPulser.cxx.

Referenced by GetPeakIntegralPlus().

void AliTPCCalibPulser::ResetPad ( )
private

Reset pad infos – Should be called after a pad has been processed

Definition at line 942 of file AliTPCCalibPulser.cxx.

Referenced by ProcessPad(), and ResetEvent().

void AliTPCCalibPulser::SetDebugLevel ( Short_t  debug = 1)
inline

Definition at line 69 of file AliTPCCalibPulser.h.

void AliTPCCalibPulser::SetIsZeroSuppressed ( Bool_t  zs = kTRUE)
inline

Definition at line 71 of file AliTPCCalibPulser.h.

void AliTPCCalibPulser::SetOutliers ( AliTPCCalPad *const  outliers)
inline

Definition at line 74 of file AliTPCCalibPulser.h.

void AliTPCCalibPulser::SetPedestalDatabase ( AliTPCCalPad *const  pedestalTPC,
AliTPCCalPad *const  padNoiseTPC 
)
inline

Definition at line 73 of file AliTPCCalibPulser.h.

void AliTPCCalibPulser::SetRangePeakIntegral ( Int_t  minus,
Int_t  plus 
)
inline

Definition at line 67 of file AliTPCCalibPulser.h.

void AliTPCCalibPulser::SetRangeRefQ ( Int_t  nBins,
Float_t  xMin,
Float_t  xMax 
)
inline

Definition at line 64 of file AliTPCCalibPulser.h.

void AliTPCCalibPulser::SetRangeRefRMS ( Int_t  nBins,
Float_t  xMin,
Float_t  xMax 
)
inline

Definition at line 66 of file AliTPCCalibPulser.h.

void AliTPCCalibPulser::SetRangeRefT0 ( Int_t  nBins,
Float_t  xMin,
Float_t  xMax 
)
inline

Definition at line 65 of file AliTPCCalibPulser.h.

void AliTPCCalibPulser::SetRangeTime ( Int_t  firstTimeBin,
Int_t  lastTimeBin 
)
inline

Definition at line 62 of file AliTPCCalibPulser.h.

TObjArray * AliTPCCalibPulser::TestBinning ( )

Function to test the binning of the reference histograms type: T0, Q or RMS mode: 0 - number of filled bins per channel 1 - number of empty bins between filled bins in one ROC returns TObjArray with the test histograms type*2+mode: position 0 = T0,0 ; 1 = T0,1 ; 2 = Q,0 ...

Definition at line 1170 of file AliTPCCalibPulser.cxx.

Referenced by GetPeakIntegralPlus().

Int_t AliTPCCalibPulser::Update ( const Int_t  isector,
const Int_t  iRow,
const Int_t  iPad,
const Int_t  iTimeBin,
const Float_t  signal 
)
virtual

Signal filling methode on the fly pedestal and time offset correction if necessary. no extra analysis necessary. Assumes knowledge of the signal shape! assumes that it is looped over consecutive time bins of one pad

Reimplemented from AliTPCCalibRawBase.

Definition at line 449 of file AliTPCCalibPulser.cxx.

Member Data Documentation

TObjArray AliTPCCalibPulser::fCalRocArrayOutliers
private

Array of AliTPCCalROC class for signal outliers.

Definition at line 121 of file AliTPCCalibPulser.h.

Referenced by AliTPCCalibPulser(), GetCalPadOutliers(), GetCalRocOutliers(), and Reset().

TObjArray AliTPCCalibPulser::fCalRocArrayQ
private

Array of AliTPCCalROC class for Charge calibration.

Definition at line 119 of file AliTPCCalibPulser.h.

Referenced by AliTPCCalibPulser(), GetCalPadQ(), GetCalRocQ(), and Reset().

TObjArray AliTPCCalibPulser::fCalRocArrayRMS
private

Array of AliTPCCalROC class for signal width calibration.

Definition at line 120 of file AliTPCCalibPulser.h.

Referenced by AliTPCCalibPulser(), GetCalPadRMS(), GetCalRocRMS(), and Reset().

TObjArray AliTPCCalibPulser::fCalRocArrayT0
private

Array of AliTPCCalROC class for Time0 calibration.

Definition at line 118 of file AliTPCCalibPulser.h.

Referenced by AliTPCCalibPulser(), GetCalPadT0(), GetCalRocT0(), and Reset().

Int_t AliTPCCalibPulser::fCurrentChannel
private

! current channel processed

Definition at line 135 of file AliTPCCalibPulser.h.

Referenced by FindPedestal(), FindPulserSignal(), ProcessPad(), ResetEvent(), and Update().

Int_t AliTPCCalibPulser::fCurrentPad
private

! current pad processed

Definition at line 138 of file AliTPCCalibPulser.h.

Referenced by FindPulserSignal(), ProcessPad(), ResetEvent(), and Update().

Int_t AliTPCCalibPulser::fCurrentRow
private

! current row processed

Definition at line 137 of file AliTPCCalibPulser.h.

Referenced by FindPulserSignal(), ProcessPad(), ResetEvent(), and Update().

Int_t AliTPCCalibPulser::fCurrentSector
private

! current sector processed

Definition at line 136 of file AliTPCCalibPulser.h.

Referenced by FindPedestal(), FindPulserSignal(), ProcessPad(), ResetEvent(), and Update().

TObjArray AliTPCCalibPulser::fHistoQArray
private

Calibration histograms for Charge distribution.

Definition at line 123 of file AliTPCCalibPulser.h.

Referenced by AliTPCCalibPulser(), GetHistoQ(), Merge(), and Reset().

TObjArray AliTPCCalibPulser::fHistoRMSArray
private

Calibration histograms for signal width distribution.

Definition at line 125 of file AliTPCCalibPulser.h.

Referenced by AliTPCCalibPulser(), GetHistoRMS(), Merge(), and Reset().

TObjArray AliTPCCalibPulser::fHistoT0Array
private

Calibration histograms for Time0 distribution.

Definition at line 124 of file AliTPCCalibPulser.h.

Referenced by AliTPCCalibPulser(), GetHistoT0(), Merge(), and Reset().

TH2F* AliTPCCalibPulser::fHMeanTimeSector
private

Timing distribution per sector.

Definition at line 127 of file AliTPCCalibPulser.h.

Referenced by AliTPCCalibPulser(), Analyse(), GetHistoTSec(), Merge(), and Reset().

Bool_t AliTPCCalibPulser::fIsZeroSuppressed
private

if data is zero suppressed

Definition at line 106 of file AliTPCCalibPulser.h.

Referenced by AliTPCCalibPulser(), FindPedestal(), GetIsZeroSupperssed(), and SetIsZeroSuppressed().

Int_t AliTPCCalibPulser::fLastSector
private

! Last sector processed

Definition at line 108 of file AliTPCCalibPulser.h.

Referenced by FindPedestal(), ResetEvent(), and Update().

Float_t AliTPCCalibPulser::fMaxPadSignal
private

! maximum bin of current pad

Definition at line 139 of file AliTPCCalibPulser.h.

Referenced by ResetPad(), and Update().

Int_t AliTPCCalibPulser::fMaxTimeBin
private

! time bin with maximum value

Definition at line 140 of file AliTPCCalibPulser.h.

Referenced by EndEvent(), FindPulserSignal(), ResetPad(), and Update().

Int_t AliTPCCalibPulser::fNbinsQ
private

Number of bins for T0 reference histogram.

Definition at line 97 of file AliTPCCalibPulser.h.

Referenced by AliTPCCalibPulser(), Analyse(), GetHistoQ(), SetRangeRefQ(), and TestBinning().

Int_t AliTPCCalibPulser::fNbinsRMS
private

Number of bins for T0 reference histogram.

Definition at line 100 of file AliTPCCalibPulser.h.

Referenced by AliTPCCalibPulser(), Analyse(), GetHistoRMS(), SetRangeRefRMS(), and TestBinning().

Int_t AliTPCCalibPulser::fNbinsT0
private

Number of bins for T0 reference histogram.

Definition at line 94 of file AliTPCCalibPulser.h.

Referenced by AliTPCCalibPulser(), Analyse(), GetHistoT0(), SetRangeRefT0(), and TestBinning().

AliTPCCalPad* AliTPCCalibPulser::fOutliers
private

! Outlier information. Those will not be used for calculating the T0

Definition at line 114 of file AliTPCCalibPulser.h.

Referenced by FindPulserSignal(), and SetOutliers().

Float_t AliTPCCalibPulser::fPadNoise
private

! Noise Value of current pad

Definition at line 143 of file AliTPCCalibPulser.h.

Referenced by FindPedestal(), FindPulserSignal(), and ResetPad().

AliTPCCalROC* AliTPCCalibPulser::fPadNoiseROC
private

! Pad noise Information for current ROC

Definition at line 116 of file AliTPCCalibPulser.h.

Referenced by FindPedestal().

AliTPCCalPad* AliTPCCalibPulser::fPadNoiseTPC
private

! Pad noise Information whole TPC

Definition at line 113 of file AliTPCCalibPulser.h.

Referenced by FindPedestal(), and SetPedestalDatabase().

Float_t AliTPCCalibPulser::fPadPedestal
private

! Pedestal Value of current pad

Definition at line 142 of file AliTPCCalibPulser.h.

Referenced by FindPedestal(), FindPulserSignal(), ProcessPad(), and ResetPad().

TObjArray AliTPCCalibPulser::fPadPedestalArrayEvent
private

! Signal width for the event, only needed for debugging streamer

Definition at line 133 of file AliTPCCalibPulser.h.

Referenced by GetPadPedestalEvent(), Reset(), and ResetEvent().

TObjArray AliTPCCalibPulser::fPadQArrayEvent
private

! Charge for the event, only needed for debugging streamer

Definition at line 131 of file AliTPCCalibPulser.h.

Referenced by GetPadQEvent(), Reset(), and ResetEvent().

TObjArray AliTPCCalibPulser::fPadRMSArrayEvent
private

! Signal width for the event, only needed for debugging streamer

Definition at line 132 of file AliTPCCalibPulser.h.

Referenced by GetPadRMSEvent(), Reset(), and ResetEvent().

TVectorF AliTPCCalibPulser::fPadSignal
private

! signal of current Pad

Definition at line 141 of file AliTPCCalibPulser.h.

Referenced by FindPedestal(), FindPulserSignal(), ProcessPad(), ResetPad(), and Update().

TObjArray AliTPCCalibPulser::fPadTimesArrayEvent
private

! Pad Times for the event, before mean Time0 corrections

Definition at line 130 of file AliTPCCalibPulser.h.

Referenced by GetPadTimesEvent(), Reset(), and ResetEvent().

AliTPCParam* AliTPCCalibPulser::fParam
private

! TPC information

Definition at line 110 of file AliTPCCalibPulser.h.

Referenced by AliTPCCalibPulser(), FindPulserSignal(), and ~AliTPCCalibPulser().

Int_t AliTPCCalibPulser::fPeakIntMinus
private

Peak integral range for COG determination. Bins used before max bin.

Definition at line 103 of file AliTPCCalibPulser.h.

Referenced by AliTPCCalibPulser(), FindPulserSignal(), GetPeakIntegralMinus(), and SetRangePeakIntegral().

Int_t AliTPCCalibPulser::fPeakIntPlus
private

Peak integral range for COG determination. Bins used after max bin.

Definition at line 104 of file AliTPCCalibPulser.h.

Referenced by AliTPCCalibPulser(), FindPulserSignal(), GetPeakIntegralPlus(), and SetRangePeakIntegral().

AliTPCCalROC* AliTPCCalibPulser::fPedestalROC
private

! Pedestal Information for current ROC

Definition at line 115 of file AliTPCCalibPulser.h.

Referenced by FindPedestal().

AliTPCCalPad* AliTPCCalibPulser::fPedestalTPC
private

! Pedestal Information

Definition at line 112 of file AliTPCCalibPulser.h.

Referenced by FindPedestal(), and SetPedestalDatabase().

TVectorF AliTPCCalibPulser::fVMeanTimeSector
private

Mean time per sector from analysis of fHMeanTimeSector.

Definition at line 128 of file AliTPCCalibPulser.h.

Referenced by AliTPCCalibPulser(), Analyse(), GetMeanTimeSector(), and GetMeanTimeSectorArray().

TVectorF AliTPCCalibPulser::fVTime0Offset
private

! Time0 Offset from preprocessing for each sector;

Definition at line 145 of file AliTPCCalibPulser.h.

Referenced by EndEvent(), FindPulserSignal(), and ResetEvent().

TVectorF AliTPCCalibPulser::fVTime0OffsetCounter
private

! Time0 Offset from preprocessing for each sector;

Definition at line 146 of file AliTPCCalibPulser.h.

Referenced by EndEvent(), FindPulserSignal(), and ResetEvent().

Float_t AliTPCCalibPulser::fXmaxQ
private

xmax of T0 reference histogram

Definition at line 99 of file AliTPCCalibPulser.h.

Referenced by AliTPCCalibPulser(), Analyse(), GetHistoQ(), and SetRangeRefQ().

Float_t AliTPCCalibPulser::fXmaxRMS
private

xmax of T0 reference histogram

Definition at line 102 of file AliTPCCalibPulser.h.

Referenced by AliTPCCalibPulser(), Analyse(), GetHistoRMS(), and SetRangeRefRMS().

Float_t AliTPCCalibPulser::fXmaxT0
private

xmax of T0 reference histogram

Definition at line 96 of file AliTPCCalibPulser.h.

Referenced by AliTPCCalibPulser(), Analyse(), GetHistoT0(), and SetRangeRefT0().

Float_t AliTPCCalibPulser::fXminQ
private

xmin of T0 reference histogram

Definition at line 98 of file AliTPCCalibPulser.h.

Referenced by AliTPCCalibPulser(), Analyse(), GetHistoQ(), and SetRangeRefQ().

Float_t AliTPCCalibPulser::fXminRMS
private

xmin of T0 reference histogram

Definition at line 101 of file AliTPCCalibPulser.h.

Referenced by AliTPCCalibPulser(), Analyse(), GetHistoRMS(), and SetRangeRefRMS().

Float_t AliTPCCalibPulser::fXminT0
private

xmin of T0 reference histogram

Definition at line 95 of file AliTPCCalibPulser.h.

Referenced by AliTPCCalibPulser(), Analyse(), GetHistoT0(), and SetRangeRefT0().


The documentation for this class was generated from the following files: