Maple 2022 Questions and Posts

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

I am trying to test types inside lists on the input to a procedure. Sometimes I can get this concept to work. 

This is a sample to show the problem. I need to know if the list has [ list[ $3] , Vector[column]($3) ] , or [ Vector[row]($3] , Vector [column]($3) ]

restart

 


        test:=proc(l1::[{[algebraic $ 3],'Vector[row](3, algebraic)'},'Vector[column](3, algebraic)'],l2::[{[algebraic $ 3],'Vector[row](3, algebraic)'},'Vector[column](3,algebraic)'])
        
        print("inputs recognised");

        end proc;

        

proc (l1::[{'Vector[row](3, algebraic)', [`$`(algebraic, 3)]}, 'Vector[column](3, algebraic)'], l2::[{'Vector[row](3, algebraic)', [`$`(algebraic, 3)]}, 'Vector[column](3, algebraic)']) print("inputs recognised") end proc

 

 

#  3d lines

l1:= [<1 | 5 | 7>, <3, 7, 9>]

[Vector[row](3, {(1) = 1, (2) = 5, (3) = 7}), Vector(3, {(1) = 3, (2) = 7, (3) = 9})]

l2:=[<-4 | 2 | 1>, <3, 8, -9>]

[Vector[row](3, {(1) = -4, (2) = 2, (3) = 1}), Vector(3, {(1) = 3, (2) = 8, (3) = -9})]

test(l1,l2)

Error, invalid input: test expects its 1st argument, l1, to be of type [{'Vector[row](3,algebraic)', [algebraic $ 3]}, 'Vector[column](3,algebraic)'], but received [Vector[row](3, [1,5,7]), Vector(3, [3,7,9])]

l3:= [[1 , 5 , 7], <3, 7, 9>]

[[1, 5, 7], Vector(3, {(1) = 3, (2) = 7, (3) = 9})]

l4:=[[-4 , 2 , 1], <3, 2, -9>]

[[-4, 2, 1], Vector(3, {(1) = 3, (2) = 2, (3) = -9})]

test(l3,l4)

Error, invalid input: test expects its 1st argument, l1, to be of type [{'Vector[row](3,algebraic)', [algebraic $ 3]}, 'Vector[column](3,algebraic)'], but received [[1, 5, 7], Vector(3, [3,7,9])]

type(l3[1],[algebraic $ 3])

true

type(l1[1],[algebraic $ 3])  

false

type(l1[1],'Vector[row](3, algebraic)')

true

type(l1[2],'Vector[column](3, algebraic)')

true

 

Download Q_2023-03-06_Proc_types_in_list_inputs.mw

This is second order ode solved using series method. This problem from textbook. The solution given by Maple does not match the book. I also solved this by hand and my hand solution agrees with the text book. I also solved this using Mathematica and its solution agrees with the book. 

Maple solution does not agree with the book for y2.  i.e. the general solution for this problem has the form 

    y= c_1 * y1 + c_2* (  y1 * ln(x)  +  y2 )

This is a Frobenius series method, since regular singular point and it falls into the hard case, where roots of indicial equation has difference of integer and where the second solution y2 can't be obtained using same method as y1 due to being undefined if using same method. So it require adjustment to the Frobenius series method.

This is ode

restart;
Order:=10;
ode:=x*diff(y(x),x$2)-3*diff(y(x),x)+x*y(x)=0;
dsolve(ode,y(x),'series')

Maple says that

   y2 = -144 - 36*x^2 + 1/2*x^6 - 25/1024*x^8 + ...)

First, it is missing x^4. And not able to make other coefficients match book. Book says y2 should be

   y2 = 1 + x^2/4 + x^4/64 - (11 x^6)/2304 + ....

And that is what I get and also Mathematica:

I do not have screen shot now of the page from the book to show. It is from an old textbook. Will try to make screen shot if needed.  This is problem 5, page 212 from SCHAUM's "differential equations" by Frank Ayers. 1952 edition. There is free PDF files on the net. Here is screen shot

My question is, why is Maple's series soluiton for the second basis solution y2 different? Could someone verify this? It also failes to verify it

restart;
ode:=x*diff(y(x),x$2)-3*diff(y(x),x)+x*y(x)=0;
Order:=10;
sol:=dsolve(ode,y(x),'series');
odetest(sol,ode,'series','point'=0)

 

Update

I've testsed few more problems, solved by hand and verified using Mathematica. All these problems give wrong solution by Maple for y_2. At least the solutions do not match the book and do not match my hand solution and do not match Mathematica. In all cases Mathematica's solution and my hand solution match the book. 

All these problem fall into the same difficult case of Frobenius series, where roots of indicial equation differ by integer and where y_2 can not be obtained directly using similar method used to obtain y_1. Other cases of Frobenius roots, Maple give complete correct general solutions. It is only this case where there seems to be something wrong.

