GET library
GETActarTpcAnalyser Class Reference

#include <GETActarTpcAnalyser.hh>

Inheritance diagram for GETActarTpcAnalyser:
GETSystemAnalyser

Public Member Functions

Constructors, affectation, destructor
 GETActarTpcAnalyser (GETActarTpc *get=NULL)
 
virtual ~GETActarTpcAnalyser ()
 
General functions
virtual void Reset ()
 
virtual int SetSystem (GETSystem *gptr)
 
GETActarTpcGetActarSystem ()
 
Main analysis functions, called by GETSystem
virtual void ClearAnalysis ()
 
virtual void ClearEvent ()
 
virtual int OutputCorrection ()
 
virtual int AnalyseRawEvent ()
 
virtual int AnalyseCorEvent ()
 
void SetIsolatedPadSuppression (u_int nn, u_int nnb=1)
 
Predefined analysis configuration files
virtual bool ConfigCommand (const GString &code, const GString &args="", FILE *fptr=NULL)
 
Pads signal automatic histograms
virtual double ComputeSumInt (bool mask=true)
 
virtual double ComputeSumMax (bool mask=true)
 
void SetDriftTimeOffset (double toff)
 
double GetDriftTimeOffset () const
 
void SetAutoFill (bool b=true)
 
TH2D * CreateXYtimeHisto (const string &name="GET_XY_Time")
 
TH2D * CreateXYdataHisto (const string &name="GET_XY_Data")
 
TH2D * CreateXYhitsHisto (const string &name="GET_XY_Hits")
 
TH2D * CreateXYamplitudeHisto (const string &name="GET_XY_Amplitude")
 
TH2D * CreateXTamplitudeHisto (const string &name="GET_XT_Amplitude")
 
TH2D * CreateYTamplitudeHisto (const string &name="GET_YT_Amplitude")
 
TH3D * CreateXYTHisto (const string &name="GET_XYT", int nt=512, double t0=0., double t1=512.)
 
TH1D * CreateXprojectionHisto (const string &name="GET_X_Projection")
 
TH1D * CreateYprojectionHisto (const string &name="GET_Y_Projection")
 
TH1D * CreateTprojectionHisto (const string &name="GET_T_Projection")
 
TH2D * GetXYhitsHisto () const
 
TH2D * GetXYtimeHisto () const
 
TH2D * GetXYamplitudeHisto () const
 
TH2D * GetXTamplitudeHisto () const
 
TH2D * GetYTamplitudeHisto () const
 
TH3D * GetXYTHisto () const
 
TH1D * GetXprojectionHisto () const
 
TH1D * GetYprojectionHisto () const
 
TH1D * GetTprojectionHisto () const
 
Noise analysis (redefined from GETSystemAnalyser)
virtual void SetNoiseRange (u_int i0=2, u_int i1=509)
 
TH2D * GetChannelsNoiseHistoXY () const
 
virtual int ProcessNoiseAnalysis ()
 
Off-track signal analysis
virtual void SetOffTrackCorrection (int spc=1)
 
virtual void InitOffTrackAnalysis (int spc=1)
 
bool IsOffTrackAnalysisON () const
 
bool IsOffTrackCorrectionON () const
 
virtual const GETHitMaskXYGetOffTrackMask () const
 
virtual GETHitMaskXYGetOffTrackMask ()
 
TH1D * CreateInTrackMeanHisto (const string &hname="MeanInTrackSignal")
 
TH1D * CreateOffTrackMeanHisto (const string &hname="MeanOffTrackSignal")
 
TH2D * CreateInTrackPatternHisto (const string &hname="PatternInTrack")
 
TH2D * CreateOffTrackPatternHisto (const string &hname="PatternOffTrack")
 
virtual int ProcessOffTrackAnalysis ()
 
virtual int ApplyOffTrackCorrection ()
 
virtual int GetOffTrackPadsCount () const
 
GETSampleGetInTrackMeanSample ()
 
GETSampleGetOffTrackMeanSample ()
 
TH1D * GetInTrackMeanHisto ()
 
TH1D * GetOffTrackMeanHisto ()
 
TH2D * GetInTrackPatternHisto ()
 
TH2D * GetOffTrackPatternHisto ()
 
Pads signal histograms general functions
TH2D * CreatePadHistogram (const string &name)
 
TH3D * CreateHistogram3D (const string &name, int nt, double t0, double t1)
 
TH2D * CreateHistogramXT (const string &name, int nt, double t0, double t1)
 
TH2D * CreateHistogramYT (const string &name, int nt, double t0, double t1)
 
TH2D * CreateHistogramXT (const string &name)
 
TH2D * CreateHistogramYT (const string &name)
 
TH1D * CreateHistogramX (const string &name)
 
TH1D * CreateHistogramY (const string &name)
 
TH1D * CreateHistogramT (const string &name)
 
int FillPadHistogram (TH2 *hptr, u_short mode=GET::dataAmplitude)
 
int FillHistogram3D (TH3 *hptr, double toffset=0., u_short mode=0)
 
int FillHistogramXTmax (TH2 *hptr, double toffset=0., u_short mode=0)
 
int FillHistogramYTmax (TH2 *hptr, double toffset=0., u_short mode=0)
 
TGraph2DErrors * CreateGraphXYT (bool weight=true)
 
TGraphErrors * CreateGraph2D (const string &dims="XY", bool weight=true)
 
TGraphErrors * CreateGraphXY (bool weight=true)
 
TGraphErrors * CreateGraphXT (bool weight=true)
 
TGraphErrors * CreateGraphYT (bool weight=true)
 
virtual void ClearAutoHistograms ()
 
virtual int FillAutoHistograms ()
 
virtual int SetValidPads (const string &fname, const string &hname, double thr=0.5, u_short mode=3)
 
virtual int SetValidPads (TH2 *hptr, double thr=0.5, u_short mode=3)
 
ROOT related functions
 ClassDef (GETActarTpcAnalyser, 0)
 
- Public Member Functions inherited from GETSystemAnalyser
 GETSystemAnalyser (GETSystem *get=NULL)
 
virtual ~GETSystemAnalyser ()
 
GETSystemGetSystem ()
 
u_int GetChannelNumber () const
 
void SetEventsSkip (u_int n)
 
u_int GetEventsSkip ()
 
u_int GetAnalysisEventsCounter ()
 
virtual void IncrAnalysisEventCount ()
 
void SetSelectedData (u_short id)
 
void SetSelectedHitData (u_short id)
 
void SetSelectedSignalData (u_short id)
 
int GetSelectedHitData () const
 
int GetSelectedSignalData () const
 
void SetFullRec (bool b=true)
 
bool IsFullRecSet () const
 
virtual void SetRecTmin (double t)
 
virtual void SetRecTmax (double t)
 
virtual void SetRecTlimits (double t0, double t1)
 
double GetRecTmin () const
 
double GetRecTmax () const
 
u_int GetRecITmin () const
 
u_int GetRecITmax () const
 
virtual int AnalyseRunStart ()
 
virtual int AnalyseRunStop ()
 
virtual void BadChannelsWarning ()
 
virtual bool IsChannelBad (u_int ich) const
 
