Kapitel Sechs:
Einfache Differentialgleichungen

dsolve
DEtools/DEplot
DEtools/dfieldplot

Es folgt eine kurze Vorstellung der Lösungsmöglichkeiten von einfachen gewöhnlichen Differentialgleichungen (ordinary differential equations - ODE) mit Maple V. Genauere und umfassendere Erläuterungen zu diesem Thema finden sich in der englischsprachigen Dokumentation:

Eine Differentialgleichung können Sie wie eine gewöhnliche Gleichung definieren, die n-te Ableitung von y(x) wird mit diff(y(x), x$n) ausgedrückt


> restart;

> dgl := diff(y(x), x)=2*x;

                                  d
                         dgl := ---- y(x) = 2 x
                                 dx

Die allgemeinen und speziellen Lösungen ermitteln Sie mit dsolve. dsolve ist auf die unterschiedlichsten Typen von Differentialgleichungen anwendbar.

> dsolve(dgl, y(x));

                                    2
                            y(x) = x  + _C1

Bei speziellen Lösungen wird der Anfangswert (initial value) zusammen mit der Differentialgleichung in geschweifte Klammern gesetzt.

> dsolve({dgl, y(0)=1}, y(x));

                                     2
                             y(x) = x  + 1

Die Lösungsfunktionen einer Differentialgleichung lassen sich mit DEplot aus dem Paket 'DEtools' graphisch darstellen. Dazu reicht die Differentialgleichung an sich, nicht deren Lösung(en).

Die allgemeine Lösung der obigen Differentialgleichung erster Ordnung 'dgl' lautet x^2+c und stellt graphisch eine Schar von nach oben geöffneten Normalparabeln dar, welche symmetrisch zur Ordinate angeordnet sind. DEplot verlangt als ersten Parameter die Differentialgleichung(en), als zweiten die enthaltenen Variablen in Form einer Liste (hier [x, y]), als dritten den Bereich der Unbestimmten (hier x) und als vierten eine Liste von Punkten, durch die die Integralkurven verlaufen (hier pts). Optionen können Sie ebenfalls angeben.


> with(plots):

> with(DEtools):

> pts := {[0, 0], [0, 1], [0.5, 2.5]};

> DEplot(dgl, [x, y], x=-2 .. 2, pts, scaling=constrained);

Ein Richtungsfeld (direction field) erzeugt dfieldplot (ebenfalls aus dem Paket 'DEtools'):


> plot1 := dfieldplot(dgl, [x, y], x=-2 .. 2, y=0 .. 6, 
> scaling=constrained):

> plot2 := DEplot(dgl, [x, y], x=-2 .. 2, pts, scaling=unconstrained):

> display({plot1, plot2});

Es folgen einige einfache Differentialgleichungen verschiedener Typen. y(x) kann auch durch die Variable y ersetzt werden, es sei denn, es ist Teil einer Ableitung.

Integration spezieller Differentialgleichungen 1. Ordnung vom Typ y' = f(ax + by + c):

 
> dgl := diff(y(x), x)=2*x-y;  # statt y auch y(x) möglich

                                d
                       dgl := ---- y(x) = 2 x - y
                               dx

> dsolve(dgl, y(x));

                     y(x) = 2 x - 2 + exp(- x) _C1

Integration spezieller Differentialgleichungen 1. Ordnung vom Typ y' = f(x / y):

> dgl := diff(y(x), x)=1+2*y/x;

                               d
                      dgl := ---- y(x) = 1 + 2 y/x
                              dx

> dsolve(dgl, y(x));

                                        2
                          y(x) = - x + x  _C1

Integration einer inhomogenen linearen Differentialgleichung 1. Ordnung y' + f(x) * y = g(x) (bei g(x) = 0 homogen):

> dgl := diff(y(x), x)+tan(x)*y=2*sin(x)*cos(x);

                   /  d      \
            dgl := |---- y(x)| + tan(x) y = 2 sin(x) cos(x)
                   \ dx      /

> dsolve(dgl, y(x));

                                     2
                    y(x) = - 2 cos(x)  + cos(x) _C1

Bernoulli-Differentialgleichungen:

> dgl := diff(y(x), x)+2*y(x)-y(x)^(-1)=0;

                        /  d      \              1
                 dgl := |---- y(x)| + 2 y(x) - ---- = 0
                        \ dx      /            y(x)

> dsolve(dgl, y(x));

                          2
                      y(x)  = 1/2 + exp(- 4 x) _C1

> solve(", y(x));

                               1/2                              1/2
     1/2 (2 + 4 exp(- 4 x) _C1)   , - 1/2 (2 + 4 exp(- 4 x) _C1)

Inhomogene lineare Differentialgleichungen 2. Ordnung:

> dgl := diff(y(x), x$2)+2*diff(y(x), x)-3*y=3*x^2-4*x;

                /   2      \
                |  d       |     /  d      \            2
         dgl := |----- y(x)| + 2 |---- y(x)| - 3 y = 3 x  - 4 x
                |   2      |     \ dx      /
                \ dx       /

> dsolve(dgl, y(x));

                            2
            y(x) = - 2/3 - x  + _C1 exp(x) + _C2 exp(- 3 x)


last back next