ATTPCROOT  0.3.0-alpha
A ROOT-based framework for analyzing data from active target detectors
AtTPCIonGeneratorS800.h
Go to the documentation of this file.
1 #ifndef AtTPCIONGENERAtORS800_H
2 #define AtTPCIONGENERAtORS800_H
3 
4 #include "AtTPCIonGenerator.h"
5 
6 #include <Rtypes.h> // for Double_t, Double32_t, Int_t, THashCon...
7 #include <TH1.h> // for TH1F
8 #include <TString.h> // for TString
9 
10 #include <memory> // for unique_ptr
11 
12 class TBuffer;
13 class TClass;
14 class TMemberInspector;
15 
17 protected:
18  virtual void SetVertexCoordinates() override;
19 
20  Double_t fPx0{0}, fPy0{0}, fPz0{0}; //< initial Momentum components [GeV] per nucleon, used for momentum acceptance
21 
22  Double_t fMomAcc{0}; //< beam momentum acceptance in percentage
23  Double_t fBeamAx{0}, fBeamAy{0}; //< beam angle [deg]
24  Double_t fBeamOx{0}, fBeamOy{0}; //< beam offset [cm]
26  std::unique_ptr<TH1F> fAta, fBta;
28  Double32_t fWhmFocus{0}, fDiv{0}, fZFocus{0}, fRHole{0};
29 
30 public:
32  AtTPCIonGeneratorS800(const char *name, Int_t z, Int_t a, Int_t q, Int_t mult, Double_t px, Double_t py, Double_t pz,
33  Double_t Ex, Double_t m, Double_t ener, Double_t eLoss = -1, TString sata = "",
34  TString sbta = "");
35 
36  /*
37  virtual ~AtTPCIonGeneratorS800()
38  {
39  delete fileAta;
40  delete fileBta;
41  }
42  */
43  void SetBeamEmittance(Double32_t val1 = 0, Double32_t val2 = 0, Double32_t val3 = 0, Double32_t val4 = 0,
44  Double_t val5 = 0, Double_t val6 = 0, Double_t val7 = 0, Double_t val8 = 0, Double_t val9 = 0);
45 
47 };
48 
49 #endif
AtTPCIonGeneratorS800::fAta
std::unique_ptr< TH1F > fAta
beam angles distributions in dispersive and non dispersive direction(respectively to S800)[rad]
Definition: AtTPCIonGeneratorS800.h:26
AtTPCIonGeneratorS800::fBta
std::unique_ptr< TH1F > fBta
Definition: AtTPCIonGeneratorS800.h:26
AtTPCIonGeneratorS800::fRHole
Double32_t fRHole
Definition: AtTPCIonGeneratorS800.h:28
AtTPCIonGeneratorS800::SetVertexCoordinates
virtual void SetVertexCoordinates() override
Sets fVx, fVy, fVz depending on the type of ion generator.
Definition: AtTPCIonGeneratorS800.cxx:55
AtTPCIonGeneratorS800::fBeamOx
Double_t fBeamOx
Definition: AtTPCIonGeneratorS800.h:24
AtTPCIonGeneratorS800::fDiv
Double32_t fDiv
Definition: AtTPCIonGeneratorS800.h:28
AtTPCIonGeneratorS800::fBeamOy
Double_t fBeamOy
Definition: AtTPCIonGeneratorS800.h:24
AtTPCIonGeneratorS800::fZFocus
Double32_t fZFocus
Definition: AtTPCIonGeneratorS800.h:28
AtTPCIonGeneratorS800::fBeamAy
Double_t fBeamAy
Definition: AtTPCIonGeneratorS800.h:23
AtTPCIonGeneratorS800
Definition: AtTPCIonGeneratorS800.h:16
AtTPCIonGeneratorS800::ClassDefOverride
ClassDefOverride(AtTPCIonGeneratorS800, 1)
AtTPCIonGeneratorS800::fPz0
Double_t fPz0
Definition: AtTPCIonGeneratorS800.h:20
AtTPCIonGeneratorS800::fPx0
Double_t fPx0
Definition: AtTPCIonGeneratorS800.h:20
AtTPCIonGeneratorS800::fBeamAx
Double_t fBeamAx
Definition: AtTPCIonGeneratorS800.h:23
AtTPCIonGeneratorS800::AtTPCIonGeneratorS800
AtTPCIonGeneratorS800()
Definition: AtTPCIonGeneratorS800.cxx:16
AtTPCIonGenerator
Definition: AtTPCIonGenerator.h:22
AtTPCIonGeneratorS800::fPy0
Double_t fPy0
Definition: AtTPCIonGeneratorS800.h:20
AtTPCIonGeneratorS800::fWhmFocus
Double32_t fWhmFocus
Beam whm at focus, beam divergence, z focus, radius of the pad plan hole.
Definition: AtTPCIonGeneratorS800.h:28
AtTPCIonGeneratorS800::SetBeamEmittance
void SetBeamEmittance(Double32_t val1=0, Double32_t val2=0, Double32_t val3=0, Double32_t val4=0, Double_t val5=0, Double_t val6=0, Double_t val7=0, Double_t val8=0, Double_t val9=0)
Definition: AtTPCIonGeneratorS800.cxx:41
AtTPCIonGeneratorS800::fMomAcc
Double_t fMomAcc
Definition: AtTPCIonGeneratorS800.h:22
AtTPCIonGenerator.h