Równania różniczkowe zwyczajne:
Do rozwiązywania równań różniczkowych zwyczajnych służy komenda dsolve. Drugą rzeczą, którą należy wiedzieć, aby rozwiązać równanie różniczkowe jest sposób zapisu pochodnej. Druga pochodna po x będzie to D2x, trzecia pochodna po t będzie to D3t.
(Przed każdym przykładem należy wpisać syms x)
1. Rozwiązanie bez warunków początkowych:
Chcemy rozwiązać równanie Dx = 3 - x^2. Jego rozwiązanie, ponieważ nie podaliśmy warunków początkowych, będzie zawierało stałą C.
x = dsolve('Dx = 3 -
x^2') %komenda dsolve, a w nawiasie podane równanie
różniczkowe do rozwiązania
x = 3^(1/2)*tanh(3^(1/2)*t+3^(1/2)*C1) %rozwiązanie
2. Rozwiązanie z warunkami początkowymi:
Warunki początkowe dodajemy w nawiasie za komendą dsolve, po równaniu
x = dsolve('Dx
= 3 - x^2','x(0)=0') % w nawiasie oprócz równania
różniczkowego, warunek początkowy
x = 3^(1/2)*tanh(3^(1/2)*t) %rozwiązanie
3. Rozwiązanie równania różniczkowego nieliniowego z warunkami początkowymi:
x = dsolve('(Dx)^2-x=1','x(0)=0') %nieliniewe z warunkiem początkowym
x =
1/4*t^2-t
1/4*t^2+t %rozwiązanie
4. Rozwiązanie równania różniczkowego z drugą pochodną i dwoma warunkami początkowymi:
syms x y
y = dsolve('D2y=cos(2*x)-y','y(0)=1','Dy(0)=0',
'x') %dodanie 'x' powoduje wskazanie od jakiej zmiennej
ma zależeć rozwiązanie
y = 4/3*cos(x)-1/3*cos(2*x) %rozwiązanie
5. Rozwiązanie układów równań różniczkowych
S = dsolve('Df = 3*f+4*g', 'Dg = -4*f+3*g', 'f(0) = 0, g(0) = 1') %układ dwóch równań różniczkowych z warunkami początkowymi
Będziemy poszukiwać funkcji f(t) oraz g(t). Rozwiązania ukryte są w macierzy S. Aby je 'wydostać' użyjemy komend S.f oraz S.g
S.f = exp(3*t)*sin(4*t) %rozwiązanie dla funkcji f(t)
S.g = exp(3*t)*cos(4*t) %rozwiązanie dla funkcji g(t)