herwig
is hosted by
Hepforge
,
IPPP Durham
Herwig
7.2.1
MatrixElement
Matchbox
Utility
SpinCorrelationTensor.h
1
// -*- C++ -*-
2
//
3
// SpinCorrelationTensor.h is a part of Herwig - A multi-purpose Monte Carlo event generator
4
// Copyright (C) 2002-2019 The Herwig Collaboration
5
//
6
// Herwig is licenced under version 3 of the GPL, see COPYING for details.
7
// Please respect the MCnet academic guidelines, see GUIDELINES for details.
8
//
9
#ifndef HERWIG_SpinCorrelationTensor_H
10
#define HERWIG_SpinCorrelationTensor_H
11
12
#include "ThePEG/Config/Unitsystem.h"
13
14
namespace
Herwig
{
15
16
using namespace
ThePEG
;
17
28
class
SpinCorrelationTensor
{
29
33
double
theDiagonal
;
34
38
Lorentz5Momentum
theMomentum
;
39
43
Energy2
theScale
;
44
45
public
:
46
52
SpinCorrelationTensor
(
double
diag,
53
const
Lorentz5Momentum& p,
54
Energy2 sc)
55
: theDiagonal(diag), theMomentum(p), theScale(sc) {}
56
57
public
:
58
62
double
diagonal
()
const
{
return
theDiagonal; }
63
67
const
Lorentz5Momentum&
momentum
()
const
{
return
theMomentum; }
68
72
Energy2
scale
()
const
{
return
theScale; }
73
74
public
:
75
80
Complex
matrixElement
(
const
LorentzVector<Complex>
& left,
81
const
LorentzVector<Complex>
& right)
const
{
82
return
83
left.
dot
(momentum())*right.
dot
(momentum())/scale();
84
}
85
86
};
87
88
}
89
90
#endif // HERWIG_SpinCorrelationTensor_H
ThePEG::LorentzVector< Complex >
ThePEG::Complex
std::complex< double > Complex
ThePEG::LorentzVector::dot
auto dot(const LorentzVector< U > &a) const -> decltype(this->t() *a.t())
ThePEG
Herwig::SpinCorrelationTensor::SpinCorrelationTensor
SpinCorrelationTensor(double diag, const Lorentz5Momentum &p, Energy2 sc)
The standard constructor, giving diagonal part, and vector for off-diagonal components and the scale...
Definition:
SpinCorrelationTensor.h:52
Herwig::SpinCorrelationTensor::theDiagonal
double theDiagonal
The diagonal part.
Definition:
SpinCorrelationTensor.h:33
Herwig::SpinCorrelationTensor::diagonal
double diagonal() const
Return the diagonal part.
Definition:
SpinCorrelationTensor.h:62
Herwig::SpinCorrelationTensor::momentum
const Lorentz5Momentum & momentum() const
Return the off-diagonal vector part.
Definition:
SpinCorrelationTensor.h:67
Herwig::SpinCorrelationTensor::theScale
Energy2 theScale
The scale for the off-diagonal part.
Definition:
SpinCorrelationTensor.h:43
Herwig
-*- C++ -*-
Definition:
BasicConsistency.h:17
Herwig::SpinCorrelationTensor::theMomentum
Lorentz5Momentum theMomentum
The vector to define to off-diagonal part.
Definition:
SpinCorrelationTensor.h:38
Herwig::SpinCorrelationTensor::scale
Energy2 scale() const
Return the scale.
Definition:
SpinCorrelationTensor.h:72
Herwig::SpinCorrelationTensor
SpinCorrelationTensor represents a spin correlation tensor of the form.
Definition:
SpinCorrelationTensor.h:28
Herwig::SpinCorrelationTensor::matrixElement
Complex matrixElement(const LorentzVector< Complex > &left, const LorentzVector< Complex > &right) const
Return a matrix element of the diagonal part, by contracting with the given polarization vectors...
Definition:
SpinCorrelationTensor.h:80
Generated on Sat Apr 11 2020 14:50:31 for Herwig by
1.8.13