virtual u_int BadChannelCount () const
 
virtual double GetMaximumSignal () const
 
virtual u_int GetMaximumChannel () const
 
virtual int ReadConfigFile (const string &cfg)
 
virtual int ReadConfigFile (FILE *fp)
 
TH2D * CreateFullEventRawHisto (const string &hname)
 
TH2D * CreateFullEventCorHisto (const string &hname)
 
TH2D * GetFullEventRawHisto () const
 
TH2D * GetFullEventCorHisto () const
 
virtual TF1 * PresetChannelFctParameters (double vmax, double tmax, double wid)
 
virtual int GetChannelFctAmplitude (u_int ic, double &vmax, double &tmax, double &wid)
 
virtual TF1 * SetChannelFctParameters (u_int ic)
 
void SetAmplitudeMode (u_short mode, double win=0.)
 
void SetAmplitudeWindow (double win)
 
u_short GetAmplitudeMode () const
 
void SetTimingMode (u_short mode)
 
void SetTimingModeCFD (double frac, double delay)
 
u_short GetTimingMode () const
 
virtual int CalcChannelAmplitude (u_int ic, double &vmax, double &tmax, double &wid)
 
virtual int CalcChannelMaxima (u_int ic)
 
void InitAmplitudeData ()
 
void InitMaximaData ()
 
void ResetMaximaData ()
 
void ClearAmplitudeData ()
 
virtual void ComputeAmplitudeData ()
 
bool IsAmplitudeDataComputed () const
 
double GetChannelAmplitude (u_int ich) const
 
double GetChannelTime (u_int ich) const
 
double GetChannelWidth (u_int ich) const
 
void SetMaximaScaling (double fact)
 
void SetMaximaDiffThreshold (double thr)
 
bool IsMaximaDataComputed () const
 
bool IsMultiMaxDefined () const
 
int GetMultiMaxTotal () const
 
double GetMultiMaxSumAll () const
 
int GetMultiMaxNum (u_int ich) const
 
double GetMultiMaxSum (u_int ich) const
 
double GetMultiMaxAmplitude (u_int ich, u_int imax) const
 
double GetMultiMaxWidth (u_int ich, u_int imax) const
 
double GetMultiMaxTime (u_int ich, u_int imax) const
 
TH1D * CreateChannelsMaxRawHisto (const string &hname)
 
TH1D * CreateChannelsMaxCorHisto (const string &hname)
 
TH1D * CreateChannelsTimeRawHisto (const string &hname)
 
TH1D * CreateChannelsTimeCorHisto (const string &hname)
 
TH1D * GetChannelsMaxRawHisto () const
 
TH1D * GetChannelsMaxCorHisto () const
 
virtual void InitDataNumberCheck (u_int n0, u_int n1)
 
bool IsDataNumberCheckON () const
 
virtual void SetDataNumberRejectThreshold (u_int nmin)
 
virtual int ProcessDataNumberCheck ()
 
virtual int GetDataNumberBadCount () const
 
virtual int BadDataNumberCorrect ()
 
virtual void InitDataContinuityCheck (double dmax)
 
bool IsDataContinuityCheckON () const
 
virtual bool ContinuityCheck (GETSample &sample)
 
virtual int ProcessDataContinuityCheck ()
 
virtual int GetDataContinuityBadCount () const
 
u_int GetNoiseIndexMin () const
 
u_int GetNoiseIndexMax () const
 
TH1D * GetChannelsNoiseHisto () const
 
bool IsNoiseAnalysisON () const
 
virtual int FillCumulNoiseHisto (TH2 *hptr)
 
virtual void InitResolutionAnalysis (int n, double amin, double amax)
 
virtual void ClearResolutionAnalysis ()
 
bool IsResolutionAnalysisON () const
 
TH2I * GetResolutionMaxHisto () const
 
TH1D * GetResolutionHisto () const
 
virtual int ProcessResolutionAnalysis ()
 
virtual void InitBaseFluctuations (u_int i0=2, u_int i1=32, double warn=0.)
 
virtual void ClearBaseFluctuations ()
 
TH1D * GetBaseFluctuationsHisto () const
 
bool IsFluctuationsAnalysisON () const
 
virtual int ProcessFluctuationsAnalysis ()
 
virtual int GetFluctuationsBadCount () const
 
virtual int FillCumulFluctuationsHisto (TH2 *hptr)
 
virtual void InitFPNtest (u_int i1min, u_int i1max, u_int i2min, u_int i2max, double dmin, double dmax)
 
bool IsFPNtestAnalysisON () const
 
virtual int ProcessFPNtestAnalysis ()
 
virtual int GetFPNtestBadCount () const
 
TH1D * CreateChannelsHisto1D (const string &name, const string &ytit="", bool fpn=true)
 
TH2D * CreateChannelsHisto2D (const string &name, int ny, double ymin, double ymax, const string &ytit="", bool fpn=true)
 
TH1I * CreateChannelsHisto1I (const string &name, const string &ytit="", bool fpn=true)
 
TH2I * CreateChannelsHisto2I (const string &name, int ny, double ymin, double ymax, const string &ytit="", bool fpn=true)
 
TH2D * CreateFullEventHisto (const string &name, bool fpn=true)
 
TH2D * CreateFullEventHisto (const string &name, int ny, double ymin, double ymax, bool fpn=true)
 
int FillFullEventHisto (TH2D *hptr, bool reset=true, bool fpn=true, double scale=1.)
 
TH1D * CreateChannelSummaryHisto (const string &name, bool fpn=true)
 
int FillChannelsSummaryHisto (TH1D *hptr, u_short fmod=GET::dataAmplitude, bool fpn=true, bool reset=true)
 
int CumulChannelsSummaryHisto (TH2 *hptr, u_short fmod=GET::dataAmplitude, bool fpn=true)
 
TH1D ** CreateAllChannelsHisto (const string &prefix="GET_", const string &suffix="")
 
int FillAllChannelsHisto (TH1D **htab, bool reset=true)
 
 ClassDef (GETSystemAnalyser, 0)
 

Protected Attributes

GETActarTpcactar_ptr
 Pointer to the GETActarTpc object (which is the GETSystem pointer of the base classe)
 
bool auto_fill
 Whether the histograms are filled automatically.
 
TH2D * h_mask_in
 Pad histogram with track pattern.
 
TH2D * h_mask_off
 Pad histogram with off-track pattern.
 
TH1D * h_mean_in_track
 Histogram with summed signals of track pads.
 
TH1D * h_mean_off_track
 Histogram with summed signals of off-track pads.
 
TH1D * h_t_proj
 Histogram with pads event amplitude.
 
TH1D * h_x_proj
 Histogram with pads event amplitude.
 
TH2D * h_xt_ampl
 Histogram with pads event amplitude.
 
TH2D * h_xy_ampl
 Histogram with pads event amplitude.
 
TH2D * h_xy_data
 Histogram with read pads.
 
TH2D * h_xy_hits
 Histogram with pads valid hits.
 
TH2D * h_xy_rms
 Pointer to the pads RMS histogram.
 
TH2D * h_xy_time
 Histogram with pads event time.
 
TH3D * h_xyt
 Histogram with 2D pad signal and third T dimension.
 
TH1D * h_y_proj
 Histogram with pads event amplitude.
 
TH2D * h_yt_ampl
 Histogram with pads event amplitude.
 
u_int mask_expand
 Expand the hit mask around the track.
 
u_int mask_isol_num
 Minimum number of neighbours to remove isolated pads.
 
u_int mask_isol_numb
 Minimum number of neighbours to remove isolated pads (border pads)
 
GETHitMaskXY off_mask
 Mask for X-Y off-track analysis.
 
int off_space
 Pads separation between track and off-track pads.
 
bool off_track_cor
 Whether to apply off-track correction to channels output signal.
 
bool off_track_on
 Whether off-track analysis is ON.
 
GETHitMaskXYpad_mask
 Pointer to the hit mask (same as base class hit mask, but known as GETHitMaskXY)
 
GETSample sum_in_track
 Sample with the sum of hit pads.
 
GETSample sum_off_track
 Sample with the sum of pads out of track.
 
double tdrift_offset
 Drift time axis offset.
 
bool update_mask
 Test if mask must be updated at analysis (after off-track correction)
 
- Protected Attributes inherited from GETSystemAnalyser
double * amax_amplitude
 Array of maximum amplitude values.
 
bool amax_computed
 Whether the maximum amplitude / time is computed.
 
double * amax_time
 Array of maximum amplitude times.
 
double * amax_width
 Array of width values.
 
u_short amplitude_mode
 Signal amplitude analysis mode.
 
double amplitude_window
 Signal amplitude analysis window size (for fit or average)
 
u_int ch_max_index
 Channel with maximum amplitude.
 
double ch_max_signal
 Maximum channel amplitude value.
 
bool * channel_bad
 Whether the channel contains bad data.
 
bool channel_bad_flag
 Whether there are bad channels.
 
bool cor_analysed
 Whether the corrected data analysis is performed.
 
int data_cont_bad
 Number of bad channels in analysis of the data continuity.
 
double data_cont_max
 Maximum variation for continuity.
 
bool data_cont_on
 Whether the analysis of data discontinuity is ON.
 
int data_num_bad
 Number of bad channels in analysis of the data per channel.
 
int data_num_max
 Upper value for bad range of data / channel.
 
int data_num_min
 Lower value for bad range of data / channel.
 
bool data_num_on
 Whether the analysis of number of data per channel is ON.
 
u_int data_num_reject
 Rejection threshold for channels with few data only.
 
u_int events_count
 Number of events since analysis cleard.
 
u_int events_skip
 Number of first events to skip for analysis.
 
double ** fit_channel_param
 Parameter values for each channel.
 
int fluct_bad
 Number of bad channels in fluctuations analysis.
 
int * fluct_cnt
 Number of events for baseline check.
 
u_int fluct_imax
 Upper limit for baseline fluctuations analysis.
 
u_int fluct_imin
 Lower limit for baseline fluctuations analysis.
 
bool fluct_on
 Whether baseline fluctuations analysis is ON.
 
double * fluct_sum
 Cumulated values for baseline check.
 
double fluct_warn
 Baseline fluctuation value to issue a warning.
 
int fpn_test_bad
 Number of bad channels in FPN test analysis.
 
double fpn_test_dmax
 Upper limit for difference between end average and beginning average.
 
double fpn_test_dmin
 Lower limit for difference between end average and beginning average.
 
u_int fpn_test_i1max
 Upper limit for average of the begining of the time window.
 
u_int fpn_test_i1min
 Lower limit for average of the begining of the time window.
 
u_int fpn_test_i2max
 Upper limit for average of the end of the time window.
 
u_int fpn_test_i2min
 Lower limit for average of the end of the time window.
 
bool fpn_test_on
 Whether the FPN test analysis is ON.
 
bool full_rec
 For reconstructed signal, plot full signal (no threshold on single time buckets)
 
GETSystemget_ptr
 Pointer to the GET system object.
 
TH1I * h_channels_data_num
 Pointer to the channels summary histogram with number of raw data per channel.
 
TH1D * h_channels_fluct
 Pointer to the channels baseline fluctuations analysis summary average histogram.
 
TH1D * h_channels_max_cor
 Pointer to the channels summary histogram with maximum corrected output values.
 
TH1D * h_channels_max_raw
 Pointer to the channels summary histogram with maximum raw output values.
 
TH1D * h_channels_rms
 Pointer to the channels RMS analysis summary histogram.
 
TH1D * h_channels_time_cor
 Pointer to the channels summary histogram with maximum corrected output values.
 
TH1D * h_channels_time_raw
 Pointer to the channels summary histogram with maximum raw output values.
 
TH2D * h_full_event_cor
 Pointer to the histogram with full data after corrections (if any)
 
TH2D * h_full_event_raw
 Pointer to the histogram with full raw data (before processing)
 
TH2I * h_resol_ampl
 Pointer to the channels versus amplitude maximum histogram.
 
TH1D * h_resol_rms
 Pointer to the channels amplitude variations histogram.
 
GETHitMaskhit_mask
 Pointer to the hit mask (same as base class hit mask, but known as GETHitMaskXY)
 
double ** mmax_amplitude
 Maxima values arrays for each channel.
 
bool mmax_analysis
 Whether multiple maxima analysis is requested.
 
bool mmax_computed
 Whether multiple maxima analysis is performed.
 
double mmax_diff_thr
 Maxima difference validation threshold.
 
RExtremaFinder mmax_finder
 Multiple maxima analyser.
 
u_int mmax_max
 Maximum number of maxima per channel.
 
u_short mmax_mode
 Calculation of multiple maxima amplitude: 0 standard, 1 gaus fits.
 
u_int * mmax_num
 Number of maxima for each channel.
 
double mmax_scale
 Scaling factor for amplitude.
 
double * mmax_sum
 Summed amplitudes of all maxima for each channel.
 
double mmax_sum_all
 Summed amplitudes of all channels.
 
double ** mmax_time
 Maxima times arrays for each channel.
 
u_int mmax_tot
 Total number of maxima for all channels.
 
double ** mmax_width
 Maxima width arrays for each channel.
 
bool raw_analysed
 Whether the raw data analysis is performed.
 
u_int rec_itmax
 Analysis upper time bin for reconstructed signal.
 
u_int rec_itmin
 Analysis lower time bin for reconstructed signal.
 
double rec_tmax
 Analysis time upper limits for reconstructed signal.
 
double rec_tmin
 Analysis time lower limits for reconstructed signal.
 
int resol_dim
 Dimension of amplitude axis.
 
double resol_max
 Upper limit of amplitude axis.
 
double resol_min
 Lower limit of amplitude axis.
 
bool resol_on
 Whether amplitude resolution analysis is ON.
 
double resol_step
 Lower limit of amplitude axis.
 
u_int rms_imax
 Upper limit for RMS analysis.
 
u_int rms_imin
 Lower limit for RMS analysis.
 
bool rms_on
 Whether noise analysis is ON.
 
u_short select_data_hit
 Information on the channel data to analyse for hit pattern: GET::signalOut (default), GET::signalTst or GET::signalRec.
 
