![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |

restart:
a:= ;# (* Ausdruck eingeben *)
b:= ;# (* Ausdruck eingeben *)
c:= ;# (* Ausdruck eingeben *)
rand1:= ;# (* Randbedingung eingeben *)
rand2:= ;# (* Randbedingung eingeben *)
diffgl:= diff(diff(y(x),x),x)+a*diff(y(x),x)+b*y(x)=c ;
lsg:=dsolve({diffgl,y(0)=rand1,D(y)(0)=rand2},y(x));
Kontrolle
subs(",diffgl);
simplify(") ;
Falls sich die Differentialgleichung nicht symbolisch lösen läßt, so kann man in einem angegebenen Bereich von x eine numerische Interpolationsfunktion finden.
with(plots):
lsg1:=dsolve({diffgl,y(0)=rand1,D(y)(0)=rand2},y(x),numeric);
funk:=":
odeplot(funk,[x,y(x)],0..10);
# (* Beispiel *)
restart:
with(plots):
diffgl:=diff(y(x),x$2)+x*diff(y(x),x)+sin(x)*y(x)=0;
lsg1:=dsolve({diffgl,y(0)=6,D(y)(0)=-20},y(x),numeric);
funk:=":
odeplot(funk,[x,y(x)],0..10);