Preben Alsholm

MaplePrimes Activity


These are replies submitted by Preben Alsholm

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.

We need to know what MuligIndgange, M1, and RemoveList are.

I think, however, that we need to see the whole worksheet since you mention that the code works outside some procedure but not inside.
So use the fat green uparrow in the panel above to upload the worksheet.
This arrow is only visible while editing your question or reply.

@janhardo As far as I see there is basically only the way I gave when using evalindets.
Notice that you cannot simplify this to cos :
 

f:=t->cos(t);
simplify(eval(f));

But you can do:
 

indets(f(t));
evalindets(f(t),function,s->op(0,s));

I think that in the very old days, certainly several versions before Maple 12, f would just be cos.

@janhardo That can be done:
 

DEtools:-DEplot(sys,[x(t),y(t)],t=0..20,[[x(0) = 1, y(0) = 0]],x=-1..1,y=-1..1,stepsize=0.1);
DEtools:-DEplot(sys,[x(t),y(t)],t=0..20,[[x(0) = 1, y(0) = 0]],x=-1..1,y=-1..1,stepsize=0.1,animatecurves=true);
DEtools:-DEplot(sys2,[x(t),y(t)],t=0..200,[[x(0) = 1, y(0) = 0]],x=-20..1,y=-6..6,stepsize=0.1);
DEtools:-DEplot(sys2,[x(t),y(t)],t=0..200,[[x(0) = 1, y(0) = 0]],x=-20..1,y=-6..6,stepsize=0.1,animatecurves=true);

Using sys and sys2 from my answer above.

2 3 4 5 6 7 8 Last Page 4 of 229