-
-
Notifications
You must be signed in to change notification settings - Fork 42
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #110 from SciML/docs
Add steady state docs and MINPACK
- Loading branch information
Showing
17 changed files
with
303 additions
and
112 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
# MINPACK.jl | ||
|
||
This is a wrapper package for importing solvers from Sundials into the SciML interface. | ||
Note that these solvers do not come by default, and thus one needs to install | ||
the package before using these solvers: | ||
|
||
```julia | ||
]add NonlinearSolveMINPACK | ||
using NonlinearSolveMINPACK | ||
``` | ||
|
||
These methods can be used independently of the rest of NonlinearSolve.jl | ||
|
||
## Solver API | ||
|
||
```@docs | ||
CMINPACK | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
# NLsolve.jl | ||
|
||
This is a wrapper package for importing solvers from NLsolve.jl into the SciML interface. | ||
Note that these solvers do not come by default, and thus one needs to install | ||
the package before using these solvers: | ||
|
||
```julia | ||
]add SciMLNLSolve | ||
using SciMLNLSolve | ||
``` | ||
|
||
## Solver API | ||
|
||
```@docs | ||
NLsolveJL | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
# NonlinearSolve.jl Native Solvers | ||
|
||
These are the native solvers of NonlinearSolve.jl. | ||
|
||
## Solver API | ||
|
||
```@docs | ||
NewtonRaphson | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
# SimpleNonlinearSolve.jl | ||
|
||
These methods can be used independently of the rest of NonlinearSolve.jl | ||
|
||
## Solver API | ||
|
||
```@docs | ||
Bisection | ||
Falsi | ||
SimpleNewtonRaphson | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
# SteadyStateDiffEq.jl | ||
|
||
This is a wrapper package for using ODE solvers from | ||
[DifferentialEquations.jl](https://docs.sciml.ai/DiffEqDocs/stable/) into the SciML interface. | ||
Note that these solvers do not come by default, and thus one needs to install | ||
the package before using these solvers: | ||
|
||
```julia | ||
]add SteadyStateDiffEq | ||
using SteadyStateDiffEq | ||
``` | ||
|
||
These methods can be used independently of the rest of NonlinearSolve.jl | ||
|
||
## Solver API | ||
|
||
```@docs | ||
DynamicSS | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
## Sundials.jl | ||
|
||
This is a wrapper package for importing solvers from Sundials into the SciML interface. | ||
Note that these solvers do not come by default, and thus one needs to install | ||
the package before using these solvers: | ||
|
||
```julia | ||
]add Sundials | ||
using Sundials | ||
``` | ||
|
||
These methods can be used independently of the rest of NonlinearSolve.jl | ||
|
||
## Solver API | ||
|
||
```@docs | ||
KINSOL | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,32 +1,46 @@ | ||
# Nonlinear Problems | ||
|
||
## The Two Types of Nonlinear Problems | ||
## The Three Types of Nonlinear Problems | ||
|
||
NonlinearSolve.jl tackles two related types of nonlinear systems: | ||
|
||
1. Interval rootfinding problems. I.e., find the ``t in [t_0, t_f]`` such that `f(t) = 0`. | ||
2. Systems of nonlinear equations, i.e. find the `u` such that `f(u) = 0`. | ||
3. Steady state problems, i.e. find the `u` such that `u' = f(u,t)` has reached steady state, | ||
i.e. `0 = f(u, ∞)`. | ||
|
||
The former is for solving scalar rootfinding problems, i.e. finding a single number, and | ||
The first is for solving scalar rootfinding problems, i.e. finding a single number, and | ||
requires that a bracketing interval is known. For a bracketing interval, one must have that | ||
the sign of `f(t_0)` is opposite the sign of `f(t_f)`, thus guaranteeing a root in the | ||
interval. | ||
|
||
The latter type of nonlinear system can be multidimensional and thus no ordering nor | ||
boundaries are assumed to be known. For a system of nonlinear equations, `f` can return | ||
an array and the solver seeks to find the value of `u` for which all outputs of `f` are | ||
simultaniously zero. | ||
|
||
!!! note | ||
|
||
Interval rootfinding problems allow for `f` to return an array, in which case the interval | ||
rootfinding problem is interpreted as finding the first `t` such that any of the components | ||
of the array hit zero. | ||
|
||
The second type of nonlinear system can be multidimensional and thus no ordering nor | ||
boundaries are assumed to be known. For a system of nonlinear equations, `f` can return | ||
an array and the solver seeks to find the value of `u` for which all outputs of `f` are | ||
simultaniously zero. | ||
|
||
The last type if equivalent to a nonlinear system but with the extra interpretion of | ||
having a potentially preferred unique root. That is, when there are multiple `u` such | ||
that `f(u) = 0`, the `NonlinearProblem` does not have a preferred solution, while for the | ||
`SteadyStateProblem` the preferred solution is the `u(∞)` that would arise from solving the | ||
ODE `u' = f(u,t)`. | ||
|
||
!!! warn | ||
|
||
Most solvers for `SteadyStateProblem` do not guarentee the preferred solution and | ||
instead will solve for some `u` in the set of solutions. The documentation of the | ||
nonlinear solvers will note if they return the preferred solution. | ||
|
||
## Problem Construction Details | ||
|
||
```@docs | ||
SciMLBase.IntervalNonlinearProblem | ||
SciMLBase.NonlinearProblem | ||
SciMLBase.SteadyStateProblem | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
# Nonlinear Solutions | ||
|
||
```@docs | ||
SciMLBase.NonlinearSolution | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.