Maple 2022 Questions and Posts

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

UNIVERSIDAD AUTÓNOMA METROPOLITANA
UNIDAD XOCHIMILCO

15º Foro de Investigación de las Matemáticas Aplicadas a las Ciencias Sociales "Reflexiones sobre Educación y Matemáticas”,

"Learning of mathematical functions using applications with Maple, for students of Social Sciences"

The students of the first cycles have a low level of learning in the subject of functions, and the arrival of the pandemic worsened the understanding of this content. Increasing the use of ICT in great magnitude improving learning.
To determine the relationship between learning and mathematical functions using applications with Maple, for students of Social Sciences. The experimental method was used using the scientific software Maple applied to students of Social Sciences.

In Spanish.

 

Lenin Araujo Casillo

Ambassador of Maple

 

 

I create a plot, then later on, I want to use the same view for a second plot or using the same starting x, ending x and starting y and ending y. For reasons no need to get into into, I need to do this and I have no access to this information at this time. I only have access to the p variable used to store the plot into as in this example below.

I am not sure what is the correct way to do read this information from the PLOTS structure as I never used it before. 

Help describes the PLOTS structure under "PLOT and PLOT3D Data Structures" , but do not see how is one supposed to read different parts of it. I could have missed it. Maple help pages are very hard for me to read in order to obtain the information needed. From help it says:

The Maple plotting functions, plot, plot3d, and others, produce PLOT and PLOT3D data structures describing the images to be displayed.

By trial and error, for standard plot this worked

p:=plot(sin(x),x=-1..10):
op([4,1,2,2],p)

returns

           "originalview" = [-0.9862500000 .. 9.9862500000, -1.0000000000 .. 1.0000000000]

I see also that command plottools:-getdata(p):  returns the data. So I could also do (it is stored in matrix, in third entry):

p0:=plottools:-getdata(p);
startingx:=p0[3][1,1];
startingy:=p0[3][1,2];
endingx:=p0[3][-1,1];
endingy:=p0[3][-1,2];

Will the above work all the time? should this command be used to obtain this information or is there a better way?

When I lprint(p) I see these fields have actual names. For example  , here is screen shot of lprint(p)  

 

it looks like  a RECORD data structure. But when I tried p:-originalview  Error, `p` does not evaluate to a module 

The question is: What is the correct way to find what x range and y range was used for an earlier plot, given one has access only to p variable used to store the output of the plot command?  This is for 2D plot only.

I have differential equation with x as independent variable that I want to convert to state space representation.

But DynamicSystems will not accept y(x) as the output variable, since it defaults to y(t).

Help under "Description of the Model of a Linear System Object" says it is possible to change the independent variable by changing continuoustimevar setting. But help does not give an example how to do this and all my tries failed.

How to do this? Attached is worksheet showing the problem

interface(version);

`Standard Worksheet Interface, Maple 2022.1, Windows 10, May 26 2022 Build ID 1619613`

restart;
ode:=diff(y(x),x$2)+y(x) = 0;
DynamicSystems:-DiffEquation(ode,'outputvariable'=[y(x)]);

diff(diff(y(x), x), x)+y(x) = 0

Error, (in DynamicSystems:-DiffEquation) missing output(s): {y(t)}

restart;
ode := diff(y(t),t$2) + y(t) =0;
sys:=DynamicSystems:-DiffEquation(ode,'outputvariable'=[y(t)]);

ode := diff(y(t), t, t)+y(t) = 0

_m2541722345344

Download DS_problem.mw

 

Using t=0 .. 3*Pi the plot is truncated. Changing the 3*Pi to a number, then the full plot shows.

Also keeping 3*Pi but changing y=-1..1 to y=-1.01 .. 1.01 now the full plot shows again.

Is the above normal behaviour or it it a bug?


 

interface(version);

`Standard Worksheet Interface, Maple 2022.1, Windows 10, May 26 2022 Build ID 1619613`

restart;
ode := diff(y(t), t$2) + y(t)=0;
DEtools:-DEplot(ode, y(t), t=0 .. 3*Pi, y=-1 .. 1,[[y(0)=1,D(y)(0)=0]],linecolor=blue);

diff(diff(y(t), t), t)+y(t) = 0

#replacing 3*Pi by a number, then it shows the full plot
restart;
ode := diff(y(t), t$2) + y(t)=0;
DEtools:-DEplot(ode, y(t), t=0 .. 10, y=-1 .. 1,[[y(0)=1,D(y)(0)=0]],linecolor=blue);

