thepeg is hosted by Hepforge, IPPP Durham
 ThePEG  2.1.5
ThePEG::Helicity::TensorWaveFunction Class Reference

#include <TensorWaveFunction.h>

Inheritance diagram for ThePEG::Helicity::TensorWaveFunction: [legend]

## Public Member Functions

void transform (const LorentzRotation &r)
Perform the Lorentz transformation of the wave function.

Standard constructors and destructors.
TensorWaveFunction (const Lorentz5Momentum &p, tcPDPtr part, const LorentzTensor< double > &wave, Direction dir=intermediate)
Constructor, set the momentum and Wavefunction, the direction can also be specified. More...

TensorWaveFunction (const Lorentz5Momentum &p, tcPDPtr part, Complex xx, Complex xy, Complex xz, Complex xt, Complex yx, Complex yy, Complex yz, Complex yt, Complex zx, Complex zy, Complex zz, Complex zt, Complex tx, Complex ty, Complex tz, Complex tt)
Constructor, set the momentum and the components of the tensor. More...

TensorWaveFunction (const Lorentz5Momentum &p, tcPDPtr part, unsigned int ihel, Direction dir, TensorPhase phase=default_tensor_phase)
Constructor, set the momentum, helicity, direction and optionally the phase. More...

TensorWaveFunction (const Lorentz5Momentum &p, tcPDPtr part, Direction dir)
Constructor, set the 5-momentum and direction, zero the wavefunction. More...

TensorWaveFunction ()
Default constructor.

TensorWaveFunction (vector< TensorWaveFunction > &wave, tPPtr part, Direction dir, bool time, bool massless, bool=true, TensorPhase phase=default_tensor_phase)
Special for spin correlations. More...

Complex operator() (int i, int j) const

Complexoperator() (int i, int j)
Set components by index.

const LorentzTensor< double > & wave () const
Return wavefunction as polarization vector.

Complex xx () const
Get the component.

Complex yx () const
Get the component.

Complex zx () const
Get the component.

Complex tx () const
Get the component.

Complex xy () const
Get the component.

Complex yy () const
Get the component.

Complex zy () const
Get the component.

Complex ty () const
Get the component.

Complex xz () const
Get the component.

Complex yz () const
Get the component.

Complex zz () const
Get the component.

Complex tz () const
Get the component.

Complex xt () const
Get the component.

Complex yt () const
Get the component.

Complex zt () const
Get the component.

Complex tt () const
Get the component.

void reset (unsigned int ihel, TensorPhase phase=default_tensor_phase)
Reset functions. More... Public Member Functions inherited from ThePEG::Helicity::WaveFunctionBase
WaveFunctionBase ()
Constructors. More...

WaveFunctionBase (const Lorentz5Momentum &p, tcPDPtr pd, Direction dir=intermediate)

Energy px () const

Energy py () const
Get the y component of the momentum.

Energy pz () const
Get the z component of the momentum.

Energy e () const
Get the energy.

Energy mass () const
Get the mass.

Energy2 m2 () const
Get off-shell mass squared.

const Lorentz5Momentummomentum () const

long id () const

PDT::Spin iSpin () const
Get 2s+1 for the particle.

tcPDPtr particle () const
Get the particle pointer.

ThePEG::Helicity::Direction direction () const
Get the direction of particle.

void direction (ThePEG::Helicity::Direction in)
Set the direction of the particle.

## Static Public Member Functions

static void calculateWaveFunctions (vector< LorentzTensor< double > > &waves, tPPtr particle, Direction, bool massless, TensorPhase phase=default_tensor_phase)
Calculate the wavefunctions.

static void calculateWaveFunctions (vector< TensorWaveFunction > &waves, tPPtr particle, Direction, bool massless, TensorPhase phase=default_tensor_phase)
Calculate the wavefunctions.

static void calculateWaveFunctions (vector< LorentzTensor< double > > &waves, RhoDMatrix &rho, tPPtr particle, Direction, bool massless, TensorPhase phase=default_tensor_phase)
Calculate the wavefunctions.

static void calculateWaveFunctions (vector< TensorWaveFunction > &waves, RhoDMatrix &rho, tPPtr particle, Direction, bool massless, TensorPhase phase=default_tensor_phase)
Calculate the wavefunctions.

static void constructSpinInfo (const vector< LorentzTensor< double > > &waves, tPPtr part, Direction dir, bool time, bool massless)
Construct the SpinInfo object.

static void constructSpinInfo (const vector< TensorWaveFunction > &waves, tPPtr part, Direction dir, bool time, bool massless)
Construct the SpinInfo object.

## Private Member Functions

void calculateWaveFunction (unsigned int ihel, TensorPhase phase=default_tensor_phase)
Calculate the wavefunction. More...

## Private Attributes

LorentzTensor< double > _wf
Storage of the wavefunction as a Lorentz Tensor. Protected Member Functions inherited from ThePEG::Helicity::WaveFunctionBase
void transformMomentum (const LorentzRotation &r)
Perform the Lorentz transformation of the wave function.

## Detailed Description

The TensorWaveFunction class is designed to store the wavefunction of a tensor in a form suitable for use in helicity amplitude calculations of the matrix element using a similar philosophy to the FORTRAN HELAS code.

In addition to storing the tensor using the LorentzTensor class it inherits from the WaveFunctionBase class to provide storage of the momentum and ParticleData for the tensor particle.

This class also contains the code which does the actually calculation of the tensor wavefunction.

There are two choices available for the calculation of the wavefunction. These are set using the TensorPhase enumeration which specifies a default choice. The first choice, tensor_phase, includes a phase factor for the helicity states while the second, tensor_nophase, does not.

N.B. In our convention 0 is the helicity state, 1 is the helicity state, 2 is the helicity state, 3 is the helicity state and 4 is the helicity state.

WaveFunctionBase
LorentzTensor
VectorWaveFunction

Definition at line 67 of file TensorWaveFunction.h.

## ◆ TensorWaveFunction() [1/5]

 ThePEG::Helicity::TensorWaveFunction::TensorWaveFunction ( const Lorentz5Momentum & p, tcPDPtr part, const LorentzTensor< double > & wave, Direction dir = intermediate )
inline

Constructor, set the momentum and Wavefunction, the direction can also be specified.

Parameters
 p The momentum. part The ParticleData pointer wave The wavefunction, i.e. the polarization vector. dir The direction of the particle.

Definition at line 81 of file TensorWaveFunction.h.

References ThePEG::Helicity::WaveFunctionBase::iSpin(), and ThePEG::PDT::Spin2.

## ◆ TensorWaveFunction() [2/5]

 ThePEG::Helicity::TensorWaveFunction::TensorWaveFunction ( const Lorentz5Momentum & p, tcPDPtr part, Complex xx, Complex xy, Complex xz, Complex xt, Complex yx, Complex yy, Complex yz, Complex yt, Complex zx, Complex zy, Complex zz, Complex zt, Complex tx, Complex ty, Complex tz, Complex tt )
inline

Constructor, set the momentum and the components of the tensor.

Parameters
 p The momentum. part The ParticleData pointer xx The component. xy The component. xz The component. xt The component. yx The component. yy The component. yz The component. yt The component. zx The component. zy The component. zz The component. zt The component. tx The component. ty The component. tz The component. tt The component.

Definition at line 110 of file TensorWaveFunction.h.

References ThePEG::Helicity::WaveFunctionBase::iSpin(), and ThePEG::PDT::Spin2.

## ◆ TensorWaveFunction() [3/5]

 ThePEG::Helicity::TensorWaveFunction::TensorWaveFunction ( const Lorentz5Momentum & p, tcPDPtr part, unsigned int ihel, Direction dir, TensorPhase phase = default_tensor_phase )
inline

Constructor, set the momentum, helicity, direction and optionally the phase.

Parameters
 p The momentum. part The ParticleData pointer ihel The helicity (0,1,2,3,4 as described above.) dir The direction. phase The phase choice.

Definition at line 131 of file TensorWaveFunction.h.

## ◆ TensorWaveFunction() [4/5]

 ThePEG::Helicity::TensorWaveFunction::TensorWaveFunction ( const Lorentz5Momentum & p, tcPDPtr part, Direction dir )
inline

Constructor, set the 5-momentum and direction, zero the wavefunction.

Parameters
 p The momentum. part The ParticleData pointer. dir The direction.

Definition at line 146 of file TensorWaveFunction.h.

References ThePEG::Helicity::WaveFunctionBase::iSpin(), and ThePEG::PDT::Spin2.

## ◆ TensorWaveFunction() [5/5]

 ThePEG::Helicity::TensorWaveFunction::TensorWaveFunction ( vector< TensorWaveFunction > & wave, tPPtr part, Direction dir, bool time, bool massless, bool = true, TensorPhase phase = default_tensor_phase )
inline

Special for spin correlations.

Todo:
make static?

Definition at line 161 of file TensorWaveFunction.h.

References calculateWaveFunctions(), and constructSpinInfo().

## ◆ calculateWaveFunction()

 void ThePEG::Helicity::TensorWaveFunction::calculateWaveFunction ( unsigned int ihel, TensorPhase phase = default_tensor_phase )
private

Calculate the wavefunction.

Parameters
 ihel The helicity (0,1,2,3,4 as described above.) phase The phase choice.

Referenced by reset(), TensorWaveFunction(), and transform().

## ◆ operator()()

 Complex ThePEG::Helicity::TensorWaveFunction::operator() ( int i, int j ) const
inline

Subscript operator for the wavefunction.

Definition at line 177 of file TensorWaveFunction.h.

References _wf.

## ◆ reset()

 void ThePEG::Helicity::TensorWaveFunction::reset ( unsigned int ihel, TensorPhase phase = default_tensor_phase )
inline

Reset functions.

Reset helicity (recalculate the tensor ).

Parameters
 ihel The new helicity (0,1,2,3,4 as described above.) phase The phase choice.

Definition at line 284 of file TensorWaveFunction.h.

References calculateWaveFunction().

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