|
GET library
|
#include <GETActarTpcAnalyser.hh>
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 GETHitMaskXY & | GetOffTrackMask () const |
| virtual GETHitMaskXY & | GetOffTrackMask () |
| 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 |
| GETSample & | GetInTrackMeanSample () |
| GETSample & | GetOffTrackMeanSample () |
| 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 | |
| GETActarTpc * | actar_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. | |
| GETHitMaskXY * | pad_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. | |
| GETSystem * | get_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. | |
| GETHitMask * | hit_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) | |
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:
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).
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).
| 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.
| get | pointer 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.
|
virtual |
Destructor. The histograms associated to the analysis are deleted.
References Reset().
|
virtual |
Function called when the GETActarTpc has read an event, after applying corrections to the output samples.
Reimplemented from GETSystemAnalyser.
References GETSystemAnalyser::amax_computed, ApplyOffTrackCorrection(), GETSystemAnalyser::ComputeAmplitudeData(), GETSystemAnalyser::events_count, GETSystemAnalyser::events_skip, FillAutoHistograms(), GETSystemAnalyser::hit_mask, GETHitMask::IsMaskSet(), off_track_cor, off_track_on, ProcessNoiseAnalysis(), ProcessOffTrackAnalysis(), GETSystemAnalyser::ProcessResolutionAnalysis(), GETSystemAnalyser::resol_on, GETSystemAnalyser::rms_on, and GETHitMask::UpdateMask().
|
virtual |
Function called when the GETActarTpc has read an event, before applying corrections to the output samples.
Reimplemented from GETSystemAnalyser.
References GETSystemAnalyser::AnalyseRawEvent().
|
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 | , |
| 0 | |||
| ) |
for use within ROOT.
|
virtual |
Function that clears all current analysis results: histograms, baseline fluctuations,...
Reimplemented from GETSystemAnalyser.
References GETSystemAnalyser::ClearAnalysis().
Referenced by GETActarEventReader::Reset().
|
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.
|
virtual |
Compute the sum of signal (channel integral) for all channels (output, reconstructed or test sample, according to selected data).
| mask | whether 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().
|
virtual |
Compute the sum of channels signal maximum value for all pads (output, reconstructed or test sample, according to selected data).
| mask | whether 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().
|
virtual |
Function that sets a configuration parameter from a command line.
The valid command line in the class are:
| code | parameter(s) identifier |
| args | additional arguments |
| fptr | file 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.
| name | histogram name |
| nt | number of bins in Z (time) dimension |
| t0 | lower time limit |
| t1 | upper 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.
| name | histogram 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.
| name | histogram 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.
| name | histogram name |
| nt | number of bins in Z (time) dimension |
| t0 | lower time limit |
| t1 | upper 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.
| name | histogram 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.
| name | histogram 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.
| name | histogram name |
| nt | number of bins in Z (time) dimension |
| t0 | lower time limit |
| t1 | upper 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.
| name | histogram 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 | ) |
Create a 2D histogram with demonstrator pad plane size.
| name | histogram name |
References actar_ptr, GETLookupTable::GetNpadX(), GETLookupTable::GetNpadY(), and GETSystem::LookupTable().
Referenced by CreateInTrackPatternHisto(), CreateOffTrackPatternHisto(), CreateXYamplitudeHisto(), CreateXYhitsHisto(), CreateXYtimeHisto(), and SetNoiseRange().
|
inline |
Function that creates the histograms for T projection of signal amplitude.
| name | name of the created automatic histogram |
References CreateHistogramT(), and h_t_proj.
Referenced by GETActarEventReader::PresetAnalysis().
|
inline |
Function that creates the histograms for X projection of signal amplitude.
| name | name of the created automatic histogram |
References CreateHistogramX(), and h_x_proj.
Referenced by GETActarEventReader::PresetAnalysis().
|
inline |
Function that creates the histograms for (X-T) projection of signal amplitude.
| name | name of the created automatic histogram |
References actar_ptr, CreateHistogramXT(), GETObject::GetSampleDim(), GETObject::GetTimeStep(), and h_xt_ampl.
Referenced by GETActarEventReader::PresetAnalysis().
|
inline |
Function that creates the histograms for (X-Y) projection of signal amplitude.
| name | name of the created automatic histogram |
References CreatePadHistogram(), and h_xy_ampl.
Referenced by GETActarEventReader::PresetAnalysis().
|
inline |
Function that creates the histograms for pad hit pattern.
| name | name of the created automatic histogram |
References CreatePadHistogram(), and h_xy_hits.
Referenced by GETActarEventReader::PresetAnalysis().
|
inline |
Function that creates the histograms for pad hit pattern.
| name | name of the created automatic histogram |
| nt | number of bins in Z (time) dimension |
| t0 | lower time limit |
| t1 | upper time limit |
References CreateHistogram3D(), and h_xyt.
Referenced by GETActarEventReader::PresetAnalysis().
|
inline |
Function that creates the histograms for pad pattern of signal time.
| name | name of the created automatic histogram |
References CreatePadHistogram(), and h_xy_time.
Referenced by GETActarEventReader::PresetAnalysis().
|
inline |
Function that creates the histograms for Y projection of signal amplitude.
| name | name of the created automatic histogram |
References CreateHistogramY(), and h_y_proj.
Referenced by GETActarEventReader::PresetAnalysis().
|
inline |
Function that creates the histograms for (Y-T) projection of signal amplitude.
| name | name 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.
| fname | output file name |
| mode | data selected for filling (see GETActarTpcAnalyser::FillHistogram3D function) |
| int GETActarTpcAnalyser::Export3D_POV | ( | FILE * | fptr, |
| u_short | mode = 0 |
||
| ) |
Export the 3D data to a text file for use as an input file in Persistence Of Vision.
| fptr | output file pointer |
| mode | data selected for filling (see GETActarTpcAnalyser::FillHistogram3D function) |
References actar_ptr, GETSystemAnalyser::amax_amplitude, GETSystemAnalyser::amax_time, GETSystemAnalyser::ComputeAmplitudeData(), GET::dataFullSignal, GET::dataIntegral, GETSystem::GetChannel(), GETLookupTable::GetIpx(), GETLookupTable::GetIpy(), GETLookupTable::GetNpadX(), GETLookupTable::GetNpadY(), 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::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.
| fname | output file name |
| mode | data selected for filling (see GETActarTpcAnalyser::FillPadHistogram function) |
| int GETActarTpcAnalyser::ExportPads_POV | ( | FILE * | fptr, |
| u_short | mode = 0 |
||
| ) |
Export the XY projection data to a text file for use as an input file in Persistence Of Vision.
| fptr | output file pointer |
| mode | data selected for filling (see GETActarTpcAnalyser::FillPadHistogram function) |
References actar_ptr, GETSystemAnalyser::amax_amplitude, GETSystemAnalyser::amax_time, GETSystemAnalyser::ComputeAmplitudeData(), GET::dataHit, GET::dataIntegral, GET::dataTime, GETSystem::GetChannel(), GETLookupTable::GetIpx(), GETLookupTable::GetIpy(), GETLookupTable::GetNpadX(), GETLookupTable::GetNpadY(), 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().
|
virtual |
Function that fills, in a single loop, all the automatic histograms created for the analysis.
References actar_ptr, GETSystemAnalyser::amax_amplitude, GETSystemAnalyser::amax_time, GETSystemAnalyser::ComputeAmplitudeData(), GETSystem::GetChannel(), GETLookupTable::GetIpx(), GETLookupTable::GetIpy(), GETLookupTable::GetPad(), GETObject::GetSampleDim(), GETObject::GetTimeStep(), GETObject::GetTotalChannelCount(), GETSystemAnalyser::h_channels_max_cor, GETSystemAnalyser::h_full_event_cor, h_t_proj, h_x_proj, h_xt_ampl, h_xy_ampl, h_xy_time, h_xyt, h_y_proj, h_yt_ampl, GETSystemAnalyser::IsAmplitudeDataComputed(), 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().
Referenced by AnalyseCorEvent().
| 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.
| hptr | histogram pointer |
| toffset | shift in time scale |
| mode | filling 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.
| hptr | histogram pointer |
| toffset | shift in time scale |
| mode | time 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.
| hptr | histogram pointer |
| toffset | shift in time scale |
| mode | time 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.
| hptr | histogram pointer |
| mode | data 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().
|
inline |
Return the pointer to the pads noise histogram of current event.
References h_xy_rms.
Referenced by GETActarEventReader::PresetAnalysis().
|
inline |
Return histogram of the average signal of in-track pads.
References h_mean_in_track.
|
inline |
Return the average signal sample of in-track pads.
References sum_in_track.
|
inline |
Return histogram of the in-track pads pattern.
References h_mask_in.
|
inlinevirtual |
Return off-track mask.
References off_mask.
|
inlinevirtual |
Return off-track mask.
References off_mask.
|
inline |
Return histogram of the average signal of off-track pads.
References h_mean_off_track.
|
inline |
Return the average signal sample of off-track pads.
References sum_off_track.
|
inlinevirtual |
Return the number of off-track pads.
References GETHitMask::GetNhitValid(), off_mask, and off_track_on.
|
inline |
Return histogram of the off-track pads pattern.
References h_mask_off.
|
inline |
Return the automatic histogram for T-projection of signal amplitude.
References h_t_proj.
|
inline |
Return the automatic histogram for X-projection of signal amplitude.
References h_x_proj.
|
inline |
Return the automatic histogram for (X-T) projection of signal amplitude.
References h_xt_ampl.
|
inline |
Return the automatic histogram for (X-Y) projection of signal amplitude.
References h_xy_ampl.
|
inline |
Return the automatic histogram for pad hit pattern.
References h_xy_hits.
|
inline |
Return the automatic histogram for pad hit pattern.
References h_xyt.
|
inline |
Return the automatic histogram for pad pattern of signal time.
References h_xy_time.
|
inline |
Return the automatic histogram for Y-projection of signal amplitude.
References h_y_proj.
|
inline |
Return the automatic histogram for (Y-T) projection of signal amplitude.
References h_yt_ampl.
|
private |
Macro from GCpp library that defines the following functions:
|
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.
| spc | pad spacing between track aond off-track pads |
References GETSystemAnalyser::get_ptr, off_space, and off_track_on.
Referenced by ConfigCommand(), and SetOffTrackCorrection().
|
inline |
Return true if the off-track analysis is set.
References off_track_on.
|
inline |
Return true if the off-track channels output corrections is set.
References off_track_cor.
|
virtual |
Overload of the GETSystemAnalyser::ProcessNoiseAnalysis function in order to fill the pads XY noise histogram.
Reimplemented from GETSystemAnalyser.
References GETSystemAnalyser::get_ptr, GETLookupTable::GetChannel(), GETLookupTable::GetNpadX(), GETLookupTable::GetNpadY(), GETSystemAnalyser::h_channels_rms, h_xy_rms, GETHitMaskXY::IsValid(), GETSystem::LookupTable(), pad_mask, and GETSystemAnalyser::ProcessNoiseAnalysis().
Referenced by AnalyseCorEvent().
|
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().
|
virtual |
Delete all analysis currently defined for the analyser.
Reimplemented from GETSystemAnalyser.
References 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_track_cor, off_track_on, and GETSystemAnalyser::Reset().
Referenced by SetSystem(), and ~GETActarTpcAnalyser().
|
virtual |
Overload of the GETSystemAnalyser::SetNoiseRange function in order to create the pads XY noise histogram.
| i0 | lower time bucket for the analysis range |
| i1 | upper time bucket for the analysis range |
Reimplemented from GETSystemAnalyser.
References CreatePadHistogram(), h_xy_rms, pad_mask, GETSystemAnalyser::rms_on, and GETSystemAnalyser::SetNoiseRange().
|
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.
| spc | pad 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().
|
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.
| gptr | Pointer to the GET system |
Reimplemented from GETSystemAnalyser.
References actar_ptr, GETSystem::GetHitMask(), GETSystemAnalyser::InitAmplitudeData(), pad_mask, Reset(), and GETSystemAnalyser::SetSystem().