u_short select_data_signal
 Information on the channel data for signal analysis: GET::signalOut (default), GET::signalTst or GET::signalRec.
 
double timing_cfd_delay
 CFD offset for timing analysis.
 
double timing_cfd_fraction
 CFD fraction for timing analysis.
 
u_short timing_mode
 Signal timing analysis mode.
 

Private Member Functions

 GObject (GETActarTpcAnalyser)
 

Additional Inherited Members

- Static Protected Attributes inherited from GETSystemAnalyser
static TF1 * fit_channel_fct = NULL
 Pointer to the function used in case of channel fitting.
 
static u_int fit_channel_npar = 0
 Number of parameters for the signal fit function.
 

Detailed Description

This class is a specialized analyser class (derived from GETSystemAnalyser) for GETActarTpc (derived from GETSystem).

The analysis available in addition to the ones of the base class are:

  • single events analysis:
    • automatic histograms on events data: pads signal histograms (amplitude and time of the maximum channel signal)
    • OFF-track signal analysis (and optionally corresponding histograms if the functions to create these histograms have been called)

Reconstructed signal analysis

See also Reconstructed signal analysis.

The reconstructed signal analysis mode and time limits (see Reconstructed signal analysis) affects:

  • the hit pattern (hit mask) if no valid signal is found in the limits (valid bit of the hit mask removed)
  • the signal projection histograms

Off-track signal analysis

The off-track signal analysis and correction has been developped in order to evaluate the mesh-induced signal on pads that are not supposed to collect charges, but that see a mirror signal from the charges on the mesh.

A copy of the pads mask is created to define pads around the real track. The signal from these pads in averaged to build the off-track signal, that is removed from all signal channels if the correction is set on (the off-track analysis can be set, without correction channels output).

GETOffTrackAnalysisR.png

The picture above shows a track from an event of the ACTAR TPC demonstrator. The top-left figure is the signal amplitude on the pads, that is used to determine the hit mask (in-track pads of bottom-left) picture and the pads that are used to compute off-track signal (off-track pads). The off track signal (bottom-right picture) can be compared to the average effective signal, by inversion and scaling (up-right picture).

Constructor & Destructor Documentation

GETActarTpcAnalyser::GETActarTpcAnalyser ( GETActarTpc get = NULL)

Constructor. If the GETActarTpc object is not defined, a call to SetSystem function must be performed before the analyser can be used.

Parameters
getpointer to the GET system

References actar_ptr, auto_fill, h_mask_in, h_mask_off, h_mean_in_track, h_mean_off_track, h_t_proj, h_x_proj, h_xt_ampl, h_xy_ampl, h_xy_data, h_xy_hits, h_xy_rms, h_xy_time, h_xyt, h_y_proj, h_yt_ampl, mask_expand, mask_isol_num, mask_isol_numb, off_space, off_track_cor, off_track_on, pad_mask, and tdrift_offset.

GETActarTpcAnalyser::~GETActarTpcAnalyser ( )
virtual

Destructor. The histograms associated to the analysis are deleted.

References Reset().

Member Function Documentation

int GETActarTpcAnalyser::AnalyseRawEvent ( )
virtual

Function called when the GETActarTpc has read an event, before applying corrections to the output samples.

Reimplemented from GETSystemAnalyser.

References GETSystemAnalyser::AnalyseRawEvent().

int GETActarTpcAnalyser::ApplyOffTrackCorrection ( )
virtual

Apply the off-track analysis correction to channels outputs. For each (valid) pad, the average off-track signal is subtracted from the output signal.

References actar_ptr, GETLookupTable::GetChannel(), GETSystem::GetChannel(), GETLookupTable::GetNpadX(), GETLookupTable::GetNpadY(), GETLookupTable::GetPad(), GETChannel::GetReadoutCount(), GETSystem::GetTestChannelIndex(), GETSystem::LookupTable(), GETChannel::OutSample(), and sum_off_track.

Referenced by OutputCorrection().

GETActarTpcAnalyser::ClassDef ( GETActarTpcAnalyser  ,
 
)

for use within ROOT.

void GETActarTpcAnalyser::ClearAnalysis ( )
virtual

Function that clears all current analysis results: histograms, baseline fluctuations,...

Reimplemented from GETSystemAnalyser.

References GETSystemAnalyser::ClearAnalysis().

Referenced by GETActarEventReader::Reset().

void GETActarTpcAnalyser::ClearAutoHistograms ( )
virtual

Function that clears all the automatic histograms created for the analysis.

References h_t_proj, h_x_proj, h_xt_ampl, h_xy_ampl, h_xy_hits, h_xy_time, h_xyt, h_y_proj, and h_yt_ampl.

Referenced by FillAutoHistograms().

void GETActarTpcAnalyser::ClearEvent ( )
virtual

Function called by the GET system ClearEvent function, to reset event related data (histograms, ...).

Reimplemented from GETSystemAnalyser.

References GETSystemAnalyser::ClearEvent(), h_mask_in, h_mask_off, h_mean_in_track, h_mean_off_track, h_t_proj, h_x_proj, h_xt_ampl, h_xy_ampl, h_xy_data, h_xy_hits, h_xy_time, h_xyt, h_y_proj, h_yt_ampl, sum_in_track, sum_off_track, tdrift_offset, and update_mask.

double GETActarTpcAnalyser::ComputeSumInt ( bool  mask = true)
virtual

Compute the integral of signal (channel integral, that is the sum of all signals multiplied by the time step) for all channels (output, reconstructed or test sample, according to selected data).

Parameters
maskwhether the hit mask should be used to select summed channels

References GETSystemAnalyser::get_ptr, GETSystem::GetChannel(), GETLookupTable::GetPad(), GETObject::GetTimeStep(), GETObject::GetTotalChannelCount(), GETHitMaskXY::IsValidHit(), GETSystem::LookupTable(), GETChannel::OutSample(), pad_mask, GETChannel::RecSample(), GETSystemAnalyser::select_data_signal, GET::signalRec, GET::signalTst, and GETChannel::TstSample().

Referenced by GETActarEventReader::AnalysisEvent().

double GETActarTpcAnalyser::ComputeSumMax ( bool  mask = true)
virtual

Compute the sum of channels signal maximum value for all pads (output, reconstructed or test sample, according to selected data).

Parameters
maskwhether the hit mask should be used to select summed channels

References GETSystemAnalyser::amax_amplitude, GETSystemAnalyser::amplitude_mode, GETSystemAnalyser::ComputeAmplitudeData(), GETSystemAnalyser::get_ptr, GETLookupTable::GetPad(), GETObject::GetTotalChannelCount(), GETSystemAnalyser::IsAmplitudeDataComputed(), GETHitMaskXY::IsValidHit(), GETSystem::LookupTable(), and pad_mask.

Referenced by GETActarEventReader::AnalysisEvent().

bool GETActarTpcAnalyser::ConfigCommand ( const GString &  code,
const GString &  args = "",
FILE *  fptr = NULL 
)
virtual

Function that sets a configuration parameter from a command line.

The valid command line in the class are:

  • specific configuration parameters:
    • OFF_TRACK <npad> <corr>: set the off-track signal analysis (for mesh-induced signal) and optionally correct channels from the result
    • BORDER_PADS <npad>: mask the pads on the contour of the pad plane
    • HIT_ISOLATED <n> <nb>: clear isolated pad hits with less than n neighbour pads (or nb for border pads)
    • HIT_EXPAND <n>: expand the pads hits of n pads around the track
    • AGET_MASK <cobo> <asad> <aget>: mask the channels for the selected cobo / asad / aget (-1 for all elements)
    • PAD_MASK <ix> <iy>: mask the channels for the pad (ix,iy)
    • ZONE_MASK <ix0> <iy0> <ix1> <iy1>: mask the channels for the pads zone defined by corners (ix0,iy0) and (ix1,iy1)
    • VALID_MASK <file> <histo> [thr]: validate pads mask according to histogram (in a ROOT file); if thr is not set, the default value is 0.5
    • INVALID_MASK <file> <histo> <thr>: validate pads mask according to histogram (in a ROOT file); if thr is not set, the default value is 0.5
  • commands from the analysis base class (see GETSystemAnalyser::ConfigCommand)
    • THR..., AMPL..., TIME...
    • READ_CHK..., BASE_CHK..., DELTA_CHK...
    • FPN..., SMOOTH..., CAL..., AB..., ABL..., ABH...
Parameters
codeparameter(s) identifier
argsadditional arguments
fptrfile pointer (in case more information should be read)

Reimplemented from GETSystemAnalyser.

References GETSystemAnalyser::ConfigCommand(), GETSystemAnalyser::get_ptr, GETSystem::GetChannelCount(), InitOffTrackAnalysis(), GETChannel::IsSignalChannel(), mask_expand, mask_isol_num, mask_isol_numb, GETHitMaskXY::MaskBorder(), pad_mask, SetOffTrackCorrection(), GETHitMaskXY::SetValid(), and SetValidPads().

Referenced by GETActarEventReader::ConfigCommand().

TGraphErrors * GETActarTpcAnalyser::CreateGraphXT ( bool  weight = true)
inline

Create a X-T projection graph from the 3D data.

Parameters
weightwhether the errors are weighted with the signal amplitude

References CreateGraph2D().

TGraphErrors * GETActarTpcAnalyser::CreateGraphXY ( bool  weight = true)
inline

Create a X-Y projection graph from the 3D data.

Parameters
weightwhether the errors are weighted with the signal amplitude

References CreateGraph2D().

TGraphErrors * GETActarTpcAnalyser::CreateGraphYT ( bool  weight = true)
inline

Create a Y-T projection graph from the 3D data.

Parameters
weightwhether the errors are weighted with the signal amplitude

References CreateGraph2D().

TH3D * GETActarTpcAnalyser::CreateHistogram3D ( const string &  name,
int  nt,
double  t0,
double  t1 
)

Create a 3D histogram with demonstrator pad plane size for X & Y and time for the 3rd dimension.

Parameters
namehistogram name
ntnumber of bins in Z (time) dimension
t0lower time limit
t1upper time limit

References actar_ptr, GETLookupTable::GetNpadX(), GETLookupTable::GetNpadY(), and GETSystem::LookupTable().

Referenced by CreateXYTHisto().

TH1D * GETActarTpcAnalyser::CreateHistogramT ( const string &  name)

Create a T projection histogram with demonstrator pad plane size.

Parameters
namehistogram name

References actar_ptr, GETObject::GetSampleDim(), and GETObject::GetTimeStep().

Referenced by CreateTprojectionHisto().

TH1D * GETActarTpcAnalyser::CreateHistogramX ( const string &  name)

Create a X projection histogram with demonstrator pad plane size.

Parameters
namehistogram name

References actar_ptr, GETLookupTable::GetNpadX(), and GETSystem::LookupTable().

Referenced by CreateXprojectionHisto().

TH2D * GETActarTpcAnalyser::CreateHistogramXT ( const string &  name,
int  nt,
double  t0,
double  t1 
)

Create a 2D histogram with demonstrator pad plane size for X and time for the Y dimension.

Parameters
namehistogram name
ntnumber of bins in Z (time) dimension
t0lower time limit
t1upper time limit

References actar_ptr, GETLookupTable::GetNpadX(), and GETSystem::LookupTable().

Referenced by CreateHistogramXT(), and CreateXTamplitudeHisto().

TH2D * GETActarTpcAnalyser::CreateHistogramXT ( const string &  name)

Create a 2D histogram with demonstrator pad plane size for X and time for the Y dimension.

Parameters
namehistogram name

References actar_ptr, CreateHistogramXT(), GETObject::GetSampleDim(), and GETObject::GetTimeStep().

TH1D * GETActarTpcAnalyser::CreateHistogramY ( const string &  name)

Create a Y projection histogram with demonstrator pad plane size.

Parameters
namehistogram name

References actar_ptr, GETLookupTable::GetNpadY(), and GETSystem::LookupTable().

Referenced by CreateYprojectionHisto().

TH2D * GETActarTpcAnalyser::CreateHistogramYT ( const string &  name,
int  nt,
double  t0,
double  t1 
)

Create a 2D histogram with demonstrator pad plane size for X and time for the Y dimension.

Parameters
namehistogram name
ntnumber of bins in Z (time) dimension
t0lower time limit
t1upper time limit

References actar_ptr, GETLookupTable::GetNpadY(), and GETSystem::LookupTable().

Referenced by CreateHistogramYT(), and CreateYTamplitudeHisto().

TH2D * GETActarTpcAnalyser::CreateHistogramYT ( const string &  name)

Create a 2D histogram with demonstrator pad plane size for X and time for the Y dimension.

Parameters
namehistogram name

References actar_ptr, CreateHistogramYT(), GETObject::GetSampleDim(), and GETObject::GetTimeStep().

TH1D * GETActarTpcAnalyser::CreateInTrackMeanHisto ( const string &  hname = "MeanInTrackSignal")

Create the histogram automatically filled by the off-track analysis with the average of IN-track pads signal. param name of the histogram

References GETSystemAnalyser::get_ptr, GETSystem::GetChannel(), h_mean_in_track, off_track_on, and GETChannel::OutSample().

Referenced by GETActarEventReader::PresetSystemAnalysis().

TH2D * GETActarTpcAnalyser::CreateInTrackPatternHisto ( const string &  hname = "PatternInTrack")

Create the histogram automatically filled by the off-track analysis with the IN-track valid hit pads pattern. param name of the histogram

References CreatePadHistogram(), h_mask_in, and off_track_on.

Referenced by GETActarEventReader::PresetSystemAnalysis().

TH1D * GETActarTpcAnalyser::CreateOffTrackMeanHisto ( const string &  hname = "MeanOffTrackSignal")

Create the histogram automatically filled by the off-track analysis with the average of OFF-track pads signal. param name of the histogram

References GETSystemAnalyser::get_ptr, GETSystem::GetChannel(), h_mean_off_track, off_track_on, and GETChannel::OutSample().

Referenced by GETActarEventReader::PresetSystemAnalysis().

TH2D * GETActarTpcAnalyser::CreateOffTrackPatternHisto ( const string &  hname = "PatternOffTrack")

Create the histogram automatically filled by the off-track analysis with the OFF-track valid hit pads pattern. param name of the histogram

References CreatePadHistogram(), h_mask_off, and off_track_on.

Referenced by GETActarEventReader::PresetSystemAnalysis().

TH2D * GETActarTpcAnalyser::CreatePadHistogram ( const string &  name)
TH1D * GETActarTpcAnalyser::CreateTprojectionHisto ( const string &  name = "GET_T_Projection")
inline

Function that creates the histograms for T projection of signal amplitude.

Parameters
namename of the created automatic histogram

References CreateHistogramT(), and h_t_proj.

Referenced by GETActarEventReader::PresetSystemAnalysis().

TH1D * GETActarTpcAnalyser::CreateXprojectionHisto ( const string &  name = "GET_X_Projection")
inline

Function that creates the histograms for X projection of signal amplitude.

Parameters
namename of the created automatic histogram

References CreateHistogramX(), and h_x_proj.

Referenced by GETActarEventReader::PresetSystemAnalysis().

TH2D * GETActarTpcAnalyser::CreateXTamplitudeHisto ( const string &  name = "GET_XT_Amplitude")
inline

Function that creates the histograms for (X-T) projection of signal amplitude.

Parameters
namename of the created automatic histogram

References actar_ptr, CreateHistogramXT(), GETObject::GetSampleDim(), GETObject::GetTimeStep(), and h_xt_ampl.

Referenced by GETActarEventReader::PresetSystemAnalysis().

TH2D * GETActarTpcAnalyser::CreateXYamplitudeHisto ( const string &  name = "GET_XY_Amplitude")
inline

Function that creates the histograms for (X-Y) projection of signal amplitude.

Parameters
namename of the created automatic histogram

References CreatePadHistogram(), and h_xy_ampl.

Referenced by GETActarEventReader::PresetSystemAnalysis().

TH2D * GETActarTpcAnalyser::CreateXYdataHisto ( const string &  name = "GET_XY_Data")
inline

Function that creates the histograms for pread pads.

Parameters
namename of the created automatic histogram

References CreatePadHistogram(), and h_xy_data.

Referenced by GETActarEventReader::PresetSystemAnalysis().

TH2D * GETActarTpcAnalyser::CreateXYhitsHisto ( const string &  name = "GET_XY_Hits")
inline

Function that creates the histograms for pad hit pattern.

Parameters
namename of the created automatic histogram

References CreatePadHistogram(), and h_xy_hits.

Referenced by GETActarEventReader::PresetSystemAnalysis().

TH3D * GETActarTpcAnalyser::CreateXYTHisto ( const string &  name = "GET_XYT",
int  nt = 512,
double  t0 = 0.,
double  t1 = 512. 
)
inline

Function that creates the 3D histogram for XY+T signal.

Parameters
namename of the created automatic histogram
ntnumber of bins in Z (time) dimension
t0lower time limit
t1upper time limit

References CreateHistogram3D(), and h_xyt.

Referenced by GETActarEventReader::PresetSystemAnalysis().

TH2D * GETActarTpcAnalyser::CreateXYtimeHisto ( const string &  name = "GET_XY_Time")
inline

Function that creates the histograms for pad pattern of signal time.

Parameters
namename of the created automatic histogram

References CreatePadHistogram(), and h_xy_time.

Referenced by GETActarEventReader::PresetSystemAnalysis().

TH1D * GETActarTpcAnalyser::CreateYprojectionHisto ( const string &  name = "GET_Y_Projection")
inline

Function that creates the histograms for Y projection of signal amplitude.

Parameters
namename of the created automatic histogram

References CreateHistogramY(), and h_y_proj.

Referenced by GETActarEventReader::PresetSystemAnalysis().

TH2D * GETActarTpcAnalyser::CreateYTamplitudeHisto ( const string &  name = "GET_YT_Amplitude")
inline

Function that creates the histograms for (Y-T) projection of signal amplitude.

Parameters
namename of the created automatic histogram

References actar_ptr, CreateHistogramYT(), GETObject::GetSampleDim(), GETObject::GetTimeStep(), and h_yt_ampl.

Referenced by GETActarEventReader::PresetSystemAnalysis().

int GETActarTpcAnalyser::FillHistogram3D ( TH3 *  hptr,
double  toffset = 0.,
u_short  mode = 0 
)

Function filling a 3D histogram (i.e. from CreateHistogram3D function) with data from selected signal (input/output/reconstructed) of current event.

It is similar than the previous function, but it does not fill all the 3D space: only 1 time bin per pad, where the maximum of the signal is located.

The mode argument is used to select the information:

The function uses the look-up table for filling. The histogram is not resetted before filling.

Parameters
hptrhistogram pointer
toffsetshift in time scale
modefilling mode: GET::dataAmplitude (default), GET::dataIntegral, GET::dataTime, GET::dataTimeBin or GET::dataFullSignal

References actar_ptr, GETSystemAnalyser::amax_amplitude, GETSystemAnalyser::amax_time, GETSystemAnalyser::ComputeAmplitudeData(), GET::dataFullSignal, GET::dataIntegral, GET::dataTime, GET::dataTimeBin, GETSystemAnalyser::get_ptr, GETSystem::GetChannel(), GETLookupTable::GetIpx(), GETLookupTable::GetIpy(), GETHitMask::GetNhitValid(), GETHitMask::GetThreshold(), GETObject::GetTimeStep(), GETHitMask::GetValidChannelIndex(), GETSystemAnalyser::hit_mask, GETSystemAnalyser::IsAmplitudeDataComputed(), GETHitMask::IsMaskDefined(), GETHitMask::IsMaskSet(), GETSystem::LookupTable(), GETSystemAnalyser::mmax_amplitude, GETSystemAnalyser::mmax_computed, GETSystemAnalyser::mmax_num, GETSystemAnalyser::mmax_time, GETChannel::OutSample(), pad_mask, GETSystemAnalyser::rec_itmax, GETSystemAnalyser::rec_itmin, GETChannel::RecSample(), GETSystemAnalyser::select_data_signal, GET::signalRec, and GETHitMask::UpdateMask().

int GETActarTpcAnalyser::FillHistogramXTmax ( TH2 *  hptr,
double  toffset = 0.,
u_short  mode = 0 
)

Function filling a 2D histogram (i.e. from CreateHistogramXT function) with data from selected signal (input/output/reconstructed) of current event.

For each pad with signal above threshhold, the time corresponding to the maximum amplitude gives the 2nd dimension. The pad X position is the 1st dimension. The increment is the channel maximum value.

The function uses the look-up table for filling. The histogram is not resetted before filling.

Parameters
hptrhistogram pointer
toffsetshift in time scale
modetime information: GET::dataTime (real time, default) or GET::dataTimeBin (time bin) for Z dimension, and signal information option: GET::dataFullSignal to project all sample signal instead of time of maximum signal

