English version

Numeryczne równania różniczkowe


semestr zimowy 2014-15

wtorek wykład 1415-1545 sala 1780 - ćwiczenia/lab wt 16-1730 1780/3044(lab) (wydział MIMUW ul. Banacha 2 - wejście do ul. Pasteura; sala 1780 parter w wieży południowej - po wejściu iśc na prawo do końca korytarza a potem w prawo też do końca)

Egzamin ustny

I termin - piatek 31 stycznia 2014 godz 930-1130 - pokók 5010 - lub po wcześniejszym umówieniu się w innym terminie.
Planuje byc na wydziale od ok 930 do 10 i od 13 do ok 17-18 we wt 3 lutego i w srode 4 lutego od ok 10-11 do ok 16-17 w pokoju 5010 budynek MIMUW.
Program bieżącego labu.

Projekty

Istnieje mozliwosc napisania projektu - propozycje w:
pliku pdf
Przy zaliczaniu poza wykazaniem ze dobrze dziala kod - nalezy wykazac sie znajomoscia implementacji (tez bedzie oceniana choc jako mala czesc oceny), zrozumieniem metody i jej wlasnosci teoretycznych. (Moge spytac sie tez o pozostale zagadnienia z wykladu).

W praktycznych obliczeniach naukowych np. przy modelowaniu zjawisk fizycznych występujących przy prognozowaniu pogody, praktycznie zawsze natkniemy sie na problem rozwiązywania równań różniczkowych, zwyczajnych czy cząstkowych przy czym praktycznie nigdy nie posiadamy wzorów analitycznych na rozwiązanie tychże równań, tak więc trzeba rozwiązywać te równania przy pomocy metod przybliżonych - numerycznych.

Jeśli chcesz się dowiedzieć o różnych przybliżonych metodach rozwiązywania równań różniczkowych - ich własnościach - zaletach i wadach - ten wykład jest dla ciebie.


Postaramy się w przystępny sposób opisać podstawowe metody i schematy rozwiązywania podstawowych typów równań różniczkowych a dokładnie zajmiemy się przybliżonymi metodami rozwiązywania:
  1. równań różniczkowych zwyczajnych
  2. równań różniczkowych eliptycznych
  3. równań różniczkowych ewolucyjnych (paraboliczne i hiperboliczne pierwszego rzędu)
przy czym przedstawimy następujące metody:
  1. schematy dla równań zwyczajnych jednokrokowe i wielokrokowe
  2. metodę różnic skończonych
  3. metodę elementu skończonego
Kilka ćwiczeń może uda się przeznaczyć na laboratorium komputerowe w którym zweryfikujemy eksperymentalnie wyniki teoretyczne.

Wykład będzie przeprowadzony elementarnie, wystarczy podstawowa wiedza z analizy matematycznej, algebry liniowej i podstaw równań różniczkowych zwyczajnych.

Wykład jest fakultatywny na wydziale MIM UW ale również studenci czy doktoranci innych wydziałów nie powinni mieć problemów ze jego zrozumieniem.

Może być to zaskakujące ale nie trzeba posiadać głębszej wiedzy z równań różniczkowych cząstkowych czyli nie jest konieczne zaliczenie wykładu z RRcz- wszystkie konieczne definicje, twierdzenia itp będę podawał na wykładzie czy ćwiczeniach.

Do wykładu przewidziany jest skryp w html - skrypt zawiera sporo więcej materiału niż zapewne uda się przedstawić na wykładzie.
Egzamin planuje w formie ustnej. Opcjonalnie istnieje możliwość w ramach egzaminu napisanie średniej w ielkości projektu komputerowego np. w octavie czy C, C++ itp

Skrypt

Leszek Marcinkowski, Numeryczne równania różniczkowe.
Opublikowane on-line: Strona skryptu w html (istnieje też link do wersji w pdf).
Uwaga Skrypt jest w wersji skończonej ale wciąż znajduję literówki, które poprawiam:
Plik pdf z najnowszą wersją skryptu.
Proszę o przysyłanie komentarzy czy uwag szczególnie w razie znalezienia jakichkolwiek błędów, literówek itp.

Literatura

  1. Maksymilian Dryja, Janina Jankowska, Michał Jankowski, Metody numeryczne, tom 2, Wydawnictwo Naukowo Techniczne (WNT), Warszawa, 1982.
  2. Janina Jankowska, Michał Jankowski, Metody numeryczne, tom 1, Wydawnictwo Naukowo Techniczne (WNT), Warszawa, 1981.
  3. Andrzej Krupowicz, Metody numeryczne zagadnień początkowych równań różniczkowych zwyczajnych., Państwowe Wydawnictwo Naukowe (PWN), Warszawa, 1986.
  4. Krzysztof Moszyński, Rozwiązywanie równań różniczkowych zwyczajnych na maszynach cyfrowych., Wydawnictwo Naukowo-Techniczne (WNT), Warszawa, 1971.
  5. Andrzej Palczewski, Równania różniczkowe zwyczajne. Teoria i metody numeryczne z wykorzystaniem komputerowego systemu obliczeń symbolicznych., Wydawnictwo Naukowo-Techniczne (WNT), Warszawa, 1999.

