Maple 2020 Questions and Posts

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

I am using Maple's CodeTools[Usage] to check memory measurement for a few lines of code i have.

One line is calling a custom function and the usage reports ~16 GB usage, the other line is a Groebner Basis computation and reports ~200 MB of memory usage. The usage is reported via 'bytesused' flag in the CodeTools[Usage] input.

However, GNU time command returns 6 GB total for the whole code iteration. Why is there such a discrepancy? Does maple's bytesused mean something different than GNU time's max resident set size?

When asking dsolve to use specific ode type to solve an ode, in particular, dAlembert type, which typically generate complicated solutions, sometimes dsolve solution shows up using parameter T.

But odetest gets confused by this expression it seems. I am not able to figure if I am doing something wrong in using odetest, or may be odetest does not know how to handle such form of a solution.

Here is an example. This ode

is of these types:

ode:=diff(y(x), x) = (y(x)^3 + 2*x*y(x)^2 + x^2*y(x) + x^3)/(x*(y(x) + x)^2);

By default, dsolve was smart to use homogeneous type to solve the ODE, as this gives the simplest solution. 

One can force dsolve to use the other types. When using dAlembert, odetest gives an error trying to verify any one of the solutions returned from dsolve due to the way the solution is returned. Here is the result

ode:=diff(y(x), x) = (y(x)^3 + 2*x*y(x)^2 + x^2*y(x) + x^3)/(x*(y(x) + x)^2);

No problem here for odetest. it can verify any of the above 3 solutions with no error generated.



Lets compare using dAlembert type

ode:=diff(y(x), x) = (y(x)^3 + 2*x*y(x)^2 + x^2*y(x) + x^3)/(x*(y(x) + x)^2);
sol:=[dsolve(ode,y(x),[dAlembert])]: #solution too complicated to show here


It looks like odetest does not know how to handle the form of the solution as returned by dsolve for this case. The problem is that each solution is actually made up of two parts, not just y(x) as normally is the case. One part defines something called X(T_) and the next part which is the solution y(x) uses this X(T) in it. 

Did I do something wrong, or is there a way around this, or is this by design?

Maple 2020.2

Hello everyone,

I should solve the diffusivity equation using Maple. The equation and BSc are as follow: 

pde := W*diff(C(z, t), z $ 2) - diff(C(z, t), t $ 1) = 0

bc[1] := C(x, 0) = 0;
bc[2] := D[1](f)(0, t) = VMK*D[1](f)(t)/ZRTWA;
bc[3] := C(infinity, t) = 0;

The equation should be solved using Laplace method. Can anyone please help me ?

I will appreciate your insightful comments.


If you are interested in experimenting with simple antenna arrays, this worksheet may prove useful.  I have provided a few examples of arrays that repeat in the x, y and z directions, but it will be very easy to tweak this tool if you are more interested in circular or triangular arrays.

This is one of the example arrays:


Hello there, 

First of all, happy new year to you and those around you!

One question: would you teach me how to replace the 'Zs/Z_AB' expression in the last term of the expression 'eq_5_m5'?

In other words, I wanted to see the 'desired' expression, but the 'subs()' command repalced the first occurance of the 'Zs/Z_AB' expression. 

(Perhaps, this applet behind of this edit box does not like the Microsoft Edge browser)

Maple Worksheet - Error

Failed to load the worksheet /maplenet/convert/ .


Maple Worksheet - Error

Failed to load the worksheet /maplenet/convert/ .



Recently, I encountered warnings and errors when size of my list is big. Maple says use array instead of list because of ... . When the list is just a list of numbers or a list of lists of the same size, I can rewrite it as an array, but how about a list like the following?


This is just an example. So the elements of this list are lists containing a vector (a point in the plane) and a number (a property of this point). One idea is to use two arrays, a two dimensional array for recording the vectors, and one 1-dimensional array for recording the numbers and keep in mind that the i-th number of the second array is related to the i-th vector (row) in the first array. But is there any possibility to have this data recorded similar to when we are using lists, i.e. similar to the above code?

How can I get the follow graph of paraboloidal surfaces (ξ=1,η=2) with the coordinate vectors ξ, η0 , φ0 as shown in the picture.

Realation between cartesian coordinates and paraboloidal :

x=1/2 (ξ2 - η2), y=ξ η cos(φ), z=ξ η sin(φ)

I wrote the following code:


S1 := PositionVector([1/2*(-eta^2 + 1), eta*cos(phi), eta*sin(phi)], cartesian[x, y, z]):

LH := PlotPositionVector(S1, eta = -2 .. 0, phi = 0 .. 2*Pi, coordcurve = [eta = -2, tangent = true, binormal = true, vectornum = 1], scaling = constrained)

S2 := PositionVector([1/2*(xi^2 - 4), 2*xi*cos(phi), 2*xi*sin(phi)], cartesian[x, y, z]):

LG := PlotPositionVector(S2, xi = -1 .. 1, phi = 0 .. 2*Pi, coordcurve = [xi = 1, tangent = true, vectornum = 1], scaling = constrained)


And I got the two paraboloidal surfaces with the vectors separently.How can I get only one graph with these two surfaces as shown in the picture (with ξ=1, η=2) ?

This website suggests that the viewer write equations containing differentials and use them to plot topographical lines.

I am basically familiar with equations containing derivatives, but not with equations containing differentials.

How can one employ these to draw the lines shown in the website's various plots of surfaces?


when trying to solve equation using fsolve, it returns just what i wrote and didn't solve. Can anyone help? I tried all i know. File is attached below.

Thanks a lot.