Maple 2025 Questions and Posts

These are Posts and Questions associated with the product, Maple 2025

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

Is this a bug?  Or one can not mix slider for one variable and textarea for second variable in Explore?

Or do I need to initialize the textarea is special way? Nothing in help shows an example with textarea and slider together.

interface(version);

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

No textarea , works OK

 

restart;

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);

 

 

Change one slider to textarea, now error

 

restart;

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

Warning, expecting only range variable t in expression 20*sin(b*t) to be plotted but found name b

Warning, expecting only range variable t in expression sin(b*t) to be plotted but found name b

 

 

Download explor_feb_19_2026.mw

I am not able to find an example or how to do this in help.

In Explore, when making a slider, using say 

parameters=[  [ a=1..1000 ], .....]

Is there is a way to tell it to increment "a" by say 10 for each movement of the slider using the mouse? it seems to default in this case to 1 each time.

Actually it is very hard now to make the slider go to the exact value I want. Is there a way to better control what value "a" should be?

In Mathematica, slider supports increment. Also it is possible to open each slider and then click on + and -  in the small window that opens below the slider, where now each click on + now moves the slider by the increment one decides on.  But in Maple I see no place to tell it what increment to use?

If I try this (similar to when using seq command, as in seq(i, i=1..1000,10), it does not work

[ a=1 .. 100, 10 ]

Hoping it will increment/decrement by 10 each time, it gives error.

Imagine a slider that goes from 1 to 10,000. Then how will one control the slider to be say exactly 5,550 ?  It is impossible now. Here is an example

Explore(plot(a*sin(x),x=-3*Pi..3*Pi,'gridlines'),
   parameters=[[a=1 .. 10000]],
   initialvalues=[a=1000],
   width=500,placement='right');

Now try using the slider above to make it go to a=5550. 

very hard to control the slider as it is very sensetive to slider motion, a small touch makes it move by large amount.   

I was hoping that if I can make it move by say 10 at time, so it will be at least easier to control.

Any suggestions?

I see a web page called Slider Component   but have no idea if this is related to Explor or not and how to use it there.

I know I can change the slider to "controller = textarea", and this way I can type in the value I want instead of using a slider. But want to see first if standard slider has a way to allow changing the increment amout. If not, then may be will use textarea instead of slider.

I have not used Explore command alot. Just starting to learn it. But I am stuck on improving the basic look of it.

There are way too much space between sliders and too much white space between the sliders and the plot itself. Also the fonts used below the sliders are too large and do not even know how to remove them or make the fonts smaller.

Looking at the help page, I do not see options to adjust these. But help pages are very hard to read to find an option.

Here is an example. I am using worksheet, with 100% default zoom.

Explore(plot((b+0.7)*sin(x/(a+1))/x+b, x=-4*Pi .. 4*Pi, view=-2 .. 6,gridlines),
        a=-2.0 .. 1.0, 
        b=0.0 .. 3.0,
        width=300,placement='top');

This is the output

I'd like to be like this

Overall, even though Explore works, I find the look of it pretty bad actually due to the above issues. It does not look professional and polished.

This is a big problem, because if there are 4 or 5 sliders, now one can not even see the plot itself when changing the sliders, because one has to scroll down to see the plot now and then scroll back up to reach the top sliders to move them.  Even on Large monitor.

Is there a trick to control the spacing between sliders and the main body which is the plot window? Removing all wasted white space and making sliders font smaller for numbers below the sliders or remove them will go long way to making Explore command output look better.

Dear power users, I have a question I would like to convert the "results" variable in the attached document into an rtable or matrix. How can I do this? Thank you for your time and help in advance PrimesQuestion.mw

t := (5/9)*Pi;
e:=tan(t) + 4*sin(t);

is -sqrt(3)  but how to make Maple show this?

This is what I tried

t := (5/9)*Pi;
e:=tan(t) + 4*sin(t);
convert(e,radical);
simplify(e,trig);
simplify(e,constant);
allvalues(e);

 

The command "is" and "identify" knows this

is(e=-sqrt(3));
identify(evalf[32](e))

In Mathematica, FullSimplify can do it.

 

Any suggestions in Maple to simplify like the above?

Maple desperately needs a new full_simplify() command.

Having to keep trying different commands by trial and error in the hope one works is not the right way to do things.

I am trying to run Python for the first time in Maple 2025. Below is my simple proof of concept. This code only produces the following output: a # (a is a variable that contains a Python list) I don't understand why the python list which is assigned to variable "a" is not being displayed? It appears that the variable "a" is not being returned to Maple. This is the code that is being run in Maple 2025:

restart;
with(Python):
Start():
Run("import numpy as np"):
Run("a = np.arange(10).tolist()"):
a;

f:=subs(r=(sqrt(5)+1)/2,7*arctan(r)^2+2*arctan(r^3)^2-arctan(r^5)^2); 

The above expression is in fact equal to (7*Pi**2)/8 (which may be obtained by the `identify` command). 
As the following worksheet shows, simplify(f); fails to do full simplifications and the result consists of the less simplified arctan(2/11), while simplify(f/Pi^2); succeeds in making full simplifications and returning the remarkably simpler form: 

restart;

f := subs(r = (sqrt(5) + 1)/2, 7*arctan(r)^2 + 2*arctan(r^3)^2 - arctan(r^5)^2); # which is actually equal to “7/8*Pi^2”

7*arctan((1/2)*5^(1/2)+1/2)^2+2*arctan(((1/2)*5^(1/2)+1/2)^3)^2-arctan(((1/2)*5^(1/2)+1/2)^5)^2

(1)

is(f = 7/8*Pi^2);

true

(2)

simplify(f); # This cannot yield the desired result.

(11/16)*Pi^2+(3/4)*arctan(1/2)*Pi+(9/4)*arctan(1/2)^2-(1/4)*arctan(2/11)^2+(1/2)*arctan(2/11)*Pi

(3)

simplify(f/Pi^2); # To obtain the desired result, `f` has to be divided by Pi^2 manually.

7/8

(4)

simplify(arctan(2/11) - 3*arctan(2)); # So, Maple knows that arctan(2/11) = 3*arctan(2) - Pi (or, somewhat more elegantly, arccot(2/11) = 3*arccot(2)).

-Pi

(5)

simplify((3), constant); # No further simplification.

(11/16)*Pi^2+(3/4)*arctan(1/2)*Pi+(9/4)*arctan(1/2)^2-(1/4)*arctan(2/11)^2+(1/2)*arctan(2/11)*Pi

(6)

As Maple does indeed know that arctan(2/11) = 3*arctan(2)-Pi, why can't Maple further simplify (3) by attempting to eliminate arctan(2/11) (so that we don't have to enter the identity manually)?

simplify(simplify((3), {arctan(2/11) = 3*arctan(2) - Pi}));

(7/8)*Pi^2

(7)

simplify(subs(((sqrt(5)+1)*(1/2))^5 = ((sqrt(5)-1)*(1/2))*((sqrt(5)+1)*(1/2))^6, f))

(7/8)*Pi^2

(8)
 

 

Download simplify_a_constant.mw

Since arctan(2/11) can be expressed by the significantly more concise arctan(1/2) and Pi (that is, arctan(2/11) = 3*arctan(2) - Pi), why didn't simplify(f); attempt to eliminate arctan(2/11) in the result to further simplify `f`?

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