HyPar
1.0
Finite-Difference Hyperbolic-Parabolic PDE Solver on Cartesian Grids
|
Contains structures for time integration. More...
Go to the source code of this file.
Data Structures | |
struct | TimeIntegration |
Structure of variables/parameters and function pointers for time integration. More... | |
struct | ExplicitRKParameters |
Structure containing the parameters for an explicit Runge-Kutta method. More... | |
struct | GLMGEEParameters |
Structure containing the parameters for the General Linear Methods with Global Error Estimators (GLM-GEE) More... | |
Macros | |
#define | _FORWARD_EULER_ "euler" |
#define | _RK_ "rk" |
#define | _GLM_GEE_ "glm-gee" |
#define | _RK_1FE_ "1fe" |
#define | _RK_22_ "22" |
#define | _RK_33_ "33" |
#define | _RK_44_ "44" |
#define | _RK_SSP3_ "ssprk3" |
#define | _RK_TVD3_ "tvdrk3" |
#define | _GLM_GEE_YYT_ "yyt" |
#define | _GLM_GEE_YEPS_ "yeps" |
#define | _GLM_GEE_23_ "23" |
#define | _GLM_GEE_24_ "24" |
#define | _GLM_GEE_25I_ "25i" |
#define | _GLM_GEE_35_ "35" |
#define | _GLM_GEE_EXRK2A_ "exrk2a" |
#define | _GLM_GEE_RK32G1_ "rk32g1" |
#define | _GLM_GEE_RK285EX_ "rk285ex" |
Contains structures for time integration.
Definition in file timeintegration_struct.h.
struct ExplicitRKParameters |
Structure containing the parameters for an explicit Runge-Kutta method.
Contains the parameters defining an explicit Runge Kutta time integration method.
Definition at line 177 of file timeintegration_struct.h.
struct GLMGEEParameters |
Structure containing the parameters for the General Linear Methods with Global Error Estimators (GLM-GEE)
Contains the parameters defining a General Linear time-integration method with global error estimators.
Definition at line 267 of file timeintegration_struct.h.
Data Fields | ||
---|---|---|
int | nstages |
Number of stages |
int | r |
Number of auxiliary solutions propagated with solution |
char | ee_mode[_MAX_STRING_SIZE_] |
Error estimation mode (_GLM_GEE_YYT_ or _GLM_GEE_YEPS_) |
double * | A_yyt |
Stage computation coefficients ( \(y-\tilde{y}\) error-estimation mode) (row-major) |
double * | B_yyt |
Step completion coefficients ( \(y-\tilde{y}\) error-estimation mode) (row-major) |
double * | C_yyt |
Stage computation coefficients ( \(y-\tilde{y}\) error-estimation mode) (row-major) |
double * | D_yyt |
Step completion coefficients ( \(y-\tilde{y}\) error-estimation mode) (row-major) |
double * | c_yyt |
Stage time coefficients ( \(y-\tilde{y}\) error-estimation mode) (row-major) |
double * | A_yeps |
Stage computation coefficients ( \(y-\epsilon\) error-estimation mode) (row-major) |
double * | B_yeps |
Step completion coefficients ( \(y-\epsilon\) error-estimation mode) (row-major) |
double * | C_yeps |
Stage computation coefficients ( \(y-\epsilon\) error-estimation mode) (row-major) |
double * | D_yeps |
Step completion coefficients ( \(y-\epsilon\) error-estimation mode) (row-major) |
double * | c_yeps |
Stage time coefficients ( \(y-\epsilon\) error-estimation mode) (row-major) |
double * | A |
Pointer to the stage computation coefficients |
double * | B |
Pointer to the step completion coefficients |
double * | C |
Pointer to the stage computation coefficients |
double * | D |
Pointer to the step completion coefficients |
double * | c |
Pointer to stage time coefficients |
double | gamma |
Gamma parameter |
#define _FORWARD_EULER_ "euler" |
Forward Euler time integration
Definition at line 14 of file timeintegration_struct.h.
#define _RK_ "rk" |
Runge-Kutta time integration method
Definition at line 16 of file timeintegration_struct.h.
#define _GLM_GEE_ "glm-gee" |
General Linear Methods with Global Error Estimators
Definition at line 18 of file timeintegration_struct.h.
#define _RK_1FE_ "1fe" |
Forward Euler, written as a Runge Kutta method (1 stage, 1st order)
\(\begin{array}{c|c} 0 & 0 \\ \hline & 1 \end{array}\)
Definition at line 128 of file timeintegration_struct.h.
#define _RK_22_ "22" |
2-stage, 2nd order Runge Kutta method, often known as "RK2a"
\(\begin{array}{c|cc} 0 & & \\ 1 & 1 & \\ \hline & \frac{1}{2} & \frac{1}{2}\end{array}\)
Definition at line 136 of file timeintegration_struct.h.
#define _RK_33_ "33" |
3-stage, 3rd order Runge Kutta method
\(\begin{array}{c|ccc} 0 & & & \\ \frac{2}{3} & \frac{2}{3} & & \\ \frac{2}{3} & \frac{5}{12} & \frac{1}{4} & \\ \hline & \frac{1}{4} & -\frac{1}{4} & 1\end{array}\)
Definition at line 144 of file timeintegration_struct.h.
#define _RK_44_ "44" |
The classical 4-stage, 4th order Runge Kutta method
\( \begin{array}{c|cccc} 0 & & & & \\ \frac{1}{2} & \frac{1}{2} & & & \\ \frac{1}{2} & & \frac{1}{2} & & \\ 1 & & & 1 & \\ \hline & \frac{1}{6} & \frac{1}{3} & \frac{1}{3} & \frac{1}{6} \end{array} \)
Definition at line 152 of file timeintegration_struct.h.
#define _RK_SSP3_ "ssprk3" |
Strong-Stability-Preserving (SSP) 3-stage, 3rd order Runge Kutta method
\( \begin{array}{c|ccc} 0 & & & \\ 1 & 1 & & \\ \frac{1}{2} & \frac{1}{4} & \frac{1}{4} & \\ \hline & \frac{1}{6} & \frac{1}{6} & \frac{2}{3} \end{array}\)
Reference:
Definition at line 165 of file timeintegration_struct.h.
#define _RK_TVD3_ "tvdrk3" |
Same as _RK_SSP3_
Definition at line 166 of file timeintegration_struct.h.
#define _GLM_GEE_YYT_ "yyt" |
\(y-\tilde{y}\) form
Reference:
Definition at line 193 of file timeintegration_struct.h.
#define _GLM_GEE_YEPS_ "yeps" |
\(y-\epsilon\) form
Reference:
Definition at line 201 of file timeintegration_struct.h.
#define _GLM_GEE_23_ "23" |
A 3-stage, 2nd order method
Reference:
Definition at line 209 of file timeintegration_struct.h.
#define _GLM_GEE_24_ "24" |
A 4-stage, 2nd order method
Reference:
Definition at line 217 of file timeintegration_struct.h.
#define _GLM_GEE_25I_ "25i" |
A 5-stage, 2nd order method, with good imaginary stability
Reference:
Definition at line 225 of file timeintegration_struct.h.
#define _GLM_GEE_35_ "35" |
A 5-stage, 3rd order method
Reference:
Definition at line 233 of file timeintegration_struct.h.
#define _GLM_GEE_EXRK2A_ "exrk2a" |
RK-2a with an error estimator
Reference:
Definition at line 241 of file timeintegration_struct.h.
#define _GLM_GEE_RK32G1_ "rk32g1" |
A 3rd order method
Reference:
Definition at line 249 of file timeintegration_struct.h.
#define _GLM_GEE_RK285EX_ "rk285ex" |
A 2nd order RK method with an error estimator
Reference:
Definition at line 257 of file timeintegration_struct.h.