1. Ralston A.: Wstęp do analizy numerycznej. PWN Warszawa 1975. 2. Fortuna Z., Macukow B., Wąsowski J.: Metody numeryczne. WNT Warszawa 1982. 3. Bjorck.

Slides:



Advertisements
Podobne prezentacje
OBLICZENIA NUMERYCZNE
Advertisements

Opracowała: Iwona Bieniek
Wartość bezwzględna liczby rzeczywistej opracowała: monika kulczak, kl
Metody numeryczne część 1. Rozwiązywanie układów równań liniowych.
Macierze, wyznaczniki, odwracanie macierzy i wzory Cramera
mgr inż. Ryszard Chybicki Zespół Szkół Ponadgimnazjalnych
Metody rozwiązywania układów równań liniowych
Wzory Cramera a Macierze
Badania operacyjne. Wykład 2
Metody numeryczne wykład no 2.
Metody Numeryczne Wykład no 3.
Metody numeryczne Wykład no 1.
Wykład no 11.
Materiały pochodzą z Platformy Edukacyjnej Portalu Wszelkie treści i zasoby edukacyjne publikowane na łamach Portalu
ZLICZANIE cz. II.
ZŁOŻONOŚĆ OBLICZENIOWA
Macierze Maria Guzik.
Podstawy rachunku macierzowego
Zastosowania geodezyjne
Metody numeryczne w chemii
Zapis informacji Dr Anna Kwiatkowska.
Równania i Nierówności czyli:
Metody numeryczne Wykład no 2.
Matematyka wokół nas Równania i nierówności
Matematyka.
POJĘCIE ALGORYTMU Pojęcie algorytmu Etapy rozwiązywania zadań
O relacjach i algorytmach
Technika Mikroprocesorowa 1
opracowanie: Agata Idczak
odwracania macierzy. Macierz odwrotna Sposoby Postaraj się przewidzieć
Matematyka Architektura i Urbanistyka Semestr 1
Wyrażenia algebraiczne
Podstawy analizy matematycznej II
Obserwatory zredukowane
A. Sumionka. Starodawna gra marynarska; Gra dwu i wieloosobowa; Gracze wykonują ruchy naprzemian; Złożona ze stosów, w których znajduje się pewna ilość
Zadanie programowania liniowego PL dla ograniczeń mniejszościowych
dla klas gimnazjalnych
Zadanie programowania liniowego PL dla ograniczeń mniejszościowych
Podstawy analizy matematycznej I
II. Matematyczne podstawy MK
Liczby rzeczywiste ©M.
Liczby całkowite dodatnie BCN
Sterowanie – metody alokacji biegunów II
Algebra Przestrzenie liniowe.
Źródła błędów w obliczeniach numerycznych
„Równania są dla mnie ważniejsze, gdyż polityka jest czymś istotnym tylko dzisiaj, a równania są wieczne.” Albert Einstein.
Stało- i zmiennopozycyjna reprezentacja liczb binarnych
Matematyka i system dwójkowy
FUNKCJE Opracował: Karol Kara.
Rozwiązywanie liniowych układów równań metodami iteracyjnymi.
KONKURS ZANIM ROZPOCZNIEMY PREZENTACJĘ ZAPRASZAMY DO WZIĘCIA UDZIAŁU W KONKURSIE NA NAJSZYBSZE ROZWIĄZANIE UKŁADU RÓWNAŃ.
WYKŁAD 3 Temat: Arytmetyka binarna 1. Arytmetyka binarna 1.1. Nadmiar
METODA ELIMINACJI GAUSSA ASPEKTY NUMERYCZNE
Wyznaczniki, równania liniowe, przestrzenie liniowe Algebra 1
Tematyka zajęć LITERATURA
Wykłady z matematyki „W y z n a c z n i k i”
Trochę algebry liniowej.
Zagadnienie własne Macierz wektorów własnych V=(v1,v2,...,vn) przekształca zatem macierz A do postaci diagonalnej: W większości zastosowań w chemii i fizyce.
Matematyka Ekonomia, sem I i II.
Rodzaje Liczb JESZCZE SA TAKIE
Metody rozwiązywania układów równań liniowych
Warstwowe sieci jednokierunkowe – perceptrony wielowarstwowe
 Formuła to wyrażenie algebraiczne (wzór) określające jakie operacje ma wykonać program na danych. Może ona zawierać liczby, łańcuchy znaków, funkcje,
Liczby 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, …(i tak dalej) nazywamy liczbami naturalnymi. Tak jak z liter tworzy się słowa, tak z cyfr tworzymy liczby. Dowolną.
LICZBY NATURALNE I CAŁKOWITE. Liczby Naturalne Liczby naturalne – liczby używane powszechnie do liczenia (na obiedzie były trzy osoby) i ustalania kolejności.
Liczbami naturalnymi nazywamy liczby 0,1,2,3,..., 127,... Liczby naturalne poznaliśmy już wcześniej; służą one do liczenia przedmiotów. Zbiór liczb.
Elementy cyfrowe i układy logiczne
Rozwiązywanie równań pierwszego stopnia z jedną niewiadomą.
POJĘCIE ALGORYTMU Wstęp do informatyki Pojęcie algorytmu
Podstawy teorii spinu ½
Zapis prezentacji:

1. Ralston A.: Wstęp do analizy numerycznej. PWN Warszawa Fortuna Z., Macukow B., Wąsowski J.: Metody numeryczne. WNT Warszawa Bjorck A., Dahlquist G.: Metody numeryczne. PWN Warszawa Pozrikidis C.: Numerical Computation in Science and Engineering. Oxford University Press 1998.

Zapis liczb w maszynie cyfrowej Liczby całkowite gdzie e i =0 lub 1. Jeżeli na zapis liczby przeznaczymy d bitów, to pierwszy bit - znak, następne d-1 bitów - zapis liczby czyli mając do dyspozycji rejestr d bitowy p=d-2 i możemy zapisać liczbę całkowitą: w Pascalu mamy reprezentacje:

1 byte = 8 bitów 1 byte shortint : -2 7 n n 127 tylko nieujemne: byte : 0 n n byte = 16 bitów integer : n n tylko nieujemne: word : 0 n n 65535

4 bite = 32 bity longint : n n W podanych zakresach liczby całkowite są reprezentowane w maszynie cyfrowej dokładnie. Przekroczenie zakresu dla danego typu liczb całkowitych powoduje najczęściej błędne obliczenia. Liczby rzeczywiste m – mantysa, c – cecha. Przyjmuje się, że Reprezentacja zmiennoprzecinkowa:

Mantysa m jest obliczana z zależności: W maszynie cyfrowej mamy do dyspozycji skończoną liczbę bitów wynoszącą t i mantysa maszynowa m t jest: a więc popełniamy błąd zaokrąglenia mantysy:

c - cecha Przykład: x=znak liczby |mantysa |znak cechy |cecha x=0|1110|011 zmieniamy jeden bit: x=0|1111|011 i mamy: Spróbujmy przedstawić w tej maszynie liczbę x=7.25 cecha: 2 3 i mantysa m=7.25/8=

reprezentacja dwójkowa mantysy: czyli

Przy ośmiu bitach dla zapisu liczb rzeczywistych - liczb między 7.00 i 7.50 nie rozróżniamy. Rzeczywiście mamy: błąd mantysy 2 -4 =0.0625, maksymalna cecha 8, czyli *8=0.5. Błąd względny : czyli lub inaczej Maksymalny błąd względny przy najostrzejszym oszacowaniu, to: ale

W Pascalu stosujemy reprezentacje: single – 4 byte w tym 1 byte cecha czyli o wielkości błędu względnego decyduje liczba bitów przeznaczonych na mantysę. błąd względny reprezentacji: a więc 7 do 8 prawidłowych cyfr znaczących. Zakres reprezentowanych liczb: gdzie

