|
| | Sequence () |
| | Class constructor for the Sturm sequence.
|
| | Sequence (const Poly< Real > &p) |
| | Class constructor for the Sturm sequence given a polynomial.
|
| Real | a () const |
| | Get the lower bound of the interval containing the roots.
|
| Real | b () const |
| | Get the upper bound of the interval containing the roots.
|
| void | build (const Poly< Real > &p) |
| | Given the polynomial \( p(x) \) build its Sturm sequence.
|
| Integer | length () const |
| | Get the length of the stored Sturm sequence.
|
| const Poly< Real > & | get (Integer i) const |
| | Get the \( i \)-th polynomial of the stored Sturm sequence.
|
| Integer | sign_variations (Real x, bool &on_root) const |
| Integer | separate_roots (Real a_in, Real b_in) |
| | Compute the subintervals containing a single root.
|
| Integer | separate_roots () |
| | Compute all the subintervals containing a single root in \( [a,
b] \).
|
| Integer | roots_number () const |
| | Get the number of roots found.
|
| const Interval & | interval (Integer i) const |
| template<typename SolveFunction> |
| Vector | refine_roots (SolveFunction &&solve_function, bool verbose=false) |
| | Compute the roots in the intervals after the separation.
|
template<typename Real>
class Sturm::Sequence< Real >
This class implements the Sturm sequence for a given polynomial \( p(x)
\). Such sequence is a sequence of polynomials \( p_0(x), p_1(x), \ldots,
p_n(x) \) and allows to compute the number roots in a given interval \([a, b] \).
- Template Parameters
-