musrfit  1.9.2
PMusr.h File Reference
#include <vector>
#include <map>
#include <TString.h>
#include "fftw3.h"
Include dependency graph for PMusr.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  PMetaData
 
class  PRunData
 
class  PNonMusrRawRunData
 
class  PRawRunDataSet
 
class  PRawRunDataVector
 
class  PRawRunData
 
struct  PMsrLineStructure
 
struct  PMsrParamStructure
 
class  PMsrGlobalBlock
 
class  PMsrRunBlock
 
struct  PMsrFourierStructure
 
struct  PMsrPlotStructure
 
struct  PMsrStatisticStructure
 
struct  PAny2ManyInfo
 
struct  PStartupOptions
 
class  PStringNumberList
 
struct  PRunNameTemplate
 

Macros

#define PMUSR_SUCCESS   0
 
#define PMUSR_SYNTAX_REQUEST   -1
 
#define PMUSR_WRONG_STARTUP_SYNTAX   -2
 
#define PMUSR_MSR_FILE_NOT_FOUND   -3
 
#define PMUSR_MSR_ALLOCATION_ERROR   -4
 
#define PMUSR_MSR_SYNTAX_ERROR   -5
 
#define PMUSR_TOKENIZE_ERROR   -6
 
#define PMUSR_MSR_LOG_FILE_WRITE_ERROR   -7
 
#define PMUSR_MSR_FILE_WRITE_ERROR   -8
 
#define PMUSR_DATA_FILE_READ_ERROR   -9
 
#define PMUSR_MSR_RUN_ERROR   -10
 
#define PRUN_SINGLE_HISTO   0
 
#define PRUN_SINGLE_HISTO_RRF   1
 
#define PRUN_ASYMMETRY   2
 
#define PRUN_ASYMMETRY_RRF   3
 
#define PRUN_MU_MINUS   4
 
#define PRUN_ASYMMETRY_BNMR   5
 
#define PRUN_NON_MUSR   8
 
#define PMUON_LIFETIME   2.1969811
 
#define GAMMA_BAR_MUON   1.355388094e-2
 
#define ACCEL_PERIOD_PSI   0.01975
 
#define ACCEL_PERIOD_TRIUMF   0.04337
 
#define ACCEL_PERIOD_RAL   0.0
 
#define POST_PILEUP_HISTO_OFFSET   20
 
#define PMUSR_UNDEFINED   -9.9e99
 
#define MSR_TAG_TITLE   0
 
#define MSR_TAG_FITPARAMETER   1
 
#define MSR_TAG_THEORY   2
 
#define MSR_TAG_FUNCTIONS   3
 
#define MSR_TAG_GLOBAL   4
 
#define MSR_TAG_RUN   5
 
#define MSR_TAG_COMMANDS   6
 
#define MSR_TAG_FOURIER   7
 
#define MSR_TAG_PLOT   8
 
#define MSR_TAG_STATISTIC   9
 
#define MSR_FITTYPE_SINGLE_HISTO   0
 
#define MSR_FITTYPE_SINGLE_HISTO_RRF   1
 
#define MSR_FITTYPE_ASYM   2
 
#define MSR_FITTYPE_ASYM_RRF   3
 
#define MSR_FITTYPE_MU_MINUS   4
 
#define MSR_FITTYPE_BNMR   5
 
#define MSR_FITTYPE_NON_MUSR   8
 
#define MSR_PLOT_SINGLE_HISTO   0
 
#define MSR_PLOT_SINGLE_HISTO_RRF   1
 
#define MSR_PLOT_ASYM   2
 
#define MSR_PLOT_ASYM_RRF   3
 
#define MSR_PLOT_MU_MINUS   4
 
#define MSR_PLOT_BNMR   5
 
#define MSR_PLOT_NON_MUSR   8
 
#define MSR_PARAM_MAP_OFFSET   10000
 
#define MSR_PARAM_FUN_OFFSET   20000
 
#define FOURIER_UNIT_NOT_GIVEN   0
 
#define FOURIER_UNIT_GAUSS   1
 
#define FOURIER_UNIT_TESLA   2
 
#define FOURIER_UNIT_FREQ   3
 
#define FOURIER_UNIT_CYCLES   4
 
#define FOURIER_APOD_NOT_GIVEN   0
 
#define FOURIER_APOD_NONE   1
 
#define FOURIER_APOD_WEAK   2
 
#define FOURIER_APOD_MEDIUM   3
 
#define FOURIER_APOD_STRONG   4
 
#define FOURIER_PLOT_NOT_GIVEN   0
 
#define FOURIER_PLOT_REAL   1
 
#define FOURIER_PLOT_IMAG   2
 
#define FOURIER_PLOT_REAL_AND_IMAG   3
 
#define FOURIER_PLOT_POWER   4
 
#define FOURIER_PLOT_PHASE   5
 
#define FOURIER_PLOT_PHASE_OPT_REAL   6
 
#define RRF_UNIT_UNDEF   -1
 
#define RRF_UNIT_kHz   0
 
#define RRF_UNIT_MHz   1
 
#define RRF_UNIT_Mcs   2
 
#define RRF_UNIT_G   3
 
#define RRF_UNIT_T   4
 
#define RRF_FREQ_UNDEF   1.0e10
 

Typedefs

typedef std::vector< Bool_t > PBoolVector
 
typedef std::vector< UInt_t > PUIntVector
 
typedef std::vector< Int_t > PIntVector
 
typedef std::pair< Int_t, Int_t > PIntPair
 
typedef std::vector< PIntPairPIntPairVector
 
typedef std::vector< Double_t > PDoubleVector
 
typedef std::pair< Double_t, Double_t > PDoublePair
 
typedef std::vector< PDoublePairPDoublePairVector
 
typedef std::vector< TString > PStringVector
 
typedef std::vector< PRawRunDataPRawRunDataList
 
typedef std::vector< PMsrLineStructurePMsrLines
 
typedef std::vector< PMsrParamStructurePMsrParamList
 
typedef std::vector< PMsrRunBlockPMsrRunList
 
typedef std::vector< PMsrPlotStructurePMsrPlotList
 
typedef std::vector< PRunNameTemplatePRunNameTemplateList
 

Enumerations

enum  EPMusrHandleTag { kEmpty, kFit, kView }
 

Macro Definition Documentation

◆ ACCEL_PERIOD_PSI

◆ ACCEL_PERIOD_RAL

◆ ACCEL_PERIOD_TRIUMF

◆ FOURIER_APOD_MEDIUM

#define FOURIER_APOD_MEDIUM   3

◆ FOURIER_APOD_NONE

◆ FOURIER_APOD_NOT_GIVEN

#define FOURIER_APOD_NOT_GIVEN   0

◆ FOURIER_APOD_STRONG

#define FOURIER_APOD_STRONG   4

◆ FOURIER_APOD_WEAK

#define FOURIER_APOD_WEAK   2

◆ FOURIER_PLOT_IMAG

◆ FOURIER_PLOT_NOT_GIVEN

#define FOURIER_PLOT_NOT_GIVEN   0

◆ 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_NOT_GIVEN

#define FOURIER_UNIT_NOT_GIVEN   0

◆ FOURIER_UNIT_TESLA

◆ GAMMA_BAR_MUON

◆ 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

#define MSR_PARAM_FUN_OFFSET   20000

Definition at line 127 of file PMusr.h.

Referenced by PTheory::Abragam(), PTheory::Asymmetry(), PTheory::Bessel(), PRunSingleHisto::CalcChiSquare(), PRunAsymmetry::CalcChiSquare(), PRunAsymmetryRRF::CalcChiSquare(), PRunSingleHisto::CalcChiSquareExpected(), PRunSingleHisto::CalcMaxLikelihood(), PRunSingleHisto::CalcMaxLikelihoodExpected(), PRunAsymmetry::CalcTheory(), PRunSingleHisto::CalcTheory(), PRunAsymmetryRRF::CalcTheory(), PMsrHandler::CheckFuncs(), PMsrHandler::CheckRunBlockIntegrity(), PTheory::CombiLGKT(), PTheory::Constant(), PTheory::DynamicGaussKTLF(), PTheory::DynamicLorentzKTLF(), PTheory::DynamicNKTF(), PTheory::DynamicNKZF(), PMsrHandler::FillParameterInUse(), PTheory::GeneralExp(), PMsrHandler::GetNoOfFitParameters(), PMsrHandler::HandleRunEntry(), PTheory::InternalBessel(), PTheory::InternalField(), PTheory::InternalFieldGK(), PTheory::InternalFieldLL(), PTheory::MuMinusExpTF(), PTheory::Polynom(), PMsr2Data::PrepareGlobalInputFile(), PRunSingleHisto::PrepareRawViewData(), PRunAsymmetry::PrepareRRFViewData(), PRunAsymmetryRRF::PrepareViewData(), PRunAsymmetry::PrepareViewData(), PRunSingleHisto::PrepareViewData(), PRunAsymmetry::PRunAsymmetry(), PTheory::PTheory(), PTheory::RandomAnisotropicHyperfine(), PTheory::SimpleExp(), PTheory::SimpleGauss(), PTheory::SkewedGauss(), PTheory::SpinGlass(), PTheory::StaticGaussKT(), PTheory::StaticGaussKTLF(), PTheory::StaticLorentzKT(), PTheory::StaticLorentzKTLF(), PTheory::StaticNKTF(), PTheory::StaticNKZF(), PTheory::StrKT(), PTheory::TFCos(), PTheory::UserFcn(), PMsrHandler::WriteMsrFile(), and PMsrHandler::WriteMsrLogFile().

◆ MSR_PARAM_MAP_OFFSET

#define MSR_PARAM_MAP_OFFSET   10000

Definition at line 126 of file PMusr.h.

Referenced by PMsrHandler::CheckMaps(), and PMsrHandler::FillParameterInUse().

◆ 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

#define MSR_PLOT_SINGLE_HISTO_RRF   1

◆ MSR_TAG_COMMANDS

#define MSR_TAG_COMMANDS   6

Definition at line 99 of file PMusr.h.

Referenced by PMsrHandler::ReadMsrFile(), and PMsrHandler::WriteMsrLogFile().

◆ MSR_TAG_FITPARAMETER

#define MSR_TAG_FITPARAMETER   1

Definition at line 94 of file PMusr.h.

Referenced by PMsrHandler::ReadMsrFile(), and PMsrHandler::WriteMsrLogFile().

◆ MSR_TAG_FOURIER

#define MSR_TAG_FOURIER   7

Definition at line 100 of file PMusr.h.

Referenced by PMsrHandler::ReadMsrFile(), and PMsrHandler::WriteMsrLogFile().

◆ MSR_TAG_FUNCTIONS

#define MSR_TAG_FUNCTIONS   3

Definition at line 96 of file PMusr.h.

Referenced by PMsrHandler::ReadMsrFile(), and PMsrHandler::WriteMsrLogFile().

◆ MSR_TAG_GLOBAL

#define MSR_TAG_GLOBAL   4

Definition at line 97 of file PMusr.h.

Referenced by PMsrHandler::ReadMsrFile(), and PMsrHandler::WriteMsrLogFile().

◆ MSR_TAG_PLOT

#define MSR_TAG_PLOT   8

Definition at line 101 of file PMusr.h.

Referenced by PMsrHandler::ReadMsrFile(), and PMsrHandler::WriteMsrLogFile().

◆ MSR_TAG_RUN

#define MSR_TAG_RUN   5

Definition at line 98 of file PMusr.h.

Referenced by PMsrHandler::ReadMsrFile(), and PMsrHandler::WriteMsrLogFile().

◆ MSR_TAG_STATISTIC

#define MSR_TAG_STATISTIC   9

Definition at line 102 of file PMusr.h.

Referenced by PMsrHandler::ReadMsrFile(), and PMsrHandler::WriteMsrLogFile().

◆ MSR_TAG_THEORY

#define MSR_TAG_THEORY   2

Definition at line 95 of file PMusr.h.

Referenced by PMsrHandler::ReadMsrFile(), and PMsrHandler::WriteMsrLogFile().

◆ MSR_TAG_TITLE

#define MSR_TAG_TITLE   0

Definition at line 93 of file PMusr.h.

Referenced by PMsrHandler::WriteMsrLogFile().

