00001
00016 #include <vector>
00017 #include "GRBShell.h"
00018
00019 #ifndef GRBSHOCK_H
00020 #define GRBSHOCK_H 1
00021
00022
00023 class GRBShock
00024 {
00025
00026 public:
00027
00034 GRBShock(GRBShell Shocked_Material);
00035
00036 ~GRBShock() { }
00037
00038
00040
00041
00049 inline double Eint() const {return m_Eint;}
00054 inline double getGammaf() const {return m_gf;}
00055
00056 inline double getVolume() const {return m_volume;}
00057 inline double getThickness() const {return m_thickness;}
00058
00059 inline double getParticleN() const {return m_partnumber;}
00060
00061 inline double getB() const {return m_Beq;}
00062 inline double getGammaMin() const {return m_gemin;}
00063 inline double getGammaMax() const {return m_gemax;}
00064
00065
00066 inline void setTobs(double value) {m_tobs = value;}
00067
00068
00070 void Write();
00071
00073 double duration();
00074
00075 private:
00076
00077 double m_tobs;
00078 double m_mass;
00079 double m_thickness;
00080 double m_volume;
00081 double m_Eint;
00082 double m_gf;
00083
00084 double m_partdensity;
00085 double m_partnumber;
00086
00087 double m_gemin;
00088 double m_gemax;
00089 double m_Beq;
00090 double m_Ue;
00091 double m_Ub;
00092 };
00093 #endif