inciter::CompFlowProblemSodShocktube class

CompFlow system of PDEs problem: Sod shock-tube

Derived classes

class CompFlowProblemRotatedSodShocktube

Public static functions

static auto initialize(ncomp_t system, ncomp_t ncomp, tk::real x, tk::real, tk::real, tk::real) -> tk::InitializeFn::result_type
Initialize numerical solution.
static auto analyticSolution(ncomp_t, ncomp_t, tk::real, tk::real, tk::real, tk::real) -> tk::InitializeFn::result_type
Evaluate analytical solution at (x,y,z,t) for all components.
static auto src(ncomp_t, tk::real, tk::real, tk::real, tk::real, tk::real& r, tk::real& ru, tk::real& rv, tk::real& rw, tk::real& re) -> tk::CompFlowSrcFn::result_type
static auto type() -> ctr::ProblemType noexcept
Return problem type.

Public functions

auto analyticFieldNames(ncomp_t) const -> std::vector<std::string>
Return analytic field names to be output to file.
auto names(ncomp_t) const -> std::vector<std::string>
Return names of integral variables to be output to diagnostics file.

Function documentation

static tk::InitializeFn::result_type inciter::CompFlowProblemSodShocktube::initialize(ncomp_t system, ncomp_t ncomp, tk::real x, tk::real, tk::real, tk::real)

Initialize numerical solution.

Parameters
system in Equation system index, i.e., which compressible flow equation system we operate on among the systems of PDEs
ncomp
in X coordinate where to evaluate the solution
Returns Values of all components evaluated at (x)

Evaluate analytical solution at (x,y,z,t) for all components

This function only initializes the Sod shock tube problem, but does not actually give the analytical solution at time greater than 0. The analytical solution would require an exact Riemann solver, which has not been implemented yet.

static tk::InitializeFn::result_type inciter::CompFlowProblemSodShocktube::analyticSolution(ncomp_t, ncomp_t, tk::real, tk::real, tk::real, tk::real)

Evaluate analytical solution at (x,y,z,t) for all components.

Returns Values of all components evaluated at (x)

Evaluate analytical solution at (x,y,z,t) for all components

static tk::CompFlowSrcFn::result_type inciter::CompFlowProblemSodShocktube::src(ncomp_t, tk::real, tk::real, tk::real, tk::real, tk::real& r, tk::real& ru, tk::real& rv, tk::real& rw, tk::real& re)

Parameters
in/out Density source
ru in/out X momentum source
rv in/out Y momentum source
rw in/out Z momentum source
re in/out Specific total energy source

Compute and return source term for this problem

std::vector<std::string> inciter::CompFlowProblemSodShocktube::analyticFieldNames(ncomp_t) const

Return analytic field names to be output to file.

Returns Vector of strings labelling analytic fields output in file

std::vector<std::string> inciter::CompFlowProblemSodShocktube::names(ncomp_t) const

Return names of integral variables to be output to diagnostics file.

Returns Vector of strings labelling integral variables output