C
- coefficient type.public class ComplexRootsSturm<C extends RingElem<C> & Rational> extends ComplexRootsAbstract<C>
engine
Constructor and Description |
---|
ComplexRootsSturm(RingFactory<Complex<C>> cf)
Constructor.
|
Modifier and Type | Method and Description |
---|---|
long |
complexRootCount(Rectangle<C> rect,
GenPolynomial<Complex<C>> a)
Complex root count of complex polynomial on rectangle.
|
java.util.List<Rectangle<C>> |
complexRoots(Rectangle<C> rect,
GenPolynomial<Complex<C>> a)
List of complex roots of complex polynomial a on rectangle.
|
Rectangle<C> |
excludeZero(Rectangle<C> rect,
GenPolynomial<Complex<C>> f)
Exclude zero.
|
long |
indexOfCauchy(C a,
C b,
GenPolynomial<C> f,
GenPolynomial<C> g)
Cauchy index of rational function f/g on interval.
|
long[] |
indexOfRouth(C a,
C b,
GenPolynomial<C> f,
GenPolynomial<C> g)
Routh index of complex function f + i g on interval.
|
Rectangle<C> |
invariantRectangle(Rectangle<C> rect,
GenPolynomial<Complex<C>> f,
GenPolynomial<Complex<C>> g)
Invariant rectangle for algebraic number.
|
java.util.List<GenPolynomial<C>> |
sturmSequence(GenPolynomial<C> f,
GenPolynomial<C> g)
Sturm sequence.
|
long |
windingNumber(Rectangle<C> rect,
GenPolynomial<Complex<C>> A)
Winding number of complex function A on rectangle.
|
approximateRoot, approximateRoots, complexMagnitude, complexRectangleMagnitude, complexRootRefinement, complexRoots, complexRoots, copyOfComplex, invariantMagnitudeRectangle, magnitudeBound, rootBound, toDecimal
public ComplexRootsSturm(RingFactory<Complex<C>> cf)
cf
- coefficient factory.public long indexOfCauchy(C a, C b, GenPolynomial<C> f, GenPolynomial<C> g)
a
- interval bound for I = [a,b].b
- interval bound for I = [a,b].f
- univariate polynomial.g
- univariate polynomial.public long[] indexOfRouth(C a, C b, GenPolynomial<C> f, GenPolynomial<C> g)
a
- interval bound for I = [a,b].b
- interval bound for I = [a,b].f
- univariate polynomial.g
- univariate polynomial != 0.public java.util.List<GenPolynomial<C>> sturmSequence(GenPolynomial<C> f, GenPolynomial<C> g)
f
- univariate polynomial.g
- univariate polynomial.public long complexRootCount(Rectangle<C> rect, GenPolynomial<Complex<C>> a) throws InvalidBoundaryException
complexRootCount
in interface ComplexRoots<C extends RingElem<C> & Rational>
complexRootCount
in class ComplexRootsAbstract<C extends RingElem<C> & Rational>
rect
- rectangle.a
- univariate complex polynomial.InvalidBoundaryException
public long windingNumber(Rectangle<C> rect, GenPolynomial<Complex<C>> A) throws InvalidBoundaryException
rect
- rectangle.A
- univariate complex polynomial.InvalidBoundaryException
public java.util.List<Rectangle<C>> complexRoots(Rectangle<C> rect, GenPolynomial<Complex<C>> a) throws InvalidBoundaryException
complexRoots
in interface ComplexRoots<C extends RingElem<C> & Rational>
complexRoots
in class ComplexRootsAbstract<C extends RingElem<C> & Rational>
rect
- rectangle.a
- univariate squarefree complex polynomial.InvalidBoundaryException
public Rectangle<C> invariantRectangle(Rectangle<C> rect, GenPolynomial<Complex<C>> f, GenPolynomial<Complex<C>> g) throws InvalidBoundaryException
invariantRectangle
in class ComplexRootsAbstract<C extends RingElem<C> & Rational>
rect
- root isolating rectangle for f which contains exactly one
root.f
- univariate polynomial, non-zero.g
- univariate polynomial, gcd(f,g) == 1.InvalidBoundaryException
public Rectangle<C> excludeZero(Rectangle<C> rect, GenPolynomial<Complex<C>> f) throws InvalidBoundaryException
rect
- root isolating rectangle for f which contains exactly one
root.InvalidBoundaryException