#include <TEKFun.h>
Public Member Functions | |
TEKFun () | |
TEKFun (const double &th) | |
~TEKFun () | |
void | Init () |
void | Init (const double &) |
double | kfun (const double &) |
double | Eval (const double &x) |
double | Eval (const double &z1, const double &z2, const double &c) |
Protected Attributes | |
double | fxmin |
double | fxmax |
TRadSpline * | fk |
Definition at line 7 of file TEKFun.h.
TEKFun::TEKFun | ( | ) |
TEKFun::TEKFun | ( | const double & | th | ) |
TEKFun::~TEKFun | ( | ) |
double TEKFun::Eval | ( | const double & | z1, | |
const double & | z2, | |||
const double & | c | |||
) | [inline] |
double TEKFun::Eval | ( | const double & | x | ) | [inline] |
Definition at line 20 of file TEKFun.h.
References TRadSpline::Eval(), and fk.
Referenced by Eval(), and TEPCrossPart::GetValue().
void TEKFun::Init | ( | const double & | ) |
Definition at line 47 of file TEKFun.C.
References cos(), fk, fxmax, fxmin, and tkfun().
00047 { 00048 fxmin = -cos(theta); 00049 fxmax = cos(theta); 00050 // TF1 fkfun("kfun",tkfun,fxmin,fxmax,0); 00051 if(fk) delete fk; 00052 // TFile f("kfun.root","RECREATE"); 00053 fk = new TRadSpline3("k", fxmin, fxmax, tkfun, 10001); 00054 // fk->Write(); 00055 // fk->SetDirectory(0); 00056 }
void TEKFun::Init | ( | ) |
Definition at line 43 of file TEKFun.C.
References TRadGlobal::Get_ThetaMin(), and gGlobal.
Referenced by TEPCrossPart::Init(), and TEKFun().
00043 { 00044 Init(gGlobal->Get_ThetaMin()); 00045 }
double TEKFun::kfun | ( | const double & | ) |
Definition at line 7 of file TEKFun.C.
References TLi2::Eval(), gConst, and TConstants::Pi2().
Referenced by tkfun().
00007 { 00008 double sa = sqrt((1.-co)*0.5); 00009 double sa2 = sa*sa; 00010 double ca = sqrt((1.+co)*0.5); 00011 double ca2 = ca*ca; 00012 double c1 = log(sa); 00013 double c2 = log(ca); 00014 double co2 = co*co; 00015 double co3 = co2*co; 00016 double co4 = co2*co2; 00017 double k = -1. + 2.*TLi2::Eval(ca2) - 2.*TLi2::Eval(sa2)+ 00018 (gConst->Pi2()/3.*(2.*co4 - 3.*co3 - 15.*co) + 00019 2*(2*co4 - 3*co3 + 9*co2 + 3*co + 21.)*(c1*c1) - 00020 4.*(co4 + co2 - 2.*co)*c2*c2 - 00021 4.*(co3 + 4.*co2 + 5.*co + 6.)*(c1-c2)*(c1-c2) + 00022 2.*(co3 - 3.*co2 + 7.*co - 5.)*c2 + 00023 2.*(3.*co3 + 9.*co2 + 5.*co + 31.)*c1)/((3.+co2)*(3.+co2)); 00024 return k; 00025 }
TRadSpline* TEKFun::fk [protected] |
double TEKFun::fxmax [protected] |
double TEKFun::fxmin [protected] |