Analiza numeryczna i symulacja systemów Janusz Miller 0. Informacje wstępne 1. Wstęp do numerycznego rachunku różniczkowego.

1 Analiza numeryczna i symulacja systemów Janusz Miller 0...
Author: Irena Maciejewska
0 downloads 2 Views

1 Analiza numeryczna i symulacja systemów Janusz Miller 0. Informacje wstępne 1. Wstęp do numerycznego rachunku różniczkowego

2 Analiza numeryczna i symulacja systemów 2014/15 - Równania różniczkowe zwyczajne 2 Podstawowe pojęcia: Analiza numeryczna Analiza matematyczna – XVII w. (Leibniz, Newton) – rachunek różniczkowy i całkowy – jeden z działów matematyki. Ogólnie obliczenia możemy wykonywać na liczbach lub na symbolach. Wykonując obliczenia na liczbach mamy do czynienia z obliczeniami numerycznymi. Obliczenia symboliczne – operacje matematyczne wykonywane na wyrażeniach matematycznych. Co jest lepsze? Dlaczego będziemy zajmować się dziedziną “ułomną”? Analiza numeryczna –jakie równania różniczkowe zwyczajne daje się rozwiązać symbolicznie? –jakie równania różniczkowe cząstkowe daje się rozwiązać symbolicznie? –czy w rzeczywistości istnieją zjawiska “liniowe”? Analiza numeryczna to część Metod numerycznych. Dwa przedmioty: - “Metody numeryczne” – o podstawach i teorii tych metod. - “Analiza i symulacja” – o zastosowaniu, współczesnych metodach, narzędziach, przykładach bliżej praktyki.

3 Analiza numeryczna i symulacja systemów 2014/15 - Równania różniczkowe zwyczajne 3 Podstawowe pojęcia w symulacji: Proces, obiekt, model Obiekt - fragment “rzeczywistości” wyodrębniony z otoczenia. Wejście i wyjście - strumienie informacji, masy lub energii, które łączą obiekt z otoczeniem. Rozważamy proces (fizyczny, chemiczny, biologiczny, socjologiczny, termodynamiczny, ekonomiczny lub inny) – jakaś “rzeczywistość” (najczęściej) podlega zmianom w czasie. Proces / obiekt opisujemy ilościowo za pomocą zmiennych. Zależność między tymi zmiennymi, wejściem i wyjściem oraz czasem opisujemy w modelu matematycznym. Tworzenie modelu - dwa podejścia: -teoretyczne - na podstawie znajomości praw rządzących zjawiskami towarzyszącymi procesowi, -fenomenologiczne 1) - na podstawie obserwacji (pomiarów) przyczyn i skutków, _________ 1) W nastawieniu naturalnym mamy na temat świata pewne założenia, domysły, teorie, spekulacje. Fenomenologia je odrzuca - po to, by przyjrzeć się światu tak, jak się on jawi.

4 Analiza numeryczna i symulacja systemów 2014/15 - Równania różniczkowe zwyczajne 4 Podstawowe pojęcia: Symulacja, model Symulacja procesu jest “programistyczną” reprezentacją modelu. Dokładniej: Dwa pojęcia: Symulacja i model: Model komputerowy to algorytmy i równania określające zachowania modelowanego systemu. Symulacja komputerowa to „przebieg programu”, który zawiera te algorytmy i równania. Zatem mówimy: tworzymy/budujemy/ konstruujemy model, uruchamiamy symulację.

5 Analiza numeryczna i symulacja systemów 2014/15 - Równania różniczkowe zwyczajne 5 Klasyfikacja modeli Statyczne i dynamiczne Liniowe i nieliniowe Deterministyczne (w tym chaotyczne) i stochastyczne O parametrach skupionych i rozłożonych Ciągłe i dyskretne (w tym DE - discrete event) Z regularną albo nieregularną siatką danych

6 Analiza numeryczna i symulacja systemów 2014/15 - Równania różniczkowe zwyczajne 6 Narzędzia Początki: Simula (Simula-67 – nazwa od roku powstania). Inne, np. na stronie: http://en.wikipedia.org/wiki/List_of_computer_simulation_software (m.in. Scilab) Mamy w laboratorium: MATLAB z toolboxami (np.: PDE) SIMULINK STATEFLOW

7 Analiza numeryczna i symulacja systemów 2014/15 - Równania różniczkowe zwyczajne 7 Plan na semestr 1. Symulacja systemów o parametrach skupionych - równania różniczkowe zwyczajne - MATLAB, SIMULINK 2. Kalibracja, weryfikacja, walidacja - metody optymalizacji - Optimization Toolbox 3. Symulacja systemów o parametrach rozłożonych - równania różniczkowe cząstkowe - ew. PDE Toolbox 4. Aproksymacja - dr Jarosław Wąs

8 Analiza numeryczna i symulacja systemów 2014/15 - Równania różniczkowe zwyczajne 8 Literatura Kincaid D., Cheney W.: Analiza numeryczna WNT 2006 Hairer E., Norsett S.P., Wanner G.: Solving Ordinary Differential Equations Springer 2008 Nocedal J., Wright S.J.: Numerical Optimization Springer 1999 (lub późniejsze) Sewell G.: The Numerical Solution of Ordinary and Partial Differential Equations Wiley 2005 Thomas J.W.: Numerical Partial Differential Equations. Finite Difference Methods Springer 1995 Cooper J.M.: Introduction to Partial Differential Equations with MATLAB. Dirkhaeuser 1998 internet

9 Analiza numeryczna i symulacja systemów 2014/15 - Równania różniczkowe zwyczajne 9 Dlaczego analiza NUMERYCZNA? Zaleta analitycznego (w stosunku do numerycznego) rezultatu różniczkowania, całkowania, rowiązywania rónania różniczkowego - wynikiem jest funkcja. W przypadku obliczeń numerycznych - tylko liczby. Kiedy stosujemy metody numeryczne? - Przykład 1. Obliczyć pochodną zależności między odległością “nietrafienia” od kąta strzału (w przypadku gdy uwzględniamy opór powietrza, zależność gestości powietrza od wysokości itp.) - Przykład 2. Obliczyć całkę np. - które (ile) równania różniczkowe można rozwiązać analitycznie? Najczęściej - jeżeli można coś obliczyć analitycznie - należy to zrobić (szczególnie w dobie komputerowych obliczeń analitycznych narzędzia- np.: MAPLE, MATLAB - Symbolic Math Toolbox, Mathematica)

10 Analiza numeryczna i symulacja systemów 2014/15 - Równania różniczkowe zwyczajne 10 Plan na pierwsze 2-3 wykłady Różniczkowanie numeryczne Podstawy całkowania numerycznego Równania różniczkwe zwyczajne - zbieżność, zgodnośc i stabilność metod, - metody Eulera i typu predyktor-korektor, - metody wstecznego różniczkowania, - metody całkowania równań różniczkowych, - liniowe metody wielokrokowe, - metody Rungego-Kutty, - algorytmy stałokrokowe i adaptacyjne, - metody używane w MATLABie i SIMULKNKu

11 Analiza numeryczna i symulacja systemów 2014/15 - Równania różniczkowe zwyczajne 11 Różniczkowanie numeryczne 1. Błąd numeryczny elementarnych algorytmów - operacji arytmetycznych x - dana wejściowa, y - dana wyjściowa, f - algorytm, y=f(x). Jak błąd danych wejściowych „przenosi się” na błąd wyniku. - Analitycznie: Dla małych zaburzeń  x można przyjąć, że Który błąd (bezwzględny czy względny) jest lepszą miarą dokładności? Powrównajmy błędy względne dla np. mnożenia, y=kx, k=const!=0 Dla odejmowania y=x-a Kiedy - „Informatycznie”: Która operacja (i kiedy) drastycznie zmniejsza liczbę znaczących bitów w maszynowej reprezentacji liczby zmiennoprzecinkowej?

12 Analiza numeryczna i symulacja systemów 2014/15 - Równania różniczkowe zwyczajne 12 Różniczkowanie numeryczne 2. Numeryczne przybliżenie pochodnej ilorazem różnicowym. Dla z rozwinięcia w szereg Taylora z resztą Lagrange’a otrzymujemy [h>0 - forward-difference formula, h

13 Analiza numeryczna i symulacja systemów 2014/15 - Równania różniczkowe zwyczajne 13 Różniczkowanie numeryczne Wynik obliczeń numerycznych

14 Analiza numeryczna i symulacja systemów 2014/15 - Równania różniczkowe zwyczajne 14 Różniczkowanie numeryczne

15 Analiza numeryczna i symulacja systemów 2014/15 - Równania różniczkowe zwyczajne 15 Różniczkowanie numeryczne Jak zmniejszyć błąd numerycznego przybliżenia? Idea: Funkcję aproksymować wielomianem interpolacyjnym Lagrange’a i pochodną funkcji przybliżać pochodną wielomianu. Ww. przybliżenie to pochodna wielomianu opartego na 2 punktach (1. stopnia) Dodajemy trzeci punkt. Przez 3 punkty prowadzimy wielomian interpolacyjny stopnia

16 Analiza numeryczna i symulacja systemów 2014/15 - Równania różniczkowe zwyczajne 16 Różniczkowanie numeryczne Uwagi: Dodając kolejne punkty (węzły interpolacji) otrzymujemy przybliżenia wyższych rzędów. Np. często jest stosowana five-points formula: Po czym rozpoznać rząd metody (znając wzór / mając algorytm)? Problem błędu numerycznego nie znika (odejmowanie pozostaje), ale wzrasta potęga h w reszcie - nie trzeba tak bardzo zmniejszać h, żeby dostatecznie zmalała reszta rozwinięcia (czyli błąd przybliżenia). Czy można stosować (czy jest zachowany rząd p), gdy przepis f nie obowiazuje w całym przedziale [a,b]?

17 Analiza numeryczna i symulacja systemów 2014/15 - Równania różniczkowe zwyczajne 17 Elementarne metody całkowania numerycznego Kwadratury - jeden z tematów przedmiotu Metody numeryczne. Dla potrzeb Numerycznych metod rozwiązywania równań różniczkowych - krótki wstęp - najprostsze metody: 1. Prostokątów “w przód” 2. Prostokątów - wsteczna 3. Prostokątów - punktu środkowego 4. Trapezów 5, Simpsona

18 Analiza numeryczna i symulacja systemów 2014/15 - Równania różniczkowe zwyczajne 18 Elementarne metody całkowania numerycznego Uwagi: 1. Ww. to kwadratury Newtona-Cotesa - powstałe z całkowania wielomianu interpolacyjnego Lagrange’a z węzłami równoodległymi. Ogólnie Jest wiele (ważnych) metod z węzłami nierównomiernie rozłożonymi. 2. Rząd - podobnie jak dla metod różniczkowania numerycznego. 3. Jedna z metod prostokątów jest wyższego rzedu niż 2 pozostałe! Metody “symetryczne” mają wyższy rząd (podobnie jak metody różniczkowania). 4. “Ciekawostka”: w metodzie Simpsona występuje zjawisko nadmiaru rzędu.

19 Analiza numeryczna i symulacja systemów 2014/15 - Równania różniczkowe zwyczajne 19 Różniczkowanie i całkowanie numeryczne w praktyce - Czy zawsze warto stosować metody wysokiego rzędu? - Wartości funkcji nie zawsze są obliczane - czasem mierzone, - Np. wpływ opadu na “skokową” zmianę funkcji przepływu - punkty “kątowe” - funkcja nieróżniczkowalna

20 Analiza numeryczna i symulacja systemów 2014/15 - Równania różniczkowe zwyczajne 20 Podsumowanie Obliczenia numeryczne - “kiepskie ale jedyne możliwe”, bo: - wynik tylko w postaci liczb, - wynik obarczony błędem - metody, danych, reprezentacji liczb. Odejmowanie - potencjalna przyczyna wzmacniania błędu. Przybliżanie pochodnej ilorazem różnicowym - to tylko jedna z możliwych metod. Nie ma metod “lepszych/gorszych” - są wyższego lub niższego rzędu. Rząd metody - badamy, dla wielomianu którego stopnia metoda przestaje być dokładna. Całkowanie funkcji a “całkowanie” danych pomiarowych - czy warto stosować metody wysokich rzędów?

21 Analiza numeryczna i symulacja systemów 2014/15 - Równania różniczkowe zwyczajne 21 Pytania, uwagi, propozycje... osobiście albo na adres [email protected] - z góry dziękuję!