herwig is hosted by Hepforge, IPPP Durham
Herwig 7.3.0
Herwig::SpinorHelicity::SpinorProduct< Type, Value > Class Template Reference

Weyl spinor product. More...

#include <SpinorHelicity.h>

Inheritance diagram for Herwig::SpinorHelicity::SpinorProduct< Type, Value >:

Public Types

typedef SpinorMultiplicationTraits< Value >::ComplexResultType ResultType
 
typedef WeylSpinor< Type, Value > LeftSpinorType
 
typedef WeylSpinorTraits< Type >::ConjugateSpinorTag RightSpinorTag
 
typedef WeylSpinor< RightSpinorTag, Value > RightSpinorType
 

Public Member Functions

 SpinorProduct (const LeftSpinorType &left, const RightSpinorType &right)
 Construct from two spinors; note that the spinor metric is included, when constructing spinors.
 
 operator ResultType () const
 Implicitly convert to complex value.
 
ResultType eval () const
 Return result.
 
SpinorProductoperator+= (const SpinorProduct &other)
 
SpinorProductoperator-= (const SpinorProduct &other)
 
SpinorProductoperator*= (double x)
 
SpinorProductoperator*= (complex< double > x)
 

Private Attributes

ResultType theResult
 The result.
 

Detailed Description

template<class Type, class Value>
class Herwig::SpinorHelicity::SpinorProduct< Type, Value >

Weyl spinor product.

Author
Simon Platzer

Definition at line 252 of file SpinorHelicity.h.

Member Typedef Documentation

◆ LeftSpinorType

template<class Type , class Value >
typedef WeylSpinor<Type,Value> Herwig::SpinorHelicity::SpinorProduct< Type, Value >::LeftSpinorType

Definition at line 261 of file SpinorHelicity.h.

◆ ResultType

template<class Type , class Value >
typedef SpinorMultiplicationTraits<Value>::ComplexResultType Herwig::SpinorHelicity::SpinorProduct< Type, Value >::ResultType

Definition at line 260 of file SpinorHelicity.h.

◆ RightSpinorTag

template<class Type , class Value >
typedef WeylSpinorTraits<Type>::ConjugateSpinorTag Herwig::SpinorHelicity::SpinorProduct< Type, Value >::RightSpinorTag

Definition at line 262 of file SpinorHelicity.h.

◆ RightSpinorType

template<class Type , class Value >
typedef WeylSpinor<RightSpinorTag,Value> Herwig::SpinorHelicity::SpinorProduct< Type, Value >::RightSpinorType

Definition at line 263 of file SpinorHelicity.h.

Constructor & Destructor Documentation

◆ SpinorProduct()

template<class Type , class Value >
Herwig::SpinorHelicity::SpinorProduct< Type, Value >::SpinorProduct ( const LeftSpinorType left,
const RightSpinorType right 
)
inlineexplicit

Construct from two spinors; note that the spinor metric is included, when constructing spinors.

Typedefs break zero products like <p|q]

Definition at line 279 of file SpinorHelicity.h.

Member Function Documentation

◆ eval()

template<class Type , class Value >
ResultType Herwig::SpinorHelicity::SpinorProduct< Type, Value >::eval ( ) const
inline

Return result.

Definition at line 291 of file SpinorHelicity.h.

References Herwig::SpinorHelicity::SpinorProduct< Type, Value >::theResult.

◆ operator ResultType()

template<class Type , class Value >
Herwig::SpinorHelicity::SpinorProduct< Type, Value >::operator ResultType ( ) const
inline

Implicitly convert to complex value.

Definition at line 286 of file SpinorHelicity.h.

References Herwig::SpinorHelicity::SpinorProduct< Type, Value >::theResult.

◆ operator*=() [1/2]

template<class Type , class Value >
SpinorProduct & Herwig::SpinorHelicity::SpinorProduct< Type, Value >::operator*= ( complex< double >  x)
inline

Definition at line 310 of file SpinorHelicity.h.

◆ operator*=() [2/2]

template<class Type , class Value >
SpinorProduct & Herwig::SpinorHelicity::SpinorProduct< Type, Value >::operator*= ( double  x)
inline

Definition at line 305 of file SpinorHelicity.h.

◆ operator+=()

template<class Type , class Value >
SpinorProduct & Herwig::SpinorHelicity::SpinorProduct< Type, Value >::operator+= ( const SpinorProduct< Type, Value > &  other)
inline

Definition at line 295 of file SpinorHelicity.h.

◆ operator-=()

template<class Type , class Value >
SpinorProduct & Herwig::SpinorHelicity::SpinorProduct< Type, Value >::operator-= ( const SpinorProduct< Type, Value > &  other)
inline

Definition at line 300 of file SpinorHelicity.h.

Member Data Documentation

◆ theResult

template<class Type , class Value >
ResultType Herwig::SpinorHelicity::SpinorProduct< Type, Value >::theResult
private

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