TEKFun Class Reference

#include <TEKFun.h>

List of all members.

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
TRadSplinefk


Detailed Description

Definition at line 7 of file TEKFun.h.


Constructor & Destructor Documentation

TEKFun::TEKFun (  ) 

Definition at line 37 of file TEKFun.C.

References fk, Init(), and kjr.

00037               {
00038   fk = NULL;
00039   kjr = this;
00040   Init();
00041 }

TEKFun::TEKFun ( const double &  th  ) 

Definition at line 58 of file TEKFun.C.

References fk, Init(), and kjr.

00058                                  {
00059   fk = NULL;
00060   kjr = this;
00061   Init(theta);
00062 }

TEKFun::~TEKFun (  ) 

Definition at line 64 of file TEKFun.C.

References fk.

00064                {
00065   delete fk;
00066 }


Member Function Documentation

double TEKFun::Eval ( const double &  z1,
const double &  z2,
const double &  c 
) [inline]

Definition at line 21 of file TEKFun.h.

References Eval(), and v.

00021                                                                          {
00022     double v  = (z1-z2)/(z1+z2);
00023     double cs = (c-v)/(1-c*v);
00024     //    std::cout<<"KKK "<<z1<<" "<<z2<<" "<<c<<" "<<cs<<std::endl;
00025     return Eval(cs);
00026   }

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().

00020 {return fk->Eval(x);}

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 }


Member Data Documentation

TRadSpline* TEKFun::fk [protected]

Definition at line 12 of file TEKFun.h.

Referenced by Eval(), Init(), TEKFun(), and ~TEKFun().

double TEKFun::fxmax [protected]

Definition at line 10 of file TEKFun.h.

Referenced by Init().

double TEKFun::fxmin [protected]

Definition at line 9 of file TEKFun.h.

Referenced by Init().


Generated on Tue Nov 29 23:35:59 2016 for BOSS_7.0.2 by  doxygen 1.4.7