MaplePrimes Questions


This is the Maple code


simplify(result,size) ;

Any suggestions?



How to find a rational function with give horizontal asymptotes: y=0.7, y=-0.7 and vertical asymptotes: x=0.001, x=-0.001?


I have a list with a large number of elements and I need to partition it in chunks of a specific size.  Here is my attempt

listpart := proc(cond::list,nchunk::nonnegint:=1000)
if numelems(cond) < nchunk then
end if:
end proc:

It does not run as fast as I thought.  I am not even sure if Threads:-Seq could be used in this case.  Please tell me what I am doing wrong and how I can modify the code to get a faster response.  

Many thanks



Hello all

could anyone tell how to solve following nonliner equations numerically.

f '''' - c1(g'') + R(f ' f '' - f f ''' )=0

g'' + c2(f '' -2g) -c3(f g' - f ' g)=0

f ' (-1)=0,   f ' (1)=0,   f(-1)=1-A, F(1) =1, g(-1)=0, g(1)=0

c1=3.2, c2=3.3, c3=3.4, R= -10 and A=1.6 are constants.   

please help to find solution  numerically and how to plot. 

Thanks in advence



I am trying to calculate an integral involving dirac delta as given below


However, Maple returns the integral unevaluated as


How can I get it evaluated? the result should be 3 here.

Thanks in advance.

         Hello each and everyone,

I have a problem with updating the Physics Package. (At the moment I run version 709)

But when I try to update to version 710 I have the following error (see the screenshot)

I don't know what's happening.

Kind regards to all.


I try to make a procedure for this 

Was it by a example of Riemann sum that  x-values in a array are stored for  numerical value, but in this task it seems that the array must be filled with the symbol x1,x2 , etc 

Should this be needed ?




excset  3  task4


Was it first for a partition about a interval ( example Riemannn sum) that i got  a list of numeric values

 a:= 0: b:= 5: N:= 30: i= 0..N :

X:= Array(0..N, [seq(j, j=a..b, (b-a)/N)]);

Array(%id = 18446745862042054398)


Now i want  to get a list  of  x-values in Array X ,  starting from  0  to N  :

example: array X =[x0= 0, x1=1/6, ...]

x[i]:= a+(b-a)*i/N; # for i = 0..N # endpoints subintervals

Error, invalid terms in product: 0 .. 30


# generate X-values for interval [a,b]

X:= Array(0..N, [seq(j, j=a..b, x[i])]);

Error, invalid input: seq expects its 3rd argument, step, to be of type numeric, but received x[i]



the values  x1,x2....stored  in Array X are used in further calulations
If there is a need for naming x1= 0 , x2= ..  in the Array A ? , probably not .





I can't figure out how Maple obtained this solution and looking for some ideas to try.

It is first order non-linear ode in y(x), which is separable.


But the general solution is


Setting up manually an equation using the given condition in order to solve for _C1, produces no solution. 


Warning, solutions may have been lost


coulditbe(exp(RootOf(1 + 2*Ei(1, -_Z) + 2*_C1))=1)


So how did Maple solve for the constant of integration which results in particular solution y(x)=1 that is supposed to satisfy the condition y(1)=1?  

It is clear that y(x)=1 satisfies the ODE itself. But I am asking about how it also satisfies y(1)=1

(odetst says it does satisfy the ODE and condition as well. So Maple must have done something very smart under the cover)

Next I tried


And now


Error, (in Ei) numeric exception: division by zero

Just wondering how did Maple decide that y(x)=1 satisfies y(1)=1? I do not see it.

Using Maple 2020.1. But same result on Maple 2019


How to display only trigonometric values ( like 0,Pi/6,Pi/3..)  of the parameter alpha in the Explore Command?


Hi , 

i want to find simple equation of rotate Ellipse  ( El1,EL2,El3 in the  worksheet), with calssic formula 

Ideas? Thanks

