|
musrfit 1.10.0
|
MSR file parser and manager for the musrfit framework. More...
#include <PMsrHandler.h>

Public Member Functions | |
| PMsrHandler (const Char_t *fileName, PStartupOptions *startupOptions=0, const Bool_t fourierOnly=false) | |
| Constructor that initializes the MSR handler. | |
| virtual | ~PMsrHandler () |
| Destructor that cleans up all data structures. | |
| virtual Int_t | ReadMsrFile () |
| Reads and parses the MSR file. | |
| virtual Int_t | WriteMsrLogFile (const Bool_t messages=true) |
| Writes an MSR log file (.mlog) with parsed MSR content. | |
| virtual Int_t | WriteMsrFile (const Char_t *filename, std::map< UInt_t, TString > *commentsPAR=0, std::map< UInt_t, TString > *commentsTHE=0, std::map< UInt_t, TString > *commentsFUN=0, std::map< UInt_t, TString > *commentsRUN=0) |
| Writes an MSR file from internal data structures. | |
| virtual TString * | GetMsrTitle () |
| Returns pointer to MSR file title string. | |
| virtual PMsrParamList * | GetMsrParamList () |
| Returns pointer to fit parameter list. | |
| virtual PMsrLines * | GetMsrTheory () |
| Returns pointer to THEORY block lines. | |
| virtual PMsrLines * | GetMsrFunctions () |
| Returns pointer to FUNCTIONS block lines. | |
| virtual PMsrGlobalBlock * | GetMsrGlobal () |
| Returns pointer to GLOBAL block settings. | |
| virtual PMsrRunList * | GetMsrRunList () |
| Returns pointer to list of RUN blocks. | |
| virtual PMsrLines * | GetMsrCommands () |
| Returns pointer to COMMANDS block lines. | |
| virtual PMsrFourierStructure * | GetMsrFourierList () |
| Returns pointer to FOURIER block settings. | |
| virtual PMsrPlotList * | GetMsrPlotList () |
| Returns pointer to list of PLOT blocks. | |
| virtual PMsrStatisticStructure * | GetMsrStatistic () |
| Returns pointer to STATISTIC block. | |
| virtual TString * | GetMsrFileDirectoryPath () |
| Returns pointer to MSR file directory path. | |
| virtual UInt_t | GetNoOfRuns () |
| Returns the number of RUN blocks in MSR file. | |
| virtual UInt_t | GetNoOfParams () |
| Returns the number of fit parameters in FITPARAMETER block. | |
| virtual const TString & | GetFileName () const |
| Returns the MSR file name. | |
| virtual void | SetMsrTitle (const TString &title) |
| virtual Bool_t | SetMsrParamValue (UInt_t i, Double_t value) |
| virtual Bool_t | SetMsrParamStep (UInt_t i, Double_t value) |
| virtual Bool_t | SetMsrParamPosErrorPresent (UInt_t i, Bool_t value) |
| virtual Bool_t | SetMsrParamPosError (UInt_t i, Double_t value) |
| virtual void | SetMsrT0Entry (UInt_t runNo, UInt_t idx, Double_t bin) |
| virtual void | SetMsrAddT0Entry (UInt_t runNo, UInt_t addRunIdx, UInt_t histoIdx, Double_t bin) |
| virtual void | SetMsrDataRangeEntry (UInt_t runNo, UInt_t idx, Int_t bin) |
| virtual void | SetMsrBkgRangeEntry (UInt_t runNo, UInt_t idx, Int_t bin) |
| virtual void | CopyMsrStatisticBlock () |
| Flags that STATISTIC block should be copied as-is (for musrt0) | |
| virtual void | SetMsrStatisticConverged (Bool_t converged) |
| virtual void | SetMsrStatisticMin (Double_t min) |
| virtual void | SetMsrStatisticNdf (UInt_t ndf) |
| virtual Int_t | GetNoOfFuncs () |
| Returns the number of user-defined functions in FUNCTIONS block. | |
| virtual UInt_t | GetFuncNo (Int_t idx) |
| virtual UInt_t | GetFuncIndex (Int_t funNo) |
| virtual Bool_t | CheckMapAndParamRange (UInt_t mapSize, UInt_t paramSize) |
| virtual Double_t | EvalFunc (UInt_t i, std::vector< Int_t > map, std::vector< Double_t > param, PMetaData metaData) |
| virtual UInt_t | GetNoOfFitParameters (UInt_t idx) |
| virtual Int_t | ParameterInUse (UInt_t paramNo) |
| virtual void | GetGroupingString (Int_t runNo, TString detector, TString &groupingStr) |
| virtual Bool_t | EstimateN0 () |
| virtual std::string | GetLastErrorMsg () |
Private Member Functions | |
| virtual Bool_t | HandleFitParameterEntry (PMsrLines &line) |
| Parses FITPARAMETER block entries. | |
| virtual Bool_t | HandleTheoryEntry (PMsrLines &line) |
| Parses THEORY block entries. | |
| virtual Bool_t | HandleFunctionsEntry (PMsrLines &line) |
| Parses FUNCTIONS block entries. | |
| virtual Bool_t | HandleGlobalEntry (PMsrLines &line) |
| Parses GLOBAL block entries. | |
| virtual Bool_t | HandleRunEntry (PMsrLines &line) |
| Parses RUN block entries. | |
| virtual Bool_t | HandleCommandsEntry (PMsrLines &line) |
| Parses COMMANDS block entries. | |
| virtual Bool_t | HandleFourierEntry (PMsrLines &line) |
| Parses FOURIER block entries. | |
| virtual Bool_t | HandlePlotEntry (PMsrLines &line) |
| Parses PLOT block entries. | |
| virtual Bool_t | HandleStatisticEntry (PMsrLines &line) |
| Parses STATISTIC block entries. | |
| virtual void | FillParameterInUse (PMsrLines &theory, PMsrLines &funcs, PMsrLines &run) |
| Determines which parameters are used in theory and functions. | |
| virtual void | InitFourierParameterStructure (PMsrFourierStructure &fourier) |
| Initializes Fourier parameter structure with default values. | |
| virtual void | RemoveComment (const TString &str, TString &truncStr) |
| Removes comments from MSR file line. | |
| virtual Bool_t | ParseFourierPhaseValueVector (PMsrFourierStructure &fourier, const TString &str, Bool_t &error) |
| Parses Fourier phase value vector. | |
| virtual Bool_t | ParseFourierPhaseParVector (PMsrFourierStructure &fourier, const TString &str, Bool_t &error) |
| Parses Fourier phase parameter vector. | |
| virtual Bool_t | ParseFourierPhaseParIterVector (PMsrFourierStructure &fourier, const TString &str, Bool_t &error) |
| Parses Fourier phase parameter iteration vector. | |
| virtual Bool_t | FilterNumber (TString str, const Char_t *filter, Int_t offset, Int_t &no) |
| Extracts number from string with specific filter pattern. | |
| virtual UInt_t | NeededPrecision (Double_t dval, UInt_t precLimit=13) |
| Calculates precision needed for formatting a double value. | |
| virtual UInt_t | LastSignificant (Double_t dval, UInt_t precLimit=6) |
| Finds position of last significant digit in a double value. | |
| virtual void | MakeDetectorGroupingString (TString str, PIntVector &group, TString &result, Bool_t includeDetector=true) |
| Creates detector grouping string from integer vector. | |
| virtual TString | BeautifyFourierPhaseParameterString () |
| Formats Fourier phase parameter string for display. | |
| virtual void | CheckLegacyLifetimecorrection () |
| Checks for deprecated lifetimecorrection syntax and warns user. | |
| virtual Bool_t | CheckRunBlockIntegrity () |
| Validates RUN block structure and consistency. | |
| virtual Bool_t | CheckUniquenessOfParamNames (UInt_t &parX, UInt_t &parY) |
| Checks that all parameter names are unique. | |
| virtual Bool_t | CheckMaps () |
| Validates that all map indices are within parameter range. | |
| virtual Bool_t | CheckFuncs () |
| Validates user-defined functions syntax and parameter usage. | |
| virtual Bool_t | CheckHistoGrouping () |
| Checks histogram grouping consistency across runs. | |
| virtual Bool_t | CheckAddRunParameters () |
| Validates addrun parameter references. | |
| virtual Bool_t | CheckRRFSettings () |
| Validates RRF (Rotating Reference Frame) settings. | |
| virtual Bool_t | CheckRealFFT () |
| Checks if real FFT requirements are met. | |
| virtual void | CheckMaxLikelihood () |
| Validates maximum likelihood fit settings. | |
Private Attributes | |
| Bool_t | fFourierOnly |
| Flag indicating Fourier transform only mode (for musrFT) | |
| PStartupOptions * | fStartupOptions |
| Pointer to startup options from musrfit_startup.xml. | |
| TString | fFileName |
| MSR file name (with path) | |
| TString | fMsrFileDirectoryPath |
| Directory path of the MSR file. | |
| TString | fTitle |
| MSR file title string. | |
| PMsrParamList | fParam |
| List of fit parameters with values, errors, constraints. | |
| PMsrLines | fTheory |
| Theory block lines defining asymmetry/relaxation functions. | |
| PMsrLines | fFunctions |
| User-defined functions block lines. | |
| PMsrGlobalBlock | fGlobal |
| Global block settings (fit type, data format, etc.) | |
| PMsrRunList | fRuns |
| List of RUN blocks with data file specifications. | |
| PMsrLines | fCommands |
| MINUIT commands block lines. | |
| PMsrFourierStructure | fFourier |
| Fourier transform parameters and settings. | |
| PMsrPlotList | fPlots |
| List of PLOT blocks with plotting parameters. | |
| PMsrStatisticStructure | fStatistic |
| Fit statistics (χ², NDF, convergence status) | |
| Int_t | fMsrBlockCounter |
| Counter to track current MSR block during parsing. | |
| std::unique_ptr< PFunctionHandler > | fFuncHandler |
| Handler for parsing and evaluating user-defined functions. | |
| PIntVector | fParamInUse |
| Flags indicating which parameters are actually used in theory/functions. | |
| Bool_t | fCopyStatisticsBlock |
| If true, copy old statistics block (musrt0); if false, write new one (musrfit) | |
| std::stringstream | fLastErrorMsg |
| Stream accumulating error messages during parsing. | |
MSR file parser and manager for the musrfit framework.
PMsrHandler is the central class for managing MSR (Muon Spin Rotation/Relaxation) files used throughout the musrfit suite. It provides comprehensive functionality for:
File Operations:
Data Management:
Validation and Integrity Checking:
MSR File Structure: An MSR file contains the following blocks (in order):
Usage Example:
Definition at line 115 of file PMsrHandler.h.
| PMsrHandler::PMsrHandler | ( | const Char_t * | fileName, |
| PStartupOptions * | startupOptions = 0, | ||
| const Bool_t | fourierOnly = false ) |
Constructor that initializes the MSR handler.
Constructor for PMsrHandler.
| fileName | Path to MSR file to read/write |
| startupOptions | Optional startup configuration (from musrfit_startup.xml) |
| fourierOnly | If true, only parse Fourier-related blocks (for musrFT) |
Initializes all internal data structures and extracts the directory path from the MSR file name. The directory path is used for resolving relative paths in the MSR file (e.g., for data files).
Initialization includes:
| fileName | Path to MSR file (absolute or relative) |
| startupOptions | Optional pointer to startup configuration from musrfit_startup.xml |
| fourierOnly | If true, only parse Fourier-related blocks (used by musrFT tool) |
Definition at line 67 of file PMsrHandler.cpp.
References fCopyStatisticsBlock, fFileName, fFourierOnly, fMsrBlockCounter, fMsrFileDirectoryPath, fStartupOptions, fStatistic, and fTitle.
|
virtual |
Destructor that cleans up all data structures.
Clears all vectors and releases memory:
The unique_ptr member (fFuncHandler) is automatically cleaned up.
Definition at line 115 of file PMsrHandler.cpp.
References fCommands, fFunctions, fParam, fParamInUse, fPlots, fRuns, fStatistic, and fTheory.
|
privatevirtual |
Formats Fourier phase parameter string for display.
Returns the Fourier phase string if the phase is either of type phase parX0 sep ... sep parXn where sep = ',' or phase par(X0, offset, #param)
Definition at line 6988 of file PMsrHandler.cpp.
References fFourier.
Referenced by WriteMsrFile(), and WriteMsrLogFile().
|
privatevirtual |
Validates addrun parameter references.
In case addrun is present check that if addt0's are given there are as many addt0's than addrun's.
return:
Definition at line 6612 of file PMsrHandler.cpp.
References fLastErrorMsg, and fRuns.
Referenced by ReadMsrFile().
|
privatevirtual |
Validates user-defined functions syntax and parameter usage.
Checks if fun entries found in the theory- and run-block are also present in the functions-block.
return:
Definition at line 6472 of file PMsrHandler.cpp.
References fFourierOnly, fFunctions, FilterNumber(), fRuns, fTheory, and MSR_PARAM_FUN_OFFSET.
Referenced by ReadMsrFile().
|
privatevirtual |
Checks histogram grouping consistency across runs.
Checks if histogram grouping makes any sense.
return:
Definition at line 6566 of file PMsrHandler.cpp.
References fRuns.
Referenced by ReadMsrFile().
|
privatevirtual |
Checks for deprecated lifetimecorrection syntax and warns user.
Checks for lifetimecorrection flags in the RUN-blocks and if present, transfer it to the PLOT-blocks. This is needed since originally the lifetimecorrection was (miss)placed in the RUN-blocks rather than in the PLOT-blocks where it most naturally would have been expected.
Definition at line 7056 of file PMsrHandler.cpp.
Referenced by ReadMsrFile().
|
inlinevirtual |
Checks if map and parameter ranges are valid for functions.
| mapSize | Size of map vector |
| paramSize | Number of available parameters |
Definition at line 322 of file PMsrHandler.h.
References fFuncHandler.
|
privatevirtual |
Validates that all map indices are within parameter range.
Checks if map entries found in the theory- or function-block are also present in the run-block.
return:
Definition at line 6362 of file PMsrHandler.cpp.
References fFunctions, FilterNumber(), fRuns, fTheory, and MSR_PARAM_MAP_OFFSET.
Referenced by ReadMsrFile().
|
privatevirtual |
Validates maximum likelihood fit settings.
If log max likelihood is requested, make sure that all run blocks are of single histogram type. If this is not the case, fall back to chisq, since for asymmetry/non-muSR fit, log max likelihood is not defined.
Definition at line 6644 of file PMsrHandler.cpp.
References fGlobal, fLastErrorMsg, fRuns, fStatistic, MSR_FITTYPE_MU_MINUS, and MSR_FITTYPE_SINGLE_HISTO.
Referenced by ReadMsrFile().
|
privatevirtual |
Checks if real FFT requirements are met.
Checks for FOURIER plot REAL, if all necessary parameters are given.
Definition at line 6767 of file PMsrHandler.cpp.
References fFourier, fLastErrorMsg, FOURIER_PLOT_POWER, and fPlots.
Referenced by ReadMsrFile().
|
privatevirtual |
Validates RRF (Rotating Reference Frame) settings.
Make sure that if RRF settings are found in the GLOBAL section, the fit types in the RUN blocks correspond.
Definition at line 6669 of file PMsrHandler.cpp.
References fGlobal, fRuns, MSR_FITTYPE_ASYM_RRF, MSR_FITTYPE_SINGLE_HISTO_RRF, and RRF_FREQ_UNDEF.
Referenced by ReadMsrFile().
|
privatevirtual |
Validates RUN block structure and consistency.
Checks the consistency of each RUN block, i.e. are the necessary parameters set and present, etc.
return:
Definition at line 5985 of file PMsrHandler.cpp.
References fFourierOnly, fGlobal, fParam, fRuns, GetNoOfFuncs(), MSR_PARAM_FUN_OFFSET, PMUSR_UNDEFINED, PRUN_ASYMMETRY, PRUN_ASYMMETRY_BNMR, PRUN_ASYMMETRY_RRF, PRUN_MU_MINUS, PRUN_NON_MUSR, PRUN_SINGLE_HISTO, PRUN_SINGLE_HISTO_RRF, and RRF_UNIT_UNDEF.
Referenced by ReadMsrFile().
|
privatevirtual |
Checks that all parameter names are unique.
Checks if all the fit parameters are unique. If not parX, parY will show the first occurence of equal fit parameter names.
return:
| parX | index of the 1st fit parameter name for which there is a counter part. |
| parY | index of the counter part fit parameter name. |
Definition at line 6333 of file PMsrHandler.cpp.
References fParam.
Referenced by ReadMsrFile().
|
inlinevirtual |
Flags that STATISTIC block should be copied as-is (for musrt0)
Definition at line 282 of file PMsrHandler.h.
References fCopyStatisticsBlock.
|
virtual |
Estimates N0 parameter for single histogram fits.
Uses data amplitude at t=0 to provide initial N0 estimate, improving fit convergence for single histogram fits.
returns if N0 shall be estimated
Definition at line 6847 of file PMsrHandler.cpp.
References fStartupOptions.
|
inlinevirtual |
Evaluates a user-defined function.
| i | Function index |
| map | Parameter mapping vector |
| param | Parameter value vector |
| metaData | Experimental metadata (field, temperature, etc.) |
Definition at line 334 of file PMsrHandler.h.
References fFuncHandler.
|
privatevirtual |
Determines which parameters are used in theory and functions.
Fills the fParamInUse vector. An element of the vector will be 0 if the fit parameter is not used at all, otherwise it will be > 0.
| theory | msr-file THEROY block lines |
| funcs | msr-file FUNCTIONS block lines |
| run | msr-file RUN blocks lines |
Definition at line 5642 of file PMsrHandler.cpp.
References FilterNumber(), fParam, fParamInUse, MSR_PARAM_FUN_OFFSET, MSR_PARAM_MAP_OFFSET, and ParameterInUse().
Referenced by ReadMsrFile().
|
privatevirtual |
Extracts number from string with specific filter pattern.
Used to filter numbers from a string of the structure strX, where X is a number. The filter string is used to define the offset to X. It is used to filter strings like: map1 or fun4. At the moment only the filter strings 'map', 'fun', and 'par' are supported.
return:
| str | input string |
| filter | filter string |
| offset | it is used to offset to found number, e.g. strX -> no = X+offset |
| no | filtered number |
Definition at line 4052 of file PMsrHandler.cpp.
Referenced by CheckFuncs(), CheckMaps(), FillParameterInUse(), HandlePlotEntry(), HandleRunEntry(), and WriteMsrLogFile().
|
inlinevirtual |
|
inlinevirtual |
Gets function index from function number.
| funNo | Function number |
Definition at line 313 of file PMsrHandler.h.
References fFuncHandler.
Referenced by PTheory::PTheory(), and WriteMsrLogFile().
|
inlinevirtual |
Gets function number by index.
| idx | Function index (0-based) |
Definition at line 305 of file PMsrHandler.h.
References fFuncHandler.
|
virtual |
Generates a grouping string for histogram display.
| runNo | Run block number |
| detector | Detector identifier ("forward" or "backward") |
| groupingStr | Output grouping string |
returns the forward/backward grouping string.
| runNo | msr-file run block number |
| detector | tag telling which set to be used. Possible are: 'forward' and 'backward' |
| groupingStr | compressed grouping information. |
Definition at line 6821 of file PMsrHandler.cpp.
References fRuns, and MakeDetectorGroupingString().
|
inlinevirtual |
Returns the last error message as a string
Definition at line 374 of file PMsrHandler.h.
References fLastErrorMsg.
|
inlinevirtual |
Returns pointer to COMMANDS block lines.
Definition at line 185 of file PMsrHandler.h.
References fCommands.
Referenced by PFitter::PFitter().
|
inlinevirtual |
Returns pointer to MSR file directory path.
Definition at line 194 of file PMsrHandler.h.
References fMsrFileDirectoryPath.
|
inlinevirtual |
Returns pointer to FOURIER block settings.
Definition at line 187 of file PMsrHandler.h.
References fFourier.
|
inlinevirtual |
Returns pointer to FUNCTIONS block lines.
Definition at line 179 of file PMsrHandler.h.
References fFunctions.
|
inlinevirtual |
Returns pointer to GLOBAL block settings.
Definition at line 181 of file PMsrHandler.h.
References fGlobal.
Referenced by PRunSingleHistoRRF::PRunSingleHistoRRF().
|
inlinevirtual |
Returns pointer to fit parameter list.
Definition at line 175 of file PMsrHandler.h.
References fParam.
Referenced by PFitter::PFitter(), PMsr2Data::PrepareGlobalInputFile(), PRunAsymmetry::PRunAsymmetry(), PRunAsymmetryBNMR::PRunAsymmetryBNMR(), and PRunAsymmetryRRF::PRunAsymmetryRRF().
|
inlinevirtual |
Returns pointer to list of PLOT blocks.
Definition at line 189 of file PMsrHandler.h.
References fPlots.
|
inlinevirtual |
Returns pointer to list of RUN blocks.
Definition at line 183 of file PMsrHandler.h.
References fRuns.
Referenced by PTheory::PTheory().
|
inlinevirtual |
Returns pointer to STATISTIC block.
Definition at line 191 of file PMsrHandler.h.
References fStatistic.
|
inlinevirtual |
Returns pointer to THEORY block lines.
Definition at line 177 of file PMsrHandler.h.
References fTheory.
Referenced by PTheory::PTheory().
|
inlinevirtual |
Returns pointer to MSR file title string.
Definition at line 173 of file PMsrHandler.h.
References fTitle.
|
virtual |
Gets the number of fit parameters used in a specific theory line.
| idx | Theory line index |
Calculate the number of fit parameters.
| idx | run block index |
Definition at line 5445 of file PMsrHandler.cpp.
References fFunctions, fParam, fRuns, fTheory, MSR_PARAM_FUN_OFFSET, and status.
|
inlinevirtual |
Returns the number of user-defined functions in FUNCTIONS block.
Definition at line 297 of file PMsrHandler.h.
References fFuncHandler.
Referenced by CheckRunBlockIntegrity().
|
inlinevirtual |
Returns the number of fit parameters in FITPARAMETER block.
Definition at line 200 of file PMsrHandler.h.
References fParam.
|
inlinevirtual |
Returns the number of RUN blocks in MSR file.
Definition at line 197 of file PMsrHandler.h.
References fRuns.
|
privatevirtual |
Parses COMMANDS block entries.
Just copies the COMMAND block lines.
return:
| lines | is a list of lines containing the command block |
Definition at line 4091 of file PMsrHandler.cpp.
References fCommands, and fFourierOnly.
Referenced by ReadMsrFile().
|
privatevirtual |
Parses FITPARAMETER block entries.
The routine analyze a parameter line and, if the possible parameter list is OK (what this means see below), it adds the parameter to the parameter list.
Possible cases:
return:
| lines | is a list of lines containing the fitparameter block |
Definition at line 2840 of file PMsrHandler.cpp.
References fLastErrorMsg, PMsrParamStructure::fLowerBoundary, PMsrParamStructure::fLowerBoundaryPresent, PMsrParamStructure::fName, PMsrParamStructure::fNo, PMsrParamStructure::fNoOfParams, fParam, PMsrParamStructure::fPosError, PMsrParamStructure::fPosErrorPresent, PMsrParamStructure::fStep, PMsrParamStructure::fUpperBoundary, PMsrParamStructure::fUpperBoundaryPresent, and PMsrParamStructure::fValue.
Referenced by ReadMsrFile().
|
privatevirtual |
Parses FOURIER block entries.
Parses the Fourier block of a msr-file.
return:
| lines | is a list of lines containing the fourier parameter block |
Definition at line 4476 of file PMsrHandler.cpp.
References PMsrFourierStructure::fApodization, PMsrFourierStructure::fDCCorrected, fFourier, PMsrFourierStructure::fFourierBlockPresent, PMsrFourierStructure::fFourierPower, fLastErrorMsg, FOURIER_APOD_MEDIUM, FOURIER_APOD_NONE, FOURIER_APOD_STRONG, FOURIER_APOD_WEAK, FOURIER_PLOT_IMAG, FOURIER_PLOT_PHASE, FOURIER_PLOT_PHASE_OPT_REAL, FOURIER_PLOT_POWER, FOURIER_PLOT_REAL, FOURIER_PLOT_REAL_AND_IMAG, FOURIER_UNIT_CYCLES, FOURIER_UNIT_FREQ, FOURIER_UNIT_GAUSS, FOURIER_UNIT_TESLA, fParam, PMsrFourierStructure::fPhase, PMsrFourierStructure::fPhaseParamNo, PMsrFourierStructure::fPhaseRef, PMsrFourierStructure::fPlotRange, PMsrFourierStructure::fPlotTag, PMsrFourierStructure::fRangeForPhaseCorrection, PMsrFourierStructure::fUnits, InitFourierParameterStructure(), ParseFourierPhaseParIterVector(), ParseFourierPhaseParVector(), ParseFourierPhaseValueVector(), and RemoveComment().
Referenced by ReadMsrFile().
|
privatevirtual |
Parses FUNCTIONS block entries.
Parses the FUNCTIONS block of the msr-file.
return:
| lines | is a list of lines containing the functions block |
Definition at line 3079 of file PMsrHandler.cpp.
References fFourierOnly, fFuncHandler, and fFunctions.
Referenced by ReadMsrFile().
|
privatevirtual |
Parses GLOBAL block entries.
Parses the GLOBAL block of the msr-file.
return:
| lines | is a list of lines containing the run blocks |
Definition at line 3117 of file PMsrHandler.cpp.
References fGlobal, fLastErrorMsg, PMsrGlobalBlock::GetRRFFreq(), MSR_FITTYPE_ASYM, MSR_FITTYPE_ASYM_RRF, MSR_FITTYPE_BNMR, MSR_FITTYPE_MU_MINUS, MSR_FITTYPE_NON_MUSR, MSR_FITTYPE_SINGLE_HISTO, MSR_FITTYPE_SINGLE_HISTO_RRF, RRF_FREQ_UNDEF, PMsrGlobalBlock::SetAddT0Bin(), PMsrGlobalBlock::SetDataRange(), PMsrGlobalBlock::SetDeadTimeCorrection(), PMsrGlobalBlock::SetFitRange(), PMsrGlobalBlock::SetFitRangeInBins(), PMsrGlobalBlock::SetFitRangeOffset(), PMsrGlobalBlock::SetFitType(), PMsrGlobalBlock::SetGlobalPresent(), PMsrGlobalBlock::SetPacking(), PMsrGlobalBlock::SetRRFFreq(), PMsrGlobalBlock::SetRRFPacking(), PMsrGlobalBlock::SetRRFPhase(), and PMsrGlobalBlock::SetT0Bin().
Referenced by ReadMsrFile().
|
privatevirtual |
Parses PLOT block entries.
Parses the PLOT block of a msr-file.
return:
| lines | is a list of lines containing the plot block |
Definition at line 4798 of file PMsrHandler.cpp.
References FilterNumber(), fLastErrorMsg, PMsrPlotStructure::fLifeTimeCorrection, PMsrPlotStructure::fLogX, PMsrPlotStructure::fLogY, fParam, fPlots, PMsrPlotStructure::fPlotType, PMsrPlotStructure::fRRFFreq, PMsrPlotStructure::fRRFPacking, PMsrPlotStructure::fRRFPhase, PMsrPlotStructure::fRRFPhaseParamNo, PMsrPlotStructure::fRRFUnit, fRuns, PMsrPlotStructure::fRuns, PMsrPlotStructure::fTmax, PMsrPlotStructure::fTmin, PMsrPlotStructure::fUseFitRanges, PMsrPlotStructure::fViewPacking, PMsrPlotStructure::fYmax, PMsrPlotStructure::fYmin, MSR_PLOT_ASYM, MSR_PLOT_ASYM_RRF, MSR_PLOT_BNMR, MSR_PLOT_MU_MINUS, MSR_PLOT_NON_MUSR, MSR_PLOT_SINGLE_HISTO, MSR_PLOT_SINGLE_HISTO_RRF, RRF_UNIT_G, RRF_UNIT_kHz, RRF_UNIT_Mcs, RRF_UNIT_MHz, and RRF_UNIT_T.
Referenced by ReadMsrFile().
|
privatevirtual |
Parses RUN block entries.
Parses the RUN blocks of the msr-file.
return:
| lines | is a list of lines containing the run blocks |
Definition at line 3397 of file PMsrHandler.cpp.
References PMsrRunBlock::CleanUp(), fFourierOnly, FilterNumber(), fLastErrorMsg, fParam, fRuns, PMsrRunBlock::GetMap(), MSR_FITTYPE_ASYM, MSR_FITTYPE_ASYM_RRF, MSR_FITTYPE_BNMR, MSR_FITTYPE_MU_MINUS, MSR_FITTYPE_NON_MUSR, MSR_FITTYPE_SINGLE_HISTO, MSR_FITTYPE_SINGLE_HISTO_RRF, MSR_PARAM_FUN_OFFSET, PMsrRunBlock::SetAddT0Bin(), PMsrRunBlock::SetAlphaParamNo(), PMsrRunBlock::SetBackwardHistoNo(), PMsrRunBlock::SetBeamline(), PMsrRunBlock::SetBetaParamNo(), PMsrRunBlock::SetBkgFitParamNo(), PMsrRunBlock::SetBkgFix(), PMsrRunBlock::SetBkgRange(), PMsrRunBlock::SetDataRange(), PMsrRunBlock::SetDeadTimeCorrection(), PMsrRunBlock::SetFileFormat(), PMsrRunBlock::SetFitRange(), PMsrRunBlock::SetFitRangeInBins(), PMsrRunBlock::SetFitRangeOffset(), PMsrRunBlock::SetFitType(), PMsrRunBlock::SetForwardHistoNo(), PMsrRunBlock::SetInstitute(), PMsrRunBlock::SetLifetimeCorrection(), PMsrRunBlock::SetLifetimeParamNo(), PMsrRunBlock::SetMap(), PMsrRunBlock::SetNormParamNo(), PMsrRunBlock::SetPacking(), PMsrRunBlock::SetRunName(), PMsrRunBlock::SetT0Bin(), PMsrRunBlock::SetXDataIndex(), PMsrRunBlock::SetXDataLabel(), PMsrRunBlock::SetYDataIndex(), and PMsrRunBlock::SetYDataLabel().
Referenced by ReadMsrFile().
|
privatevirtual |
Parses STATISTIC block entries.
Handles the STATISTIC block of a msr-file.
return:
| lines | is a list of lines containing the statistic block |
Definition at line 5339 of file PMsrHandler.cpp.
References fFourierOnly, fStatistic, and status.
Referenced by ReadMsrFile().
|
privatevirtual |
Parses THEORY block entries.
Just stores the THEORY block lines.
return:
| lines | is a list of lines containing the theory block |
Definition at line 3055 of file PMsrHandler.cpp.
References fFourierOnly, and fTheory.
Referenced by ReadMsrFile().
|
privatevirtual |
Initializes Fourier parameter structure with default values.
Initializes the Fourier parameter structure.
| fourier | fourier parameters |
Definition at line 4120 of file PMsrHandler.cpp.
References PMsrFourierStructure::fApodization, PMsrFourierStructure::fDCCorrected, PMsrFourierStructure::fFourierBlockPresent, PMsrFourierStructure::fFourierPower, FOURIER_APOD_NOT_GIVEN, FOURIER_PLOT_NOT_GIVEN, FOURIER_UNIT_NOT_GIVEN, PMsrFourierStructure::fPhase, PMsrFourierStructure::fPhaseParamNo, PMsrFourierStructure::fPhaseRef, PMsrFourierStructure::fPlotRange, PMsrFourierStructure::fPlotTag, PMsrFourierStructure::fRangeForPhaseCorrection, and PMsrFourierStructure::fUnits.
Referenced by HandleFourierEntry(), and ReadMsrFile().
|
privatevirtual |
Finds position of last significant digit in a double value.
Gets the last significant digit down to precLimit.
| dval | value for which the last signigicant digit shall be found |
| precLimit | precision limit |
return: last significant digit down to precLimit
Definition at line 6899 of file PMsrHandler.cpp.
Referenced by WriteMsrFile(), and WriteMsrLogFile().
|
privatevirtual |
Creates detector grouping string from integer vector.
encodes the detector grouping vector.
| str | 'forward' or 'backward' |
| group | detector grouping vector to be encoded |
| result | encoded detector grouping string |
| includeDetector | if true, the detector information is included |
Definition at line 6941 of file PMsrHandler.cpp.
Referenced by GetGroupingString(), and WriteMsrLogFile().
|
privatevirtual |
Calculates precision needed for formatting a double value.
Calculates the needed precision of Double_t values for WriteMsrLogFile and WriteMsrFile of the fit range. If a precision of > precLimit decimal places is needed, a warning is placed and a value of precLimit is returned.
| dval | value for which the precision has to be estimated |
| precLimit | precision limit |
return: needed precision
Definition at line 6867 of file PMsrHandler.cpp.
Referenced by WriteMsrLogFile().
|
virtual |
Checks if a parameter is used in theory or functions.
| paramNo | Parameter number (1-based as in MSR file) |
Needed for the following purpose: if minuit is minimizing, it varies all the parameters of the parameter list (if not fixed), even if a particular parameter is NOT used at all. This is stupid! Hence one has to check if the parameter is used at all and if not, it has to be fixed.
return:
| paramNo | parameter number |
Definition at line 2807 of file PMsrHandler.cpp.
References fParam, and fParamInUse.
Referenced by FillParameterInUse().
|
privatevirtual |
Parses Fourier phase parameter iteration vector.
examines if str has the form 'phase par(X0, offset, #params)' or 'phase parR(X0, offset, #params)'. If this form is found, fill in parX0 ... parXN to fourier.fPhaseParamNo, and in case of 'parR' also set the fourier.fPhaseRef accordingly.
| fourier | msr-file Fourier structure |
| str | string to be analyzed |
| error | flag needed to propagate a fatal error |
Definition at line 4346 of file PMsrHandler.cpp.
References fLastErrorMsg, PMsrFourierStructure::fPhaseParamNo, and PMsrFourierStructure::fPhaseRef.
Referenced by HandleFourierEntry().
|
privatevirtual |
Parses Fourier phase parameter vector.
examines if str has the form 'phase parX0 [sep parX1 ... sep parXN]'. Also allowed is that instead of parXn only one of the parameters could have the form parRn which markes a reference phase for relative phase fittings. If this form is found, fill in parX0 ... parXN to fourier.fPhaseParamNo, and in case a parR is present, set the fourier.fPhaseRef accordingly.
| fourier | msr-file Fourier structure |
| str | string to be analyzed |
| error | flag needed to propagate a fatal error |
Definition at line 4237 of file PMsrHandler.cpp.
References fLastErrorMsg, PMsrFourierStructure::fPhaseParamNo, and PMsrFourierStructure::fPhaseRef.
Referenced by HandleFourierEntry().
|
privatevirtual |
Parses Fourier phase value vector.
examines if str has the form 'phase val0 [sep val1 ... sep valN]'. If this form is found, fill in val0 ... valN to fFourier.fPhase vector.
| fourier | msr-file Fourier structure |
| str | string to be analyzed |
| error | flag needed to propagate a fatal error |
Definition at line 4172 of file PMsrHandler.cpp.
References fLastErrorMsg, and PMsrFourierStructure::fPhase.
Referenced by HandleFourierEntry().
|
virtual |
Reads and parses the MSR file.
Reads and parses the MSR file.
Performs comprehensive parsing of all MSR file blocks including TITLE, FITPARAMETER, THEORY, FUNCTIONS, GLOBAL, RUN, COMMANDS, FOURIER, PLOT, and STATISTIC blocks. Validates consistency and reports detailed error messages on failure.
Performs comprehensive parsing of all MSR file blocks in the following order:
After parsing, performs extensive validation:
Error Handling:
Definition at line 174 of file PMsrHandler.cpp.
References CheckAddRunParameters(), CheckFuncs(), CheckHistoGrouping(), CheckLegacyLifetimecorrection(), CheckMaps(), CheckMaxLikelihood(), CheckRealFFT(), CheckRRFSettings(), CheckRunBlockIntegrity(), CheckUniquenessOfParamNames(), fCommands, fFileName, fFourier, fFourierOnly, FillParameterInUse(), fLastErrorMsg, PMsrLineStructure::fLine, PMsrLineStructure::fLineNo, fMsrBlockCounter, fParam, fStatistic, fTitle, HandleCommandsEntry(), HandleFitParameterEntry(), HandleFourierEntry(), HandleFunctionsEntry(), HandleGlobalEntry(), HandlePlotEntry(), HandleRunEntry(), HandleStatisticEntry(), HandleTheoryEntry(), InitFourierParameterStructure(), MSR_TAG_COMMANDS, MSR_TAG_FITPARAMETER, MSR_TAG_FOURIER, MSR_TAG_FUNCTIONS, MSR_TAG_GLOBAL, MSR_TAG_PLOT, MSR_TAG_RUN, MSR_TAG_STATISTIC, MSR_TAG_THEORY, PMUSR_MSR_FILE_NOT_FOUND, PMUSR_MSR_SYNTAX_ERROR, and PMUSR_SUCCESS.
Referenced by PMsr2Data::GetSingleRunMsrFile().
|
privatevirtual |
Removes comments from MSR file line.
Removes a potentially present comment from str and returns the truncated string in truncStr. A comment starts with '#'
| str | original string which might contain a comment |
| truncStr | string from which the comment has been removed |
Definition at line 4147 of file PMsrHandler.cpp.
Referenced by HandleFourierEntry().
|
virtual |
Sets a time-zero bin for an addrun histogram.
| runNo | Run block number (0-based) |
| addRunIdx | Index of addrun entry |
| histoIdx | Histogram index within addrun |
| bin | Time-zero bin value |
Sets a t0 value for an addrun entry.
| runNo | msr-file run number |
| addRunIdx | msr-file addrun index, e.g. if 2 addruns are present addRunIdx can take the values 0 or 1. |
| histoIdx | msr-file histogram index for an addrun. |
| bin | t0 bin value. |
Definition at line 2721 of file PMsrHandler.cpp.
References fLastErrorMsg, and fRuns.
|
virtual |
Sets a background range bin entry for a specific run.
| runNo | Run block number (0-based) |
| idx | Background range index (0=start, 1=end, etc.) |
| bin | Background range bin value |
Sets the background range entries for a given runNo and a given histogram index idx.
| runNo | msr-file run number |
| idx | 0=start bin index, 1=end bin index |
| bin | background range bin value |
Definition at line 2779 of file PMsrHandler.cpp.
References fLastErrorMsg, and fRuns.
|
virtual |
Sets a data range bin entry for a specific run.
| runNo | Run block number (0-based) |
| idx | Data range index (0=start, 1=end, etc.) |
| bin | Data range bin value |
Sets the data range entries for a given runNo and a given histogram index idx.
| runNo | msr-file run number |
| idx | 0=start bin index, 1=end bin index |
| bin | data range bin value |
Definition at line 2756 of file PMsrHandler.cpp.
References fLastErrorMsg, and fRuns.
|
virtual |
Sets the positive error value for a parameter (asymmetric errors).
| i | Parameter index (0-based) |
| value | Positive error value |
Sets the fit parameter positive error value at positon idx.
return:
| idx | index fo the fit parameter positive error value |
| value | fit parameter positive error value to be set. |
Definition at line 2665 of file PMsrHandler.cpp.
References fLastErrorMsg, and fParam.
|
virtual |
Sets whether positive error is present for a parameter.
| i | Parameter index (0-based) |
| value | True if positive error is defined |
Sets the flag whether the fit parameter positive error value is persent. This at positon idx.
return:
| idx | index fo the fit parameter positive error value |
| value | fit parameter positive error value present. |
Definition at line 2637 of file PMsrHandler.cpp.
References fLastErrorMsg, and fParam.
|
virtual |
Sets the step size (or error) of a fit parameter.
| i | Parameter index (0-based) |
| value | New step/error value |
Sets the fit parameter step value (initial step size for minuit2) at positon idx. After a successful fit, the negative error will be writen.
return:
| idx | index fo the fit parameter step value |
| value | fit parameter step value to be set. |
Definition at line 2609 of file PMsrHandler.cpp.
References fLastErrorMsg, and fParam.
|
virtual |
Sets the value of a fit parameter.
| i | Parameter index (0-based) |
| value | New parameter value |
Sets the fit parameter value at position idx.
return:
| idx | index of the fit parameter value. |
| value | fit parameter value to be set. |
Definition at line 2580 of file PMsrHandler.cpp.
References fLastErrorMsg, and fParam.
|
inlinevirtual |
Sets whether fit converged in STATISTIC block
| converged | True if fit converged successfully |
Definition at line 286 of file PMsrHandler.h.
References fStatistic.
|
inlinevirtual |
Sets the minimum χ² (or max likelihood) in STATISTIC block
| min | Minimum value |
Definition at line 290 of file PMsrHandler.h.
References fStatistic.
|
inlinevirtual |
Sets the number of degrees of freedom in STATISTIC block
| ndf | Degrees of freedom |
Definition at line 294 of file PMsrHandler.h.
References fStatistic.
|
virtual |
Sets a time-zero bin entry for a specific run.
| runNo | Run block number (0-based) |
| idx | Histogram index within t0 list |
| bin | Time-zero bin value |
Sets the t0 entries for a given runNo and a given histogram index idx.
| runNo | msr-file run number |
| idx | msr-file histogram index |
| bin | t0 bin value |
Definition at line 2691 of file PMsrHandler.cpp.
References fLastErrorMsg, and fRuns.
|
inlinevirtual |
Sets the MSR file title
| title | New title string |
Definition at line 206 of file PMsrHandler.h.
References fTitle.
|
virtual |
Writes an MSR file from internal data structures.
Writes MSR file with updated parameters and results.
Writes a complete MSR file, optionally preserving user comments from specific blocks. Typically called after fitting to save fitted parameters and statistics.
| filename | Output MSR file path |
| commentsPAR | Optional comments for FITPARAMETER block (line number → comment) |
| commentsTHE | Optional comments for THEORY block |
| commentsFUN | Optional comments for FUNCTIONS block |
| commentsRUN | Optional comments for RUN block |
Creates a complete MSR file with all blocks, typically called after fitting to save updated parameter values, errors, and fit statistics. The file includes properly formatted blocks in the standard MSR file order.
MSR File Structure Written:
Comment Preservation: The comment maps allow preserving user comments from specific MSR blocks. Comments are inserted before the corresponding line based on the map key (line number). This is useful when updating MSR files while maintaining documentation.
Formatting:
| filename | Output MSR file path |
| commentsPAR | Optional map of line number → comment for FITPARAMETER block |
| commentsTHE | Optional map of line number → comment for THEORY block |
| commentsFUN | Optional map of line number → comment for FUNCTIONS block |
| commentsRUN | Optional map of line number → comment for RUN blocks |
Definition at line 1695 of file PMsrHandler.cpp.
References BeautifyFourierPhaseParameterString(), fCommands, fFourier, fFunctions, fGlobal, FOURIER_APOD_MEDIUM, FOURIER_APOD_NONE, FOURIER_APOD_STRONG, FOURIER_APOD_WEAK, FOURIER_PLOT_IMAG, FOURIER_PLOT_PHASE, FOURIER_PLOT_PHASE_OPT_REAL, FOURIER_PLOT_POWER, FOURIER_PLOT_REAL, FOURIER_PLOT_REAL_AND_IMAG, FOURIER_UNIT_CYCLES, FOURIER_UNIT_FREQ, FOURIER_UNIT_GAUSS, FOURIER_UNIT_TESLA, fParam, fPlots, fRuns, fStatistic, fTheory, fTitle, LastSignificant(), MSR_FITTYPE_ASYM, MSR_FITTYPE_ASYM_RRF, MSR_FITTYPE_BNMR, MSR_FITTYPE_MU_MINUS, MSR_FITTYPE_NON_MUSR, MSR_FITTYPE_SINGLE_HISTO, MSR_FITTYPE_SINGLE_HISTO_RRF, MSR_PARAM_FUN_OFFSET, MSR_PLOT_ASYM, MSR_PLOT_ASYM_RRF, MSR_PLOT_BNMR, MSR_PLOT_MU_MINUS, MSR_PLOT_NON_MUSR, MSR_PLOT_SINGLE_HISTO, MSR_PLOT_SINGLE_HISTO_RRF, PMUSR_MSR_FILE_WRITE_ERROR, PMUSR_SUCCESS, PMUSR_UNDEFINED, RRF_UNIT_G, RRF_UNIT_kHz, RRF_UNIT_Mcs, RRF_UNIT_MHz, and RRF_UNIT_T.
|
virtual |
Writes an MSR log file (.mlog) with parsed MSR content.
Writes a log file with MSR file content and parsing information.
Creates a .mlog file containing the parsed MSR structure, useful for debugging and verifying parameter interpretation.
| messages | If true, includes informational messages in log |
Creates a log file with the same base name as the MSR file but with .mlog extension. The log file contains the parsed and formatted MSR structure, which is useful for:
The log file format mirrors the MSR file structure but with:
Processing includes:
| messages | If true, includes additional informational messages about the statistics block. Set to false when called from musrt0 to suppress messages. |
Definition at line 443 of file PMsrHandler.cpp.
References BeautifyFourierPhaseParameterString(), fFileName, fFourier, fFuncHandler, fGlobal, FilterNumber(), FOURIER_APOD_MEDIUM, FOURIER_APOD_NONE, FOURIER_APOD_STRONG, FOURIER_APOD_WEAK, FOURIER_PLOT_IMAG, FOURIER_PLOT_PHASE, FOURIER_PLOT_PHASE_OPT_REAL, FOURIER_PLOT_POWER, FOURIER_PLOT_REAL, FOURIER_PLOT_REAL_AND_IMAG, FOURIER_UNIT_CYCLES, FOURIER_UNIT_FREQ, FOURIER_UNIT_GAUSS, FOURIER_UNIT_TESLA, fParam, fPlots, fRuns, fStartupOptions, fStatistic, fTheory, fTitle, GetFuncIndex(), LastSignificant(), MakeDetectorGroupingString(), MSR_FITTYPE_ASYM, MSR_FITTYPE_ASYM_RRF, MSR_FITTYPE_BNMR, MSR_FITTYPE_MU_MINUS, MSR_FITTYPE_NON_MUSR, MSR_FITTYPE_SINGLE_HISTO, MSR_FITTYPE_SINGLE_HISTO_RRF, MSR_PARAM_FUN_OFFSET, MSR_PLOT_ASYM, MSR_PLOT_ASYM_RRF, MSR_PLOT_BNMR, MSR_PLOT_MU_MINUS, MSR_PLOT_NON_MUSR, MSR_PLOT_SINGLE_HISTO, MSR_PLOT_SINGLE_HISTO_RRF, MSR_TAG_COMMANDS, MSR_TAG_FITPARAMETER, MSR_TAG_FOURIER, MSR_TAG_FUNCTIONS, MSR_TAG_GLOBAL, MSR_TAG_PLOT, MSR_TAG_RUN, MSR_TAG_STATISTIC, MSR_TAG_THEORY, MSR_TAG_TITLE, NeededPrecision(), PMUSR_MSR_LOG_FILE_WRITE_ERROR, PMUSR_MSR_SYNTAX_ERROR, PMUSR_SUCCESS, and PMUSR_UNDEFINED.
|
private |
MINUIT commands block lines.
Definition at line 388 of file PMsrHandler.h.
Referenced by GetMsrCommands(), HandleCommandsEntry(), ReadMsrFile(), WriteMsrFile(), and ~PMsrHandler().
|
private |
If true, copy old statistics block (musrt0); if false, write new one (musrfit)
Definition at line 399 of file PMsrHandler.h.
Referenced by CopyMsrStatisticBlock(), and PMsrHandler().
|
private |
MSR file name (with path)
Definition at line 380 of file PMsrHandler.h.
Referenced by GetFileName(), PMsrHandler(), ReadMsrFile(), and WriteMsrLogFile().
|
private |
Fourier transform parameters and settings.
Definition at line 389 of file PMsrHandler.h.
Referenced by BeautifyFourierPhaseParameterString(), CheckRealFFT(), GetMsrFourierList(), HandleFourierEntry(), ReadMsrFile(), WriteMsrFile(), and WriteMsrLogFile().
|
private |
Flag indicating Fourier transform only mode (for musrFT)
Definition at line 377 of file PMsrHandler.h.
Referenced by CheckFuncs(), CheckRunBlockIntegrity(), HandleCommandsEntry(), HandleFunctionsEntry(), HandleRunEntry(), HandleStatisticEntry(), HandleTheoryEntry(), PMsrHandler(), and ReadMsrFile().
|
private |
Handler for parsing and evaluating user-defined functions.
Definition at line 395 of file PMsrHandler.h.
Referenced by CheckMapAndParamRange(), EvalFunc(), GetFuncIndex(), GetFuncNo(), GetNoOfFuncs(), HandleFunctionsEntry(), and WriteMsrLogFile().
|
private |
User-defined functions block lines.
Definition at line 385 of file PMsrHandler.h.
Referenced by CheckFuncs(), CheckMaps(), GetMsrFunctions(), GetNoOfFitParameters(), HandleFunctionsEntry(), WriteMsrFile(), and ~PMsrHandler().
|
private |
Global block settings (fit type, data format, etc.)
Definition at line 386 of file PMsrHandler.h.
Referenced by CheckMaxLikelihood(), CheckRRFSettings(), CheckRunBlockIntegrity(), GetMsrGlobal(), HandleGlobalEntry(), WriteMsrFile(), and WriteMsrLogFile().
|
private |
Stream accumulating error messages during parsing.
Definition at line 401 of file PMsrHandler.h.
Referenced by CheckAddRunParameters(), CheckMaxLikelihood(), CheckRealFFT(), GetLastErrorMsg(), HandleFitParameterEntry(), HandleFourierEntry(), HandleGlobalEntry(), HandlePlotEntry(), HandleRunEntry(), ParseFourierPhaseParIterVector(), ParseFourierPhaseParVector(), ParseFourierPhaseValueVector(), ReadMsrFile(), SetMsrAddT0Entry(), SetMsrBkgRangeEntry(), SetMsrDataRangeEntry(), SetMsrParamPosError(), SetMsrParamPosErrorPresent(), SetMsrParamStep(), SetMsrParamValue(), and SetMsrT0Entry().
|
private |
Counter to track current MSR block during parsing.
Definition at line 393 of file PMsrHandler.h.
Referenced by PMsrHandler(), and ReadMsrFile().
|
private |
Directory path of the MSR file.
Definition at line 381 of file PMsrHandler.h.
Referenced by GetMsrFileDirectoryPath(), and PMsrHandler().
|
private |
List of fit parameters with values, errors, constraints.
Definition at line 383 of file PMsrHandler.h.
Referenced by CheckRunBlockIntegrity(), CheckUniquenessOfParamNames(), FillParameterInUse(), GetMsrParamList(), GetNoOfFitParameters(), GetNoOfParams(), HandleFitParameterEntry(), HandleFourierEntry(), HandlePlotEntry(), HandleRunEntry(), ParameterInUse(), ReadMsrFile(), SetMsrParamPosError(), SetMsrParamPosErrorPresent(), SetMsrParamStep(), SetMsrParamValue(), WriteMsrFile(), WriteMsrLogFile(), and ~PMsrHandler().
|
private |
Flags indicating which parameters are actually used in theory/functions.
Definition at line 397 of file PMsrHandler.h.
Referenced by FillParameterInUse(), ParameterInUse(), and ~PMsrHandler().
|
private |
List of PLOT blocks with plotting parameters.
Definition at line 390 of file PMsrHandler.h.
Referenced by CheckLegacyLifetimecorrection(), CheckRealFFT(), GetMsrPlotList(), HandlePlotEntry(), WriteMsrFile(), WriteMsrLogFile(), and ~PMsrHandler().
|
private |
List of RUN blocks with data file specifications.
Definition at line 387 of file PMsrHandler.h.
Referenced by CheckAddRunParameters(), CheckFuncs(), CheckHistoGrouping(), CheckLegacyLifetimecorrection(), CheckMaps(), CheckMaxLikelihood(), CheckRRFSettings(), CheckRunBlockIntegrity(), GetGroupingString(), GetMsrRunList(), GetNoOfFitParameters(), GetNoOfRuns(), HandlePlotEntry(), HandleRunEntry(), SetMsrAddT0Entry(), SetMsrBkgRangeEntry(), SetMsrDataRangeEntry(), SetMsrT0Entry(), WriteMsrFile(), WriteMsrLogFile(), and ~PMsrHandler().
|
private |
Pointer to startup options from musrfit_startup.xml.
Definition at line 378 of file PMsrHandler.h.
Referenced by EstimateN0(), PMsrHandler(), and WriteMsrLogFile().
|
private |
Fit statistics (χ², NDF, convergence status)
Definition at line 391 of file PMsrHandler.h.
Referenced by CheckMaxLikelihood(), GetMsrStatistic(), HandleStatisticEntry(), PMsrHandler(), ReadMsrFile(), SetMsrStatisticConverged(), SetMsrStatisticMin(), SetMsrStatisticNdf(), WriteMsrFile(), WriteMsrLogFile(), and ~PMsrHandler().
|
private |
Theory block lines defining asymmetry/relaxation functions.
Definition at line 384 of file PMsrHandler.h.
Referenced by CheckFuncs(), CheckMaps(), GetMsrTheory(), GetNoOfFitParameters(), HandleTheoryEntry(), WriteMsrFile(), WriteMsrLogFile(), and ~PMsrHandler().
|
private |
MSR file title string.
Definition at line 382 of file PMsrHandler.h.
Referenced by GetMsrTitle(), PMsrHandler(), ReadMsrFile(), SetMsrTitle(), WriteMsrFile(), and WriteMsrLogFile().