SpECTRE
v2024.04.12
|
Initial data for the Shu-Osher oscillatory shock tube [166]. More...
#include <ShuOsherTube.hpp>
Classes | |
struct | Epsilon |
struct | JumpPosition |
Initial postition of the discontinuity. More... | |
struct | Lambda |
struct | LeftMassDensity |
struct | LeftPressure |
struct | LeftVelocity |
struct | RightPressure |
struct | RightVelocity |
Public Types | |
using | equation_of_state_type = EquationsOfState::IdealFluid< false > |
using | options = tmpl::list< JumpPosition, LeftMassDensity, LeftVelocity, LeftPressure, RightVelocity, RightPressure, Epsilon, Lambda > |
Public Member Functions | |
ShuOsherTube (double jump_position, double mass_density_l, double velocity_l, double pressure_l, double velocity_r, double pressure_r, double epsilon, double lambda) | |
ShuOsherTube (const ShuOsherTube &)=default | |
ShuOsherTube & | operator= (const ShuOsherTube &)=default |
ShuOsherTube (ShuOsherTube &&)=default | |
ShuOsherTube & | operator= (ShuOsherTube &&)=default |
auto | get_clone () const -> std::unique_ptr< evolution::initial_data::InitialData > override |
template<typename DataType , typename... Tags> | |
tuples::TaggedTuple< Tags... > | variables (const tnsr::I< DataType, 1, Frame::Inertial > &x, tmpl::list< Tags... >) const |
const EquationsOfState::IdealFluid< false > & | equation_of_state () const |
void | pup (PUP::er &p) override |
virtual auto | get_clone () const -> std::unique_ptr< InitialData >=0 |
Static Public Attributes | |
static constexpr Options::String | help |
Friends | |
bool | operator== (const ShuOsherTube &lhs, const ShuOsherTube &rhs) |
Initial data for the Shu-Osher oscillatory shock tube [166].
The general initial data is given by:
\begin{align*} \{\rho,v^x,p\}= \left\{ \begin{array}{ll} \left\{\rho_L, v^x_L, p_L\right\} &\mathrm{if} \;\;\; x<\Delta \\ \left\{1+\epsilon\sin(\lambda x), v^x_R, p_R\right\} &\mathrm{if} \;\;\; x\ge \Delta \end{array}\right. \end{align*}
with the adiabatic index being 1.4.
With the standard parameters given below, this is a Mach-3 shock moving into a sinusoidal density profile.
\begin{align*} \{\rho,v^x,p\}= \left\{ \begin{array}{ll} \left\{3.857143, 2.629369, 10.33333\right\} &\mathrm{if} \;\;\; x<-4 \\ \left\{1+0.2\sin(5x), 0, 1\right\} &\mathrm{if} \;\;\; x\ge -4 \end{array}\right. \end{align*}
With these values the usual final time is 1.8.
|
overridevirtual |
Implements evolution::initial_data::InitialData.
|
staticconstexpr |