In all of these problems below, y_1 solution is correct. It is the last series in y_2 shown which does not agree with book and it is this part which require using modifed method to obtain as explained on the book where these problems are solved from the above links. All the books used can be found online.

Please see attached worksheet.
 

interface(version);

`Standard Worksheet Interface, Maple 2022.2, Windows 10, October 23 2022 Build ID 1657361`

#problem  problem 5, page 212 from SCHAUM's "differential equations" by Frank Ayers. 1952 edition.
ode:=x*diff(y(x),x$2)-3*diff(y(x),x)+x*y(x)=0:
sol:=dsolve(ode,y(x),'series');
odetest(sol,ode,'series','point'=0)

y(x) = c__1*x^4*(series(1-(1/12)*x^2+(1/384)*x^4-(1/23040)*x^6+(1/2211840)*x^8+O(x^10),x,10))+c__2*(ln(x)*(series(9*x^4-(3/4)*x^6+(3/128)*x^8+O(x^10),x,10))+(series(-144-36*x^2+(1/2)*x^6-(25/1024)*x^8+O(x^10),x,10)))

Warning, unable to compute series necessary to test the given solution

FAIL

#page 19, example 5. NASA report TR R-390. By Gabriel Allen (PDF online)
ode:=x^2*diff(y(x),x$2)+x*diff(y(x),x)+(x^2-4)*y(x)=0:
sol:=dsolve(ode,y(x),'series');
odetest(sol,ode,'series','point'=0)

y(x) = c__1*x^2*(series(1-(1/12)*x^2+(1/384)*x^4-(1/23040)*x^6+(1/2211840)*x^8+O(x^10),x,10))+c__2*(ln(x)*(series(9*x^4-(3/4)*x^6+(3/128)*x^8+O(x^10),x,10))/x^2+(series(-144-36*x^2+(1/2)*x^6-(25/1024)*x^8+O(x^10),x,10))/x^2)

Warning, unable to compute series necessary to test the given solution

FAIL

# problem 20.6, page 114 from SCHAUM's "differential equations" by Richard Bronson. 1978 edition.
ode:=x^2*diff(y(x),x$2)+(x^2-2*x)*diff(y(x),x)+2*y(x)=0:
sol:=dsolve(ode,y(x),'series');
odetest(sol,ode,'series','point'=0)

y(x) = c__1*x^2*(series(1-x+(1/2)*x^2-(1/6)*x^3+(1/24)*x^4-(1/120)*x^5+(1/720)*x^6-(1/5040)*x^7+(1/40320)*x^8-(1/362880)*x^9+O(x^10),x,10))+c__2*(x*ln(x)*(series(-x+x^2-(1/2)*x^3+(1/6)*x^4-(1/24)*x^5+(1/120)*x^6-(1/720)*x^7+(1/5040)*x^8-(1/40320)*x^9+O(x^10),x,10))+x*(series(1-x+(1/4)*x^3-(5/36)*x^4+(13/288)*x^5-(77/7200)*x^6+(29/14400)*x^7-(223/705600)*x^8+(481/11289600)*x^9+O(x^10),x,10)))

Warning, unable to compute series necessary to test the given solution

FAIL

# problem 20.7, page 115 from SCHAUM's "differential equations" by Richard Bronson. 1978 edition.
ode:=x^2*diff(y(x),x$2)+x*diff(y(x),x)+(x^2-1)*y(x)=0:
sol:=dsolve(ode,y(x),'series');
odetest(sol,ode,'series','point'=0)

y(x) = c__1*x*(series(1-(1/8)*x^2+(1/192)*x^4-(1/9216)*x^6+(1/737280)*x^8+O(x^10),x,10))+c__2*(ln(x)*(series(x^2-(1/8)*x^4+(1/192)*x^6-(1/9216)*x^8+O(x^10),x,10))/x+(series(-2+(3/32)*x^4-(7/1152)*x^6+(35/221184)*x^8+O(x^10),x,10))/x)

Warning, unable to compute series necessary to test the given solution

FAIL

 


 

Download series_solutions_Frob_difference_integer.mw

 

restart

with(plottools)

with(plots)

with(CurveFitting)

Digits := 100

"g(t):=10*(e)^((-(t-4000)^(2))/(1300000))+6*(e)^((-(t-6900)^(2))/(1400000))"

proc (t) options operator, arrow, function_assign; 10*exp(-(1/1300000)*(t-4000)^2)+6*exp(-(1/1400000)*(t-6900)^2) end proc

(1)

p0 := plot(g(t), t = 0 .. 20000, color = green); plots[display]({p0})

 

````

v := .7

disp := 15

