std::vector< UInt_t > PUIntVector
std::vector< PDoublePair > PDoublePairVector
std::vector< Double_t > PDoubleVector
MSR file parser and manager for the musrfit framework.
virtual void CleanUp()
Cleans up internal data structures.
virtual void CalcTheory()=0
Evaluates theory function at all data points (pure virtual).
Double_t fTimeResolution
Time resolution of raw histogram data in microseconds (μs), e.g., 0.01953125 μs for PSI GPS.
virtual ~PRunBase()
Virtual destructor.
virtual Bool_t PrepareData()=0
Prepares raw data for fitting (pure virtual).
Bool_t fValid
Flag indicating if run object initialized successfully; false if any error occurred.
virtual Double_t CalcChiSquareExpected(const std::vector< Double_t > &par)=0
Calculates expected chi-square for statistical analysis (pure virtual).
virtual Bool_t IsValid()
Returns validity status of this run object.
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.
PDoubleVector fKaiserFilter
Kaiser window FIR filter coefficients for smoothing RRF theory curves.
virtual void SetFitRange(PDoublePairVector fitRange)
Sets the fit time range for this run.
virtual Double_t CalcMaxLikelihood(const std::vector< Double_t > &par)=0
Calculates maximum likelihood estimator (pure virtual).
PMsrHandler * fMsrInfo
Pointer to MSR file handler (owned externally, not deleted here)
virtual void DeadTimeCorrection(std::vector< PDoubleVector > &histos, PUIntVector &histoNo)
carry out dead time correction
PMetaData fMetaData
Experimental metadata extracted from data file header (magnetic field, temperature,...
std::unique_ptr< PTheory > fTheory
Theory function evaluator (smart pointer, automatically deleted)
std::vector< PDoubleVector > fAddT0s
Time-zero bin values for additional runs to be added to main run.
EPMusrHandleTag fHandleTag
Operation mode: kFit (fitting), kView (display only), kEmpty (uninitialized)
virtual void CalculateKaiserFilterCoeff(Double_t wc, Double_t A, Double_t dw)
Calculates Kaiser window FIR filter coefficients for RRF smoothing.
PRunData fData
Processed data container: background-corrected, packed, with theory values.
virtual UInt_t GetRunNo()
Returns the run number (0-based index in MSR file).
PRunDataHandler * fRawData
Pointer to raw data handler (owned externally, not deleted here)
PDoubleVector fT0s
Time-zero bin values for all histograms in this run (forward, backward, etc.)
virtual PRunData * GetData()
Returns pointer to processed data container.
PRunBase()
Default constructor.
Int_t fRunNo
Run number (0-based index in MSR file RUN blocks)
PMsrRunBlock * fRunInfo
Pointer to this run's RUN block settings within fMsrInfo.
Double_t fFitStartTime
Fit range start time in microseconds (μs) relative to t0.
virtual void FilterTheo()
Applies Kaiser FIR filter to theory values for RRF fits.
virtual Double_t CalcChiSquare(const std::vector< Double_t > &par)=0
Calculates χ² between data and theory (pure virtual).
Raw data file reader and format converter for μSR data.