BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
EvtRaritaSchwinger.hh
Go to the documentation of this file.
1//--------------------------------------------------------------------------
2//
3// Environment:
4// This software is part of the EvtGen package developed jointly
5// for the BaBar and CLEO collaborations. If you use all or part
6// of it, please give an appropriate acknowledgement.
7//
8// Copyright Information: See EvtGen/COPYRIGHT
9// Copyright (C) 2000 Caltech, UCSB
10//
11// Module: EvtGen/EvtRaritaSchwing.hh
12//
13// Description:Class to handle spin 3/2
14//
15// Modification history:
16//
17// RYD April 23, 2000 Module created
18//
19//------------------------------------------------------------------------
20
21#ifndef EVTRARITASCHWINGER_HH
22#define EVTRARITASCHWINGER_HH
23
24#include "EvtComplex.hh"
25#include "EvtDiracSpinor.hh"
26#include "EvtVector4C.hh"
27#include "EvtVector4R.hh"
28
30EvtRaritaSchwinger rotateEuler( const EvtRaritaSchwinger& rs, double alpha, double beta,
31 double gamma );
36EvtRaritaSchwinger conj( const EvtRaritaSchwinger& u2 ); // pangcy add
40
41//========================
43
45 double beta, double gamma );
46 friend EvtRaritaSchwinger boostTo( const EvtRaritaSchwinger& rs, const EvtVector4R p4 );
47 friend EvtRaritaSchwinger boostTo( const EvtRaritaSchwinger& rs, const EvtVector3R boost );
48
51 friend EvtRaritaSchwinger conj( const EvtRaritaSchwinger& u2 ); // pangcy add
53 const EvtRaritaSchwinger& u2 );
55 const EvtRaritaSchwinger& u2 );
56
57 friend EvtComplex operator*( const EvtRaritaSchwinger& u1, const EvtRaritaSchwinger& u2 );
58
59public:
60 inline EvtRaritaSchwinger();
61 virtual ~EvtRaritaSchwinger();
62 inline EvtRaritaSchwinger( const EvtRaritaSchwinger& rs );
64
65 void set( int i, int j, const EvtComplex& sp );
66 // inline const EvtComplex& get(int i, int j) const; //pangcy add
67
68 void applyRotateEuler( double alpha, double beta, double gamma );
69 void applyBoostTo( const EvtVector4R p4 );
70 void applyBoostTo( const EvtVector3R boost );
71 EvtRaritaSchwinger conj() const; // pangcy add
72
75
76 EvtComplex get( int i, int j ) const;
77 friend std::ostream& operator<<( std::ostream& s, const EvtRaritaSchwinger& rs );
78
79 EvtVector4C getVector( int i ) const;
80 EvtDiracSpinor getSpinor( int i ) const;
81
82 void setVector( int i, const EvtVector4C& v );
83 void setSpinor( int i, const EvtDiracSpinor& sp );
84
85private:
86 // First index in spinor index, second is Lorentz index.
87 EvtComplex _rs[4][4];
88};
89
91
92 int i, j;
93 for ( i = 0; i < 4; i++ )
94 {
95 for ( j = 0; j < 4; j++ ) { _rs[i][j] = 0.0; }
96 }
97}
98
100
101 int i, j;
102 for ( i = 0; i < 4; i++ )
103 {
104 for ( j = 0; j < 4; j++ ) { _rs[i][j] = rs._rs[i][j]; }
105 }
106}
107
109
110 int i, j;
111 for ( i = 0; i < 4; i++ )
112 {
113 for ( j = 0; j < 4; j++ ) { _rs[i][j] = rs._rs[i][j]; }
114 }
115
116 return *this;
117}
118
119#endif
double alpha
EvtRaritaSchwinger operator+(const EvtRaritaSchwinger &u1, const EvtRaritaSchwinger &u2)
EvtRaritaSchwinger boostTo(const EvtRaritaSchwinger &rs, const EvtVector4R p4)
EvtRaritaSchwinger conj(const EvtRaritaSchwinger &u2)
EvtRaritaSchwinger rotateEuler(const EvtRaritaSchwinger &rs, double alpha, double beta, double gamma)
EvtRaritaSchwinger operator-(const EvtRaritaSchwinger &u1, const EvtRaritaSchwinger &u2)
EvtComplex operator*(const EvtRaritaSchwinger &u1, const EvtRaritaSchwinger &u2)
EvtRaritaSchwinger dirProd(EvtVector4R v, EvtDiracSpinor u)
XmlRpcServer s
**********Class see also m_nmax DOUBLE PRECISION m_amel DOUBLE PRECISION m_x2 DOUBLE PRECISION m_alfinv DOUBLE PRECISION m_Xenph INTEGER m_KeyWtm INTEGER m_idyfs DOUBLE PRECISION m_zini DOUBLE PRECISION m_q2 DOUBLE PRECISION m_Wt_KF DOUBLE PRECISION m_WtCut INTEGER m_KFfin *COMMON c_KarLud $ !Input CMS energy[GeV] $ !CMS energy after beam spread beam strahlung[GeV] $ !Beam energy spread[GeV] $ !z boost due to beam spread $ !electron beam mass *ff pair spectrum $ !minimum v
Definition KarLud.h:35
EvtDiracSpinor getSpinor(int i) const
friend EvtRaritaSchwinger operator+(const EvtRaritaSchwinger &u1, const EvtRaritaSchwinger &u2)
void applyRotateEuler(double alpha, double beta, double gamma)
void setSpinor(int i, const EvtDiracSpinor &sp)
friend EvtRaritaSchwinger boostTo(const EvtRaritaSchwinger &rs, const EvtVector4R p4)
void set(int i, int j, const EvtComplex &sp)
EvtRaritaSchwinger conj() const
EvtRaritaSchwinger & operator=(const EvtRaritaSchwinger &rs)
EvtComplex get(int i, int j) const
EvtRaritaSchwinger & operator+=(const EvtRaritaSchwinger &u2)
friend EvtRaritaSchwinger conj(const EvtRaritaSchwinger &u2)
friend EvtRaritaSchwinger rotateEuler(const EvtRaritaSchwinger &rs, double alpha, double beta, double gamma)
EvtRaritaSchwinger & operator-=(const EvtRaritaSchwinger &u2)
friend EvtRaritaSchwinger operator-(const EvtRaritaSchwinger &u1, const EvtRaritaSchwinger &u2)
friend EvtComplex operator*(const EvtRaritaSchwinger &u1, const EvtRaritaSchwinger &u2)
void setVector(int i, const EvtVector4C &v)
friend std::ostream & operator<<(std::ostream &s, const EvtRaritaSchwinger &rs)
void applyBoostTo(const EvtVector4R p4)
friend EvtRaritaSchwinger dirProd(EvtVector4R v, EvtDiracSpinor u)
EvtVector4C getVector(int i) const