Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Upstream #14

Merged
merged 192 commits into from
Sep 3, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
192 commits
Select commit Hold shift + click to select a range
c6f7351
Merge branch 'master' of https://github.com/SciML/OrdinaryDiffEq.jl
ParamThakkar123 Aug 25, 2024
36487a2
Perform step refactor for rosenbrock
ParamThakkar123 Aug 25, 2024
cd77267
Rodas4Cache to RosenbrockCache
ParamThakkar123 Aug 25, 2024
aeb1520
Type error fix
ParamThakkar123 Aug 25, 2024
0512ead
Small mistake fix
ParamThakkar123 Aug 25, 2024
e2a55a7
Fixes
ParamThakkar123 Aug 25, 2024
a2dde84
fixes
ParamThakkar123 Aug 25, 2024
4c60b7a
Fixes
ParamThakkar123 Aug 25, 2024
3ef42bd
reappply
ParamThakkar123 Aug 25, 2024
5eb818a
du1 fix
ParamThakkar123 Aug 25, 2024
adacbc5
du1 fix
ParamThakkar123 Aug 25, 2024
3f73a47
Fixes
ParamThakkar123 Aug 25, 2024
2732290
Fixes
ParamThakkar123 Aug 25, 2024
5c2be82
Fixes
ParamThakkar123 Aug 25, 2024
f7dbea8
docs Tsit5
ArnoStrouwen Aug 7, 2024
c7652ae
automate common first steps
ArnoStrouwen Aug 8, 2024
1172b79
add more info to Tsit5 use cases.
ArnoStrouwen Aug 7, 2024
5af8afb
docs LowOrderRK
ArnoStrouwen Aug 9, 2024
7600849
docs reproducibility
ArnoStrouwen Aug 9, 2024
94025dd
Alshina 6 non-adaptive
ArnoStrouwen Aug 11, 2024
c9c257c
docs HighOrderRK
ArnoStrouwen Aug 11, 2024
33b4522
docs Verner
ArnoStrouwen Aug 11, 2024
5f24809
docs Feagin
ArnoStrouwen Aug 11, 2024
336c515
add Euler
ArnoStrouwen Aug 11, 2024
68a9c6a
docs LowStorageRK
ArnoStrouwen Aug 11, 2024
5a24e10
finish RKM docstring
ArnoStrouwen Aug 11, 2024
3dca8f7
docs SSPRK
ArnoStrouwen Aug 11, 2024
21db974
docs AdamsBashforthMoulton
ArnoStrouwen Aug 11, 2024
539f9f3
format
ArnoStrouwen Aug 11, 2024
7e8e5ac
fix AB5 docstring
ArnoStrouwen Aug 12, 2024
a52c2e9
finish some SSPRK docstrings
ArnoStrouwen Aug 12, 2024
87bb3f1
start Nordsieck documentation
ArnoStrouwen Aug 12, 2024
e0d8eac
Add warnings for JVODE
ArnoStrouwen Aug 12, 2024
f397f99
docs RKN
ArnoStrouwen Aug 12, 2024
684a307
changeJVODE preferred alternative
ArnoStrouwen Aug 12, 2024
12a8be7
change JVODE preferred alternative
ArnoStrouwen Aug 12, 2024
f6589e2
Expand upon low storage docs
ArnoStrouwen Aug 12, 2024
69ff211
Expand upon Feagin docs.
ArnoStrouwen Aug 12, 2024
b0e494a
docs Nordsieck
ArnoStrouwen Aug 12, 2024
47114af
mark AN5 as experimental
ArnoStrouwen Aug 12, 2024
1cff39d
docs SymplecticRK and remove old docs
ArnoStrouwen Aug 12, 2024
4c272b8
expand SSPRK explanation
ArnoStrouwen Aug 12, 2024
5931a47
start docstring dependent on OrdinaryDiffEqDifferentiation
ArnoStrouwen Aug 13, 2024
4d51a16
start docstring dependent on OrdinaryDiffEqNonlinearSolve
ArnoStrouwen Aug 14, 2024
65034a5
start function for all implicit docstrings
ArnoStrouwen Aug 16, 2024
72245c4
upstream algorithm show method
ArnoStrouwen Aug 17, 2024
9bc7e0a
docs FIRK
ArnoStrouwen Aug 18, 2024
6d86116
add text MIME to show method for algs
ArnoStrouwen Aug 18, 2024
4223150
docs PRK
ArnoStrouwen Aug 18, 2024
9754be2
finish docstring LowStorageRK
ArnoStrouwen Aug 18, 2024
3912665
more docs PRK
ArnoStrouwen Aug 18, 2024
413d36a
PDIRK docs
ArnoStrouwen Aug 18, 2024
3032688
more PDIRK docs
ArnoStrouwen Aug 18, 2024
cfe4549
Extrapolation docs
ArnoStrouwen Aug 18, 2024
daffc25
docs Rosenbrock
ArnoStrouwen Aug 18, 2024
21f47aa
delete refactored implicit docstrings
ArnoStrouwen Aug 18, 2024
58b16a6
docs StabalizedRK
ArnoStrouwen Aug 18, 2024
cb5ed9c
fix name SERK2
ArnoStrouwen Aug 18, 2024
863b365
add some subtitles in documentation
ArnoStrouwen Aug 18, 2024
5ab2ad4
add more references
ArnoStrouwen Aug 18, 2024
788d900
add PDIRK explanation
ArnoStrouwen Aug 18, 2024
2457ecf
docs BDF
ArnoStrouwen Aug 18, 2024
686bfe0
remove more old docstrings
ArnoStrouwen Aug 19, 2024
5913ac4
add more doc subtitles
ArnoStrouwen Aug 19, 2024
dc84963
try make SBDF show up in docs
ArnoStrouwen Aug 19, 2024
a6ceab2
docs SDIRK
ArnoStrouwen Aug 19, 2024
0a9ef29
fix some fsal rebase issues
ArnoStrouwen Aug 19, 2024
8f2eb38
add FIRK description
ArnoStrouwen Aug 20, 2024
b99f110
Split Extrapolation into stiff and non-stiff
ArnoStrouwen Aug 20, 2024
78c44dd
expand symplectic explanation
ArnoStrouwen Aug 21, 2024
c44932f
add more algorithms and descriptions
ArnoStrouwen Aug 21, 2024
16d167a
docs Linear
ArnoStrouwen Aug 21, 2024
80e8b1f
Fill in linear descriptions
ArnoStrouwen Aug 21, 2024
c51322d
docs ExponentialRK
ArnoStrouwen Aug 21, 2024
6a0478f
StabalizedIRK docs
ArnoStrouwen Aug 21, 2024
79e620e
more StabalizedIRK docs
ArnoStrouwen Aug 21, 2024
0bb488d
proper symplectic example
ArnoStrouwen Aug 21, 2024
a3b98bf
proper RKN example
ArnoStrouwen Aug 21, 2024
0c4e998
docs IMEXMultistep
ArnoStrouwen Aug 21, 2024
8eaa4ea
more references
ArnoStrouwen Aug 21, 2024
6d90f74
docs QPRK
ArnoStrouwen Aug 21, 2024
b6242f0
format
ArnoStrouwen Aug 21, 2024
e244bfb
add more refs
ArnoStrouwen Aug 22, 2024
743844e
QPRK description
ArnoStrouwen Aug 22, 2024
30b2412
more references
ArnoStrouwen Aug 22, 2024
ed0a138
add proper linear example
ArnoStrouwen Aug 22, 2024
e5bd78b
add proper ExponentialRK example
ArnoStrouwen Aug 22, 2024
fba9d1f
add proper IMEX example
ArnoStrouwen Aug 22, 2024
cf5fbf4
add more references
ArnoStrouwen Aug 22, 2024
eb395b6
add more references
ArnoStrouwen Aug 24, 2024
08744bc
add proper StabalizedIRK example
ArnoStrouwen Aug 24, 2024
d2f8141
finish PRK keywords
ArnoStrouwen Aug 24, 2024
1f08cee
finish explicit Extrapolation keywords
ArnoStrouwen Aug 24, 2024
0cd03e0
collapse docstrings by default
ArnoStrouwen Aug 24, 2024
c28f37b
fixes
oscardssmith Aug 25, 2024
a94970a
Add more descriptions to keywords
ArnoStrouwen Aug 25, 2024
393a338
cross platform size_treshhold_ignore
ArnoStrouwen Aug 25, 2024
594b77d
Fixes
ParamThakkar123 Aug 26, 2024
45f4d13
Fix some algorithm locations
ChrisRackauckas Aug 26, 2024
7aeb38b
Merge pull request #2317 from ArnoStrouwen/docs
ChrisRackauckas Aug 26, 2024
373a8ee
format a ton
ChrisRackauckas Aug 26, 2024
8014a9d
Fixes
ParamThakkar123 Aug 26, 2024
183b83a
Fixes
ParamThakkar123 Aug 26, 2024
22b88e9
Fix precompilation of LowStorageRK
termi-official Aug 26, 2024
3a4e8d2
More splits in the documentation
ChrisRackauckas Aug 26, 2024
94659b1
Fixes
ParamThakkar123 Aug 26, 2024
fce36ae
add implicit DAE example
ChrisRackauckas Aug 26, 2024
d46d176
Merge pull request #2433 from termi-official/do/fix-lsrk-duplication
ChrisRackauckas Aug 26, 2024
22335cf
Update Project.toml
ChrisRackauckas Aug 26, 2024
91597e7
Fixes
ParamThakkar123 Aug 26, 2024
357c76e
Fixes
ParamThakkar123 Aug 26, 2024
a6bbc50
simplifications
oscardssmith Aug 26, 2024
b396746
fix tableaus
oscardssmith Aug 26, 2024
ebc2fca
simplifications
oscardssmith Aug 26, 2024
2ec106f
typo
ChrisRackauckas Aug 26, 2024
bc53a6d
in place works
oscardssmith Aug 26, 2024
d97102e
non-identity mass_matrix oop fix
oscardssmith Aug 26, 2024
f407b73
fix addsteps
oscardssmith Aug 26, 2024
caf309b
Fix build
ChrisRackauckas Aug 27, 2024
81ec058
typo
ChrisRackauckas Aug 27, 2024
0df6173
bugfixes
oscardssmith Aug 27, 2024
af5e51b
fix addsteps
oscardssmith Aug 27, 2024
f6ade39
fixes
oscardssmith Aug 27, 2024
18897d5
opts
ParamThakkar123 Aug 27, 2024
9456e80
fixes
oscardssmith Aug 27, 2024
9beaf13
undo param change
oscardssmith Aug 27, 2024
c980a73
fixes
ParamThakkar123 Aug 27, 2024
5ca7aa1
Merge branch 'Fixes6' of https://github.com/ParamThakkar123/OrdinaryD…
ParamThakkar123 Aug 27, 2024
8748ceb
Fixes
ParamThakkar123 Aug 27, 2024
50c8eed
revert
ParamThakkar123 Aug 27, 2024
ac27761
Fixes
ParamThakkar123 Aug 27, 2024
f1ba405
Fixes
ParamThakkar123 Aug 27, 2024
5f04aaa
Add test coverage for custom jacobians in DAEFunctions.
termi-official Aug 27, 2024
81108af
Format
termi-official Aug 27, 2024
ae1a7f9
Fixes
ParamThakkar123 Aug 27, 2024
84dd17d
Update lib/OrdinaryDiffEqDifferentiation/src/derivative_utils.jl
ChrisRackauckas Aug 27, 2024
590d7e9
Merge pull request #2434 from SciML/moresplits
ChrisRackauckas Aug 27, 2024
675935d
Update Project.toml
ChrisRackauckas Aug 27, 2024
805b2d2
Merge pull request #2436 from termi-official/do/bdf-dae-jac-test-cove…
ChrisRackauckas Aug 27, 2024
7fb0b8e
Update Project.toml
ChrisRackauckas Aug 27, 2024
31d5f92
Update Project.toml
ChrisRackauckas Aug 27, 2024
0ed9598
add strip_solution tests
jClugstor Aug 27, 2024
0ebeab0
add more tests
jClugstor Aug 27, 2024
f110f66
make sure to extend SciMLBase.has_lazy_interpolation
jClugstor Aug 27, 2024
452ed71
fix namespace for has_lazy_interpolation
jClugstor Aug 27, 2024
c88ac9f
Update Project.toml
ChrisRackauckas Aug 27, 2024
21228a7
should look for LazyInterpolationException
jClugstor Aug 27, 2024
8855fe6
canonical docstrings
ArnoStrouwen Aug 28, 2024
e3af641
Merge pull request #2439 from ArnoStrouwen/docs
ChrisRackauckas Aug 28, 2024
f67add8
partial fix addsteps!
oscardssmith Aug 28, 2024
25a55c6
Update test/interface/ode_strip_test.jl
ChrisRackauckas Aug 28, 2024
13673d3
thought I did this already oops
jClugstor Aug 28, 2024
f0ad493
format ode_strip_test
jClugstor Aug 28, 2024
6171554
add nlsolve as thing to strip in cache
jClugstor Aug 28, 2024
8c2dd01
add test for stripping nlsolver
jClugstor Aug 28, 2024
951df5d
Merge pull request #2437 from jClugstor/test_sol_stripping
ChrisRackauckas Aug 28, 2024
85e5d2e
inplace addsteps
oscardssmith Aug 28, 2024
325cef9
fixed convergance
oscardssmith Aug 28, 2024
d7930c8
fix inplace and tableau format
oscardssmith Aug 29, 2024
6cb8122
fix resize
oscardssmith Aug 29, 2024
2d72836
fix tableaus
oscardssmith Aug 29, 2024
d477d7d
make k generic
oscardssmith Aug 29, 2024
6add4d6
Fixes
ParamThakkar123 Aug 29, 2024
5439e58
Merge branch 'Fixes6' of https://github.com/ParamThakkar123/OrdinaryD…
ParamThakkar123 Aug 29, 2024
e94e560
fixes
ParamThakkar123 Aug 29, 2024
24a12c0
move ks to constcache
oscardssmith Aug 29, 2024
9342c37
du
ParamThakkar123 Aug 30, 2024
90df7ef
Fix
ParamThakkar123 Aug 30, 2024
0a99a8f
Some more fixes
ParamThakkar123 Aug 30, 2024
d76108c
revert incorrect fixes
oscardssmith Aug 30, 2024
e05ccf8
fix oop addsteps
oscardssmith Aug 30, 2024
20e46e7
Improve NULL FSAL and fix du for non-FSAL
ChrisRackauckas Aug 30, 2024
5283d7b
fix composite handling of nothing fsal
ChrisRackauckas Aug 30, 2024
7dc1e51
reshape and _vec appropriately in more places
oscardssmith Aug 30, 2024
bc4e96f
fix assignment
ChrisRackauckas Aug 31, 2024
f9bfffe
print
ChrisRackauckas Aug 31, 2024
f6799e4
fix typo
ChrisRackauckas Aug 31, 2024
241b393
fix not real FSAL
ChrisRackauckas Aug 31, 2024
41db9c2
handle nothing first fsal case
ChrisRackauckas Aug 31, 2024
55a8d67
fix generic rosenbrock
ChrisRackauckas Aug 31, 2024
624a9f9
oh betty
ChrisRackauckas Aug 31, 2024
f0b8470
Merge pull request #2445 from SciML/fsal_du
ChrisRackauckas Aug 31, 2024
bbfdae2
format
ChrisRackauckas Aug 31, 2024
fc1a214
bumps
ChrisRackauckas Aug 31, 2024
2368679
make oop mutation free
oscardssmith Sep 1, 2024
bd9ec06
typos
oscardssmith Sep 1, 2024
5f77fd4
use _reshape
oscardssmith Sep 1, 2024
cbfdf88
use _reshape
oscardssmith Sep 1, 2024
2bc1ff3
use _reshape
oscardssmith Sep 1, 2024
04a7c58
Merge pull request #2446 from oscardssmith/os/fix-oop-matrix-u
ChrisRackauckas Sep 1, 2024
1eef9db
Merge pull request #2430 from ParamThakkar123/Fixes6
ChrisRackauckas Sep 1, 2024
2ee7782
Merge branch 'SciML:master' into upstream
Shreyas-Ekanathan Sep 3, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion Project.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
name = "OrdinaryDiffEq"
uuid = "1dea7af3-3e70-54e6-95c3-0bf5283fa5ed"
authors = ["Chris Rackauckas <[email protected]>", "Yingbo Ma <[email protected]>"]
version = "6.88.1"
version = "6.89.0"

