|
SpECTRE
v2025.08.19
|
Initial data for the Shu-Osher oscillatory shock tube [186]. 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 [186].
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 |