org.apache.commons.math3.analysis.solvers

## Enum AllowedSolution

- java.lang.Object
- - java.lang.Enum<AllowedSolution>
  - - org.apache.commons.math3.analysis.solvers.AllowedSolution

- All Implemented Interfaces:
    Serializable, Comparable<AllowedSolution>

      public enum AllowedSolution
      extends Enum<AllowedSolution>

  The kinds of solutions that a `(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.

  Since:
    3.0
  Version:
    $Id: AllowedSolution.java 1364387 2012-07-22 18:14:11Z tn $
  See Also:
    `BracketedUnivariateSolver`

- - ### Enum Constant Summary

    Enum Constants
    Enum Constant and Description
    `ABOVE_SIDE` Only solutions for which values are greater than or equal to zero are acceptable as solutions for root-finding.
    `ANY_SIDE` There are no additional side restriction on the solutions for root-finding.
    `BELOW_SIDE` Only solutions for which values are less than or equal to zero are acceptable as solutions for root-finding.
    `LEFT_SIDE` Only solutions that are less than or equal to the actual root are acceptable as solutions for root-finding.
    `RIGHT_SIDE` Only solutions that are greater than or equal to the actual root are acceptable as solutions for root-finding.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `static AllowedSolution` | `valueOf(String name)` Returns the enum constant of this type with the specified name.
    `static AllowedSolution[]` | `values()` Returns an array containing the constants of this enum type, in the order they are declared.

    - ### Methods inherited from class java.lang.Enum

      `clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf`

    - ### Methods inherited from class java.lang.Object

      `getClass, notify, notifyAll, wait, wait, wait`

- - ### Enum Constant Detail

    - #### ANY_SIDE

          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.

    - #### LEFT_SIDE

          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

          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.

    - #### BELOW_SIDE

          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.

    - #### ABOVE_SIDE

          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.

  - ### Method Detail

    - #### values

          public static AllowedSolution[] values()

      Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:

          for (AllowedSolution c : AllowedSolution.values())
              System.out.println(c);

      Returns:
        an array containing the constants of this enum type, in the order they are declared

    - #### valueOf

          public static AllowedSolution valueOf(String name)

      Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
      Parameters:
        `name` - the name of the enum constant to be returned.
      Returns:
        the enum constant with the specified name
      Throws:
        `IllegalArgumentException` - if this enum type has no constant with the specified name
        `NullPointerException` - if the argument is null

Copyright (c) 2003-2013 Apache Software Foundation