thepeg is hosted by Hepforge, IPPP Durham
ThePEG 2.3.0
ThePEG::Helicity::VectorWaveFunction Class Reference

#include <VectorWaveFunction.h>

Inheritance diagram for ThePEG::Helicity::VectorWaveFunction:

Standard constructors and destructors.

LorentzPolarizationVector _wf
 Storage of the wavefunction as a Lorentz Vector.
 
 VectorWaveFunction (const Lorentz5Momentum &p, tcPDPtr part, const LorentzPolarizationVector &wave, Direction dir=intermediate)
 Constructor, set the momentum and Wavefunction, the direction can also be specified.
 
 VectorWaveFunction (const Lorentz5Momentum &p, tcPDPtr part, const Complex &x, const Complex &y, const Complex &z, const Complex &t)
 Constructor, set the momentum and components of the wavefunction.
 
 VectorWaveFunction (const Lorentz5Momentum &p, tcPDPtr part, unsigned int ihel, Direction dir, VectorPhase phase=default_vector_phase)
 Constructor, set the momentum, helicity and direction, optionally the choice of the phase.
 
 VectorWaveFunction (const Lorentz5Momentum &p, tcPDPtr part, Direction dir)
 Constructor, set the 5-momentum and direction, zero the wavefunction.
 
 VectorWaveFunction ()
 Default constructor.
 
 VectorWaveFunction (vector< VectorWaveFunction > &wave, tPPtr part, Direction dir, bool time, bool massless, bool=true, VectorPhase phase=default_vector_phase)
 Special for spin correlations.
 
const LorentzPolarizationVectorwave () const
 Access to the wavefunction and its components.
 
Complex x () const
 Get x component.
 
Complex y () const
 Get y component.
 
Complex z () const
 Get z component.
 
Complex t () const
 Get t component.
 
void reset (unsigned int ihel, VectorPhase phase=default_vector_phase)
 Reset functions.
 
void transform (const LorentzRotation &r)
 Perform the Lorentz transformation of the wave function.
 
static void calculateWaveFunctions (vector< LorentzPolarizationVector > &waves, tPPtr particle, Direction, bool massless, VectorPhase phase=default_vector_phase)
 Calculate the wavefunctions.
 
static void calculateWaveFunctions (vector< VectorWaveFunction > &waves, tPPtr particle, Direction, bool massless, VectorPhase phase=default_vector_phase)
 Calculate the wavefunctions.
 
static void calculateWaveFunctions (vector< VectorWaveFunction > &waves, const Lorentz5Momentum &momentum, tcPDPtr parton, Direction, bool massless, VectorPhase phase=default_vector_phase)
 Calculate the wavefunctions.
 
static void calculateWaveFunctions (vector< LorentzPolarizationVector > &waves, RhoDMatrix &rho, tPPtr particle, Direction, bool massless, VectorPhase phase=default_vector_phase)
 Calculate the wavefunctions.
 
static void calculateWaveFunctions (vector< VectorWaveFunction > &waves, RhoDMatrix &rho, tPPtr particle, Direction, bool massless, VectorPhase phase=default_vector_phase)
 Calculate the wavefunctions.
 
static void constructSpinInfo (const vector< LorentzPolarizationVector > &waves, tPPtr part, Direction dir, bool time, bool massless)
 Construct the SpinInfo object.
 
static void constructSpinInfo (const vector< VectorWaveFunction > &waves, tPPtr part, Direction dir, bool time, bool massless)
 Construct the SpinInfo object.
 
void calculateWaveFunction (unsigned int ihel, VectorPhase phase=default_vector_phase)
 Calculate the wavefunction.
 

Additional Inherited Members

- Public Member Functions inherited from ThePEG::Helicity::WaveFunctionBase
 WaveFunctionBase ()
 Constructors.
 
 WaveFunctionBase (const Lorentz5Momentum &p, tcPDPtr pd, Direction dir=intermediate)
 
Energy px () const
 Access to the momentum components and mass.
 
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
 Access to the 5-momentum.
 
long id () const
 Access to the particle properties.
 
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.
 
- Protected Member Functions inherited from ThePEG::Helicity::WaveFunctionBase
void transformMomentum (const LorentzRotation &r)
 Perform the Lorentz transformation of the wave function.
 

Detailed Description

Author
Peter Richardson

The VectorWaveFunction class is designed to store the wavefunction of a vector 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 vector using the LorentzPolarizationVector class it inherits from the WaveFunctionBase class to provide storage of the momentum and ParticleData for the vector boson.

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

There are two choices available for the calculation of the wavefunction. These are set using the VectorPhase enumeration which specifies a default choice. The first choice, vector_phase, includes a phase factor \(\exp(\pm i \phi)\) for the \(\pm\) helicity states while the second, vector_nophase, does not.

N.B. In our convention 0 is the \(-1\) helicity state and 1 is the \(0\) helicity state 2 is the \(+1\) helicity state

See also
WaveFunctionBase
LorentzPolarizationVector

Definition at line 50 of file VectorWaveFunction.h.

Constructor & Destructor Documentation

◆ VectorWaveFunction() [1/6]

ThePEG::Helicity::VectorWaveFunction::VectorWaveFunction ( const Lorentz5Momentum p,
tcPDPtr  part,
const LorentzPolarizationVector wave,
Direction  dir = intermediate 
)
inline

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

