TVCrossPart Class Reference

#include <TVCrossPart.h>

Inheritance diagram for TVCrossPart:

TEPCrossPart TGGCrossPart TMuCrossPart TPiCrossPart TKcCrossPart TKnCrossPart List of all members.

Public Member Functions

 TVCrossPart ()
virtual ~TVCrossPart ()
virtual void Init ()
virtual double GetValue (const unsigned int)
void PrintEvent ()
void GetEvent (double &p0, double &t0, double &ph0, double &p1, double &t1, double &ph)
void GetEvent (double *m, int &n)
TEventGetEvent ()
unsigned int GetNPart ()
virtual void SetThetaMin (const double &)=0
virtual void SetHardPhoton (const bool &x)
void SetZeroVP ()
void SetDefaultVP ()
void SetNoFSR ()
virtual double BornShift (const double &, const double &, const double &)=0
double BornCrossSection (const double &)

Protected Attributes

unsigned int fNPart
TEventfEvent
TDFunfD
bool fHardPhoton
bool fZeroVP
bool fNoFSR

Detailed Description

Definition at line 7 of file TVCrossPart.h.


Constructor & Destructor Documentation

TVCrossPart::TVCrossPart (  )  [inline]

Definition at line 16 of file TVCrossPart.h.

00016 {};

virtual TVCrossPart::~TVCrossPart (  )  [inline, virtual]

Definition at line 17 of file TVCrossPart.h.

00017 {};


Member Function Documentation

double TVCrossPart::BornCrossSection ( const double &   ) 

Definition at line 4 of file TVCrossPart.C.

References BornShift(), cos(), fEvent, fZeroVP, genRecEmupikp::i, Init(), M_PI, TEvent::MakeEvent(), and x.

Referenced by main().

00004                                                        {
00005   //save vacuum polarization status 
00006   bool tempVP = fZeroVP;
00007   // set zero vacuum polarization to calculate Born cross-section
00008   fZeroVP = true;
00009   Init();
00010 
00011   // integration in symmetric angle
00012   int NInt = 1<<14;
00013   double x, gsum = 0., h=-(cos(M_PI-theta)-cos(theta))/NInt;
00014   // simpson integration
00015   x = cos(M_PI-theta); fEvent->MakeEvent(x); gsum += BornShift(1,1,x);
00016   for(int i=1; i<NInt; i++){
00017     x += h; fEvent->MakeEvent(x); gsum += 2*(1+i%2)*BornShift(1,1,x);
00018   }
00019   x += h; fEvent->MakeEvent(x); gsum += BornShift(1,1,x);
00020 
00021   //restore vacuum polarization status
00022   fZeroVP = tempVP;
00023   Init();
00024 
00025   return gsum*h/3;
00026 }

virtual double TVCrossPart::BornShift ( const double &  ,
const double &  ,
const double &   
) [pure virtual]

Implemented in TEPCrossPart, TGGCrossPart, TMuCrossPart, and TPiCrossPart.

Referenced by BornCrossSection().

TEvent* TVCrossPart::GetEvent (  )  [inline]

Definition at line 28 of file TVCrossPart.h.

References fEvent.

00028 {return fEvent;}

void TVCrossPart::GetEvent ( double *  m,
int &  n 
) [inline]

Definition at line 25 of file TVCrossPart.h.

References fEvent, and TEvent::GetEvent().

00025                                          {
00026     fEvent->GetEvent(m,n);
00027   }

void TVCrossPart::GetEvent ( double &  p0,
double &  t0,
double &  ph0,
double &  p1,
double &  t1,
double &  ph 
) [inline]

Definition at line 21 of file TVCrossPart.h.

References fEvent, and TEvent::GetEvent().

Referenced by TRadCor::GetEvent(), hist_sample(), main(), TRadCor::MakeEvent(), TRadCor::MakeIntegral(), and TRadCor::MakeMaximum().

00022                                                           {
00023     fEvent->GetEvent(p0, t0, ph0, p1, t1, ph);
00024   }

unsigned int TVCrossPart::GetNPart (  )  [inline]

Definition at line 29 of file TVCrossPart.h.

References fNPart.

Referenced by main(), and TRadCor::TRadCor().

00029 {return fNPart;}

virtual double TVCrossPart::GetValue ( const unsigned int   )  [inline, virtual]

Reimplemented in TEPCrossPart, TGGCrossPart, TMuCrossPart, and TPiCrossPart.

