CbmRoot
CbmBeamProfile.h
Go to the documentation of this file.
1 
6 #ifndef CBMBEAMPROFILE_H
7 #define CBMBEAMPROFILE_H 1
8 
9 
10 #include "CbmBeam.h"
11 #include "CbmTarget.h"
12 #include "Rtypes.h"
13 #include "TVector3.h"
14 #include <memory>
15 #include <string>
16 
17 
32 
33 public:
36 
37 
39  virtual ~CbmBeamProfile() {};
40 
41 
46  Bool_t CheckWithTarget(const CbmTarget& target) const;
47 
48 
58  TVector3 ExtrapolateToPlane(const TVector3& point,
59  const TVector3& norm) const;
60 
61 
67  std::unique_ptr<CbmBeam> GenerateBeam();
68 
69 
78  void SetAngle(Double_t x0,
79  Double_t y0,
80  Double_t sigmaX = -1.,
81  Double_t sigmaY = -1.);
82 
83 
93  void SetPosition(Double_t x0,
94  Double_t y0,
95  Double_t sigmaX = -1.,
96  Double_t sigmaY = -1.,
97  Double_t zF = 0.);
98 
99 
101  std::string ToString() const;
102 
103 
104 private:
105  Double_t fFocalZ;
106  Double_t fMeanPosX;
107  Double_t fMeanPosY;
108  Double_t fSigmaPosX;
109  Double_t fSigmaPosY;
110  Double_t fMeanThetaX;
111  Double_t fMeanThetaY;
112  Double_t fSigmaThetaX;
113  Double_t fSigmaThetaY;
114 };
115 
116 #endif /* CBMBEAMPROFILE_H */
CbmBeamProfile::fMeanPosX
Double_t fMeanPosX
Mean position in x [cm].
Definition: CbmBeamProfile.h:106
CbmBeamProfile::SetPosition
void SetPosition(Double_t x0, Double_t y0, Double_t sigmaX=-1., Double_t sigmaY=-1., Double_t zF=0.)
Set the parameters for the beam position distribution.
Definition: CbmBeamProfile.cxx:120
CbmBeamProfile::GenerateBeam
std::unique_ptr< CbmBeam > GenerateBeam()
Generate a beam trajectory.
Definition: CbmBeamProfile.cxx:80
CbmBeamProfile::fMeanThetaX
Double_t fMeanThetaX
Mean angle in x-z plane [rad].
Definition: CbmBeamProfile.h:110
CbmBeamProfile::SetAngle
void SetAngle(Double_t x0, Double_t y0, Double_t sigmaX=-1., Double_t sigmaY=-1.)
Set the parameters for the beam angle distribution.
Definition: CbmBeamProfile.cxx:107
CbmBeamProfile::fSigmaThetaY
Double_t fSigmaThetaY
RMS of angle in y-z plane [rad].
Definition: CbmBeamProfile.h:113
CbmBeamProfile::ToString
std::string ToString() const
Info to string.
Definition: CbmBeamProfile.cxx:135
CbmBeamProfile::ExtrapolateToPlane
TVector3 ExtrapolateToPlane(const TVector3 &point, const TVector3 &norm) const
Extrapolate the average beam to a plane.
Definition: CbmBeamProfile.cxx:67
CbmBeamProfile::fSigmaThetaX
Double_t fSigmaThetaX
RMS of angle in x-z plane [rad].
Definition: CbmBeamProfile.h:112
CbmTarget
Class for constructing the geometry of the CBM target.
Definition: CbmTarget.h:31
CbmBeamProfile::fMeanThetaY
Double_t fMeanThetaY
Mean angle in y-z plane [rad].
Definition: CbmBeamProfile.h:111
CbmBeamProfile::fSigmaPosX
Double_t fSigmaPosX
RMS of position in x [cm].
Definition: CbmBeamProfile.h:108
CbmBeamProfile::fFocalZ
Double_t fFocalZ
z coordinate of focal plane [cm]
Definition: CbmBeamProfile.h:105
CbmBeamProfile::fMeanPosY
Double_t fMeanPosY
Mean position in y [cm].
Definition: CbmBeamProfile.h:107
CbmBeam.h
CbmTarget.h
CbmBeamProfile::CheckWithTarget
Bool_t CheckWithTarget(const CbmTarget &target) const
Check consistency with a target.
Definition: CbmBeamProfile.cxx:27
CbmBeamProfile
Definition: CbmBeamProfile.h:31
CbmBeamProfile::CbmBeamProfile
CbmBeamProfile()
Default constructor
Definition: CbmBeamProfile.cxx:13
CbmBeamProfile::~CbmBeamProfile
virtual ~CbmBeamProfile()
Destructor
Definition: CbmBeamProfile.h:39
CbmBeamProfile::fSigmaPosY
Double_t fSigmaPosY
RMS of position in y [cm].
Definition: CbmBeamProfile.h:109