|
procedure, nopass | step (rho_field, m_x, m_y, m_z, e, p, u, v, w, ax, coef, gs, h, c_avisc_low, rk_scheme, dt) |
| Advances the primitive variables (density, momentum, energy) in time using a Runge-Kutta scheme.
|
|
procedure, nopass | evaluate_rhs_cpu (rhs_rho_field, rhs_m_x, rhs_m_y, rhs_m_z, rhs_e, rho_field, m_x, m_y, m_z, e, p, u, v, w, ax, coef, gs, h, c_avisc_low) |
| Evaluates the right-hand side of the Euler equations Computes fluxes, divergence terms, and artificial viscosity.
|
|
Definition at line 53 of file euler_res_cpu.f90.
◆ evaluate_rhs_cpu()
procedure, nopass euler_res_cpu::euler_res_cpu_t::evaluate_rhs_cpu |
( |
type(field_t), intent(inout) |
rhs_rho_field, |
|
|
type(field_t), intent(inout) |
rhs_m_x, |
|
|
type(field_t), intent(inout) |
rhs_m_y, |
|
|
type(field_t), intent(inout) |
rhs_m_z, |
|
|
type(field_t), intent(inout) |
rhs_e, |
|
|
type(field_t), intent(inout) |
rho_field, |
|
|
type(field_t), intent(inout) |
m_x, |
|
|
type(field_t), intent(inout) |
m_y, |
|
|
type(field_t), intent(inout) |
m_z, |
|
|
type(field_t), intent(inout) |
e, |
|
|
type(field_t), intent(in) |
p, |
|
|
type(field_t), intent(in) |
u, |
|
|
type(field_t), intent(in) |
v, |
|
|
type(field_t), intent(in) |
w, |
|
|
class(ax_t), intent(inout) |
ax, |
|
|
type(coef_t), intent(inout) |
coef, |
|
|
type(gs_t), intent(inout) |
gs, |
|
|
type(field_t), intent(in) |
h, |
|
|
real(kind=rp) |
c_avisc_low |
|
) |
| |
|
static |
- Parameters
-
rhs_rho_field | Output array for density RHS terms |
rhs_m_x | Output array for x-momentum RHS terms |
rhs_m_y | Output array for y-momentum RHS terms |
rhs_m_z | Output array for z-momentum RHS terms |
rhs_E | Output array for energy RHS terms |
rho_field | Input density field |
m_x | Input x-momentum field |
m_y | Input y-momentum field |
m_z | Input z-momentum field |
E | Input total energy field |
p | Input pressure field |
u | Input x-velocity field |
v | Input y-velocity field |
w | Input z-velocity field |
Ax | Matrix-vector product operator |
coef | Spatial discretization coefficients |
gs | Gather-scatter operator for parallel communication |
h | Mesh size field |
c_avisc_low | Low-order artificial viscosity coefficient |
Definition at line 56 of file euler_res_cpu.f90.
◆ step()
procedure, nopass euler_res_cpu::euler_res_cpu_t::step |
( |
type(field_t), intent(inout) |
rho_field, |
|
|
type(field_t), intent(inout) |
m_x, |
|
|
type(field_t), intent(inout) |
m_y, |
|
|
type(field_t), intent(inout) |
m_z, |
|
|
type(field_t), intent(inout) |
e, |
|
|
type(field_t), intent(in) |
p, |
|
|
type(field_t), intent(in) |
u, |
|
|
type(field_t), intent(in) |
v, |
|
|
type(field_t), intent(in) |
w, |
|
|
class(ax_t), intent(inout) |
ax, |
|
|
type(coef_t), intent(inout) |
coef, |
|
|
type(gs_t), intent(inout) |
gs, |
|
|
type(field_t), intent(in) |
h, |
|
|
real(kind=rp) |
c_avisc_low, |
|
|
class(runge_kutta_time_scheme_t), intent(in) |
rk_scheme, |
|
|
real(kind=rp), intent(in) |
dt |
|
) |
| |
|
staticvirtual |
- Parameters
-
rho_field | Density field |
m_x,m_y,m_z | Momentum components |
E | Total energy |
p | Pressure field |
u,v,w | Velocity components |
Ax | Matrix-vector product operator |
coef | Coefficients for spatial discretization |
gs | Gather-scatter operator for parallel communication |
h | Mesh size field |
c_avisc_low | Low-order artificial viscosity coefficient |
rk_scheme | Runge-Kutta time integration scheme |
dt | Time step size |
Implements euler_residual::euler_rhs_t.
Definition at line 55 of file euler_res_cpu.f90.
The documentation for this type was generated from the following file: