TPhotonF Class Reference

#include <TPhoton.h>

Inheritance diagram for TPhotonF:

TPhoton TPhotonFS List of all members.

Public Member Functions

 TPhotonF ()
void Init ()
double GetEnergy ()
double GetENorm ()
double GetMinimum ()
double GetMaximum ()
virtual double GetCosTheta ()
virtual double GetThNorm ()
virtual double GetCosThetaF ()
virtual double GetThNormF ()
virtual double GetCosThetaF2 ()
virtual double GetThNormF2 ()
double GetPhE ()
double GetPhC ()
void SetCosTheta (const double &x)
void SetEnergy (const double &x)

Static Public Member Functions

static double GetPhi ()
static double GetPhiNorm ()

Protected Attributes

double fNorm
double fP0
double fP1
double fP2
double fP3
double fxmin
double fxmax
double fX
double fCosTheta
double fLnD
double fBetaI
double fiBetaI
double fLnD_n
double fBt
double fLnD_n2
double fBt2

Detailed Description

Definition at line 92 of file TPhoton.h.


Constructor & Destructor Documentation

TPhotonF::TPhotonF (  )  [inline]

Definition at line 94 of file TPhoton.h.

00094 :TPhoton(){};


Member Function Documentation

virtual double TPhoton::GetCosTheta (  )  [inline, virtual, inherited]

Reimplemented in TPhotonFS.

Definition at line 32 of file TPhoton.h.

References exp(), TPhoton::fBetaI, TPhoton::fCosTheta, and TPhoton::fLnD.

Referenced by TEvent::MakeEvent().

00032                                      {
00033     double d = exp(fLnD*(2*gRandom->Rndm() - 1));
00034     fCosTheta = (d - 1)/(fBetaI*(d + 1));
00035     return fCosTheta;
00036   }

virtual double TPhoton::GetCosThetaF (  )  [inline, virtual, inherited]

Definition at line 42 of file TPhoton.h.

References exp(), TPhoton::fBetaI, TPhoton::fBt, TPhoton::fCosTheta, and TPhoton::fLnD_n.

Referenced by TEvent::MakeEvent().

00042                                       {
00043     double d = fBt*exp(fLnD_n*gRandom->Rndm());
00044     fCosTheta = (d - 1)/(fBetaI*(d + 1));
00045     return fCosTheta;
00046   }

virtual double TPhoton::GetCosThetaF2 (  )  [inline, virtual, inherited]

Definition at line 52 of file TPhoton.h.

References exp(), TPhoton::fBt2, TPhoton::fCosTheta, TPhoton::fiBetaI, and TPhoton::fLnD_n2.

00052                                        {
00053     double d = fBt2*exp(fLnD_n2*gRandom->Rndm());
00054     fCosTheta = (1-d)*fiBetaI;
00055     return fCosTheta;
00056   }

double TPhotonF::GetEnergy (  )  [inline, virtual]

Reimplemented from TPhoton.

Definition at line 96 of file TPhoton.h.

References exp(), TPhoton::fP0, TPhoton::fP1, and TPhoton::fX.

Referenced by TEPCrossPart::GetValue().

00096                            {
00097     fX = fP0*exp(gRandom->Rndm()*fP1);
00098     return fX;
00099   }

double TPhotonF::GetENorm (  )  [inline, virtual]

Reimplemented from TPhoton.

Definition at line 100 of file TPhoton.h.

References TPhoton::fNorm, and TPhoton::fX.

Referenced by TEPCrossPart::GetValue().

00100 {return fNorm*fX;}

double TPhoton::GetMaximum (  )  [inline, inherited]

Definition at line 30 of file TPhoton.h.

References TPhoton::fxmax.

00030 {return fxmax;}

double TPhoton::GetMinimum (  )  [inline, inherited]

Definition at line 29 of file TPhoton.h.

References TPhoton::fxmin.

00029 {return fxmin;}

double TPhoton::GetPhC (  )  [inline, inherited]

Definition at line 68 of file TPhoton.h.

References TPhoton::fCosTheta.

00068 {return fCosTheta;}

double TPhoton::GetPhE (  )  [inline, inherited]

Definition at line 67 of file TPhoton.h.

References TPhoton::fX.

00067 {return fX;}

static double TPhoton::GetPhi (  )  [inline, static, inherited]

Definition at line 62 of file TPhoton.h.

