ThePEG 2.3.0
|
#include <SpinorWaveFunction.h>
Standard constructors and destructors. | |
LorentzSpinor< double > | _wf |
Storage of the Lorentz Spinor. | |
SpinorWaveFunction (const Lorentz5Momentum &p, tcPDPtr part, complex< double > s1, complex< double > s2, complex< double > s3, complex< double > s4) | |
Constructor, set the momentum and the components of the spinor. | |
SpinorWaveFunction (const Lorentz5Momentum &p, tcPDPtr part, const LorentzSpinor< double > &wave, Direction dir=intermediate) | |
Constructor, set the momentum and the wavefunction. | |
SpinorWaveFunction (const tPPtr &p, const LorentzSpinor< SqrtEnergy > &wave, Direction dir=intermediate) | |
Constructor, set the momentum and the wavefunction. | |
SpinorWaveFunction (const Lorentz5Momentum &p, tcPDPtr part, unsigned int ihel, Direction dir) | |
Constructor, set the momentum, helicity, direction. | |
SpinorWaveFunction (const Lorentz5Momentum &p, tcPDPtr part, Direction dir) | |
Constructor, set the momentum, direction, zero the wavefunction. | |
SpinorWaveFunction () | |
Default constructor. | |
SpinorWaveFunction (vector< SpinorWaveFunction > &wave, tPPtr part, Direction dir, bool time, bool=true) | |
Special for spin correlations. | |
complex< double > | operator() (int i) const |
Access to the wavefunction and its components. | |
const LorentzSpinor< double > & | wave () const |
Return wavefunction as LorentzSpinor<double>. | |
LorentzSpinor< SqrtEnergy > | dimensionedWave () const |
Return wavefunction as LorentzSpinor<SqrtEnergy>. | |
complex< double > | s1 () const |
Get the first spin component component. | |
complex< double > | s2 () const |
Get the second spin component component. | |
complex< double > | s3 () const |
Get the third spin component component. | |
complex< double > | s4 () const |
Get the fourth spin component component. | |
void | conjugate () |
Take the conjugate of the spinor \(u_c=C\bar{u}^T\). | |
SpinorBarWaveFunction | bar () |
Return the barred spinor. | |
void | reset (unsigned int ihel) |
Reset functions. | |
void | transform (const LorentzRotation &r) |
Perform the Lorentz transformation of the wave function. | |
static void | calculateWaveFunctions (vector< LorentzSpinor< SqrtEnergy > > &waves, tPPtr particle, Direction) |
Calculate the wavefunctions. | |
static void | calculateWaveFunctions (vector< SpinorWaveFunction > &waves, tPPtr particle, Direction) |
Calculate the wavefunctions. | |
static void | calculateWaveFunctions (vector< SpinorWaveFunction > &waves, const Lorentz5Momentum &momentum, tcPDPtr parton, Direction) |
Calculate the wavefunctions. | |
static void | calculateWaveFunctions (vector< LorentzSpinor< SqrtEnergy > > &waves, RhoDMatrix &rho, tPPtr particle, Direction) |
Calculate the wavefunctions. | |
static void | calculateWaveFunctions (vector< SpinorWaveFunction > &waves, RhoDMatrix &rho, tPPtr particle, Direction) |
Calculate the wavefunctions. | |
static void | constructSpinInfo (const vector< LorentzSpinor< SqrtEnergy > > &waves, tPPtr part, Direction dir, bool time) |
Construct the SpinInfo object. | |
static void | constructSpinInfo (const vector< SpinorWaveFunction > &waves, tPPtr part, Direction dir, bool time) |
Construct the SpinInfo object. | |
void | calculateWaveFunction (unsigned int ihel) |
Calcuate the wavefunction. | |
LorentzSpinor< SqrtEnergy > | dimensionedWf () const |
Return wavefunction as LorentzSpinor<SqrtEnergy> | |
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 Lorentz5Momentum & | momentum () 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. | |
The SpinorWaveFunction class is designed to store the wavefunction of a spinor 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 spinor using the LorentzSpinor class it inherits from the WaveFunctionBase class to provide storage of the momentum and getParticleData for the fermion.
This class also contains the code which does the actually calculation of the spinor for an external particle.
When calculating the wavefunction the direction of the particle is used,
i.e.
N.B. In our convention 0 is the \(-\frac12\) helicity state and 1 is the \(+\frac12\) helicity state
Definition at line 56 of file SpinorWaveFunction.h.
|
inline |
Constructor, set the momentum and the components of the spinor.
p | The momentum. |
part | The ParticleData pointer. |
s1 | The first component |
s2 | The second component |
s3 | The third component |
s4 | The fourth component |
Definition at line 71 of file SpinorWaveFunction.h.
References ThePEG::Helicity::WaveFunctionBase::iSpin().
|
inline |
Constructor, set the momentum and the wavefunction.
p | The momentum. |
part | The ParticleData pointer. |
wave | The wavefunction. |
dir | The direction of the particle |
Definition at line 85 of file SpinorWaveFunction.h.
References ThePEG::Helicity::WaveFunctionBase::iSpin().
|
inline |
Constructor, set the momentum and the wavefunction.
p | The particle |
wave | The wavefunction. |
dir | The direction of the particle |
Definition at line 99 of file SpinorWaveFunction.h.
References _wf, ThePEG::Helicity::WaveFunctionBase::iSpin(), and wave().
|
inline |
Constructor, set the momentum, helicity, direction.
p | The momentum. |
part | The ParticleData pointer. |
ihel | The helicity (0,1 as described above.) |
dir | The direction. |
Definition at line 115 of file SpinorWaveFunction.h.
References calculateWaveFunction(), and ThePEG::Helicity::WaveFunctionBase::iSpin().
|
inline |
Constructor, set the momentum, direction, zero the wavefunction.
p | The momentum. |
part | The ParticleData pointer. |
dir | The direction. |
Definition at line 131 of file SpinorWaveFunction.h.
References ThePEG::Helicity::WaveFunctionBase::iSpin().
|
inline |
Default constructor.
Definition at line 141 of file SpinorWaveFunction.h.
|
inline |
Special for spin correlations.
Definition at line 148 of file SpinorWaveFunction.h.
References calculateWaveFunctions(), constructSpinInfo(), and wave().
|
private |
Calcuate the wavefunction.
ihel | The helicity (0,1 as described above.) |
Referenced by reset(), and SpinorWaveFunction().
|
inline |
Take the conjugate of the spinor \(u_c=C\bar{u}^T\).
This operation transforms u-spinors to v-spinors and vice-versa and is required when dealing with majorana particles.
Definition at line 203 of file SpinorWaveFunction.h.
References _wf, and ThePEG::Helicity::LorentzSpinor< Value >::conjugate().
|
inline |
Return wavefunction as LorentzSpinor<SqrtEnergy>.
Definition at line 175 of file SpinorWaveFunction.h.
References dimensionedWf().
|
inlineprivate |
Return wavefunction as LorentzSpinor<SqrtEnergy>
Definition at line 299 of file SpinorWaveFunction.h.
References _wf, and ThePEG::Helicity::LorentzSpinor< Value >::Type().
Referenced by dimensionedWave().
|
inline |
Access to the wavefunction and its components.
Subscript operator for the wavefunction.
Definition at line 162 of file SpinorWaveFunction.h.
References _wf.
|
inline |
Reset functions.
Reset the helicity (calculates the new spinor).
ihel | The helicity (0,1 as described above.) |
Definition at line 220 of file SpinorWaveFunction.h.
References calculateWaveFunction().
|
inline |
Get the first spin component component.
Definition at line 180 of file SpinorWaveFunction.h.
References _wf, and ThePEG::Helicity::LorentzSpinor< Value >::s1().
|
inline |
Get the second spin component component.
Definition at line 185 of file SpinorWaveFunction.h.
References _wf, and ThePEG::Helicity::LorentzSpinor< Value >::s2().
|
inline |
Get the third spin component component.
Definition at line 190 of file SpinorWaveFunction.h.
References _wf, and ThePEG::Helicity::LorentzSpinor< Value >::s3().
|
inline |
Get the fourth spin component component.
Definition at line 195 of file SpinorWaveFunction.h.
References _wf, and ThePEG::Helicity::LorentzSpinor< Value >::s4().
|
inline |
Perform the Lorentz transformation of the wave function.
Definition at line 230 of file SpinorWaveFunction.h.
References _wf, ThePEG::Helicity::LorentzSpinor< Value >::transform(), and ThePEG::Helicity::WaveFunctionBase::transformMomentum().
|
inline |
Return wavefunction as LorentzSpinor<double>.
Definition at line 170 of file SpinorWaveFunction.h.
References _wf.
Referenced by SpinorWaveFunction().
|
private |
Storage of the Lorentz Spinor.
Definition at line 296 of file SpinorWaveFunction.h.
Referenced by conjugate(), dimensionedWf(), operator()(), s1(), s2(), s3(), s4(), SpinorWaveFunction(), transform(), and wave().