Parameters
pThe momentum.
partThe ParticleData pointer
waveThe wavefunction, i.e. the polarization vector.
dirThe direction of the particle.

Definition at line 64 of file VectorWaveFunction.h.

References ThePEG::Helicity::WaveFunctionBase::iSpin().

◆ VectorWaveFunction() [2/6]

ThePEG::Helicity::VectorWaveFunction::VectorWaveFunction ( const Lorentz5Momentum p,
tcPDPtr  part,
const Complex x,
const Complex y,
const Complex z,
const Complex t 
)
inline

Constructor, set the momentum and components of the wavefunction.

Parameters
pThe momentum.
partThe ParticleData pointer
xThe x component of the polarization vector
yThe y component of the polarization vector
zThe z component of the polarization vector
tThe t component of the polarization vector

Definition at line 81 of file VectorWaveFunction.h.

References ThePEG::Helicity::WaveFunctionBase::iSpin().

◆ VectorWaveFunction() [3/6]

ThePEG::Helicity::VectorWaveFunction::VectorWaveFunction ( const Lorentz5Momentum p,
tcPDPtr  part,
unsigned int  ihel,
Direction  dir,
VectorPhase  phase = default_vector_phase 
)
inline

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

Parameters
pThe momentum.
partThe ParticleData pointer.
ihelThe helicity (0,1,2 as described above.)
dirThe direction.
phaseThe phase choice.

Definition at line 97 of file VectorWaveFunction.h.

References calculateWaveFunction(), and ThePEG::Helicity::WaveFunctionBase::iSpin().

◆ VectorWaveFunction() [4/6]

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

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

Parameters
pThe 5-momentum.
partThe ParticleData pointer.
dirThe direction.

Definition at line 112 of file VectorWaveFunction.h.

References ThePEG::Helicity::WaveFunctionBase::iSpin().

◆ VectorWaveFunction() [5/6]

ThePEG::Helicity::VectorWaveFunction::VectorWaveFunction ( )
inline

Default constructor.

Definition at line 122 of file VectorWaveFunction.h.

◆ VectorWaveFunction() [6/6]

ThePEG::Helicity::VectorWaveFunction::VectorWaveFunction ( vector< VectorWaveFunction > &  wave,
tPPtr  part,
Direction  dir,
bool  time,
bool  massless,
bool  = true,
VectorPhase  phase = default_vector_phase 
)
inline

Special for spin correlations.

Todo:
make static?

Definition at line 127 of file VectorWaveFunction.h.

References calculateWaveFunctions(), constructSpinInfo(), and wave().

Member Function Documentation

◆ calculateWaveFunction()

void ThePEG::Helicity::VectorWaveFunction::calculateWaveFunction ( unsigned int  ihel,
VectorPhase  phase = default_vector_phase 
)
private

Calculate the wavefunction.

Parameters
ihelThe helicity (0,1,2 as described above.)
phaseThe phase choice.

Referenced by reset(), and VectorWaveFunction().

◆ reset()

void ThePEG::Helicity::VectorWaveFunction::reset ( unsigned int  ihel,
VectorPhase  phase = default_vector_phase 
)
inline

Reset functions.

Reset the helicity (recalculation the polarization vector).

Parameters
ihelThe new helicity (0,1,2 as described above.)
phaseThe phase choice.

Definition at line 174 of file VectorWaveFunction.h.

References calculateWaveFunction().

◆ t()

Complex ThePEG::Helicity::VectorWaveFunction::t ( ) const
inline

Get t component.

Definition at line 163 of file VectorWaveFunction.h.

References _wf.

◆ transform()

void ThePEG::Helicity::VectorWaveFunction::transform ( const LorentzRotation r)
inline

Perform the Lorentz transformation of the wave function.

Definition at line 184 of file VectorWaveFunction.h.

References _wf, ThePEG::LorentzVector< Value >::transform(), and ThePEG::Helicity::WaveFunctionBase::transformMomentum().

◆ wave()

const LorentzPolarizationVector & ThePEG::Helicity::VectorWaveFunction::wave ( ) const
inline

Access to the wavefunction and its components.

Return wavefunction as polarization vector.

Definition at line 143 of file VectorWaveFunction.h.

References _wf.

Referenced by VectorWaveFunction().

◆ x()

Complex ThePEG::Helicity::VectorWaveFunction::x ( ) const
inline

Get x component.

Definition at line 148 of file VectorWaveFunction.h.

References _wf.

◆ y()

Complex ThePEG::Helicity::VectorWaveFunction::y ( ) const
inline

Get y component.

Definition at line 153 of file VectorWaveFunction.h.

References _wf.

◆ z()

Complex ThePEG::Helicity::VectorWaveFunction::z ( ) const
inline

Get z component.

Definition at line 158 of file VectorWaveFunction.h.

References _wf.

Member Data Documentation

◆ _wf

LorentzPolarizationVector ThePEG::Helicity::VectorWaveFunction::_wf
private

Storage of the wavefunction as a Lorentz Vector.

Definition at line 256 of file VectorWaveFunction.h.

Referenced by t(), transform(), wave(), x(), y(), and z().


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