diff --git a/src/classes/PTheory.cpp b/src/classes/PTheory.cpp index 5bc21970..b41436f7 100644 --- a/src/classes/PTheory.cpp +++ b/src/classes/PTheory.cpp @@ -385,6 +385,10 @@ double PTheory::Func(register double t, const PDoubleVector& paramValues, const return DynamicGaussKTLF(t, paramValues, funcValues) * fMul->Func(t, paramValues, funcValues) + fAdd->Func(t, paramValues, funcValues); break; + case THEORY_STATIC_LORENTZ_KT: + return StaticLorentzKT(t, paramValues, funcValues) * fMul->Func(t, paramValues, funcValues) + + fAdd->Func(t, paramValues, funcValues); + break; case THEORY_STATIC_LORENTZ_KT_LF: return StaticLorentzKTLF(t, paramValues, funcValues) * fMul->Func(t, paramValues, funcValues) + fAdd->Func(t, paramValues, funcValues); @@ -465,6 +469,9 @@ double PTheory::Func(register double t, const PDoubleVector& paramValues, const case THEORY_DYNAMIC_GAUSS_KT_LF: return DynamicGaussKTLF(t, paramValues, funcValues) * fMul->Func(t, paramValues, funcValues); break; + case THEORY_STATIC_LORENTZ_KT: + return StaticLorentzKT(t, paramValues, funcValues) * fMul->Func(t, paramValues, funcValues); + break; case THEORY_STATIC_LORENTZ_KT_LF: return StaticLorentzKTLF(t, paramValues, funcValues) * fMul->Func(t, paramValues, funcValues); break; @@ -534,6 +541,9 @@ double PTheory::Func(register double t, const PDoubleVector& paramValues, const case THEORY_DYNAMIC_GAUSS_KT_LF: return DynamicGaussKTLF(t, paramValues, funcValues) + fAdd->Func(t, paramValues, funcValues); break; + case THEORY_STATIC_LORENTZ_KT: + return StaticLorentzKT(t, paramValues, funcValues) + fAdd->Func(t, paramValues, funcValues); + break; case THEORY_STATIC_LORENTZ_KT_LF: return StaticLorentzKTLF(t, paramValues, funcValues) + fAdd->Func(t, paramValues, funcValues); break; @@ -601,6 +611,9 @@ double PTheory::Func(register double t, const PDoubleVector& paramValues, const case THEORY_DYNAMIC_GAUSS_KT_LF: return DynamicGaussKTLF(t, paramValues, funcValues); break; + case THEORY_STATIC_LORENTZ_KT: + return StaticLorentzKT(t, paramValues, funcValues); + break; case THEORY_STATIC_LORENTZ_KT_LF: return StaticLorentzKTLF(t, paramValues, funcValues); break; @@ -1156,6 +1169,39 @@ double PTheory::DynamicGaussKTLF(register double t, const PDoubleVector& paramVa return result; } +//-------------------------------------------------------------------------- +/** + *

(see Uemura et al. PRB 31, 546 (85)) + * + * \param t time in \f$(\mu\mathrm{s})\f$ + * \param paramValues + */ +double PTheory::StaticLorentzKT(register double t, const PDoubleVector& paramValues, const PDoubleVector& funcValues) const +{ + // expected parameters: lambda [tshift] + + double val[2]; + + assert(fParamNo.size() <= 2); + + // check if FUNCTIONS are used + for (unsigned int i=0; i @@ -1446,11 +1492,11 @@ double PTheory::Abragam(register double t, const PDoubleVector& paramValues, con */ double PTheory::InternalField(register double t, const PDoubleVector& paramValues, const PDoubleVector& funcValues) const { - // expected parameters: phase frequency rateT rateL [tshift] + // expected parameters: fraction phase frequency rateT rateL [tshift] - double val[5]; + double val[6]; - assert(fParamNo.size() <= 5); + assert(fParamNo.size() <= 6); // check if FUNCTIONS are used for (unsigned int i=0; i