- Type Parameters:
C- coefficient type.
- All Superinterfaces:
Serializable
- All Known Implementing Classes:
RealRootsAbstract, RealRootsSturm
Real roots interface.
-
Method Summary
Modifier and TypeMethodDescriptionrealMagnitude(Interval<C> iv, GenPolynomial<C> f, GenPolynomial<C> g, BigRational eps) Real algebraic number magnitude.Real root bound.longrealRootCount(Interval<C> iv, GenPolynomial<C> f) Number of real roots in interval.realRoots(GenPolynomial<C> f) Isolating intervals for the real roots.realRoots(GenPolynomial<C> f, C eps) Isolating intervals for the real roots.realRoots(GenPolynomial<C> f, BigRational eps) Isolating intervals for the real roots.intrealSign(Interval<C> iv, GenPolynomial<C> f, GenPolynomial<C> g) Real algebraic number sign.refineInterval(Interval<C> iv, GenPolynomial<C> f, BigRational eps) Refine interval.refineIntervals(List<Interval<C>> V, GenPolynomial<C> f, BigRational eps) Refine intervals.booleansignChange(Interval<C> iv, GenPolynomial<C> f) Sign changes on interval bounds.
-
Method Details
-
realRootBound
Real root bound. With f(M) * f(-M) != 0.- Parameters:
f- univariate polynomial.- Returns:
- M such that -M < root(f) > M.
-
realRoots
Isolating intervals for the real roots.- Parameters:
f- univariate polynomial.- Returns:
- a list of isolating intervals for the real roots of f.
-
realRoots
-
realRoots
Isolating intervals for the real roots.- Parameters:
f- univariate polynomial.eps- requested intervals length.- Returns:
- a list of isolating intervals v such that |v| < eps.
-
signChange
Sign changes on interval bounds.- Parameters:
iv- root isolating interval with f(left) * f(right) != 0.f- univariate polynomial.- Returns:
- true if f(left) * f(right) < 0, else false
-
realRootCount
Number of real roots in interval.- Parameters:
iv- interval with f(left) * f(right) != 0.f- univariate polynomial.- Returns:
- number of real roots of f in I.
-
refineInterval
Refine interval.- Parameters:
iv- root isolating interval with f(left) * f(right) < 0.f- univariate polynomial, non-zero.eps- requested interval length.- Returns:
- a new interval v such that |v| < eps.
-
refineIntervals
Refine intervals.- Parameters:
V- list of isolating intervals with f(left) * f(right) < 0.f- univariate polynomial, non-zero.eps- requested intervals length.- Returns:
- a list of new intervals v such that |v| < eps.
-
realSign
Real algebraic number sign.- Parameters:
iv- root isolating interval for f, with f(left) * f(right) < 0.f- univariate polynomial, non-zero.g- univariate polynomial, gcd(f,g) == 1.- Returns:
- sign(g(v)), with v a new interval contained in iv such that g(v) != 0.
-
realMagnitude
Real algebraic number magnitude.- Parameters:
iv- root isolating interval for f, with f(left) * f(right) < 0.f- univariate polynomial, non-zero.g- univariate polynomial, gcd(f,g) == 1.eps- length limit for interval length.- Returns:
- g(iv).
-