BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
TDFun Class Reference

#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
TRadSpline3fd

Detailed Description

Definition at line 7 of file TDFun.h.

Constructor & Destructor Documentation

◆ TDFun() [1/2]

TDFun::TDFun ( )

◆ TDFun() [2/2]

TDFun::TDFun ( const double & ,
const double &  )

◆ ~TDFun()

TDFun::~TDFun ( )

Member Function Documentation

◆ Eval() [1/2]

double TDFun::Eval ( const double & z)
inline

Definition at line 24 of file TDFun.h.

24 {
25 double x = 1 - z;
26 // double D = fb2*pow(x,fb2-1)*fD0 - 0.5*fb2*(1+z) -
27 // fb2*fb2/8*(4*(1+z)*log(x)+(1+3*z*z)/x*log(z)+5+z);
28 double D = fb2 * pow( x, fb2 - 1 ) * fD0 - 0.5 * fb2 * ( 1 + z ) -
29 fb2 * fb2 / 8 *
30 ( 4 * ( 1 + z ) * log( x ) + ( 1 + 3 * z * z ) / x * log1p( -x ) + 5 + z );
31 return D;
32 }
Double_t x[10]
double fb2
Definition TDFun.h:12
double fD0
Definition TDFun.h:11

◆ Eval() [2/2]

double TDFun::Eval ( const double & z,
const double & b2,
const double & D0 )
inline

Definition at line 34 of file TDFun.h.

34 {
35 double x = 1 - z;
36 // double D = b2*pow(x,b2-1)*D0 - 0.5*b2*(1+z) -
37 // b2*b2/8*(4*(1+z)*log(x)+(1+3*z*z)/x*log(z)+5+z);
38 double D = b2 * pow( x, b2 - 1 ) * D0 - 0.5 * b2 * ( 1 + z ) -
39 b2 * b2 / 8 *
40 ( 4 * ( 1 + z ) * log( x ) + ( 1 + 3 * z * z ) / x * log1p( -x ) + 5 + z );
41 return D;
42 }

◆ EvalSoft() [1/2]

double TDFun::EvalSoft ( const double & x)
inline

Definition at line 44 of file TDFun.h.

44 {
45 double z = 1 - x;
46 double lx = log( x );
47 double t1 = exp( -fb2 * lx );
48 double t2 = t1 * x;
49 // double D = fD0 - t2*(0.5*(1+z) + fb2/8*( 4*(1+z)*lx + 4 + (1+z))) -
50 // fb2/8*t1*(1+3*z*z)*log(z);
51 double D = fD0 -
52 t2 * ( 0.5 * ( 1 + z ) + fb2 / 8 * ( 4 * ( 1 + z ) * lx + 4 + ( 1 + z ) ) ) -
53 fb2 / 8 * t1 * ( 1 + 3 * z * z ) * log1p( -x );
54 return D;
55 }
EvtComplex exp(const EvtComplex &c)

◆ EvalSoft() [2/2]

double TDFun::EvalSoft ( const double & x,
const double & b2,
const double & D0 )
inline

Definition at line 57 of file TDFun.h.

57 {
58 double z = 1 - x;
59 double lx = log( x );
60 double t1 = exp( -b2 * lx );
61 double t2 = t1 * x;
62 // double D = D0 - t2*(0.5*(1+z) + b2/8*( 4*(1+z)*lx + 4 + (1+z))) -
63 // b2/8*t1*(1+3*z*z)*log(z);
64 double D = D0 -
65 t2 * ( 0.5 * ( 1 + z ) + b2 / 8 * ( 4 * ( 1 + z ) * lx + 4 + ( 1 + z ) ) ) -
66 b2 / 8 * t1 * ( 1 + 3 * z * z ) * log1p( -x );
67 return D;
68 }

◆ EvalSpline()

double TDFun::EvalSpline ( const double & z)
inline

Definition at line 22 of file TDFun.h.

22{ return fd->Eval( z ); }
TRadSpline3 * fd
Definition TDFun.h:13

◆ Init() [1/2]

void TDFun::Init ( )

◆ Init() [2/2]

void TDFun::Init ( const double & ,
const double &  )

Member Data Documentation

◆ fb2

double TDFun::fb2
protected

Definition at line 12 of file TDFun.h.

Referenced by Eval(), and EvalSoft().

◆ fd

TRadSpline3* TDFun::fd
protected

Definition at line 13 of file TDFun.h.

Referenced by EvalSpline().

◆ fD0

double TDFun::fD0
protected

Definition at line 11 of file TDFun.h.

Referenced by Eval(), and EvalSoft().

◆ fxmax

double TDFun::fxmax
protected

Definition at line 10 of file TDFun.h.

◆ fxmin

double TDFun::fxmin
protected

Definition at line 9 of file TDFun.h.


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