References actar_ptr, GETSystemAnalyser::amax_amplitude, GETSystemAnalyser::amax_time, GETSystemAnalyser::ComputeAmplitudeData(), GET::dataFullSignal, GET::dataIntegral, GET::dataTime, GET::dataTimeBin, GETSystemAnalyser::full_rec, GETSystemAnalyser::get_ptr, GETSystem::GetChannel(), GETLookupTable::GetIpx(), GETHitMask::GetNhitValid(), GETHitMask::GetThreshold(), GETObject::GetTimeStep(), GETHitMask::GetValidChannelIndex(), GETSystemAnalyser::hit_mask, GETSystemAnalyser::IsAmplitudeDataComputed(), GETHitMask::IsMaskDefined(), GETHitMask::IsMaskSet(), GETSystem::LookupTable(), GETSystemAnalyser::mmax_amplitude, GETSystemAnalyser::mmax_computed, GETSystemAnalyser::mmax_num, GETSystemAnalyser::mmax_time, GETChannel::OutSample(), pad_mask, GETSystemAnalyser::rec_itmax, GETSystemAnalyser::rec_itmin, GETChannel::RecSample(), GETSystemAnalyser::select_data_signal, GET::signalRec, and GETHitMask::UpdateMask().

int GETActarTpcAnalyser::FillHistogramYTmax ( TH2 *  hptr,
double  toffset = 0.,
u_short  mode = 0 
)

Function filling a 2D histogram (i.e. from CreateHistogramYT function) with data from selected signal (input/output/reconstructed) of current event.

For each pad with signal above threshhold, the time corresponding to the maximum amplitude gives the 2nd dimension. The pad Y position is the 1st dimension. The increment is the channel maximum value.

The function uses the look-up table for filling. The histogram is not resetted before filling.

Parameters
hptrhistogram pointer
toffsetshift in time scale
modetime information: GET::dataTime (real time, default) or GET::dataTimeBin (time bin) for Z dimension, and signal information option: GET::dataFullSignal to project all sample signal instead of time of maximum signal

References actar_ptr, GETSystemAnalyser::amax_amplitude, GETSystemAnalyser::amax_time, GETSystemAnalyser::ComputeAmplitudeData(), GET::dataFullSignal, GET::dataIntegral, GET::dataTime, GET::dataTimeBin, GETSystemAnalyser::full_rec, GETSystemAnalyser::get_ptr, GETSystem::GetChannel(), GETLookupTable::GetIpy(), GETHitMask::GetNhitValid(), GETHitMask::GetThreshold(), GETObject::GetTimeStep(), GETHitMask::GetValidChannelIndex(), GETSystemAnalyser::hit_mask, GETSystemAnalyser::IsAmplitudeDataComputed(), GETHitMask::IsMaskDefined(), GETHitMask::IsMaskSet(), GETSystem::LookupTable(), GETSystemAnalyser::mmax_amplitude, GETSystemAnalyser::mmax_computed, GETSystemAnalyser::mmax_num, GETSystemAnalyser::mmax_time, GETChannel::OutSample(), pad_mask, GETSystemAnalyser::rec_itmax, GETSystemAnalyser::rec_itmin, GETChannel::RecSample(), GETSystemAnalyser::select_data_signal, GET::signalRec, and GETHitMask::UpdateMask().

int GETActarTpcAnalyser::FillPadHistogram ( TH2 *  hptr,
u_short  mode = GET::dataAmplitude 
)

Function filling a 2D histogram (i.e. from CreatePadHistogram function) with data from selected signal (input/output/reconstructed) of current event.

One value per channel is incremented depending on mode argument. The function uses the look-up table for filling and the hit mask data for thresholds. The histogram is not resetted before filling.

Parameters
hptrhistogram pointer
modedata selected for filling: GET::dataAmplitude (default), GET::dataIntegral, GET::dataTime, GET::dataHit

References actar_ptr, GETSystemAnalyser::amax_amplitude, GETSystemAnalyser::amax_time, GETSystemAnalyser::ComputeAmplitudeData(), GET::dataFullSignal, GET::dataHit, GET::dataIntegral, GET::dataTime, GETSystemAnalyser::get_ptr, GETSystem::GetChannel(), GETLookupTable::GetIpx(), GETLookupTable::GetIpy(), GETHitMask::GetNhitValid(), GETHitMask::GetValidChannelIndex(), GETSystemAnalyser::IsAmplitudeDataComputed(), GETHitMask::IsMaskDefined(), GETHitMask::IsMaskSet(), GETSystem::LookupTable(), GETChannel::OutSample(), pad_mask, GETChannel::RecSample(), GETSystemAnalyser::select_data_signal, GET::signalRec, and GETHitMask::UpdateMask().

GETActarTpc * GETActarTpcAnalyser::GetActarSystem ( )
inline

Return the pointer to the ACTAR TPC GET system.

References actar_ptr.

TH2D * GETActarTpcAnalyser::GetChannelsNoiseHistoXY ( ) const
inline

Return the pointer to the pads noise histogram of current event.

References h_xy_rms.

Referenced by GETActarEventReader::PresetSystemAnalysis().

double GETActarTpcAnalyser::GetDriftTimeOffset ( ) const
inline

Get the drift time offset (in us) for automatic spectra.

References tdrift_offset.

TH1D * GETActarTpcAnalyser::GetInTrackMeanHisto ( )
inline

Return histogram of the average signal of in-track pads.

References h_mean_in_track.

GETSample & GETActarTpcAnalyser::GetInTrackMeanSample ( )
inline

Return the average signal sample of in-track pads.

References sum_in_track.

TH2D * GETActarTpcAnalyser::GetInTrackPatternHisto ( )
inline

Return histogram of the in-track pads pattern.

References h_mask_in.

const GETHitMaskXY & GETActarTpcAnalyser::GetOffTrackMask ( ) const
inlinevirtual

Return off-track mask.

References off_mask.

GETHitMaskXY & GETActarTpcAnalyser::GetOffTrackMask ( )
inlinevirtual

Return off-track mask.

References off_mask.

TH1D * GETActarTpcAnalyser::GetOffTrackMeanHisto ( )
inline

Return histogram of the average signal of off-track pads.

References h_mean_off_track.

GETSample & GETActarTpcAnalyser::GetOffTrackMeanSample ( )
inline

Return the average signal sample of off-track pads.

References sum_off_track.

int GETActarTpcAnalyser::GetOffTrackPadsCount ( ) const
inlinevirtual

Return the number of off-track pads.

References GETHitMask::GetNhitValid(), off_mask, and off_track_on.

TH2D * GETActarTpcAnalyser::GetOffTrackPatternHisto ( )
inline

Return histogram of the off-track pads pattern.

References h_mask_off.

TH1D * GETActarTpcAnalyser::GetTprojectionHisto ( ) const
inline

Return the automatic histogram for T-projection of signal amplitude.

References h_t_proj.

TH1D * GETActarTpcAnalyser::GetXprojectionHisto ( ) const
inline

Return the automatic histogram for X-projection of signal amplitude.

References h_x_proj.

TH2D * GETActarTpcAnalyser::GetXTamplitudeHisto ( ) const
inline

Return the automatic histogram for (X-T) projection of signal amplitude.

