Skip to content

Commit 08b338f

Browse files
Move ARS docs to new types, delete old imp
1 parent 7050289 commit 08b338f

File tree

4 files changed

+37
-302
lines changed

4 files changed

+37
-302
lines changed

docs/src/algorithms.md

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,12 @@ ARK548L2SA2KennedyCarpenter
8888

8989
### ARS
9090

91-
TODO: add `ARS111`, `ARS121`, and `ARS343` docs.
91+
```@docs
92+
ARS111
93+
ARS121
94+
ARS232
95+
ARS343
96+
```
9297

9398
## Multirate
9499

src/ClimaTimeSteppers.jl

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,6 @@ include("solvers/multirate.jl")
9999
include("solvers/lsrk.jl")
100100
include("solvers/ssprk.jl")
101101
include("solvers/ark.jl")
102-
# include("solvers/ars.jl") # previous implementations of ARS schemes
103102
include("solvers/mis.jl")
104103
include("solvers/wickerskamarock.jl")
105104
include("solvers/rosenbrock.jl")

src/solvers/ars.jl

Lines changed: 0 additions & 299 deletions
This file was deleted.

src/solvers/imex_ark_tableaus.jl

Lines changed: 31 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
export AbstractIMEXARKTableau
2-
export ARS111, ARS121, ARS122, ARS233, ARS232, ARS222, ARS443
2+
export ARS111, ARS121, ARS122, ARS233, ARS232, ARS222, ARS343, ARS443
33
export IMKG232a, IMKG232b, IMKG242a, IMKG242b, IMKG252a, IMKG252b
44
export IMKG253a, IMKG253b, IMKG254a, IMKG254b, IMKG254c, IMKG342a, IMKG343a
55
export DBM453, HOMMEM1
@@ -48,13 +48,31 @@ end
4848
# the number of explicit stages, and p is the order of accuracy
4949

5050
# 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+
"""
5160
struct ARS111 <: AbstractIMEXARKTableau end
5261

5362
function tableau(::ARS111)
5463
IMEXARKTableau(; a_exp = @SArray([0 0; 1 0]), a_imp = @SArray([0 0; 0 1]))
5564
end
5665

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+
"""
5774
struct ARS121 <: AbstractIMEXARKTableau end
75+
5876
function tableau(::ARS121)
5977
IMEXARKTableau(; a_exp = @SArray([0 0; 1 0]), b_exp = @SArray([0, 1]), a_imp = @SArray([0 0; 0 1]))
6078
end
@@ -88,6 +106,12 @@ function tableau(::ARS233)
88106
)
89107
end
90108

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+
"""
91115
struct ARS232 <: AbstractIMEXARKTableau end
92116
function tableau(::ARS232)
93117
γ = 1 - 2 / 2
@@ -122,6 +146,12 @@ function tableau(::ARS222)
122146
]))
123147
end
124148

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+
"""
125155
struct ARS343 <: AbstractIMEXARKTableau end
126156
function tableau(::ARS343)
127157
γ = 0.4358665215084590

0 commit comments

Comments
 (0)