Etude d'un cas particulier a := 5: b := 7: k := 9: A := [a, 0]: B := [0, b]: #A et B fixes P := [t, 0]: Q := [0, k/t]:#P et Q 2 points mobiles cir := -a*x-b*y+x^2+y^2 = 0: sol := solve(subs(y = 5, cir), x): cen := [solve(diff(cir, x)), solve(diff(cir, y))]: x0 := sol[1]: y0 := 5: M := [x0, y0]: R := sqrt(cen[1]^2+cen[2]^2): beta := arctan(diff(solve(EQ(M, cen), y), x)): Recherche des valeurs de t pour que les 2 droites soient perpendiculaires eq := t^2*(y0-b)+t*(a*b-a*y0+b*x0-k)-x0*(a*b-k) = 0; sol := solve(eq, t); t := sol[1]; tp := sol[2]; P1 := [t, 0]; Q1 := [0, k/t]; PQ1 := simplify(x*(-a*b+b*t+k)+y*t*(t-a)-t*(-a*b+b*t+k)) = 0:#1ere tangente PQ2 := simplify(x*(-a*b+b*tp+k)+y*tp*(tp-a)-tp*(-a*b+b*tp+k)) = 0:#2ième tangente P2 := [tp, 0]; Q2 := [0, k/tp]; CIR := implicitplot(cir, x = -4 .. 8, y = -4 .. 12, color = red); Fig := proc (alpha) local Dr1, DR1, Dr2, DR2, N, u0, v0, Po, t, tp, sol; global a, b, k, cen, R; u0 := cen[1]+R*cos(alpha); v0 := cen[2]+R*sin(alpha); N := [u0, v0]; sol := solve(t^2*(v0-b)+t*(b*u0-a*v0+a*b-k)-u0*(a*b-k) = 0, t); t := sol[1]; tp := sol[2]; Dr1 := simplify(x*(-a*b+b*t+k)+y*t*(t-a)-t*(-a*b+b*t+k)) = 0; DR1 := implicitplot(Dr1, x = -4 .. 8, y = -4 .. 12, color = brown); Dr2 := simplify(x*(-a*b+b*tp+k)+y*tp*(tp-a)-tp*(-a*b+b*tp+k)) = 0; DR2 := implicitplot(Dr2, x = -4 .. 8, y = -4 .. 12, color = pink); Po := pointplot([N[]], symbol = solidcircle, color = [black], symbolsize = 8); display([Po, DR1, DR2]) end proc; DrPQ1 := implicitplot(PQ1, x = -4 .. 22, y = -4 .. 12, color = blue); DrPQ2 := implicitplot(PQ2, x = -4 .. 22, y = -4 .. 12, color = blue); Points := pointplot([A[], B[], M[], P1[], P2[], Q1[], Q2[], cen[]], symbol = solidcircle, color = [green], symbolsize = 10); T := plots:-textplot([[A[], "A"], [B[], "B"], [M[], "M"], [P1[], "P1"], [P2[], "P2"], [Q1[], "Q1"], [Q2[], "Q2"], [cen[], "cen"]], font = [times, 10], align = {below, left}); n := 19; display([seq(Fig(2*i*Pi/n), i = 0 .. n), Fig(beta), CIR, DrPQ1, DrPQ2, Points, T], scaling = constrained, size = [500, 500]); I would find out the focus of the ellipse. Thank you.

How I can change this solution or remove the RootOf, because i have to show variables and params in this solutions.



f1 := alpha*x*(1-x/N)-beta[1]*sqrt(x)*y1/(1+h[1]*beta[1]*sqrt(x))-beta[2]*sqrt(x)*y2/(1+h[2]*beta[2]*sqrt(x))-d*E*x

f2 := -omega[1]*y1+Mu[1]*beta[1]*sqrt(x)*y1*(1-y1/(beta[1]*sqrt(x)))/(1+h[1]*beta[1]*sqrt(x))

f3 := -omega[2]*y2+Mu[2]*beta[2]*sqrt(x)*y2*(1-y2/(beta[2]*sqrt(x)))/(1+h[2]*beta[2]*sqrt(x))

T := solve({f1, f2, f3}, [x, y1, y2])

[[x = -N*(E*d-alpha)/alpha, y1 = 0, y2 = 0], [x = RootOf(alpha*beta[2]*Mu[2]*h[2]*_Z^4+alpha*Mu[2]*_Z^3+(E*N*d*Mu[2]*beta[2]*h[2]-N*alpha*Mu[2]*beta[2]*h[2])*_Z^2+(-N*beta[2]^2*h[2]*omega[2]+E*N*d*Mu[2]+N*Mu[2]*beta[2]^2-N*alpha*Mu[2])*_Z-N*omega[2]*beta[2])^2, y1 = 0, y2 = -(RootOf(alpha*beta[2]*Mu[2]*h[2]*_Z^4+alpha*Mu[2]*_Z^3+(E*N*d*Mu[2]*beta[2]*h[2]-N*alpha*Mu[2]*beta[2]*h[2])*_Z^2+(-N*beta[2]^2*h[2]*omega[2]+E*N*d*Mu[2]+N*Mu[2]*beta[2]^2-N*alpha*Mu[2])*_Z-N*omega[2]*beta[2])*omega[2]*beta[2]*h[2]-RootOf(alpha*beta[2]*Mu[2]*h[2]*_Z^4+alpha*Mu[2]*_Z^3+(E*N*d*Mu[2]*beta[2]*h[2]-N*alpha*Mu[2]*beta[2]*h[2])*_Z^2+(-N*beta[2]^2*h[2]*omega[2]+E*N*d*Mu[2]+N*Mu[2]*beta[2]^2-N*alpha*Mu[2])*_Z-N*omega[2]*beta[2])*beta[2]*Mu[2]+omega[2])/Mu[2]], [x = RootOf(alpha*beta[1]*Mu[1]*h[1]*_Z^4+alpha*Mu[1]*_Z^3+(E*N*d*Mu[1]*beta[1]*h[1]-N*alpha*Mu[1]*beta[1]*h[1])*_Z^2+(-N*beta[1]^2*h[1]*omega[1]+E*N*d*Mu[1]+N*Mu[1]*beta[1]^2-N*alpha*Mu[1])*_Z-N*omega[1]*beta[1])^2, y1 = -(RootOf(alpha*beta[1]*Mu[1]*h[1]*_Z^4+alpha*Mu[1]*_Z^3+(E*N*d*Mu[1]*beta[1]*h[1]-N*alpha*Mu[1]*beta[1]*h[1])*_Z^2+(-N*beta[1]^2*h[1]*omega[1]+E*N*d*Mu[1]+N*Mu[1]*beta[1]^2-N*alpha*Mu[1])*_Z-N*omega[1]*beta[1])*omega[1]*beta[1]*h[1]-RootOf(alpha*beta[1]*Mu[1]*h[1]*_Z^4+alpha*Mu[1]*_Z^3+(E*N*d*Mu[1]*beta[1]*h[1]-N*alpha*Mu[1]*beta[1]*h[1])*_Z^2+(-N*beta[1]^2*h[1]*omega[1]+E*N*d*Mu[1]+N*Mu[1]*beta[1]^2-N*alpha*Mu[1])*_Z-N*omega[1]*beta[1])*beta[1]*Mu[1]+omega[1])/Mu[1], y2 = 0], [x = RootOf(alpha*beta[2]*beta[1]*Mu[2]*Mu[1]*h[2]*h[1]*_Z^5+(alpha*Mu[1]*Mu[2]*beta[1]*h[1]+alpha*Mu[1]*Mu[2]*beta[2]*h[2])*_Z^4+(E*N*d*Mu[1]*Mu[2]*beta[1]*beta[2]*h[1]*h[2]-N*alpha*Mu[1]*Mu[2]*beta[1]*beta[2]*h[1]*h[2]+alpha*Mu[1]*Mu[2])*_Z^3+(-N*Mu[1]*beta[1]*beta[2]^2*h[1]*h[2]*omega[2]-N*Mu[2]*beta[1]^2*beta[2]*h[1]*h[2]*omega[1]+E*N*d*Mu[1]*Mu[2]*beta[1]*h[1]+E*N*d*Mu[1]*Mu[2]*beta[2]*h[2]+N*Mu[1]*Mu[2]*beta[1]^2*beta[2]*h[2]+N*Mu[1]*Mu[2]*beta[1]*beta[2]^2*h[1]-N*alpha*Mu[1]*Mu[2]*beta[1]*h[1]-N*alpha*Mu[1]*Mu[2]*beta[2]*h[2])*_Z^2+(-N*Mu[1]*beta[1]*beta[2]*h[1]*omega[2]-N*Mu[1]*beta[2]^2*h[2]*omega[2]-N*Mu[2]*beta[1]^2*h[1]*omega[1]-N*Mu[2]*beta[1]*beta[2]*h[2]*omega[1]+E*N*d*Mu[1]*Mu[2]+N*Mu[1]*Mu[2]*beta[1]^2+N*Mu[1]*Mu[2]*beta[2]^2-N*alpha*Mu[1]*Mu[2])*_Z-N*omega[2]*beta[2]*Mu[1]-N*omega[1]*beta[1]*Mu[2])^2, y1 = (-RootOf(alpha*beta[2]*beta[1]*Mu[2]*Mu[1]*h[2]*h[1]*_Z^5+(alpha*Mu[1]*Mu[2]*beta[1]*h[1]+alpha*Mu[1]*Mu[2]*beta[2]*h[2])*_Z^4+(E*N*d*Mu[1]*Mu[2]*beta[1]*beta[2]*h[1]*h[2]-N*alpha*Mu[1]*Mu[2]*beta[1]*beta[2]*h[1]*h[2]+alpha*Mu[1]*Mu[2])*_Z^3+(-N*Mu[1]*beta[1]*beta[2]^2*h[1]*h[2]*omega[2]-N*Mu[2]*beta[1]^2*beta[2]*h[1]*h[2]*omega[1]+E*N*d*Mu[1]*Mu[2]*beta[1]*h[1]+E*N*d*Mu[1]*Mu[2]*beta[2]*h[2]+N*Mu[1]*Mu[2]*beta[1]^2*beta[2]*h[2]+N*Mu[1]*Mu[2]*beta[1]*beta[2]^2*h[1]-N*alpha*Mu[1]*Mu[2]*beta[1]*h[1]-N*alpha*Mu[1]*Mu[2]*beta[2]*h[2])*_Z^2+(-N*Mu[1]*beta[1]*beta[2]*h[1]*omega[2]-N*Mu[1]*beta[2]^2*h[2]*omega[2]-N*Mu[2]*beta[1]^2*h[1]*omega[1]-N*Mu[2]*beta[1]*beta[2]*h[2]*omega[1]+E*N*d*Mu[1]*Mu[2]+N*Mu[1]*Mu[2]*beta[1]^2+N*Mu[1]*Mu[2]*beta[2]^2-N*alpha*Mu[1]*Mu[2])*_Z-N*omega[2]*beta[2]*Mu[1]-N*omega[1]*beta[1]*Mu[2])*omega[1]*beta[1]*h[1]+RootOf(alpha*beta[2]*beta[1]*Mu[2]*Mu[1]*h[2]*h[1]*_Z^5+(alpha*Mu[1]*Mu[2]*beta[1]*h[1]+alpha*Mu[1]*Mu[2]*beta[2]*h[2])*_Z^4+(E*N*d*Mu[1]*Mu[2]*beta[1]*beta[2]*h[1]*h[2]-N*alpha*Mu[1]*Mu[2]*beta[1]*beta[2]*h[1]*h[2]+alpha*Mu[1]*Mu[2])*_Z^3+(-N*Mu[1]*beta[1]*beta[2]^2*h[1]*h[2]*omega[2]-N*Mu[2]*beta[1]^2*beta[2]*h[1]*h[2]*omega[1]+E*N*d*Mu[1]*Mu[2]*beta[1]*h[1]+E*N*d*Mu[1]*Mu[2]*beta[2]*h[2]+N*Mu[1]*Mu[2]*beta[1]^2*beta[2]*h[2]+N*Mu[1]*Mu[2]*beta[1]*beta[2]^2*h[1]-N*alpha*Mu[1]*Mu[2]*beta[1]*h[1]-N*alpha*Mu[1]*Mu[2]*beta[2]*h[2])*_Z^2+(-N*Mu[1]*beta[1]*beta[2]*h[1]*omega[2]-N*Mu[1]*beta[2]^2*h[2]*omega[2]-N*Mu[2]*beta[1]^2*h[1]*omega[1]-N*Mu[2]*beta[1]*beta[2]*h[2]*omega[1]+E*N*d*Mu[1]*Mu[2]+N*Mu[1]*Mu[2]*beta[1]^2+N*Mu[1]*Mu[2]*beta[2]^2-N*alpha*Mu[1]*Mu[2])*_Z-N*omega[2]*beta[2]*Mu[1]-N*omega[1]*beta[1]*Mu[2])*beta[1]*Mu[1]-omega[1])/Mu[1], y2 = (-RootOf(alpha*beta[2]*beta[1]*Mu[2]*Mu[1]*h[2]*h[1]*_Z^5+(alpha*Mu[1]*Mu[2]*beta[1]*h[1]+alpha*Mu[1]*Mu[2]*beta[2]*h[2])*_Z^4+(E*N*d*Mu[1]*Mu[2]*beta[1]*beta[2]*h[1]*h[2]-N*alpha*Mu[1]*Mu[2]*beta[1]*beta[2]*h[1]*h[2]+alpha*Mu[1]*Mu[2])*_Z^3+(-N*Mu[1]*beta[1]*beta[2]^2*h[1]*h[2]*omega[2]-N*Mu[2]*beta[1]^2*beta[2]*h[1]*h[2]*omega[1]+E*N*d*Mu[1]*Mu[2]*beta[1]*h[1]+E*N*d*Mu[1]*Mu[2]*beta[2]*h[2]+N*Mu[1]*Mu[2]*beta[1]^2*beta[2]*h[2]+N*Mu[1]*Mu[2]*beta[1]*beta[2]^2*h[1]-N*alpha*Mu[1]*Mu[2]*beta[1]*h[1]-N*alpha*Mu[1]*Mu[2]*beta[2]*h[2])*_Z^2+(-N*Mu[1]*beta[1]*beta[2]*h[1]*omega[2]-N*Mu[1]*beta[2]^2*h[2]*omega[2]-N*Mu[2]*beta[1]^2*h[1]*omega[1]-N*Mu[2]*beta[1]*beta[2]*h[2]*omega[1]+E*N*d*Mu[1]*Mu[2]+N*Mu[1]*Mu[2]*beta[1]^2+N*Mu[1]*Mu[2]*beta[2]^2-N*alpha*Mu[1]*Mu[2])*_Z-N*omega[2]*beta[2]*Mu[1]-N*omega[1]*beta[1]*Mu[2])*omega[2]*beta[2]*h[2]+RootOf(alpha*beta[2]*beta[1]*Mu[2]*Mu[1]*h[2]*h[1]*_Z^5+(alpha*Mu[1]*Mu[2]*beta[1]*h[1]+alpha*Mu[1]*Mu[2]*beta[2]*h[2])*_Z^4+(E*N*d*Mu[1]*Mu[2]*beta[1]*beta[2]*h[1]*h[2]-N*alpha*Mu[1]*Mu[2]*beta[1]*beta[2]*h[1]*h[2]+alpha*Mu[1]*Mu[2])*_Z^3+(-N*Mu[1]*beta[1]*beta[2]^2*h[1]*h[2]*omega[2]-N*Mu[2]*beta[1]^2*beta[2]*h[1]*h[2]*omega[1]+E*N*d*Mu[1]*Mu[2]*beta[1]*h[1]+E*N*d*Mu[1]*Mu[2]*beta[2]*h[2]+N*Mu[1]*Mu[2]*beta[1]^2*beta[2]*h[2]+N*Mu[1]*Mu[2]*beta[1]*beta[2]^2*h[1]-N*alpha*Mu[1]*Mu[2]*beta[1]*h[1]-N*alpha*Mu[1]*Mu[2]*beta[2]*h[2])*_Z^2+(-N*Mu[1]*beta[1]*beta[2]*h[1]*omega[2]-N*Mu[1]*beta[2]^2*h[2]*omega[2]-N*Mu[2]*beta[1]^2*h[1]*omega[1]-N*Mu[2]*beta[1]*beta[2]*h[2]*omega[1]+E*N*d*Mu[1]*Mu[2]+N*Mu[1]*Mu[2]*beta[1]^2+N*Mu[1]*Mu[2]*beta[2]^2-N*alpha*Mu[1]*Mu[2])*_Z-N*omega[2]*beta[2]*Mu[1]-N*omega[1]*beta[1]*Mu[2])*beta[2]*Mu[2]-omega[2])/Mu[2]]]






Theoretically, if the multiplication sign  is missed Maple needs to give reminders or warnings.But the following is not the case, why?I am surprised its output. 

                             x := 1
x(2+1)Actually, I want to enter x*(2+1)

x(sin(y))Actually, I want to enter x*(sin(y))

I am a little confused by why this error occurs in the second line and not the first, as well as the weird details specified in it. I don't know if the commands that are being called are inbuilt or not, but it is a safe bet that they will be. thankyou.


MAX := max({[seq(seq(n-(n^k-floor(n^(1/k))^(k-1)*igcd(floor(ithprime(n)^k/n^k), floor(n^(1/k))))^(1/k), n = 2 .. 100), k = 2 .. 100)][]}):

seq(seq(piecewise(radnormal(n-(n^k-floor(n^(1/k))^(k-1)*igcd(floor(ithprime(n)^k/n^k), floor(n^(1/k))))^(1/k)) = MAX, [n, k], NULL), n = 2 .. 100), k = 2 .. 100)

Error, (in radnormal/rational/nthpower) cannot determine if this expression is true or false: iroot(646162507019111437893207695980096110233782566593779/(_c27_37*_c25_38), [_c25_38, 1]) < 0





In preparing to sample problems, I came across this difference in an output depending upon the input type: 2d Input vs. Maple Input. Is there a typo on my part?


restart; kernelopts(version); Digits

`Maple 2020.1, X86 64 WINDOWS, Jun 10 2020, Build ID 1474787`




Very happy with the output of the following line:

x := evalf[30](3.0^1.2)




But I'm confused about the output of the next line. Is it a limit to the calculation or a display problem?

a := evalf[30](3.0^(1.2))




and yet this next output looks fine:

b := evalf[30]( exp( 1.2 * ln(3)))




Fortunately, there appears to be no difference between x and b:





But these next  lines suggest there is an actual limit in the calculation of a.




evalf[30](a - b);



Note - when Digits is set to 30, the calculation difference between x and a disappears.




4 5 6 7 8 9 10 Last Page 6 of 1898