◆ PMUON_LIFETIME

◆ PMUSR_DATA_FILE_READ_ERROR

#define PMUSR_DATA_FILE_READ_ERROR   -9

Definition at line 53 of file PMusr.h.

Referenced by main().

◆ PMUSR_MSR_ALLOCATION_ERROR

#define PMUSR_MSR_ALLOCATION_ERROR   -4

Definition at line 48 of file PMusr.h.

◆ PMUSR_MSR_FILE_NOT_FOUND

#define PMUSR_MSR_FILE_NOT_FOUND   -3

◆ PMUSR_MSR_FILE_WRITE_ERROR

#define PMUSR_MSR_FILE_WRITE_ERROR   -8

Definition at line 52 of file PMusr.h.

Referenced by PMsrHandler::WriteMsrFile().

◆ PMUSR_MSR_LOG_FILE_WRITE_ERROR

#define PMUSR_MSR_LOG_FILE_WRITE_ERROR   -7

Definition at line 51 of file PMusr.h.

Referenced by main(), and PMsrHandler::WriteMsrLogFile().

◆ PMUSR_MSR_RUN_ERROR

#define PMUSR_MSR_RUN_ERROR   -10

Definition at line 54 of file PMusr.h.

Referenced by main().

◆ PMUSR_MSR_SYNTAX_ERROR

#define PMUSR_MSR_SYNTAX_ERROR   -5

◆ PMUSR_SUCCESS

◆ PMUSR_SYNTAX_REQUEST

#define PMUSR_SYNTAX_REQUEST   -1

Definition at line 45 of file PMusr.h.

Referenced by main().

◆ PMUSR_TOKENIZE_ERROR

#define PMUSR_TOKENIZE_ERROR   -6

Definition at line 50 of file PMusr.h.

Referenced by main().

◆ PMUSR_UNDEFINED

#define PMUSR_UNDEFINED   -9.9e99

Definition at line 89 of file PMusr.h.

Referenced by PRunSingleHisto::CalcChiSquare(), PRunSingleHisto::CalcChiSquareExpected(), PRunSingleHisto::CalcMaxLikelihood(), PRunSingleHisto::CalcMaxLikelihoodExpected(), PRunSingleHisto::CalcTheory(), PMsrHandler::CheckRunBlockIntegrity(), PMsrRunBlock::CleanUp(), PFunction::EvalNode(), PFitter::ExecuteSave(), PMsrRunBlock::GetBkgEstimated(), PMsrRunBlock::GetBkgFix(), PMsrGlobalBlock::GetFitRange(), PMsrRunBlock::GetFitRange(), PRunMuMinus::GetProperFitRange(), PRunSingleHisto::GetProperFitRange(), PRunAsymmetryRRF::GetProperFitRange(), PRunSingleHistoRRF::GetProperFitRange(), PRunAsymmetry::GetProperFitRange(), PRawRunData::GetRingAnode(), PRawRunDataVector::GetT0BinEstimated(), PRawRunData::GetTemperature(), PRawRunData::GetTempError(), PSectorChisq::GetTimeRangeFirst(), PMusrCanvas::HandleDataSet(), PFitter::PFitter(), PMsrGlobalBlock::PMsrGlobalBlock(), PMsrRunBlock::PMsrRunBlock(), PRawRunData::PRawRunData(), PRunNonMusr::PrepareData(), PRunAsymmetryRRF::PrepareData(), PRunAsymmetry::PrepareData(), PRunSingleHistoRRF::PrepareFitData(), PRunSingleHisto::PrepareFitData(), PRunSingleHisto::PrepareRawViewData(), PRunSingleHisto::PrepareViewData(), PRunBase::PRunBase(), PRunData::PRunData(), PRunDataHandler::ReadAsciiFile(), PRunDataHandler::ReadMudFile(), PRunDataHandler::ReadNexusFile(), PRunDataHandler::ReadPsiBinFile(), PRawRunData::SetTempError(), PRunAsymmetry::SubtractFixBkg(), PMusrCanvas::UpdateInfoPad(), PRunDataHandler::WriteAsciiFile(), PMsrHandler::WriteMsrFile(), PMsrHandler::WriteMsrLogFile(), PMsr2Data::WriteOutput(), and PRunDataHandler::WriteWkmFile().

◆ PMUSR_WRONG_STARTUP_SYNTAX

#define PMUSR_WRONG_STARTUP_SYNTAX   -2

Definition at line 46 of file PMusr.h.

Referenced by main().

◆ POST_PILEUP_HISTO_OFFSET

#define POST_PILEUP_HISTO_OFFSET   20

Definition at line 86 of file PMusr.h.

Referenced by PRunDataHandler::ReadRootFile().

◆ PRUN_ASYMMETRY

◆ PRUN_ASYMMETRY_BNMR

◆ PRUN_ASYMMETRY_RRF

◆ PRUN_MU_MINUS

◆ PRUN_NON_MUSR

◆ PRUN_SINGLE_HISTO

◆ PRUN_SINGLE_HISTO_RRF

◆ RRF_FREQ_UNDEF

#define RRF_FREQ_UNDEF   1.0e10

◆ RRF_UNIT_G

◆ RRF_UNIT_kHz

◆ RRF_UNIT_Mcs

◆ RRF_UNIT_MHz

◆ RRF_UNIT_T

◆ RRF_UNIT_UNDEF

Typedef Documentation

◆ PBoolVector

typedef std::vector<Bool_t> PBoolVector

typedef to make to code more readable. Definition of a bool vector.

Definition at line 166 of file PMusr.h.

◆ PDoublePair

typedef std::pair<Double_t, Double_t> PDoublePair

typedef to make to code more readable. Definition of a double pair

Definition at line 202 of file PMusr.h.

◆ PDoublePairVector

typedef std::vector<PDoublePair> PDoublePairVector

typedef to make to code more readable. Definition of a double pair vector

Definition at line 208 of file PMusr.h.

◆ PDoubleVector

typedef std::vector<Double_t> PDoubleVector

typedef to make to code more readable. Definition of a double vector

Definition at line 196 of file PMusr.h.

◆ PIntPair

typedef std::pair<Int_t, Int_t> PIntPair

typedef to make to code more readable. Definition of an int pair

Definition at line 184 of file PMusr.h.

◆ PIntPairVector

typedef std::vector<PIntPair> PIntPairVector

typedef to make to code more readable. Definition of an int pair vector

Definition at line 190 of file PMusr.h.

◆ PIntVector

typedef std::vector<Int_t> PIntVector

typedef to make to code more readable. Definition of an int vector

Definition at line 178 of file PMusr.h.

◆ PMsrLines

typedef std::vector<PMsrLineStructure> PMsrLines

typedef to make to code more readable: list of msr-file lines.

Definition at line 539 of file PMusr.h.

◆ PMsrParamList

typedef std::vector<PMsrParamStructure> PMsrParamList

typedef to make to code more readable: vector of fit parameters.

Definition at line 564 of file PMusr.h.

◆ PMsrPlotList

typedef std::vector<PMsrPlotStructure> PMsrPlotList

typedef to make to code more readable: list of plots.

Definition at line 802 of file PMusr.h.

◆ PMsrRunList

typedef std::vector<PMsrRunBlock> PMsrRunList

typedef to make to code more readable: list of runs with its parameters.

Definition at line 754 of file PMusr.h.

◆ PRawRunDataList

typedef std::vector<PRawRunData> PRawRunDataList

typedef to make to code more readable. A vector of a raw musr run.

Definition at line 524 of file PMusr.h.

◆ PRunNameTemplateList

typedef std::vector<PRunNameTemplate> PRunNameTemplateList

typedef to make to code more readable: list of run name templates.

Definition at line 891 of file PMusr.h.

◆ PStringVector

typedef std::vector<TString> PStringVector

typedef to make to code more readable. Definition of a string vector

Definition at line 214 of file PMusr.h.

◆ PUIntVector

typedef std::vector<UInt_t> PUIntVector

typedef to make to code more readable. Definition of an unsigned int vector

Definition at line 172 of file PMusr.h.

Enumeration Type Documentation

◆ EPMusrHandleTag

data handling tag

Enumerator
kEmpty 
kFit 
kView 

Definition at line 220 of file PMusr.h.