- Removed the extensions of the external libraries in the test files.

ROOT is anyway checking multiple extensions for dynamic libraries, therefore leaving them out yields platform-independent msr files.

- Minor changes in libTFitPofB

- Added a user function for Uemura's ZF/LF dynamical spin-glass relaxation function
  see, e.g. Y.J. Uemura et al., Phys. Rev. B 31, 546-563 (1985)
  or Y.J. Uemura, Hyperfine Interact. 8, 739 (1981)

  This yields an overall Lorentzian field distribution with motional narrowing.
  However, the present implementation is at best some design study:
  The Lorentzian distribution of width "a" is modeled by Gaussian distributions of widths "sigma" from 0 to infinity.
  Some "resonable cut-offs" would be: 0.1*a < sigma < 10000*a
  Due to finite memory and computing power, in the present version these cut-offs are: 0.1*a < sigma < 40*a
  This yields depolarization functions overall similar to those in Uemura's articles.
  However, due to the low cut-off the first derivative of the depolarization function is zero in the limit t->0
  (what should not be the case for a true Lorentzan).
  Furthermore, the calculation is rather slow and the resulting functions should only be regarded as crude approximations.
  Therefore, at the moment this is far from being of practical use in analyzing experimental data.
This commit is contained in:
Bastian M. Wojek
2011-03-12 21:13:51 +00:00
parent d634a9286c
commit 233ca10dff
18 changed files with 432 additions and 202 deletions

View File

@ -107,10 +107,10 @@ private:
double fDt;
double fDw;
double fC;
fftw_plan fFFTplanFORW;
fftw_plan fFFTplanBACK;
double *fFFTtime;
fftw_complex *fFFTfreq;
fftwf_plan fFFTplanFORW;
fftwf_plan fFFTplanBACK;
float *fFFTtime;
fftwf_complex *fFFTfreq;
mutable unsigned int fCounter;
ClassDef(TLFDynGssKT,1)
@ -137,10 +137,10 @@ private:
double fDt;
double fDw;
double fC;
fftw_plan fFFTplanFORW;
fftw_plan fFFTplanBACK;
double *fFFTtime;
fftw_complex *fFFTfreq;
fftwf_plan fFFTplanFORW;
fftwf_plan fFFTplanBACK;
float *fFFTtime;
fftwf_complex *fFFTfreq;
mutable unsigned int fCounter;
mutable double fL1;
mutable double fL2;
@ -148,6 +148,25 @@ private:
ClassDef(TLFDynLorKT,1)
};
class TLFDynSG : public PUserFcnBase {
public:
TLFDynSG();
~TLFDynSG();
Bool_t NeedGlobalPart() const { return false; }
void SetGlobalPart(vector<void *> &globalPart, UInt_t idx) { }
Bool_t GlobalPartIsValid() const { return true; }
double operator()(double, const vector<double>&) const;
private:
mutable vector<double> fPar;
vector<TLFDynGssKT*> fLFDynGssIntegral;
ClassDef(TLFDynSG,1)
};
class TLFSGInterpolation : public PUserFcnBase {
public: