herwig is hosted by Hepforge, IPPP Durham
Herwig 7.3.0
Herwig::BaryonThreeQuarkModelFormFactor Class Reference

The BaryonThreeQuarkModelFormFactor class implements the form factors for the semi-leptonic decay of baryons containing a heavy quark from the relativistic three-quark model calculation of PRD56, 348. More...

#include <BaryonThreeQuarkModelFormFactor.h>

Inheritance diagram for Herwig::BaryonThreeQuarkModelFormFactor:

Public Member Functions

 BaryonThreeQuarkModelFormFactor ()
 Default constructor.
 
- Public Member Functions inherited from Herwig::BaryonFormFactor
 BaryonFormFactor ()
 Default constructor.
 
int formFactorNumber (int in, int out, bool &cc) const
 Find the location for a given pair of particle.
 
void particleID (int iloc, int &id0, int &id1)
 Get the particle ids for an entry.
 
void formFactorInfo (int iloc, int &ispin, int &ospin, int &spect1, int &spect2, int &inquark, int &outquark)
 Information on the form factor.
 
void formFactorInfo (int in, int out, int &ispin, int &ospin, int &spect1, int &spect2, int &inquark, int &outquark)
 Information on the form factor.
 
unsigned int numberOfFactors () const
 number of form factors
 
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.
 
- Public Member Functions inherited from ThePEG::Interfaced
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
 
- Public Member Functions inherited from ThePEG::InterfacedBase
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
 
- Public Member Functions inherited from ThePEG::Base
void debug () const
 
virtual void debugme () const
 
- Public Member Functions inherited from ThePEG::Pointer::ReferenceCounted
CounterType referenceCount () const
 
- Public Member Functions inherited from ThePEG::Named
 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.
 
Function needed to calculate the form factors
vector< double > phiFunction (double)
 Returns the function \(\Phi_N\) function of PRD56, 348 as a function of \(\omega\).
 
void SN (double y, int N, double &SNm2, double &SN) const
 The integral of a power of the the \(S\) function of PRD56, 348 with respect to \(\theta\).
 
- Protected Member Functions inherited from Herwig::BaryonFormFactor
void addFormFactor (int in, int out, int inspin, int outspin, int spect1, int spect2, int inquark, int outquark)
 Add a form factor to the list.
 
void initialModes (unsigned int nmodes)
 Set initial number of modes.
 
unsigned int initialModes () const
 Get the initial number of modes.
 
- Protected Member Functions inherited from ThePEG::Interfaced
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)
 
- Protected Member Functions inherited from ThePEG::InterfacedBase
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 &)
 
- Protected Member Functions inherited from ThePEG::Pointer::ReferenceCounted
 ReferenceCounted (const ReferenceCounted &)
 
ReferenceCountedoperator= (const ReferenceCounted &)
 
- Protected Member Functions inherited from ThePEG::Named
const Namedoperator= (const Named &other)
 
const string & name (const string &newName)
 

Private Attributes

Parameters for the form factors
bool _initialize
 Initialization of the expansion coefficients.
 
unsigned int _order
 Order of the expansion for the form factors.
 
Energy _mlight
 Mass of the light quarks used in the calculation of the form factors.
 
Energy _mstrange
 Mass of the strange quark used in the calculation of the form factors.
 
Energy _LambdaQ
 The heavy quark \(\Lambda_Q\) parameter for the calculation of the form factors.
 
Energy _Lambdaqq
 The \(\Lambda_{qq}\) parameter for the calculation of the form factors.
 
Energy _Lambdasq
 The \(\Lambda_{sq}\) parameter for the calculation of the form factors.
 
Energy _Lambdass
 The \(\Lambda_{ss}\) parameter for the calculation of the form factors.
 
vector< double > _C0
 Coefficients for the expansion of the \(\xi(\omega)\) form factor.
 
vector< double > _C1
 Coefficients for the expansion of the \(\xi_1(\omega)\) form factor.
 
vector< double > _C2
 Coefficients for the expansion of the \(\xi_2(\omega)\) form factor.
 
double _a
 Coefficient of the first term in the integrand for the coefficient calculation.
 
double _b
 Coefficient of the second term in the integrand for the coefficient calculation.
 
double _mu2
 The \(\mu^2\) parameter for the coefficient calculation.
 
int _N
 the order of the coefficient being calculated.
 

Form Factors

typedef double ArgType
 Argument type for GaussianIntegrator.
 
typedef double ValType
 Return type for GaussianIntegrator.
 
virtual void SpinHalfSpinHalfFormFactor (Energy2 q2, int iloc, int id0, int id1, Energy m0, Energy m1, Complex &f1v, Complex &f2v, Complex &f3v, Complex &f1a, Complex &f2a, Complex &f3a, FlavourInfo flavour, Virtuality virt=SpaceLike)
 The form factor for the weak decay of a spin \(\frac12\) baryon to a spin \(\frac12\) baryon.
 
virtual void SpinHalfSpinThreeHalfFormFactor (Energy2 q2, int iloc, int id0, int id1, Energy m0, Energy m1, Complex &g1v, Complex &g2v, Complex &g3v, Complex &g4v, Complex &g1a, Complex &g2a, Complex &g3a, Complex &g4a, FlavourInfo flavour, Virtuality virt=SpaceLike)
 The form factor for the weak decay of a spin \(\frac12\) baryon to a spin \(\frac32\) baryon.
 
virtual void dataBaseOutput (ofstream &os, bool header, bool create) const
 Output the setup information for the particle database.
 
double operator() (double x) const
 The integrand for the coefficients of the expansion.
 
Energy widthIntegrand (double omega, Energy m0, Energy m1, int type, int imass, int id0, int id1)
 The integrand for the semi-analytic calculation of the semi-leptonic width.
 

Functions used by the persistent I/O system.

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.
 
static void Init ()
 Standard Init function used to initialize the interfaces.
 

Standard Interfaced functions.

virtual void doinit ()
 Initialize this object after the setup phase before saving and EventGenerator to disk.
 
BaryonThreeQuarkModelFormFactoroperator= (const BaryonThreeQuarkModelFormFactor &)=delete
 Private and non-existent assignment operator.
 

Additional Inherited Members

- Public Types inherited from Herwig::BaryonFormFactor
enum  Virtuality { TimeLike , SpaceLike }
 Whether the form factor is space- or time-like. More...
 
- Public Types inherited from ThePEG::InterfacedBase
enum  InitState
 
- Public Types inherited from ThePEG::Pointer::ReferenceCounted
typedef unsigned int CounterType
 
- Static Public Member Functions inherited from Herwig::BaryonFormFactor
static void Init ()
 Standard Init function used to initialize the interfaces.
 
- Static Public Member Functions inherited from ThePEG::Interfaced
static void Init ()
 
- Static Public Member Functions inherited from ThePEG::InterfacedBase
static void Init ()
 
- Static Public Member Functions inherited from ThePEG::Base
static void Init ()
 
- Public Attributes inherited from ThePEG::InterfacedBase
 initializing
 
 uninitialized
 
 initialized
 
 runready
 
- Public Attributes inherited from ThePEG::Pointer::ReferenceCounted
const unsigned long uniqueId
 
- Static Protected Member Functions inherited from ThePEG::Interfaced
static void registerRepository (IBPtr)
 
static void registerRepository (IBPtr, string newName)
 

Detailed Description

The BaryonThreeQuarkModelFormFactor class implements the form factors for the semi-leptonic decay of baryons containing a heavy quark from the relativistic three-quark model calculation of PRD56, 348.

As the only formulae in the paper are for the heavy-to-heavy i.e. bottom to charm decay this there are the only modes included, although the paper also includes charm decays and bottom decays to light quarks.

The form factors are calculated by numerical computing the integrals from PRD56, 348 to obtain the coefficients for the expansion of the form factors.

See also
BaryonFormFactor

Definition at line 28 of file BaryonThreeQuarkModelFormFactor.h.

Member Typedef Documentation

◆ ArgType

◆ ValType

Member Function Documentation

◆ clone()

virtual IBPtr Herwig::BaryonThreeQuarkModelFormFactor::clone ( ) const
inlineprotectedvirtual

Make a simple clone of this object.

Returns
a pointer to the new object.

Reimplemented from Herwig::BaryonFormFactor.

Definition at line 66 of file BaryonThreeQuarkModelFormFactor.h.

◆ dataBaseOutput()

virtual void Herwig::BaryonThreeQuarkModelFormFactor::dataBaseOutput ( ofstream &  os,
bool  header,
bool  create 
) const
virtual

Output the setup information for the particle database.

Parameters
osThe stream to output the information to
headerWhether or not to output the information for MySQL
createWhether or not to add a statement creating the object

Reimplemented from Herwig::BaryonFormFactor.

◆ doinit()

virtual void Herwig::BaryonThreeQuarkModelFormFactor::doinit ( )
protectedvirtual

Initialize this object after the setup phase before saving and EventGenerator to disk.

