Appearance
adam_flume_hybrid_library
ADAM, FLUME pointwise central flux of the hybrid central/WENO scheme (issue #119, T2).
The 6th-order kinetic-energy- and pressure-equilibrium-preserving face flux, the conservative form of Pirozzoli (2011) with the two-point flux of Shima et al. (2021, KEEP-PE), <a> = (a_l + a_r) / 2:
F_{i+1/2} = 2 sum_{l=1..3} a_l sum_{m=0..l-1} f(i-m, i-m+l), a = (3/4, -3/20, 1/60)
f(l, r): mass <rho><u_n>; momentum <rho><u_n><u_i> + <p> delta_{ni};
energy <rho><u_n> (u_l . u_r) / 2 + <p><u_n> / (gamma - 1) + (u_n,l p_r + u_n,r p_l) / 2A uniform velocity and pressure stay so exactly across any density jump: the form of Kennedy-Gruber-Pirozzoli <rho><u_n><H> does not, and a 100:1 contact stopped the run at its first step. Written from the published form through the llm-wiki and memory, not from the papers themselves; test_kep.F90 measures the order, the kinetic energy identity and the pressure equilibrium. The state is w(5,-2:3), (rho, u, v, w, p) of the 6 cells around the face, cell 0 on its left. pure, !$acc routine seq, !$omp declare target.
Source: src/app/flume/common/adam_flume_hybrid_library.F90
Contents
Subroutines
compute_kep_flux
Compute the 6th-order KEP face flux of direction d.
Attributes: pure
fortran
subroutine compute_kep_flux(d, gamma, w, f)Arguments
| Name | Type | Intent | Attributes | Description |
|---|---|---|---|---|
d | integer(kind=I4P) | in | Direction, 1=x, 2=y, 3=z. | |
gamma | real(kind=R8P) | in | Specific heats ratio. | |
w | real(kind=R8P) | in | Cell states. | |
f | real(kind=R8P) | out | Face flux. |
Call graph
compute_ducros
Compute the Ducros et al. (1999) sensor, theta^2 / (theta^2 + |omega|^2 + eps), from the velocity gradient g(a,b) = d u_a / d x_b; 1 where the density jumps: the Ducros ratio cannot see a contact, where the velocity is uniform and a central flux rings.
Attributes: pure
fortran
subroutine compute_ducros(eps, jump, jump_max, g, psi)Arguments
| Name | Type | Intent | Attributes | Description |
|---|---|---|---|---|
eps | real(kind=R8P) | in | Floor of the denominator. | |
jump | real(kind=R8P) | in | Largest |rho_+ - rho_-| / (rho_+ + rho_-) of the cell along its active directions. | |
jump_max | real(kind=R8P) | in | Its bound. | |
g | real(kind=R8P) | in | Velocity gradient. | |
psi | real(kind=R8P) | out | Sensor. |
Call graph