Maple 2025 Questions and Posts

These are Posts and Questions associated with the product, Maple 2025
sol:=ln( (y-1)^(1/3)* (y^2+y+1)^(1/3) ) - ln(y) = 2/5* ln(t^2+1)+_C1;
solve( sol,y);

in real domain is fine also. But all my attempts failed. I waited 3-4 minutes each time and stopped it.

Any one can find a trick? Below worksheet showing my attempts and also solution by Mathematica which took 0.3 seconds

Make sure to save all your work first. This problem is known to crash Maple !

restart;

sol:=ln( (y-1)^(1/3)* (y^2+y+1)^(1/3) ) - ln(y) = 2/5* ln(t^2+1)+_C1;
solve( sol,y) assuming real;

ln((y-1)^(1/3)*(y^2+y+1)^(1/3))-ln(y) = (2/5)*ln(t^2+1)+_C1

Warning,  computation interrupted

restart;

sol:=ln( (y-1)^(1/3)* (y^2+y+1)^(1/3) ) - ln(y) = 2/5* ln(t^2+1)+_C1;
RealDomain:-solve( sol,y);

ln((y-1)^(1/3)*(y^2+y+1)^(1/3))-ln(y) = (2/5)*ln(t^2+1)+_C1

Warning,  computation interrupted

restart;
sol:=ln( (y-1)^(1/3)* (y^2+y+1)^(1/3) ) - ln(y) = 2/5* ln(t^2+1)+_C1;
solve( sol,y,real);

ln((y-1)^(1/3)*(y^2+y+1)^(1/3))-ln(y) = (2/5)*ln(t^2+1)+_C1

Warning,  computation interrupted

 


 

Download solve_problem_march_7_2026.mw

 

I never used Maplets before.

Been learning Explore, which is OK, but the UI does not look good. Too much white spaces between sliders.  So been looking at Maplets to use instead.

Should one just use Maplets to make interactive demos with sliders, buttons, popup menus and so on or use Explore? Which is better?

I do not waste more time learning Explore more if Maplets is a better choice.

If someone here knows Maplet, here is something I just wrote in Explore.  Could this be coded in Maplet to see how it will look like. It took me 30 minutes to make it using Explore and I am no expert in Explore, so hopefully it should not take someone who knows Maplets much time to produce same thing as Maplet. I wanted to see if the UI will look better or same issues with too wasted spaces between sliders.  I assume with Maplets, there is same concept as Explore, with range of variables, and initial values and so on...

I understand one can run Maplet using Maple viewer without needing to have Maple installed on the PC, so this is an advantage.

restart;

ode_1 := diff(x(t),t) = r*x(t) *(1-(x(t)+beta*y(t))/k1):
ode_2 := diff(y(t),t) = k*y(t) *(1-(y(t)+alpha*x(t))/k2):

Explore(DEtools:-DEplot(
     [ ode_1, ode_2],[x(t),y(t)],t=0..max_time,[[x(0)=x0,y(0)=y0]],
     x=0..max_x, y=0..max_y,'labels'=["Elk","Deer"],'dirfield'=[ngrid,ngrid],
     'arrows'='SLIM', #'smalltwo',
     'axes'='boxed', 'color' = blue,'linecolor'='red',#color of solution
     'obsrange'=false,
     'title'="Lotka -Volterra Model of Competition"
     ),
    parameters=[
     [r=0..5,'controller' = 'slider','minorticks'=.1,'snaptoticks'=true, 'label' = "Elk growth rate r",'showlabels'=false,placement='right'],
     [alpha=0..2,'controller' = 'slider','minorticks'=.1,'snaptoticks'=true, 'label' = "Elk competition alpha",'showlabels'=false,placement='right'],
     [k1=100..1000,'controller' = 'slider','minorticks'=10,'snaptoticks'=true, 'label' = "Elk carrying capacity",'showlabels'=false,placement='right'],
     [k=0..5,'controller' = 'slider','minorticks'=.1,'snaptoticks'=true, 'label' = "Deer growth rate k",'showlabels'=false,placement='right'],
     [beta=0..2,'controller' = 'slider','minorticks'=.1,'snaptoticks'=true, 'label' = "Deer competition beta",'showlabels'=false,placement='right'],
     [k2=100..1000,'controller' = 'slider','minorticks'=10,'snaptoticks'=true, 'label' = "Deer carrying capacity",'showlabels'=false,placement='right'],
     [max_time=1..200,'controller' = 'slider','minorticks'=1,'snaptoticks'=true, 'label' = "max time",'showlabels'=false,placement='left'],
     [max_x=1..1000,'controller' = 'slider','minorticks'=1,'snaptoticks'=true, 'label' = "max x",'showlabels'=false,placement='left'],
     [max_y=1..1000,'controller' = 'slider','minorticks'=1,'snaptoticks'=true, 'label' = "max y",'showlabels'=false,placement='left'],
     [x0=1..200,'controller' = 'slider','minorticks'=1,'snaptoticks'=true, 'label' = "Deer initial population",'showlabels'=false,placement='left'],
     [y0=1..200,'controller' = 'slider','minorticks'=1,'snaptoticks'=true, 'label' = "Elk initial population",'showlabels'=false,placement='left'],
     [ngrid=10..30,'controller' = 'slider','minorticks'=1,'snaptoticks'=true, 'label' = "arrows",'showlabels'=false,placement='left']     
    ],
    initialvalues=[r=0.12,k1=600,alpha=1.5,k2=600,k=0.18,beta=1.2,x0=75,y0=100,ngrid=24,max_x=700,max_y=700,max_time=100],
    'adaptview'=true
);

 

 

Download lotka_volterra.mw

Screen shot of the UI

 

How would the above look using Maplet instead of Explore?

I just found a rather incredible error in versions 2025.1 and 2025.2.

The function works fine in version 2022.

The drag function in solve does not work, even for solving a very simple problem.

For example, in the equation 1 + 5x = 3x - 1, if I try to do 3x from right to left, a box opens with a good suggestion (subtract   1+2x = -1)

# subtract 3*x from both sides
((1)) + ~(3 * x)
we can see that the correct expression should be ((1)) - ~(3 * x)

I finally get:

1 + 8x = 6x -1 (it added and did not subtract 3x from both sides)

Please correct this...

These are the original set up to solve for second order partial differetial equations:

E := 1.456*10^11;
rho := 7900;
a := sqrt(E/rho);
L := 0.03639;

f0 := 1/(2*L)*a;
f := f0 - 50;
A0 := 11.75*L/2*10^(-6);

d := 0.8*1000;
T0 := 5/f;
NULL;
PDE := diff(u(x, t), t, t) = a^2*diff(u(x, t), x, x) - d*diff(u(x, t), t);
IBC := {u(x, 0) = A0*cos(Pi*x/L), D[1](u)(0, t) = 0, D[1](u)(L, t) = 0, D[2](u)(x, 0) = 0};
pds := pdsolve(PDE, IBC, numeric, timestep = 2*10^(-7));

 I know it solves properly because I can plot it using pds:-plot without problem.  The question is how to extract the value at specific x and t.  I started to try some of the more intuitive way such as u(0,0) without getting an answer.  I tried a number of eval expression such as eval(pds,[x=0,t=0]), eval(u(x,t),[x=0,t=0]) and so on without success.  

Then I tried using :-value as mentioned in an example from the internet, also resulting in an error.

val:=pds:-value(x=0,t=0)

It seems to be simple.  I guess I am too new with maple so be gentle.  Thank you.

Hi,

My student licence  expired yesterday mar1. According to the description of my student licence it renews automatically. So I did not get active. But apparently it did not occur automatically. When starting Maple I get the message that my licence expired yesterday. To check whether the automatic renewal applies but did not work or whether I have to purchase a new licence for the next 12 months I tried to contact the customer support through online form. 

I do not see any other channel to contact customer support by mail or phone, what can I do ?

Manfred

Hello Friends,

I have a function f(t) which I would like to convolve with itself.  I have no problem doing that typically, but my function contains two elliptic integrals (EllipticE and EllipticK), which clearly complicates matters.

My work in included.  As you can see, the plot on the (0,2) interval is continuous, and the area under the curve sums to unity via numerical integration.

with(Statistics)

f := proc (t) options operator, arrow; piecewise(t <= 0, 0, 0 < t and t < 2, (4/3)*t*((4+t^2)*EllipticE(sqrt(1-4/t^2))-8*EllipticK(sqrt(1-4/t^2)))/Pi^2, 2 <= t, 0) end proc