real – 6 byte cecha – 1 byte błąd względny reprezentacji: około 10 do 12 cyfr znaczących dokładnie. Zakres reprezentowanych liczb jak dla single czyli

double – 8 byte cecha 11 bitów błąd względny reprezentacji: około 15 do 16 cyfr znaczących dokładnie. Zakres reprezentowanych liczb:

extended – 10 byte cecha – 15 bitów błąd względny reprezentacji: około 19 do 20 cyfr znaczących dokładnie. Zakres reprezentowanych liczb:

Rodzaje błędów: 1. błędy danych wejściowych, 2. błędy obcięcia, 3. błędy zaokrągleń. Błąd obcięcia Błąd obcięcia:

Błąd obcięcia będzie dyskutowany przy poszczególnych metodach Błąd danych wejściowych może być np. spowodowany błędami popełnionymi przy pomiarach np. wymiarów geometrycznych, itp.. Kilka uwag na temat organizacji obliczeń Obliczyć wartość wielomianu stopnia n:

Obliczenia klasyczne: Liczba mnożeń – Liczba dodawań - n Dla n=100 mamy 5049 mnożeń i 100 dodawań. Schemat Hornera:

Liczba działań: mnożeń – n-1 dodawań - n Schemat łatwy do realizacji w pętli: w=x+a 1 for k=2 to n w=wx+a k P(x)=w Po zakończeniu pętli mamy obliczoną wartość wielomianu.

Obliczanie sum Sumę nieskończoną w obliczeniach numerycznych zastępujemy sumą skończoną: Obliczenia numeryczne: Błąd obliczeń szacujemy: gdzie k najczęściej przyjmuje się =2. Przykład:

i porównajmy błędy: gdzie z błędem:

dla K=10, Kolejność sumowania i obliczmy dla x=1 czyli

i obliczamy: oraz

Przyśpieszenie zbieżności:

Stabilność algorytmu Przykład niestabilnego algorytmu (Kincaid i Cheney, 1996r) Rozpatrzmy ciąg liczbowy: równoważny ciągowi: Dowód metodą indukcji matematycznej Algorytm I Algorytm II

Wyniki obliczeń w arytmetyce 32 bitowej według: Algorytmu IAlgorytmu II x 1 = x 2 = x 3 = x 4 = x 4 = ……………………….. x 10 = x 10 = x 20 = x 20 = x 30 = x 30 =

Algorytmu I Algorytmu II x 40 = e7 x 40 = x 100 = e42x 100 = Algorytm obliczeń rekurencyjnych: jest numerycznie niestabilny i nie może być zastosowany do obliczeń numerycznych.

Układy równań liniowych Jeżeli N<M, układ równań jest nieokreślony, N=M – określony N>M - nadokreślony Rozważymy tylko przypadek N=M

Układ NxM liczb rzeczywistych bądź zespolonych zapisujemy w formie tablicy. Taką tablicę nazywamy macierzą NM wymiarową lub macierzą prostokątną. wiersz macierzy wiersz k-ty macierzy kolumna macierzy k-ta kolumna macierzy a ik – wyraz macierzy położony we wierszu i-tym i kolumnie k-tej

Macierz symbolicznie zapisujemy w postaci jednego znaku, np.: A podając liczbę wierszy i kolumn w opisie. Inny skrócony zapis to: i=(1,N); k=(1,M) Jeżeli N=M, to macierz jest macierzą o jednakowej liczbie wierszy i kolumn. Mówimy, że jest to macierz kwadratowa stopnia N, lub macierz stopnia N.

Macierz kwadratowa stopnia N. Operacje na macierzach Mnożenie macierzy przez liczbę c. c – liczba rzeczywista lub zespolona. Dwie macierze A i B są równe czyli A=B, jeżeli mają jednakową liczbę wierszy i kolumn i zachodzi a ij =b ij dla wszystkich par (i,j).