[deps]
ADTypes = "47edcb42-4c32-4615-8424-f2b9edc5f35b"
Expand Down
29 changes: 29 additions & 0 deletions docs/common_first_steps.jl
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
using Markdown
function first_steps(name, solver)
Markdown.parse("""## Installation
To be able to access the solvers in `$name`, you must first install them use the Julia package manager:

```julia
using Pkg
Pkg.add("$name")
```
This will only install the solvers listed at the bottom of this page.
If you want to explore other solvers for your problem,
you will need to install some of the other libraries listed in the navigation bar on the left.

## Example usage

```julia
using $name

function lorenz!(du, u, p, t)
du[1] = 10.0 * (u[2] - u[1])
u[2] = u[1] * (28.0 - u[3]) - u[2]
du[3] = u[1] * u[2] - (8 / 3) * u[3]
end
u0 = [1.0; 0.0; 0.0]
tspan = (0.0, 100.0)
prob = ODEProblem(lorenz!, u0, tspan)
sol = solve(prob, $solver())
```""")
end
95 changes: 64 additions & 31 deletions docs/make.jl
Original file line number Diff line number Diff line change
Expand Up @@ -8,54 +8,87 @@ makedocs(sitename = "OrdinaryDiffEq.jl",
clean = true,
doctest = false,
modules = [OrdinaryDiffEq,
OrdinaryDiffEq.OrdinaryDiffEqAdamsBashforthMoulton,
OrdinaryDiffEq.OrdinaryDiffEqBDF,
OrdinaryDiffEq.OrdinaryDiffEqDefault,
OrdinaryDiffEq.OrdinaryDiffEqExplicitRK,
OrdinaryDiffEq.OrdinaryDiffEqExponentialRK,
OrdinaryDiffEq.OrdinaryDiffEqExtrapolation,
OrdinaryDiffEq.OrdinaryDiffEqStabilizedRK,
OrdinaryDiffEq.OrdinaryDiffEqStabilizedIRK,
OrdinaryDiffEq.OrdinaryDiffEqLowStorageRK,
OrdinaryDiffEq.OrdinaryDiffEqSSPRK,
OrdinaryDiffEq.OrdinaryDiffEqFeagin,
OrdinaryDiffEq.OrdinaryDiffEqSymplecticRK,
OrdinaryDiffEq.OrdinaryDiffEqFIRK,
OrdinaryDiffEq.OrdinaryDiffEqHighOrderRK,
OrdinaryDiffEq.OrdinaryDiffEqIMEXMultistep,
OrdinaryDiffEq.OrdinaryDiffEqLinear,
OrdinaryDiffEq.OrdinaryDiffEqLowOrderRK,
OrdinaryDiffEq.OrdinaryDiffEqLowStorageRK,
OrdinaryDiffEq.OrdinaryDiffEqNordsieck,
OrdinaryDiffEq.OrdinaryDiffEqPDIRK,
OrdinaryDiffEq.OrdinaryDiffEqPRK,
OrdinaryDiffEq.OrdinaryDiffEqQPRK,
OrdinaryDiffEq.OrdinaryDiffEqRKN,
OrdinaryDiffEq.OrdinaryDiffEqVerner,
OrdinaryDiffEq.OrdinaryDiffEqRosenbrock,
OrdinaryDiffEq.OrdinaryDiffEqSDIRK,
OrdinaryDiffEq.OrdinaryDiffEqBDF,
OrdinaryDiffEq.OrdinaryDiffEqDefault,
OrdinaryDiffEq.OrdinaryDiffEqFIRK],
OrdinaryDiffEq.OrdinaryDiffEqSSPRK,
OrdinaryDiffEq.OrdinaryDiffEqStabilizedIRK,
OrdinaryDiffEq.OrdinaryDiffEqStabilizedRK,
OrdinaryDiffEq.OrdinaryDiffEqSymplecticRK,
OrdinaryDiffEq.OrdinaryDiffEqTsit5,
OrdinaryDiffEq.OrdinaryDiffEqVerner
],
warnonly = [:docs_block, :missing_docs, :eval_block],
format = Documenter.HTML(analytics = "UA-90474609-3",
assets = ["assets/favicon.ico"],
canonical = "https://ordinarydiffeq.sciml.ai/stable/"),
canonical = "https://ordinarydiffeq.sciml.ai/stable/",
size_threshold_ignore = [joinpath("semiimplicit", "Rosenbrock.md"),
joinpath("massmatrixdae", "Rosenbrock.md")]),
pages = [
"OrdinaryDiffEq.jl: ODE solvers and utilities" => "index.md",
"Usage" => "usage.md",
"Standard Non-Stiff ODEProblem Solvers" => [
"nonstiff/explicitrk.md",
"nonstiff/lowstorage_ssprk.md",
"nonstiff/explicit_extrapolation.md",
"nonstiff/nonstiff_multistep.md"
"Explicit Solvers" => [
"explicit/Tsit5.md",
"explicit/Verner.md",
"explicit/AdamsBashforthMoulton.md",
"explicit/LowStorageRK.md",
"explicit/SSPRK.md",
"explicit/LowOrderRK.md",
"explicit/HighOrderRK.md",
"explicit/Feagin.md",
"explicit/PRK.md",
"explicit/QPRK.md",
"explicit/Extrapolation.md"
],
"Standard Stiff ODEProblem Solvers" => [
"stiff/firk.md",
"stiff/rosenbrock.md",
"stiff/stabilized_rk.md",
"stiff/sdirk.md",
"stiff/stiff_multistep.md",
"stiff/implicit_extrapolation.md"
"Semi-Implicit Solvers" => [
"semiimplicit/Rosenbrock.md",
"semiimplicit/StabalizedRK.md",
"semiimplicit/ExponentialRK.md"
],
"Second Order and Dynamical ODE Solvers" => [
"dynamical/nystrom.md",
"dynamical/symplectic.md"
"Implicit Solvers" => [
"implicit/SDIRK.md",
"implicit/FIRK.md",
"implicit/BDF.md",
"implicit/Extrapolation.md",
"implicit/PDIRK.md",
"implicit/Nordsieck.md"
],
"IMEX Solvers" => [
"imex/imex_multistep.md",
"imex/imex_sdirk.md"
"imex/IMEXMultistep.md",
"imex/StabalizedIRK.md",
"imex/IMEXBDF.md"
],
"Dynamical ODE Explicit Solvers" => [
"dynamicalodeexplicit/RKN.md",
"dynamicalodeexplicit/SymplecticRK.md"
],
"Semilinear ODE Solvers" => [
"semilinear/exponential_rk.md",
"semilinear/magnus.md"
"semilinear/ExponentialRK.md",
"semilinear/Linear.md"
],
"Mass Matrix DAE Solvers" => [
"massmatrixdae/Rosenbrock.md",
"massmatrixdae/BDF.md"
],
"DAEProblem Solvers" => [
"dae/fully_implicit.md"
"Fully Implicit DAE Solvers" => [
"fullyimplicitdae/BDF.md"
],
"Misc Solvers" => [
"misc.md"
Expand Down
7 changes: 0 additions & 7 deletions docs/src/dae/fully_implicit.md

This file was deleted.

18 changes: 0 additions & 18 deletions docs/src/dynamical/nystrom.md

This file was deleted.

21 changes: 0 additions & 21 deletions docs/src/dynamical/symplectic.md

This file was deleted.

57 changes: 57 additions & 0 deletions docs/src/dynamicalodeexplicit/RKN.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
```@meta
CollapsedDocStrings = true
```

# OrdinaryDiffEqRKN

Second order solvers.

To be able to access the solvers in `OrdinaryDiffEqRKN`, you must first install them use the Julia package manager:

```julia
using Pkg
Pkg.add("OrdinaryDiffEqRKN")
```

This will only install the solvers listed at the bottom of this page.
If you want to explore other solvers for your problem,
you will need to install some of the other libraries listed in the navigation bar on the left.

## Example usage

```julia
using OrdinaryDiffEqOrdinaryDiffEqRKN
function HH_acceleration!(dv, v, u, p, t)
x, y = u
dx, dy = dv
dv[1] = -x - 2x * y
dv[2] = y^2 - y - x^2
end
initial_positions = [0.0, 0.1]
initial_velocities = [0.5, 0.0]
tspan = (0.0, 1.0)
prob = SecondOrderODEProblem(HH_acceleration!, initial_velocities, initial_positions, tspan)
sol = solve(prob, Nystrom4(), dt = 1 / 10)
```

## Full list of solvers

```@docs
IRKN3
IRKN4
Nystrom4
Nystrom4VelocityIndependent
Nystrom5VelocityIndependent
FineRKN4
FineRKN5
DPRKN4
DPRKN5
DPRKN6
DPRKN6FM
DPRKN8
DPRKN12
ERKN4
ERKN5
ERKN7
RKN4
```
64 changes: 64 additions & 0 deletions docs/src/dynamicalodeexplicit/SymplecticRK.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
```@meta
CollapsedDocStrings = true
```

# OrdinaryDiffEqSymplecticRK

A symplectic integrator is an integrator whose solution resides on a symplectic manifold.
Because of discretization error, when it is solving a Hamiltonian system it doesn't get exactly the correct trajectory on the manifold.
Instead, that trajectory itself is perturbed `O(Δtn)` for the order n from the true trajectory.
Then there's a linear drift due to numerical error of this trajectory over time
Normal integrators tend to have a quadratic (or more) drift, and do not have any good global guarantees about this phase space path (just local).
What means is that symplectic integrators tend to capture the long-time patterns better than normal integrators because of this lack of drift and this almost guarantee of periodicity.

## Installation

To be able to access the solvers in `OrdinaryDiffEqSymplecticRK`, you must first install them use the Julia package manager:

```julia
using Pkg
Pkg.add("OrdinaryDiffEqSymplecticRK")
```

This will only install the solvers listed at the bottom of this page.
If you want to explore other solvers for your problem,
you will need to install some of the other libraries listed in the navigation bar on the left.

## Example usage

```julia
using OrdinaryDiffEqSymplecticRK
function HH_acceleration!(dv, v, u, p, t)
x, y = u
dx, dy = dv
dv[1] = -x - 2x * y
dv[2] = y^2 - y - x^2
end
initial_positions = [0.0, 0.1]
initial_velocities = [0.5, 0.0]
tspan = (0.0, 1.0)
prob = SecondOrderODEProblem(HH_acceleration!, initial_velocities, initial_positions, tspan)
sol = solve(prob, KahanLi8(), dt = 1 / 10)
```

## Full list of solvers

```@docs
SymplecticEuler
VelocityVerlet
VerletLeapfrog
PseudoVerletLeapfrog
McAte2
Ruth3
McAte3
CandyRoz4
McAte4
CalvoSanz4
McAte42
McAte5
Yoshida6
KahanLi6
McAte8
KahanLi8
SofSpa10
```
37 changes: 37 additions & 0 deletions docs/src/explicit/AdamsBashforthMoulton.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
```@meta
CollapsedDocStrings = true
```

# OrdinaryDiffEqAdamsBashforthMoulton

Multistep methods, useful for integrating a very expensive to evaluate non-stiff system of differential equations.

```@eval
first_steps = evalfile("./common_first_steps.jl")
first_steps("OrdinaryDiffEqAdamsBashforthMoulton", "VCABM")
```

## Full list of solvers

### Explicit Multistep Methods

```@docs
AB3
AB4
AB5
```

### Predictor-Corrector Methods

```@docs
ABM32
ABM43
ABM54
VCAB3
VCAB4
VCAB5
VCABM3
VCABM4
VCABM5
VCABM
```
24 changes: 24 additions & 0 deletions docs/src/explicit/Extrapolation.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
```@meta
CollapsedDocStrings = true
```

# OrdinaryDiffEqExtrapolation

Solvers based on within method parallelism, allowing multithreading of the solution across
different values of `f`.
The explicit extrapolation solvers are generally outclassed by other explicit methods.
However, some [stiff extrapolation](@ref StiffExtrapolation) methods perform very well if
the problem is sufficiently stiff.

```@eval
first_steps = evalfile("./common_first_steps.jl")
first_steps("OrdinaryDiffEqExtrapolation", "ExtrapolationMidpointDeuflhard")
```

## Full list of solvers

```@docs
AitkenNeville
ExtrapolationMidpointDeuflhard
ExtrapolationMidpointHairerWanner
```
Loading
Loading