Herwig++
2.7.0
|
This class implements the matrix element calculation for a generic process.
More...
#include <MEff2vv.h>
Public Types | |
typedef vector < SpinorWaveFunction > | SpinorVector |
Vector of SpinorWaveFunctions objects. | |
typedef vector < SpinorBarWaveFunction > | SpinorBarVector |
Vector of SpinorBarWaveFunction objects. | |
typedef vector < VectorWaveFunction > | VBVector |
Vector of VectorWaveFunction objects. | |
Public Member Functions | |
MEff2vv () | |
The default constructor. | |
virtual void | constructVertex (tSubProPtr sub) |
Construct the vertex information for the spin correlations. | |
Virtual functions required by the GeneralHardME class. | |
virtual double | me2 () const |
The matrix element for the kinematical configuration previously provided by the last call to setKinematics(), suitably scaled by sHat() to give a dimension-less number. | |
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 Public Member Functions | |
static void | Init () |
The standard Init function used to initialize the interfaces. | |
Protected Member Functions | |
virtual void | debug (double me2) const |
A debugging function to test the value of me2 against an analytic function. | |
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. | |
Standard Interfaced functions. | |
virtual void | doinit () |
Initialize this object after the setup phase before saving an EventGenerator to disk. | |
Private Member Functions | |
ProductionMatrixElement | ff2vvME (const SpinorVector &sp, const SpinorBarVector sbar, const VBVector &v1, bool m1, const VBVector &v2, bool m2, double &me2, bool first) const |
Compute the production matrix element. | |
MEff2vv & | operator= (const MEff2vv &) |
The assignment operator is private and must never be called. | |
Private Attributes | |
vector< pair < AbstractFFVVertexPtr, AbstractFFVVertexPtr > > | fermion_ |
Storage for a dynamically cast vertices for a tchannel vector intermediate. | |
vector< pair < AbstractFFVVertexPtr, AbstractVVVVertexPtr > > | vector_ |
Storage for a dynamically cast vertices for a schannel vector intermediate. | |
vector< pair < AbstractFFTVertexPtr, AbstractVVTVertexPtr > > | tensor_ |
Storage for a dynamically cast vertices for a schannel scalar intermediate. | |
vector< pair < AbstractFFSVertexPtr, AbstractVVSVertexPtr > > | scalar_ |
Storage for a dynamically cast vertices for a schannel scalar intermediate for massless external vector bosons. | |
Static Private Attributes | |
static ClassDescription< MEff2vv > | initMEff2vv |
The static object used to initialize the description of this class. |
This class implements the matrix element calculation for a generic process.
typedef vector<SpinorBarWaveFunction> Herwig::MEff2vv::SpinorBarVector |
typedef vector<VectorWaveFunction> Herwig::MEff2vv::VBVector |
virtual IBPtr Herwig::MEff2vv::clone | ( | ) | const [inline, protected, virtual] |
Make a simple clone of this object.
Implements ThePEG::InterfacedBase.
virtual void Herwig::MEff2vv::constructVertex | ( | tSubProPtr | sub | ) | [virtual] |
Construct the vertex information for the spin correlations.
sub | Pointer to the relevent SubProcess |
Reimplemented from ThePEG::MEBase.
virtual void Herwig::MEff2vv::debug | ( | double | me2 | ) | const [protected, virtual] |
A debugging function to test the value of me2 against an analytic function.
me2 | ![]() |
Reimplemented from Herwig::GeneralHardME.
virtual void Herwig::MEff2vv::doinit | ( | ) | [protected, virtual] |
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.
ProductionMatrixElement Herwig::MEff2vv::ff2vvME | ( | const SpinorVector & | sp, |
const SpinorBarVector | sbar, | ||
const VBVector & | v1, | ||
bool | m1, | ||
const VBVector & | v2, | ||
bool | m2, | ||
double & | me2, | ||
bool | first | ||
) | const [private] |
Compute the production matrix element.
sp | Spinors for first incoming fermion |
sbar | SpinorBar Wavefunctions for incoming anti-fermion |
v1 | A vector of VectorWaveFunction objects for the first vector |
m1 | Whether v1 is massless or not |
v2 | A vector of VectorWaveFunction objects for the second vector |
m2 | Whether v2 is massless or not |
first | Whether or not first call to decide if colour decomposition etc should be calculated |
me2 | The value of the ![]() |
virtual IBPtr Herwig::MEff2vv::fullclone | ( | ) | const [inline, protected, virtual] |
Make a clone of this object, possibly modifying the cloned object to make it sane.
Reimplemented from ThePEG::InterfacedBase.
static void Herwig::MEff2vv::Init | ( | ) | [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.
Reimplemented from Herwig::GeneralHardME.
virtual double Herwig::MEff2vv::me2 | ( | ) | const [virtual] |
The matrix element for the kinematical configuration previously provided by the last call to setKinematics(), suitably scaled by sHat() to give a dimension-less number.
Implements Herwig::GeneralHardME.
The assignment operator is private and must never be called.
In fact, it should not even be implemented.
void Herwig::MEff2vv::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. |
Reimplemented from Herwig::GeneralHardME.
void Herwig::MEff2vv::persistentOutput | ( | PersistentOStream & | os | ) | const |
Function used to write out object persistently.
os | the persistent output stream written to. |
Reimplemented from Herwig::GeneralHardME.
ClassDescription<MEff2vv> Herwig::MEff2vv::initMEff2vv [static, private] |