Skip to content

Commit 3ad80a2

Browse files
Move IMEXEuler and IMEXEulerARK
1 parent 3afb3ce commit 3ad80a2

File tree

5 files changed

+61
-61
lines changed

5 files changed

+61
-61
lines changed

lib/OrdinaryDiffEqBDF/src/OrdinaryDiffEqBDF.jl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,6 @@ include("controllers.jl")
3636
include("bdf_perform_step.jl")
3737

3838
export ABDF2, QNDF1, QBDF1, QNDF2, QBDF2, QNDF, QBDF, FBDF,
39-
SBDF2, SBDF3, SBDF4, MEBDF2
39+
SBDF2, SBDF3, SBDF4, MEBDF2, IMEXEuler, IMEXEulerARK
4040

4141
end

lib/OrdinaryDiffEqBDF/src/algorithms.jl

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -331,3 +331,60 @@ QBDF: Multistep Method
331331
An alias of `QNDF` with κ=0.
332332
"""
333333
QBDF(; kwargs...) = QNDF(; kappa = tuple(0 // 1, 0 // 1, 0 // 1, 0 // 1, 0 // 1), kwargs...)
334+
335+
"""
336+
IMEXEuler(;kwargs...)
337+
338+
The one-step version of the IMEX multistep methods of
339+
340+
- Uri M. Ascher, Steven J. Ruuth, Brian T. R. Wetton.
341+
Implicit-Explicit Methods for Time-Dependent Partial Differential Equations.
342+
Society for Industrial and Applied Mathematics.
343+
Journal on Numerical Analysis, 32(3), pp 797-823, 1995.
344+
doi: [https://doi.org/10.1137/0732037](https://doi.org/10.1137/0732037)
345+
346+
When applied to a `SplitODEProblem` of the form
347+
348+
```
349+
u'(t) = f1(u) + f2(u)
350+
```
351+
352+
The default `IMEXEuler()` method uses an update of the form
353+
354+
```
355+
unew = uold + dt * (f1(unew) + f2(uold))
356+
```
357+
358+
See also `SBDF`, `IMEXEulerARK`.
359+
"""
360+
IMEXEuler(; kwargs...) = SBDF(1; kwargs...)
361+
362+
"""
363+
IMEXEulerARK(;kwargs...)
364+
365+
The one-step version of the IMEX multistep methods of
366+
367+
- Uri M. Ascher, Steven J. Ruuth, Brian T. R. Wetton.
368+
Implicit-Explicit Methods for Time-Dependent Partial Differential Equations.
369+
Society for Industrial and Applied Mathematics.
370+
Journal on Numerical Analysis, 32(3), pp 797-823, 1995.
371+
doi: [https://doi.org/10.1137/0732037](https://doi.org/10.1137/0732037)
372+
373+
When applied to a `SplitODEProblem` of the form
374+
375+
```
376+
u'(t) = f1(u) + f2(u)
377+
```
378+
379+
A classical additive Runge-Kutta method in the sense of
380+
[Araújo, Murua, Sanz-Serna (1997)](https://doi.org/10.1137/S0036142995292128)
381+
consisting of the implicit and the explicit Euler method given by
382+
383+
```
384+
y1 = uold + dt * f1(y1)
385+
unew = uold + dt * (f1(unew) + f2(y1))
386+
```
387+
388+
See also `SBDF`, `IMEXEuler`.
389+
"""
390+
IMEXEulerARK(; kwargs...) = SBDF(1; ark = true, kwargs...)

lib/OrdinaryDiffEqSDIRK/src/OrdinaryDiffEqSDIRK.jl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ export ImplicitEuler, ImplicitMidpoint, Trapezoid, TRBDF2, SDIRK2, SDIRK22,
3232
Kvaerno3, KenCarp3, Cash4, Hairer4, Hairer42, SSPSDIRK2, Kvaerno4,
3333
Kvaerno5, KenCarp4, KenCarp47, KenCarp5, KenCarp58, ESDIRK54I8L2SA, SFSDIRK4,
3434
SFSDIRK5, CFNLIRK3, SFSDIRK6, SFSDIRK7, SFSDIRK8, Kvaerno5, KenCarp4, KenCarp5,
35-
SFSDIRK4, SFSDIRK5, CFNLIRK3, SFSDIRK6, IMEXEuler, IMEXEulerARK,
35+
SFSDIRK4, SFSDIRK5, CFNLIRK3, SFSDIRK6,
3636
SFSDIRK7, SFSDIRK8, ESDIRK436L2SA2, ESDIRK437L2SA, ESDIRK547L2SA2, ESDIRK659L2SA
3737

3838
end

lib/OrdinaryDiffEqSDIRK/src/algorithms.jl

Lines changed: 0 additions & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -130,63 +130,6 @@ end
130130

131131
TruncatedStacktraces.@truncate_stacktrace TRBDF2
132132

133-
"""
134-
IMEXEuler(;kwargs...)
135-
136-
The one-step version of the IMEX multistep methods of
137-
138-
- Uri M. Ascher, Steven J. Ruuth, Brian T. R. Wetton.
139-
Implicit-Explicit Methods for Time-Dependent Partial Differential Equations.
140-
Society for Industrial and Applied Mathematics.
141-
Journal on Numerical Analysis, 32(3), pp 797-823, 1995.
142-
doi: [https://doi.org/10.1137/0732037](https://doi.org/10.1137/0732037)
143-
144-
When applied to a `SplitODEProblem` of the form
145-
146-
```
147-
u'(t) = f1(u) + f2(u)
148-
```
149-
150-
The default `IMEXEuler()` method uses an update of the form
151-
152-
```
153-
unew = uold + dt * (f1(unew) + f2(uold))
154-
```
155-
156-
See also `SBDF`, `IMEXEulerARK`.
157-
"""
158-
IMEXEuler(; kwargs...) = SBDF(1; kwargs...)
159-
160-
"""
161-
IMEXEulerARK(;kwargs...)
162-
163-
The one-step version of the IMEX multistep methods of
164-
165-
- Uri M. Ascher, Steven J. Ruuth, Brian T. R. Wetton.
166-
Implicit-Explicit Methods for Time-Dependent Partial Differential Equations.
167-
Society for Industrial and Applied Mathematics.
168-
Journal on Numerical Analysis, 32(3), pp 797-823, 1995.
169-
doi: [https://doi.org/10.1137/0732037](https://doi.org/10.1137/0732037)
170-
171-
When applied to a `SplitODEProblem` of the form
172-
173-
```
174-
u'(t) = f1(u) + f2(u)
175-
```
176-
177-
A classical additive Runge-Kutta method in the sense of
178-
[Araújo, Murua, Sanz-Serna (1997)](https://doi.org/10.1137/S0036142995292128)
179-
consisting of the implicit and the explicit Euler method given by
180-
181-
```
182-
y1 = uold + dt * f1(y1)
183-
unew = uold + dt * (f1(unew) + f2(y1))
184-
```
185-
186-
See also `SBDF`, `IMEXEuler`.
187-
"""
188-
IMEXEulerARK(; kwargs...) = SBDF(1; ark = true, kwargs...)
189-
190133
"""
191134
@article{hindmarsh2005sundials,
192135
title={{SUNDIALS}: Suite of nonlinear and differential/algebraic equation solvers},

src/OrdinaryDiffEq.jl

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -272,13 +272,13 @@ export ImplicitEuler, ImplicitMidpoint, Trapezoid, TRBDF2, SDIRK2, SDIRK22,
272272
Kvaerno3, KenCarp3, Cash4, Hairer4, Hairer42, SSPSDIRK2, Kvaerno4,
273273
Kvaerno5, KenCarp4, KenCarp47, KenCarp5, KenCarp58, ESDIRK54I8L2SA, SFSDIRK4,
274274
SFSDIRK5, CFNLIRK3, SFSDIRK6, SFSDIRK7, SFSDIRK8, Kvaerno5, KenCarp4, KenCarp5,
275-
SFSDIRK4, SFSDIRK5, CFNLIRK3, SFSDIRK6, IMEXEuler, IMEXEulerARK,
275+
SFSDIRK4, SFSDIRK5, CFNLIRK3, SFSDIRK6,
276276
SFSDIRK7, SFSDIRK8, ESDIRK436L2SA2, ESDIRK437L2SA, ESDIRK547L2SA2, ESDIRK659L2SA
277277

278278
include("../lib/OrdinaryDiffEqBDF/src/OrdinaryDiffEqBDF.jl")
279279
using ..OrdinaryDiffEqBDF
280280
export ABDF2, QNDF1, QBDF1, QNDF2, QBDF2, QNDF, QBDF, FBDF,
281-
SBDF2, SBDF3, SBDF4, MEBDF2
281+
SBDF2, SBDF3, SBDF4, MEBDF2, IMEXEuler, IMEXEulerARK
282282

283283
include("../lib/OrdinaryDiffEqDefault/src/OrdinaryDiffEqDefault.jl")
284284
using ..OrdinaryDiffEqDefault

0 commit comments

Comments
 (0)