Herwig 7.3.0
|
The BtoSGammaKagan class implements the model of hep-ph/9805303 for the hadronic mass spectrum in \(b\to s \gamma\) decays. More...
#include <BtoSGammaKagan.h>
Public Member Functions | |
BtoSGammaKagan () | |
The default constructor. | |
virtual Energy | hadronicMass (Energy mb, Energy mquark) |
Returns the hadronic mass. | |
virtual void | dataBaseOutput (ofstream &os, bool header, bool create) const |
Output the setup information for the particle database. | |
![]() | |
BtoSGammaHadronicMass () | |
The default constructor. | |
virtual Energy | hadronicMass (Energy mb, Energy mquark)=0 |
Virtual member which must be implemented in classes inheriting from this class to return the hadronic mass. | |
virtual void | dataBaseOutput (ofstream &os, bool header, bool create) const |
Output the setup information for the particle database. | |
void | persistentOutput (PersistentOStream &os) const |
Function used to write out object persistently. | |
void | persistentInput (PersistentIStream &is, int version) |
Function used to read in object persistently. | |
![]() | |
virtual bool | defaultInit () |
PPtr | getParticle (PID) const |
PDPtr | getParticleData (PID) const |
bool | used () const |
void | useMe () const |
tEGPtr | generator () const |
void | persistentOutput (PersistentOStream &os) const |
void | persistentInput (PersistentIStream &is, int version) |
PPtr | getParticle (PID) const |
PDPtr | getParticleData (PID) const |
bool | used () const |
void | useMe () const |
tEGPtr | generator () const |
![]() | |
string | fullName () const |
string | name () const |
string | path () const |
string | comment () const |
void | setup (istream &is) |
void | update () |
void | init () |
virtual bool | preInitialize () const |
void | initrun () |
void | finish () |
void | touch () |
void | reset () |
void | clear () |
InitState | state () const |
bool | locked () const |
bool | touched () const |
virtual IBPtr | fullclone () const |
void | persistentOutput (PersistentOStream &os) const |
void | persistentInput (PersistentIStream &is, int version) |
virtual void | debugme () const |
void | update () |
void | init () |
virtual bool | preInitialize () const |
void | initrun () |
void | finish () |
void | touch () |
void | reset () |
void | clear () |
InitState | state () const |
bool | locked () const |
bool | touched () const |
virtual IBPtr | fullclone () const |
![]() | |
void | debug () const |
virtual void | debugme () const |
![]() | |
CounterType | referenceCount () const |
![]() | |
Named (const string &newName=string()) | |
Named (const Named &)=default | |
const string & | name () const |
bool | operator== (const Named &other) const |
bool | operator< (const Named &other) const |
Protected Member Functions | |
Clone Methods. | |
virtual IBPtr | clone () const |
Make a simple clone of this object. | |
virtual IBPtr | fullclone () const |
Make a clone of this object, possibly modifying the cloned object to make it sane. | |
![]() | |
Energy | minMass () const |
Minimum mass. | |
Energy | maxMass () const |
Maximum mass. | |
InvEnergy | exponentialFermiFunction (Energy scale, Energy lambda, double a, InvEnergy norm, Energy2 lambda1) const |
Exponential function of the form, \(N(1-x)^ae^{-3\bar{\Lambda}^2x/\lambda_1}\), where \(x=k_+/\bar{\Lambda}\) taken from hep-ph/9805303. | |
![]() | |
void | reporeg (IBPtr object, string name) const |
bool | setDefaultReference (PtrT &ptr, string classname, string objectname) |
Interfaced (const string &newName) | |
Interfaced (const Interfaced &i) | |
void | setGenerator (tEGPtr generator) |
![]() | |
virtual void | readSetup (istream &is) |
virtual void | doupdate () |
virtual void | doinit () |
virtual void | doinitrun () |
virtual void | dofinish () |
virtual IVector | getReferences () |
virtual void | rebind (const TranslationMap &) |
virtual IBPtr | clone () const=0 |
InterfacedBase (string newName) | |
InterfacedBase (const InterfacedBase &i) | |
virtual void | readSetup (istream &is) |
virtual void | doupdate () |
virtual void | doinit () |
virtual void | doinitrun () |
virtual void | dofinish () |
virtual IVector | getReferences () |
virtual void | rebind (const TranslationMap &) |
![]() | |
ReferenceCounted (const ReferenceCounted &) | |
ReferenceCounted & | operator= (const ReferenceCounted &) |
![]() | |
const Named & | operator= (const Named &other) |
const string & | name (const string &newName) |
Private Attributes | |
Wilson coefficients, couplings and \f$\beta\f$-function coefficients | |
double | _c20 |
The leading order \(c_2\) coefficient. | |
double | _c70 |
The leading order \(c_7\) coefficient. | |
double | _c80 |
The leading order \(c_8\) coefficient. | |
double | _beta0 |
First \(\beta\)-function coefficient. | |
double | _beta1 |
Second \(\beta\)-function coefficient. | |
double | _alpha |
The electromagentic coupling. | |
double | _alphaSZ |
The strong coupling at the Z mass. | |
Energy | _mub |
The renormalisation scale. | |
double | _alphaSM |
the strong coupling at the renormalisation scale \(\mu_b\). | |
double | _ckm |
The CKM perfactor for the decay. | |
double | _delta |
Pre-factor for the correction term involving \(\Delta(y)\). | |
Interpolator< double, double >::Ptr | _s22inter |
Interpolators for the integrate functions and related parameters. | |
Interpolator< double, double >::Ptr | _s27inter |
Interpolator for the \(s_{27}\) function. | |
Interpolator< InvEnergy, Energy >::Ptr | _pmHinter |
Interpolator for the spectrum. | |
vector< Energy > | _mHinter |
Values of \(m_H\) for the interpolation of the spectrum. | |
vector< InvEnergy > | _spectrum |
Values of the differential rate for the interpolation of the spectrum. | |
InvEnergy | _spectmax |
Maximum value of the spectrum for unweighting. | |
unsigned int | _maxtry |
Maximum number of tries for unweighting. | |
Energy | _fermilambda |
Parameters for the Fermi function. | |
double | _fermia |
The power from from hep-ph/9805303. | |
InvEnergy | _ferminorm |
The normalisation from hep-ph/9805303. | |
Energy2 | _fermilambda1 |
\(\lambda_1\) scale related to the kinetic energy of the b quark. | |
double | _ycut |
Techincal parameters for the integration of the spectrum. | |
double | _y |
Value of the energy fraction for which the integral is being performed. | |
double | _deltacut |
Cut-off on the photon energies. | |
unsigned int | _nsfunct |
Number of points for the interpolation of the s functions. | |
unsigned int | _nspect |
Number of points for the interpolation of the spectrum. | |
unsigned int | _iopt |
The function currently being integrated. | |
Friends | |
struct | KaganIntegrand |
Class for the integration is a friend to access private members. | |
Functions used by the persistent I/O system. | |
typedef double | ValType |
typedef double | ArgType |
void | persistentOutput (PersistentOStream &os) const |
Function used to write out object persistently. | |
void | persistentInput (PersistentIStream &is, int version) |
Function used to read in object persistently. | |
double | operator() (double x) const |
Members which return integrands. | |
InvEnergy | smeared (Energy kp) const |
Operator to return the integrand of the smeared function or Fermi function depending on the value of _iopt to be integrated. | |
static void | Init () |
The standard Init function used to initialize the interfaces. | |
Functions to calculate the mass spectrum | |
bool | _initialize |
Initialisation of mass spectrum. | |
Energy | _mt |
Quark masses and related parameters. | |
Energy | _mb |
bottom quark mass | |
Energy | _mc |
charm quark mass | |
Energy | _ms |
strange quark mass | |
double | _msovermb |
Ratio of the strange quark mass to the bottom quark mass. | |
double | _zratio |
The ratio of the charm to bottom quark masses squared, \((m_c/m_b)^2\). | |
Energy2 | _lambda2 |
The hadronic \(\lambda_2\) parameter from hep-ph/9805303. | |
Energy | _mw |
Masses of other particles. | |
Energy | _mz |
the Z mass | |
Energy | _MB |
Mass of the decaying B meson. | |
double | Delta (double y, double alphaS) const |
The derivative of the Sudakov form-factor from hep-ph/9805303. | |
double | semiLeptonicf () const |
Kinematic function from semi-leptonic decay for normaalisation. | |
double | s22 (double y) const |
\(s_{22}(y)\) function from hep-ph/9805303. | |
double | s27 (double y) const |
\(s_{27}(y)\) function from hep-ph/9805303. | |
double | s77 (double y) const |
\(s_{77}(y)\) function from hep-ph/9805303 | |
double | s78 (double y) const |
\(s_{78}(y)\) function from hep-ph/9805303 | |
double | s88 (double y) const |
\(s_{88}(y)\) function from hep-ph/9805303 | |
double | realG (double t) const |
The real part of the \(G(t)\) function from hep-ph/9805303. | |
double | imagG (double t) const |
The imaginary part of the \(G(t)\) function from hep-ph/9805303. | |
double | alphaS (Energy Q) |
Strong coupling \(\alpha_S\) at the scale \(Q\). | |
void | calculateWilsonCoefficients () |
Calculate the wilson coefficients we need. | |
double | KNLO (double y) const |
The \(K'_{NLO}(1-y)\) function at parton level from hep-ph/9805303. | |
Standard Interfaced functions. | |
virtual void | doinit () |
Initialize this object after the setup phase before saving an EventGenerator to disk. | |
virtual void | doinitrun () |
Initialize this object. | |
BtoSGammaKagan & | operator= (const BtoSGammaKagan &)=delete |
The assignment operator is private and must never be called. | |
Additional Inherited Members | |
![]() | |
enum | InitState |
![]() | |
typedef unsigned int | CounterType |
![]() | |
static void | Init () |
The standard Init function used to initialize the interfaces. | |
![]() | |
static void | Init () |
![]() | |
static void | Init () |
![]() | |
static void | Init () |
![]() | |
initializing | |
uninitialized | |
initialized | |
runready | |
![]() | |
const unsigned long | uniqueId |
![]() | |
static void | registerRepository (IBPtr) |
static void | registerRepository (IBPtr, string newName) |
The BtoSGammaKagan class implements the model of hep-ph/9805303 for the hadronic mass spectrum in \(b\to s \gamma\) decays.
Definition at line 30 of file BtoSGammaKagan.h.
typedef double Herwig::BtoSGammaKagan::ArgType |
Definition at line 108 of file BtoSGammaKagan.h.
typedef double Herwig::BtoSGammaKagan::ValType |
Definition at line 107 of file BtoSGammaKagan.h.
|
inlineprivate |
Strong coupling \(\alpha_S\) at the scale \(Q\).
Q | The scale. |
Definition at line 256 of file BtoSGammaKagan.h.
References _alphaSZ, _beta0, _beta1, _mz, and ThePEG::Constants::pi.
Referenced by Delta().
|
inlineprotectedvirtual |
Make a simple clone of this object.
Implements ThePEG::InterfacedBase.
Definition at line 130 of file BtoSGammaKagan.h.
|
virtual |
Output the setup information for the particle database.
os | The stream to output the information to |
header | Whether or not to output the information for MySQL |
create | Whether or not to add a statement creating the object |
Reimplemented from Herwig::BtoSGammaHadronicMass.
|
inlineprivate |
The derivative of the Sudakov form-factor from hep-ph/9805303.
y | Ratio \(E_\gamma/E^{\rm max}_\gamma\). |
alphaS | The strong coupling, \(\alpha_S\). |
Definition at line 174 of file BtoSGammaKagan.h.
References _ycut, alphaS(), and ThePEG::Constants::pi.
Referenced by KNLO().
|
protectedvirtual |
Initialize this object after the setup phase before saving an EventGenerator to disk.
InitException | if object could not be initialized properly. |
Reimplemented from ThePEG::InterfacedBase.
|
protectedvirtual |
Initialize this object.
Called in the run phase just before a run begins.
Reimplemented from ThePEG::InterfacedBase.
|
inlineprotectedvirtual |
Make a clone of this object, possibly modifying the cloned object to make it sane.
Reimplemented from ThePEG::InterfacedBase.
Definition at line 136 of file BtoSGammaKagan.h.
|
virtual |
Returns the hadronic mass.
mb | The mass of the decaying B meson |
mquark | The minimum mass of the hadronic system based on the consistuent quark masses. |
Implements Herwig::BtoSGammaHadronicMass.
|
inlineprivate |
The imaginary part of the \(G(t)\) function from hep-ph/9805303.
Definition at line 247 of file BtoSGammaKagan.h.
References ThePEG::Constants::pi, and ThePEG::sqrt().
Referenced by operator()().
|
static |
The standard Init function used to initialize the interfaces.
Called exactly once for each class by the class description system before the main function starts or when this class is dynamically loaded.
|
inlineprivate |
|
inline |
Members which return integrands.
Operator to return the integrand for the \(s_{22}(y)\) function or \(s_{27}(y)\) functions of hep-ph/9805303 depending on the value of _iopt to be integrated
Definition at line 98 of file BtoSGammaKagan.h.
References _iopt, _zratio, imagG(), realG(), and ThePEG::sqr().
|
privatedelete |
The assignment operator is private and must never be called.
In fact, it should not even be implemented.
void Herwig::BtoSGammaKagan::persistentInput | ( | PersistentIStream & | is, |
int | version | ||
) |
Function used to read in object persistently.
is | the persistent input stream read from. |
version | the version number of the object when written. |
void Herwig::BtoSGammaKagan::persistentOutput | ( | PersistentOStream & | os | ) | const |
Function used to write out object persistently.
os | the persistent output stream written to. |
|
inlineprivate |
The real part of the \(G(t)\) function from hep-ph/9805303.
Definition at line 233 of file BtoSGammaKagan.h.
References ThePEG::Constants::pi, ThePEG::sqr(), and ThePEG::sqrt().
Referenced by operator()().
|
inlineprivate |
\(s_{22}(y)\) function from hep-ph/9805303.
Due to the integration required this function is computed by interpolation.
y | Ratio \(E_\gamma/E^{\rm max}_\gamma\). |
Definition at line 193 of file BtoSGammaKagan.h.
References _s22inter.
Referenced by KNLO().
|
inlineprivate |
\(s_{27}(y)\) function from hep-ph/9805303.
Due to the integration required this function is computed by interpolation.
y | Ratio \(E_\gamma/E^{\rm max}_\gamma\). |
Definition at line 200 of file BtoSGammaKagan.h.
References _s27inter.
Referenced by KNLO().
|
inlineprivate |
\(s_{77}(y)\) function from hep-ph/9805303
y | Ratio \(E_\gamma/E^{\rm max}_\gamma\). |
Definition at line 206 of file BtoSGammaKagan.h.
References _ycut.
Referenced by KNLO().
|
inlineprivate |
\(s_{78}(y)\) function from hep-ph/9805303
y | Ratio \(E_\gamma/E^{\rm max}_\gamma\). |
Definition at line 215 of file BtoSGammaKagan.h.
References _ycut.
Referenced by KNLO().
|
inlineprivate |
\(s_{88}(y)\) function from hep-ph/9805303
y | Ratio \(E_\gamma/E^{\rm max}_\gamma\). |
Definition at line 224 of file BtoSGammaKagan.h.
References _mb, _ms, _ycut, and ThePEG::sqr().
Referenced by KNLO().
|
inlineprivate |
Kinematic function from semi-leptonic decay for normaalisation.
Definition at line 183 of file BtoSGammaKagan.h.
References _zratio, and ThePEG::sqr().
|
inline |
Operator to return the integrand of the smeared function or Fermi function depending on the value of _iopt to be integrated.
Definition at line 114 of file BtoSGammaKagan.h.
References _fermia, _fermilambda, _fermilambda1, _ferminorm, _iopt, _mb, _MB, _y, Herwig::BtoSGammaHadronicMass::exponentialFermiFunction(), and KNLO().
|
friend |
Class for the integration is a friend to access private members.
Definition at line 35 of file BtoSGammaKagan.h.
|
private |
The electromagentic coupling.
Definition at line 375 of file BtoSGammaKagan.h.
|
private |
the strong coupling at the renormalisation scale \(\mu_b\).
Definition at line 390 of file BtoSGammaKagan.h.
Referenced by KNLO().
|
private |
The strong coupling at the Z mass.
Definition at line 380 of file BtoSGammaKagan.h.
Referenced by alphaS().
|
private |
First \(\beta\)-function coefficient.
Definition at line 365 of file BtoSGammaKagan.h.
Referenced by alphaS().
|
private |
Second \(\beta\)-function coefficient.
Definition at line 370 of file BtoSGammaKagan.h.
Referenced by alphaS().
|
private |
The leading order \(c_2\) coefficient.
Definition at line 350 of file BtoSGammaKagan.h.
Referenced by KNLO().
|
private |
The leading order \(c_7\) coefficient.
Definition at line 355 of file BtoSGammaKagan.h.
Referenced by KNLO().
|
private |
The leading order \(c_8\) coefficient.
Definition at line 360 of file BtoSGammaKagan.h.
Referenced by KNLO().
|
private |
The CKM perfactor for the decay.
Definition at line 395 of file BtoSGammaKagan.h.
|
private |
Pre-factor for the correction term involving \(\Delta(y)\).
Definition at line 399 of file BtoSGammaKagan.h.
Referenced by KNLO().
|
private |
Cut-off on the photon energies.
Definition at line 484 of file BtoSGammaKagan.h.
|
private |
The power from from hep-ph/9805303.
Definition at line 454 of file BtoSGammaKagan.h.
Referenced by smeared().
|
private |
Parameters for the Fermi function.
The \(\bar{\Lambda}\) parameter from hep-ph/9805303.
Definition at line 449 of file BtoSGammaKagan.h.
Referenced by smeared().
|
private |
\(\lambda_1\) scale related to the kinetic energy of the b quark.
Definition at line 464 of file BtoSGammaKagan.h.
Referenced by smeared().
|
private |
The normalisation from hep-ph/9805303.
Definition at line 459 of file BtoSGammaKagan.h.
Referenced by smeared().
|
private |
Initialisation of mass spectrum.
Definition at line 283 of file BtoSGammaKagan.h.
|
private |
The function currently being integrated.
Definition at line 499 of file BtoSGammaKagan.h.
Referenced by operator()(), and smeared().
|
private |
The hadronic \(\lambda_2\) parameter from hep-ph/9805303.
Definition at line 323 of file BtoSGammaKagan.h.
|
private |
Maximum number of tries for unweighting.
Definition at line 439 of file BtoSGammaKagan.h.
|
private |
bottom quark mass
Definition at line 297 of file BtoSGammaKagan.h.
|
private |
Mass of the decaying B meson.
Definition at line 342 of file BtoSGammaKagan.h.
Referenced by smeared().
|
private |
charm quark mass
Definition at line 302 of file BtoSGammaKagan.h.
|
private |
Values of \(m_H\) for the interpolation of the spectrum.
Definition at line 424 of file BtoSGammaKagan.h.
|
private |
|
private |
Ratio of the strange quark mass to the bottom quark mass.
Definition at line 312 of file BtoSGammaKagan.h.
|
private |
Quark masses and related parameters.
The top quark mass
Definition at line 292 of file BtoSGammaKagan.h.
|
private |
The renormalisation scale.
Definition at line 385 of file BtoSGammaKagan.h.
|
private |
|
private |
|
private |
Number of points for the interpolation of the s functions.
Definition at line 489 of file BtoSGammaKagan.h.
|
private |
Number of points for the interpolation of the spectrum.
Definition at line 494 of file BtoSGammaKagan.h.
|
private |
Interpolator for the spectrum.
Definition at line 419 of file BtoSGammaKagan.h.
|
private |
Interpolators for the integrate functions and related parameters.
Interpolator for the \(s_{22}\) function
Definition at line 409 of file BtoSGammaKagan.h.
Referenced by s22().
|
private |
Interpolator for the \(s_{27}\) function.
Definition at line 414 of file BtoSGammaKagan.h.
Referenced by s27().
|
private |
Maximum value of the spectrum for unweighting.
Definition at line 434 of file BtoSGammaKagan.h.
|
private |
Values of the differential rate for the interpolation of the spectrum.
Definition at line 429 of file BtoSGammaKagan.h.
|
private |
Value of the energy fraction for which the integral is being performed.
Definition at line 479 of file BtoSGammaKagan.h.
Referenced by smeared().
|
private |
|
private |
The ratio of the charm to bottom quark masses squared, \((m_c/m_b)^2\).
Definition at line 317 of file BtoSGammaKagan.h.
Referenced by operator()(), and semiLeptonicf().