00001
00017 #ifndef _KOKOULIN_PETRUKHIN_MODEL_H_
00018 #define _KOKOULIN_PETRUKHIN_MODEL_H_
00019
00020 #include "ProcessModel.h"
00021
00022 class KokoulinPetrukhinModel : public ProcessModel
00023 {
00024 public:
00025
00026 KokoulinPetrukhinModel();
00027 KokoulinPetrukhinModel(const Material & material);
00028 ~KokoulinPetrukhinModel();
00029
00030 double dE_dx (double E) const;
00031 ValidityRange_t ValidityRange (void) const;
00032
00033 private:
00034
00035 double bpair (double E) const;
00036 double V_min (double E) const;
00037 double V_max (double E) const;
00038 double P_max (double v, double E) const;
00039 double d2s_dvdp (double v, double p, double E) const;
00040 double FIe (double v, double p, double E) const;
00041 double FIm (double v, double p, double E) const;
00042 double Le (double v, double p, double E) const;
00043 double Lm (double v, double p, double E) const;
00044 double Ye (double v, double p) const;
00045 double Ym (double v, double p) const;
00046
00047 ClassDef(KokoulinPetrukhinModel, 0)
00048 };
00049
00050 #endif // _KOKOULIN_PETRUKHIN_MODEL_