Definition at line 19 of file TVCrossPart.h.

Referenced by TRadCor::MakeEvent(), TRadCor::MakeIntegral(), and TRadCor::MakeMaximum().

00019 {return 0;};

virtual void TVCrossPart::Init (  )  [inline, virtual]

Reimplemented in TEPCrossPart, TGGCrossPart, TMuCrossPart, and TPiCrossPart.

Definition at line 18 of file TVCrossPart.h.

Referenced by BornCrossSection(), and TRadCor::Init().

00018 {};

void TVCrossPart::PrintEvent (  )  [inline]

Definition at line 20 of file TVCrossPart.h.

References fEvent, and TEvent::Print().

00020 {fEvent->Print();}

void TVCrossPart::SetDefaultVP (  )  [inline]

Definition at line 33 of file TVCrossPart.h.

References fZeroVP.

00033 {fZeroVP = false;}

virtual void TVCrossPart::SetHardPhoton ( const bool x  )  [inline, virtual]

Definition at line 31 of file TVCrossPart.h.

References fHardPhoton.

Referenced by init_prime_gen_(), Mcgpj::initialize(), and main().

00031 {fHardPhoton = x;}

void TVCrossPart::SetNoFSR (  )  [inline]

Definition at line 34 of file TVCrossPart.h.

References fNoFSR.

Referenced by init_prime_gen_(), Mcgpj::initialize(), and main().

00034 {fNoFSR = true;}

virtual void TVCrossPart::SetThetaMin ( const double &   )  [pure virtual]

Implemented in TEPCrossPart, TGGCrossPart, TMuCrossPart, and TPiCrossPart.

Referenced by TRadCor::SetSpecialCase().

void TVCrossPart::SetZeroVP (  )  [inline]

Definition at line 32 of file TVCrossPart.h.

References fZeroVP.

Referenced by init_prime_gen_(), Mcgpj::initialize(), and main().

00032 {fZeroVP = true;}


Member Data Documentation

TDFun* TVCrossPart::fD [protected]

Definition at line 11 of file TVCrossPart.h.

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

TEvent* TVCrossPart::fEvent [protected]

Definition at line 10 of file TVCrossPart.h.

Referenced by BornCrossSection(), TPiCrossPart::BornShift(), TMuCrossPart::BornShift(), TEPCrossPart::BornShift(), GetEvent(), TPiCrossPart::GetValue(), TMuCrossPart::GetValue(), TGGCrossPart::GetValue(), TEPCrossPart::GetValue(), TPiCrossPart::Init(), TMuCrossPart::Init(), TGGCrossPart::Init(), TEPCrossPart::Init(), PrintEvent(), TGGCrossPart::R_3_Gamma(), TMuCrossPart::R_e_Gamma(), TMuCrossPart::R_e_Gamma_t(), TMuCrossPart::R_e_mu_Gamma_t(), TMuCrossPart::R_f_Gamma(), TPiCrossPart::R_Gamma(), TPiCrossPart::R_Gamma_kuraev_eidelman(), TPiCrossPart::R_Gamma_t(), TEPCrossPart::RGamma(), TEPCrossPart::RGamma_kuraev_eidelman(), TEPCrossPart::TEPCrossPart(), TGGCrossPart::TGGCrossPart(), TMuCrossPart::TMuCrossPart(), TPiCrossPart::TPiCrossPart(), TEPCrossPart::~TEPCrossPart(), TGGCrossPart::~TGGCrossPart(), TMuCrossPart::~TMuCrossPart(), and TPiCrossPart::~TPiCrossPart().

bool TVCrossPart::fHardPhoton [protected]

Definition at line 12 of file TVCrossPart.h.

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

bool TVCrossPart::fNoFSR [protected]

Definition at line 14 of file TVCrossPart.h.

Referenced by TPiCrossPart::GetValue(), TMuCrossPart::GetValue(), TMuCrossPart::R_e_Gamma(), TPiCrossPart::R_Gamma(), TPiCrossPart::R_Gamma_t(), SetNoFSR(), TGGCrossPart::TGGCrossPart(), TKnCrossPart::TKnCrossPart(), TMuCrossPart::TMuCrossPart(), and TPiCrossPart::TPiCrossPart().

unsigned int TVCrossPart::fNPart [protected]

Definition at line 9 of file TVCrossPart.h.

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

bool TVCrossPart::fZeroVP [protected]

Definition at line 13 of file TVCrossPart.h.

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


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