(bracketed univariate real) root-finding algorithm may accept as solutions.
This basically controls whether or not under-approximations and
over-approximations are allowed.
If all solutions are accepted (ANY_SIDE), then the solution
that the root-finding algorithm returns for a given root may be equal to the
actual root, but it may also be an approximation that is slightly smaller
or slightly larger than the actual root. Root-finding algorithms generally
only guarantee that the returned solution is within the requested
tolerances. In certain cases however, in particular for
state events of
ODE solvers, it
may be necessary to guarantee that a solution is returned that lies on a
specific side the solution.
BracketedUnivariateSolver
| Modifier and Type | Field and Description |
|---|---|
| public static final AllowedSolution | ABOVE_SIDE
Only solutions for which values are greater than or equal to zero are acceptable as solutions for root-finding. |
| public static final AllowedSolution | ANY_SIDE
There are no additional side restriction on the solutions for root-finding. |
| public static final AllowedSolution | BELOW_SIDE
Only solutions for which values are less than or equal to zero are acceptable as solutions for root-finding. |
| public static final AllowedSolution | LEFT_SIDE
Only solutions that are less than or equal to the actual root are acceptable as solutions for root-finding. |
| public static final AllowedSolution | RIGHT_SIDE
Only solutions that are greater than or equal to the actual root are acceptable as solutions for root-finding. |
| Access | Constructor and Description |
|---|---|
| private |
| Modifier and Type | Method and Description |
|---|---|
| public static AllowedSolution | |
| public static AllowedSolution[] |
| ABOVE_SIDE | back to summary |
|---|---|
| public static final AllowedSolution ABOVE_SIDE Only solutions for which values are greater than or equal to zero are acceptable as solutions for root-finding. So, if a function f(x) has a root at x = x0, then the root-finding result s must satisfy f(s) >= 0. | |
| ANY_SIDE | back to summary |
|---|---|
| public static final AllowedSolution ANY_SIDE There are no additional side restriction on the solutions for root-finding. That is, both under-approximations and over-approximations are allowed. So, if a function f(x) has a root at x = x0, then the root-finding result s may be smaller than x0, equal to x0, or greater than x0. | |
| BELOW_SIDE | back to summary |
|---|---|
| public static final AllowedSolution BELOW_SIDE Only solutions for which values are less than or equal to zero are acceptable as solutions for root-finding. So, if a function f(x) has a root at x = x0, then the root-finding result s must satisfy f(s) <= 0. | |
| LEFT_SIDE | back to summary |
|---|---|
| public static final AllowedSolution LEFT_SIDE Only solutions that are less than or equal to the actual root are acceptable as solutions for root-finding. In other words, over-approximations are not allowed. So, if a function f(x) has a root at x = x0, then the root-finding result s must satisfy s <= x0. | |
| RIGHT_SIDE | back to summary |
|---|---|
| public static final AllowedSolution RIGHT_SIDE Only solutions that are greater than or equal to the actual root are acceptable as solutions for root-finding. In other words, under-approximations are not allowed. So, if a function f(x) has a root at x = x0, then the root-finding result s must satisfy s >= x0. | |
| AllowedSolution | back to summary |
|---|---|
| private AllowedSolution() | |
| valueOf | back to summary |
|---|---|
| public static AllowedSolution valueOf(String name) | |
| values | back to summary |
|---|---|
| public static AllowedSolution[] values() | |