#include <TDFun.h>
Public Member Functions | |
TDFun () | |
TDFun (const double &, const double &) | |
~TDFun () | |
void | Init () |
void | Init (const double &, const double &) |
double | EvalSpline (const double &z) |
double | Eval (const double &z) |
double | Eval (const double &z, const double &b2, const double &D0) |
double | EvalSoft (const double &x) |
double | EvalSoft (const double &x, const double &b2, const double &D0) |
Protected Attributes | |
double | fxmin |
double | fxmax |
double | fD0 |
double | fb2 |
TRadSpline3 * | fd |
Definition at line 7 of file TDFun.h.
TDFun::TDFun | ( | ) |
TDFun::TDFun | ( | const double & | , | |
const double & | ||||
) |
TDFun::~TDFun | ( | ) |
double TDFun::Eval | ( | const double & | z, | |
const double & | b2, | |||
const double & | D0 | |||
) | [inline] |
Definition at line 32 of file TDFun.h.
References x.
00032 { 00033 double x = 1 - z; 00034 // double D = b2*pow(x,b2-1)*D0 - 0.5*b2*(1+z) - 00035 // b2*b2/8*(4*(1+z)*log(x)+(1+3*z*z)/x*log(z)+5+z); 00036 double D = b2*pow(x,b2-1)*D0 - 0.5*b2*(1+z) - 00037 b2*b2/8*(4*(1+z)*log(x)+(1+3*z*z)/x*log1p(-x)+5+z); 00038 return D; 00039 }
double TDFun::Eval | ( | const double & | z | ) | [inline] |
Definition at line 23 of file TDFun.h.
Referenced by TPiCrossPart::GetValue(), TMuCrossPart::GetValue(), TGGCrossPart::GetValue(), TEPCrossPart::GetValue(), and tdfun().
00023 { 00024 double x = 1 - z; 00025 // double D = fb2*pow(x,fb2-1)*fD0 - 0.5*fb2*(1+z) - 00026 // fb2*fb2/8*(4*(1+z)*log(x)+(1+3*z*z)/x*log(z)+5+z); 00027 double D = fb2*pow(x,fb2-1)*fD0 - 0.5*fb2*(1+z) - 00028 fb2*fb2/8*(4*(1+z)*log(x)+(1+3*z*z)/x*log1p(-x)+5+z); 00029 return D; 00030 }
double TDFun::EvalSoft | ( | const double & | x, | |
const double & | b2, | |||
const double & | D0 | |||
) | [inline] |
Definition at line 53 of file TDFun.h.
References exp().
00053 { 00054 double z = 1 - x; 00055 double lx = log(x); 00056 double t1 = exp(-b2*lx); 00057 double t2 = t1*x; 00058 // double D = D0 - t2*(0.5*(1+z) + b2/8*( 4*(1+z)*lx + 4 + (1+z))) - 00059 // b2/8*t1*(1+3*z*z)*log(z); 00060 double D = D0 - t2*(0.5*(1+z) + b2/8*( 4*(1+z)*lx + 4 + (1+z))) - 00061 b2/8*t1*(1+3*z*z)*log1p(-x); 00062 return D; 00063 }
double TDFun::EvalSoft | ( | const double & | x | ) | [inline] |
Definition at line 41 of file TDFun.h.
References exp(), fb2, and fD0.
Referenced by TPiCrossPart::GetValue(), TMuCrossPart::GetValue(), TGGCrossPart::GetValue(), and TEPCrossPart::GetValue().
00041 { 00042 double z = 1 - x; 00043 double lx = log(x); 00044 double t1 = exp(-fb2*lx); 00045 double t2 = t1*x; 00046 // double D = fD0 - t2*(0.5*(1+z) + fb2/8*( 4*(1+z)*lx + 4 + (1+z))) - 00047 // fb2/8*t1*(1+3*z*z)*log(z); 00048 double D = fD0 - t2*(0.5*(1+z) + fb2/8*( 4*(1+z)*lx + 4 + (1+z))) - 00049 fb2/8*t1*(1+3*z*z)*log1p(-x); 00050 return D; 00051 }
double TDFun::EvalSpline | ( | const double & | z | ) | [inline] |
void TDFun::Init | ( | const double & | , | |
const double & | ||||
) |
Definition at line 29 of file TDFun.C.
References djr, fb2, fd, fD0, fxmax, fxmin, TRadGlobal::Get_Beta(), TRadGlobal::Get_D0(), gGlobal, and tdfun().
00029 { 00030 fxmin = cmin; 00031 fxmax = cmax; 00032 fb2 = 0.5*gGlobal->Get_Beta(); 00033 fD0 = gGlobal->Get_D0(); 00034 djr = this; 00035 // TF1 fdfun("dfun",tdfun,fxmin,fxmax,0); 00036 if(fd) delete fd; 00037 fd = new TRadSpline3("d", fxmin, fxmax, tdfun, 10001); 00038 }
void TDFun::Init | ( | ) |
Definition at line 25 of file TDFun.C.
References TRadGlobal::Get_XMax(), TRadGlobal::Get_XMin(), and gGlobal.
Referenced by TPiCrossPart::Init(), TMuCrossPart::Init(), TGGCrossPart::Init(), TEPCrossPart::Init(), and TDFun().
double TDFun::fb2 [protected] |
TRadSpline3* TDFun::fd [protected] |
double TDFun::fD0 [protected] |
double TDFun::fxmax [protected] |
double TDFun::fxmin [protected] |