You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Compatibility with IntervalArithmetic v0.22 (#203)
* Compatibility with IntervalArithmetic v0.22
* Decorated intervals must be used (which is the default Interval in the IntervalArithmetic v0.22)
* The signature of the roots function changed to roots(f::Function, X::Union{Interval, AbstractVector} ; kwargs...), with the following consequences
- Manual derivatives and contractors must now always be passed as keyword arguments. This greatly simplify the internal logic of the roots function.
- No more IntervalBox. Multidimensional problem are specified by returning a vector of intervals, and giving a vector of intervals as initial search region.
* Standard vectors of intervals are supported. They are significantly (3x) time slower for a simple 2D problem than SVector, but more convenient.
* Features of the packages that were undocumented are now unsupported (e.g. Slopes and quadratic equations). If you were using them, please open an issue.
Copy file name to clipboardExpand all lines: NEWS.md
+12Lines changed: 12 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,5 +1,17 @@
1
1
# Updates to `IntervalRootFinding.jl`
2
2
3
+
## v0.6
4
+
5
+
Compatibility with IntervalArithmetic v0.22, which fundamentally changes the package.
6
+
- Decorated intervals must be used (which is the default `Interval` in the latest releases of IntervalArithmetic)
7
+
- The signature of the `roots` function changed to `roots(f::Function, X::Union{Interval, AbstractVector} ; kwargs...)`, with the following consequences
8
+
- Manual derivatives and contractors must now always be passed as keyword arguments. This greatly simplify the internal logic of the `roots` function.
9
+
- No more `IntervalBox`. Multidimensional problem are specified by returning a vector of intervals, and giving a vector of intervals as initial search region.
10
+
- Normal vectors of intervals are supported. They are significantly (3x) time slower for a simple 2D problem than SVector, but more convenient.
11
+
- Features of the packages outside the `roots` function are unsupported for the time being (e.g. `Slopes` and quadratic equations). If you need them, please open an issue.
12
+
-`roots` works with `@exact`.
13
+
14
+
3
15
## v0.2
4
16
5
17
The package has been completely rewritten for v0.2.
Copy file name to clipboardExpand all lines: docs/src/index.md
+54-33Lines changed: 54 additions & 33 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -10,19 +10,21 @@ To do so, it uses methods from interval analysis, using interval arithmetic from
10
10
11
11
## Basic 1D example
12
12
13
-
To begin, we need a standard Julia function and an interval in which to search roots of that function. Intervals use the `Interval` type provided by the `IntervalArithmetic.jl` package and are generally constructed using the `..` syntax, `a..b` representing the closed interval $[a, b]$.
13
+
To begin, we need a standard Julia function and an interval in which to search roots of that function. Intervals use the `Interval` type provided by the `IntervalArithmetic.jl` package
14
+
Intervals are generally constructed using the `..` syntax (from the `IntervalArithmetic.Symbols` submodule),
15
+
`a..b` representing the closed interval $[a, b]$.
14
16
15
17
When provided with this information, the `roots` function will return a vector of all roots of the function in the given interval.
The roots are returned as `Root` objects, containing an interval and the status of that interval, represented as a `Symbol`. There are two possible types of root status, as shown in the example:
Thus the system admits four unique roots in the box $[-5, 5]^3$. We have used the unicode character `×` (typed as `\times<tab>`) to compose several intervals into a multidimensional box.
86
+
Thus, the system admits four unique roots in the box $[-5, 5]^3$.
87
+
88
+
Moreover, the package is compatible with `StaticArrays.jl`.
89
+
Usage of static arrays is recommended to increase performance.
0 commit comments