Modelowanie i symulacja WYKŁAD 5,6
Ogólna postać układu równań różniczkowych
Formułowania ODE - przykład
Formułowania ODE - przykład II zasada dynamiki Newtona: F=ma
Formułowania ODE - przykład Zasada Galileusza: składowe ruchu w ortogonalnych kierunkach x,y można rozpatrywać niezależnie
Formułowania ODE - przykład Chcemy znać trajektorię, a więc współrzędne x, y w poszczególnych chwilach czasu t Przejście do zrealizowania: siły przyspieszenia prędkości położenia Z definicji:
Formułowania ODE - przykład Z definicji Potrzebne jest podwójne całkowanie
Formułowania ODE - przykład W kierunku x:
Formułowania ODE - przykład
Formułowania ODE - przykład
Formułowania ODE - przykład
Formułowania ODE - przykład Bardziej realistyczne zjawisko: zamiast rzutu ukośnego – wystrzał rakiety oprócz siły ciążenia – działa siła ciągu silnika działa także siła oporu powietrza masa rakiety zmienia się w czasie lotu
Formułowania ODE - przykład Sposób postępowania jest analogiczny, jednak całkowanie symboliczne, w zależności od zależności siły ciągu i masy od czasu może być skomplikowane
Całkowanie numeryczne - schemat Eulera Leonhard Euler (1707-1783)
Redukcja równania wyższego rzędu do niższego rzędu Pierwotne równanie: Podstawienie: Powstaje układ równań:
Schemat Eulera Równanie różniczkowe w postaci normalnej: Rozwinięcie Taylora:
Schemat Eulera Jeżeli znana jest wartość szukanej trajektorii y(t0) w pewnym momencie czasu t0, to można w przybliżeniu obliczyć wartość trajektorii dla niedalekiej chwili czasu t0+h Potrzebna jest do tego znajomość pochodnej trajektorii w chwili t0, czyli wartość funkcji f(y(t0),t0) Ta informacja dana jest przez równanie różniczkowe
Schemat Eulera Trzeba zacząć od pewnego znanego punktu np. y(0) Przedział, w którym ma być wyznaczona trajektoria, to np. [0,tk] Przedział ten jest dzielony równomiernie na ciąg podprzedziałów o długości h (krok całkowania)
Schemat Eulera Zaczynając od znanej wartości y(0) powtarza się iteracyjnie przepis: dochodząc wreszcie do punktu końcowego tk Zapis oznacza przybliżoną wartość y(ti)
Schemat Eulera Cały proces nazywany jest całkowaniem numerycznym Rozwiązanie równania różniczkowego polega na jego scałkowaniu
Schemat Eulera
Schemat Eulera Przybliżenie: jest tym lepsze, im mniejsze jest h
Schemat Eulera
Schemat Eulera
Schemat Eulera Pole kierunkowe – ilustracja informacji podanej przez równanie różniczkowe Prezentacja DField i PPlane
Błędy schematu Eulera
Błąd lokalny (obcięcia) Wynika z obciętego rozkładu Taylora
Błąd lokalny (obcięcia) Wynika z aproksymacji liniowej, czy też różnicowego oszacowania pochodnej: Błąd lokalny jest rzędu Dwukrotne zmniejszenie kroku zmniejsza błąd o 75%
Błąd globalny Nie jest po prostu sumą błędów lokalnych Błędem jest obarczona także informacja o pochodnej, ponieważ jest wyznaczana na podstawie przybliżonego rozwiązania cząstkowego Dla schematu Eulera globalny błąd jest rzędu O(h)
Zagrożenie rozbieżności
Zagadnienie zbieżności Czy jeśli h dąży do zera, to błąd dąży do zera? A jeśli błąd dąży do zera, to jaka szybka jest zbieżność, tzn. na ile mały musi być krok, żeby osiągnąć pożądany poziom błędu?
Modyfikacja schematu Eulera Zamiast: Stosujemy: Czyli pochodna jest brana z końca przedziału całkowania
Modyfikacja schematu Eulera
Modyfikacja schematu Eulera Te same oszacowania błędów Jednak odwrócony schemat Eulera jest zwykle bardziej stabilny i dokładniejszy Odwrócony schemat Eulera nie jest metodą bezpośrednią – wyznaczana wartość występuje po obu stronach przepisu
Poprawa schematu Eulera Prosty schemat Eulera – „reprezentantem” pierwszej pochodnej w całym przedziale jest wartość z początku przedziału Odwrócony schemat Eulera – „reprezentantem” pierwszej pochodnej w całym przedziale jest wartość z końca przedziału Twierdzenie o wartości pośredniej:
Poprawa schematu Eulera Twierdzenie o wartości pośredniej Równość jest dokładna! Trzeba tylko wiedzieć, jaka jest wartość p Wartość pochodnej wyznaczona w odpowiednim punkcie przedziału umożliwiłaby osiągnięcie zerowego błędu
Poprawa schematu Eulera
Schemat Heuna Błąd lokalny – proporcjonalny do h3 Błąd globalny – do h2
Metoda konstruowania schematów wyższych rzędów Różnicowe przybliżenie drugiej pochodnej Rozwinięcie Taylora drugiego rzędu:
Martin Wilhelm Kutta (1867 – 1944) Runge-Kutta Martin Wilhelm Kutta (1867 – 1944) Carl David Runge (1856 – 1927)
Metoda Runge-Kutta 4-tego rzędu