References M_PI.

Referenced by TEvent::MakeEvent().

00062                         {
00063     return 2*gRandom->Rndm()*M_PI;
00064   }

static double TPhoton::GetPhiNorm (  )  [inline, static, inherited]

Definition at line 65 of file TPhoton.h.

References M_PI.

Referenced by TPiCrossPart::GetValue(), TMuCrossPart::GetValue(), TGGCrossPart::GetValue(), and TEPCrossPart::GetValue().

00065 {return 2*M_PI;}

virtual double TPhoton::GetThNorm (  )  [inline, virtual, inherited]

Reimplemented in TPhotonFS.

Definition at line 37 of file TPhoton.h.

References TPhoton::fBetaI, TPhoton::fCosTheta, and TPhoton::fLnD.

Referenced by TPiCrossPart::GetValue(), TMuCrossPart::GetValue(), TGGCrossPart::GetValue(), and TEPCrossPart::GetValue().

00037                                    {
00038     double k = fBetaI*fCosTheta;
00039     return fLnD*(1 - k*k);
00040   }

virtual double TPhoton::GetThNormF (  )  [inline, virtual, inherited]

Definition at line 47 of file TPhoton.h.

References TPhoton::fBetaI, TPhoton::fCosTheta, TPhoton::fiBetaI, and TPhoton::fLnD_n.

Referenced by TEPCrossPart::GetValue().

00047                                     {
00048     double k = fBetaI*fCosTheta;
00049     return -0.5*fiBetaI*fLnD_n*(1 - k*k);
00050   }

virtual double TPhoton::GetThNormF2 (  )  [inline, virtual, inherited]

Definition at line 57 of file TPhoton.h.

References TPhoton::fBetaI, TPhoton::fCosTheta, TPhoton::fiBetaI, and TPhoton::fLnD_n2.

00057                                      {
00058     double k = fBetaI*fCosTheta;
00059     return fiBetaI*fLnD_n2*(1 - k);
00060   }

void TPhotonF::Init (  )  [virtual]

Reimplemented from TPhoton.

Definition at line 17 of file TPhoton.C.

References TPhoton::fBetaI, TPhoton::fBt, TPhoton::fBt2, TPhoton::fiBetaI, TPhoton::fLnD, TPhoton::fLnD_n, TPhoton::fLnD_n2, TPhoton::fNorm, TPhoton::fP0, TPhoton::fP1, TRadGlobal::Get_BetaI(), TRadGlobal::Get_CosTheta0(), TRadGlobal::Get_LnD(), TRadGlobal::Get_XMax(), TRadGlobal::Get_XMin(), and gGlobal.

Referenced by TPiCrossPart::Init(), TMuCrossPart::Init(), and TEPCrossPart::Init().

00017                    {
00018   // Initializing photons in final state 
00019   // by distribution 1/x
00020   fP0 = gGlobal->Get_XMin();
00021   fP1 = gGlobal->Get_XMax()/fP0;
00022   fNorm = log(fP1);
00023   fP1 = fNorm; // to increase speed of exponent in GetEnergy
00024   fBetaI = gGlobal->Get_BetaI();
00025   fLnD   = gGlobal->Get_LnD();
00026 
00027   fiBetaI = 1/fBetaI;
00028   double c1 = gGlobal->Get_CosTheta0();
00029   double c2 = -1;// + 0.5*(1-c1);
00030   fBt    = (1 + fBetaI*c1)/(1 - fBetaI*c1);
00031   fLnD_n = log(1./fBt*(1. + fBetaI*c2)/(1. - fBetaI*c2));
00032 
00033   fBt2    = 1 - fBetaI*c1;
00034   fLnD_n2 = log((1. - fBetaI*c2)/(1 - fBetaI*c1));
00035   //  cout<<DB(fBt)<<DB(fLnD_n)<<DB(fLnD)<<endl<<flush;
00036   //  exit(0);
00037 }

void TPhoton::SetCosTheta ( const double &  x  )  [inline, inherited]

Definition at line 72 of file TPhoton.h.

References TPhoton::fCosTheta.

Referenced by TEvent::MakeEvent().

00072 {fCosTheta = x;}

void TPhoton::SetEnergy ( const double &  x  )  [inline, inherited]

Definition at line 73 of file TPhoton.h.

References TPhoton::fX.

Referenced by TEvent::MakeEvent().

