9 #ifndef ThePEG_TensorWaveFunction_H 10 #define ThePEG_TensorWaveFunction_H 14 #include "WaveFunctionBase.h" 15 #include "VectorWaveFunction.h" 16 #include <ThePEG/Helicity/LorentzTensor.h> 17 #include <ThePEG/Helicity/TensorSpinInfo.h> 18 #include <ThePEG/EventRecord/Particle.h> 19 #include <ThePEG/EventRecord/RhoDMatrix.h> const LorentzTensor< double > & wave() const
Return wavefunction as polarization vector.
void reset(unsigned int ihel, TensorPhase phase=default_tensor_phase)
Reset functions.
Complex xz() const
Get the component.
complex< Value > tx() const
Get t,x component.
Complex xt() const
Get the component.
Complex xy() const
Get the component.
Complex zy() const
Get the component.
std::complex< double > Complex
ThePEG code should use Complex for all complex scalars.
Complex tz() const
Get the component.
complex< Value > ty() const
Get t,y component.
Complex yx() const
Get the component.
TensorWaveFunction()
Default constructor.
complex< Value > xz() const
Get x,z component.
TransientConstRCPtr is a simple wrapper around a bare const pointer which can be assigned to and from...
The LorentzRotation class combine a SpinOneLorentzRotation and a spin SpinHalfLorentzRotation to prov...
TransientRCPtr is a simple wrapper around a bare pointer which can be assigned to and from an RCPtr a...
static void constructSpinInfo(const vector< LorentzTensor< double > > &waves, tPPtr part, Direction dir, bool time, bool massless)
Construct the SpinInfo object.
complex< Value > zz() const
Get z,z component.
This is the main namespace within which all identifiers in ThePEG are declared.
complex< Value > zy() const
Get z,y component.
Complex yz() const
Get the component.
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.
complex< Value > tz() const
Get t,z component.
An intermediate particle.
static void calculateWaveFunctions(vector< LorentzTensor< double > > &waves, tPPtr particle, Direction, bool massless, TensorPhase phase=default_tensor_phase)
Calculate the wavefunctions.
Complex yt() const
Get the component.
complex< Value > yy() const
Get y,y component.
TensorWaveFunction(const Lorentz5Momentum &p, tcPDPtr part, Direction dir)
Constructor, set the 5-momentum and direction, zero the wavefunction.
TensorPhase
Definition of the enumerated values of the phase to include in the calculation of the polarization te...
complex< Value > xy() const
Get x,y component.
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.
void calculateWaveFunction(unsigned int ihel, TensorPhase phase=default_tensor_phase)
Calculate the wavefunction.
complex< Value > zx() const
Get z,x component.
void transform(const LorentzRotation &r)
Perform the Lorentz transformation of the wave function.
complex< Value > yt() const
Get y,t component.
Complex operator()(int i, int j) const
Access to the wavefunction and its components.
LorentzTensor< double > _wf
Storage of the wavefunction as a Lorentz Tensor.
complex< Value > zt() const
Get z,t component.
Include the phase factor.
PDT::Spin iSpin() const
Get 2s+1 for the particle.
complex< Value > xt() const
Get x,t component.
Complex xx() const
Get the component.
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.
Complex tx() const
Get the component.
Complex tt() const
Get the component.
TensorWaveFunction(vector< TensorWaveFunction > &wave, tPPtr part, Direction dir, bool time, bool massless, bool=true, TensorPhase phase=default_tensor_phase)
Special for spin correlations.
A Direction object can be used to specify that some following operations should be assumed to be perf...
complex< Value > yz() const
Get y,z component.
complex< Value > tt() const
Get t,t component.
LorentzTensor & transform(const SpinOneLorentzRotation &r)
General Lorentz transformation.
Complex yy() const
Get the component.
tcPDPtr particle() const
Get the particle pointer.
complex< Value > yx() const
Get y,x component.
complex< Value > xx() const
Get x,x component.
The RhoDMatrix class is designed to implement the storage of the rho and D matrices which are require...
Complex zx() const
Get the component.
Complex zt() const
Get the component.
void transformMomentum(const LorentzRotation &r)
Perform the Lorentz transformation of the wave function.
Complex zz() const
Get the component.
Complex ty() const
Get the component.