|
musrfit 1.10.0
|
Abstract base class defining the interface for all μSR fit types. More...
#include <PRunBase.h>


Public Member Functions | |
| PRunBase () | |
| Default constructor. | |
| PRunBase (PMsrHandler *msrInfo, PRunDataHandler *rawData, UInt_t runNo, EPMusrHandleTag tag) | |
| Constructor initializing run from MSR file and raw data. | |
| virtual | ~PRunBase () |
| Virtual destructor. | |
| virtual Double_t | CalcChiSquare (const std::vector< Double_t > &par)=0 |
| Calculates χ² between data and theory (pure virtual). | |
| virtual Double_t | CalcChiSquareExpected (const std::vector< Double_t > &par)=0 |
| Calculates expected chi-square for statistical analysis (pure virtual). | |
| virtual Double_t | CalcMaxLikelihood (const std::vector< Double_t > &par)=0 |
| Calculates maximum likelihood estimator (pure virtual). | |
| virtual void | SetFitRange (PDoublePairVector fitRange) |
| Sets the fit time range for this run. | |
| virtual void | CalcTheory ()=0 |
| Evaluates theory function at all data points (pure virtual). | |
| virtual UInt_t | GetRunNo () |
| Returns the run number (0-based index in MSR file). | |
| virtual PRunData * | GetData () |
| Returns pointer to processed data container. | |
| virtual void | CleanUp () |
| Cleans up internal data structures. | |
| virtual Bool_t | IsValid () |
| Returns validity status of this run object. | |
Protected Member Functions | |
| virtual Bool_t | PrepareData ()=0 |
| Prepares raw data for fitting (pure virtual). | |
| virtual void | DeadTimeCorrection (std::vector< PDoubleVector > &histos, PUIntVector &histoNo) |
| carry out dead time correction | |
| virtual void | CalculateKaiserFilterCoeff (Double_t wc, Double_t A, Double_t dw) |
| Calculates Kaiser window FIR filter coefficients for RRF smoothing. | |
| virtual void | FilterTheo () |
| Applies Kaiser FIR filter to theory values for RRF fits. | |
Protected Attributes | |
| Bool_t | fValid |
| Flag indicating if run object initialized successfully; false if any error occurred. | |
| EPMusrHandleTag | fHandleTag |
| Operation mode: kFit (fitting), kView (display only), kEmpty (uninitialized) | |
| Int_t | fRunNo |
| Run number (0-based index in MSR file RUN blocks) | |
| PMsrHandler * | fMsrInfo |
| Pointer to MSR file handler (owned externally, not deleted here) | |
| PMsrRunBlock * | fRunInfo |
| Pointer to this run's RUN block settings within fMsrInfo. | |
| PRunDataHandler * | fRawData |
| Pointer to raw data handler (owned externally, not deleted here) | |
| PRunData | fData |
| Processed data container: background-corrected, packed, with theory values. | |
| Double_t | fTimeResolution |
| Time resolution of raw histogram data in microseconds (μs), e.g., 0.01953125 μs for PSI GPS. | |
| PMetaData | fMetaData |
| Experimental metadata extracted from data file header (magnetic field, temperature, beam energy) | |
| PDoubleVector | fT0s |
| Time-zero bin values for all histograms in this run (forward, backward, etc.) | |
| std::vector< PDoubleVector > | fAddT0s |
| Time-zero bin values for additional runs to be added to main run. | |
| Double_t | fFitStartTime |
| Fit range start time in microseconds (μs) relative to t0. | |
| Double_t | fFitEndTime |
| Fit range end time in microseconds (μs) relative to t0. | |
| PDoubleVector | fFuncValues |
| Cached values of user-defined functions from FUNCTIONS block, evaluated at current parameters. | |
| std::unique_ptr< PTheory > | fTheory |
| Theory function evaluator (smart pointer, automatically deleted) | |
| PDoubleVector | fKaiserFilter |
| Kaiser window FIR filter coefficients for smoothing RRF theory curves. | |
Abstract base class defining the interface for all μSR fit types.
PRunBase establishes a common API for processing and fitting different types of μSR data (single histogram, asymmetry, RRF, etc.). This class serves as the foundation of the musrfit framework, providing core functionality and requiring derived classes to implement fit-type-specific algorithms.
Each derived class handles a specific type of μSR measurement:

