Heavy ion Analysis Libriares
Loading...
Searching...
No Matches
FemtoWeightGeneratorLednicky.h
1/*
2 * FemtoWeightGeneratorLednicky.h
3 *
4 * derived from ALICE AliFemtoWeightGeneratorLednicky
5 * Created on: 21-08-2013
6 * Author: Daniel Wielanek
7 * E-mail: daniel.wielanek@gmail.com
8 * Warsaw University of Technology, Faculty of Physics
9 */
10
11#ifndef HALFEMTOWEIGHTGENERATORLEDNICKY_H_
12#define HALFEMTOWEIGHTGENERATORLEDNICKY_H_
13
14#include "FemtoWeightGenerator.h"
15
19namespace Hal {
22
23 protected:
27 double fWei;
31 double fWein;
35 double fWeif;
39 double fWeightDen;
43 int fItest; //
44
45 // int mNs;
49 int fIch;
53 int fIqs;
57 int fIsi;
61 int fI3c;
65 double fNuclMass;
77 bool fT0App;
78
79 // Pair identification
83 int fLL;
91 bool fSwap;
95 int const fLLMax;
99 int fNS;
104 // WTF? Streamer?
109
110 int fKpKmModel; // ij (i=1..4, j=1..4; see AliFemtoFsiWeightLednicky.F)
111 int fPhi_OffOn; // 0->Phi Off,1->Phi On
112 int fNS_4; // set NS is equal to 4
113
114 // Interface to the fortran functions
118 void FsiInit();
122 void FsiSetLL();
126 void FsiNucl();
130 bool SetPid(const int aPid1, const int aPid2);
134 void FsiSetKpKmModelType();
145 void PairIDToLL(Femto::EPairType pair_pid, Int_t& LL, Int_t& tCharge) const;
151 Femto::EPairType LLToPairID(Int_t ll) const;
158 inline void SetFlags(Int_t qs, Int_t s, Int_t c) {
159 fIqs = qs;
160 fIch = c;
161 fIsi = s;
162 };
167 void RawCalc(FemtoPair* pair);
168
169 public:
173 FemtoWeightGeneratorLednicky(); // call SetDefaultCalcPar
178 FemtoWeightGeneratorLednicky(const FemtoWeightGeneratorLednicky& aWeight); // call SetDefaultCalcPar
179 // --- Destructor : nothing to explicitly delete
190
191 virtual Double_t GenerateWeight(FemtoPair* pair);
192
193 virtual void SetPairType(Femto::EPairType aPairType);
194 virtual void SetPairTypeFromPair(FemtoPair* pair);
195 virtual Femto::EPairType GetPairType() const;
196
197 virtual Double_t GetKStar() const;
198 virtual Double_t GetKStarOut() const;
199 virtual Double_t GetKStarSide() const;
200 virtual Double_t GetKStarLong() const;
201 virtual Double_t GetRStar() const;
202 virtual Double_t GetRStarOut() const;
203 virtual Double_t GetRStarSide() const;
204 virtual Double_t GetRStarLong() const;
206
207 virtual FemtoWeightGenerator* Clone(const char* newname = "") const;
208
209 // --- Setting
210 Bool_t Init(Int_t taks_id, FemtoPair* pair);
211 virtual Bool_t IsPairSupported(Femto::EPairType type) const;
212 // >>> Calculation mode
216 void SetDefaultCalcPar(); // Default is CoulOn, QuantumOn, StrongOn,
217 // 3BodyOff, Square, T0ApproxOff
221 void SetCoulOn();
225 void SetCoulOff();
229 void SetQuantumOn();
233 void SetQuantumOff();
237 void SetStrongOn();
241 void SetStrongOff();
245 void Set3BodyOn();
249 void Set3BodyOff();
253 void SetSphere(); // use Spherical wave approximation
258 void SetSquare();
262 void SetT0ApproxOff();
266 void SetT0ApproxOn();
270 void PrintLambdas() { ; }
275 void SetNuclCharge(const double aNuclCharge); // for 3-body calculation
280 void SetNuclMass(const double aNuclMass);
285 void SetNS(int nNs) { fNS = nNs; };
286
287 void FsiSetKpKmModelType(const int aModelType, const int aPhi_OffOn);
288 virtual void Print(Option_t* option = "") const;
289 virtual Package* Report() const;
291 };
292} // namespace Hal
293#endif /* HALFEMTOWEIGHTGENERATORLEDNICKY_H_ */
void PairIDToLL(Femto::EPairType pair_pid, Int_t &LL, Int_t &tCharge) const
Bool_t Init(Int_t taks_id, FemtoPair *pair)
virtual Femto::EPairType GetPairType() const
bool SetPid(const int aPid1, const int aPid2)
virtual void SetPairType(Femto::EPairType aPairType)
virtual Double_t GenerateWeight(FemtoPair *pair)
virtual void SetPairTypeFromPairAndConfigureFSI(FemtoPair *pair)
virtual FemtoWeightGeneratorLednicky * MakeCopy() const
void SetFlags(Int_t qs, Int_t s, Int_t c)
virtual FemtoWeightGenerator * Clone(const char *newname="") const
virtual void SetPairTypeFromPair(FemtoPair *pair)
Femto::EPairType LLToPairID(Int_t ll) const
virtual Bool_t IsPairSupported(Femto::EPairType type) const
FemtoWeightGeneratorLednicky & operator=(const FemtoWeightGeneratorLednicky &aWeight)