ROOTPWA
TLSAmpl.h
Go to the documentation of this file.
1 #ifndef TLSAmpl_h
2 #define TLSAmpl_h
3 //
4 // Uncomment the following line
5 // if you want to work in CINT (root.cern.ch)
6 //
7 //#define __JCINT__
8 #ifndef __JCINT__
9 #define Int_t long long
10 #define Double_t double
11 #define Bool_t bool
12 #endif
13 
14 #include "TSpinWaveFunction.h"
15 
23 class TLSAmpl {
24 
25  private:
30 
36 
39 
40  public:
41 
42  TLSAmpl() {
43  J=0; L=0; S=0; delta=0;
44  Nterms=0;
45  };
46 
47  TLSAmpl(Int_t RankS1, Int_t RankS2,
48  Int_t RankL, Int_t RankJ,
49  Int_t delta, Int_t S_L,
50  Int_t cPsiInt, Int_t cPsiChi,
51  Int_t cChiPhi, Int_t cPsiPhi,
52  Int_t cPhiOme, Int_t cChiOme,
53  Int_t cPhiEps, Int_t cChiEps,
54  Int_t cNum);
55 
56  Int_t GetNterms() {return Nterms;};
57 
58  Int_t GetJ() {return J;};
59  Int_t GetL() {return L;};
60  Int_t GetS() {return S;};
61  Int_t Getdelta() {return delta;};
63  Bool_t CheckContraction(Int_t L_, Int_t S_, Int_t cPsI_, Int_t cPsC_,
64  Int_t cCP_, Int_t cPsP_, Int_t cPO_, Int_t cCO_,
65  Int_t cPE_, Int_t cCE_) {
66  if ( L!=L_ || S!=S_ || cPsI!=cPsI_ || cPsC!=cPsC_ || cCP!=cCP_ ||
67  cPsP!=cPsP_ || cPO!=cPO_ || cCO!=cCO_ || cPE!=cPE_ || cCE!=cCE_ )
68  return false;
69  return true;
70  }
72 
73  //ClassDef(TLSAmpl,1);
74 
75 };
76 
84 class TLSContrib {
85 
86  private:
93 
95  TFracNum NormFactor; // Square of normalisation factor
96  TFracNum *termFracNum; // Squares of prefactors
97  Int_t *termg1pot; // exponent of gamma_s
98  Int_t *termg2pot; // exponent of gamma_sigma
99 
101 
102  public:
103 
105  J=0; L=0; S=0; delta=0;
106  Nterms=0;
107  termFracNum=0;
108  termg1pot=0;
109  termg2pot=0;
110  };
111 
114 
116  if (J==b->J && L==b->L && S==b->S && cNum==b->cNum)
117  return true;
118  return false;
119  };
120  Int_t GetNterms() {return Nterms;};
122  Int_t Print();
123  Int_t PrintNR();
126  Int_t GetJ() {return J;};
127  Int_t GetL() {return L;};
128  Int_t GetS() {return S;};
129  Int_t GetDelta() {return delta;};
131  TFracNum* GetSpinCG() {return &SpinCG;};
133 
135  Int_t* GetTermg1pot() {return termg1pot;}; // exponent of gamma_s
136  Int_t* GetTermg2pot() {return termg2pot;}; // exponent of gamma_s
137 
138  //ClassDef(TLSContrib,1);
139 
140 };
141 
142 
150 class TLSNonRel {
151 
152  private:
159 
160  public:
161  TLSNonRel(TLSContrib *C);
162 
164  return (C->GetJ()==J && C->GetL()==L && C->GetS()==S) ? 1 : 0;
165  };
166  Int_t Add(TLSContrib *C);
167  Int_t GetL(){return L;};
168  Int_t GetS(){return S;};
169  Int_t Print();
170  Int_t PrintG();
171 
172  //ClassDef(TLSNonRel,1);
173 };
174 #endif