ERDecayEXP1803.h
1 |
/********************************************************************************
|
---|---|
2 |
* Copyright (C) Joint Institute for Nuclear Research *
|
3 |
* *
|
4 |
* This software is distributed under the terms of the *
|
5 |
* GNU Lesser General Public Licence version 3 (LGPL) version 3, *
|
6 |
* copied verbatim in the file "LICENSE" *
|
7 |
********************************************************************************/
|
8 |
|
9 |
#ifndef ERDecayEXP1803_H
|
10 |
#define ERDecayEXP1803_H
|
11 |
|
12 |
#include "TGraph.h" |
13 |
#include "TF1.h" |
14 |
#include "TRandom3.h" |
15 |
#include "TGenPhaseSpace.h" |
16 |
|
17 |
#include "FairIon.h" |
18 |
|
19 |
#include "ERDecay.h" // mother class |
20 |
|
21 |
class ERDecayEXP1803 : public ERDecay { |
22 |
|
23 |
public:
|
24 |
ERDecayEXP1803(); |
25 |
~ERDecayEXP1803(); |
26 |
|
27 |
/*Modifiers*/
|
28 |
void SetMinStep(Double_t minStep) {fMinStep = minStep;}
|
29 |
void SetTargetVolumeName(TString volumeName) {fVolumeName = volumeName;}
|
30 |
void SetTargetThickness(Double_t targetThickness) {fTargetThickness = targetThickness;}
|
31 |
void SetH5Mass(Double_t mass) {f5HMass = mass; fIs5HUserMassSet = true;} |
32 |
void SetH5Exitation(Double_t excMean, Double_t fwhm, Double_t distibWeight);
|
33 |
|
34 |
void phasegen2(Double_t Ecm, Double_t h5Mass);
|
35 |
void ReadADInput(TString ADfile);
|
36 |
|
37 |
public:
|
38 |
Bool_t Init(); |
39 |
Bool_t Stepping(); |
40 |
|
41 |
void BeginEvent();
|
42 |
void FinishEvent();
|
43 |
|
44 |
private:
|
45 |
TRandom3 *fRnd; |
46 |
|
47 |
TParticlePDG *f6He; |
48 |
TParticlePDG *f2H; |
49 |
TParticlePDG *f3He; |
50 |
TParticlePDG *f5H; |
51 |
TParticlePDG *f3H; |
52 |
TParticlePDG *fn; |
53 |
|
54 |
TLorentzVector *flv3He; //!
|
55 |
TLorentzVector *flv5H; //!
|
56 |
|
57 |
FairIon *fIon3He; |
58 |
FairIon *fUnstableIon5H; |
59 |
|
60 |
TGenPhaseSpace *fReactionPhaseSpace; |
61 |
TGenPhaseSpace *fDecayPhaseSpace; |
62 |
TString fVolumeName; |
63 |
Double_t fTargetReactZ; |
64 |
Double_t fMinStep; |
65 |
Double_t fTargetThickness; |
66 |
Bool_t fDecayFinish; |
67 |
std::vector<Double_t> f5HExcitationMean; |
68 |
std::vector<Double_t> f5HExcitationSigma; |
69 |
std::vector<Double_t> f5HExcitationWeight; |
70 |
|
71 |
Double_t f5HMass; |
72 |
Bool_t fIs5HUserMassSet; |
73 |
Bool_t fIs5HExcitationSet; |
74 |
|
75 |
TString fADFile; //! distribution is taken from file containing angular
|
76 |
TGraph *fADInput; //! distribution (AD) graph containing AD input
|
77 |
TF1 *fADFunction; //! function describing AD of binary reaction
|
78 |
|
79 |
Double_t ADEvaluate(Double_t *x, Double_t *p); |
80 |
|
81 |
ClassDef(ERDecayEXP1803,1)
|
82 |
}; |
83 |
|
84 |
#endif
|