Thomas Richard

Mr. Thomas Richard

2623 Reputation

12 Badges

12 years, 157 days
Maplesoft Europe GmbH
Technical professional in industry or government
Aachen, North Rhine-Westphalia, Germany

MaplePrimes Activity

These are answers submitted by Thomas Richard

A core dump should never happen, of course. But I cannot reproduce it with Maple 2020 on our Linux box.

Could you cross-check with Maple 2021, where we updated the GMP library from 5.1.1 to 6.2.0, please?

By the way, the factors of RSA-100 have been published 30 years ago.

Finally, if you ever have any floating-point result whose exact representation cannot be obtained directly (say, from numerical integration), try to apply Maple's identify command, which is in some sense the inverse operation of evalf.

This is just a copy&paste error; it lost the powering (exponentiation). Correct code is as follows:

GlobalSolve(x^3-y^3-x+y, {x^2+2*y<=6}, x=0..5, y=0..5);

The online help pages are just static exports of Maple's built-in help pages, and mapping their format to HTML has limitations, of course. Better use Maple's help browser directly. With the click of a button, you can copy the Examples section, or open the entire help page as a worksheet.

I'm not really familiar with that topic, but Maple 2020 introduced the LieAlgebrasOfVectorFields package; please see here for the description. If that's what you need, consider upgrading from Maple 2019.

In Maple 2021, released two weeks ago, this package has been enhanced by the new MapDE command, by the way.

If we supply a hint, pdsolve succeeds:

infolevel[pdsolve] := 5: # optional
eq1 := 2*m*(E + 8*Pi*epsilon/r)*f(r, t)/h^2 + R*diff(f(r, t), r $ 2)/r - diff(f(r, t), t $ 2)/(a^2*c^2) = 0;
iv1 := f(r, 0) = 0, f(R, t) = 0, D[1](f)(0, 0) = R;
sys := [eq1, iv1]:
Sol := pdsolve(sys, HINT=`*`);
pt := pdetest(Sol, sys);

However, the solution is complicated, involving Airy wave functions and their derivatives. I've been unable to simplify some of the pdetest outputs to 0...

It‘s easy to confirm Maple‘s result:

d := diff(u,x);


Here's another way, in case you don't want to use the method option:

B := sqrt((-4*u^(1/3)+1)*u^(4/3));
A := 1/(-12*u+3*u^(2/3)-3*B);
eA := evala(A);
ieA := int(eA,u);

For algebraic numbers or functions, evala is always recommended.

Just wrap the result into square brackets (list delimiters):

b := [SearchAll("-", a)];

Insert this between restart and the calculations:


I have not tested whether this is the minimal set of assumptions - please check.

... like this:

f := x -> sqrt(-x^2+20*x);
ieqn := 2*Pi*Int(f(x)*sqrt(1+diff(f(x),x)^2),x=0..h)=1005;
ceqn := combine(ieqn,'symbolic');
veqn := value(ceqn);
sol := solve(veqn,h);

There is also a SurfaceOfRevolution command in the Student:-Calculus1 package, but in this case, the elementary steps are more useful.

I'm not going to do all the work (weekend is coming!), but for a start, I have demonstrated the first part: getting rid of the old linalg stuff. Also made some adjustments, minor simplifications here and there. See attached worksheet:

For more hints on that topic, see the built-in documentation by entering ?examples,LinearAlgebraMigration.

You should be able to form the equation then. Replace evalm and matrix accordingly.

The error message is pretty clear, I think. Your system contains three unknown functions (aka dependent variables), but only two PDEs. So you will need to provide one more PDE. Initial and/or boundary conditions do not count in this context.

You just need to supply the list of new variables as the 3rd argument (named newvars in the documentation):

ode := dchange(tr1,PDE,[xi,U(xi)]);

However, the ODE obtained is different from what you expected...

It seems your PDE is missing the square of u(x,t) that have in the typeset formula.

Typically, I would recommend evalc as well, but you may also use


if you find that more readable.

3 4 5 6 7 8 9 Last Page 5 of 38