diff(diff(y(t), t), t)+y(t) = 0

#keeping 3*Pi but changing the y range, it now also show the full plot
restart;
ode := diff(y(t), t$2) + y(t)=0;
DEtools:-DEplot(ode, y(t), t=0 .. 3*Pi, y=-1.01 .. 1.01,[[y(0)=1,D(y)(0)=0]],linecolor=blue);

diff(diff(y(t), t), t)+y(t) = 0

 


 

Download strange_result_of_DEplot.mw

 

I want to collect up the equation terms by the numerical value of the terms coefficient? Have tried sort collect combine...
So far the best I have come up with is nops(indets(on each term). And put them in seperate lists. This still doesn't quiet do the trick.
I am looking to achieve. Would to happy to have then as seperate lists or equations.

(a_1^5+a_2^5...)+5(a_1^4a_2+a_1^4a_3....)+10(a_1^3a_2^2 ....)+20(  ....   )+......+60(a_1^2a_2a_3a_4+ a_1a_2^2a_3a_4....)


 

restart

pn := (a[1]+a[2]+a[3]+a[4])^5

(a[1]+a[2]+a[3]+a[4])^5

pn1 := expand(pn)

a[1]^5+5*a[1]^4*a[2]+5*a[1]^4*a[3]+5*a[1]^4*a[4]+10*a[1]^3*a[2]^2+20*a[1]^3*a[2]*a[3]+20*a[1]^3*a[2]*a[4]+10*a[1]^3*a[3]^2+20*a[1]^3*a[3]*a[4]+10*a[1]^3*a[4]^2+10*a[1]^2*a[2]^3+30*a[1]^2*a[2]^2*a[3]+30*a[1]^2*a[2]^2*a[4]+30*a[1]^2*a[2]*a[3]^2+60*a[1]^2*a[2]*a[3]*a[4]+30*a[1]^2*a[2]*a[4]^2+10*a[1]^2*a[3]^3+30*a[1]^2*a[3]^2*a[4]+30*a[1]^2*a[3]*a[4]^2+10*a[1]^2*a[4]^3+5*a[1]*a[2]^4+20*a[1]*a[2]^3*a[3]+20*a[1]*a[2]^3*a[4]+30*a[1]*a[2]^2*a[3]^2+60*a[1]*a[2]^2*a[3]*a[4]+30*a[1]*a[2]^2*a[4]^2+20*a[1]*a[2]*a[3]^3+60*a[1]*a[2]*a[3]^2*a[4]+60*a[1]*a[2]*a[3]*a[4]^2+20*a[1]*a[2]*a[4]^3+5*a[1]*a[3]^4+20*a[1]*a[3]^3*a[4]+30*a[1]*a[3]^2*a[4]^2+20*a[1]*a[3]*a[4]^3+5*a[1]*a[4]^4+a[2]^5+5*a[2]^4*a[3]+5*a[2]^4*a[4]+10*a[2]^3*a[3]^2+20*a[2]^3*a[3]*a[4]+10*a[2]^3*a[4]^2+10*a[2]^2*a[3]^3+30*a[2]^2*a[3]^2*a[4]+30*a[2]^2*a[3]*a[4]^2+10*a[2]^2*a[4]^3+5*a[2]*a[3]^4+20*a[2]*a[3]^3*a[4]+30*a[2]*a[3]^2*a[4]^2+20*a[2]*a[3]*a[4]^3+5*a[2]*a[4]^4+a[3]^5+5*a[3]^4*a[4]+10*a[3]^3*a[4]^2+10*a[3]^2*a[4]^3+5*a[3]*a[4]^4+a[4]^5

els := convert({op(pn1)}, list)

[a[1]^5, a[2]^5, a[3]^5, a[4]^5, 5*a[1]*a[2]^4, 5*a[1]*a[3]^4, 5*a[1]*a[4]^4, 10*a[1]^2*a[2]^3, 10*a[1]^2*a[3]^3, 10*a[1]^2*a[4]^3, 10*a[1]^3*a[2]^2, 10*a[1]^3*a[3]^2, 10*a[1]^3*a[4]^2, 5*a[1]^4*a[2], 5*a[1]^4*a[3], 5*a[1]^4*a[4], 5*a[2]*a[3]^4, 5*a[2]*a[4]^4, 10*a[2]^2*a[3]^3, 10*a[2]^2*a[4]^3, 10*a[2]^3*a[3]^2, 10*a[2]^3*a[4]^2, 5*a[2]^4*a[3], 5*a[2]^4*a[4], 5*a[3]*a[4]^4, 10*a[3]^2*a[4]^3, 10*a[3]^3*a[4]^2, 5*a[3]^4*a[4], 20*a[1]*a[2]*a[3]^3, 20*a[1]*a[2]*a[4]^3, 30*a[1]*a[2]^2*a[3]^2, 30*a[1]*a[2]^2*a[4]^2, 20*a[1]*a[2]^3*a[3], 20*a[1]*a[2]^3*a[4], 20*a[1]*a[3]*a[4]^3, 30*a[1]*a[3]^2*a[4]^2, 20*a[1]*a[3]^3*a[4], 30*a[1]^2*a[2]*a[3]^2, 30*a[1]^2*a[2]*a[4]^2, 30*a[1]^2*a[2]^2*a[3], 30*a[1]^2*a[2]^2*a[4], 30*a[1]^2*a[3]*a[4]^2, 30*a[1]^2*a[3]^2*a[4], 20*a[1]^3*a[2]*a[3], 20*a[1]^3*a[2]*a[4], 20*a[1]^3*a[3]*a[4], 20*a[2]*a[3]*a[4]^3, 30*a[2]*a[3]^2*a[4]^2, 20*a[2]*a[3]^3*a[4], 30*a[2]^2*a[3]*a[4]^2, 30*a[2]^2*a[3]^2*a[4], 20*a[2]^3*a[3]*a[4], 60*a[1]*a[2]*a[3]*a[4]^2, 60*a[1]*a[2]*a[3]^2*a[4], 60*a[1]*a[2]^2*a[3]*a[4], 60*a[1]^2*a[2]*a[3]*a[4]]

NULL

add(els[i], i = 1 .. nops(els))

a[1]^5+5*a[1]^4*a[2]+5*a[1]^4*a[3]+5*a[1]^4*a[4]+10*a[1]^3*a[2]^2+20*a[1]^3*a[2]*a[3]+20*a[1]^3*a[2]*a[4]+10*a[1]^3*a[3]^2+20*a[1]^3*a[3]*a[4]+10*a[1]^3*a[4]^2+10*a[1]^2*a[2]^3+30*a[1]^2*a[2]^2*a[3]+30*a[1]^2*a[2]^2*a[4]+30*a[1]^2*a[2]*a[3]^2+60*a[1]^2*a[2]*a[3]*a[4]+30*a[1]^2*a[2]*a[4]^2+10*a[1]^2*a[3]^3+30*a[1]^2*a[3]^2*a[4]+30*a[1]^2*a[3]*a[4]^2+10*a[1]^2*a[4]^3+5*a[1]*a[2]^4+20*a[1]*a[2]^3*a[3]+20*a[1]*a[2]^3*a[4]+30*a[1]*a[2]^2*a[3]^2+60*a[1]*a[2]^2*a[3]*a[4]+30*a[1]*a[2]^2*a[4]^2+20*a[1]*a[2]*a[3]^3+60*a[1]*a[2]*a[3]^2*a[4]+60*a[1]*a[2]*a[3]*a[4]^2+20*a[1]*a[2]*a[4]^3+5*a[1]*a[3]^4+20*a[1]*a[3]^3*a[4]+30*a[1]*a[3]^2*a[4]^2+20*a[1]*a[3]*a[4]^3+5*a[1]*a[4]^4+a[2]^5+5*a[2]^4*a[3]+5*a[2]^4*a[4]+10*a[2]^3*a[3]^2+20*a[2]^3*a[3]*a[4]+10*a[2]^3*a[4]^2+10*a[2]^2*a[3]^3+30*a[2]^2*a[3]^2*a[4]+30*a[2]^2*a[3]*a[4]^2+10*a[2]^2*a[4]^3+5*a[2]*a[3]^4+20*a[2]*a[3]^3*a[4]+30*a[2]*a[3]^2*a[4]^2+20*a[2]*a[3]*a[4]^3+5*a[2]*a[4]^4+a[3]^5+5*a[3]^4*a[4]+10*a[3]^3*a[4]^2+10*a[3]^2*a[4]^3+5*a[3]*a[4]^4+a[4]^5

L1 := []; L2 := []; L3 := []; L4 := []; for i to nops(els) do if nops(indets(els[i])) = 1 then L1 := [op(L1), els[i]] elif nops(indets(els[i])) = 2 then L2 := [op(L2), els[i]] elif nops(indets(els[i])) = 3 then L3 := [op(L3), els[i]] else L4 := [op(L4), els[i]] end if end do; L1; L2; L3; L4

[60*a[1]*a[2]*a[3]*a[4]^2, 60*a[1]*a[2]*a[3]^2*a[4], 60*a[1]*a[2]^2*a[3]*a[4], 60*a[1]^2*a[2]*a[3]*a[4]]

indets(els[7])

{a[1], a[4]}

NULL

indets(els(5))

{}

`~`[op](1 .. -1, L2)

[5, a[1], a[2]^4, 5, a[1], a[3]^4, 5, a[1], a[4]^4, 10, a[1]^2, a[2]^3, 10, a[1]^2, a[3]^3, 10, a[1]^2, a[4]^3, 10, a[1]^3, a[2]^2, 10, a[1]^3, a[3]^2, 10, a[1]^3, a[4]^2, 5, a[1]^4, a[2], 5, a[1]^4, a[3], 5, a[1]^4, a[4], 5, a[2], a[3]^4, 5, a[2], a[4]^4, 10, a[2]^2, a[3]^3, 10, a[2]^2, a[4]^3, 10, a[2]^3, a[3]^2, 10, a[2]^3, a[4]^2, 5, a[2]^4, a[3], 5, a[2]^4, a[4], 5, a[3], a[4]^4, 10, a[3]^2, a[4]^3, 10, a[3]^3, a[4]^2, 5, a[3]^4, a[4]]

NULL

op(2, L2[1])

a[1]

op(3, L2[1])

a[2]^4``

Download 30-7-22_Q_sort_equation_by_numerical_coeffs.mw

 

Dear All,

I have a question about "fraddiff" command to compute the fractional derivative of a function.
I need to produce  a procedure to manually compute Caputo fractional derivative of a function, instead of using "fracdiff", as the following:

Frac_C:=proc()
description "Frac_C(function,lower bound, variable (upper bound), order of differentiation)";
a:=args[2];
x:=args[3];
alpha:=args[4];
f:=unapply(args[1],args[3]);
m:=ceil(alpha);
return 1/GAMMA(m-alpha)*int((x-tau)^(m-alpha-1)*diff(f(tau),tau$m),tau=a..x);
end proc;

when I call the above procedure, as Frac_C(x^(3.4),0,x,3/4), Maple is not able to calculate the integral defined in the Caputo fractional derivative. However, I saw the pre-defined Maple command, namely fracdiff, is able to do.
Where is the trouble?
can anyone help me?

It is worth mentioning that I can calculate the fractional derivative of a functional by procedure "Frac_C()" when I try to use it at the given x as the following which is not desirable for me.
evalf(subs(x=2,Frac_C(x^(3.4),0,x,3/4)));
evalf(subs(x=2,fracdiff(x^(3.4),x,3/4)));

Best wishes

Download a.mw

The question is in the picture.

y(x) is the result of the last calculation. How do I apply diff to the last result?

Thanks!

Given two terms in expression of type  `+` where the first is rational and the second is not, I wanted to combine both under on common denominator to obtain one term (not `+` any more).

I expected that combine will do that.

restart;
expr:=A/B+C;
combine(expr);

But the above leaves the original expression as is. Ofcourse I can just do

numer(expr)/denom(expr);

Here is screen shot

My question is why combine does not do that automatically? For reference, Mathematica command Together is the equivalent to Maple combine and this is what it does

Which is what one would expect to happen. 

I am just trying to understand the logic why Maple's combine did not work as one would expect. That is all. I looked at help and tried different option to combine, but non worked.

Is there  a specific type name for vectors in Physics[Vectors]?  Specifically, Let's say we want to write a proc whose argument is expected to be a (Physics) Vector, as in  these (trivial) demos:

with(Physics[Vectors]);

f := proc(a_::???)
    return a_ . a_;
end proc:

g := proc(a_::???, b_::???)
    return a_ &x b_;
end proc:

What do we put in place of "???".

Maple knows how to obtain differntials using D.

So typing  D(x*y) it gives   D(x)*y+x*D(y)

But what I want is given as input  D(x)*y+x*D(y) have Maple return back D(x*y)

Nothing I tried work. I tried simplify and convert(...,D) 

I am looking for a function that takes an expression with differentials like the above output, and return, if possible ONE differnetial in the form  D(  f(x,y) )

What I mean, given as INPUT any of these expressions on the RHS in the image below

To return back  the  D(...)  in the LHS above. I know Maple can do it going from the LHS to the RHS. But I want the other way around.

Does Maple support such operations?

Maple 2022.1

To Maple support,. 

fyi,

internal error generated on this ode when trying odetest
 

interface(version);

`Standard Worksheet Interface, Maple 2022.1, Windows 10, May 26 2022 Build ID 1619613`

restart;

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

x^3*(diff(diff(diff(y(x), x), x), x))+x^2*(diff(diff(y(x), x), x))-3*x*(diff(y(x), x))+(x-1)*y(x) = 0

Error, (in odetest/series) complex argument to max/min: 1/4800*((-79*I+3*83^(1/2))*3^(1/2)+9*I*83^(1/2)-79)*(316+12*83^(1/2)*3^(1/2))^(2/3)+1/12*I*(316+12*83^(1/2)*3^(1/2))^(1/3)*3^(1/2)-1/12*(316+12*83^(1/2)*3^(1/2))^(1/3)+20/3


 

Download problem_odetest_july_23_2022.mw

 

Update 2 years later

FYI, This error is still not fixed in Maple 2024

restart;

interface(version);

`Standard Worksheet Interface, Maple 2024.1, Windows 10, June 25 2024 Build ID 1835466`

Physics:-Version();

`The "Physics Updates" version in the MapleCloud is 1793 and is the same as the version installed in this computer, created 2024, August 25, 9:6 hours Pacific Time.`

Order:=4;
ode:=x^2*diff(y(x),x$2)+x^2*diff(y(x),x)+y(x)=0;
maple_sol:=dsolve(ode,y(x),'series','point'=0);
odetest(maple_sol,ode,'series','point'=0);

4

x^2*(diff(diff(y(x), x), x))+x^2*(diff(y(x), x))+y(x) = 0

y(x) = c__1*x^(1/2-((1/2)*I)*3^(1/2))*(series(1-((1/2-((1/2)*I)*3^(1/2))/((1/2-((1/2)*I)*3^(1/2))^2+3/2-((1/2)*I)*3^(1/2)))*x+((3/2-((1/2)*I)*3^(1/2))*(1/2-((1/2)*I)*3^(1/2))/(((1/2-((1/2)*I)*3^(1/2))^2+3/2-((1/2)*I)*3^(1/2))*((1/2-((1/2)*I)*3^(1/2))^2+9/2-((3/2)*I)*3^(1/2))))*x^2-((5/2-((1/2)*I)*3^(1/2))*(3/2-((1/2)*I)*3^(1/2))*(1/2-((1/2)*I)*3^(1/2))/(((1/2-((1/2)*I)*3^(1/2))^2+3/2-((1/2)*I)*3^(1/2))*((1/2-((1/2)*I)*3^(1/2))^2+9/2-((3/2)*I)*3^(1/2))*((1/2-((1/2)*I)*3^(1/2))^2+19/2-((5/2)*I)*3^(1/2))))*x^3+O(x^4),x,4))+c__2*x^(1/2+((1/2)*I)*3^(1/2))*(series(1-((1/2+((1/2)*I)*3^(1/2))/((1/2+((1/2)*I)*3^(1/2))^2+3/2+((1/2)*I)*3^(1/2)))*x+((3/2+((1/2)*I)*3^(1/2))*(1/2+((1/2)*I)*3^(1/2))/(((1/2+((1/2)*I)*3^(1/2))^2+3/2+((1/2)*I)*3^(1/2))*((1/2+((1/2)*I)*3^(1/2))^2+9/2+((3/2)*I)*3^(1/2))))*x^2-((5/2+((1/2)*I)*3^(1/2))*(3/2+((1/2)*I)*3^(1/2))*(1/2+((1/2)*I)*3^(1/2))/(((1/2+((1/2)*I)*3^(1/2))^2+3/2+((1/2)*I)*3^(1/2))*((1/2+((1/2)*I)*3^(1/2))^2+9/2+((3/2)*I)*3^(1/2))*((1/2+((1/2)*I)*3^(1/2))^2+19/2+((5/2)*I)*3^(1/2))))*x^3+O(x^4),x,4))

Error, (in odetest/series) complex argument to max/min: 9/2-1/2*I*3^(1/2)

 


 

Download odetest_error_series_august_2024.mw

 

Will check again in 2-3 years and I am sure this bug will still not be fixed.

 

When displaying two tubeplots together, we may specify their colors at will, as long as they are different colors!  For instance, specifying red and green works correctly, but specifying red and red results in red and black!

See the attached worksheet.  Interestingly, when displaying the contents of the worksheet on this website, the colors are rendered correctly!  So don't go with what you see on this web page; look inside the worksheet instead.

restart;

kernelopts(version);

`Maple 2022.1, X86 64 LINUX, May 26 2022, Build ID 1619613`

with(plots):

Two intersecting tori colored red and green -- works as expected:

display(
        tubeplot([cos(t), 0, sin(t)], t=-Pi..Pi, radius=0.2),
        tubeplot([cos(t), sin(t), 0], t=-Pi..Pi, radius=0.2),
style=surface, color=[red,green]);

When we set both colors to red, one of the surfaces is painted black!  Why?

Please note: This website displays the colors corectly as red and red.  But

within the worksheet the colors are read and black.

display(
        tubeplot([cos(t), 0, sin(t)], t=-Pi..Pi, radius=0.2),
        tubeplot([cos(t), sin(t), 0], t=-Pi..Pi, radius=0.2),
style=surface, color=[red,red]);

Specifying colors as red/red within the tubeplots still produces red/black!

display(
        tubeplot([cos(t), 0, sin(t)], t=-Pi..Pi, radius=0.2, color=red),
        tubeplot([cos(t), sin(t), 0], t=-Pi..Pi, radius=0.2, color=red),
style=surface);

Download mw.mw

PS: As a workaround, we may replace the red & red specification with
COLOR(RGB, 1, 0, 0) and
COLOR(RGB, 1, 0, 0.01)
which are different enough to make Maple happy, but produce essentially the same red color.

What is the correct way to write the explicit solution before calling odetest to verify it on an ode? is it

   sol:= y(x)= the RHS  (1)

or

   sol:= y(x) - the RHS = 0 (2)

I am asking because Maple sometimes gives very different result from odetest depending on which form the explicit solution is written. It is very hard to keep trying different forms each time.  Here is an example below.

Maple 2022.1 on windows 10.   Is this a bug? I do not think it should  make a difference, but it does and I have no idea why. Is there an option or way to make sure the same result is obtained each time regardless how the explicit soltion is written?

I have a theory as to why this might happen: When using (1) odetest sees y(x) on the LHS on its own, and then uses odetest  code internally designed for explicit solution testing.

When using (2), it sees y(x) not on its own on the LHS and it assumes this is then an implicit solution and uses odetest code internally meant for implicit solution testing, hence the difference in output.
 

restart;

ode:=sqrt(y(x))+(1+x)*diff(y(x),x)=0:
ic:=y(0) = 1:
mysol:=y(x)=1/4*(ln(1+x)-2)^2:
odetest(mysol,ode);

csgn(ln(1+x)-2)*ln((1+x)^(1/2))-csgn(ln(1+x)-2)+ln((1+x)^(1/2))-1

odetest((lhs-rhs)(mysol) = 0,ode);

y(x)^(1/2)+(1/2)*ln(1+x)-1

 

 


 

Download why_different_result.mw

Hi,

Is there a way to symbolically evaluate this integral?

int(sin(sqrt(-x^2 + 1)), x);

Any one has a trick to show in Maple that  x + sqrt(-2 + 2*sqrt(4*x^2 + 1))*sqrt(2 + 2*sqrt(4*x^2 + 1))/4; is zero for x<=0?

I'd like to get similar simplication as this below but in Maple, But everything I tried so far did not work. I am sure there is a way in Maple, but have not found it yet.

Below is the Maple worksheet

interface(version)

`Standard Worksheet Interface, Maple 2022.1, Windows 10, May 26 2022 Build ID 1619613`

restart;

r := x + sqrt(-2 + 2*sqrt(4*x^2 + 1))*sqrt(2 + 2*sqrt(4*x^2 + 1))/4;

x+(1/4)*(-2+2*(4*x^2+1)^(1/2))^(1/2)*(2+2*(4*x^2+1)^(1/2))^(1/2)

simplify(r) assuming x<0

x+(1/4)*(-2+2*(4*x^2+1)^(1/2))^(1/2)*(2+2*(4*x^2+1)^(1/2))^(1/2)

simplify(r,symbolic) assuming x<0

x+(1/4)*(-2+2*(4*x^2+1)^(1/2))^(1/2)*(2+2*(4*x^2+1)^(1/2))^(1/2)

simplify(r,sqrt) assuming x<0

x+(1/4)*(-2+2*(4*x^2+1)^(1/2))^(1/2)*(2+2*(4*x^2+1)^(1/2))^(1/2)

#showing it is zero for x<=0
plot(r,x=-10..1)

 

Download show_it_is_zero.mw

First 35 36 37 38 39 40 41 Page 37 of 43