#include <TKnFormFactor.h>
Inheritance diagram for TKnFormFactor:
Public Member Functions | |
TKnFormFactor () | |
~TKnFormFactor () | |
void | SetUnitFF () |
void | SetDefaultFF () |
bool | GetFFMode () |
void | SetNpoints (const unsigned int &i) |
void | Init () |
void | Init (const double &) |
std::complex< double > | Eval (const double &s) |
void | Print () |
Protected Member Functions | |
std::complex< double > | ff (const double &) |
Protected Attributes | |
unsigned int | fNp |
TRadSpline * | fsvsr |
TRadSpline * | fsvsi |
bool | fUnitFF |
Definition at line 7 of file TKnFormFactor.h.
TKnFormFactor::TKnFormFactor | ( | ) |
TKnFormFactor::~TKnFormFactor | ( | ) |
std::complex<double> TFormFactor::Eval | ( | const double & | s | ) | [inline, inherited] |
Definition at line 23 of file TFormFactor.h.
References TRadSpline::Eval(), TFormFactor::fsvsi, TFormFactor::fsvsr, and TFormFactor::fUnitFF.
Referenced by TPiCrossPart::BornShift(), isr(), main(), TFormFactor::Print(), TPiCrossPart::R_Gamma(), TPiCrossPart::R_Gamma_kuraev_eidelman(), and TPiCrossPart::R_Gamma_t().
00023 { 00024 if(fUnitFF) return std::complex<double>(1,0); 00025 return std::complex<double>(fsvsr->Eval(s),fsvsi->Eval(s)); 00026 }
std::complex< double > TKnFormFactor::ff | ( | const double & | ) | [protected, virtual] |
bool TFormFactor::GetFFMode | ( | ) | [inline, inherited] |
Definition at line 19 of file TFormFactor.h.
References TFormFactor::fUnitFF.
00019 {return fUnitFF;}
void TFormFactor::Init | ( | const double & | ) | [inherited] |
Definition at line 30 of file TFormFactor.C.
References TFormFactor::ff(), TFormFactor::fNp, TFormFactor::fsvsi, TFormFactor::fsvsr, TRadGlobal::Get_MF2(), TRadGlobal::Get_s(), gGlobal, genRecEmupikp::i, imag(), and s.
00030 { 00031 double *s = new double[fNp]; 00032 double *re_vs = new double[fNp]; 00033 double *im_vs = new double[fNp]; 00034 /* 00035 for(int i = 1;i<=1;i++){ 00036 double en = 500 + i; 00037 std::complex<double> form = ff(pow(2*en,2)); 00038 std::cout<< en << " " << form<<" "<<std::abs(form*std::conj(form))<<std::endl; 00039 } 00040 exit(0); 00041 */ 00042 double smin = gGlobal->Get_MF2()*gGlobal->Get_s(); 00043 double ds = (smax-smin)/(fNp-1); 00044 for(unsigned int i=0; i<fNp; i++){ 00045 s[i] = smin + i*ds; 00046 std::complex<double> vs = ff( (i>0) ? s[i] : smin + 0.01*ds); 00047 // std::cout<<i<<" "<<s[i]<<" "<<vs<<std::endl; 00048 re_vs[i] = std::real(vs); 00049 im_vs[i] = std::imag(vs); 00050 } 00051 00052 if(fsvsr) delete fsvsr; 00053 fsvsr = new TRadSpline3("vsr", s, re_vs, fNp); 00054 00055 if(fsvsi) delete fsvsi; 00056 fsvsi = new TRadSpline3("vsi", s, im_vs, fNp); 00057 00058 delete [] re_vs; 00059 delete [] im_vs; 00060 delete [] s; 00061 }
void TFormFactor::Init | ( | ) | [inherited] |
Definition at line 21 of file TFormFactor.C.
References TRadGlobal::Get_s(), and gGlobal.
Referenced by TPiCrossPart::Init(), and main().
00021 { 00022 #ifndef ALONE 00023 double smax = gGlobal->Get_s(); 00024 #else 00025 double smax = 4*800*800; 00026 #endif 00027 Init(smax); 00028 }
void TFormFactor::Print | ( | ) | [inherited] |
Definition at line 63 of file TFormFactor.C.
References abs, conj(), TFormFactor::Eval(), TRadGlobal::Get_s(), and gGlobal.
00063 { 00064 #ifndef ALONE 00065 std::complex<double> form = Eval(gGlobal->Get_s()); 00066 #else 00067 std::complex<double> form = Eval(4*200*200); 00068 #endif 00069 std::cout<<"Formfactor is "<<form<<std::endl; 00070 std::cout<<"Squared formfactor is "<<std::abs(form*std::conj(form))<<std::endl; 00071 std::cout<<std::flush; 00072 }
void TFormFactor::SetDefaultFF | ( | ) | [inline, inherited] |
Definition at line 18 of file TFormFactor.h.
References TFormFactor::fUnitFF.
Referenced by TPiCrossPart::Init().
00018 {fUnitFF = false;}
void TFormFactor::SetNpoints | ( | const unsigned int & | i | ) | [inline, inherited] |
void TFormFactor::SetUnitFF | ( | ) | [inline, inherited] |
Definition at line 17 of file TFormFactor.h.
References TFormFactor::fUnitFF.
Referenced by TPiCrossPart::Init(), and main().
00017 {fUnitFF = true;}
unsigned int TFormFactor::fNp [protected, inherited] |
Definition at line 9 of file TFormFactor.h.
Referenced by TFormFactor::Init(), TFormFactor::SetNpoints(), and TFormFactor::TFormFactor().
TRadSpline* TFormFactor::fsvsi [protected, inherited] |
Definition at line 11 of file TFormFactor.h.
Referenced by TFormFactor::Eval(), TFormFactor::Init(), TFormFactor::TFormFactor(), and TFormFactor::~TFormFactor().
TRadSpline* TFormFactor::fsvsr [protected, inherited] |
Definition at line 10 of file TFormFactor.h.
Referenced by TFormFactor::Eval(), TFormFactor::Init(), TFormFactor::TFormFactor(), and TFormFactor::~TFormFactor().
bool TFormFactor::fUnitFF [protected, inherited] |
Definition at line 12 of file TFormFactor.h.
Referenced by TFormFactor::Eval(), TFormFactor::GetFFMode(), TFormFactor::SetDefaultFF(), TFormFactor::SetUnitFF(), and TFormFactor::TFormFactor().