11 density_(density), s_(s), g_(g) {}
15 const double d = density_(x);
23 pressure_(pressure), density_(density), eos_(eos) {}
27 const double p = pressure_(x);
28 const double d = density_(x);
29 return eos_.dp2c(d,p);
35 double fdir = 2*dir-1;
36 return v+fdir*2*c/(g-1);
42 rv_(rv), dir_(dir), sound_speed_(sound_speed), g_(g) {}
46 const double c = sound_speed_(x);
52 double entropy,
double adiabatic_index,
55 pressure_(density_,entropy,adiabatic_index),
56 eos_(adiabatic_index),
57 sound_speed_(pressure_,
60 c_edge_(sound_speed_(edge)),
62 xvelocity_(rv_edge_,0,sound_speed_,adiabatic_index),
74 else if(
"pressure"==pname)
76 else if(
"xvelocity"==pname)
78 else if(
"yvelocity"==pname)
86 double adiabatic_index):
87 density_(density), pressure_(pressure),
88 g_(adiabatic_index) {}
92 const double d = density_(x);
93 const double p = pressure_(x);
Ideal gas equation of state.
SoundSpeedDist(SpatialDistribution1D const &pressure, SpatialDistribution1D const &density, EquationOfState const &eos)
Class constructor.
Container for error reports.
SimpleWaveIdealGasInitCond(SpatialDistribution1D const &density, double entropy, double adiabatic_index, double edge=3)
Class constructor.
double calc_riemann_invariant(double v, double c, double g, bool dir)
Calculates the Riemann invariant.
Base class for initial conditions.
Base class for equation of state.
ConstRiemannInv(double rv, bool dir, SpatialDistribution1D const &sound_speed, double g)
Class constructor.
Initial conditions for simple waves problem in an ideal gas.
EntropyProf(SpatialDistribution1D const &density, SpatialDistribution1D const &pressure, double adiabatic_index)
Class constructor.
double operator()(double x) const
Calculates initial conditions.
double operator()(double x) const
Calculates initial conditions.
IdealGas const & getEOS(void) const
Returns the equation of state.
double calc_entropy(double d, double p, double g)
Calculates the entropy of an ideal gas.
ConstEntropy(SpatialDistribution1D const &density, double s, double g)
Class constructor.
double operator()(double x) const
Calculates initial conditions.
SpatialDistribution1D const & getProfile(string pname) const
Returns the appropriate spatial profile.
double operator()(double x) const
Calculates initial conditions.