added more docu
This commit is contained in:
@@ -42,7 +42,7 @@
|
||||
|
||||
//-------------------------------------------------------------
|
||||
/**
|
||||
* <p>
|
||||
* <p>This class provides the routines needed to handle msr-files, i.e. reading, writing, parsing, etc.
|
||||
*/
|
||||
class PMsrHandler
|
||||
{
|
||||
|
||||
+25
-27
@@ -125,67 +125,68 @@ using namespace std;
|
||||
|
||||
//-------------------------------------------------------------
|
||||
/**
|
||||
* <p> typedef to make to code more readable. Definition of a bool vector.
|
||||
* <p>typedef to make to code more readable. Definition of a bool vector.
|
||||
*/
|
||||
typedef vector<Bool_t> PBoolVector;
|
||||
|
||||
//-------------------------------------------------------------
|
||||
/**
|
||||
* <p> typedef to make to code more readable. Definition of an unsigned int vector
|
||||
* <p>typedef to make to code more readable. Definition of an unsigned int vector
|
||||
*/
|
||||
typedef vector<UInt_t> PUIntVector;
|
||||
|
||||
//-------------------------------------------------------------
|
||||
/**
|
||||
* <p> typedef to make to code more readable. Definition of an int vector
|
||||
* <p>typedef to make to code more readable. Definition of an int vector
|
||||
*/
|
||||
typedef vector<Int_t> PIntVector;
|
||||
|
||||
//-------------------------------------------------------------
|
||||
/**
|
||||
* <p> typedef to make to code more readable. Definition of an int pair
|
||||
* <p>typedef to make to code more readable. Definition of an int pair
|
||||
*/
|
||||
typedef pair<Int_t, Int_t> PIntPair;
|
||||
|
||||
//-------------------------------------------------------------
|
||||
/**
|
||||
* <p> typedef to make to code more readable. Definition of an int pair vector
|
||||
* <p>typedef to make to code more readable. Definition of an int pair vector
|
||||
*/
|
||||
typedef vector<PIntPair> PIntPairVector;
|
||||
|
||||
//-------------------------------------------------------------
|
||||
/**
|
||||
* <p> typedef to make to code more readable. Definition of a double vector
|
||||
* <p>typedef to make to code more readable. Definition of a double vector
|
||||
*/
|
||||
typedef vector<Double_t> PDoubleVector;
|
||||
|
||||
//-------------------------------------------------------------
|
||||
/**
|
||||
* <p> typedef to make to code more readable. Definition of a double pair
|
||||
* <p>typedef to make to code more readable. Definition of a double pair
|
||||
*/
|
||||
typedef pair<Double_t, Double_t> PDoublePair;
|
||||
|
||||
//-------------------------------------------------------------
|
||||
/**
|
||||
* <p> typedef to make to code more readable. Definition of a double pair vector
|
||||
* <p>typedef to make to code more readable. Definition of a double pair vector
|
||||
*/
|
||||
typedef vector<PDoublePair> PDoublePairVector;
|
||||
|
||||
//-------------------------------------------------------------
|
||||
/**
|
||||
* <p> typedef to make to code more readable. Definition of a string vector
|
||||
* <p>typedef to make to code more readable. Definition of a string vector
|
||||
*/
|
||||
typedef vector<TString> PStringVector;
|
||||
|
||||
//-------------------------------------------------------------
|
||||
/**
|
||||
* <p> data handling tag
|
||||
* <p>data handling tag
|
||||
*/
|
||||
enum EPMusrHandleTag { kEmpty, kFit, kView };
|
||||
|
||||
//-------------------------------------------------------------
|
||||
/**
|
||||
* <p>Holds the data which will be fitted, i.e. packed, background corrected, ...
|
||||
* <p>Handles the data which will be fitted, i.e. packed, background corrected, ...
|
||||
* This are <b>not</b> the raw histogram data of a run. This are the pre-processed data.
|
||||
*/
|
||||
class PRunData {
|
||||
public:
|
||||
@@ -233,7 +234,7 @@ class PRunData {
|
||||
|
||||
//-------------------------------------------------------------
|
||||
/**
|
||||
* <p>Non-Musr raw data.
|
||||
* <p>Handles Non-Musr raw data.
|
||||
*/
|
||||
class PNonMusrRawRunData {
|
||||
public:
|
||||
@@ -265,7 +266,7 @@ class PNonMusrRawRunData {
|
||||
|
||||
//-------------------------------------------------------------
|
||||
/**
|
||||
* <p>Histogram raw muSR data.
|
||||
* <p>Handles raw data, both non-muSR data as well muSR histogram data.
|
||||
*/
|
||||
class PRawRunData {
|
||||
public:
|
||||
@@ -335,13 +336,13 @@ class PRawRunData {
|
||||
|
||||
//-------------------------------------------------------------
|
||||
/**
|
||||
* <p> typedef to make to code more readable. A vector of a raw musr run.
|
||||
* <p>typedef to make to code more readable. A vector of a raw musr run.
|
||||
*/
|
||||
typedef vector<PRawRunData> PRawRunDataList;
|
||||
|
||||
//-------------------------------------------------------------
|
||||
/**
|
||||
* <p> Helper structure for parsing. Keeps a msr-file line string and the corresponding line number.
|
||||
* <p>Helper structure for parsing. Keeps a msr-file line string and the corresponding line number.
|
||||
*/
|
||||
typedef struct {
|
||||
Int_t fLineNo; ///< original line number of the msr-file
|
||||
@@ -350,13 +351,13 @@ typedef struct {
|
||||
|
||||
//-------------------------------------------------------------
|
||||
/**
|
||||
* <p> typedef to make to code more readable: list of msr-file lines.
|
||||
* <p>typedef to make to code more readable: list of msr-file lines.
|
||||
*/
|
||||
typedef vector<PMsrLineStructure> PMsrLines;
|
||||
|
||||
//-------------------------------------------------------------
|
||||
/**
|
||||
* <p> Holds the information of a parameter.
|
||||
* <p>Handles the information of a parameter.
|
||||
*/
|
||||
typedef struct {
|
||||
Int_t fNoOfParams; ///< how many parameters are given
|
||||
@@ -374,13 +375,13 @@ typedef struct {
|
||||
|
||||
//-------------------------------------------------------------
|
||||
/**
|
||||
* <p> typedef to make to code more readable: vector of fit parameters.
|
||||
* <p>typedef to make to code more readable: vector of fit parameters.
|
||||
*/
|
||||
typedef vector<PMsrParamStructure> PMsrParamList;
|
||||
|
||||
//-------------------------------------------------------------
|
||||
/**
|
||||
* <p> Holds the information of a single run block
|
||||
* <p>Handles the information of a single run block
|
||||
*
|
||||
*/
|
||||
class PMsrRunBlock {
|
||||
@@ -402,7 +403,6 @@ class PMsrRunBlock {
|
||||
virtual Int_t GetBetaParamNo() { return fBetaParamNo; }
|
||||
virtual Int_t GetNormParamNo() { return fNormParamNo; }
|
||||
virtual Int_t GetBkgFitParamNo() { return fBkgFitParamNo; }
|
||||
virtual Int_t GetPhaseParamNo() { return fPhaseParamNo; }
|
||||
virtual Int_t GetLifetimeParamNo() { return fLifetimeParamNo; }
|
||||
virtual Bool_t IsLifetimeCorrected() { return fLifetimeCorrection; }
|
||||
virtual PIntVector* GetMap() { return &fMap; }
|
||||
@@ -435,7 +435,6 @@ class PMsrRunBlock {
|
||||
virtual void SetBetaParamNo(Int_t ival) { fBetaParamNo = ival; }
|
||||
virtual void SetNormParamNo(Int_t ival) { fNormParamNo = ival; }
|
||||
virtual void SetBkgFitParamNo(Int_t ival) { fBkgFitParamNo = ival; }
|
||||
virtual void SetPhaseParamNo(Int_t ival) { fPhaseParamNo = ival; }
|
||||
virtual void SetLifetimeParamNo(Int_t ival) { fLifetimeParamNo = ival; }
|
||||
virtual void SetLifetimeCorrection(Bool_t bval) { fLifetimeCorrection = bval; }
|
||||
virtual void SetMap(Int_t mapVal, Int_t idx=-1);
|
||||
@@ -463,7 +462,6 @@ class PMsrRunBlock {
|
||||
Int_t fBetaParamNo; ///< beta parameter number (fit type 2, 4)
|
||||
Int_t fNormParamNo; ///< N0 parameter number (fit type 0)
|
||||
Int_t fBkgFitParamNo; ///< background fit parameter number (fit type 0)
|
||||
Int_t fPhaseParamNo; ///< ??? NEEDED ??? NEEDS TO BE CHECKED !!!
|
||||
Int_t fLifetimeParamNo; ///< muon lifetime parameter number (fit type 0)
|
||||
Bool_t fLifetimeCorrection; ///< lifetime correction flag for viewing (fit type 0)
|
||||
PIntVector fMap; ///< map vector needed to switch parameters for different runs within a single theory
|
||||
@@ -482,13 +480,13 @@ class PMsrRunBlock {
|
||||
|
||||
//-------------------------------------------------------------
|
||||
/**
|
||||
* <p> typedef to make to code more readable: list of runs with its parameters.
|
||||
* <p>typedef to make to code more readable: list of runs with its parameters.
|
||||
*/
|
||||
typedef vector<PMsrRunBlock> PMsrRunList;
|
||||
|
||||
//-------------------------------------------------------------
|
||||
/**
|
||||
* <p> Holds the information of the Fourier block
|
||||
* <p>Holds the information of the Fourier block
|
||||
*/
|
||||
typedef struct {
|
||||
Bool_t fFourierBlockPresent; ///< flag indicating if a Fourier block is present in the msr-file
|
||||
@@ -505,7 +503,7 @@ typedef struct {
|
||||
|
||||
//-------------------------------------------------------------
|
||||
/**
|
||||
* <p> Holds the information of a single plot block
|
||||
* <p>Holds the information of a single plot block
|
||||
*/
|
||||
typedef struct {
|
||||
Int_t fPlotType; ///< plot type
|
||||
@@ -526,13 +524,13 @@ typedef struct {
|
||||
|
||||
//-------------------------------------------------------------
|
||||
/**
|
||||
* <p> typedef to make to code more readable: list of plots.
|
||||
* <p>typedef to make to code more readable: list of plots.
|
||||
*/
|
||||
typedef vector<PMsrPlotStructure> PMsrPlotList;
|
||||
|
||||
//-------------------------------------------------------------
|
||||
/**
|
||||
* <p>
|
||||
* <p>Holds the informations for the statistics block.
|
||||
*/
|
||||
typedef struct {
|
||||
Bool_t fValid; ///< flag showing if the statistics block is valid, i.e. a fit took place which converged
|
||||
|
||||
+77
-75
@@ -84,57 +84,59 @@
|
||||
|
||||
//------------------------------------------------------------------------
|
||||
/**
|
||||
* <p>
|
||||
* <p>Structure holding all necessary histograms for a single plot block entry for
|
||||
* fit types: asymmetry fit and single histogram fit.
|
||||
*/
|
||||
typedef struct {
|
||||
TH1F *data;
|
||||
TH1F *dataFourierRe;
|
||||
TH1F *dataFourierIm;
|
||||
TH1F *dataFourierPwr;
|
||||
TH1F *dataFourierPhase;
|
||||
TH1F *theory;
|
||||
TH1F *theoryFourierRe;
|
||||
TH1F *theoryFourierIm;
|
||||
TH1F *theoryFourierPwr;
|
||||
TH1F *theoryFourierPhase;
|
||||
TH1F *diff;
|
||||
TH1F *diffFourierRe;
|
||||
TH1F *diffFourierIm;
|
||||
TH1F *diffFourierPwr;
|
||||
TH1F *diffFourierPhase;
|
||||
TH1F *data; ///< data histogram
|
||||
TH1F *dataFourierRe; ///< real part of the Fourier transform of the data histogram
|
||||
TH1F *dataFourierIm; ///< imaginary part of the Fourier transform of the data histogram
|
||||
TH1F *dataFourierPwr; ///< power spectrum of the Fourier transform of the data histogram
|
||||
TH1F *dataFourierPhase; ///< phase spectrum of the Fourier transform of the data histogram
|
||||
TH1F *theory; ///< theory histogram belonging to the data histogram
|
||||
TH1F *theoryFourierRe; ///< real part of the Fourier transform of the theory histogram
|
||||
TH1F *theoryFourierIm; ///< imaginary part of the Fourier transform of the theory histogram
|
||||
TH1F *theoryFourierPwr; ///< power spectrum of the Fourier transform of the theory histogram
|
||||
TH1F *theoryFourierPhase; ///< phase spectrum of the Fourier transform of the theory histogram
|
||||
TH1F *diff; ///< difference histogram, i.e. data-theory
|
||||
TH1F *diffFourierRe; ///< real part of the Fourier transform of the diff histogram
|
||||
TH1F *diffFourierIm; ///< imaginary part of the Fourier transform of the diff histogram
|
||||
TH1F *diffFourierPwr; ///< power spectrum of the Fourier transform of the diff histogram
|
||||
TH1F *diffFourierPhase; ///< phase spectrum of the Fourier transform of the diff histogram
|
||||
} PMusrCanvasDataSet;
|
||||
|
||||
//------------------------------------------------------------------------
|
||||
/**
|
||||
* <p>
|
||||
* <p>typedef to make to code more readable: list of histogram data sets.
|
||||
*/
|
||||
typedef vector<PMusrCanvasDataSet> PMusrCanvasDataList;
|
||||
|
||||
//------------------------------------------------------------------------
|
||||
/**
|
||||
* <p>
|
||||
* <p>Structure holding all necessary error graphs for a single plot block entry for
|
||||
* fit types: non-muSR fit.
|
||||
*/
|
||||
typedef struct {
|
||||
TGraphErrors *data;
|
||||
TGraphErrors *dataFourierRe;
|
||||
TGraphErrors *dataFourierIm;
|
||||
TGraphErrors *dataFourierPwr;
|
||||
TGraphErrors *dataFourierPhase;
|
||||
TGraphErrors *theory;
|
||||
TGraphErrors *theoryFourierRe;
|
||||
TGraphErrors *theoryFourierIm;
|
||||
TGraphErrors *theoryFourierPwr;
|
||||
TGraphErrors *theoryFourierPhase;
|
||||
TGraphErrors *diff;
|
||||
TGraphErrors *diffFourierRe;
|
||||
TGraphErrors *diffFourierIm;
|
||||
TGraphErrors *diffFourierPwr;
|
||||
TGraphErrors *diffFourierPhase;
|
||||
TGraphErrors *data; ///< data error graph
|
||||
TGraphErrors *dataFourierRe; ///< real part of the Fourier transform of the data error graph
|
||||
TGraphErrors *dataFourierIm; ///< imaginary part of the Fourier transform of the data error graph
|
||||
TGraphErrors *dataFourierPwr; ///< power spectrum of the Fourier transform of the data error graph
|
||||
TGraphErrors *dataFourierPhase; ///< phase spectrum of the Fourier transform of the data error graph
|
||||
TGraphErrors *theory; ///< theory histogram belonging to the data error graph
|
||||
TGraphErrors *theoryFourierRe; ///< real part of the Fourier transform of the theory error graph
|
||||
TGraphErrors *theoryFourierIm; ///< imaginary part of the Fourier transform of the theory error graph
|
||||
TGraphErrors *theoryFourierPwr; ///< power spectrum of the Fourier transform of the theory error graph
|
||||
TGraphErrors *theoryFourierPhase; ///< phase spectrum of the Fourier transform of the theory error graph
|
||||
TGraphErrors *diff; ///< difference error graph, i.e. data-theory
|
||||
TGraphErrors *diffFourierRe; ///< real part of the Fourier transform of the diff error graph
|
||||
TGraphErrors *diffFourierIm; ///< imaginary part of the Fourier transform of the diff error graph
|
||||
TGraphErrors *diffFourierPwr; ///< power spectrum of the Fourier transform of the diff error graph
|
||||
TGraphErrors *diffFourierPhase; ///< phase spectrum of the Fourier transform of the diff error graph
|
||||
} PMusrCanvasNonMusrDataSet;
|
||||
|
||||
//------------------------------------------------------------------------
|
||||
/**
|
||||
* <p>
|
||||
* <p>typedef to make to code more readable: list of error graph data sets.
|
||||
*/
|
||||
typedef vector<PMusrCanvasNonMusrDataSet> PMusrCanvasNonMusrDataList;
|
||||
|
||||
@@ -143,17 +145,17 @@ typedef vector<PMusrCanvasNonMusrDataSet> PMusrCanvasNonMusrDataList;
|
||||
* <p> data structure needed for ascii dump within musrview.
|
||||
*/
|
||||
typedef struct {
|
||||
PDoubleVector dataX;
|
||||
PDoubleVector data;
|
||||
PDoubleVector dataErr;
|
||||
PDoubleVector theoryX;
|
||||
PDoubleVector theory;
|
||||
PDoubleVector dataX; ///< x-axis data set
|
||||
PDoubleVector data; ///< y-axis data set
|
||||
PDoubleVector dataErr; ///< error of the y-axis data set
|
||||
PDoubleVector theoryX; ///< x-axis theory set
|
||||
PDoubleVector theory; ///< y-axis theory set
|
||||
} PMusrCanvasAsciiDump;
|
||||
|
||||
//------------------------------------------------------------------------
|
||||
/**
|
||||
* <p> vectore of the above data structure. Used if there are multiple histogramms
|
||||
* to be dumped.
|
||||
* <p> typedef to make to code more readable: vector of the above data structure.
|
||||
* Used if there are multiple histogramms to be dumped.
|
||||
*/
|
||||
typedef vector<PMusrCanvasAsciiDump> PMusrCanvasAsciiDumpVector;
|
||||
|
||||
@@ -193,53 +195,53 @@ class PMusrCanvas : public TObject, public TQObject
|
||||
virtual void SaveGraphicsAndQuit(Char_t *fileName, Char_t *graphicsFormat);
|
||||
|
||||
private:
|
||||
Bool_t fBatchMode; /// musrview in ROOT batch mode
|
||||
Bool_t fValid;
|
||||
Bool_t fDifferenceView; /// tag showing that the shown data, fourier, are the difference between data and theory
|
||||
Int_t fCurrentPlotView; /// tag showing what the current plot view is: data, fourier, ...
|
||||
Int_t fPlotType;
|
||||
Int_t fPlotNumber;
|
||||
Bool_t fBatchMode; ///< musrview in ROOT batch mode
|
||||
Bool_t fValid; ///< if true, everything looks OK
|
||||
Bool_t fDifferenceView; ///< tag showing that the shown data, fourier, are the difference between data and theory
|
||||
Int_t fCurrentPlotView; ///< tag showing what the current plot view is: data, fourier, ...
|
||||
Int_t fPlotType; ///< plot type tag: -1 == undefined, MSR_PLOT_SINGLE_HISTO == single histogram, MSR_PLOT_ASYM == asymmetry, MSR_PLOT_MU_MINUS == mu minus (not yet implemented), MSR_PLOT_NON_MUSR == non-muSR
|
||||
Int_t fPlotNumber; ///< plot number
|
||||
|
||||
Double_t fXmin, fXmax, fYmin, fYmax; /// data/theory frame range
|
||||
Double_t fXmin, fXmax, fYmin, fYmax; ///< data/theory frame range
|
||||
|
||||
Double_t fCurrentFourierPhase; /// holds the current Fourier phase
|
||||
TLatex *fCurrentFourierPhaseText; /// used in Re/Im Fourier to show the current phase in the pad
|
||||
TString *fRRFText;
|
||||
TLatex *fRRFLatexText; /// used to display RRF info
|
||||
Double_t fCurrentFourierPhase; ///< holds the current Fourier phase
|
||||
TLatex *fCurrentFourierPhaseText; ///< used in Re/Im Fourier to show the current phase in the pad
|
||||
TString *fRRFText; ///< RRF information
|
||||
TLatex *fRRFLatexText; ///< used to display RRF info
|
||||
|
||||
TStyle *fStyle;
|
||||
TStyle *fStyle; ///< A collection of all graphics attributes
|
||||
|
||||
// canvas menu related variables
|
||||
TRootCanvas *fImp;
|
||||
TGMenuBar *fBar;
|
||||
TGPopupMenu *fPopupMain;
|
||||
TGPopupMenu *fPopupSave;
|
||||
TGPopupMenu *fPopupFourier;
|
||||
TRootCanvas *fImp; ///< ROOT native GUI version of main window with menubar and drawing area
|
||||
TGMenuBar *fBar; ///< menu bar
|
||||
TGPopupMenu *fPopupMain; ///< popup menu Musrfit in the main menu bar
|
||||
TGPopupMenu *fPopupSave; ///< popup menu of the Musrfit/Save Data sub menu
|
||||
TGPopupMenu *fPopupFourier; ///< popup menu of the Musrfit/Fourier sub menu
|
||||
|
||||
// canvas related variables
|
||||
TCanvas *fMainCanvas;
|
||||
TPaveText *fTitlePad;
|
||||
TPad *fDataTheoryPad;
|
||||
TPaveText *fParameterPad;
|
||||
TPaveText *fTheoryPad;
|
||||
TLegend *fInfoPad;
|
||||
TLegend *fMultiGraphLegend;
|
||||
TCanvas *fMainCanvas; ///< main canvas
|
||||
TPaveText *fTitlePad; ///< title pad used to display a title
|
||||
TPad *fDataTheoryPad; ///< data/theory pad used to display the data/theory
|
||||
TPaveText *fParameterPad; ///< parameter pad used to display the fitting parameters
|
||||
TPaveText *fTheoryPad; ///< theory pad used to display the theory and functions
|
||||
TLegend *fInfoPad; ///< info pad used to display a legend of the data plotted
|
||||
TLegend *fMultiGraphLegend; ///< used for non-muSR plots to display a legend
|
||||
|
||||
TH1F *fHistoFrame;
|
||||
TH1F *fHistoFrame; ///< fHistoFrame is a 'global' frame needed in order to plot histograms with (potentially) different x-frames
|
||||
|
||||
#ifndef __MAKECINT__
|
||||
PMsrHandler *fMsrHandler;
|
||||
PRunListCollection *fRunList;
|
||||
PMsrHandler *fMsrHandler; ///< msr-file handler
|
||||
PRunListCollection *fRunList; ///< data handler
|
||||
#endif // __MAKECINT__
|
||||
|
||||
PMusrCanvasDataList fData;
|
||||
PMusrCanvasNonMusrDataList fNonMusrData;
|
||||
TMultiGraph *fMultiGraphData;
|
||||
TMultiGraph *fMultiGraphDiff;
|
||||
PMusrCanvasDataList fData; ///< list of all histogram data to be plotted (asymmetry/single histogram)
|
||||
PMusrCanvasNonMusrDataList fNonMusrData; ///< list of all error graphs to be plotted (non-muSR)
|
||||
TMultiGraph *fMultiGraphData; ///< fMultiGraphData is a 'global' graph needed in order to plot error graphs (data) with (potentially) different x-frames
|
||||
TMultiGraph *fMultiGraphDiff; ///< fMultiGraphDiff is a 'global' graph needed in order to plot error graphs (data-theory) with (potentially) different x-frames
|
||||
|
||||
PMsrFourierStructure fFourier;
|
||||
PIntVector fMarkerList;
|
||||
PIntVector fColorList;
|
||||
PMsrFourierStructure fFourier; ///< structure holding all the information necessary to perform the Fourier transform
|
||||
PIntVector fMarkerList; ///< list of markers
|
||||
PIntVector fColorList; ///< list of colors
|
||||
|
||||
virtual void CreateStyle();
|
||||
virtual void InitFourier();
|
||||
|
||||
+26
-27
@@ -54,13 +54,11 @@
|
||||
#define PMUSRT0_GET_DATA_AND_BKG_RANGE 1
|
||||
#define PMUSRT0_GET_T0_DATA_AND_BKG_RANGE 2
|
||||
|
||||
/*
|
||||
#define PMUSRT0_NOADDRUN_NOGROUPING 0
|
||||
#define PMUSRT0_ADDRUN_NOGROUPING 1
|
||||
#define PMUSRT0_NOADDRUN_GROUPING 2
|
||||
#define PMUSRT0_ADDRUN_GROUPING 3
|
||||
*/
|
||||
|
||||
//--------------------------------------------------------------------------
|
||||
/**
|
||||
* <p>Handles the raw muSR run data sets.
|
||||
*/
|
||||
class PMusrT0Data {
|
||||
public:
|
||||
PMusrT0Data();
|
||||
@@ -112,6 +110,7 @@ class PMusrT0Data {
|
||||
|
||||
//--------------------------------------------------------------------------
|
||||
/**
|
||||
* <p>Handles the musrt0 graphical user interface.
|
||||
* <p>The preprocessor tag __MAKECINT__ is used to hide away from rootcint
|
||||
* the overly complex spirit header files.
|
||||
*/
|
||||
@@ -138,39 +137,39 @@ class PMusrT0 : public TObject, public TQObject
|
||||
|
||||
private:
|
||||
#ifndef __MAKECINT__
|
||||
PMsrHandler *fMsrHandler;
|
||||
PMsrHandler *fMsrHandler; ///< msr-file handler
|
||||
#endif // __MAKECINT__
|
||||
|
||||
Bool_t fValid;
|
||||
Bool_t fValid; ///< true if raw data set are available, otherwise false
|
||||
|
||||
Int_t fStatus;
|
||||
Int_t fStatus; ///< 0=quit locally, i.e. only a single musrt0 raw data canvas will terminate but not the application, 1=quit the application
|
||||
|
||||
PMusrT0Data fMusrT0Data;
|
||||
PMusrT0Data fMusrT0Data; ///< raw muSR run data sets.
|
||||
|
||||
Bool_t fDataAndBkgEnabled;
|
||||
Bool_t fT0Enabled;
|
||||
Int_t fT0Estimated;
|
||||
Bool_t fDataAndBkgEnabled; ///< enable/disable data and background range handling (necessary in connection with grouping and addrun)
|
||||
Bool_t fT0Enabled; ///< enable/disable t0 handling (necessary in connection with grouping and addrun)
|
||||
Int_t fT0Estimated; ///< estimated t0 value (in bins)
|
||||
|
||||
// canvas related variables
|
||||
TCanvas *fMainCanvas;
|
||||
TCanvas *fMainCanvas; ///< main canvas for the graphical user interface
|
||||
|
||||
TH1F *fHisto;
|
||||
TH1F *fData;
|
||||
TH1F *fBkg;
|
||||
TH1F *fHisto; ///< full raw data histogram
|
||||
TH1F *fData; ///< ranged raw data histogram (first good bin, last good bin)
|
||||
TH1F *fBkg; ///< histogram starting from 'bkg start' up to 'bkg end'
|
||||
|
||||
TLatex *fToDoInfo;
|
||||
TLatex *fToDoInfo; ///< clear text user instruction string
|
||||
|
||||
TLine *fT0Line;
|
||||
TLine *fFirstBkgLine;
|
||||
TLine *fLastBkgLine;
|
||||
TLine *fFirstDataLine;
|
||||
TLine *fLastDataLine;
|
||||
TLine *fT0Line; ///< line showing the position of t0
|
||||
TLine *fFirstBkgLine; ///< line showing the start of the background
|
||||
TLine *fLastBkgLine; ///< line showing the end of the background
|
||||
TLine *fFirstDataLine; ///< line showing the start of the data (first good data bin)
|
||||
TLine *fLastDataLine; ///< line showing the end of the data (last good data bin)
|
||||
|
||||
Int_t fPx;
|
||||
Int_t fPy;
|
||||
Int_t fPx; ///< x-position of the cursor
|
||||
Int_t fPy; ///< y-position of the cursor
|
||||
|
||||
Int_t fDataRange[2];
|
||||
Int_t fBkgRange[2];
|
||||
Int_t fDataRange[2]; ///< data range (first good bin, last good bin)
|
||||
Int_t fBkgRange[2]; ///< background range (first bkg bin, last bkg bin)
|
||||
|
||||
void SetT0Channel();
|
||||
void SetEstimatedT0Channel();
|
||||
|
||||
@@ -34,6 +34,10 @@
|
||||
|
||||
#include "PRunBase.h"
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
/**
|
||||
* <p>Class handling the asymmetry fit.
|
||||
*/
|
||||
class PRunAsymmetry : public PRunBase
|
||||
{
|
||||
public:
|
||||
@@ -45,7 +49,7 @@ class PRunAsymmetry : public PRunBase
|
||||
virtual Double_t CalcMaxLikelihood(const std::vector<Double_t>& par);
|
||||
virtual void CalcTheory();
|
||||
|
||||
virtual UInt_t GetNoOfFitBins() { return fNoOfFitBins; }
|
||||
virtual UInt_t GetNoOfFitBins() { return fNoOfFitBins; } ///< returns the number of bins to be fitted.
|
||||
|
||||
protected:
|
||||
virtual Bool_t PrepareData();
|
||||
@@ -54,11 +58,11 @@ class PRunAsymmetry : public PRunBase
|
||||
virtual Bool_t PrepareRRFViewData(PRawRunData* runData, UInt_t histoNo[2]);
|
||||
|
||||
private:
|
||||
UInt_t fAlphaBetaTag; ///< 1-> alpha = beta = 1; 2-> alpha != 1, beta = 1; 3-> alpha = 1, beta != 1; 4-> alpha != 1, beta != 1
|
||||
UInt_t fAlphaBetaTag; ///< \f$ 1 \to \alpha = \beta = 1\f$; \f$ 2 \to \alpha \neq 1, \beta = 1\f$; \f$ 3 \to \alpha = 1, \beta \neq 1\f$; \f$ 4 \to \alpha \neq 1, \beta \neq 1\f$.
|
||||
|
||||
Double_t fFitStartTime;
|
||||
Double_t fFitStopTime;
|
||||
UInt_t fNoOfFitBins;
|
||||
Double_t fFitStartTime; ///< fit start time
|
||||
Double_t fFitStopTime; ///< fit stop time
|
||||
UInt_t fNoOfFitBins; ///< number of bins to be be fitted
|
||||
|
||||
PDoubleVector fForward; ///< forward histo data
|
||||
PDoubleVector fForwardErr; ///< forward histo errors
|
||||
|
||||
Reference in New Issue
Block a user