PDE := diff(C(x, t), t) = -v*(diff(C(x, t), x))+disp*(diff(C(x, t), x, x))

IBC := C(x, 0) = 0, C(0, t) = g(t), (D[1](C))(10000, t) = 0

pds := pdsolve(PDE, [IBC], time = t, range = 0 .. 10000, timestep = 10, numeric, spacestep = 10)

_m2712135358688

(2)

k := pds:-plot(x = 6500, t = 0 .. 20000, numpoints = 600); plots[display]({k})

 

NULL

"f(t):= unapply(Spline( getdata(k)[3][..,1],getdata(k)[3][..,2],'t',degree=2),t): "

D1 := 15

E := 20000

L := 6500

n := 200

lambda = `&Sqrt;`(n*Pi/L, (1/2)*D1+`&Sqrt;`((1/4)*D1^2+E(`n&pi;`/L)^2))

"p(t):=(&int;)[0]^(L)f(t)  (e(-lambda^2 t) )^dt :"

Error, Got internal error in Typesetting:-Parse : "invalid subscript selector"

"p(t):=(&int;)[0]^Lf(t)  e(-lambda^2 t) dt :"

 

C(x, t) = sum((2*sin(`n&pi;x`/L)*exp(1)/L*sin(`n&pi;x`/L))*p(t), n = 1 .. 500)

Error, (in sum) summation variable previously assigned, second argument evaluates to 200 = 1 .. 500

 

uu20000 := [seq(evalf(C(20000-i, 5000)), i = 0 .. 20000, 100)]

``

xx := [seq(i, i = 0 .. 20000, 100)]

p1 := pds:-plot(t = 33000, numpoints = 150, color = red)

plots[display]({p1})

Download 1.mw

Hi there,

i am working on an inverse z-transform in MAPLE. I would like to get the Impulse Response for a transferfunction with coefficients a, b, and c.

(z-1)^2/(a*z^2+b*z+c)

In maple, however I get the impulse response with sums over _alpha=RootOf(Z^2...). Through substitution of n = 0...end I get the right result, but for long impulse responses this takes quite a lot of time. With mathematica, however, the inverse z-transform is calculated to 1/(f(b,c)*(g(b,c,))^n+...), where f and g are functions of the coefficients. The function out of mathematica are quite faster to solve. How can I get Maple to solve this equation efficiently?

Greetings

What is the reason Maple likes to do this

arccos(sin(x));

         Pi/2 - arcsin(sin(x))

Both are correct, but the first has leaf count of only 3 and the second expression has leaf count of 11.

Surely the first is simpler to look at and read so the second form is not simpler.

What is the logic behind this automatic transformation? And did Maple always do this?

I teach high school math where we use Maple. Some times some students who use Maple 2022 on Mac computers both older and new version of the OS, experience that the document won't react to simple things like plot, solve of loading packages with the "with" command. 

Any idea could be causing this? Because the error goes away if we load a new document within Maple or restart the program.

Found integration problem which causes server.exe to crash each time. I hope this can be used to help find why server.exe keeps crashing much more than before in Maple 2022.

 

This happens each time. The above is a typical example of what I have been saying all the time above server.exe crashing. It should not do that. If it can not solve the problem, it should simply return.

I hope these problems will be fixed in Maple 2023.

Any one can figure why it crashes?

Attached worksheet.


 

interface(version);

`Standard Worksheet Interface, Maple 2022.2, Windows 10, October 23 2022 Build ID 1657361`

restart;

integrand:=(2*x^2022+1)/(x^2023+x);
int(integrand,x);

(2*x^2022+1)/(x^2023+x)


 

Download crash_feb_3_2023.mw

 

This question stems from a previous question that has been perfectly resolved by acer and Carl Love, but as Carl Love mentioned the foldl function, today I attempted to experience its functionality (In order to understand the foldl or foldr function). But I encountered a small issue. 

s:="[ (0, 1), (1, 2), (1, 10), (2, 3), (3, 4), (4, 5),
(4, 9), (5, 6), (6, 7), (7, 8),(8, 9), (10, 11), (11, 12),
(11, 16), (12, 13), (13, 14), (14, 15), (15, 16)]";
with(StringTools):
L1:= "()[]": L2:= "{}{}":
X:=foldl(SubstituteAll,s,op([L1[1],L2[1]]),op([L1[2],L2[2]]),op([L1[3],L2[3]]),op([L1[4],L2[4]]));

Error, (in StringTools:-SubstituteAll) expecting 3 arguments, but got 2

I find it strange that foldl doesn't recognize SubstituteAll with three arguments. 

Isn't s and op([L1[i], L2[i]]) providing three arguments? Of course, s is constantly changing.

 

The goal is to replace the above string with:

{ {0, 1}, {1, 2}, {1, 10}, {2, 3}, {3, 4}, {4, 5},

    {4, 9}, {5, 6}, {6, 7}, {7, 8},{8, 9}, {10, 11}, {11, 12},

    {11, 16}, {12, 13}, {13, 14}, {14, 15}, {15, 16}}

 

Hey guys

I have a question using the piecewise function:

fa := unapply(piecewise(0 < x and x < a, k1, a < x and x < b, k2), x);

simplify(fa(x)) assuming 0 < a, 0 < x and x < a;

It should return k1, but it doesn't. Does anyone have a solution?

Sincerely,

Oliveira

I was looking for rewriting some expression in simpler forms and ened up getting wrong values from maple

Is something wrong on how I'm using it or is this a bug ?

This is the code with the output:

> NumericStatus(invalid_operation=false):
> simplify(sum(
>         (A-B)
>         *(-1+combinat:-binomial(N-2,i))
>         *(A)^(i)
>         *(B)^(N-2-i)
>     ,i=0..N-2));
                                                    (N - 1)    (N - 1)
                                                   B        - A



> NumericStatus(invalid_operation);
                                                          false

 

This is the wrong answer, is missing the part with the binomial, somehow its set to zero but the NumericStatus is still telling that everythig is fine.
It has not issues when one replaces the N-2 with N,

> simplify(sum(
>         (A-B)
>         *(-1+combinat:-binomial(N,i))
>         *(A)^(i)
>         *(B)^(N-i)
>     ,i=0..N));
                                          (N + 1)    (N + 1)                  N
                                         B        - A        + (A - B) (A + B)

> NumericStatus(invalid_operation);
                                                          false

 

If I drop the (-1) in front I get the right contribution from the binomial regardless of using N or N-2

> simplify(sum(
>         (A-B)
>         *(combinat:-binomial(N-2,i))
>         *(A)^(i)
>         *(B)^(N-2-i)
>     ,i=0..N-2));
                                                   /A + B\N          N
                                                   |-----|  (A - B) B
                                                   \  B  /
                                                   -------------------
                                                               2
                                                        (A + B)

> NumericStatus(invalid_operation);
                                                          false

which is equal to (A+B)^(N-2)*(A-B)

If I use assume(N>2) it still gives the same result but this time is flagged ad an invalid operation (which is not supposed to).
Interesting enough also if I set assume(N>0) in the second example gives me invalid_operation=true but return the correct result.

Let a, b be arbitrary real parameters. I intend to compute something like: (with exact piecewise output) 

Optimization:-Maximize(8*x + 7*y, {5*y <= 6 - 9*b, -6*x - 4*y <= 8 - 5*a - 7*b, -4*x + 7*y <= -1 - 2*a - 7*b, -x + y <= 6 + 4*a - 5*b, 7*x + 5*y <= a + 4*b}, variables = {x, y}): # Error
Optimization:-Minimize((x - 1)^2 + (2*y - 1)^2, {x - 2*y <= 2*a - b + 1, x + 2*y <= a + b, 2*x - y <= a - b + 1}, variables = {x, y}): # Error

Unfortunately, these Maple codes are virtually invalid, and the relevant commands minimize, maximize, extrema, and Student[MultivariateCalculus][LagrangeMultipliers] do not support general inequality constraints. Is it possible to tackle these small-scale constrained parametric problems in Maple?

I run the following command.

$ maple2022/bin/maple -q problem.mpl

where problem.mpl is the following:

with(Student[Calculus1]):
ShowSolution(Diff(ln(x),x));

I get the following output.

Differentiation Steps
    Diff(ln(x),x)
▫    1. Apply the natural logarithm rule
        ◦ Recall the definition of the natural logarithm rule
        Diff(ln(x),x) = x^(-1)
    This gives:
    x^(-1)

I want the solver to use 1/x instead of x^(-1) in the output. How can I achieve this?

P.S. I require the output to be parsable, so using output=print to show fractions in a multi-line fashion is not a solution for me.

Hi! 

I've been working on a file in Maple, and saved it yesterday - but now I am not able to open it, as it is corrupted. I have been able to find the back up file, HOWEVER I am not able to load half of the file as Maple comes up with a "there was a problem loading your file....". Is there anything I can do to repair the back up file? 

Any help is greatly appreciated!

Back up file is here: C_Users_jonas_OneDrive_Skrivebord_Mat_B-A_Hjemmeopgavesæt_Opgavesæt_1115_MAS_-_Kopi.mw

I'm having trouble performing a direct operation, involving DotProduct, in the piecewise function. Attached is a document. I appreciate any contribution.

Regards,

Oliveira

Example2.mw

First 17 18 19 20 21 22 23 Last Page 19 of 43