Differentialgleichungen

Differentialgleichung von y/x

DE=y'[x]==((y[x]+x)/(y[x]-x))

DSolve[DE,y[x],x]

schrittweise Lösung

Gleichung=∫(1/(((u+1)/(u-1))-u))\[DifferentialD]u==∫(1/x)\[DifferentialD]x

Solve[Gleichung,u]

Hausaufgabe: Beispiel 1.23

gleichung=(1/2)∫((2y-1)/((y^2)-y-2))\[DifferentialD]y==∫x\[DifferentialD]x

Solve[gleichung,y]

DE=y'[x]==x((2((y[x])^2)-2y[x]-4)/(2y[x]-1))

DSolve[DE,y[x],x]

DSolve[{y'[x]==x((2((y[x])^2)-2y[x]-4)/(2y[x]-1)),y[x0]==y0},y[x],x]

DSolve[{y'[x]==x((2((y[x])^2)-2y[x]-4)/(2y[x]-1)),y[0]==3},y[x],x]

DirectionField[DE_,y_[x_],{x_,a_,b_},{y_,c_,d_},options___]:=Module[{g},
g=DE[[2 ]]/.y[x]->y;
VectorPlot[{1,g},{x,a,b},{y,c,d},options]
]

plot1=DirectionField[DE,y[x],{x,-2,2},{y,0,5},Frame->True]

plot2=Plot[Evaluate[Table[y[x]/.DSolve[{DE,y[0]==(k/5)},y[x],x][[1]],{k,20}]],{x,-2,2},PlotStyle->Table[{Thickness[0.005],RGBColor[(k/20),0,1-(k/20)]},{k,20}]]

Show[plot1,plot2,PlotRange->{0,5}]

Ein Beispiel, bei welchem Mathematica die Lösung (nach Auflösen nach y[x]) durch spezielle Funktionen ausdrückt.

DE1=y'[x]==((y[x]+1)/(y[x]-1))

DSolve[DE1,y[x],x]

FullForm[%]

?ProductLog

Zum Schluss noch ein Beispiel, bei welchem Mathematica fälschlicherweise keine korrekte Fallunterscheidung vornimmt.

DE=y'[x]==x (Sqrt[1+y[x]])

DSolve[DE,y[x],x]

plot1=DirectionField[DE,y[x],{x,-5,5},{y,-1,5},Frame->True]

plot2=Plot[Evaluate[y[x]/.DSolve[{DE,y[0]==1},y[x],x][[1]]],{x,-5,5},PlotStyle->{Thickness[0.005],RGBColor[1,0,0]}]

Show[plot1,plot2,PlotRange->{-1,5}]

Lineare Differentialgleichungen

Lineare Differentialgleichung erster Ordnung

DSolve[y'[x]+a[x]*y[x]==b[x],y[x],x]

DSolve[y'[x]+a[x]*y[x]==0,y[x],x]

Beispiel 1.12

DSolve[y'[x]==Sin[x] y[x],y[x],x]

DSolve[{y'[x]==Sin[x] y[x],y [0]==1},y[x],x]

Variation der Konstanten

Die homogene Gleichung ist separierbar

DE=y'[x]+a[x]*y[x]==0

und hat die Lösung

homogeneLösung=y[x]->K*Exp[∫-a[x]\[DifferentialD]x]

Diese setzen wir ein und bekommen

DE/.{homogeneLösung,D[homogeneLösung,x]}

Um eine Lösung der inhomogenen Differentialgleichung

DE=y'[x]+a[x]*y[x]==b[x]

zu finden, machen wir den Ansatz (Variation der Konstanten)

inhomogeneLösung=y[x]->K[x]*Exp[∫-a[x]\[DifferentialD]x]

Diese setzen wir ein und bekommen

newDE=DE/.{inhomogeneLösung,D[inhomogeneLösung,x]}

Diese einfache Differentialgleichung für K[x] können wir aber durch Integration lösen und wir erhalten

spezielleLösung=y[x]->(Exp[∫-a[x]\[DifferentialD]x]*∫b[x]Exp[∫a[x]\[DifferentialD]x]\[DifferentialD]x)

Test:

test=DE/.{spezielleLösung,D[spezielleLösung,x]}

DSolve kann dies auch alleine, liefert aber wieder eine kompliziert aussehende Lösung.

DSolve[DE,y[x],x]

Beispiel 1.16

DE=y'[x]==y[x]+x

plot1=DirectionField[DE,y[x ],{x,-5,5},{y,-5,5},Frame->True]

DSolve[DE,y[x],x]

plot2=Plot[Evaluate[Table[y[x]/.DSolve[{DE,y[0]==k},y[x],x][[1]],{k,-5,5}]],{x,-5,5},PlotStyle->Table[{Thickness[0.005],RGBColor[0,(k/11),1-(k/11)]},{k,11}]]

Show[plot1,plot2,PlotRange->{-5,5} ]

nach unserer Formel:

a=-1;b=x;

Allgemeine Lösung der homogenen Differentialgleichung:

hom=y1->K*(E^(∫-a\[DifferentialD]x))

Variation der Konstanten:

∫b (E^(∫a\[DifferentialD]x))\[DifferentialD]x

Spezielle Lösung der inhomogenen Differentialgleichung:

var=y2->(E^(∫-a\[DifferentialD]x))*∫b (E^(∫a\[DifferentialD]x))\[DifferentialD]x

Allgemeine Lösung der inhomogenen Differentialgleichung:

lösung=y->y1+y2/.{hom,var}

Wir lösen das Anfangswertproblem mit y(x0)=y0:

Solve[(lösung[[2]]/.{x->x0})==y0,K]

oder mit DSolve

lösung=DSolve[{DE,y[x0]==y0},y[x],x]

Simplify[lösung]