File indexing completed on 2026-08-06 09:24:15
0001
0002
0003
0004
0005
0006
0007
0008
0009 #ifndef HERWIG_SpinCorrelationTensor_H
0010 #define HERWIG_SpinCorrelationTensor_H
0011
0012 #include "ThePEG/Config/Unitsystem.h"
0013
0014 namespace Herwig {
0015
0016 using namespace ThePEG;
0017
0018
0019
0020
0021
0022
0023
0024
0025
0026
0027
0028 class SpinCorrelationTensor {
0029
0030
0031
0032
0033 double theDiagonal;
0034
0035
0036
0037
0038 Lorentz5Momentum theMomentum;
0039
0040
0041
0042
0043 Energy2 theScale;
0044
0045 public:
0046
0047
0048
0049
0050
0051
0052 SpinCorrelationTensor(double diag,
0053 const Lorentz5Momentum& p,
0054 Energy2 sc)
0055 : theDiagonal(diag), theMomentum(p), theScale(sc) {}
0056
0057 public:
0058
0059
0060
0061
0062 double diagonal() const { return theDiagonal; }
0063
0064
0065
0066
0067 const Lorentz5Momentum& momentum() const { return theMomentum; }
0068
0069
0070
0071
0072 Energy2 scale() const { return theScale; }
0073
0074 public:
0075
0076
0077
0078
0079
0080 Complex matrixElement(const LorentzVector<Complex>& left,
0081 const LorentzVector<Complex>& right) const {
0082 return
0083 left.dot(momentum())*right.dot(momentum())/scale();
0084 }
0085
0086 };
0087
0088 }
0089
0090 #endif