|
1 | 1 | export AbstractIMEXARKTableau |
2 | | -export ARS111, ARS121, ARS122, ARS233, ARS232, ARS222, ARS443 |
| 2 | +export ARS111, ARS121, ARS122, ARS233, ARS232, ARS222, ARS343, ARS443 |
3 | 3 | export IMKG232a, IMKG232b, IMKG242a, IMKG242b, IMKG252a, IMKG252b |
4 | 4 | export IMKG253a, IMKG253b, IMKG254a, IMKG254b, IMKG254c, IMKG342a, IMKG343a |
5 | 5 | export DBM453, HOMMEM1 |
|
48 | 48 | # the number of explicit stages, and p is the order of accuracy |
49 | 49 |
|
50 | 50 | # This algorithm is equivalent to OrdinaryDiffEq.IMEXEuler. |
| 51 | + |
| 52 | +""" |
| 53 | + ARS111 |
| 54 | +
|
| 55 | +The Forward-Backward (1,1,1) implicit-explicit (IMEX) Runge-Kutta scheme of |
| 56 | +[ARS1997](@cite), section 2.1. |
| 57 | +
|
| 58 | +This is equivalent to the `OrdinaryDiffEq.IMEXEuler` algorithm. |
| 59 | +""" |
51 | 60 | struct ARS111 <: AbstractIMEXARKTableau end |
52 | 61 |
|
53 | 62 | function tableau(::ARS111) |
54 | 63 | IMEXARKTableau(; a_exp = @SArray([0 0; 1 0]), a_imp = @SArray([0 0; 0 1])) |
55 | 64 | end |
56 | 65 |
|
| 66 | +""" |
| 67 | + ARS121 |
| 68 | +
|
| 69 | +The Forward-Backward (1,2,1) implicit-explicit (IMEX) Runge-Kutta scheme of |
| 70 | +[ARS1997](@cite), section 2.2. |
| 71 | +
|
| 72 | +This is equivalent to the `OrdinaryDiffEq.IMEXEulerARK` algorithm. |
| 73 | +""" |
57 | 74 | struct ARS121 <: AbstractIMEXARKTableau end |
| 75 | + |
58 | 76 | function tableau(::ARS121) |
59 | 77 | IMEXARKTableau(; a_exp = @SArray([0 0; 1 0]), b_exp = @SArray([0, 1]), a_imp = @SArray([0 0; 0 1])) |
60 | 78 | end |
@@ -88,6 +106,12 @@ function tableau(::ARS233) |
88 | 106 | ) |
89 | 107 | end |
90 | 108 |
|
| 109 | +""" |
| 110 | + ARS232 |
| 111 | +
|
| 112 | +The Forward-Backward (2,3,2) implicit-explicit (IMEX) Runge-Kutta scheme of |
| 113 | +[ARS1997](@cite), section 2.5. |
| 114 | +""" |
91 | 115 | struct ARS232 <: AbstractIMEXARKTableau end |
92 | 116 | function tableau(::ARS232) |
93 | 117 | γ = 1 - √2 / 2 |
@@ -122,6 +146,12 @@ function tableau(::ARS222) |
122 | 146 | ])) |
123 | 147 | end |
124 | 148 |
|
| 149 | +""" |
| 150 | + ARS343 |
| 151 | +
|
| 152 | +The L-stable, third-order (3,4,3) implicit-explicit (IMEX) Runge-Kutta scheme of |
| 153 | +[ARS1997](@cite), section 2.7. |
| 154 | +""" |
125 | 155 | struct ARS343 <: AbstractIMEXARKTableau end |
126 | 156 | function tableau(::ARS343) |
127 | 157 | γ = 0.4358665215084590 |
|
0 commit comments