proc (t) options operator, arrow; piecewise(t <= 0, 0, 0 < t and t < 2, (4/3)*t*((4+t^2)*EllipticE(sqrt(1-4/t^2))-8*EllipticK(sqrt(1-4/t^2)))/Pi^2, 2 <= t, 0) end proc

(1)

plot(f(t), t = 0 .. 2)

 

evalf(int(f(t), t = 0 .. 2))

1.000000000+0.*I

(2)

Download CircleDerivation2.mw

Are there any sort of transformations that I can employ which will permit me to convole this function with itself?  I realize a closed-form solution is probably not likely, but something approaching closed-form would be nice.  Via simulation, I have learned that the self-convolved function will have a continuous boundary on the (0, 2*sqrt(2)) interval.

nans:=dsolve({(-y^4+y^2)*diff(U(y),y,y)+(-2*y^2+14.2)*diff(U(y),y)*y-15.2*U(y)*(U(y)-1)*(U(y)+1) = 0, DU(.99999) = -.3401375821,U(.99999)= 0.3000034013},numeric);
Error, (in dsolve/numeric/process_input) invalid specification of initial conditions, got DU(.99999) = -.3401375821

Is this a Maple bug? I do not see what I am doing wrong:

restart;

interface(version);

`Standard Worksheet Interface, Maple 2025.2, Windows 10, November 11 2025 Build ID 1971053`

Explore( plots:-textplot([0,0," CRITICAL DAMPING"],'axes'=none),
   initialvalues=[c=1,k=.1],
   parameters=[[c=0..10],[k=0..10]]
   );

 

 

Moving any slider gives the internal error.  Why?

Download internal_error_explore_feb_28_2026.mw

Here is a small movie

To help debug things, and to make it easier to add more logic such as if then else and so on, I moved the main body of Explor to a separate proc where the plot is made after doing some checking.

So instead of writing

Explore(plot(.....), 
 parameters=[  
   [c=0..10,....],
   [k=0..10,...]]
)

It now became

foo:=proc(c,k}
.....#some debug print messages added here, and some checking...
   plot(....)
end proc;

Explor( foo(c,k), 
  parameters=[  
    [c=0..10,....],
    [k=0..10,...]]
)

Two problems. 

1) My print lines inside foo() do not print to worksheet. Only the initial time they do. When I mean initial time, it is when Explore starts and does initalization. I see the print lines only then.

But after that, as I change the slider, which should make a call to foo(), I see nothing printed on the screen in my worksheet any more.

It is as if Explor stopped calling my foo().  But at same time, I see do see in the the display of Explore itself that it is calling foo as expected, since the call it display is changes and the result of the call changes as slider is changed. So call is being made. 

This is what shows inside Explore...

foo(5,2)=10
foo(3,2)=6
and so on

Why then the print messages from foo() are not printed in the worksheet any more? Where are the print message going to then?

2) How to make Explor only show the _result_ of calling foo() and not show the call itself as it does now? 

ie. instead of showing foo(5,2)=10  I just wanted to see the result of foo, which is 10 in this example.

Doing rhs(foo(c,k)) did not work

Here is worksheet to see yourself.

restart;

foo:=proc(c,k)
   print("c=",c," k=",k);
   c*k;
end proc:

Explore(foo(c,k),
   initialvalues=[c=1,k=.1],
   parameters=[
     [c=0..10,'controller' = 'slider','minorticks'=1,
      'snaptoticks'=true, 'label' = "Damping c",'showlabels'=false],
     [k=0..10,'controller' = 'slider','minorticks'=1,
      'snaptoticks'=true, 'label' = "Stiffness k",'showlabels'=false]]
   );

"c=", 10, " k=", 10

"c=", 0, " k=", 0

"c=", 1, " k=", .1

 

 

Download explore_feb_28_2026.mw

Here is small movie

ps. I am thinking now Explore only works with "plot" as its first argument. But help says expr can be anything.

Goal: to make a 3D parametric plot of a complex function u(x,t) obtained by pdsolve.  I tried to follow one example of a plot of a complex expression/function.  I was unable to get any plot.  I got some warning and error.  Please let me know what have I done wrong.

I follow this example so that I can get a 3D parametric plot of a complex function u(x,t) for a fix x:

with(plots);

complexplot(exp(t*I), t = 0 .. 2*Pi, scaling = constrained);

plot([cos(t), sin(t), t = 0 .. 2*Pi], scaling = constrained);

z := t -> exp(t*I);

spacecurve([Re(z(t)), Im(z(t)), t], t = 0 .. 4*Pi, axes = normal, labels = ["Re", "Im", "t"]);

It was successful.  With the following pde, I obtain an analytical solution using pdsolve.

a := 3;
L := 2*Pi;
d := 0.5;
T0 := 2*Pi;
PDE := diff(u(x, t), t, t) = a^2*diff(u(x, t), x, x) - d*diff(u(x, t), t);
IBC := u(x, 0) = cos(Pi*x/L), D[2](u)(x, 0) = 0, D[1](u)(0, t) = 0, D[1](u)(L, t) = 0;
pds := pdsolve({IBC, PDE}, u(x, t));

It fail 2D plotting using the following:

with(plots);
complexplot(u(0, t), t = 0 .. 6);

So I break down the pds with the following:

RP := Re(pds);
IP := Im(pds);
RP0 := eval(RP, x = 0);
RP0t := unapply(RP0, t);
IP0 := eval(IP, x = 0);
IP0t := unapply(IP0, t);

And I was hopeful as the following give me real numbers when I approximate them:

RP0t(1);
                             "(->)"


                     Re(u(0, 1)) = 0.20248

RP0t(2);
                             "(->)"


                     Re(u(0, 2)) = -0.57765

But it fails in both 2D and 3D plot:

plot([RP0t(t), t = 0 .. 6])

spacecurve([RP0t(t), IP0t(t), t], t = 0 .. 6, axes = normal)

Dear sir,

i want to draw velocity and temperature plots for fluid and dust phases. but getting error in that showing 12 BC need only 8 
i have tried with 8 Bc also but showing different error how to rectify it

dust_phase_work_error.mw 

given

ode:=x^2*diff(y(x),x)+cos(2*y(x)) = 1; 
ic:=y(infinity) = 5/4*Pi; 
mysol:=cot(y(x))=2/x+1;

the above solution is verified against the ode, but Maple do not give zero for the IC part. It gives 

                                 [0, -Pi*_Z6 + Pi]

But we can see the IC are verified also

limit(eval(mysol,y(x)=5/4*Pi),x=infinity)

Gives

                                    1 = 1

my  code checks if the entry in the result of odetest is zero or not. Hence for -Pi*_Z6 + Pi it thinks now the solution is wrong because it is not zero.   Ofcourse looking at it on the screen, we see that for _Z6=1 then it becomes zero.  

The question, why Maple odetest do not return zero for the IC part?

eq:=cot(y)=-A;
solve(eq,y)

eq:=cot(y)=A;
solve(eq,y)

I would expect solution to first to be arccot(-A) and for second to be arccot(A) but Maple likes to write the solution for the first one as Pi-arccot(A).

Of course Maple solution is correct. But why make it so complicated? Why not just give arccot(-A) as solution?  A is just a symbol.

I tried 4 different cas systems and they all give arccot(-A) for first one, except Maple gives Pi-arccot(A)

Is there some subtle reason why Maple gives solution like this instead of the simpler one? 

And is there a way to tell Maple not to do this? This seems to be something hardcoded internally in its automatic trig simplifications? I just do not see the point of writing it this way. May be someone knows why.

Dear Power Users, I do hope someone is willing to help me out. I want to do the analysis of 3 cycles of an extension-load measurement. I would like to calculate:

- the slope of the upgoing part of the cycle between 1 and 4 N (loading stiffness)

- the slope of the unloading part of the cycle between 4 and 1 N

- the surface of each cycle.

- the extension at the minimum and maximum value of each cycle

I did this before using a special addin of mathcad 15 but as this is no longer available I hope to do this in maple. 

AnalysisCyclicData2.maple

according to help under Explore, it says

I wanted to add title at top of the Explore window. But title do not show. 

Explore(plot(a*sin(b*t),t=0..10),
   parameters=[              
        [a=1..20],
        [b=1..20]
        ],
  initialvalues=[a=6,b=5],placement='right',width=300,'title'="My Explore");

I was expecting My Explore to show at top of frame above. What Am I doing wrong?

Maple 2025.2

1 2 3 4 5 6 7 Last Page 1 of 18