|
|
Go to the documentation of this file.
6 #ifndef CROSSSECTION_HH
7 #define CROSSSECTION_HH
19 #include "CLHEP/Vector/LorentzVector.h"
20 #include "CLHEP/Vector/ThreeVector.h"
33 class HepRandomEngine;
39 typedef std::pair<double, double>
fEntry;
53 double AlphaS(
const double &);
57 inline double GetRg(
const double &x_,
const double &Qt) {
return (
Rg_(x_, Qt)); };
61 if (
x1 > 1.0 ||
x2 > 1.0) {
72 inline double GetB() {
return (
B); };
103 void SetKinematics(
const double &,
const double &,
const double &,
const double &,
const double &,
const double &);
110 double Fg1Fg2(
const double &,
const double &,
const double &);
111 double Fg1Fg2(
const int &,
const double &,
const double &);
113 inline double Fg_Qt2(
const double &Qt2_,
const double &x_,
const double &xp_) {
114 double grad = 5.0 * (
Txg(1.1 * Qt2_, x_) -
Txg(0.9 * Qt2_, x_)) / Qt2_;
124 template <
typename T_>
137 double T(
const double &);
138 double TFast(
const double &);
141 std::map<double, std::map<double, double> >
TMap2d;
144 double Txg(
const double &,
const double &);
146 double Rg1Rg2(
const double &);
147 double Rg_(
const double &,
double);
149 std::map<double, std::map<double, double> >
RgMap2d;
150 std::map<double, std::map<double, double> >::iterator
RgHigh[2],
RgLow[2];
168 std::map<std::string, PConstVoidPair>
PMap;
187 std::complex<double>
F0(
const double &);
188 std::complex<double>
f(
const double &);
189 std::complex<double>
Fsf(
const double &);
194 double x1,
x1p,
x2,
x2p,
t1,
t2,
sHat,
SqrtsHat,
sHat2,
InvsHat,
InvsHat2,
InvSqrtsHat,
y,
PPhi,
Phi1,
Phi2,
Mju2,
double AlphaS(const double &)
double Rg_(const double &, double)
std::complex< double > F0(const double &)
virtual double SubProcess()=0
double Rg1Rg2(const double &)
std::pair< const char *, char * > PCharPair
std::pair< double, double > fEntry
double Fg1Fg2(const double &, const double &, const double &)
std::map< double, std::map< double, double > >::iterator TMjuHigh
double Splitting(const double &)
std::string lhapdfSetPath_
virtual void MaximiseSubParameters()=0
void SetRandomEngine(CLHEP::HepRandomEngine *engine)
std::map< double, std::map< double, double > > RgMap2d
CLHEP::HepLorentzVector GetProton2()
std::map< double, double > fg2Map
std::map< double, std::map< double, double > >::iterator RgHigh[2]
std::vector< Particle > Partons
std::complex< double > Fsf(const double &)
void ReadCard(const std::string &)
std::vector< Particle > GetPartons()
void SetKinematics(const double &, const double &, const double &, const double &, const double &, const double &)
std::pair< const char *, const void * > PConstVoidPair
double TFast(const double &)
CLHEP::HepLorentzVector Proton2
virtual double SubParameterWeight()=0
virtual void SetSubParameters()=0
double Fg_Qt2(const double &Qt2_, const double &x_, const double &xp_)
std::map< const char *, char * > TypeMap
std::map< std::string, PConstVoidPair > PMap
std::map< double, std::map< double, double > >::iterator TMjuLow
double Txg(const double &, const double &)
virtual void SetPartons()=0
CLHEP::HepRandomEngine * randomEngine
CLHEP::HepLorentzVector P1In
void insert(const std::string _name_, const T_ _x_)
CLHEP::HepLorentzVector GetProton1()
std::complex< double > f(const double &)
std::map< double, double > Getfg2Map()
double GetRg(const double &x_, const double &Qt)
virtual double SubParameterRange()=0
std::map< double, std::map< double, double > >::iterator RgLow[2]
CLHEP::HepLorentzVector P2In
std::map< double, std::map< double, double > > TMap2d
CrossSection(const edm::ParameterSet &)
CLHEP::HepLorentzVector Proton1
CLHEP::HepLorentzVector CentralVector