4 #ifndef __KVEDALOSSMATERIAL_H
5 #define __KVEDALOSSMATERIAL_H
7 #include "KVIonRangeTableMaterial.h"
16 #define ZMAX_VEDALOSS 100
17 #define VERY_BIG_ENERGY 1.e+6
34 std::vector<Double_t>* par;
35 Double_t ran, adm, dleps, adn, riso, eps, DLEP, drande;
40 std::vector<Double_t> fEmin;
41 std::vector<Double_t> fEmax;
42 std::vector< std::vector<Double_t> > fCoeff;
60 return (
CheckIon(Z) ? A * fEmax[Z - 1] : 0.0);
64 return (
CheckIon(Z) ? A * fEmin[Z - 1] : 0.0);
97 return (Z > 0 && Z <= ZMAX_VEDALOSS);
#define ClassDefOverride(name, id)
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void on
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char ColorStruct_t color const char Pixmap_t Pixmap_t PictureAttributes_t attr const char char ret_data h unsigned char height h Atom_t Int_t ULong_t ULong_t unsigned char prop_list Atom_t Atom_t Atom_t Time_t type
Material for use in energy loss & range calculations.
Abstract base class for calculation of range & energy loss of charged particles in matter.
Description of material in the KVedaLoss range table.
static void SetNoLimits(Bool_t on=kTRUE)
Float_t GetEminValid(Int_t Z, Int_t A) const override
Double_t GetEResOfIon(Int_t Z, Int_t A, Double_t E, Double_t e, Double_t isoAmat=0.) override
TF1 * GetStoppingFunction(Int_t Z, Int_t A, Double_t isoAmat=0) override
Bool_t ReadRangeTable(FILE *fp)
Double_t GetRangeOfIon(Int_t Z, Int_t A, Double_t E, Double_t isoAmat=0.) override
virtual ~KVedaLossMaterial()
Destructor.
Double_t GetPunchThroughEnergy(Int_t Z, Int_t A, Double_t e, Double_t isoAmat=0.) override
TF1 * GetEResFunction(Double_t e, Int_t Z, Int_t A, Double_t isoAmat=0) override
Float_t GetEmaxValid(Int_t Z, Int_t A) const override
Double_t GetDeltaEOfIon(Int_t Z, Int_t A, Double_t E, Double_t e, Double_t isoAmat=0.) override
void GetParameters(Int_t Zion, Int_t &Aion, std::vector< Double_t > &rangepar)
static Bool_t CheckIon(Int_t Z)
Double_t GetEIncFromEResOfIon(Int_t Z, Int_t A, Double_t Eres, Double_t e, Double_t isoAmat=0.) override
KVedaLossMaterial()
Default constructor.
TF1 * GetRangeFunction(Int_t Z, Int_t A, Double_t isoAmat=0) override
TF1 * GetDeltaEFunction(Double_t e, Int_t Z, Int_t A, Double_t isoAmat=0) override
C++ implementation of VEDALOSS stopping power calculation.