W języku angielskim

Podstawowe podręczniki

  1. Deuflhard, Peter, Bornemann, Folkmar, Scientific Computing with Ordinary Differential Equations, Texts in Applied Mathematics, Vol. 42, Springer-Verlag, New York, 2002. (teoria RRZ, schematy RRZ, zadania brzegowe w 1 wymiarze) Z serwerów MIMUW mozna sciagnac plik pdf (aktualne XII 2014): Springer link
  2. David F. Griffiths, Desmond J. Higham, Numerical Methods for Ordinary Differential Equations, Springer-Verlag, 1st Edition, London, 2010. Schematy do RRZ - prosty podrecznik. Z serwerów MIMUW mozna sciagnac plik pdf (aktualne XII 2014): Springer link
  3. Claes Johnson, Numerical solution of partial differential equations by the finite element method, Cambridge University Press, Cambridge, 1987.
  4. Randall J. LeVeque, Finite difference methods for ordinary and partial differential equations, Society for Industrial and Applied Mathematics (SIAM), Philadelphia, PA, 2007, Steady-state and time-dependent problems. (schematy dla RRZ, metoda różnic skończonych (MRS) dla równań eliptycznych i parabolicznych)
  5. Alfio Quarteroni, Riccardo Sacco, and Fausto Saleri, Numerical mathematics, Texts in Applied Mathematics, vol. 37, Springer-Verlag, New York, 2000. (metody dla RRZ, teoria dla MRS dla RRCZ i elementy MESu). Z serwerów MIMUW mozna sciagnac plik pdf (aktualne XII 2014): Springer Link
  6. John C. Strikwerda, Finite difference schemes and partial differential equations, second ed., Society for Industrial and Applied Mathematics (SIAM), Philadelphia, PA, 2004. (MRS dla RRCZ - wszystkie typy równań)

Monografie i bardziej zaawansowane podręczniki

  1. Dietrich Braess, Finite elements, third ed., Cambridge University Press, Cambridge, 2007, Theory, fast solvers, and applications in elasticity theory, Translated from the German by Larry L. Schumaker. (zaawasowany podręcznik - godny polecenia)
  2. Susanne C. Brenner and L. Ridgway Scott, The mathematical theory of finite element methods, third ed., Texts in Applied Mathematics, vol. 15, Springer, New York, 2008. (bardzo zaawansowany podręcznik - właściwie monografia)
  3. J. C. Butcher, Numerical methods for ordinary differential equations, second ed., John Wiley and Sons Ltd., Chichester, 2008.
  4. P. G. Ciarlet and J.-L. Lions (eds.), Handbook of numerical analysis. Vol. II, Handbook of Numerical Analysis, II, North-Holland, Amsterdam, 1991, Finite element methods. Part 1.
  5. Philippe G. Ciarlet, The finite element method for elliptic problems, Classics in Applied Mathematics, vol. 40, Society for Industrial and Applied Mathematics (SIAM), Philadelphia, PA, 2002, Reprint of the 1978 original [North-Holland, Amsterdam].
  6. E. Hairer, S. P. Norsett, and G. Wanner, Solving ordinary differential equations. I, second ed., Springer Series in Computational Mathematics, vol. 8, Springer-Verlag, Berlin, 1993, Nonstiff problems.
  7. E. Hairer and G. Wanner, Solving ordinary differential equations. II, second ed., Springer Series in Computational Mathematics, vol. 14, Springer-Verlag, Berlin, 1996, Stiff and differential-algebraic problems.
  8. Alfio Quarteroni and Alberto Valli, Numerical approximation of partial differential equations, Springer Series in Computational Mathematics, vol. 23, Springer-Verlag, Berlin, 1994. Z serwerów MIMUW mozna sciagnac plik pdf (aktualne XII 2014): Springer Link

Lab

Tutaj link do stron Octave'a (skąd można ściągnąć kolejną dystrybucje - pod linuxa czy windows)
octave-forge - rozszerzenia octave'a

A tu manual do octave'a w htmlu

Program labów

Na razie zadania z labu trzeba wykonywać samodzielnie. Są też zadania na lab w skrypcie.

Skrypty m-pliki octave'a

nrr14-15-scripts.tgz - wszystkie skrypty w zgzippowanym pliku tar (pod linuxem odpakowuje sie komenda: tar zxvf nrr14-15-scripts.tgz; pod windows programem zewnetrznym np. 7zip etc)
nrr14-15-scripts.zip - wszystkie skrypty w pliku zip (pod linuxem odpakowuje sie komenda: unzip nrr14-15-scripts.zip; pod windows system rozpakuje)
nrrbasic.m -prosty skrypt octave'a z kilkoma podstawowymi operacjami
exEuler.m - schemat otwarty Eulera (dziala w wielu wymiarach)
testexEul.m - proste testy schematu Eulera (skalarne i 2-wymiarowe)
OrderExEuler.m - testy rzędu (lokalnego błędu) schematu otwartego Eulera
midpoint.m - implementacja schematu midpoint
testmidpoint.m - testy rzędu zbieżności schematu midpoint oraz brak stabilności dla dx/dt=-x z x(0)=1 na długim odcinku czasu (im mniejsze h tym później)
taylor.m - schemat Taylor
testtaylor.m - testy schematu Taylora (w 2 wymiarach)
AdamsB2.m - explicit Adams-Bashforth scheme (of order 2)
testAB2start.m - testy wartosci startowej (x^h_1) dla explicit Adams-Bashforth scheme (of order 2)
testAdamsBo2.m - testy dla schematu otwartego Adams-Bashforth (rzedu 2) jak dla midpoint - rzad zbieznosci etc
testshoot.m -metoda strzalow dla zadania brzegowego: -y''+y=0; y(0)=1 y(b)=1 (b=1 - m. st. dziala OK, b=20 - nie dziala - dlaczego?)
linshooting.m -m-plik z funkcja linshooting() rozwiazujaca: -y''+d(x)y+c(x)y=f(x); y(a)=ya y(b)=yb przy uzyciu metody strzalow
shooting.m -m-plik z funkcja shooting() rozwiazujaca: -y''=F(t,y,y'); y(a)=ya y(b)=yb przy uzyciu metody strzalow (uzywajac lsode() i fsolve())
FDsolver.m funkcja rozwiązująca -u''+cu=f z warunkami brzegowymi Dirichleta : u'(a)=alpha u(b)=beta (MRS - rząd schematu dwa)
testFD.m testy MRS dla -u''+cu=f z warunkiem Dirichlea : u(a)=alpha u(b)=beta -zad 1 u''=u u(0)=u(b)=1 b=1,4,8,16 etc wykresy;zad 2 rzad standardowej MRS dla -u''=sin(x) u(0)=0 u(b)=sin(b); zas 3 - jak zad 2 ale z niedokladnym warunkiem brzegowym u_h(b)=sin(b+h/2) - order 1!
FDmixlft.m funkcja rozwiązująca -u''+cu=f z mieszanymi warunkami brzegowymi : u'(a)=alpha u(b)=beta (MRS - rząd schematu jeden)
FDsolver2d.m -funkcja rozwiazujaca zadanie -Laplacian u = f w (a,b)^2 u=g na brzegu metoda roznic skonczonych
testFDM2d.m - testy rzędu zbieżności w normach dyskretnych L2 i max dla -Laplacian u=f na [0,1]^2 z u=g na brzegu; - 5-punktowy stensyl na siatce jednorodnej dla rozwiązania u = sin(pi*x_1)*sin(pi*x_2), (wtedy f=2*(pi)^2*u; u=0 na brzegu)
FEM1Dsolver.m - solver MES w 1 wymiarze dla -au''+bu'+cu=f z war brzegowymi Dirichleta albo Robina - na siatce dowolnej
testMESDbc.m funckja w m-pliku z testami rzedu MESu liniowego na roznych siatkach dla znanych rozwiazan
testMESor.m skrypt wywolujacy funkcje octave'a testMESDbc() (z pliku testMESDbc.m - trzeba go sciagnac) - testy MESu liniowego na roznych siatkach dla znanych rozwiazan (malo skomentowane trzeba zajrzec do kodu by zrozumiec o co chodzi - ogolnie macierze ratio/rratio zawieraja stosunki bledu dla siatki x podzielone przez blad dla siatki powstalej z zageszczenia x poprzez podzial kazdego odcinka na dwa pododcinki - ratio zawiera stosunki odpowiednich bledow dyskretnych - tylko na siatce na ktorej szukamy rozwiazan - rratio odpowiednie stosunki bledow na duzo gestszej siatce)
Appendix (spoza zakresu labu w 2014/15)
Metod różnic skończonych dla 1-wymiarowego równania prabolicznego tzn dyskretyzujemy po przestrzeni równanie u_t-u_{xx}=f przy pomocy MRS - i otrzymany dla danej siatki układ RRz rozwiązujemy solverem octave'a (lsode())

FD1dtest.m - skrypt octave'a z kodem testującym rząd zbieżności MRS dla u_t-u_{xx}=0 u(0)=u(pi)=0 u(0,x)=sin(x) - u(t,x)=exp(-t)sin(x) znane rozwiązanie
FDstep.m - skrypt octave'a z kodem testującym dyfuzje (rozmycie) w u_t-u_{xx}=0 u(0)=u(pi)=0 u(0,x)= funkcja charakterystyczna [1,2.5] i testy dla tego samego u0 ale z f <>0 tzn. dla u_t-u_{xx}=f
Powrót do mojej strony domowej.
Ostatnia aktualizacja: 29 stycznia 2015

Dziś jest