References h_xt_ampl.

TH2D * GETActarTpcAnalyser::GetXYamplitudeHisto ( ) const
inline

Return the automatic histogram for (X-Y) projection of signal amplitude.

References h_xy_ampl.

TH2D * GETActarTpcAnalyser::GetXYhitsHisto ( ) const
inline

Return the automatic histogram for pad hit pattern.

References h_xy_hits.

TH3D * GETActarTpcAnalyser::GetXYTHisto ( ) const
inline

Return the automatic histogram for pad hit pattern.

References h_xyt.

TH2D * GETActarTpcAnalyser::GetXYtimeHisto ( ) const
inline

Return the automatic histogram for pad pattern of signal time.

References h_xy_time.

TH1D * GETActarTpcAnalyser::GetYprojectionHisto ( ) const
inline

Return the automatic histogram for Y-projection of signal amplitude.

References h_y_proj.

TH2D * GETActarTpcAnalyser::GetYTamplitudeHisto ( ) const
inline

Return the automatic histogram for (Y-T) projection of signal amplitude.

References h_yt_ampl.

GETActarTpcAnalyser::GObject ( GETActarTpcAnalyser  )
private

Macro from GCpp library that defines the following functions:

  • ClassName(): return the real class name of the object
  • StaticClassName(): return the used class name of the object (that may be a base class of the real object).
  • IsInstanceOf<T>(): return true if the current object is an instance of the template class name argument
  • Clone(): return an allocated copy of the object.
void GETActarTpcAnalyser::InitOffTrackAnalysis ( int  spc = 1)
virtual

Initialize the off-track analysis. The argument sets the number of unused pads around the track. If it is set to -1, the off-track analysis is turned off.

Parameters
spcpad spacing between track aond off-track pads

References GETSystemAnalyser::get_ptr, off_space, and off_track_on.

Referenced by ConfigCommand(), and SetOffTrackCorrection().

bool GETActarTpcAnalyser::IsOffTrackAnalysisON ( ) const
inline

Return true if the off-track analysis is set.

References off_track_on.

Referenced by GETActarEventReader::PresetSystemAnalysis().

bool GETActarTpcAnalyser::IsOffTrackCorrectionON ( ) const
inline

Return true if the off-track channels output corrections is set.

References off_track_cor.

int GETActarTpcAnalyser::OutputCorrection ( )
virtual

Function that applies specific corrections on the output channels: in this case, the off-track signal correction for ACTAR TPC.

This function is called after the output corrections of the GETSystem object, and before building the reconstrucetd signals and calling the corrected data analysis.

The correction is performed on output samples.

The function returns 0 if no error occured.

Reimplemented from GETSystemAnalyser.

References ApplyOffTrackCorrection(), GETSystemAnalyser::events_count, GETSystemAnalyser::events_skip, GETHitMask::GetNhit(), GETHitMask::GetNhitValid(), GETSystemAnalyser::hit_mask, GETHitMask::IsMaskSet(), off_track_cor, off_track_on, ProcessOffTrackAnalysis(), GETSystemAnalyser::select_data_hit, GETSystemAnalyser::select_data_signal, GETSystemAnalyser::SetSelectedData(), GETSystemAnalyser::SetSelectedHitData(), GETSystemAnalyser::SetSelectedSignalData(), GET::signalOut, update_mask, and GETHitMask::UpdateMask().

int GETActarTpcAnalyser::ProcessOffTrackAnalysis ( )
virtual
void GETActarTpcAnalyser::Reset ( )
virtual
void GETActarTpcAnalyser::SetAutoFill ( bool  b = true)
inline

Set the automatic filling of projection histograms.

Parameters
bautomatic filling status

References auto_fill.

void GETActarTpcAnalyser::SetDriftTimeOffset ( double  toff)
inline

Set the drift time offset for automatic spectra.

Parameters
tofftime offset (in us)

References tdrift_offset.

void GETActarTpcAnalyser::SetIsolatedPadSuppression ( u_int  nn,
u_int  nnb = 1 
)

Define the isolated pads suppression criteria: if a pad has less neighbours with signal than the argument value, it is removed from the hit mask. If set to zero, no pad suppression is performed.

Parameters
nnminimum number of neighbors to keep a pad
nnbminimum number of neighbors to keep a pad located at the border of the pad plane

References mask_isol_num, and mask_isol_numb.

void GETActarTpcAnalyser::SetNoiseRange ( u_int  i0 = 2,
u_int  i1 = 509 
)
virtual

Overload of the GETSystemAnalyser::SetNoiseRange function in order to create the pads XY noise histogram.

Parameters
i0lower time bucket for the analysis range
i1upper time bucket for the analysis range

Reimplemented from GETSystemAnalyser.

References CreatePadHistogram(), h_xy_rms, pad_mask, GETSystemAnalyser::rms_on, and GETSystemAnalyser::SetNoiseRange().

void GETActarTpcAnalyser::SetOffTrackCorrection ( int  spc = 1)
virtual

Set ON the off-track correction of channels output signals (to correct for mesh-induced signal). It initializes the off-track analysis. The argument sets the number of unused pads around the track. If it is set to -1, the off-track correction is turned off (but the off-track analysis is let as it is; to stop it also, the InitOffTrackAnalysis function must be called with -1 pad spacing argument).

Parameters
spcpad spacing between track aond off-track pads

References GETSystemAnalyser::get_ptr, InitOffTrackAnalysis(), off_track_cor, and off_track_on.

Referenced by ConfigCommand(), and GETActarEventReader::ReadRunConfig().

int GETActarTpcAnalyser::SetSystem ( GETSystem gptr)
virtual

Define the GET system from which the data will be analysed. Note that all previously defined information is resetted. The function returns 0 if no error occured.

Parameters
gptrPointer to the GET system

Reimplemented from GETSystemAnalyser.

References actar_ptr, GETSystem::GetHitMask(), pad_mask, and GETSystemAnalyser::SetSystem().

int GETActarTpcAnalyser::SetValidPads ( const string &  fname,
const string &  hname,
double  thr = 0.5,
u_short  mode = 3 
)
virtual

Set the pads validation according to an histogram (that must have the size of the pad plane).

Parameters
fnameROOT file name
hnamehistogram name name
thrthe pad is valid if histogram content is above the threshold
modepad mask modification:
  • 1: set valid pads ON (above threshold)
  • 2: set non-valid pads OFF (below threshold)
  • 3 (or 0): set both

Referenced by ConfigCommand().

int GETActarTpcAnalyser::SetValidPads ( TH2 *  hptr,
double  thr = 0.5,
u_short  mode = 3 
)
virtual

Set the pads validation according to an histogram (that must have the size of the pad plane).

Parameters
hptrhistogram pointer
thrthe pad is valid if histogram content is above the threshold
modepad mask modification:
  • 1: set valid pads ON (above threshold)
  • 2: set non-valid pads OFF (below threshold)
  • 3 (or 0): set both

References GETSystemAnalyser::get_ptr, GETLookupTable::GetNpadX(), GETLookupTable::GetNpadY(), GETSystem::LookupTable(), pad_mask, and GETHitMaskXY::SetValid().


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