lub krótko B=cA=[ca ik ] wymiary macierzy B są identyczne jak wymiary macierzy A. Dodawanie (odejmowanie) dwóch macierzy A i B. Obie macierze muszą mieć tę samą liczbę wierszy i kolumn.

suma: lub krótko C =A+B=[a ij +b ij ] lub w postaci realizacji na maszynie: c ij =a ij +b ij dla i=(1,N), j=(1,M): for i:=1 to N do for j:=1 to M do C[i,j]:=A[i,j]+B[i,j] Suma macierzy jest przemienna, czyli A+B=B+A

różnica: lub krótko C =A-B=[a ij -b ij ] lub w postaci realizacji na maszynie: c ij =a ij -b ij dla i=(1,N), j=(1,M): for i:=1 to N do for j:=1 to M do C[i,j]:=A[i,j]-B[i,j]

Iloczyn dwóch macierzy Dane dwie macierze prostokątne: A o wymiarze N A xM A i B o wymiarze N B xM B Obliczyć iloczyn C=AB. Macierz będącą iloczynem można obliczyć tylko wtedy, jeżeli liczba kolumn pierwszego czynnika – czyli M A – jest równa liczbie wierszy drugiego czynnika – czyli N B, a więc warunkiem wykonalności mnożenia dwóch macierzy prostokątnych jest M A =N B Macierz C będzie miała N A wierszy i M B kolumn. Jeżeli A i B są macierzami kwadratowi tego samego stopnia N mnożenie jest zawsze wykonalne.

Wyrazy macierzy C=[c ik ] będącej iloczynem macierzy AB obliczamy z zależności: Przykład: liczba wierszy 4 liczba kolumn 3 liczba wierszy 3 liczba kolumn 5

Macierz C=AB będzie macierzą o 4 wierszach i 5 kolumnach c 11 =a 11 b 11 +a 12 b 21 +a 13 b 31 =1·2+3 ·0+0 ·0=2 c 12 =a 11 b 12 +a 12 b 22 +a 13 b 32 =1 ·0+3 ·3+0 ·0=9 c 13 =a 11 b 13 +a 12 b 23 +a 13 b 33 =1 ·(-2)+3 ·4+0 ·0=10 c 14 =a 11 b 14 +a 12 b 24 +a 13 b 34 =1 ·1+3 ·0+0 ·2=1 c 15 =a 11 b 15 +a 12 b 25 +a 13 b 35 =1 ·0+3 ·0+0 ·1=0 c 21 =a 21 b 11 +a 22 b 21 +a 23 b 31 =(-2) ·2+0 ·0+3 ·0=-4 itd…

Iloczyn dwóch macierzy, również kwadratowych, nie jest przemienny czyli ABBA

Jeżeli zachodzi AB=BA mówimy, że macierze są przemienne. Macierz jednostkowa I – jest to macierz kwadratowa o wymiarze N, której wyraz δ ik jest zdefiniowany następująco: czyli np. macierz jednostkowa 5-go stopnia ma postać: Wykazać, że AI=IA=A

Ograniczymy nasze rozważania tylko do macierzy kwadratowych stopnia N O wyrazach a ii macierzy A mówimy, że leżą na głównej przekątnej a macierz A, która ma niezerowe wyrazy tylko na głównej przekątnej nazywamy macierzą diagonalną

Jeżeli w macierzy A zamienimy wiersze z kolumnami, to tak otrzymaną macierz nazywamy macierzą transponowaną i oznaczamy A T

zapisując symbolicznie możemy napisać: [a ik ] T =[a ki ] Przykład: Zachodzą związki: Przykład:

Dla każdej macierzy zachodzi

Macierz B, dla której zachodzi równość: nazywamy macierzą symetryczną Macierz B=AA T jest macierzą symetryczną.

Wyznacznik Dla danej macierzy kwadratowej A: definiujemy liczbę: gdzie detA ij jest wyznacznikiem macierzy stopnia N-1 otrzymanej przez skreślenie z macierzy A wiersza i-go i kolumny j-ej.

Jest to definicja rekurencyjna i dlatego musimy zdefiniować wyznacznik macierzy kwadratowej stopnia N=1, czyli A=[a 11 ]. Wyznacznik tej macierzy jest: detA=a 11. Dla macierzy drugiego stopnia mamy: Zgodnie ze wzorem mamy: czyli dla macierzy drugiego stopnia mamy: Wyznacznik drugiego stopnia obliczamy bezpośrednio: dla obliczenia wyznacznika musimy wykonać dwa mnożenia

Wyznacznik macierzy trzeciego stopnia: Zgodnie ze wzorem: mamy: Liczba mnożeń, którą trzeba wykonać wynosi 9=3! Wyznacznik 3-go stopnia możemy łatwo obliczyć metodą Sarrusa

Obliczenie wyznacznika N-go stopnia wymaga wykonania N! mnożeń. Obliczanie wyznaczników stopnia 4-go i wyższych jest operacją czasochłonną, Macierz odwrotna Macierz odwrotną do macierzy kwadratowej A będziemy oznaczać A -1. Macierz A -1 jest macierzą odwrotną do macierzy A tylko wtedy jeżeli Jeżeli wyrazy macierz odwrotnej oznaczymy przez b ik a wyrazy macierzy A przez a ik, to dla wyznaczenia wyrazów macierzy odwrotnej mamy N 2 równań:

Wyrazy macierzy odwrotnej można wyznaczyć ze wzorów analitycznych: gdzie detA – wyznacznik macierzy A, A ij – oznacza macierz stopnia N-1 otrzymaną z macierzy A przez skreślenie i-go wiersza i j-ej kolumny, a detA ij jest wyznacznikiem macierzy A ij. Z powyższego wzoru wynika, że warunkiem istnienia macierzy odwrotnej jest aby wyznacznik główny detA0 Podanego wzoru praktycznie nigdy nie stosujemy do obliczenia macierzy odwrotnej, gdyż prowadzi on do olbrzymiej liczby obliczeń. Szacując tylko liczbę mnożeń mamy dla obliczenia wyznacznika głównego N!. Dla obliczenia N 2 wyrazów macierzy odwrotnej (N-1)! mnożeń, a więc N!+N 2 (N-1)!=(N+1)! mnożeń.

Rozwiązywanie układów równań liniowych Dany jest układ równań liniowych: A – macierz (tablica) o wymiarze NxN, a ij – element macierzy A leżący w i-tym wierszu i j-tej kolumnie

X – wektor (tablica jednokolumnowa) niewiadomych o N składowych Zapis: Często wygodniej zapisywać w postaci: Formalnie rozwiązanie równania AX=B możemy zapisać w postaci: i ponieważ obliczenie macierzy odwrotnej wymaga (N+1)! mnożeń, więc w przybliżeniu taki byłby nakład pracy przy rozwiązaniu w ten sposób. Niestety jest to niewykonalne dla dużych układów równań.

Przestrzeń R n jest utworzona przez n - wymiarowe wektory X Definiujemy normy dla wektora: jako lub norma euklidesowa: norma maksimum: Normy wektorów są równoważne, co oznacza, że jeżeli ciąg norm jest zbieżny do zera według jednej z norm to jest zbieżny również względem pozostałych.

Macierz A o m wierszach i n kolumnach: wektorom X (m) przestrzeni R m przyporządkowuje wektory X (n) przestrzeni R n. Mówimy, że mamy operator liniowy A przekształcający przestrzeń R m w R n. Normę operatora definiujemy: Jeżeli przyjmiemy w obu przestrzeniach normę to maksymalna suma modułów w kolumnie

Jeżeli w obu przestrzeniach jest stosowana norma euklidesowa: to normę macierzy najczęściej ocenia się za pomocą normy: zwanej normą euklidesową. Dla normy maksimum w obu przestrzeniach norma macierzy jest maksymalna suma we wierszu

