Mallard 0.8.0
Unstructured, GPU accelerated, high-order finite volume CFD solver
Mallard website
Loading...
Searching...
No Matches
SSPRK3 Class Reference

Three-stage, third-order strong-stability-preserving Runge-Kutta (Shu & Osher 1988). More...

#include <time_integrator.h>

Inheritance diagram for SSPRK3:
TimeIntegrator

Public Member Functions

 SSPRK3 ()
 
void take_step (const rtype t, const rtype dt, std::vector< State > &solution_vec, std::vector< State > &rhs_vec, const RHSFunction &calc_rhs, const rtype *dt_device=nullptr) override
 Advance solution_vec[0] from time t by dt.
 
- Public Member Functions inherited from TimeIntegrator
virtual ~TimeIntegrator ()=default
 
TimeIntegratorType get_type () const
 
uint8_t get_n_solution_vectors () const
 
uint8_t get_n_rhs_vectors () const
 

Additional Inherited Members

- Protected Attributes inherited from TimeIntegrator
TimeIntegratorType type
 
uint8_t n_solution_vectors
 
uint8_t n_rhs_vectors
 

Detailed Description

Three-stage, third-order strong-stability-preserving Runge-Kutta (Shu & Osher 1988).

Constructor & Destructor Documentation

◆ SSPRK3()

SSPRK3::SSPRK3 ( )

Member Function Documentation

◆ take_step()

void SSPRK3::take_step ( const rtype  t,
const rtype  dt,
std::vector< State > &  solution_vec,
std::vector< State > &  rhs_vec,
const RHSFunction &  calc_rhs,
const rtype *  dt_device = nullptr 
)
overridevirtual

Advance solution_vec[0] from time t by dt.

Parameters
tTime at the start of the step.
dtTime step.
solution_vecSolution (index 0) and scratch states.
rhs_vecScratch RHS states.
calc_rhsRHS evaluator, dU/dt = calc_rhs(U, t).
dt_deviceDevice array of dt's multiples (see dt_scales), which the updates read instead of dt when given.

Implements TimeIntegrator.


The documentation for this class was generated from the following files: