MaplePrimes Questions

On Ubuntu 24.04 or LinuxMint 22.1 (based on Ubuntu 24.04) I have the problem with(Matlab) funtions functionality

Matlab[openlink]();
Error, (in Matlab:-openlink) There was a problem initializing the Matlab engine. Refer to ?Matlab,setup for help configuring your system to work with the Matlab-link.  The error was: Maple/Matlab Link: Can't start Matlab engine; environment variable $MATLAB_BASEDIR not set

+ other error mesages from CLI:

starting mmatlink
In connectToMatlab
/bin/csh: /opt/MATLAB/R2024b/bin/glnxa64/libbsd.so.0: version `LIBBSD_0.7' not found (required by /bin/csh)

MATLAB R2024b using obsolete libbsd ver. 0.4.2 !!! So this is probably the problem...

$MATLAB_BASEDIR is properly defined at maple script:

# In order to link to MATLAB from within Maple, correct the following path
# and uncomment the next four lines, or define the environment variable,
# $MATLAB_BASEDIR outside this script.
if [ -z "$MATLAB_BASEDIR" ] ; then
MATLAB_BASEDIR=/opt/MATLAB/R2024b
export MATLAB_BASEDIR
fi

# C-shell is required for link to MATLAB (sudo apt install csh)

Any help???

Good day, all.

Please, I am working on the following code but found out that the command solve is not displaying any result. Your assistance and suggestions would be appreciated. Thank you, and best regards.

 

restart;
NULL;
t := sum(a[j]*q^j, j = 0 .. 9);
H := diff(t, q);
F := diff(t, q $ 2);
p1 := simplify(eval(t, q = x)) = y[n];
p2 := simplify(eval(F, q = x)) = f[n];
p3 := simplify(eval(F, q = x + h/4)) = f[n + 1/4];
p4 := simplify(eval(F, q = x + h/2)) = f[n + 1/2];
p5 := simplify(eval(F, q = x + (3*h)/4)) = f[n + 3/4];
p6 := simplify(eval(F, q = x + h)) = f[n + 1];
p7 := simplify(eval(F, q = x + (5*h)/4)) = f[n + 5/4];
p8 := simplify(eval(F, q = x + (3*h)/2)) = f[n + 3/2];
p9 := simplify(eval(F, q = x + (7*h)/4)) = f[n + 7/4];
p10 := simplify(eval(F, q = x + 2*h)) = f[n + 2];
r := seq(a[i], i = 0 .. 9);
s := p || (1 .. 10);

solve({s}, {r});

in a lot of paper i see that they just use the Auxiliary function without mention any detail but now i have to find out how i can reach this function, always i used u=Rdiff(ln(f),x#1,2) or u=Rdiff(ln(f),y,x)  (eq17) in mw. and it is answer for me untill now without knowing finding, but i have to figure out how they reach this in more than 1000 paper i didn't see any explanation about that they just used just in one of the paper mentioned something  like a series which i think they used this series but again is so complicated for undrestanding , i will put some problem picture and now i want to know how find them  eq17 for any equation based on the series in last picture mentioned

 

second example

third example which is so  different from other and i don't know how author reach this point 

i have to find this auxiliary function by using something like series  as mentioned in other question? how i can use this series for finding my auxiliary function u= u_0+R*diff(ln(f),x)  


 

#picture one

NULL

restart

with(PDEtools)

with(LinearAlgebra)

NULL

with(SolveTools)

_local(gamma)

Warning, A new binding for the name `gamma` has been created. The global instance of this name is still accessible using the :- prefix, :-`gamma`.  See ?protect for details.

 

undeclare(prime)

`There is no more prime differentiation variable; all derivatives will be displayed as indexed functions`

(1)

declare(u(x, y, z, t))

u(x, y, z, t)*`will now be displayed as`*u

(2)

declare(f(x, y, z, t))

f(x, y, z, t)*`will now be displayed as`*f

(3)

pde := diff(diff(u(x, y, z, t), t)+6*u(x, y, z, t)*(diff(u(x, y, z, t), x))+diff(u(x, y, z, t), `$`(x, 3)), x)+diff(alpha*(diff(u(x, y, z, t), x))+beta*(diff(u(x, y, z, t), y))+delta*(diff(u(x, y, z, t), z)), x)+mu*(diff(u(x, y, z, t), `$`(t, 2)))

diff(diff(u(x, y, z, t), t), x)+6*(diff(u(x, y, z, t), x))^2+6*u(x, y, z, t)*(diff(diff(u(x, y, z, t), x), x))+diff(diff(diff(diff(u(x, y, z, t), x), x), x), x)+alpha*(diff(diff(u(x, y, z, t), x), x))+beta*(diff(diff(u(x, y, z, t), x), y))+delta*(diff(diff(u(x, y, z, t), x), z))+mu*(diff(diff(u(x, y, z, t), t), t))

(4)

pde_linear, pde_nonlinear := selectremove(proc (term) options operator, arrow; not has((eval(term, u(x, y, z, t) = a*u(x, y, z, t)))/a, a) end proc, expand(pde))

diff(diff(u(x, y, z, t), t), x)+diff(diff(diff(diff(u(x, y, z, t), x), x), x), x)+alpha*(diff(diff(u(x, y, z, t), x), x))+beta*(diff(diff(u(x, y, z, t), x), y))+delta*(diff(diff(u(x, y, z, t), x), z))+mu*(diff(diff(u(x, y, z, t), t), t)), 6*(diff(u(x, y, z, t), x))^2+6*u(x, y, z, t)*(diff(diff(u(x, y, z, t), x), x))

(5)

thetai := k[i]*(t*w[i]+y*l[i]+z*r[i]+x)+eta[i]; eval(pde_linear, u(x, y, z, t) = exp(thetai)); eq15 := isolate(%, w[i])

k[i]*(t*w[i]+y*l[i]+z*r[i]+x)+eta[i]

 

k[i]^2*w[i]*exp(k[i]*(t*w[i]+y*l[i]+z*r[i]+x)+eta[i])+k[i]^4*exp(k[i]*(t*w[i]+y*l[i]+z*r[i]+x)+eta[i])+alpha*k[i]^2*exp(k[i]*(t*w[i]+y*l[i]+z*r[i]+x)+eta[i])+beta*k[i]^2*l[i]*exp(k[i]*(t*w[i]+y*l[i]+z*r[i]+x)+eta[i])+delta*k[i]^2*r[i]*exp(k[i]*(t*w[i]+y*l[i]+z*r[i]+x)+eta[i])+mu*k[i]^2*w[i]^2*exp(k[i]*(t*w[i]+y*l[i]+z*r[i]+x)+eta[i])

 

w[i] = (1/2)*(-1+(-4*beta*mu*l[i]-4*delta*mu*r[i]-4*mu*k[i]^2-4*alpha*mu+1)^(1/2))/mu

(6)

eqf := f(x, y, z, t) = 1+eval(exp(thetai), eq15)

f(x, y, z, t) = 1+exp(k[i]*((1/2)*t*(-1+(-4*beta*mu*l[i]-4*delta*mu*r[i]-4*mu*k[i]^2-4*alpha*mu+1)^(1/2))/mu+y*l[i]+z*r[i]+x)+eta[i])

(7)

eq17 := u(x, y, z, t) = R*(diff(ln(f(x, y, z, t)), `$`(x, 2)))

u(x, y, z, t) = R*((diff(diff(f(x, y, z, t), x), x))/f(x, y, z, t)-(diff(f(x, y, z, t), x))^2/f(x, y, z, t)^2)

(8)

eval(eq17, eqf); simplify(eval(pde, %)); sort([solve(%, R)]); eq17 := eval(eq17, R = simplify(%[2]))

u(x, y, z, t) = R*(k[i]^2*exp(k[i]*((1/2)*t*(-1+(-4*beta*mu*l[i]-4*delta*mu*r[i]-4*mu*k[i]^2-4*alpha*mu+1)^(1/2))/mu+y*l[i]+z*r[i]+x)+eta[i])/(1+exp(k[i]*((1/2)*t*(-1+(-4*beta*mu*l[i]-4*delta*mu*r[i]-4*mu*k[i]^2-4*alpha*mu+1)^(1/2))/mu+y*l[i]+z*r[i]+x)+eta[i]))-k[i]^2*(exp(k[i]*((1/2)*t*(-1+(-4*beta*mu*l[i]-4*delta*mu*r[i]-4*mu*k[i]^2-4*alpha*mu+1)^(1/2))/mu+y*l[i]+z*r[i]+x)+eta[i]))^2/(1+exp(k[i]*((1/2)*t*(-1+(-4*beta*mu*l[i]-4*delta*mu*r[i]-4*mu*k[i]^2-4*alpha*mu+1)^(1/2))/mu+y*l[i]+z*r[i]+x)+eta[i]))^2)

 

12*R*k[i]^6*exp(((1+(-4*beta*l[i]-4*delta*r[i]-4*k[i]^2-4*alpha)*mu)^(1/2)*t*k[i]+((2*y*l[i]+2*z*r[i]+2*x)*mu-t)*k[i]+2*eta[i]*mu)/mu)*(exp(((1+(-4*beta*l[i]-4*delta*r[i]-4*k[i]^2-4*alpha)*mu)^(1/2)*t*k[i]+((2*y*l[i]+2*z*r[i]+2*x)*mu-t)*k[i]+2*eta[i]*mu)/mu)-3*exp((1/2)*((1+(-4*beta*l[i]-4*delta*r[i]-4*k[i]^2-4*alpha)*mu)^(1/2)*t*k[i]+((2*y*l[i]+2*z*r[i]+2*x)*mu-t)*k[i]+2*eta[i]*mu)/mu)+1)*(R-2)/(1+exp((1/2)*((1+(-4*beta*l[i]-4*delta*r[i]-4*k[i]^2-4*alpha)*mu)^(1/2)*t*k[i]+((2*y*l[i]+2*z*r[i]+2*x)*mu-t)*k[i]+2*eta[i]*mu)/mu))^6

 

[0, 2]

 

u(x, y, z, t) = 2*(diff(diff(f(x, y, z, t), x), x))/f(x, y, z, t)-2*(diff(f(x, y, z, t), x))^2/f(x, y, z, t)^2

(9)

eq19 := eval(eq17, eqf)

u(x, y, z, t) = 2*k[i]^2*exp(k[i]*((1/2)*t*(-1+(-4*beta*mu*l[i]-4*delta*mu*r[i]-4*mu*k[i]^2-4*alpha*mu+1)^(1/2))/mu+y*l[i]+z*r[i]+x)+eta[i])/(1+exp(k[i]*((1/2)*t*(-1+(-4*beta*mu*l[i]-4*delta*mu*r[i]-4*mu*k[i]^2-4*alpha*mu+1)^(1/2))/mu+y*l[i]+z*r[i]+x)+eta[i]))-2*k[i]^2*(exp(k[i]*((1/2)*t*(-1+(-4*beta*mu*l[i]-4*delta*mu*r[i]-4*mu*k[i]^2-4*alpha*mu+1)^(1/2))/mu+y*l[i]+z*r[i]+x)+eta[i]))^2/(1+exp(k[i]*((1/2)*t*(-1+(-4*beta*mu*l[i]-4*delta*mu*r[i]-4*mu*k[i]^2-4*alpha*mu+1)^(1/2))/mu+y*l[i]+z*r[i]+x)+eta[i]))^2

(10)

simplify(eq19)

u(x, y, z, t) = 2*k[i]^2*exp((1/2)*((1+(-4*beta*l[i]-4*delta*r[i]-4*k[i]^2-4*alpha)*mu)^(1/2)*t*k[i]+((2*y*l[i]+2*z*r[i]+2*x)*mu-t)*k[i]+2*eta[i]*mu)/mu)/(1+exp((1/2)*((1+(-4*beta*l[i]-4*delta*r[i]-4*k[i]^2-4*alpha)*mu)^(1/2)*t*k[i]+((2*y*l[i]+2*z*r[i]+2*x)*mu-t)*k[i]+2*eta[i]*mu)/mu))^2

(11)

pdetest(eq19, pde)

0

(12)

#second example

NULL

restart

with(PDEtools)

with(LinearAlgebra)

NULL

with(SolveTools)

_local(gamma)

``

`There is no more prime differentiation variable; all derivatives will be displayed as indexed functions`

(13)

declare(u(x, y, t))

u(x, y, t)*`will now be displayed as`*u

(14)

declare(f(x, y, t))

f(x, y, t)*`will now be displayed as`*f

(15)

pde := diff(u(x, y, t), x, t)+alpha*(diff(u(x, y, t), `$`(x, 4))+6*(diff(u(x, y, t), x))*(diff(u(x, y, t), `$`(x, 2))))+beta*(diff(u(x, y, t), `$`(y, 2)))+a*(diff(u(x, y, t), `$`(x, 2)))+b*(diff(u(x, y, t), x, y))

diff(diff(u(x, y, t), t), x)+alpha*(diff(diff(diff(diff(u(x, y, t), x), x), x), x)+6*(diff(u(x, y, t), x))*(diff(diff(u(x, y, t), x), x)))+beta*(diff(diff(u(x, y, t), y), y))+a*(diff(diff(u(x, y, t), x), x))+b*(diff(diff(u(x, y, t), x), y))

(16)

oppde := [op(expand(pde))]; u_occurrences := map(proc (i) options operator, arrow; numelems(select(has, [op([op(i)])], u)) end proc, oppde); linear_op_indices := ListTools:-SearchAll(1, u_occurrences); pde_linear := add(oppde[[linear_op_indices]]); pde_nonlinear := expand(simplify(expand(pde)-pde_linear))

diff(diff(u(x, y, t), t), x)+alpha*(diff(diff(diff(diff(u(x, y, t), x), x), x), x))+beta*(diff(diff(u(x, y, t), y), y))+a*(diff(diff(u(x, y, t), x), x))+b*(diff(diff(u(x, y, t), x), y))

 

6*alpha*(diff(u(x, y, t), x))*(diff(diff(u(x, y, t), x), x))

(17)

thetai := k[i]*(t*w[i]+y*l[i]+x)+eta[i]; eval(pde_linear, u(x, y, t) = 1+exp(thetai)); eq15 := isolate(%, w[i])

k[i]*(t*w[i]+y*l[i]+x)+eta[i]

 

k[i]^2*w[i]*exp(k[i]*(t*w[i]+y*l[i]+x)+eta[i])+alpha*k[i]^4*exp(k[i]*(t*w[i]+y*l[i]+x)+eta[i])+beta*k[i]^2*l[i]^2*exp(k[i]*(t*w[i]+y*l[i]+x)+eta[i])+a*k[i]^2*exp(k[i]*(t*w[i]+y*l[i]+x)+eta[i])+b*k[i]^2*l[i]*exp(k[i]*(t*w[i]+y*l[i]+x)+eta[i])

 

w[i] = -alpha*k[i]^2-beta*l[i]^2-b*l[i]-a

(18)

eqf := f(x, y, t) = 1+eval(exp(thetai), eq15)

f(x, y, t) = 1+exp(k[i]*((-alpha*k[i]^2-beta*l[i]^2-b*l[i]-a)*t+l[i]*y+x)+eta[i])

(19)

eq17 := u(x, y, t) = R*(diff(ln(f(x, y, t)), x))

u(x, y, t) = R*(diff(f(x, y, t), x))/f(x, y, t)

(20)

eval(eq17, eqf); simplify(eval(pde, %)); sort([solve(%, R)]); eq17 := eval(eq17, R = simplify(%[2]))

[0, 2]

 

u(x, y, t) = 2*(diff(f(x, y, t), x))/f(x, y, t)

(21)

eq19 := eval(eq17, eqf)

u(x, y, t) = 2*k[i]*exp(k[i]*((-alpha*k[i]^2-beta*l[i]^2-b*l[i]-a)*t+l[i]*y+x)+eta[i])/(1+exp(k[i]*((-alpha*k[i]^2-beta*l[i]^2-b*l[i]-a)*t+l[i]*y+x)+eta[i]))

(22)

M := eval(rhs(eq19), i = 1)

2*k[1]*exp(k[1]*(t*(-alpha*k[1]^2-beta*l[1]^2-b*l[1]-a)+y*l[1]+x)+eta[1])/(1+exp(k[1]*(t*(-alpha*k[1]^2-beta*l[1]^2-b*l[1]-a)+y*l[1]+x)+eta[1]))

(23)

simplify(eq19)

u(x, y, t) = 2*k[i]*exp(-alpha*t*k[i]^3+((-beta*l[i]^2-b*l[i]-a)*t+y*l[i]+x)*k[i]+eta[i])/(1+exp(-alpha*t*k[i]^3+((-beta*l[i]^2-b*l[i]-a)*t+y*l[i]+x)*k[i]+eta[i]))

(24)

pdetest(eq19, pde)

0

(25)

#third example which is so different and really i don't know how the author reach this point? which is diff(arctan(f),x)?

NULL

restart

with(PDEtools)

with(LinearAlgebra)

NULL

with(SolveTools)

_local(gamma)

undeclare(prime)

`There is no more prime differentiation variable; all derivatives will be displayed as indexed functions`

(26)

declare(u(x, y, z, t))

u(x, y, z, t)*`will now be displayed as`*u

(27)

declare(f(x, y, z, t))

f(x, y, z, t)*`will now be displayed as`*f

(28)

pde := diff(u(x, y, z, t), t)+6*u(x, y, z, t)^2*(diff(u(x, y, z, t), x))+diff(u(x, y, z, t), `$`(x, 3))+alpha*(diff(u(x, y, z, t), x))+beta*(diff(u(x, y, z, t), y))+delta*(diff(u(x, y, z, t), z))+lambda*(diff(u(x, y, z, t), x, t))+mu*(diff(u(x, y, z, t), `$`(t, 2)))

diff(u(x, y, z, t), t)+6*u(x, y, z, t)^2*(diff(u(x, y, z, t), x))+diff(diff(diff(u(x, y, z, t), x), x), x)+alpha*(diff(u(x, y, z, t), x))+beta*(diff(u(x, y, z, t), y))+delta*(diff(u(x, y, z, t), z))+lambda*(diff(diff(u(x, y, z, t), t), x))+mu*(diff(diff(u(x, y, z, t), t), t))

(29)

pde_linear, pde_nonlinear := selectremove(proc (term) options operator, arrow; not has((eval(term, u(x, y, z, t) = a*u(x, y, z, t)))/a, a) end proc, expand(pde))

diff(u(x, y, z, t), t)+diff(diff(diff(u(x, y, z, t), x), x), x)+alpha*(diff(u(x, y, z, t), x))+beta*(diff(u(x, y, z, t), y))+delta*(diff(u(x, y, z, t), z))+lambda*(diff(diff(u(x, y, z, t), t), x))+mu*(diff(diff(u(x, y, z, t), t), t)), 6*u(x, y, z, t)^2*(diff(u(x, y, z, t), x))

(30)

thetai := k[i]*(t*w[i]+y*l[i]+z*r[i]+x)+eta[i]; eval(pde_linear, u(x, y, z, t) = exp(thetai)); eq15 := isolate(%, w[i])

k[i]*(t*w[i]+y*l[i]+z*r[i]+x)+eta[i]

 

k[i]*w[i]*exp(k[i]*(t*w[i]+y*l[i]+z*r[i]+x)+eta[i])+k[i]^3*exp(k[i]*(t*w[i]+y*l[i]+z*r[i]+x)+eta[i])+alpha*k[i]*exp(k[i]*(t*w[i]+y*l[i]+z*r[i]+x)+eta[i])+beta*k[i]*l[i]*exp(k[i]*(t*w[i]+y*l[i]+z*r[i]+x)+eta[i])+delta*k[i]*r[i]*exp(k[i]*(t*w[i]+y*l[i]+z*r[i]+x)+eta[i])+lambda*k[i]^2*w[i]*exp(k[i]*(t*w[i]+y*l[i]+z*r[i]+x)+eta[i])+mu*k[i]^2*w[i]^2*exp(k[i]*(t*w[i]+y*l[i]+z*r[i]+x)+eta[i])

 

w[i] = (1/2)*(-lambda*k[i]-1+(-4*beta*mu*k[i]*l[i]-4*delta*mu*k[i]*r[i]+lambda^2*k[i]^2-4*mu*k[i]^3-4*alpha*mu*k[i]+2*lambda*k[i]+1)^(1/2))/(mu*k[i])

(31)

eqf := f(x, y, z, t) = 1+eval(exp(thetai), eq15)

f(x, y, z, t) = 1+exp(k[i]*((1/2)*(-lambda*k[i]-1+(-4*beta*mu*k[i]*l[i]-4*delta*mu*k[i]*r[i]+lambda^2*k[i]^2-4*mu*k[i]^3-4*alpha*mu*k[i]+2*lambda*k[i]+1)^(1/2))*t/(mu*k[i])+l[i]*y+r[i]*z+x)+eta[i])

(32)

eq17 := u(x, y, z, t) = R*(diff(ln(f(x, y, z, t)), x))

u(x, y, z, t) = R*((diff(diff(f(x, y, z, t), y), y))/f(x, y, z, t)-(diff(f(x, y, z, t), y))^2/f(x, y, z, t)^2)

(33)

eval(eq17, eqf); simplify(eval(pde, %)); sort([solve(%, R)]); eq17 := eval(eq17, R = simplify(%[2]))


 

Download F-series.mw

Thanks for any help!

Hi,

Ideas to remove the rank column (i.e., the first column displaying indices 1, 2, 3, ...) from my DataFrame?

Thanks

Q_DataFrame.mw

I'm no mechanical engineer, but are there any good failure analysis for stresses on different shapes of material in either maple or maplesim?  

I recall something, maybe, in maplesim or maple, possibly an application where I think I saw a graph with force increasing and then levelling off indicating the material broke?  I'm not exactly sure.  Maybe there are some posts somewhere but can't seem to find any. 

Hi

does anyone know when Maple Online Help will be up again?

Regards

Henning

Does Maple 2025 have a dark theme or GUI color customization?

Does this happen in Maple 2025?

Why when adding Physics:-Setup(assumingusesAssume = true): now Maple gives internal exception which can not even be cought?

interface(version);

`Standard Worksheet Interface, Maple 2024.2, Windows 10, October 29 2024 Build ID 1872373`

Physics:-Version();

`The "Physics Updates" version in the MapleCloud is 1849 and is the same as the version installed in this computer, created 2025, March 12, 12:37 hours Pacific Time.`

restart;

ode:=diff(y(x),x) = (ln(y(x))^2+2*_C1)^(1/2)*y(x);
sol:=y(x) = exp((-2*_C1)^(1/2))

diff(y(x), x) = (ln(y(x))^2+2*_C1)^(1/2)*y(x)

y(x) = exp((-2*_C1)^(1/2))

odetest(sol,ode) assuming positive;

-(ln(exp(I*2^(1/2)*_C1^(1/2)))^2+2*_C1)^(1/2)*exp(I*2^(1/2)*_C1^(1/2))

restart;

ode:=diff(y(x),x) = (ln(y(x))^2+2*_C1)^(1/2)*y(x);
sol:=y(x) = exp((-2*_C1)^(1/2)) ;

diff(y(x), x) = (ln(y(x))^2+2*_C1)^(1/2)*y(x)

y(x) = exp((-2*_C1)^(1/2))

Physics:-Setup(assumingusesAssume = true):

odetest(sol,ode) assuming positive;

Error, (in type/evalc/cx) too many levels of recursion

restart;

ode:=diff(y(x),x) = (ln(y(x))^2+2*_C1)^(1/2)*y(x);
sol:=y(x) = exp((-2*_C1)^(1/2)) ;

diff(y(x), x) = (ln(y(x))^2+2*_C1)^(1/2)*y(x)

y(x) = exp((-2*_C1)^(1/2))

Physics:-Setup(assumingusesAssume = false):

odetest(sol,ode) assuming positive;

-(ln(exp(I*2^(1/2)*_C1^(1/2)))^2+2*_C1)^(1/2)*exp(I*2^(1/2)*_C1^(1/2))

 

 

Download ode_test_with_physics_march_25_2025.mw

Dear Maple users

I have an Interactive Planck Curve working great in Maple 2023, but not in Maple 2024 and 2025. Can you explain why? When I drag in the Temperature slider it fails with the window: (in plottools:-getdata) range out of bounds. 

Is it a bug or has some command changed?

File attached.

Kind regards,

Erik

Planck_Curve.mw

Neither dragging the Maple Window to the screen edge nor Windows key & Arrow keys works on my
Windows 10 machine.

Is this only my installation?

Anything I can do get normal Windows windows behaviour back?

I've posted this issue in the beta forum for Maple previously, but apparently this issue was never addressed, so I am going to repost it here.

Contrary to Maple 2024, components like TextArea now ignore the general view zoom factor in Maple 2025.

I'll submit it as a software change request once Maple 2025 is on the list.

Hi all, I have recently started playing around with Maple after using Mathematica for years. I am trying to understand how to do pattern matching in Maple, and am being frustrated by the following example using indices:

patmatch(S[a],S[b::symbol])

I would expect this to evaluate to true when none of the symbols have been given other meanings, but this isn't the case. For the life of my I can't work out what I'm doing wrong, and have been unable to find an example of pattern matching with indices online. What am I missing here?

The equivalent statement using functions:

patmatch(S(a),S(b::symbol))

returns true as expected.

Many thanks in advance!

I have a student who has a problem when closing and opening a Maple file.

It seems as if Maple turns math fields into text, but still execute when using ! or !!!

The dark red part is written in a text field, but Maple still executes

If I try to write in a math field and executes, closes Maple and opens again, this does not happen, so it is not the file that is the problem.  The student is running 2024.2 version.

Can anyone explain the problem and how to solve it.

 

I am unable to add a comment or the file. I have tried several times, without any luck

Update 

Also, is there a way to disable the use of remember tables permanently in Maple? This causes me so much trouble and It is cause of why Maple behave differently at different times.

Help shows how to do it if one knows the name of the module or procedure. But Maple has 1000's of these. There does not seem to be a way to tell maple

          forget(all)

and have set once. (may be something I can put in the ini file, to disable this feature).

At the end of help it says

"As a special case, specifying f as an empty range allows for selective clearing of remember table entries from all remember tables in the system.  This requires a second argument, to indicate which entries to clear. For example, forget(..,x), which will clear all remembered entries in the system that reference x.  "

But what is x in the above?? If I do forget(..) it does not work.

---- end update ------------------------------------------------------------------------------------------------------------------

Adding printlevel:=20, I see simplify generate/runs through longer code the first time. The second time calling the same exact simplify code, now it shows it runs through much shorter code. 

I am assuming printlevel is behaving correctly each time.

This must be due to cache simplifies keeps somewhere, or some internal settings it updates from first time and this is what causes it to do shorter run second time.

Without doing restart, how can make force simplify to run through same code it did the first time and each time? i.e. as if it was called the very first time each time?

I tried forget, but it is not doing anything.

Here is worksheet.  The code is simply this

printlevel:=0;
restart;
printlevel:=20;
simplify(3*x^3/x+sin(x^2)/4);  #long printout

simplify(3*x^3/x+sin(x^2)/4);  #short printout

printlevel:=0;
forget(simplify,forgetpermanent = true,reinitialize=true);

printlevel:=20;
simplify(3*x^3/x+sin(x^2)/4); #still same short printout

So there is something else needs to be cleared? Only way to get the long printout is to do restart. but ofcourse I can't do restart in middle of a loop.

I tried gc() also, but had no effect. 

What other commands are there to do this? I do use Physics and it is on my libname.

printlevel:=0;

0

restart;

interface(version);

`Standard Worksheet Interface, Maple 2024.2, Windows 10, October 29 2024 Build ID 1872373`

Physics:-Version();

`The "Physics Updates" version in the MapleCloud is 1849 and is the same as the version installed in this computer, created 2025, March 12, 12:37 hours Pacific Time.`

libname;

"C:\Users\Owner\maple\toolbox\2024\Physics Updates\lib", "C:\Program Files\Maple 2024\lib"

printlevel:=20;

20

simplify(3*x^3/x+sin(x^2)/4);

{--> enter sin, args = x^2

{--> enter \`type/SymbolicInfinity\`, args = x^2

false

<-- exit \`type/SymbolicInfinity\` (now in sin) = false}

{--> enter \`sin/normal\`, args = x^2

{--> enter \`tools/sign\`, args = x^2

-x^2

1

<-- exit \`tools/sign\` (now in \`sin/normal\`) = 1}

1

-sin(x^2)

sin(x^2)

<-- exit \`sin/normal\` (now in sin) = sin(x^2)}

sin(x^2)

{--> enter \`trig/linear_in_Pi\`, args = x^2

{--> enter collect, args = x^2, Pi

{Pi}

{Pi}

{}

Pi

recursive

proc (x) options operator, arrow; x end proc

x^2

<-- exit collect (now in \`trig/linear_in_Pi\`) = x^2}

x^2

<-- exit \`trig/linear_in_Pi\` (now in sin) = x^2}

x^2

sin(x^2)

<-- exit sin (now at top level) = sin(x^2)}

{--> enter simplify, args = 3*x^2+(1/4)*sin(x^2)

false

{--> enter \`simplify/do\`, args = 3*x^2+(1/4)*sin(x^2)

{--> enter \`tools/membertype\`, args = Not(Or(algebraic, list, set, relation, range)), 3*x^2+(1/4)*sin(x^2)

false

<-- exit \`tools/membertype\` (now in \`simplify/do\`) = false}

{--> enter \`simplify/check_constant\`, args = 3*x^2+(1/4)*sin(x^2)

<-- exit \`simplify/check_constant\` (now in \`simplify/do\`) = false}

false

"top"

3*x^2+(1/4)*sin(x^2)

1

{}

{--> enter \`type/ratpoly\`, args = 3*x^2+(1/4)*sin(x^2), complex(numeric)

{x}

<-- exit \`type/ratpoly\` (now in \`simplify/do\`) = false}

{--> enter \`simplify/recurse\`, args = 3*x^2+(1/4)*sin(x^2)

3*x^2+(1/4)*sin(x^2)

<-- exit \`simplify/recurse\` (now in \`simplify/do\`) = 3*x^2+(1/4)*sin(x^2)}

3*x^2+(1/4)*sin(x^2)

[]

table( [ ] )

{3*x^2+(1/4)*sin(x^2)}

{--> enter \`simplify/check_constant\`, args = 3*x^2+(1/4)*sin(x^2)

<-- exit \`simplify/check_constant\` (now in \`simplify/do\`) = false}

false

{--> enter \`simplify/getkernels\`, args = 3*x^2+(1/4)*sin(x^2), false

{x^2, (1/4)*sin(x^2), 3*x^2+(1/4)*sin(x^2), sin(x^2)}

<-- exit \`simplify/getkernels\` (now in \`simplify/do\`) = {x^2, (1/4)*sin(x^2), 3*x^2+(1/4)*sin(x^2), sin(x^2)}}

{x^2, (1/4)*sin(x^2), 3*x^2+(1/4)*sin(x^2), sin(x^2)}

{--> enter \`simplify/getinds\`, args = {x^2, (1/4)*sin(x^2), 3*x^2+(1/4)*sin(x^2), sin(x^2)}

{power, trig}

<-- exit \`simplify/getinds\` (now in \`simplify/do\`) = {power, trig}}

{power, trig}

{--> enter \`simplify/sortinds\`, args = {power, trig}

53

48

[[power, 53], [trig, 48]]

[trig, power]

[trig, power]

<-- exit \`simplify/sortinds\` (now in \`simplify/do\`) = [trig, power]}

[trig, power]

3*x^2+(1/4)*sin(x^2)

3*x^2+(1/4)*sin(x^2)

[trig, power]

1

`simplify/trig`

3*x^2+(1/4)*sin(x^2)

3*x^2+(1/4)*sin(x^2), [power]

`simplify/power`

3*x^2+(1/4)*sin(x^2)

3*x^2+(1/4)*sin(x^2), []

3*x^2+(1/4)*sin(x^2)

{--> enter \`simplify/check_constant\`, args = 3*x^2+(1/4)*sin(x^2)

<-- exit \`simplify/check_constant\` (now in \`simplify/do\`) = false}

false

{--> enter \`simplify/getkernels\`, args = 3*x^2+(1/4)*sin(x^2), false

{x^2, (1/4)*sin(x^2), 3*x^2+(1/4)*sin(x^2), sin(x^2)}

<-- exit \`simplify/getkernels\` (now in \`simplify/do\`) = {x^2, (1/4)*sin(x^2), 3*x^2+(1/4)*sin(x^2), sin(x^2)}}

{}

{--> enter \`type/ratpoly\`, args = 3*x^2+(1/4)*sin(x^2), extended_numeric

{x}

<-- exit \`type/ratpoly\` (now in \`simplify/do\`) = false}

{--> enter \`simplify/getinds\`, args = {x^2, (1/4)*sin(x^2), 3*x^2+(1/4)*sin(x^2), sin(x^2)}

{power, trig}

<-- exit \`simplify/getinds\` (now in \`simplify/do\`) = {power, trig}}

{--> enter \`simplify/sortinds\`, args = {power, trig}

53

48

[[power, 53], [trig, 48]]

[trig, power]

[trig, power]

<-- exit \`simplify/sortinds\` (now in \`simplify/do\`) = [trig, power]}

[trig, power]

{--> enter \`simplify/power_exp\`, args = 3*x^2+(1/4)*sin(x^2)

3*x^2+(1/4)*sin(x^2)

false

3*x^2+(1/4)*sin(x^2)

3*x^2+(1/4)*sin(x^2)

3*x^2+(1/4)*sin(x^2)

3*x^2+(1/4)*sin(x^2)

3*x^2+(1/4)*sin(x^2)

true

<-- exit \`simplify/power_exp\` (now in \`simplify/do\`) = 3*x^2+(1/4)*sin(x^2)}

3*x^2+(1/4)*sin(x^2)

3*x^2+(1/4)*sin(x^2)

{--> enter \`simplify/check_constant\`, args = 3*x^2+(1/4)*sin(x^2)

<-- exit \`simplify/check_constant\` (now in \`simplify/do\`) = false}

false

{--> enter \`simplify/do/content\`, args = 3*x^2+(1/4)*sin(x^2)

1/4, 12*x^2+sin(x^2)

<-- exit \`simplify/do/content\` (now in \`simplify/do\`) = 3*x^2+(1/4)*sin(x^2)}

3*x^2+(1/4)*sin(x^2)

{--> enter \`simplify/recurse_on_constants\`, args = 3*x^2

3, x^2

<-- exit \`simplify/recurse_on_constants\` (now in \`simplify/do\`) = 3*x^2}

{--> enter \`simplify/recurse_on_constants\`, args = (1/4)*sin(x^2)

1/4, sin(x^2)

<-- exit \`simplify/recurse_on_constants\` (now in \`simplify/do\`) = (1/4)*sin(x^2)}

{--> enter \`simplify/recurse_on_constants\`, args = 3*x^2+(1/4)*sin(x^2)

0, 3*x^2+(1/4)*sin(x^2)

<-- exit \`simplify/recurse_on_constants\` (now in \`simplify/do\`) = 3*x^2+(1/4)*sin(x^2)}

3*x^2+(1/4)*sin(x^2)

<-- exit \`simplify/do\` (now in simplify) = 3*x^2+(1/4)*sin(x^2)}

3*x^2+(1/4)*sin(x^2)

{--> enter simplify, args = 3*x^2+(1/4)*sin(x^2), size, applysimplifysize = false

{--> enter \`simplify/do\`, args = 3*x^2+(1/4)*sin(x^2), size

false

3*x^2+(1/4)*sin(x^2), size

2

{}

[`simplify/size`]

table( [ ] )

{3*x^2+(1/4)*sin(x^2)}

3*x^2+(1/4)*sin(x^2)

<-- exit \`simplify/do\` (now in simplify) = 3*x^2+(1/4)*sin(x^2)}

3*x^2+(1/4)*sin(x^2)

<-- exit simplify (now in simplify) = 3*x^2+(1/4)*sin(x^2)}

3*x^2+(1/4)*sin(x^2)

<-- exit simplify (now at top level) = 3*x^2+(1/4)*sin(x^2)}

3*x^2+(1/4)*sin(x^2)

simplify(3*x^3/x+sin(x^2)/4);

value remembered (at top level): sin(x^2) -> sin(x^2)

{--> enter simplify, args = 3*x^2+(1/4)*sin(x^2)

false

value remembered (in simplify): \`simplify/do\`(3*x^2+(1/4)*sin(x^2)) -> 3*x^2+(1/4)*sin(x^2)

3*x^2+(1/4)*sin(x^2)

{--> enter simplify, args = 3*x^2+(1/4)*sin(x^2), size, applysimplifysize = false

3*x^2+(1/4)*sin(x^2)

<-- exit simplify (now in simplify) = 3*x^2+(1/4)*sin(x^2)}

3*x^2+(1/4)*sin(x^2)

<-- exit simplify (now at top level) = 3*x^2+(1/4)*sin(x^2)}

3*x^2+(1/4)*sin(x^2)

printlevel:=0;
forget(simplify,forgetpermanent = true,reinitialize=true);

0

printlevel:=20;

20

simplify(3*x^3/x+sin(x^2)/4);

value remembered (at top level): sin(x^2) -> sin(x^2)

{--> enter simplify, args = 3*x^2+(1/4)*sin(x^2)

false

value remembered (in simplify): \`simplify/do\`(3*x^2+(1/4)*sin(x^2)) -> 3*x^2+(1/4)*sin(x^2)

3*x^2+(1/4)*sin(x^2)

{--> enter simplify, args = 3*x^2+(1/4)*sin(x^2), size, applysimplifysize = false

3*x^2+(1/4)*sin(x^2)

<-- exit simplify (now in simplify) = 3*x^2+(1/4)*sin(x^2)}

3*x^2+(1/4)*sin(x^2)

<-- exit simplify (now at top level) = 3*x^2+(1/4)*sin(x^2)}

3*x^2+(1/4)*sin(x^2)

 

 

Download how_to_clear_simplify_cache_march_24_2025.mw

Anyone has Maple 2025 could check if same behaviour there also?

How to I generate and or export a plot without a white border or equivalently , just  the information inside the axes?

See example. Note that when I insert the content below, it fails to accurately copy the information( blue background). If you look at the attached maple file, it should be very clear what I'm after.

kill_plot_border_on_plot_generation_or_export.mw

restart

NULL

How do I make and export a plot without the white border or background? I want my export to only contain information inside the blue region.
 

plot(x^2, x = 0 .. 3, background = "Blue", axes = none)

plot(x^2, x = 0 .. 3, background = "Blue", axes = none)

 

 

When looking at the exported image you see that there is a white border around the blue region.

NULL

NULL

NULL

Download kill_plot_border_on_plot_generation_or_export.mw

First 22 23 24 25 26 27 28 Last Page 24 of 2425