Items tagged with roots roots Tagged Items Feed

Here is a serious achievement of the Roots command:



plot(2^x+3^x+6^x-x^2, x = -6 .. 2, gridlines = false);


The solve command also does the job here:

sol := solve(2^x+3^x+6^x-x^2);



The RealDomain:-solve command fails here.

I wonder how Maple solves it. It would be kind of Maple developers and experts to explain that.

PS. I tried printlevel:=10, but understood the output a little.



Please help, here is my code:


local i,g,B,n,L,tk;

if B<1 then g:=numer(g);fi;
while has(L,0) do
if L=[] then RETURN([]);fi;
L:=map(proc(x,y) [op(1,x)*y,op(2,x)*y];end,L,B);


I dont know why i cant run this code, it always report: 

Error, (in findproot) improper op or subscript selector

option hfloat;
local a;
if nops(a)>=1 then seq([v,a[i]],i=1..nops(a));
end if;
end proc:

The final figure is different between maple12 and maple17.

On 17, unwanted points apprear.

is it a bug?

Hi all, I want to determine the roots of this figure that attached here. But the function has 5 parameters so the code doesn't work for it! Help me.

I have another question: The code that attached, determine the roots on horizontal axis, how could I find the values of root on vertical axis?In this figure I want to know the value of F(0) that cut the vertical axis?


Dear all,

I want to know how can I solve a fourth or higher order equation to find out its roots, actually coefficients of each power terms itself are functins of other parameters not constant.

Please reply as soon as possible, as this is very urgent,


I have a characteristic equation. some times It has polar roots . sometimes It has real roots and sometimes both of them.

I want to extract real roots and extract polar roots if they are.

for instance:



I want to know how can I use if in this part ?

Hi guys,

I am trying to solve for the roots in a polynomial of infinite order. The idea is simply to approximate the infinite polynomial by a high order Taylor expansion, solve for the roots in this polynomial (both real and complex roots exists) and use these roots as initial guesses for finding the authentic roots of the infinite polynomial in this specific range.

I have tried to use the evalf(RootOf(PolyInfinite=0,x,Re + Im)), however the output from RootOf seems to converge to the same 2 or 3 roots almost independent of the initial guess. Is there specific options of this RootOf function that can stabilize the solution or another/better command to use?

On the other hand i could solve this by simply minimizing a least sqaure, however i have not found any optimization solver which supports solutions in the complex domain?

I sincerely hope that you are able to help me.

Kind regards


To motivate some ideas in my research, I've been looking at the expected number of real roots of random polynomials (and their derivatives).  In doing so I have noticed an issue/bug with fsolve and RootFinding[Isolate].  One of the polynomials I came upon was

f(x) = -32829/50000-(9277/50000)*x-(37251/20000)*x^2-(6101/6250)*x^3-(47777/20000)*x^4+(291213/50000)*x^5.

We know that f(x) has at least 1 real root and, in fact, graphing shows that f(x) has exactly 1 real root (~1.018).  However, fsolve(f) and Isolate(f) both return no real roots.  On the other hand, Isolate(f,method=RC) correctly returns the root near 1.018.  I know that fsolve's details page says "It may not return all roots for exceptionally ill-conditioned polynomials", though this system does not seem especially ill-conditioned.  Moreover, Isolate's help page says confidently "All significant digits returned by the program are correct, and unlike purely numerical methods no roots are ever lost, although repeated roots are discarded" which is clearly not the case here.  It also seems interesting that the RealSolving package used by Isolate(f,method=RS) (default method) misses the root while the RegularChains package used by Isolate(f,method=RC) correctly finds the root.

 All-in-all, I am not sure what to make of this.  Is this an issue which has been fixed in more recent incarnations of fsolve or Isolate?  Is this a persistent problem?  Is there a theoretical reason why the root is being missed, particularly for Isolate?

Any help or insight would be greatly appreciated.

Hello everybody,

I want to find all of roots of the complex variables functions in two ways.

(1) find the value which can make the function equals 0

(2) find the real value and imaginary value which make real part and imaginary part of function equal 0

(I know answers of these two case is not equal completely.)


The function is a non-linear function, including sin, cos and Bessel function, such as:


And, I used Analytic and fsolve to do case (1) and (2), but failure. The follow result is how I tried to find the real value answer:


It seems that both of two commands can only find some of roots. 

How to find all of roots of these cases? The related .mw file is attached.


Thanks a lot.


Can someone please help me to find first 5 coplex valued roots of the followind expression:

