rk4_step Subroutine

private subroutine rk4_step(state)

Advance the solution by one time step using the classic RK4 scheme.

Four-stage, fourth-order Runge-Kutta (not SSP). Stage arithmetic lives in stepper_kernels::kernel_rk4 (s1 holds Q^n; s2 accumulates the weighted stages); this adapter only remaps the 1D state's flat pointers and supplies the rhs callback.

WARNING: Classic RK4 is not strong-stability preserving. Near shocks it may amplify oscillations at large CFL numbers. Keep CFL <= 1 with WENO spatial discretisation to avoid spurious artefacts. Also computes the global L2 residual norm for convergence monitoring.

Arguments

Type IntentOptional Attributes Name
type(solver_state_t), intent(inout), target :: state