musrfit  1.9.2
PFTPhaseCorrection Class Reference

#include <PFourier.h>

Inheritance diagram for PFTPhaseCorrection:
Collaboration diagram for PFTPhaseCorrection:

Public Member Functions

 PFTPhaseCorrection (const Int_t minBin=-1, const Int_t maxBin=-1)
 
 PFTPhaseCorrection (std::vector< Double_t > &reFT, std::vector< Double_t > &imFT, const Int_t minBin=-1, const Int_t maxBin=-1)
 
virtual ~PFTPhaseCorrection ()
 
virtual Bool_t IsValid ()
 
virtual void Minimize ()
 
virtual void SetGamma (const Double_t gamma)
 
virtual void SetPh (const Double_t c0, const Double_t c1)
 
virtual Double_t GetGamma ()
 
virtual Double_t GetPhaseCorrectionParam (UInt_t idx)
 
virtual Double_t GetMinimum ()
 

Private Member Functions

virtual void Init ()
 keeps the minimum of the entropy/penalty minimization More...
 
virtual void CalcPhasedFT () const
 
virtual void CalcRealPhFTDerivative () const
 
virtual Double_t Penalty () const
 
virtual Double_t Entropy () const
 
virtual Double_t Up () const
 
virtual Double_t operator() (const std::vector< Double_t > &) const
 

Private Attributes

Bool_t fValid
 
std::vector< Double_t > fReal
 
std::vector< Double_t > fImag
 original real Fourier data set More...
 
std::vector< Double_t > fRealPh
 original imag Fourier data set More...
 
std::vector< Double_t > fImagPh
 phased real Fourier data set More...
 
std::vector< Double_t > fRealPhD
 phased imag Fourier data set More...
 
Int_t fMinBin
 1st derivative of fRealPh More...
 
Int_t fMaxBin
 minimum bin from Fourier range to be used for the phase correction estimate More...
 
Double_t fPh_c0
 maximum bin from Fourier range to be used for the phase correction estimate More...
 
Double_t fPh_c1
 constant part of the phase dispersion used for the phase correction More...
 
Double_t fGamma
 linear part of the phase dispersion used for the phase correction More...
 
Double_t fMin
 gamma parameter to balance between entropy and penalty More...
 

Detailed Description

Re Fourier phase correction

Definition at line 51 of file PFourier.h.

Constructor & Destructor Documentation

◆ PFTPhaseCorrection() [1/2]

PFTPhaseCorrection::PFTPhaseCorrection ( const Int_t  minBin = -1,
const Int_t  maxBin = -1 
)

Definition at line 56 of file PFourier.cpp.

References Init().

◆ PFTPhaseCorrection() [2/2]

PFTPhaseCorrection::PFTPhaseCorrection ( std::vector< Double_t > &  reFT,
std::vector< Double_t > &  imFT,
const Int_t  minBin = -1,
const Int_t  maxBin = -1 
)

Definition at line 68 of file PFourier.cpp.

References fImagPh, fMaxBin, fMinBin, fReal, fRealPh, and Init().

◆ ~PFTPhaseCorrection()

virtual PFTPhaseCorrection::~PFTPhaseCorrection ( )
inlinevirtual

Definition at line 56 of file PFourier.h.

Member Function Documentation

◆ CalcPhasedFT()

void PFTPhaseCorrection::CalcPhasedFT ( ) const
privatevirtual

Definition at line 174 of file PFourier.cpp.

References fImag, fImagPh, fPh_c0, fPh_c1, fReal, and fRealPh.

Referenced by operator()(), and SetPh().

◆ CalcRealPhFTDerivative()

void PFTPhaseCorrection::CalcRealPhFTDerivative ( ) const
privatevirtual

Definition at line 193 of file PFourier.cpp.

References fRealPh, and fRealPhD.

Referenced by operator()(), and SetPh().

◆ Entropy()

Double_t PFTPhaseCorrection::Entropy ( ) const
privatevirtual

Definition at line 228 of file PFourier.cpp.

References fMaxBin, fMinBin, and fRealPhD.

Referenced by operator()().

◆ GetGamma()

virtual Double_t PFTPhaseCorrection::GetGamma ( )
inlinevirtual

Definition at line 64 of file PFourier.h.

References fGamma.

◆ GetMinimum()

Double_t PFTPhaseCorrection::GetMinimum ( )
virtual

Definition at line 143 of file PFourier.cpp.

References fMin, and fValid.

◆ GetPhaseCorrectionParam()

Double_t PFTPhaseCorrection::GetPhaseCorrectionParam ( UInt_t  idx)
virtual

Definition at line 123 of file PFourier.cpp.

References fPh_c0, and fPh_c1.

Referenced by PFourier::GetPhaseOptRealFourier().

◆ Init()

void PFTPhaseCorrection::Init ( )
privatevirtual

keeps the minimum of the entropy/penalty minimization

Definition at line 159 of file PFourier.cpp.

References fGamma, fMin, fPh_c0, fPh_c1, and fValid.

Referenced by PFTPhaseCorrection().

◆ IsValid()

virtual Bool_t PFTPhaseCorrection::IsValid ( )
inlinevirtual

Definition at line 58 of file PFourier.h.

References fValid.

Referenced by PFourier::GetPhaseOptRealFourier().

◆ Minimize()

void PFTPhaseCorrection::Minimize ( )
virtual

Definition at line 91 of file PFourier.cpp.

References fMin, fPh_c0, fPh_c1, and fValid.

Referenced by PFourier::GetPhaseOptRealFourier().

◆ operator()()

double PFTPhaseCorrection::operator() ( const std::vector< Double_t > &  ) const
privatevirtual

Definition at line 255 of file PFourier.cpp.

References CalcPhasedFT(), CalcRealPhFTDerivative(), Entropy(), fPh_c0, fPh_c1, and Penalty().

◆ Penalty()

Double_t PFTPhaseCorrection::Penalty ( ) const
privatevirtual

Definition at line 210 of file PFourier.cpp.

References fGamma, fMaxBin, fMinBin, and fRealPh.

Referenced by operator()().

◆ SetGamma()

virtual void PFTPhaseCorrection::SetGamma ( const Double_t  gamma)
inlinevirtual

Definition at line 61 of file PFourier.h.

References fGamma.

◆ SetPh()

virtual void PFTPhaseCorrection::SetPh ( const Double_t  c0,
const Double_t  c1 
)
inlinevirtual

Definition at line 62 of file PFourier.h.

References CalcPhasedFT(), CalcRealPhFTDerivative(), fPh_c0, and fPh_c1.

◆ Up()

virtual Double_t PFTPhaseCorrection::Up ( ) const
inlineprivatevirtual

Definition at line 90 of file PFourier.h.

Member Data Documentation

◆ fGamma

Double_t PFTPhaseCorrection::fGamma
private

linear part of the phase dispersion used for the phase correction

Definition at line 81 of file PFourier.h.

Referenced by GetGamma(), Init(), Penalty(), and SetGamma().

◆ fImag

std::vector<Double_t> PFTPhaseCorrection::fImag
private

original real Fourier data set

Definition at line 72 of file PFourier.h.

Referenced by CalcPhasedFT().

◆ fImagPh

std::vector<Double_t> PFTPhaseCorrection::fImagPh
mutableprivate

phased real Fourier data set

Definition at line 74 of file PFourier.h.

Referenced by CalcPhasedFT(), and PFTPhaseCorrection().

◆ fMaxBin

Int_t PFTPhaseCorrection::fMaxBin
private

minimum bin from Fourier range to be used for the phase correction estimate

Definition at line 78 of file PFourier.h.

Referenced by Entropy(), Penalty(), and PFTPhaseCorrection().

◆ fMin

Double_t PFTPhaseCorrection::fMin
private

gamma parameter to balance between entropy and penalty

Definition at line 82 of file PFourier.h.

Referenced by GetMinimum(), Init(), and Minimize().

◆ fMinBin

Int_t PFTPhaseCorrection::fMinBin
private

1st derivative of fRealPh

Definition at line 77 of file PFourier.h.

Referenced by Entropy(), Penalty(), and PFTPhaseCorrection().

◆ fPh_c0

Double_t PFTPhaseCorrection::fPh_c0
mutableprivate

maximum bin from Fourier range to be used for the phase correction estimate

Definition at line 79 of file PFourier.h.

Referenced by CalcPhasedFT(), GetPhaseCorrectionParam(), Init(), Minimize(), operator()(), and SetPh().

◆ fPh_c1

Double_t PFTPhaseCorrection::fPh_c1
mutableprivate

constant part of the phase dispersion used for the phase correction

Definition at line 80 of file PFourier.h.

Referenced by CalcPhasedFT(), GetPhaseCorrectionParam(), Init(), Minimize(), operator()(), and SetPh().

◆ fReal

std::vector<Double_t> PFTPhaseCorrection::fReal
private

Definition at line 71 of file PFourier.h.

Referenced by CalcPhasedFT(), and PFTPhaseCorrection().

◆ fRealPh

std::vector<Double_t> PFTPhaseCorrection::fRealPh
mutableprivate

original imag Fourier data set

Definition at line 73 of file PFourier.h.

Referenced by CalcPhasedFT(), CalcRealPhFTDerivative(), Penalty(), and PFTPhaseCorrection().

◆ fRealPhD

std::vector<Double_t> PFTPhaseCorrection::fRealPhD
mutableprivate

phased imag Fourier data set

Definition at line 75 of file PFourier.h.

Referenced by CalcRealPhFTDerivative(), and Entropy().

◆ fValid

Bool_t PFTPhaseCorrection::fValid
private

Definition at line 69 of file PFourier.h.

Referenced by GetMinimum(), Init(), IsValid(), and Minimize().


The documentation for this class was generated from the following files: