Metody numeryczne w chemii 1 2 3 4

  • Slides: 13
Download presentation
Metody numeryczne w chemii 1. 2. 3. 4. 5. 6. 7. 8. 9. Błędy

Metody numeryczne w chemii 1. 2. 3. 4. 5. 6. 7. 8. 9. Błędy w obliczeniach numerycznych. Interpolacja wielomianowa. Różniczkowanie i całkowanie numeryczne. Rozwiązywanie układów równań liniowych. Znajdowanie miejsc zerowych funkcji. Minimalizacja funkcji jednej i wielu zmiennych. Znajdowanie wartości własnych i wektorów własnych macierzy. Rozwiązywanie równań różniczkowych zwyczajnych. Transformacja Fouriera.

Literatura: 1. Z. Fortuna, B. Macukow, J. Wąsowski. “Metody numeryczne”, WNT, Warszawa. 2. J.

Literatura: 1. Z. Fortuna, B. Macukow, J. Wąsowski. “Metody numeryczne”, WNT, Warszawa. 2. J. i M. Jankowscy. ”Przegląd metod i algorytmów numerycznych”, WNT, Warszawa. 3. J. Stoer. “Wstęp do metod numerycznych” PWN, Warszawa. 4. J. Czermiński, A. Iwasiewicz, Z. Paszek, A. Sikorski, “Metody statystyczne w doświadczalnictwie chemicznym”, PWN, Warszawa.

Rodzaje błędów w obliczeniach • Błędy danych wejściowych (np. wielkości mierzonych) xexp=x*+e • Błędy

Rodzaje błędów w obliczeniach • Błędy danych wejściowych (np. wielkości mierzonych) xexp=x*+e • Błędy zaokrągleń rd(x)=x(1+e) • Błędy obcięcia exp(x)=1+(1/1!)x+(1/2)x 2+(1/3!)x 3+…

Stałoprzecinkowa reprezentacja liczby (na ogół dziesiętna) x = ±a 1 a 2 a 3…am·b

Stałoprzecinkowa reprezentacja liczby (na ogół dziesiętna) x = ±a 1 a 2 a 3…am·b 1 b 2 b 3…bn Zmiennoprzecinkowa reprezentacja liczby (dwójkowa) x = ±m 1 m 2 m 3…mt x 2±c 1 c 2 c 2…cs w sumie t+s+2 bitów

Sformułowanie zadania obliczeniowego a – wektor danych w – wektor wyników w = F(a)

Sformułowanie zadania obliczeniowego a – wektor danych w – wektor wyników w = F(a) np. a=(a, b, c), w=(x 1, x 2): ax 2+bx+c=0

Zadanie jest dobrze postawione jeżeli dla danego wektora danych a wektor wyników w jest

Zadanie jest dobrze postawione jeżeli dla danego wektora danych a wektor wyników w jest jednoznacznie określony. Przykład zadania źle postawionego: a = (e, r); w = (x, y): x 2+ey 2=r 2

Uwarunkowanie zadania Wi[a 1(1+e 1), a 2(1+e 2), …, an(1+en)] » Wi(a 1, a

Uwarunkowanie zadania Wi[a 1(1+e 1), a 2(1+e 2), …, an(1+en)] » Wi(a 1, a 2, …, an)+(¶W/¶a 1)a 1 e 1+(¶W/¶a 2)a 2 e 2+ … + (¶W/¶an)anen d. Wi/Wi =(¶W/¶a 1)a 1/Wie 1+(¶W/¶a 2)a 2/Wie 2 … + (¶W/¶an)an/Wien (¶W/¶aj)aj jest wskaźnikiem uwarunkowania Wi ze względu na aj.

Lemat Wilkinsona fi(xÄy) – operacja stałoprzecinkowa (fixed point operation) fl(xÄy) – operacja zmiennoprzecinkowa (floating

Lemat Wilkinsona fi(xÄy) – operacja stałoprzecinkowa (fixed point operation) fl(xÄy) – operacja zmiennoprzecinkowa (floating point operation) fl(x 1±x 2)=x 1(1+e 1)±x 2(1+e 2) fl(x 1 x 2)=x 1(1+e 3)x 2 fl(x 1/x 2)=x 1(1+e 4)x 2=x 1/x 2(1+e 5)

Algorytm – ciąg skończony operacji elementarnych prowadzących do otrzymania wektora wyników z wektora danych.

Algorytm – ciąg skończony operacji elementarnych prowadzących do otrzymania wektora wyników z wektora danych. Algorytm jest poprawnie sformułowany jeżeli zawsze daje się zrealizować w skończonej liczbie kroków. Algorytm jest numerycznie stabilny jeżeli wynik dąży do poprawnego rozwiązania w miarę zwiększania precyzji obliczeń.

Przykład niepoprawnego algorytmu x 0=a while (abs(x 1 -x 0)>delta) do begin x 0=x

Przykład niepoprawnego algorytmu x 0=a while (abs(x 1 -x 0)>delta) do begin x 0=x 1 x 1=0. 5*(x 0+a/x 0) end

Przykład algorytmu niestabilnego i stabilnego

Przykład algorytmu niestabilnego i stabilnego

Parę pojęć dotyczących obliczeń numerycznych • Dokładność maszynowa: najmniejsza liczba większa od zera która

Parę pojęć dotyczących obliczeń numerycznych • Dokładność maszynowa: najmniejsza liczba większa od zera która dodana do jedności daje wynik większy od jedności. • Overflow: otrzymano liczbę większą od największej zapamiętywanej przez maszynę. • Underflow: otrzymana liczba jest zbyt mała i zapamiętywane jest zero. • Na. N (not a number): wynik nie jest liczbą (np. 1/0)