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)
 
Main analysis functions, called by GETSystem
virtual void ClearAnalysis ()
 
virtual void ClearEvent ()
 
virtual int AnalyseRawEvent ()
 
virtual int AnalyseCorEvent ()
 
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)
 
TH2D * CreateXYtimeHisto (const string &name="GET_XY_Time")
 
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::dataMaxSignal)
 
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)
 
virtual int FillAutoHistograms ()
 
int Export3D_POV (const string &fname, u_short mode=0)
 
int ExportPads_POV (const string &fname, u_short mode=0)
 
int Export3D_POV (FILE *fptr, u_short mode=0)
 
int ExportPads_POV (FILE *fptr, u_short mode=0)
 
ROOT related functions
 ClassDef (GETActarTpcAnalyser, 0)
 
- Public Member Functions inherited from GETSystemAnalyser
 GETSystemAnalyser (GETSystem *get=NULL)
 
virtual ~GETSystemAnalyser ()
 
u_int GetChannelNumber () const
 
void SetEventsSkip (u_int n)
 
u_int GetEventsSkip ()
 
u_int GetAnalysisEventsCounter ()
 
void SetSelectedData (u_short id)
 
int GetSelectedData () const
 
virtual int AnalyseRunStart ()
 
virtual int AnalyseRunStop ()
 
virtual void BadChannelsWarning ()
 
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
 
void SetAmplitudeMode (u_short mode, double win=0.)
 
void SetAmplitudeWindow (double win)
 
void SetTimingMode (u_short mode)
 
void SetTimingModeCFD (double frac, double delay)
 
virtual int CalcChannelOutput (u_int ic, double &vmax, double &tmax)
 
virtual int CalcChannelMaxima (u_int ic)
 
void SetMaximaScaling (double fact)
 
void InitAmplitudeData ()
 
void InitMaximaData ()
 
void ResetMaximaData ()
 
void ClearAmplitudeData ()
 
bool IsAmplitudeDataComputed () const
 
bool IsMaximaDataComputed () const
 
virtual void ComputeAmplitudeData ()
 
TH1D * CreateChannelsMaxRawHisto (const string &hname)
 
TH1D * CreateChannelsMaxCorHisto (const string &hname)
 
TH1D * GetChannelsMaxRawHisto () const
 
TH1D * GetChannelsMaxCorHisto () const
 
virtual void InitDataNumberCheck (u_int n0, u_int n1)
 
bool IsDataNumberCheckON () const
 
virtual int ProcessDataNumberCheck ()
 
virtual int GetDataNumberBadCount () const
 
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)
 
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 mode=GET::dataMaxSignal, bool fpn=true, bool reset=true)
 
int CumulChannelsSummaryHisto (TH2 *hptr, u_short mode=GET::dataMaxSignal, 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)
 
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_hits
 Histogram with pads 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 signal with third T dimension.
 
TH1D * h_y_proj
 Histogram with pads event amplitude.
 
TH2D * h_yt_ampl
 Histogram with pads event amplitude.
 
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.
 
- 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.
 
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.
 
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 events_count
 Number of events since analysis cleard.
 
u_int events_skip
 Number of first events to skip for analysis.
 
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.
 
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.
 
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.
 
RExtremaFinder mmax_finder
 Multiple maxima analyser.
 
u_int mmax_max
 Maximum number of maxima per channel.
 
u_int * mmax_num
 Number of maxima for each channel.
 
double mmax_scale
 Scaling factor for amplitude.
 
double ** mmax_time
 Maxima times arrays for each channel.
 
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 selected_data
 Information on the channel data to analyse: 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)
 

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)

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, 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_hits, h_xy_rms, h_xy_time, h_xyt, h_y_proj, h_yt_ampl, off_space, off_track_cor, off_track_on, and pad_mask.

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(), GETSystem::GetHitMask(), GETLookupTable::GetNpadX(), GETLookupTable::GetNpadY(), GETHitMaskXY::IsValid(), GETSystem::LookupTable(), GETChannel::OutSample(), and sum_off_track.

Referenced by AnalyseCorEvent().

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::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_hits, h_xy_time, h_xyt, h_y_proj, h_yt_ampl, sum_in_track, and sum_off_track.

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

Compute the sum of signal (channel integral) 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::GetTotalChannelCount(), GETHitMaskXY::IsValidHit(), GETSystem::LookupTable(), GETChannel::OutSample(), pad_mask, GETChannel::RecSample(), GETSystemAnalyser::selected_data, GET::signalRec, GET::signalTst, and GETChannel::TstSample().

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
    • G_MASK <cobo> <asad> <aget>: mask the channels for the selected cobo / asad / aget (-1 for all elements)
  • 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(), InitOffTrackAnalysis(), GETChannel::IsSignalChannel(), pad_mask, SetOffTrackCorrection(), and GETHitMaskXY::SetValid().

Referenced by GETActarEventReader::ConfigCommand().

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().

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.

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().

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.

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::PresetAnalysis().

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::PresetAnalysis().

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::PresetAnalysis().

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::PresetAnalysis().

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::PresetAnalysis().

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

Function that creates the histograms for pad hit pattern.

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::PresetAnalysis().

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::PresetAnalysis().

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::PresetAnalysis().

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::PresetAnalysis().

int GETActarTpcAnalyser::Export3D_POV ( const string &  fname,
u_short  mode = 0 
)

Export the 3D data to a text file for use as an input file in Persistence Of Vision.

Parameters
fnameoutput file name
modedata selected for filling (see GETActarTpcAnalyser::FillHistogram3D function)
int GETActarTpcAnalyser::ExportPads_POV ( const string &  fname,
u_short  mode = 0 
)

Export the XY projection data to a text file for use as an input file in Persistence Of Vision.

Parameters
fnameoutput file name
modedata selected for filling (see GETActarTpcAnalyser::FillPadHistogram function)
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::dataMaxSignal (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, GETSystem::GetChannel(), GETLookupTable::GetIpx(), GETLookupTable::GetIpy(), GETLookupTable::GetPad(), GETObject::GetSampleDim(), GETHitMask::GetThreshold(), GETObject::GetTimeStep(), GETObject::GetTotalChannelCount(), GETSystemAnalyser::hit_mask, GETSystemAnalyser::IsAmplitudeDataComputed(), GETHitMask::IsMaskDefined(), GETHitMask::IsMaskSet(), GETHitMaskXY::IsValidHit(), GETSystem::LookupTable(), GETSystemAnalyser::mmax_amplitude, GETSystemAnalyser::mmax_computed, GETSystemAnalyser::mmax_num, GETSystemAnalyser::mmax_time, GETChannel::OutSample(), pad_mask, GETChannel::RecSample(), GETSystemAnalyser::selected_data, GET::signalRec, GET::signalTst, GETChannel::TstSample(), and GETHitMaskXY::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

References actar_ptr, GETSystemAnalyser::amax_amplitude, GETSystemAnalyser::amax_time, GETSystemAnalyser::ComputeAmplitudeData(), GET::dataIntegral, GET::dataTime, GET::dataTimeBin, GETSystem::GetChannel(), GETLookupTable::GetIpx(), GETLookupTable::GetPad(), GETObject::GetTimeStep(), GETObject::GetTotalChannelCount(), GETSystemAnalyser::IsAmplitudeDataComputed(), GETHitMask::IsMaskDefined(), GETHitMask::IsMaskSet(), GETHitMaskXY::IsValidHit(), GETSystem::LookupTable(), GETSystemAnalyser::mmax_amplitude, GETSystemAnalyser::mmax_computed, GETSystemAnalyser::mmax_num, GETSystemAnalyser::mmax_time, GETChannel::OutSample(), pad_mask, GETChannel::RecSample(), GETSystemAnalyser::selected_data, GET::signalRec, GET::signalTst, GETChannel::TstSample(), and GETHitMaskXY::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

References actar_ptr, GETSystemAnalyser::amax_amplitude, GETSystemAnalyser::amax_time, GETSystemAnalyser::ComputeAmplitudeData(), GET::dataIntegral, GET::dataTime, GET::dataTimeBin, GETSystem::GetChannel(), GETLookupTable::GetIpy(), GETLookupTable::GetPad(), GETObject::GetTimeStep(), GETObject::GetTotalChannelCount(), GETSystemAnalyser::IsAmplitudeDataComputed(), GETHitMask::IsMaskDefined(), GETHitMask::IsMaskSet(), GETHitMaskXY::IsValidHit(), GETSystem::LookupTable(), GETSystemAnalyser::mmax_amplitude, GETSystemAnalyser::mmax_computed, GETSystemAnalyser::mmax_num, GETSystemAnalyser::mmax_time, GETChannel::OutSample(), pad_mask, GETChannel::RecSample(), GETSystemAnalyser::selected_data, GET::signalRec, GET::signalTst, GETChannel::TstSample(), and GETHitMaskXY::UpdateMask().

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

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::dataMaxSignal (default), GET::dataIntegral, GET::dataTime, GET::dataHit

References actar_ptr, GETSystemAnalyser::amax_amplitude, GETSystemAnalyser::amax_time, GETSystemAnalyser::ComputeAmplitudeData(), GET::dataHit, GET::dataIntegral, GET::dataTime, GETSystem::GetChannel(), GETLookupTable::GetIpx(), GETLookupTable::GetIpy(), GETLookupTable::GetPad(), GETObject::GetTotalChannelCount(), GETSystemAnalyser::IsAmplitudeDataComputed(), GETHitMask::IsMaskDefined(), GETHitMask::IsMaskSet(), GETHitMaskXY::IsValidHit(), GETSystem::LookupTable(), GETChannel::OutSample(), pad_mask, GETChannel::RecSample(), GETSystemAnalyser::selected_data, GET::signalRec, GET::signalTst, GETChannel::TstSample(), and GETHitMaskXY::UpdateMask().

TH2D * GETActarTpcAnalyser::GetChannelsNoiseHistoXY ( ) const
inline

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

References h_xy_rms.

Referenced by GETActarEventReader::PresetAnalysis().

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.

bool GETActarTpcAnalyser::IsOffTrackCorrectionON ( ) const
inline

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

References off_track_cor.

int GETActarTpcAnalyser::ProcessOffTrackAnalysis ( )
virtual

Perform the off-track signal analysis. The hit mask is copied, adjusted according to spacing between track and off-track pads, then inverted. The data from track and off-track pads are summed?

References actar_ptr, GETHitMaskXY::Fill2DMaskHisto(), GETLookupTable::GetChannel(), GETSystem::GetChannel(), GETSystem::GetHitMask(), GETLookupTable::GetNpadX(), GETLookupTable::GetNpadY(), GETActarTpc::GetSignalBoundaries(), h_mask_in, h_mask_off, h_mean_in_track, h_mean_off_track, GETHitMaskXY::IsValidHit(), GETSystem::LookupTable(), off_mask, off_space, GETChannel::OutSample(), sum_in_track, and sum_off_track.

Referenced by AnalyseCorEvent().

void GETActarTpcAnalyser::Reset ( )
virtual
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 analysis is turned off.

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(), GETSystemAnalyser::InitAmplitudeData(), pad_mask, Reset(), and GETSystemAnalyser::SetSystem().


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