Frequency_Equation := -(2.220315292*10^21*I)*csgn(omega)*omega^4*sin(1.236117731*(omega^2)^(1/4))*cosh(1.236117731*(omega^2)^(1/4))-2.354665581*10^22*csgn(omega)*omega^3*sin(1.236117731*(omega^2)^(1/4))*cosh(1.236117731*(omega^2)^(1/4))-2.354665581*10^22*sinh(1.236117731*(omega^2)^(1/4))*csgn(omega)*omega^3*cos(1.236117731*(omega^2)^(1/4))-6.415296703*10^25*(omega^2)^(3/4)*cos(1.236117731*(omega^2)^(1/4))*cosh(1.236117731*(omega^2)^(1/4))-2.177438228*10^22*cosh(1.236117731*(omega^2)^(1/4))*(omega^2)^(3/4)*omega^2*cos(1.236117731*(omega^2)^(1/4))-5.946035576*10^21*omega^2*(omega^2)^(3/4)-6.415296702*10^25*(omega^2)^(3/4)-(3.560760000*10^24*I)*sinh(1.236117731*(omega^2)^(1/4))*omega^3*cos(1.236117731*(omega^2)^(1/4))+(3.560760000*10^24*I)*cosh(1.236117731*(omega^2)^(1/4))*omega^3*sin(1.236117731*(omega^2)^(1/4))-(2.613877239*10^21*I)*cosh(1.236117731*(omega^2)^(1/4))*(omega^2)^(3/4)*omega^3*cos(1.236117731*(omega^2)^(1/4))-(6.049258752*10^24*I)*(omega^2)^(3/4)*omega-1.907153069*10^25*sinh(1.236117731*(omega^2)^(1/4))*omega^2*sin(1.236117731*(omega^2)^(1/4))*(omega^2)^(1/4)-(2.220315292*10^21*I)*sinh(1.236117731*(omega^2)^(1/4))*csgn(omega)*omega^4*cos(1.236117731*(omega^2)^(1/4))-(6.049258753*10^24*I)*(omega^2)^(3/4)*cos(1.236117731*(omega^2)^(1/4))*cosh(1.236117731*(omega^2)^(1/4))*omega-3.500000000*10^21*cosh(1.236117731*(omega^2)^(1/4))*omega^4*sin(1.236117731*(omega^2)^(1/4))+3.500000000*10^21*sinh(1.236117731*(omega^2)^(1/4))*omega^4*cos(1.236117731*(omega^2)^(1/4))-2.156220000*10^25*sinh(1.236117731*(omega^2)^(1/4))*omega^2*cos(1.236117731*(omega^2)^(1/4))+2.156220000*10^25*cosh(1.236117731*(omega^2)^(1/4))*omega^2*sin(1.236117731*(omega^2)^(1/4));

I am trying to produce a worksheet that will give me the two roots of a quadratic equation.

This is what I have:

Maple Worksheet


As you can see, It's not giving me the right answers. What do I do?





Greetings everyone. I tried to get the roots of this polynomial by using allvalues command. But I got the roots in indeces instead of the value of the roots.

what should i do?



I wish to be able to calculate the roots of the function f(p) by using the roots of the function h(p) and applying the bisection method due to the fact that the roots of h(p) bracket the roots of f(p) as can be seen in the graph below. I have done this before for another example when h:=J0(p); and hence i could use The commands BesselJZeros(0,n)/BesselJZzeros(0,n+1) to find the roots. So my problem arises with the finding the roots of h(p) and how to insert them into my bisection loop(underlined below).

Any advice would amazing. Many thanks


Digits := 30:
with (plots):

#Define given parameters

R:=1: #external radius of particles, cm

d:=10^(-3): #diffusivity cm^2 per second

alpha:= 1: #fractional void volume

c0:=10^(-6): #concentartion of soltion in void volume of solid initially, moles per liter

C0:=0: #concentration of main body of solution initially, moles per liter

k1:=0.5: #constant in adsorption isotherm (ka)

k2:=0.75: #constant in adsorption isotherm (kd)

k:=2.5: #equilbrium constant for adsorption kinetics

n0:=(k1/k2)*c0:#initial amount absrobed on solid, moles per liter

V:=0.1: #volume of external solution, liters

W:=0.1: #weight of absorbant, grams

rho:=2.0: #solid aparrant density, g/cc












f:=p->(BesselJ(0,R*sqrt(-delta*p))*k*p-(R*sqrt(-delta*p))*BesselJ(1,R*sqrt(-delta*p))*(d*p/R + 2*beta*k/(R^2)));

proc (p) options operator, arrow; BesselJ(0, R*sqrt(-delta*p))*k*p-R*sqrt(-delta*p)*BesselJ(1, R*sqrt(-delta*p))*(d*p/R+2*beta*k/R^2) end proc




proc (p) options operator, arrow; BesselJ(0, R*sqrt(-delta*p)) end proc





rts:= Array(1..points):
for n from 1 by +1 to points do
pl:=evalf(#**first root of h**);
pu:=evalf(#**second root of h, i.e n+1 root**);
pe:= (pl+pu)/2;
while abs(f(pe))>10^(-6) do
if f(pu)*f(pe) <0 then
elif f(pl)*f(pe)<0 then
end if;










where K>=0, S (-15, 15) and alpha (-15, 15). While plotting for small values of S and alpha, I get complex roots.

  • How we can avoid the complex roots?
  • Is it possible to impose a condition in plotting? 




  • How to single out the range of S and alpha for which we have complex roots?



Hi there,
i am currently using maple5 as a new student in mathematics in the university. I am trying to know how to use maple5 to programme finding roots of quadratic equation. can anyone point me in the right direction?? Perhaps a book or a website on maple5. I know its old version but that's what we are allowed to use in my university and i'm new to this. Thanks

1 2 3 Page 1 of 3