isolate the real roots of a univariate polynomial or polynomial system - Maple Help

Online Help

All Products    Maple    MapleSim


Home : Support : Online Help : Mathematics : Factorization and Solving Equations : Roots : RootFinding : RootFinding/Isolate

RootFinding[Isolate] - isolate the real roots of a univariate polynomial or polynomial system

Calling Sequence

Isolate(f)

Isolate(J, X)

Isolate(J, X, digits=d, constraints=cons, output=outpt, method=mthd, maxroots=mxrts)

Parameters

f

-

univariate polynomial with real coefficients

J

-

set or list of polynomials, or a PolynomialIdeal

X

-

(optional) list of variables

d

-

(optional) number of significant digits

cons

-

(optional) list of polynomials with integer coefficients

outpt

-

(optional) type of output: numeric, midpoint, or interval

mthd

-

(optional) name of algorithm to use: RS or RC. Default is RS.

mxrts

-

(optional) number of roots to be returned.

Description

• 

The RootFinding[Isolate] command isolates the real roots of univariate polynomials and polynomial systems with a finite number of solutions. By default it computes isolating intervals for each of the roots and numerically evaluates the midpoints of those intervals at the current setting of Digits. All significant digits returned by the program are correct, and unlike purely numerical methods no roots are ever lost, although repeated roots are discarded. This command does not support symbolic or complex number coefficients.

• 

The system must have a finite number of complex solutions or else Isolate will return an error.

• 

This function is part of the RootFinding package, and can be used in the form Isolate(..) only after executing the command with(RootFinding).  However, it can always be accessed through the long form of the command using RootFinding[Isolate](..).

Examples

withRootFinding:

f:=x43x2+2

f:=x43x2+2

(1)

Isolatef

x=1.414213562,x=1.,x=1.,x=1.414213562

(2)

factorf

x1x+1x22

(3)

Isolatef,digits=30

x=1.41421356237309504880168872421,x=1.,x=1.,x=1.41421356237309504880168872421

(4)

A multivariate system.

F:=x22,y1

F:=x22,y1

(5)

IsolateF,x,y

x=1.414213562,y=1.000000000,x=1.414213562,y=1.000000000

(6)

R:=IsolateF,x,y,output='midpoint'

R:=x=5217527130133116624336893488147419103232,y=7378697629483820646573786976294838206464,x=5217527130133116624336893488147419103232,y=7378697629483820646573786976294838206464

(7)

evalfR

x=1.414213562,y=1.000000000,x=1.414213562,y=1.000000000

(8)

R:=IsolateF,x,y,output='interval',method='RC'

R:=x=759250125536870912,2429600399917179869184,y=1,1,x=2429600399917179869184,759250125536870912,y=1,1

(9)

evalfR

x=1.414213562,1.414213562,y=1.,1.,x=1.414213562,1.414213562,y=1.,1.

(10)

Specify the maximum number of roots returned by using the maxroots option.

R:=Isolatex22x27,x

R:=x=2.645751311,x=1.414213562,x=1.414213562,x=2.645751311

(11)

R:=Isolatex22x27,x,maxroots=1

R:=x=1.414213562

(12)

An example with ill-conditioned constraints.

w:=expandmulxi,i=1..10:

Slightly shift a coefficient:

f:=w+x7:

R,C:=Isolatef,x,constraints=w,digits=10:

C

x1055x9+1320x818150x7+157773x6902055x5+3416930x48409500x3+12753576x210628640x+3628800=1.000019291,x1055x9+1320x818150x7+157773x6902055x5+3416930x48409500x3+12753576x210628640x+3628800=126.6073008

(13)

This agrees with higher precision results:

Isolatef,x,constraints=w,digits=20

x=1.0000027558065671334,x=1.9968767019889278008,x1055x9+1320x818150x7+157773x6902055x5+3416930x48409500x3+12753576x210628640x+3628800=1.0000192908054545330,x1055x9+1320x818150x7+157773x6902055x5+3416930x48409500x3+12753576x210628640x+3628800=126.60730080931688758

(14)

Compare this result to direct evaluation:

map2evalf20@eval,w,R

1.000,126.605

(15)

A harder multivariate system with infinitely many complex solutions. The input is given as a PolynomialIdeal so that the Groebner basis computed by Isolate is remembered.

withPolynomialIdeals:

J:=53yz28yx2+5y2x2z+13y4z,83y2z+9x2z260y2x2z83y4z,62xy+37y3+5zx3+96y4z:

IsolateJ,x,y,z

Error, (in RootFinding:-Isolate) the system has an infinite number of solutions

The basis is remembered:

IdealInfo:-KnownGroebnerBasesJ

tdegz,x,y

(16)

J:=53yz28yx2+5y2x2z+13y4z,83y2z+9x2z260y2x2z83y4z,62xy+37y3+5zx3+96y4z:

IsolateJ,x,y,z,method='RC'

Error, (in RootFinding:-Isolate) the system has an infinite number of solutions

See Also

evalf, fsolve, PolynomialIdeals, RegularChains, root, RootFinding

References

  

Rouillier, F. "Solving zero-dimensional systems through the rational univariate representation." Journal of Applicable Algebra in Engineering, Communication, and Computing, Vol. 9, No. 5 (1999): 433-461.

  

Rouillier, F. and Zimmermann, P. "Efficient isolation of polynomial real roots." Journal of Computational and Applied Mathematics, Vol. 162 No. 1 (2003):33-50.

  

Aubry, P., Lazard, D., and Moreno Maza, M. "On the theories of triangular sets." J. of Symb. Comput., Vol. 28, No. 1-2 (1999): 105-124.  

  

Xia, B. and Yang, L. "An Algorithm for Isolating the Real Solutions of Semi-algebraic Systems." J. of Symb. Comput. , Vol. 34, No. 5 (2002): 461-477.


Download Help Document

Was this information helpful?



Please add your Comment (Optional)
E-mail Address (Optional)
What is ? This question helps us to combat spam