Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
genie::RSHelicityAmpl Class Reference

A class holding the Rein-Sehgal's helicity amplitudes. More...

#include <RSHelicityAmpl.h>

Public Member Functions

 RSHelicityAmpl ()
 
 RSHelicityAmpl (const RSHelicityAmpl &hamp)
 
 ~RSHelicityAmpl ()
 
double AmpMinus1 (void) const
 return helicity amplitude More...
 
double AmpPlus1 (void) const
 
double AmpMinus3 (void) const
 
double AmpPlus3 (void) const
 
double Amp0Minus (void) const
 
double Amp0Plus (void) const
 
double Amp2Minus1 (void) const
 return |helicity amplitude|^2 More...
 
double Amp2Plus1 (void) const
 
double Amp2Minus3 (void) const
 
double Amp2Plus3 (void) const
 
double Amp20Minus (void) const
 
double Amp20Plus (void) const
 
void Print (ostream &stream) const
 

Private Member Functions

void Init (void)
 

Private Attributes

double fMinus1
 
double fPlus1
 
double fMinus3
 
double fPlus3
 
double f0Minus
 
double f0Plus
 

Friends

class RSHelicityAmplModelCC
 
class RSHelicityAmplModelNCp
 
class RSHelicityAmplModelNCn
 
class RSHelicityAmplModelEMp
 
class RSHelicityAmplModelEMn
 
ostream & operator<< (ostream &stream, const RSHelicityAmpl &hamp)
 

Detailed Description

A class holding the Rein-Sehgal's helicity amplitudes.

This class is using the Strategy Pattern.
It can accept requests to calculate itself, for a given interaction, that it then delegates to the algorithmic object, implementing the RSHelicityAmplModelI interface, that it finds attached to itself.

Author
Costas Andreopoulos <constantinos.andreopoulos cern.ch> University of Liverpool & STFC Rutherford Appleton Laboratory

May 03, 2004

Copyright (c) 2003-2020, The GENIE Collaboration For the full text of the license visit http://copyright.genie-mc.org

Definition at line 40 of file RSHelicityAmpl.h.

Constructor & Destructor Documentation

RSHelicityAmpl::RSHelicityAmpl ( )

Definition at line 25 of file RSHelicityAmpl.cxx.

26 {
27  this->Init();
28 }
RSHelicityAmpl::RSHelicityAmpl ( const RSHelicityAmpl hamp)

Definition at line 30 of file RSHelicityAmpl.cxx.

31 {
32  fMinus1 = hamp.AmpMinus1();
33  fPlus1 = hamp.AmpPlus1();
34  fMinus3 = hamp.AmpMinus3();
35  fPlus3 = hamp.AmpPlus3();
36  f0Minus = hamp.Amp0Minus();
37  f0Plus = hamp.Amp0Plus();
38 }
double AmpMinus3(void) const
double AmpPlus3(void) const
double Amp0Plus(void) const
double AmpMinus1(void) const
return helicity amplitude
double Amp0Minus(void) const
double AmpPlus1(void) const
genie::RSHelicityAmpl::~RSHelicityAmpl ( )
inline

Definition at line 52 of file RSHelicityAmpl.h.

52 { }

Member Function Documentation

double genie::RSHelicityAmpl::Amp0Minus ( void  ) const
inline

Definition at line 59 of file RSHelicityAmpl.h.

59 { return f0Minus; } /* f(0-) */
double genie::RSHelicityAmpl::Amp0Plus ( void  ) const
inline

Definition at line 60 of file RSHelicityAmpl.h.

60 { return f0Plus; } /* f(0+) */
double genie::RSHelicityAmpl::Amp20Minus ( void  ) const
inline

Definition at line 67 of file RSHelicityAmpl.h.

67 { return TMath::Power(f0Minus, 2.); } /* |f(0-)|^2 */
double genie::RSHelicityAmpl::Amp20Plus ( void  ) const
inline

Definition at line 68 of file RSHelicityAmpl.h.

68 { return TMath::Power(f0Plus, 2.); } /* |f(0+)|^2 */
double genie::RSHelicityAmpl::Amp2Minus1 ( void  ) const
inline

return |helicity amplitude|^2

Definition at line 63 of file RSHelicityAmpl.h.

63 { return TMath::Power(fMinus1, 2.); } /* |f(-1)|^2 */
double genie::RSHelicityAmpl::Amp2Minus3 ( void  ) const
inline

Definition at line 65 of file RSHelicityAmpl.h.

65 { return TMath::Power(fMinus3, 2.); } /* |f(-3)|^2 */
double genie::RSHelicityAmpl::Amp2Plus1 ( void  ) const
inline

Definition at line 64 of file RSHelicityAmpl.h.

64 { return TMath::Power(fPlus1, 2.); } /* |f(+1)|^2 */
double genie::RSHelicityAmpl::Amp2Plus3 ( void  ) const
inline

Definition at line 66 of file RSHelicityAmpl.h.

66 { return TMath::Power(fPlus3, 2.); } /* |f(+3)|^2 */
double genie::RSHelicityAmpl::AmpMinus1 ( void  ) const
inline

return helicity amplitude

Definition at line 55 of file RSHelicityAmpl.h.

55 { return fMinus1; } /* f(-1) */
double genie::RSHelicityAmpl::AmpMinus3 ( void  ) const
inline

Definition at line 57 of file RSHelicityAmpl.h.

57 { return fMinus3; } /* f(-3) */
double genie::RSHelicityAmpl::AmpPlus1 ( void  ) const
inline

Definition at line 56 of file RSHelicityAmpl.h.

56 { return fPlus1; } /* f(+1) */
double genie::RSHelicityAmpl::AmpPlus3 ( void  ) const
inline

Definition at line 58 of file RSHelicityAmpl.h.

58 { return fPlus3; } /* f(+3) */
void RSHelicityAmpl::Init ( void  )
private

Definition at line 51 of file RSHelicityAmpl.cxx.

52 {
53  fMinus1 = 0.0;
54  fPlus1 = 0.0;
55  fMinus3 = 0.0;
56  fPlus3 = 0.0;
57  f0Minus = 0.0;
58  f0Plus = 0.0;
59 }
void RSHelicityAmpl::Print ( ostream &  stream) const

Definition at line 40 of file RSHelicityAmpl.cxx.

41 {
42  stream << endl;
43  stream << " f(-1) = " << fMinus1 << endl;
44  stream << " f(+1) = " << fPlus1 << endl;
45  stream << " f(-3) = " << fMinus3 << endl;
46  stream << " f(+3) = " << fPlus3 << endl;
47  stream << " f(0-) = " << f0Minus << endl;
48  stream << " f(0+) = " << f0Plus << endl;
49 }
QTextStream & endl(QTextStream &s)

Friends And Related Function Documentation

ostream& operator<< ( ostream &  stream,
const RSHelicityAmpl hamp 
)
friend

Definition at line 18 of file RSHelicityAmpl.cxx.

19  {
20  hamp.Print(stream);
21  return stream;
22  }
void Print(ostream &stream) const
friend class RSHelicityAmplModelCC
friend

Definition at line 42 of file RSHelicityAmpl.h.

friend class RSHelicityAmplModelEMn
friend

Definition at line 46 of file RSHelicityAmpl.h.

friend class RSHelicityAmplModelEMp
friend

Definition at line 45 of file RSHelicityAmpl.h.

friend class RSHelicityAmplModelNCn
friend

Definition at line 44 of file RSHelicityAmpl.h.

friend class RSHelicityAmplModelNCp
friend

Definition at line 43 of file RSHelicityAmpl.h.

Member Data Documentation

double genie::RSHelicityAmpl::f0Minus
private

Definition at line 82 of file RSHelicityAmpl.h.

double genie::RSHelicityAmpl::f0Plus
private

Definition at line 83 of file RSHelicityAmpl.h.

double genie::RSHelicityAmpl::fMinus1
private

Definition at line 78 of file RSHelicityAmpl.h.

double genie::RSHelicityAmpl::fMinus3
private

Definition at line 80 of file RSHelicityAmpl.h.

double genie::RSHelicityAmpl::fPlus1
private

Definition at line 79 of file RSHelicityAmpl.h.

double genie::RSHelicityAmpl::fPlus3
private

Definition at line 81 of file RSHelicityAmpl.h.


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