The typical processing sequence for a fit is:
PRunBase implements the Template Method design pattern:
PRunBase objects are NOT thread-safe. Each thread in parallel fitting should create its own PRunBase-derived object. Theory evaluation may use OpenMP internally (see PTheory documentation).
Definition at line 102 of file PRunBase.h.
| PRunBase::PRunBase | ( | ) |
Default constructor.
Default constructor that initializes all member variables to default values.
Creates an empty, invalid run object with all pointers set to nullptr and values set to undefined/invalid states. This constructor is needed to allow creation of vectors of PRunBase-derived objects.
A run created with this constructor requires initialization via the main constructor before it can be used for fitting.
Definition at line 54 of file PRunBase.cpp.
References fFitEndTime, fFitStartTime, fHandleTag, fMetaData, fRawData, fRunInfo, fRunNo, fTimeResolution, fValid, kEmpty, and PMUSR_UNDEFINED.
Referenced by PRunAsymmetry::PRunAsymmetry(), PRunAsymmetry::PRunAsymmetry(), PRunAsymmetryBNMR::PRunAsymmetryBNMR(), PRunAsymmetryBNMR::PRunAsymmetryBNMR(), PRunAsymmetryRRF::PRunAsymmetryRRF(), PRunAsymmetryRRF::PRunAsymmetryRRF(), PRunMuMinus::PRunMuMinus(), PRunMuMinus::PRunMuMinus(), PRunNonMusr::PRunNonMusr(), PRunNonMusr::PRunNonMusr(), PRunSingleHisto::PRunSingleHisto(), PRunSingleHisto::PRunSingleHisto(), PRunSingleHistoRRF::PRunSingleHistoRRF(), and PRunSingleHistoRRF::PRunSingleHistoRRF().
| PRunBase::PRunBase | ( | PMsrHandler * | msrInfo, |
| PRunDataHandler * | rawData, | ||
| UInt_t | runNo, | ||
| EPMusrHandleTag | tag ) |
Constructor initializing run from MSR file and raw data.
Main constructor that initializes a run from MSR file and raw data.
Initializes the run object by:
| msrInfo | Pointer to MSR file handler containing all fit settings |
| rawData | Pointer to raw data handler for accessing histogram data |
| runNo | Run number (0-based index in MSR file RUN blocks) |
| tag | Operation mode: kFit (fitting), kView (display only) |
Performs comprehensive initialization:
If any initialization step fails (e.g., invalid theory, out-of-range parameters), the program exits with an error message. The run object is marked as valid upon successful completion.
| msrInfo | Pointer to MSR file handler (must remain valid for object lifetime) |
| rawData | Pointer to raw data handler (must remain valid for object lifetime) |
| runNo | Run number (0-based index into MSR file RUN blocks) |
| tag | Operation mode: kFit (fitting), kView (display/plotting) |
Definition at line 94 of file PRunBase.cpp.
References fFitEndTime, fFitStartTime, fFuncValues, fHandleTag, fMetaData, fMsrInfo, fRawData, fRunInfo, fRunNo, fTheory, fTimeResolution, fValid, if(), and PMUSR_UNDEFINED.
|
virtual |
Virtual destructor.
Virtual destructor that cleans up allocated resources.
Cleans up allocated resources including:
Frees memory allocated for:
The PTheory object is automatically deleted via unique_ptr. Pointers to MSR handler and raw data handler are NOT deleted as they are owned by the calling code.
Definition at line 152 of file PRunBase.cpp.
References fAddT0s, fFuncValues, and fT0s.
|
pure virtual |
Calculates χ² between data and theory (pure virtual).
Computes the chi-squared statistic:
![\[ \chi^2 = \sum_{i=1}^{N} \frac{(y_i^{\rm data} - y_i^{\rm theory})^2}{\sigma_i^2} \]](form_17.png)
This is the standard least-squares metric for fitting. It assumes Gaussian statistics (valid for high-count data). For low-count data, consider using CalcMaxLikelihood() instead.
Called by MINUIT during each fit iteration to evaluate parameter quality. Derived classes implement the specific calculation for their data type.
| par | Vector of fit parameter values from MINUIT |
Implemented in PRunAsymmetry, PRunAsymmetryBNMR, PRunAsymmetryRRF, PRunMuMinus, PRunNonMusr, PRunSingleHisto, and PRunSingleHistoRRF.
|
pure virtual |
Calculates expected chi-square for statistical analysis (pure virtual).
Computes the expected χ² value based on the theory and error estimates, useful for evaluating the quality of error bars and fit statistics.
For properly estimated errors: χ²_expected ≈ number of degrees of freedom
| par | Vector of fit parameter values from MINUIT |
Implemented in PRunAsymmetry, PRunAsymmetryBNMR, PRunAsymmetryRRF, PRunMuMinus, PRunNonMusr, PRunSingleHisto, and PRunSingleHistoRRF.
|
pure virtual |
Calculates maximum likelihood estimator (pure virtual).
Computes the negative log-likelihood for Poisson statistics:
![\[ -2\ln L = 2\sum_{i=1}^{N} \left[y_i^{\rm theory} - y_i^{\rm data} \ln(y_i^{\rm theory})\right] \]](form_18.png)
Maximum likelihood estimation is superior to χ² for low-count data where the Gaussian approximation breaks down (typically when counts < 10-20 per bin). It naturally handles Poisson statistics without requiring error estimates.
Called by MINUIT as an alternative to χ² minimization. MINUIT minimizes this function just like χ².
| par | Vector of fit parameter values from MINUIT |
Implemented in PRunAsymmetry, PRunAsymmetryBNMR, PRunAsymmetryRRF, PRunMuMinus, PRunNonMusr, PRunSingleHisto, and PRunSingleHistoRRF.
|
pure virtual |
Evaluates theory function at all data points (pure virtual).
Calculates the expected signal at each time point using the current parameter values from the MSR THEORY block. This is called:
The theory values are stored in fData for comparison with measured data. Derived classes implement fit-type-specific theory calculation (e.g., single histogram vs. asymmetry).
Implemented in PRunAsymmetry, PRunAsymmetryBNMR, PRunAsymmetryRRF, PRunMuMinus, PRunNonMusr, PRunSingleHisto, and PRunSingleHistoRRF.
|
protectedvirtual |
Calculates Kaiser window FIR filter coefficients for RRF smoothing.
Computes a Kaiser window finite impulse response (FIR) filter for smoothing theory curves in rotating reference frame (RRF) fits. The Kaiser window provides excellent control over the trade-off between main lobe width (frequency resolution) and side lobe attenuation (spectral leakage).
The filter design uses the Kaiser-Bessel formula:
![\[ w[n] = \frac{I_0\left(\beta\sqrt{1-\left(\frac{n-\alpha}{\alpha}\right)^2}\right)}{I_0(\beta)} \]](form_19.png)
where 


| wc | Cutoff frequency (normalized, 0 to π rad/sample) |
| A | Attenuation in dB (typical: 60 dB for good side lobe suppression) |
| dw | Transition width (normalized, typical: 0.1-0.3) |
Coefficients are stored in fKaiserFilter for use by FilterTheo().
Designs a low-pass FIR filter using the Kaiser window method, which provides excellent control over the frequency response characteristics. The filter is used to smooth theory curves in rotating reference frame (RRF) fits, ensuring consistent comparison between filtered data and filtered theory.
Algorithm (based on Oppenheim, Schafer, Buck, "Discrete-Time Signal Processing"):
![$ w[n] = \frac{I_0(\beta\sqrt{1-(n/\alpha)^2})}{I_0(\beta)} $](form_75.png)
![$ h[n] = \frac{\sin(\omega_c n)}{\pi n} \cdot w[n] $](form_76.png)
The β parameter is chosen based on attenuation A (in dB):
Filter order: m = (A - 8) / (2.285 × Δω × π), rounded to nearest odd integer
Reference: A.V. Oppenheim, R.W. Schafer, J.R. Buck, "Discrete-Time Signal Processing", Pearson 2004, pp. 574ff
| wc | Cutoff frequency (normalized, 0 to π rad/sample) |
| A | Attenuation in dB: A = -20 log₁₀(δ) where δ is the tolerance band |
| dw | Transition width: Δω = ω_S - ω_P (stop band - pass band frequencies) |
The computed coefficients are stored in fKaiserFilter and normalized for unity DC gain.
Definition at line 339 of file PRunBase.cpp.
References fData, and fKaiserFilter.
Referenced by PRunAsymmetry::PrepareRRFViewData(), and PRunSingleHisto::PrepareViewData().
|
virtual |
Cleans up internal data structures.
Cleans up allocated resources.
Releases memory used by temporary data structures. Called when run processing is complete or when resetting for a new fit.
Releases memory used by the PTheory object via unique_ptr reset. This is called when the run processing is complete or when preparing for a new fit with different settings.
Other data structures (vectors) are managed automatically by their destructors.
Definition at line 298 of file PRunBase.cpp.
References fTheory.
|
protectedvirtual |
carry out dead time correction
| histos | histograms to be corrected |
| histoNo | histogram numbers |
Definition at line 171 of file PRunBase.cpp.
References PRawRunData::DeadTimeCorrectionReady(), fMsrInfo, fRawData, fRunInfo, fTimeResolution, PRawRunData::GetDeadTimeParam(), and PRawRunData::GetNumberOfGoodFrames().
Referenced by PRunAsymmetry::PrepareData(), PRunAsymmetryRRF::PrepareData(), PRunSingleHisto::PrepareData(), and PRunSingleHistoRRF::PrepareData().
|
protectedvirtual |
Applies Kaiser FIR filter to theory values for RRF fits.
Filters the theory function stored in fData using the Kaiser window coefficients from fKaiserFilter. This ensures the theory curve is smoothed in the same way as the RRF-transformed data, enabling fair comparison in χ² calculation.
The filtering is performed via convolution in the time domain:
![\[ y_{\rm filtered}[n] = \sum_{k=0}^{M-1} h[k] \cdot y_{\rm theory}[n-k] \]](form_23.png)
where h[k] are the Kaiser filter coefficients and M is the filter length.
Only used in RRF-derived classes (PRunAsymmetryRRF, PRunSingleHistoRRF).
Performs time-domain convolution of the theory function with the Kaiser filter coefficients computed by CalculateKaiserFilterCoeff(). This smooths the theory curve to match the filtering applied to RRF-transformed data, ensuring fair comparison during χ² calculation.
The filtering operation is:
![\[ y_{\rm filtered}[i] = \sum_{j=0}^{M-1} h[j] \cdot y_{\rm theory}[i-j] \]](form_77.png)
where:
Additional processing:
This method is only called by RRF-derived classes (PRunAsymmetryRRF, PRunSingleHistoRRF) after theory calculation and RRF transformation.
Definition at line 405 of file PRunBase.cpp.
References fData, and fKaiserFilter.
Referenced by PRunAsymmetry::PrepareRRFViewData(), and PRunSingleHisto::PrepareViewData().
|
inlinevirtual |
Returns pointer to processed data container.
The PRunData object contains:
Definition at line 242 of file PRunBase.h.
References fData.
|
inlinevirtual |
Returns the run number (0-based index in MSR file).
Definition at line 228 of file PRunBase.h.
References fRunNo.
|
inlinevirtual |
Returns validity status of this run object.
A run becomes invalid if:
Definition at line 263 of file PRunBase.h.
References fValid.
|
protectedpure virtual |
Prepares raw data for fitting (pure virtual).
This is the main data preprocessing pipeline, implemented differently by each derived class according to the fit type. Common operations include:
Called once during object construction. If this returns false, the run object is marked as invalid.
Implemented in PRunAsymmetry, PRunAsymmetryBNMR, PRunAsymmetryRRF, PRunMuMinus, PRunNonMusr, PRunSingleHisto, and PRunSingleHistoRRF.
|
virtual |
Sets the fit time range for this run.
Sets the fit time range and recalculates the number of fitted bins.
Updates the fitting window, useful for the FIT_RANGE command which allows scanning different time windows to find the optimal range for parameter extraction. Can be called multiple times during a fit sequence.
The fit range is specified in microseconds (μs) from t0. Multiple ranges can be specified for different runs in a global fit.
| fitRange | Vector of (start, end) time pairs in microseconds |
Example: fitRange[0] = (0.1, 10.0) means fit from 0.1 μs to 10.0 μs after t0
Updates the fitting window for this run. This method handles two scenarios:
The method validates that:
This is typically called by the FIT_RANGE command to dynamically adjust the fitting window during optimization or range scanning.
| fitRange | Vector of (start, end) time pairs in microseconds (μs) |
Example: fitRange = {(0.1, 10.0), (0.2, 8.0)} applies first range to run 0, second range to run 1
Definition at line 252 of file PRunBase.cpp.
References fFitEndTime, fFitStartTime, and fRunNo.
|
protected |
Time-zero bin values for additional runs to be added to main run.
Definition at line 279 of file PRunBase.h.
Referenced by PRunAsymmetry::GetProperT0(), PRunAsymmetryBNMR::GetProperT0(), PRunAsymmetryRRF::GetProperT0(), PRunMuMinus::GetProperT0(), PRunSingleHisto::GetProperT0(), PRunSingleHistoRRF::GetProperT0(), PRunAsymmetry::PrepareData(), PRunAsymmetryBNMR::PrepareData(), PRunAsymmetryRRF::PrepareData(), PRunMuMinus::PrepareData(), PRunSingleHisto::PrepareData(), PRunSingleHistoRRF::PrepareData(), and ~PRunBase().
|
protected |
Processed data container: background-corrected, packed, with theory values.
Definition at line 275 of file PRunBase.h.
Referenced by PRunAsymmetry::CalcChiSquare(), PRunAsymmetryBNMR::CalcChiSquare(), PRunAsymmetryRRF::CalcChiSquare(), PRunMuMinus::CalcChiSquare(), PRunNonMusr::CalcChiSquare(), PRunSingleHisto::CalcChiSquare(), PRunSingleHistoRRF::CalcChiSquare(), PRunMuMinus::CalcChiSquareExpected(), PRunSingleHisto::CalcChiSquareExpected(), PRunSingleHistoRRF::CalcChiSquareExpected(), PRunMuMinus::CalcMaxLikelihood(), PRunSingleHisto::CalcMaxLikelihood(), PRunSingleHisto::CalcMaxLikelihoodExpected(), PRunAsymmetry::CalcNoOfFitBins(), PRunAsymmetryBNMR::CalcNoOfFitBins(), PRunAsymmetryRRF::CalcNoOfFitBins(), PRunMuMinus::CalcNoOfFitBins(), PRunSingleHisto::CalcNoOfFitBins(), PRunSingleHistoRRF::CalcNoOfFitBins(), PRunAsymmetry::CalcTheory(), PRunAsymmetryBNMR::CalcTheory(), PRunAsymmetryRRF::CalcTheory(), PRunMuMinus::CalcTheory(), PRunSingleHisto::CalcTheory(), PRunSingleHistoRRF::CalcTheory(), CalculateKaiserFilterCoeff(), FilterTheo(), GetData(), PRunNonMusr::GetNoOfFitBins(), PRunAsymmetry::PrepareFitData(), PRunAsymmetryBNMR::PrepareFitData(), PRunAsymmetryRRF::PrepareFitData(), PRunMuMinus::PrepareFitData(), PRunNonMusr::PrepareFitData(), PRunSingleHisto::PrepareFitData(), PRunSingleHistoRRF::PrepareFitData(), PRunMuMinus::PrepareRawViewData(), PRunSingleHisto::PrepareRawViewData(), PRunAsymmetry::PrepareRRFViewData(), PRunAsymmetry::PrepareViewData(), PRunAsymmetryBNMR::PrepareViewData(), PRunAsymmetryRRF::PrepareViewData(), PRunNonMusr::PrepareViewData(), PRunSingleHisto::PrepareViewData(), and PRunSingleHistoRRF::PrepareViewData().
|
protected |
Fit range end time in microseconds (μs) relative to t0.
Definition at line 282 of file PRunBase.h.
Referenced by PRunAsymmetry::CalcNoOfFitBins(), PRunAsymmetryBNMR::CalcNoOfFitBins(), PRunAsymmetryRRF::CalcNoOfFitBins(), PRunMuMinus::CalcNoOfFitBins(), PRunSingleHisto::CalcNoOfFitBins(), PRunSingleHistoRRF::CalcNoOfFitBins(), PRunNonMusr::GetNoOfFitBins(), PRunAsymmetry::GetProperFitRange(), PRunAsymmetryBNMR::GetProperFitRange(), PRunAsymmetryRRF::GetProperFitRange(), PRunMuMinus::GetProperFitRange(), PRunSingleHisto::GetProperFitRange(), PRunSingleHistoRRF::GetProperFitRange(), PRunNonMusr::PrepareData(), PRunNonMusr::PrepareFitData(), PRunMuMinus::PrepareRawViewData(), PRunBase(), PRunBase(), SetFitRange(), PRunAsymmetry::SetFitRangeBin(), PRunAsymmetryBNMR::SetFitRangeBin(), PRunAsymmetryRRF::SetFitRangeBin(), PRunMuMinus::SetFitRangeBin(), PRunSingleHisto::SetFitRangeBin(), and PRunSingleHistoRRF::SetFitRangeBin().
|
protected |
Fit range start time in microseconds (μs) relative to t0.
Definition at line 281 of file PRunBase.h.
Referenced by PRunAsymmetry::CalcNoOfFitBins(), PRunAsymmetryBNMR::CalcNoOfFitBins(), PRunAsymmetryRRF::CalcNoOfFitBins(), PRunMuMinus::CalcNoOfFitBins(), PRunSingleHisto::CalcNoOfFitBins(), PRunSingleHistoRRF::CalcNoOfFitBins(), PRunNonMusr::GetNoOfFitBins(), PRunAsymmetry::GetProperFitRange(), PRunAsymmetryBNMR::GetProperFitRange(), PRunAsymmetryRRF::GetProperFitRange(), PRunMuMinus::GetProperFitRange(), PRunSingleHisto::GetProperFitRange(), PRunSingleHistoRRF::GetProperFitRange(), PRunNonMusr::PrepareData(), PRunNonMusr::PrepareFitData(), PRunMuMinus::PrepareRawViewData(), PRunBase(), PRunBase(), SetFitRange(), PRunAsymmetry::SetFitRangeBin(), PRunAsymmetryBNMR::SetFitRangeBin(), PRunAsymmetryRRF::SetFitRangeBin(), PRunMuMinus::SetFitRangeBin(), PRunSingleHisto::SetFitRangeBin(), and PRunSingleHistoRRF::SetFitRangeBin().
|
protected |
Cached values of user-defined functions from FUNCTIONS block, evaluated at current parameters.
Definition at line 284 of file PRunBase.h.
Referenced by PRunAsymmetry::CalcChiSquare(), PRunAsymmetryBNMR::CalcChiSquare(), PRunAsymmetryRRF::CalcChiSquare(), PRunMuMinus::CalcChiSquare(), PRunNonMusr::CalcChiSquare(), PRunSingleHisto::CalcChiSquare(), PRunSingleHistoRRF::CalcChiSquare(), PRunMuMinus::CalcChiSquareExpected(), PRunSingleHisto::CalcChiSquareExpected(), PRunSingleHistoRRF::CalcChiSquareExpected(), PRunMuMinus::CalcMaxLikelihood(), PRunSingleHisto::CalcMaxLikelihood(), PRunSingleHisto::CalcMaxLikelihoodExpected(), PRunAsymmetry::CalcTheory(), PRunAsymmetryBNMR::CalcTheory(), PRunAsymmetryRRF::CalcTheory(), PRunMuMinus::CalcTheory(), PRunSingleHisto::CalcTheory(), PRunSingleHistoRRF::CalcTheory(), PRunMuMinus::PrepareRawViewData(), PRunSingleHisto::PrepareRawViewData(), PRunAsymmetry::PrepareRRFViewData(), PRunAsymmetry::PrepareViewData(), PRunAsymmetryBNMR::PrepareViewData(), PRunAsymmetryRRF::PrepareViewData(), PRunNonMusr::PrepareViewData(), PRunSingleHisto::PrepareViewData(), PRunSingleHistoRRF::PrepareViewData(), PRunBase(), and ~PRunBase().
|
protected |
Operation mode: kFit (fitting), kView (display only), kEmpty (uninitialized)
Definition at line 268 of file PRunBase.h.
Referenced by PRunAsymmetry::PrepareData(), PRunAsymmetryBNMR::PrepareData(), PRunAsymmetryRRF::PrepareData(), PRunMuMinus::PrepareData(), PRunNonMusr::PrepareData(), PRunSingleHisto::PrepareData(), PRunSingleHistoRRF::PrepareData(), PRunBase(), PRunBase(), PRunMuMinus::PRunMuMinus(), and PRunNonMusr::PRunNonMusr().
|
protected |
Kaiser window FIR filter coefficients for smoothing RRF theory curves.
Definition at line 287 of file PRunBase.h.
Referenced by CalculateKaiserFilterCoeff(), and FilterTheo().
|
protected |
Experimental metadata extracted from data file header (magnetic field, temperature, beam energy)
Definition at line 277 of file PRunBase.h.
Referenced by PRunAsymmetry::CalcChiSquare(), PRunAsymmetryBNMR::CalcChiSquare(), PRunAsymmetryRRF::CalcChiSquare(), PRunMuMinus::CalcChiSquare(), PRunNonMusr::CalcChiSquare(), PRunSingleHisto::CalcChiSquare(), PRunSingleHistoRRF::CalcChiSquare(), PRunMuMinus::CalcChiSquareExpected(), PRunSingleHisto::CalcChiSquareExpected(), PRunSingleHistoRRF::CalcChiSquareExpected(), PRunMuMinus::CalcMaxLikelihood(), PRunSingleHisto::CalcMaxLikelihood(), PRunSingleHisto::CalcMaxLikelihoodExpected(), PRunAsymmetry::CalcTheory(), PRunAsymmetryBNMR::CalcTheory(), PRunAsymmetryRRF::CalcTheory(), PRunMuMinus::CalcTheory(), PRunSingleHisto::CalcTheory(), PRunSingleHistoRRF::CalcTheory(), PRunAsymmetry::PrepareData(), PRunAsymmetryBNMR::PrepareData(), PRunAsymmetryRRF::PrepareData(), PRunMuMinus::PrepareData(), PRunSingleHisto::PrepareData(), PRunSingleHistoRRF::PrepareData(), PRunMuMinus::PrepareRawViewData(), PRunSingleHisto::PrepareRawViewData(), PRunAsymmetry::PrepareRRFViewData(), PRunAsymmetry::PrepareViewData(), PRunAsymmetryBNMR::PrepareViewData(), PRunAsymmetryRRF::PrepareViewData(), PRunNonMusr::PrepareViewData(), PRunSingleHisto::PrepareViewData(), PRunSingleHistoRRF::PrepareViewData(), PRunBase(), and PRunBase().
|
protected |
Pointer to MSR file handler (owned externally, not deleted here)
Definition at line 271 of file PRunBase.h.
Referenced by PRunAsymmetry::CalcChiSquare(), PRunAsymmetryBNMR::CalcChiSquare(), PRunAsymmetryRRF::CalcChiSquare(), PRunMuMinus::CalcChiSquare(), PRunNonMusr::CalcChiSquare(), PRunSingleHisto::CalcChiSquare(), PRunSingleHistoRRF::CalcChiSquare(), PRunMuMinus::CalcChiSquareExpected(), PRunSingleHisto::CalcChiSquareExpected(), PRunSingleHistoRRF::CalcChiSquareExpected(), PRunMuMinus::CalcMaxLikelihood(), PRunSingleHisto::CalcMaxLikelihood(), PRunSingleHisto::CalcMaxLikelihoodExpected(), PRunAsymmetry::CalcTheory(), PRunAsymmetryBNMR::CalcTheory(), PRunAsymmetryRRF::CalcTheory(), PRunMuMinus::CalcTheory(), PRunSingleHisto::CalcTheory(), PRunSingleHistoRRF::CalcTheory(), DeadTimeCorrection(), PRunSingleHisto::EstimateN0(), PRunAsymmetry::GetProperDataRange(), PRunAsymmetryBNMR::GetProperDataRange(), PRunAsymmetryRRF::GetProperDataRange(), PRunMuMinus::GetProperDataRange(), PRunSingleHisto::GetProperDataRange(), PRunSingleHistoRRF::GetProperDataRange(), PRunSingleHisto::IsScaleN0AndBkg(), PRunAsymmetry::PrepareData(), PRunAsymmetryBNMR::PrepareData(), PRunAsymmetryRRF::PrepareData(), PRunMuMinus::PrepareData(), PRunNonMusr::PrepareData(), PRunSingleHisto::PrepareData(), PRunSingleHistoRRF::PrepareData(), PRunAsymmetryRRF::PrepareFitData(), PRunSingleHisto::PrepareFitData(), PRunSingleHistoRRF::PrepareFitData(), PRunMuMinus::PrepareRawViewData(), PRunSingleHisto::PrepareRawViewData(), PRunAsymmetry::PrepareRRFViewData(), PRunAsymmetry::PrepareViewData(), PRunAsymmetryBNMR::PrepareViewData(), PRunAsymmetryRRF::PrepareViewData(), PRunNonMusr::PrepareViewData(), PRunSingleHisto::PrepareViewData(), PRunSingleHistoRRF::PrepareViewData(), PRunAsymmetry::PRunAsymmetry(), PRunAsymmetryBNMR::PRunAsymmetryBNMR(), PRunAsymmetryRRF::PRunAsymmetryRRF(), PRunBase(), PRunMuMinus::PRunMuMinus(), and PRunSingleHisto::PRunSingleHisto().
|
protected |
Pointer to raw data handler (owned externally, not deleted here)
Definition at line 273 of file PRunBase.h.
Referenced by DeadTimeCorrection(), PRunAsymmetry::GetProperT0(), PRunAsymmetryBNMR::GetProperT0(), PRunAsymmetryRRF::GetProperT0(), PRunMuMinus::GetProperT0(), PRunSingleHisto::GetProperT0(), PRunSingleHistoRRF::GetProperT0(), PRunAsymmetry::PrepareData(), PRunAsymmetryBNMR::PrepareData(), PRunAsymmetryRRF::PrepareData(), PRunMuMinus::PrepareData(), PRunSingleHisto::PrepareData(), PRunSingleHistoRRF::PrepareData(), PRunBase(), PRunBase(), and PRunNonMusr::PRunNonMusr().
|
protected |
Pointer to this run's RUN block settings within fMsrInfo.
Definition at line 272 of file PRunBase.h.
Referenced by PRunAsymmetry::CalcChiSquare(), PRunAsymmetryBNMR::CalcChiSquare(), PRunAsymmetryRRF::CalcChiSquare(), PRunMuMinus::CalcChiSquare(), PRunNonMusr::CalcChiSquare(), PRunSingleHisto::CalcChiSquare(), PRunSingleHistoRRF::CalcChiSquare(), PRunMuMinus::CalcChiSquareExpected(), PRunSingleHisto::CalcChiSquareExpected(), PRunSingleHistoRRF::CalcChiSquareExpected(), PRunMuMinus::CalcMaxLikelihood(), PRunSingleHisto::CalcMaxLikelihood(), PRunSingleHisto::CalcMaxLikelihoodExpected(), PRunAsymmetry::CalcTheory(), PRunAsymmetryBNMR::CalcTheory(), PRunAsymmetryRRF::CalcTheory(), PRunMuMinus::CalcTheory(), PRunSingleHisto::CalcTheory(), PRunSingleHistoRRF::CalcTheory(), DeadTimeCorrection(), PRunSingleHisto::EstimateBkg(), PRunSingleHistoRRF::EstimateBkg(), PRunSingleHisto::EstimateN0(), PRunAsymmetry::GetProperDataRange(), PRunAsymmetryBNMR::GetProperDataRange(), PRunAsymmetryRRF::GetProperDataRange(), PRunMuMinus::GetProperDataRange(), PRunSingleHisto::GetProperDataRange(), PRunSingleHistoRRF::GetProperDataRange(), PRunAsymmetry::GetProperFitRange(), PRunAsymmetryBNMR::GetProperFitRange(), PRunAsymmetryRRF::GetProperFitRange(), PRunMuMinus::GetProperFitRange(), PRunSingleHisto::GetProperFitRange(), PRunSingleHistoRRF::GetProperFitRange(), PRunAsymmetry::GetProperT0(), PRunAsymmetryBNMR::GetProperT0(), PRunAsymmetryRRF::GetProperT0(), PRunMuMinus::GetProperT0(), PRunSingleHisto::GetProperT0(), PRunSingleHistoRRF::GetProperT0(), PRunNonMusr::GetXIndex(), PRunNonMusr::GetYIndex(), PRunAsymmetry::PrepareData(), PRunAsymmetryBNMR::PrepareData(), PRunAsymmetryRRF::PrepareData(), PRunMuMinus::PrepareData(), PRunNonMusr::PrepareData(), PRunSingleHisto::PrepareData(), PRunSingleHistoRRF::PrepareData(), PRunSingleHisto::PrepareFitData(), PRunSingleHistoRRF::PrepareFitData(), PRunMuMinus::PrepareRawViewData(), PRunSingleHisto::PrepareRawViewData(), PRunAsymmetry::PrepareRRFViewData(), PRunAsymmetry::PrepareViewData(), PRunAsymmetryBNMR::PrepareViewData(), PRunAsymmetryRRF::PrepareViewData(), PRunNonMusr::PrepareViewData(), PRunSingleHisto::PrepareViewData(), PRunSingleHistoRRF::PrepareViewData(), PRunAsymmetry::PRunAsymmetry(), PRunAsymmetryBNMR::PRunAsymmetryBNMR(), PRunAsymmetryRRF::PRunAsymmetryRRF(), PRunBase(), PRunBase(), PRunMuMinus::PRunMuMinus(), PRunNonMusr::PRunNonMusr(), PRunSingleHisto::PRunSingleHisto(), PRunAsymmetry::SubtractEstimatedBkg(), PRunAsymmetryBNMR::SubtractEstimatedBkg(), PRunAsymmetryRRF::SubtractEstimatedBkg(), PRunAsymmetry::SubtractFixBkg(), PRunAsymmetryBNMR::SubtractFixBkg(), and PRunAsymmetryRRF::SubtractFixBkg().
|
protected |
Run number (0-based index in MSR file RUN blocks)
Definition at line 270 of file PRunBase.h.
Referenced by GetRunNo(), PRunBase(), PRunBase(), SetFitRange(), PRunAsymmetry::SetFitRangeBin(), PRunAsymmetryBNMR::SetFitRangeBin(), PRunAsymmetryRRF::SetFitRangeBin(), PRunMuMinus::SetFitRangeBin(), PRunSingleHisto::SetFitRangeBin(), and PRunSingleHistoRRF::SetFitRangeBin().
|
protected |
Time-zero bin values for all histograms in this run (forward, backward, etc.)
Definition at line 278 of file PRunBase.h.
Referenced by PRunSingleHisto::EstimateN0(), PRunSingleHistoRRF::GetMainFrequency(), PRunAsymmetry::GetProperDataRange(), PRunAsymmetryBNMR::GetProperDataRange(), PRunAsymmetryRRF::GetProperDataRange(), PRunMuMinus::GetProperDataRange(), PRunSingleHisto::GetProperDataRange(), PRunSingleHistoRRF::GetProperDataRange(), PRunAsymmetry::GetProperFitRange(), PRunAsymmetryBNMR::GetProperFitRange(), PRunAsymmetryRRF::GetProperFitRange(), PRunMuMinus::GetProperFitRange(), PRunSingleHisto::GetProperFitRange(), PRunSingleHistoRRF::GetProperFitRange(), PRunAsymmetry::GetProperT0(), PRunAsymmetryBNMR::GetProperT0(), PRunAsymmetryRRF::GetProperT0(), PRunMuMinus::GetProperT0(), PRunSingleHisto::GetProperT0(), PRunSingleHistoRRF::GetProperT0(), PRunAsymmetry::PrepareData(), PRunAsymmetryBNMR::PrepareData(), PRunAsymmetryRRF::PrepareData(), PRunMuMinus::PrepareData(), PRunSingleHisto::PrepareData(), PRunSingleHistoRRF::PrepareData(), PRunAsymmetry::PrepareFitData(), PRunAsymmetryBNMR::PrepareFitData(), PRunAsymmetryRRF::PrepareFitData(), PRunMuMinus::PrepareFitData(), PRunSingleHisto::PrepareFitData(), PRunSingleHistoRRF::PrepareFitData(), PRunMuMinus::PrepareRawViewData(), PRunSingleHisto::PrepareRawViewData(), PRunAsymmetry::PrepareRRFViewData(), PRunAsymmetry::PrepareViewData(), PRunAsymmetryBNMR::PrepareViewData(), PRunAsymmetryRRF::PrepareViewData(), PRunSingleHisto::PrepareViewData(), PRunAsymmetry::SetFitRangeBin(), PRunAsymmetryBNMR::SetFitRangeBin(), PRunAsymmetryRRF::SetFitRangeBin(), PRunMuMinus::SetFitRangeBin(), PRunSingleHisto::SetFitRangeBin(), PRunSingleHistoRRF::SetFitRangeBin(), and ~PRunBase().
|
protected |
Theory function evaluator (smart pointer, automatically deleted)
Definition at line 285 of file PRunBase.h.
Referenced by PRunAsymmetry::CalcChiSquare(), PRunAsymmetryBNMR::CalcChiSquare(), PRunAsymmetryRRF::CalcChiSquare(), PRunMuMinus::CalcChiSquare(), PRunNonMusr::CalcChiSquare(), PRunSingleHisto::CalcChiSquare(), PRunSingleHistoRRF::CalcChiSquare(), PRunMuMinus::CalcChiSquareExpected(), PRunSingleHisto::CalcChiSquareExpected(), PRunSingleHistoRRF::CalcChiSquareExpected(), PRunMuMinus::CalcMaxLikelihood(), PRunSingleHisto::CalcMaxLikelihood(), PRunSingleHisto::CalcMaxLikelihoodExpected(), PRunAsymmetry::CalcTheory(), PRunAsymmetryBNMR::CalcTheory(), PRunAsymmetryRRF::CalcTheory(), PRunMuMinus::CalcTheory(), PRunSingleHisto::CalcTheory(), PRunSingleHistoRRF::CalcTheory(), CleanUp(), PRunMuMinus::PrepareRawViewData(), PRunSingleHisto::PrepareRawViewData(), PRunAsymmetry::PrepareRRFViewData(), PRunAsymmetry::PrepareViewData(), PRunAsymmetryBNMR::PrepareViewData(), PRunAsymmetryRRF::PrepareViewData(), PRunNonMusr::PrepareViewData(), PRunSingleHisto::PrepareViewData(), PRunSingleHistoRRF::PrepareViewData(), and PRunBase().
|
protected |
Time resolution of raw histogram data in microseconds (μs), e.g., 0.01953125 μs for PSI GPS.
Definition at line 276 of file PRunBase.h.
Referenced by PRunSingleHisto::CalcChiSquare(), PRunSingleHisto::CalcChiSquareExpected(), PRunSingleHisto::CalcMaxLikelihood(), PRunSingleHisto::CalcMaxLikelihoodExpected(), DeadTimeCorrection(), PRunSingleHisto::EstimateBkg(), PRunSingleHistoRRF::EstimateBkg(), PRunSingleHisto::EstimateN0(), PRunSingleHistoRRF::EstimateN0(), PRunSingleHistoRRF::GetMainFrequency(), PRunAsymmetry::GetProperDataRange(), PRunAsymmetryBNMR::GetProperDataRange(), PRunAsymmetryRRF::GetProperDataRange(), PRunMuMinus::GetProperDataRange(), PRunSingleHisto::GetProperDataRange(), PRunSingleHistoRRF::GetProperDataRange(), PRunAsymmetry::GetProperFitRange(), PRunAsymmetryBNMR::GetProperFitRange(), PRunAsymmetryRRF::GetProperFitRange(), PRunMuMinus::GetProperFitRange(), PRunSingleHisto::GetProperFitRange(), PRunSingleHistoRRF::GetProperFitRange(), PRunAsymmetry::PrepareData(), PRunAsymmetryBNMR::PrepareData(), PRunAsymmetryRRF::PrepareData(), PRunMuMinus::PrepareData(), PRunSingleHisto::PrepareData(), PRunSingleHistoRRF::PrepareData(), PRunAsymmetry::PrepareFitData(), PRunAsymmetryBNMR::PrepareFitData(), PRunAsymmetryRRF::PrepareFitData(), PRunMuMinus::PrepareFitData(), PRunSingleHisto::PrepareFitData(), PRunSingleHistoRRF::PrepareFitData(), PRunMuMinus::PrepareRawViewData(), PRunSingleHisto::PrepareRawViewData(), PRunAsymmetry::PrepareRRFViewData(), PRunAsymmetry::PrepareViewData(), PRunAsymmetryBNMR::PrepareViewData(), PRunAsymmetryRRF::PrepareViewData(), PRunSingleHisto::PrepareViewData(), PRunBase(), PRunBase(), PRunAsymmetry::SetFitRangeBin(), PRunAsymmetryBNMR::SetFitRangeBin(), PRunAsymmetryRRF::SetFitRangeBin(), PRunMuMinus::SetFitRangeBin(), PRunSingleHisto::SetFitRangeBin(), PRunSingleHistoRRF::SetFitRangeBin(), PRunAsymmetry::SubtractEstimatedBkg(), PRunAsymmetryBNMR::SubtractEstimatedBkg(), and PRunAsymmetryRRF::SubtractEstimatedBkg().
|
protected |
Flag indicating if run object initialized successfully; false if any error occurred.
Definition at line 266 of file PRunBase.h.
Referenced by IsValid(), PRunAsymmetry::PrepareData(), PRunAsymmetryBNMR::PrepareData(), PRunAsymmetryRRF::PrepareData(), PRunMuMinus::PrepareData(), PRunNonMusr::PrepareData(), PRunSingleHisto::PrepareData(), PRunSingleHistoRRF::PrepareData(), PRunAsymmetry::PRunAsymmetry(), PRunAsymmetryBNMR::PRunAsymmetryBNMR(), PRunAsymmetryRRF::PRunAsymmetryRRF(), PRunBase(), PRunBase(), PRunMuMinus::PRunMuMinus(), PRunNonMusr::PRunNonMusr(), PRunSingleHisto::PRunSingleHisto(), and PRunSingleHistoRRF::PRunSingleHistoRRF().