00073 {fX = x;}


Member Data Documentation

double TPhoton::fBetaI [protected, inherited]

Definition at line 19 of file TPhoton.h.

Referenced by TPhoton::GetCosTheta(), TPhoton::GetCosThetaF(), TPhoton::GetThNorm(), TPhoton::GetThNormF(), TPhoton::GetThNormF2(), TPhotonD::Init(), TPhotonS::Init(), Init(), and TPhotonI::Init().

double TPhoton::fBt [protected, inherited]

Definition at line 22 of file TPhoton.h.

Referenced by TPhoton::GetCosThetaF(), and Init().

double TPhoton::fBt2 [protected, inherited]

Definition at line 24 of file TPhoton.h.

Referenced by TPhoton::GetCosThetaF2(), and Init().

double TPhoton::fCosTheta [protected, inherited]

Definition at line 17 of file TPhoton.h.

Referenced by TPhotonFS::GetCosTheta(), TPhoton::GetCosTheta(), TPhoton::GetCosThetaF(), TPhoton::GetCosThetaF2(), TPhoton::GetPhC(), TPhoton::GetThNorm(), TPhoton::GetThNormF(), TPhoton::GetThNormF2(), and TPhoton::SetCosTheta().

double TPhoton::fiBetaI [protected, inherited]

Definition at line 20 of file TPhoton.h.

Referenced by TPhoton::GetCosThetaF2(), TPhoton::GetThNormF(), TPhoton::GetThNormF2(), and Init().

double TPhoton::fLnD [protected, inherited]

Definition at line 18 of file TPhoton.h.

Referenced by TPhoton::GetCosTheta(), TPhoton::GetThNorm(), TPhotonD::Init(), TPhotonS::Init(), Init(), and TPhotonI::Init().

double TPhoton::fLnD_n [protected, inherited]

Definition at line 21 of file TPhoton.h.

Referenced by TPhoton::GetCosThetaF(), TPhoton::GetThNormF(), and Init().

double TPhoton::fLnD_n2 [protected, inherited]

Definition at line 23 of file TPhoton.h.

Referenced by TPhoton::GetCosThetaF2(), TPhoton::GetThNormF2(), and Init().

double TPhoton::fNorm [protected, inherited]

Definition at line 9 of file TPhoton.h.

Referenced by TPhotonD::GetEnergy(), TPhotonD::GetENorm(), TPhotonS::GetENorm(), GetENorm(), TPhotonI::GetENorm(), TPhotonD::Init(), TPhotonS::Init(), Init(), and TPhotonI::Init().

double TPhoton::fP0 [protected, inherited]

Definition at line 10 of file TPhoton.h.

Referenced by TPhotonD::GetEnergy(), TPhotonS::GetEnergy(), GetEnergy(), TPhotonI::GetEnergy(), TPhotonD::Init(), TPhotonS::Init(), Init(), and TPhotonI::Init().

double TPhoton::fP1 [protected, inherited]

Definition at line 11 of file TPhoton.h.

Referenced by TPhotonD::GetEnergy(), TPhotonS::GetEnergy(), GetEnergy(), TPhotonI::GetEnergy(), TPhotonD::Init(), TPhotonS::Init(), Init(), and TPhotonI::Init().

double TPhoton::fP2 [protected, inherited]

Reimplemented in TPhotonS.

Definition at line 12 of file TPhoton.h.

double TPhoton::fP3 [protected, inherited]

Reimplemented in TPhotonS.

Definition at line 13 of file TPhoton.h.

double TPhoton::fX [protected, inherited]

Definition at line 16 of file TPhoton.h.

Referenced by TPhotonD::GetEnergy(), TPhotonS::GetEnergy(), GetEnergy(), TPhotonI::GetEnergy(), GetENorm(), TPhotonI::GetENorm(), TPhoton::GetPhE(), TPhotonS::GetX(), TPhotonS::GetXNorm(), and TPhoton::SetEnergy().

double TPhoton::fxmax [protected, inherited]

Definition at line 15 of file TPhoton.h.

Referenced by TPhoton::GetMaximum().

double TPhoton::fxmin [protected, inherited]

Definition at line 14 of file TPhoton.h.

Referenced by TPhoton::GetMinimum().


Generated on Tue Nov 29 23:36:08 2016 for BOSS_7.0.2 by  doxygen 1.4.7