|
BmnRoot 26.10.0-18-g4e3414f9
Software framework of the BM@N experiment
|
Interface for material effects calculation algorithm. More...
#include <BmnMaterialEffects.h>
Public Member Functions | |
| BmnMaterialEffects () | |
| Constructor. | |
| virtual | ~BmnMaterialEffects () |
| Destructor. | |
| virtual BmnStatus | Update (FairTrackParam *par, const BmnMaterialInfo *mat, Int_t pdg, Bool_t downstream) |
| Main function to be implemented for concrete material effects calculation algorithm. | |
| void | AddEnergyLoss (FairTrackParam *par, const BmnMaterialInfo *mat) const |
| void | AddThickScatter (FairTrackParam *par, const BmnMaterialInfo *mat) const |
| void | AddThinScatter (FairTrackParam *par, const BmnMaterialInfo *mat) const |
| Float_t | CalcThetaSq (const FairTrackParam *par, const BmnMaterialInfo *mat) const |
| Float_t | EnergyLoss (const FairTrackParam *par, const BmnMaterialInfo *mat) const |
| Float_t | dEdx (const FairTrackParam *par, const BmnMaterialInfo *mat) const |
| Float_t | BetheBloch (const FairTrackParam *par, const BmnMaterialInfo *mat) const |
| Float_t | BetheBlochElectron (const FairTrackParam *par, const BmnMaterialInfo *mat) const |
| Float_t | CalcQpAfterEloss (Float_t qp, Float_t eloss) const |
| Float_t | CalcSigmaSqQp (const FairTrackParam *par, const BmnMaterialInfo *mat) const |
| Float_t | CalcSigmaSqQpElectron (const FairTrackParam *par, const BmnMaterialInfo *mat) const |
| Float_t | CalcI (Float_t Z) const |
| Float_t | BetheHeitler (const FairTrackParam *par, const BmnMaterialInfo *mat) const |
| Float_t | PairProduction (const FairTrackParam *par, const BmnMaterialInfo *mat) const |
| Float_t | BetheBlochSimple (const BmnMaterialInfo *mat) const |
| Float_t | MPVEnergyLoss (const FairTrackParam *par, const BmnMaterialInfo *mat) const |
| BmnMaterialEffects () | |
| Constructor. | |
| virtual | ~BmnMaterialEffects () |
| Destructor. | |
| virtual BmnStatus | Update (FairTrackParam *par, const BmnMaterialInfo *mat, Int_t pdg, Bool_t downstream) |
| Main function to be implemented for concrete material effects calculation algorithm. | |
| void | AddEnergyLoss (FairTrackParam *par, const BmnMaterialInfo *mat) const |
| void | AddThickScatter (FairTrackParam *par, const BmnMaterialInfo *mat) const |
| void | AddThinScatter (FairTrackParam *par, const BmnMaterialInfo *mat) const |
| Float_t | CalcThetaSq (const FairTrackParam *par, const BmnMaterialInfo *mat) const |
| Float_t | EnergyLoss (const FairTrackParam *par, const BmnMaterialInfo *mat) const |
| Float_t | dEdx (const FairTrackParam *par, const BmnMaterialInfo *mat) const |
| Float_t | BetheBloch (const FairTrackParam *par, const BmnMaterialInfo *mat) const |
| Float_t | BetheBlochElectron (const FairTrackParam *par, const BmnMaterialInfo *mat) const |
| Float_t | CalcQpAfterEloss (Float_t qp, Float_t eloss) const |
| Float_t | CalcSigmaSqQp (const FairTrackParam *par, const BmnMaterialInfo *mat) const |
| Float_t | CalcSigmaSqQpElectron (const FairTrackParam *par, const BmnMaterialInfo *mat) const |
| Float_t | CalcI (Float_t Z) const |
| Float_t | BetheHeitler (const FairTrackParam *par, const BmnMaterialInfo *mat) const |
| Float_t | PairProduction (const FairTrackParam *par, const BmnMaterialInfo *mat) const |
| Float_t | BetheBlochSimple (const BmnMaterialInfo *mat) const |
| Float_t | MPVEnergyLoss (const FairTrackParam *par, const BmnMaterialInfo *mat) const |
Private Attributes | |
| Bool_t | fDownstream |
| Float_t | fMass |
| Bool_t | fIsElectron |
| Bool_t | fIsMuon |
Definition at line 24 of file BmnMaterialEffects.h.
| BmnMaterialEffects::BmnMaterialEffects | ( | ) |
Definition at line 20 of file BmnMaterialEffects.cxx.
References fDownstream, fIsElectron, fIsMuon, and fMass.
|
virtual |
Definition at line 27 of file BmnMaterialEffects.cxx.
| BmnMaterialEffects::BmnMaterialEffects | ( | ) |
|
virtual |
| void BmnMaterialEffects::AddEnergyLoss | ( | FairTrackParam * | par, |
| const BmnMaterialInfo * | mat ) const |
Definition at line 51 of file BmnMaterialEffects.cxx.
References CalcQpAfterEloss(), CalcSigmaSqQp(), CalcSigmaSqQpElectron(), EnergyLoss(), fDownstream, fIsElectron, BmnMaterialInfo::GetLength(), and BmnMaterialInfo::GetRL().
Referenced by Update().
| void BmnMaterialEffects::AddEnergyLoss | ( | FairTrackParam * | par, |
| const BmnMaterialInfo * | mat ) const |
| void BmnMaterialEffects::AddThickScatter | ( | FairTrackParam * | par, |
| const BmnMaterialInfo * | mat ) const |
Definition at line 82 of file BmnMaterialEffects.cxx.
References CalcThetaSq(), fDownstream, and BmnMaterialInfo::GetLength().
Referenced by Update().
| void BmnMaterialEffects::AddThickScatter | ( | FairTrackParam * | par, |
| const BmnMaterialInfo * | mat ) const |
| void BmnMaterialEffects::AddThinScatter | ( | FairTrackParam * | par, |
| const BmnMaterialInfo * | mat ) const |
Definition at line 124 of file BmnMaterialEffects.cxx.
References CalcThetaSq(), and BmnMaterialInfo::GetLength().
Referenced by Update().
| void BmnMaterialEffects::AddThinScatter | ( | FairTrackParam * | par, |
| const BmnMaterialInfo * | mat ) const |
| Float_t BmnMaterialEffects::BetheBloch | ( | const FairTrackParam * | par, |
| const BmnMaterialInfo * | mat ) const |
Definition at line 177 of file BmnMaterialEffects.cxx.
References CalcI(), fMass, BmnMaterialInfo::GetA(), BmnMaterialInfo::GetRho(), BmnMaterialInfo::GetZ(), and z.
Referenced by dEdx().
| Float_t BmnMaterialEffects::BetheBloch | ( | const FairTrackParam * | par, |
| const BmnMaterialInfo * | mat ) const |
| Float_t BmnMaterialEffects::BetheBlochElectron | ( | const FairTrackParam * | par, |
| const BmnMaterialInfo * | mat ) const |
Definition at line 212 of file BmnMaterialEffects.cxx.
References CalcI(), BmnMaterialInfo::GetA(), and BmnMaterialInfo::GetZ().
| Float_t BmnMaterialEffects::BetheBlochElectron | ( | const FairTrackParam * | par, |
| const BmnMaterialInfo * | mat ) const |
| Float_t BmnMaterialEffects::BetheBlochSimple | ( | const BmnMaterialInfo * | mat | ) | const |
Definition at line 332 of file BmnMaterialEffects.cxx.
References BmnMaterialInfo::GetA(), and BmnMaterialInfo::GetZ().
| Float_t BmnMaterialEffects::BetheBlochSimple | ( | const BmnMaterialInfo * | mat | ) | const |
| Float_t BmnMaterialEffects::BetheHeitler | ( | const FairTrackParam * | par, |
| const BmnMaterialInfo * | mat ) const |
Definition at line 308 of file BmnMaterialEffects.cxx.
References fMass, BmnMaterialInfo::GetRho(), and BmnMaterialInfo::GetRL().
| Float_t BmnMaterialEffects::BetheHeitler | ( | const FairTrackParam * | par, |
| const BmnMaterialInfo * | mat ) const |
Definition at line 298 of file BmnMaterialEffects.cxx.
Referenced by BetheBloch(), BetheBlochElectron(), and MPVEnergyLoss().
Definition at line 233 of file BmnMaterialEffects.cxx.
References fDownstream, and fMass.
Referenced by AddEnergyLoss().
| Float_t BmnMaterialEffects::CalcSigmaSqQp | ( | const FairTrackParam * | par, |
| const BmnMaterialInfo * | mat ) const |
Definition at line 258 of file BmnMaterialEffects.cxx.
References fMass, BmnMaterialInfo::GetA(), BmnMaterialInfo::GetLength(), BmnMaterialInfo::GetRho(), and BmnMaterialInfo::GetZ().
Referenced by AddEnergyLoss().
| Float_t BmnMaterialEffects::CalcSigmaSqQp | ( | const FairTrackParam * | par, |
| const BmnMaterialInfo * | mat ) const |
| Float_t BmnMaterialEffects::CalcSigmaSqQpElectron | ( | const FairTrackParam * | par, |
| const BmnMaterialInfo * | mat ) const |
Definition at line 291 of file BmnMaterialEffects.cxx.
References BmnMaterialInfo::GetLength(), BmnMaterialInfo::GetRL(), and x.
Referenced by AddEnergyLoss().
| Float_t BmnMaterialEffects::CalcSigmaSqQpElectron | ( | const FairTrackParam * | par, |
| const BmnMaterialInfo * | mat ) const |
| Float_t BmnMaterialEffects::CalcThetaSq | ( | const FairTrackParam * | par, |
| const BmnMaterialInfo * | mat ) const |
Definition at line 147 of file BmnMaterialEffects.cxx.
References fMass, BmnMaterialInfo::GetLength(), BmnMaterialInfo::GetRL(), x, and z.
Referenced by AddThickScatter(), and AddThinScatter().
| Float_t BmnMaterialEffects::CalcThetaSq | ( | const FairTrackParam * | par, |
| const BmnMaterialInfo * | mat ) const |
| Float_t BmnMaterialEffects::dEdx | ( | const FairTrackParam * | par, |
| const BmnMaterialInfo * | mat ) const |
Definition at line 169 of file BmnMaterialEffects.cxx.
References BetheBloch().
Referenced by EnergyLoss().
| Float_t BmnMaterialEffects::dEdx | ( | const FairTrackParam * | par, |
| const BmnMaterialInfo * | mat ) const |
| Float_t BmnMaterialEffects::EnergyLoss | ( | const FairTrackParam * | par, |
| const BmnMaterialInfo * | mat ) const |
Definition at line 162 of file BmnMaterialEffects.cxx.
References dEdx(), BmnMaterialInfo::GetLength(), and BmnMaterialInfo::GetRho().
Referenced by AddEnergyLoss().
| Float_t BmnMaterialEffects::EnergyLoss | ( | const FairTrackParam * | par, |
| const BmnMaterialInfo * | mat ) const |
| Float_t BmnMaterialEffects::MPVEnergyLoss | ( | const FairTrackParam * | par, |
| const BmnMaterialInfo * | mat ) const |
Definition at line 337 of file BmnMaterialEffects.cxx.
References CalcI(), fMass, BmnMaterialInfo::GetA(), BmnMaterialInfo::GetLength(), BmnMaterialInfo::GetRho(), BmnMaterialInfo::GetZ(), and x.
| Float_t BmnMaterialEffects::MPVEnergyLoss | ( | const FairTrackParam * | par, |
| const BmnMaterialInfo * | mat ) const |
References fDownstream, fIsElectron, fIsMuon, and fMass.
| Float_t BmnMaterialEffects::PairProduction | ( | const FairTrackParam * | par, |
| const BmnMaterialInfo * | mat ) const |
Definition at line 321 of file BmnMaterialEffects.cxx.
References fMass, BmnMaterialInfo::GetRho(), and BmnMaterialInfo::GetRL().
| Float_t BmnMaterialEffects::PairProduction | ( | const FairTrackParam * | par, |
| const BmnMaterialInfo * | mat ) const |
|
virtual |
| [in,out] | par | Input/Output track parameters. |
| [in] | mat | Material information. |
| [in] | pdg | PDG code |
| [in] | downstream | Propagation direction (true for downstream, false for upstream). |
Definition at line 29 of file BmnMaterialEffects.cxx.
References AddEnergyLoss(), AddThickScatter(), AddThinScatter(), fDownstream, fIsElectron, fIsMuon, fMass, BmnMaterialInfo::GetLength(), TDatabasePDG::GetParticle(), BmnMaterialInfo::GetRho(), TDatabasePDG::Instance(), kBMNSUCCESS, and TParticlePDG::Mass().
|
virtual |
| [in,out] | par | Input/Output track parameters. |
| [in] | mat | Material information. |
| [in] | pdg | PDG code |
| [in] | downstream | Propagation direction (true for downstream, false for upstream). |
|
private |
Definition at line 64 of file BmnMaterialEffects.h.
Referenced by BmnMaterialEffects(), AddEnergyLoss(), AddThickScatter(), CalcQpAfterEloss(), MPVEnergyLoss(), and Update().
|
private |
Definition at line 66 of file BmnMaterialEffects.h.
Referenced by BmnMaterialEffects(), AddEnergyLoss(), MPVEnergyLoss(), and Update().
|
private |
Definition at line 67 of file BmnMaterialEffects.h.
Referenced by BmnMaterialEffects(), MPVEnergyLoss(), and Update().
|
private |
Definition at line 65 of file BmnMaterialEffects.h.
Referenced by BmnMaterialEffects(), BetheBloch(), BetheHeitler(), CalcQpAfterEloss(), CalcSigmaSqQp(), CalcThetaSq(), MPVEnergyLoss(), PairProduction(), and Update().