Metoda Gaussa bez wyboru elementu wiodącego Przykład: Zapisujemy w postaci macierzy dołączonej:

Redukcja górnej trójkątnej: W wyniku przeprowadzonej redukcji otrzymujemy układ równań w postaci:

ostatnia kolumna zawiera rozwiązanie: =X

Liczba działań w metodzie Gaussa: mnożeń: n 3 /3+n 2 -n/3 n 3 i dodawań: n 3 /3+n 2 /2-5n/6 n 3 ogólnie około n 3 działań. Licząc ze wzorów Cramera (wyznaczniki) potrzeba działań np. n=100 w metodzie Gaussa daje 10 6 działań. Jeżeli maszyna wykonuje 10 7 mnożeń na sekundę, to układ zostanie rozwiązany w czasie 0.1s. Wzorami Cramera potrzeba t.j. około s, rok około 3.1·10 7 s a więc około 145 lat

Rozważmy układ równań który jest układem już rozwiązanym po zmianie pierwszego i ostatniego wiersza: Nie może układ wierszy wpłynąć na istnienie rozwiązania!

Metoda Gaussa z częściowym wyborem elementu podstawowego Największy element w kolumnie pierwszej znajduje się we wierszu czwartym i dlatego zamieniamy te dwa wiersze miejscami:

Przeprowadzamy eliminację:

Jeszcze raz rzut oka na otrzymany układ równań:

i redukcja górnej trójkątnej: i ostatnia kolumna zawiera rozwiązanie.

Rozkład LU. Metoda Croutea. Rozkład na macierze trójkątne Dana jest macierz A i przedstawiamy ją w postaci: A=LU gdzie macierz L jest macierzą dolną trójkątną:

lub ogólnie: Macierz U górna trójkątna: lub ogólnie:

Jeżeli A=LU, to dla układu równań AX=b mamy: Rozwiązanie układu LY=b z dolną macierzą trójkątną jest łatwe: i=2,3,...,N

i rozwiązanie równania UX=Y z górną macierzą trójkątną jest łatwe: i=N-1,N-2,...,1 Duża zaleta: Znając rozkład LU możemy go wykorzystać wielokrotnie dla różnych prawych stron.

Obliczanie wyrazów macierzy L i U w wyniku mnożenia obu macierzy mamy macierz B=[b ij ] Zaczynamy kolejno: pierwszy wiersz macierzy L razy k-ta kolumna macierzy U: k-ty wiersz macierzy L razy pierwszy wiersz macierzy U:

k-ty wiersz macierzy L razy j-ta (j k) kolumna macierzy U: j-ty wiersz (j>k) macierzy L razy k-ta kolumna macierzy U:

ponieważ musi zachodzić B=A, czyli b ij =a ij dla (i,j=1,2,...,N) stąd otrzymujemy kolejno: Pierwszy wiersz macierzy U: pierwsza kolumna macierzy L: k-ty wiersz macierzy U: dla j=k,k+1,...,N k-ta kolumna macierz L: dla j=k+1,k+2,...,N

Przykład: Zgodnie z: pierwszy wiersz macierzy U:

Pierwsza kolumna macierzy L zgodnie zgdzie u 11 =4

drugi wiersz macierzy U zgodnie ze wzorem: j=2,3,4,5

j=3,4,5 Druga kolumna macierzy L:

trzeci wiersz macierzy U zgodnie ze wzorem: j=3,4,5

j=4,5 trzecia kolumna macierzy L:

czwarty wiersz macierzy U zgodnie ze wzorem: j=4,5

j=5 czwarta kolumna macierzy L:

Dla sprawdzenia czy nie popełniliśmy błędu obliczamy: B=LU

Mając macierz A=LU możemy rozwiązać równanie LUX=b dla dowolnego wektora prawej strony.

Znając rozkład LU macierzy łatwo obliczyć wyznacznik główny |A| macierzy A=LU. Mamy: ale a i ostatecznie: