Public Types | |
enum | PeakSearchOption { Standard = 1, Simple = 2, Safe = 3 } |
Public Member Functions | |
OptimumFilter () | |
default constructor | |
QError | Compute () |
Compute quantities needed to filter samples. | |
QError | Compute_d () |
Compute quantities needed to filter differentiated samples. | |
QError | SetFilters (const QVector &avg, const QVector &noise) |
Load filter parameters. | |
QError | SetFilters_d (const QVector &avg, const QVector &noise) |
Load filter parameters (differetiated). | |
float | Amplitude (QVector &pSamples, float &) |
compute amplitude | |
float | PulseAmplitude (QVector &pSamples) |
compute amplitude with a parabolic interpolation | |
float | GetTVR () |
returns TVR shape parameter | |
float | GetTVL () |
returns TVL shape parameter | |
float | GetRT () |
returns rise time | |
float | GetDT () |
returns decay time | |
float | GetAdc2mV () |
returns convertionf from ADC units to mV | |
float | GetDelay () |
returns pulse delay | |
float | GetFracDelay () |
returns pulse fractional delay | |
void | SetTriggerPos (int trigger) |
sets trigger standard position (in bins) | |
void | ShapeParameters (QVector &SamplesFiltered) |
computes shape parameters TVL&TVR | |
QVector | PolFit (QVector &x, QVector &y) |
computes a quadratic polinomial fit and returns the interpolation parameters | |
QError | PowerSpectrum (const QVector &pSamples, QVector &samplesFiltered) |
returns pSamples' power spectrum | |
QError | Filter (const QVector &pSamples, QVector &samplesFiltered) |
returns filtered samples | |
QError | Filter_d (const QVector &pSamples, QVector &samplesFiltered) |
returns filtered samples (differentiated signal) | |
QError | FAmplitude (const QVector &pSamples, double &) |
returns frequency domain amplitude (total energy) | |
float | MultiplePulseCorrection (QVector &, QVector &, QVector &, bool) |
Gain information from Wiener filter in order to pulse reconstruction. | |
float | GetAmplitude () |
float | GetSecondAmplitude () |
float | GetSecondDelay () |
void | CallPileUp () |
void | BiPol (QVector &, QVector &, QVector &) |
finds the second order polinomial passing between three points | |
const QVector & | averagePulse () |
return average pulse used in filtering | |
const QVector & | averagePulse_f () |
return average filtered pulse | |
const QVector & | noiseSpectrum () |
return noise spectrum used in filtering | |
QVector | ReconstructionFit (QVector &, QVector &, QVector &) |
linear interpolation for secondary amplitude extimation and correction * | |
QVector | GetReconstructedFit () |
returns reconstructed pulse * | |
void | Decay_and_Rise (const QVector &) |
Rise and Decay Time extimation | |
QVector | fShift (QVector &, float &) |
Fractional shift | |
float | GetBLS () |
Baseline slope extimation | |
void | SetPulseInfo (const QVector &) |
Set global information of the event | |
void | SetPulseInfo (const QVector &, QVector &) |
Set global information of the event with side pulses info | |
void | LookForTrigger (int opt) |
Sets peak search near trigger position. | |
Private Attributes | |
PulseInfo | data |
QVector | AvgPulse |
int | nSigPulses |
QVector | fPS |
bool | fMultiPulse |
int | fLookForTrigger |
int | nNoisePS |
unsigned int | avg_nmax |
unsigned int | fTriggerPos |
int | rms_left |
int | rms_right |
int | fMaxRange |
int | fSize |
int | fBaseLineStart |
int | fBaseLineNpt |
double | conv |
double | conv_d |
double | fDelay |
float | tvl |
float | tvr |
float | RT |
float | DT |
float | fBS |
QVectorC | H |
QVector | AvgPulse_f |
QVector | fReconstructedPulse |
QVector OptimumFilter::ReconstructionFit | ( | QVector & | times, | |
QVector & | relamplitudes, | |||
QVector & | pSamples | |||
) |
linear interpolation for secondary amplitude extimation and correction *
*
Referenced by MultiplePulseCorrection().
QVector OptimumFilter::GetReconstructedFit | ( | ) | [inline] |
returns reconstructed pulse *
*
void OptimumFilter::Decay_and_Rise | ( | const QVector & | pulse | ) |
Rise and Decay Time extimation
*
QVector OptimumFilter::fShift | ( | QVector & | pSamples, | |
float & | delta | |||
) |
float OptimumFilter::GetBLS | ( | ) | [inline] |
Baseline slope extimation
*
void OptimumFilter::SetPulseInfo | ( | const QVector & | pSamples | ) |
Set global information of the event
*
void OptimumFilter::SetPulseInfo | ( | const QVector & | pSamples, | |
QVector & | sidepulseinfo | |||
) |
Set global information of the event with side pulses info
*