next up previous contents
Next: Example Up: Finding bounds on the Previous: Implementation   Contents

Global implementation

The above algorithms have been regrouped in two procedures, one for determining the bound on the positive roots, the other for the negative roots:
 
int Global_Positive_Bound_Interval(int Degree,VECTOR &Coeff,INTERVAL &Bound);
int Global_Negative_Bound_Interval(int Degree,VECTOR &Coeff,INTERVAL &Bound);
with: For the positive root if Bound=[a,b] and b=0, then there is no positive root. Similarly for the negative root is a=0, then there is no negative root. The procedure returns 0 in case of failure which correspond to the failure of all the previous algorithms, 1 in case of success. Note that for Laguerre and Newton method the maximum number of iteration is defined by the global variable Max_Iter_Laguerre_Interval fixed by default to 1000. The step size is defined as: Similar procedure exist for interval polynomial:
 
int Global_Positive_Bound_Interval(int Degree,INTERVAL_VECTOR &Coeff,
                           INTERVAL &Lower,INTERVAL &Upper);
int Global_Negative_Bound_Interval(int Degree,INTERVAL_VECTOR &Coeff,
                           INTERVAL &Lower,INTERVAL &Upper);
where Lower is an interval on the lower bound: for positive roots and if Lower=[a,b] then the roots of any polynomial in the set is greater than a while some polynomial have root greater than b. Conversely if Upper=[a,b] the roots of any polynomial in the set is lower than b while some polynomial have root lower than a.

Both procedures for real roots have been regrouped in

 
void ALIAS_Find_Bound_Polynom(int Degree,
         INTERVAL_VECTOR (* TheCoeff)(INTERVAL_VECTOR &), 
         INTERVAL_VECTOR &PALL,INTERVAL &Space, INTERVAL &Bound)
where



Subsections
next up previous contents
Next: Example Up: Finding bounds on the Previous: Implementation   Contents
Jean-Pierre Merlet 2012-12-20