Exceptions
InitExceptionif object could not be initialized properly.

Reimplemented from Herwig::BaryonFormFactor.

◆ fullclone()

virtual IBPtr Herwig::BaryonThreeQuarkModelFormFactor::fullclone ( ) const
inlineprotectedvirtual

Make a clone of this object, possibly modifying the cloned object to make it sane.

Returns
a pointer to the new object.

Reimplemented from Herwig::BaryonFormFactor.

Definition at line 72 of file BaryonThreeQuarkModelFormFactor.h.

◆ operator()()

double Herwig::BaryonThreeQuarkModelFormFactor::operator() ( double  x) const

The integrand for the coefficients of the expansion.

This is a function of the integration variable \(x\) which is chosen to transform the integrand over \(y\) which is from \(0\) to \(\infty\) to an integral between 0 and 1. This means that \(y=\frac{1-x}{x}\).

Parameters
xThe integration variable.

◆ persistentInput()

void Herwig::BaryonThreeQuarkModelFormFactor::persistentInput ( PersistentIStream is,
int  version 
)

Function used to read in object persistently.

Parameters
isthe persistent input stream read from.
versionthe version number of the object when written.

◆ persistentOutput()

void Herwig::BaryonThreeQuarkModelFormFactor::persistentOutput ( PersistentOStream os) const

Function used to write out object persistently.

Parameters
osthe persistent output stream written to.

◆ SN()

void Herwig::BaryonThreeQuarkModelFormFactor::SN ( double  y,
int  N,
double &  SNm2,
double &  SN 
) const
protected

The integral of a power of the the \(S\) function of PRD56, 348 with respect to \(\theta\).

This is used to calculate the coefficients of the expansion to compute the form factors. The integral is calculated by computing a low power of the integrand and then using recursion relations to calculate the pwoer requested.

Parameters
yThe \(y\) variable of the function which is integrate over numerically.
NThe power to which the integrand is raised.
SNm2The integral with the function raised to the power \(N/2-1\).
SNThe integral with the function raised to the power \(N\).

◆ SpinHalfSpinHalfFormFactor()

virtual void Herwig::BaryonThreeQuarkModelFormFactor::SpinHalfSpinHalfFormFactor ( Energy2  q2,
int  iloc,
int  id0,
int  id1,
Energy  m0,
Energy  m1,
Complex f1v,
Complex f2v,
Complex f3v,
Complex f1a,
Complex f2a,
Complex f3a,
FlavourInfo  flavour,
Virtuality  virt = SpaceLike 
)
virtual

The form factor for the weak decay of a spin \(\frac12\) baryon to a spin \(\frac12\) baryon.


Parameters
q2The scale \(q^2\).
ilocThe location in the form factor list.
id0The PDG code of the incoming baryon.
id1The PDG code of the outgoing baryon.
m0The mass of the incoming baryon.
m1The mass of the outgoing baryon.
f1vThe form factor \(F^V_1\).
f2vThe form factor \(F^V_2\).
f3vThe form factor \(F^V_3\).
f1aThe form factor \(F^A_1\).
f2aThe form factor \(F^A_2\).
f3aThe form factor \(F^A_3\).
virtWhether the q2 is space or timelike

Reimplemented from Herwig::BaryonFormFactor.

◆ SpinHalfSpinThreeHalfFormFactor()

virtual void Herwig::BaryonThreeQuarkModelFormFactor::SpinHalfSpinThreeHalfFormFactor ( Energy2  q2,
int  iloc,
int  id0,
int  id1,
Energy  m0,
Energy  m1,
Complex g1v,
Complex g2v,
Complex g3v,
Complex g4v,
Complex g1a,
Complex g2a,
Complex g3a,
Complex g4a,
FlavourInfo  flavour,
Virtuality  virt = SpaceLike 
)
virtual

The form factor for the weak decay of a spin \(\frac12\) baryon to a spin \(\frac32\) baryon.


Parameters
q2The scale \(q^2\).
ilocThe location in the form factor list.
id0The PDG code of the incoming baryon.
id1The PDG code of the outgoing baryon.
m0The mass of the incoming baryon.
m1The mass of the outgoing baryon.
g1vThe form factor \(G^V_1\).
g2vThe form factor \(G^V_2\).
g3vThe form factor \(G^V_3\).
g4vThe form factor \(G^V_4\).
g1aThe form factor \(G^A_1\).
g2aThe form factor \(G^A_2\).
g3aThe form factor \(G^A_3\).
g4aThe form factor \(G^A_4\).
virtWhether the q2 is space or timelike

Reimplemented from Herwig::BaryonFormFactor.

◆ widthIntegrand()

Energy Herwig::BaryonThreeQuarkModelFormFactor::widthIntegrand ( double  omega,
Energy  m0,
Energy  m1,
int  type,
int  imass,
int  id0,
int  id1 
)

The integrand for the semi-analytic calculation of the semi-leptonic width.

This is included for testing purposes.

Parameters
omegaThe \(\omega\) parameter of the heavy quark form-factors.
m0The mass of the incoming baryon.
m1The mass of the outgoing baryon.
typeThe type of the decay
imassThe baryonic mass parameter to use.
id0PDG code for the decaying particle
id1PDG code for the decay product

Member Data Documentation

◆ _a

double Herwig::BaryonThreeQuarkModelFormFactor::_a
private

Coefficient of the first term in the integrand for the coefficient calculation.

Definition at line 273 of file BaryonThreeQuarkModelFormFactor.h.

◆ _b

double Herwig::BaryonThreeQuarkModelFormFactor::_b
private

Coefficient of the second term in the integrand for the coefficient calculation.

Definition at line 278 of file BaryonThreeQuarkModelFormFactor.h.

◆ _C0

vector<double> Herwig::BaryonThreeQuarkModelFormFactor::_C0
private

Coefficients for the expansion of the \(\xi(\omega)\) form factor.

Definition at line 258 of file BaryonThreeQuarkModelFormFactor.h.

◆ _C1

vector<double> Herwig::BaryonThreeQuarkModelFormFactor::_C1
private

Coefficients for the expansion of the \(\xi_1(\omega)\) form factor.

Definition at line 263 of file BaryonThreeQuarkModelFormFactor.h.

◆ _C2

vector<double> Herwig::BaryonThreeQuarkModelFormFactor::_C2
private

Coefficients for the expansion of the \(\xi_2(\omega)\) form factor.

Definition at line 268 of file BaryonThreeQuarkModelFormFactor.h.

◆ _initialize

bool Herwig::BaryonThreeQuarkModelFormFactor::_initialize
private

Initialization of the expansion coefficients.

Definition at line 217 of file BaryonThreeQuarkModelFormFactor.h.

◆ _LambdaQ

Energy Herwig::BaryonThreeQuarkModelFormFactor::_LambdaQ
private

The heavy quark \(\Lambda_Q\) parameter for the calculation of the form factors.

Definition at line 237 of file BaryonThreeQuarkModelFormFactor.h.

◆ _Lambdaqq

Energy Herwig::BaryonThreeQuarkModelFormFactor::_Lambdaqq
private

The \(\Lambda_{qq}\) parameter for the calculation of the form factors.

Definition at line 242 of file BaryonThreeQuarkModelFormFactor.h.

◆ _Lambdasq

Energy Herwig::BaryonThreeQuarkModelFormFactor::_Lambdasq
private

The \(\Lambda_{sq}\) parameter for the calculation of the form factors.

Definition at line 247 of file BaryonThreeQuarkModelFormFactor.h.

◆ _Lambdass

Energy Herwig::BaryonThreeQuarkModelFormFactor::_Lambdass
private

The \(\Lambda_{ss}\) parameter for the calculation of the form factors.

Definition at line 253 of file BaryonThreeQuarkModelFormFactor.h.

◆ _mlight

Energy Herwig::BaryonThreeQuarkModelFormFactor::_mlight
private

Mass of the light quarks used in the calculation of the form factors.

Definition at line 227 of file BaryonThreeQuarkModelFormFactor.h.

◆ _mstrange

Energy Herwig::BaryonThreeQuarkModelFormFactor::_mstrange
private

Mass of the strange quark used in the calculation of the form factors.

Definition at line 232 of file BaryonThreeQuarkModelFormFactor.h.

◆ _mu2

double Herwig::BaryonThreeQuarkModelFormFactor::_mu2
private

The \(\mu^2\) parameter for the coefficient calculation.

Definition at line 283 of file BaryonThreeQuarkModelFormFactor.h.

◆ _N

int Herwig::BaryonThreeQuarkModelFormFactor::_N
private

the order of the coefficient being calculated.

Definition at line 288 of file BaryonThreeQuarkModelFormFactor.h.

◆ _order

unsigned int Herwig::BaryonThreeQuarkModelFormFactor::_order
private

Order of the expansion for the form factors.

Definition at line 222 of file BaryonThreeQuarkModelFormFactor.h.


The documentation for this class was generated from the following file: