Preben Alsholm

13511 Reputation

22 Badges

19 years, 142 days

MaplePrimes Activity


These are replies submitted by Preben Alsholm

@jestrup Sorry, now I get it. 
By "This could be relevant when using Maple for a test"  you mean that you don't want students to be able to access the AI formula assistant during a test.
As long as the students have a copy of Maple on their computers, I don't see any way you can do that except maybe for turning off your wi-fi.

@vv I tried the following for solve and for SolveTools:-SemiAlgebraic.
 

sol3:=solve({torus1<0,x>=0,y>=0,z>=0}, [x,y,z]);
numelems(sol3); # 3
sol2:=SolveTools:-SemiAlgebraic({torus1<0,x>=0,y>=0,z>=0}, [x,y,z]);
numelems(sol2); # 3
sol3[1];
sol2[1]; #same as above
sol3[2];
sol2[2]; #same as above
sol3[3];
sol2[3]; #same as above

sol3 and sol2 appears to say the same pairwise.

I understand the output from solve in this way:
 

restart;
torus:= (x^2+y^2+z^2 + R^2-r^2)^2 - 4*R^2*(x^2+y^2):
torus1:=eval(torus,[r=1,R=4]);
sol1:=solve(torus1<0, [x,y,z]); # It should be easy for Maple
numelems(sol1);
sol1[1]; # x = 0 is a requirement for this solution
sol1[2]; # x = 0 is also a requirement for this solution
### Thus this doesn't make any sense:
eval(sol1, [x=3,y=2,z=0]);

Note: From the output of eval(torus1, [x=3,y=2,z=0]) , however,  we can conlude that solve didn't find all solutions at all.

It works for me with a second order ode. In that case the equation is not turned into a system of first order.
 

restart;
ode:=diff(y(x),x)=0;

the_output:=Student:-ODEs:-ODESteps(ode,y(x));

latex(the_output)
########### 2nd order
ode := 3*diff(y(x), x, x) + 4*diff(y(x), x) + 2*y(x) = 0;

the_output:=Student:-ODEs:-ODESteps(ode,y(x));
latex(the_output);

MaplePrimes24-04-14_latex.mw

Note: If you continue the worksheet with the third order ode:
diff(y(x), x, x, x ) + 3*diff(y(x), x, x) + 4*diff(y(x), x) + 2*y(x) = 0;
Then after the "Too many levels of recursion" error the worksheet is ruined.
Try removing all output ( Ctrl+D), then after restart you are NOT back to normal.
You must copy the input code to a new worksheet.

I tried starting from x = 1 and found that for a solution to exist at zero in the limiting sense x -> 0 right,
it is necessary that D(y)(1) = 2*y(1).

restart;
ode:=x^2*diff(y(x),x$2)-2*y(x)=0;
sol1:=rhs(dsolve({ode,y(1)=y1,D(y)(1)=dy1}));
expand(sol1);
u:=-1/3*dy1/x + 2/3*y1/x; # The last 2 terms
expand(u*x*3);
solve(%,{y1});
sol12:=rhs(dsolve({ode,y(1)=dy1/2,D(y)(1)=dy1}));
plot(eval(sol12,dy1=2),x=0..1);
plots:-animate(plot,[sol12,x=0..1],dy1=-2..2);

@Aung Why do you insist on turning
2*hypergeom([1/2, -k/2], [1 - k/2], csc(omega*T)^2);
into standard functions?

If you have any reason for using that expression it should be OK without turning it into standard functions.

@dharr All of these work:
 

seq(convert(eval(y,k=2*p+1),StandardFunctions),p=0..10);

@Aung Austin Roche reported on the bug fix, not your problem!
What you want to do is still a mystery to me.
The title of your question is "how to sovle this diffenential equation in maple worksheet",
which suggests that you want to solve a differential equation.

Even if the integral could be found you don't have a differential equation:
What you have right now is:
 

eq:=int((1 - omega)^(k + 1), omega = 0 .. 1) = C*int((1 - sigma*sin(2*Pi*N))^k, N = 0 .. N);
## Now with Physics update 1717 OK with N=0..N
eq2:=simplify(eq) assuming k>-2;
# What do you want to do with eq2?

 

@nm I experimented a little. Reducing the degree of the denominator from 3/2 helps to prevent crash:

restart;
u:=Int(1/alpha^(3/2)*sin(1/2*3^(1/2)*ln(alpha))*sin(alpha)*3^(1/2),alpha = 0 .. x);
u1:=Int(1/alpha^(3/2-10^(-6))*sin(1/2*3^(1/2)*ln(alpha))*sin(alpha)*3^(1/2),alpha = 0 .. x);
value(u1); # 1499999/1000000 # No crash

I kept going:
 

restart;
u:=Int(1/alpha^(3/2)*sin(1/2*3^(1/2)*ln(alpha))*sin(alpha)*3^(1/2),alpha = 0 .. x);
u2:=Int(1/alpha^(3/2-10^(-16))*sin(1/2*3^(1/2)*ln(alpha))*sin(alpha)*3^(1/2),alpha = 0 .. x);
value(u2); # 3/2-10^(-16) No crash
u3:=Int(1/alpha^(3/2+10^(-16))*sin(1/2*3^(1/2)*ln(alpha))*sin(alpha)*3^(1/2),alpha = 0 .. x);
value(u3); # 3/2+10^(-16) No crash
value(u); #  3/2 Crash

So the exponent of the denominator being exactly 3/2 seems critical.

@nm I still got the crash after having renamed my maple.ini file.

I notice that C_R uses Windows 10. I use Windows 11, but that could hardly make any difference (?)

I get the crash in Windows and with Physics:-Version() 1715 and also with the previous 1714.
I also get the crash if I rename the Physics Updates folder 2024 to something else, in my case 2024_temp.

If I use the workaround proposed by Thomas Richard I don't get any crash.

@Aung Let us look at your equation after first having replaced N with x as variable of integration and pi with Pi.
Since you say that k is a material constant I suppose we may assume that it is positive:
But we only need k>-2.
 

eq:=int((1 - omega)^(k + 1), omega = 0 .. 1) = C*int((1 - sigma*sin(2*Pi*x))^k, x = 0 .. N);
eq2:=simplify(eq) assuming k>-2;
# What do you want to do with eq2?

 

@acer In this simple case the problem is just one of integration. So I tried this plot:
 

plot('int(Mt,0..t,numeric)',t=-10..10);

@omkardpd The plot produced in my answer, where the plot command picks the points, can also be produced like this, ehere we pick the points:
 

LL:=[seq]([z,temp_proc(z,2)],z=-2..3,.01):
plot(LL);
type(LL,listlist); #true
M:=Matrix(LL);
plot(M); 

Incidentally 3d plots can be produced very easily:
 

plot3d('temp_proc(x,y)',x=-2..3,y=-2..3);
plot3d(temp_proc,-2..3,-2..3); # A procedural version

Finding points first seems rather unneccessary, but could be done:
 

S:=seq(seq([x,y,temp_proc(x,y)],x=-2..3,0.1),y=-2..3,0.1):
S[5];
type([S],listlist);
plots:-matrixplot(Matrix([S]));

@ My problem was that I used your older version of sierp.
With the new one sierp and inv_sierp work fine!
I removed my reply when I realized that I was using the old sierp.

1 2 3 4 5 6 7 Last Page 1 of 226