Równanie różniczkowe zwyczajne – definicja, rodzaje, przykłady
Równanie różniczkowe zwyczajne (ODE) to równanie łączące jedną zmienną niezależną, funkcję niewiadomą oraz jej pochodne względem tej zmiennej. Pozwala opisywać, jak zmienia się dane zjawisko, na przykład temperatura, położenie ciała albo liczebność populacji.
Czym jest równanie różniczkowe zwyczajne?
W równaniu różniczkowym zwyczajnym zmienna niezależna jest tylko jedna. Często oznacza się ją symbolem t, ponieważ w modelach fizycznych i biologicznych reprezentuje czas. Funkcja niewiadoma opisuje stan badanego układu, a jej pochodna informuje o tempie jego zmian.
Przykładowo, w równaniu y'(t) = 2y(t) funkcja y zmienia się w tempie proporcjonalnym do swojej aktualnej wartości. Rozwiązaniem jest funkcja, która po podstawieniu do równania wraz ze swoją pochodną daje prawdziwą zależność.
Rząd równania określa najwyższy rząd występującej w nim pochodnej. Równanie zawierające tylko y’ jest równaniem pierwszego rzędu, a takie, w którym pojawia się y”, ma rząd drugi.
ODE trzeba odróżnić od równania różniczkowego cząstkowego, czyli PDE. W ODE funkcja zależy od jednej zmiennej niezależnej, natomiast w PDE występują co najmniej dwie zmienne niezależne oraz pochodne cząstkowe. Równanie opisujące temperaturę zależną wyłącznie od czasu może być więc zwyczajne, ale temperatura zależna jednocześnie od czasu i położenia prowadzi już do równania cząstkowego.
Jak rzeczywistość staje się równaniem?
Modelowanie za pomocą ODE zaczyna się od obserwacji, że tempo zmiany pewnej wielkości zależy od jej aktualnego stanu albo od innych parametrów. Pochodna pozwala zapisać tę obserwację w języku matematyki.
Stygnięcie i ogrzewanie
Prawo stygnięcia Newtona zakłada, że tempo zmiany temperatury ciała jest proporcjonalne do różnicy między temperaturą ciała a temperaturą otoczenia. Jeśli T(t) oznacza temperaturę w chwili t, a To jest stałą temperaturą otoczenia, model można zapisać jako:
T'(t) = -k(T(t) − To), gdzie k > 0.
Znak minus oznacza, że ciało traci ciepło, gdy jest cieplejsze od otoczenia. Gdy temperatura otoczenia jest wyższa, ten sam model opisuje ogrzewanie. Po dodaniu warunku początkowego T(0) = T0 otrzymujemy konkretny przebieg temperatury. Rozwiązanie ma postać:
T(t) = To + (T0 − To)e−kt.
Wynika z niego, że temperatura zbliża się do temperatury otoczenia. Model opisuje na przykład stygnięcie kawy, choć w rzeczywistych warunkach jego dokładność zależy od założeń dotyczących naczynia, przepływu powietrza i stałości temperatury otoczenia.
Wzrost populacji
Jeżeli liczba organizmów w kolonii rośnie w tempie proporcjonalnym do jej aktualnej liczebności, otrzymujemy prawo Malthusa:
N'(t) = rN(t).
Funkcja N(t) oznacza liczebność populacji, a r jest współczynnikiem wzrostu. Przy warunku początkowym N(0) = N0 rozwiązanie ma postać N(t) = N0ert. Model przewiduje wzrost wykładniczy, dlatego dobrze pasuje tylko do sytuacji, w której zasoby są praktycznie nieograniczone, a populacja nie napotyka istotnych ograniczeń.
Po uwzględnieniu ograniczonej ilości pożywienia stosuje się na przykład model logistyczny, w którym tempo wzrostu zależy nie tylko od liczebności populacji, lecz także od jej odległości od pojemności środowiska. W ten sposób ODE pozwala przejść od prostego opisu idealnego do modelu bliższego rzeczywistości.
Podstawowe rodzaje równań różniczkowych
Równania różniczkowe klasyfikuje się według kilku cech. Najczęściej bierze się pod uwagę rząd, liniowość oraz obecność wyrazu wymuszającego.
| Cecha | Opis | Znaczenie |
|---|---|---|
| Rząd | Najwyższy rząd pochodnej występującej w równaniu | Wpływa na liczbę warunków potrzebnych do wyznaczenia rozwiązania |
| Liniowość | W równaniu liniowym funkcja niewiadoma i jej pochodne występują w pierwszej potędze i nie są mnożone przez siebie | Równania liniowe mają zwykle lepiej opracowane metody rozwiązywania |
| Jednorodność | W równaniu liniowym jednorodnym nie występuje niezależny wyraz wymuszający | Rozwiązanie równania niejednorodnego wiąże się z częścią jednorodną i szczególną |
Przykładem równania liniowego drugiego rzędu jest y” + 3y’ + 2y = 0. Równanie y’ = y2 jest nieliniowe, ponieważ funkcja niewiadoma występuje w drugiej potędze. Nieliniowość pojawia się także wtedy, gdy występują iloczyny funkcji i jej pochodnych albo funkcje takie jak sin(y).
Równanie liniowe nazywa się jednorodnym, gdy po jednej stronie pozostaje zero, na przykład y” + y = 0. Gdy pojawia się wyraz niezależny od funkcji niewiadomej, jak w y” + y = cos(t), mamy równanie niejednorodne.
Jak rozwiązuje się równania różniczkowe?
Rozwiązanie równania może być pojedynczą funkcją albo rodziną funkcji zależną od stałych. Aby wybrać jedno rozwiązanie, trzeba zazwyczaj podać warunki początkowe. Równanie wraz z takim warunkiem tworzy problem Cauchy’ego, na przykład:
y'(t) = f(t, y(t)), y(t0) = y0.
Warunek początkowy mówi, jaki stan układu występował w chwili t0. Dla równania drugiego rzędu zwykle potrzebne są dwa warunki, na przykład początkowe położenie i prędkość.
Twierdzenie Picarda stwierdza, w uproszczeniu, że jeżeli funkcja opisująca równanie jest ciągła, a względem zmiennej zależnej spełnia lokalny warunek Lipschitza, to problem Cauchy’ego ma lokalnie rozwiązanie i jest ono jednoznaczne. Założenia tego twierdzenia są ważne. Bez nich rozwiązanie może nie istnieć albo może istnieć ich kilka, mimo tego samego warunku początkowego.
Metody analityczne
Metody analityczne prowadzą do wzoru opisującego rozwiązanie. Stosuje się między innymi rozdzielanie zmiennych, metody dla równań liniowych, równania charakterystyczne, przekształcenie Laplace’a oraz całkowanie. Nie każdą ODE da się jednak rozwiązać za pomocą skończonego zestawu działań na funkcjach elementarnych.
Metody numeryczne
Gdy dokładny wzór jest niedostępny albo zbyt trudny do uzyskania, oblicza się przybliżone wartości rozwiązania. Najprostszą metodą jest metoda Eulera. Dla równania w postaci normalnej y’ = f(t,y) oraz kroku h kolejne przybliżenia wyznacza się według wzoru:
yn+1 = yn + h f(tn, yn).
Algorytm można ująć w następujących krokach:
- Ustal punkt początkowy (t0, y0) oraz długość kroku h.
- Oblicz nachylenie rozwiązania f(tn, yn) w aktualnym punkcie.
- Przesuń się o krok h wzdłuż prostej o obliczonym nachyleniu.
- Powtarzaj obliczenia, otrzymując kolejne przybliżenia wykresu rozwiązania.
Im mniejszy krok, tym zwykle dokładniejsze przybliżenie, ale rośnie liczba obliczeń. W zastosowaniach inżynierskich i naukowych często używa się dokładniejszych metod, takich jak rodziny metod Rungego–Kutty. Przy analizie jakościowej pomocne może być także pole kierunków, które pokazuje nachylenie rozwiązań bez wyznaczania ich wzoru.

Programy do rozwiązywania ODE
Oprogramowanie może wykonywać obliczenia symboliczne, numeryczne albo oba rodzaje zadań. Do często stosowanych narzędzi należą:
- Bezpłatne – Python z bibliotekami SciPy i SymPy, GNU Octave, GNU R, Julia, SageMath oraz Maxima.
- Płatne – MATLAB, Mathematica i Maple.
Wybór programu zależy od celu. Do prostych obliczeń numerycznych wystarczy często Python z SciPy albo GNU Octave. Gdy potrzebne są przekształcenia symboliczne i automatyczne upraszczanie wzorów, przydatne mogą być SymPy, Mathematica lub Maple.
Najważniejsza różnica między metodami polega na tym, że rozwiązanie analityczne daje wzór, a metoda numeryczna – zestaw przybliżonych wartości. Oba podejścia służą temu samemu celowi: opisaniu, jak układ zmienia się pod wpływem określonych warunków.