Mallard 0.8.0
Unstructured, GPU accelerated, high-order finite volume CFD solver
Mallard website
Loading...
Searching...
No Matches
riemann::KEEP Struct Reference

Kinetic-energy- and entropy-preserving central flux (KEEP; Kuya, Totani & Kawai, J. Comput. Phys. 375, 2018) with arithmetic means: mass C = mean(rho) mean(u).n, momentum C mean(u) + mean(p) n, energy C (mean(e) + u_L . u_R / 2) + (p_L u_R.n + p_R u_L.n) / 2. Its momentum flux has Jameson's form, so with cell values on both sides the convective fluxes change the kinetic energy only by the pressure work mean(p) (u_R - u_L).n per face. No dissipation: for the hybrid convective flux (docs/design/les.md, section 4.3). More...

#include <riemann_solver.h>

Static Public Member Functions

static KOKKOS_INLINE_FUNCTION void central (rtype *flux, const rtype *n, const rtype *W_l, const rtype *W_r, const rtype e_l, const rtype e_r)
 
static KOKKOS_INLINE_FUNCTION void calc_flux (rtype *flux, const rtype *n, const rtype *W_l, const rtype *W_r, const rtype gamma)
 
static KOKKOS_INLINE_FUNCTION void calc_flux (rtype *flux, const rtype *n, const rtype *W_l, const rtype *W_r, const SideThermo &th_l, const SideThermo &th_r)
 Mixture flux with per-side thermodynamics, e = p / ((gamma - 1) rho) + e0.
 

Detailed Description

Kinetic-energy- and entropy-preserving central flux (KEEP; Kuya, Totani & Kawai, J. Comput. Phys. 375, 2018) with arithmetic means: mass C = mean(rho) mean(u).n, momentum C mean(u) + mean(p) n, energy C (mean(e) + u_L . u_R / 2) + (p_L u_R.n + p_R u_L.n) / 2. Its momentum flux has Jameson's form, so with cell values on both sides the convective fluxes change the kinetic energy only by the pressure work mean(p) (u_R - u_L).n per face. No dissipation: for the hybrid convective flux (docs/design/les.md, section 4.3).

Member Function Documentation

◆ calc_flux() [1/2]

static KOKKOS_INLINE_FUNCTION void riemann::KEEP::calc_flux ( rtype *  flux,
const rtype *  n,
const rtype *  W_l,
const rtype *  W_r,
const rtype  gamma 
)
inlinestatic

◆ calc_flux() [2/2]

static KOKKOS_INLINE_FUNCTION void riemann::KEEP::calc_flux ( rtype *  flux,
const rtype *  n,
const rtype *  W_l,
const rtype *  W_r,
const SideThermo &  th_l,
const SideThermo &  th_r 
)
inlinestatic

Mixture flux with per-side thermodynamics, e = p / ((gamma - 1) rho) + e0.

◆ central()

static KOKKOS_INLINE_FUNCTION void riemann::KEEP::central ( rtype *  flux,
const rtype *  n,
const rtype *  W_l,
const rtype *  W_r,
const rtype  e_l,
const rtype  e_r 
)
inlinestatic

The documentation for this struct was generated from the following file: