Pobierz prezentację
Pobieranie prezentacji. Proszę czekać
1
Metody Matematyczne w Inżynierii Chemicznej
wykład 1
2
Literatura Emil Slavicek, Technika obliczeniowa dla chemików, WNT Warszawa 1991 Anthony Ralston, Wstęp do analizy numerycznej Karol Machej, Elementy programowania w języku BASIC i Pascal, skrypt 1833 William Volk, Statystyka stosowana dla inżynierów WNT Warszawa 1965
3
Czym są metody numeryczne?
Dział matematyki zajmujący się rozwiązywaniem problemów matematycznych za pomocą operacji ARYTMETYCZNYCH. Wykorzystuje się przybliżenia wielkości niearytmetycznych arytmetycznymi i badanie błędów tego przybliżenia.
4
Błąd - definicja Wartość dokładna=wartość przybliżona+Błąd
Błąd względny=błąd/wartość dokładna
5
BŁĘDY OBLICZENIOWE Błąd zaokrąglenia Błąd metody Błąd obcięcia
Inne błędy
6
1. Błąd zaokrąglenia Dokładnie można przedstawić tylko liczby całkowite i wymierne. Liczby niewymierne zawsze zapisujemy z błędem bo używamy skończonej ilości cyfr. Wymierne często też skracamy Przykład Używając 5 miejsc znaczących Popełniamy błąd zaokrąglenia
7
Błąd - definicja Przedstawiając 1/3 w zapisie dziesiętnym jako 0,333
8
Cyfry znaczące d= pozycja cyfry w liczbie
Błąd zaokrąglenia d-tej cyfry d 2 1 -1 -2 -3 -4 -5 -6 5 , 7 6 3
9
Cyfry znaczące Cyfrę na pozycji k-tej nazywamy znaczącą jeżeli dla przybliżenia y dokładnej liczby x Dla poprawnych zaokrągleń znaczące są wszystkie cyfry zaokrąglenia k 2 1 -1 -2 -3 -4 50 5 0,5 0,05 ,005 0,0005 0,00005
10
Cyfry znaczące x=1,264578985422 y=1,2646 k -1 -2 -3 -4 -5 0,5 0,05
-1 -2 -3 -4 -5 0,5 0,05 ,005 0,0005 0,00005 0,000005
11
Cyfry znaczące Ilość cyfr znaczących n jest miarą błędu względnego
Istotny jest wzrost błędu względnego przy odejmowaniu liczb podobnych
12
2. Błąd metody Jego przyczyna leży w niedoskonałości metod obliczeniowych, Zastosowania skończonych przyrostów w miejsce nieskończenie małych. Zastosowanie funkcji przybliżających w miejsce rzeczywistych
13
2. Błąd metody przykład Obliczyć pochodną w punkcie x = 0,4 i xi yi 1
0,1 0,01 2 0,2 0,04 3 0,3 0,09 4 0,4 0,16 5 0,5 0,25 6 0,6 0,36 7 0,7 0,49 8 0,8 0,64 Wynik dokładny to 0,8 Błąd wynosi 0,1 = x, metoda jest I-go rzędu
14
3. Błąd obcięcia Dotyczy: Do wyniku dokładnego:
iteracyjnych metod obliczeniowych (w których do rozwiązania zbliżamy się powtarzając obliczenia) usunięcia mniej znaczących wyrazów (np. w rozwinięciu w szereg) Do wyniku dokładnego: w metodach iteracyjnych dochodzi się po nieskończonej ilości powtórzeń a praktycznie obliczenia trzeba w pewnym momencie zakończyć Stosując nieskończoną ilość wyrazów
15
3. Błąd obcięcia Przykład: znaleźć pierwiastek równania xwynik
i = i +1
16
Rozwinięcie w szereg Taylora
3. Błąd obcięcia Rozwinięcie w szereg Taylora w przedstawionej wcześniej metodzie ograniczono się do k=1 n = 1, h = x, x = xi, x+nh = xi+1
17
3. Błąd obcięcia Dokładniejszy wzór uzyskamy stosując 3 wyrazy w rozwinięciu w szereg Taylora (k=2)
18
3. Błąd obcięcia Stosując zapis skrócony:
Stosując powyższy wzór do przykładu
19
4. Inne błędy - błąd systematyczny
Związany jest z niedokładnymi wskazaniami przyrządów pomiarowych Każdy przyrząd pomiarowy ma określoną dokładność nazwaną klasą dokładności. Błąd E wskazań przyrządu oblicza się mnożąc skalę S przez klasę K i dzieląc przez 100
20
4. Inne błędy - błąd systematyczny
Przykład: manometr ma zakres 250bar i klasę 2,5. W jakich granicach mieści się zmierzone za jego pomocą ciśnienie Oznacza to, że jeżeli manometr wskazał ciśnienie 100bar to rzeczywiste ciśnienie mieści się w przedziale <93,75; 106,25>
21
Inne błędy Błąd przypadkowy Błąd gruby
22
ALGORYTM DEFINICJA Algorytm jest to jednoznaczny przepis pozwalający na wykonanie postawionego zadania. Ma następujące cechy: Określoność – nie ma w nim dowolności, czyli przypadkowego postępowania Ogólność – pozwala rozwiązać klasę zadań a nie tylko jedno szczególne zadanie. Np. za algorytm można uznać przepis na sumowanie dwóch liczb a nie taki, który dodaje 2 i 2. Efektywność – oznacza, że po wykonaniu skończonej i możliwie najmniejszej ilości operacji otrzymuje się poprawny wynik
23
Schemat blokowy DEFINICJA Schemat blokowy to graficzny obraz struktury algorytmu. Składa się z określonych (znormalizowanych) znaków i symboli graficznych (tzw. bloków) połączonych liniami. Kolejność wykonywania określają linie łączące bloki, od góry na dół i od lewej do prawej, chyba że strzałki stanowią inaczej. Pierwszym elementem jest zawsze blok START, a ostatnim KONIEC. Operacje wykonywane w danym elemencie wpisuje się wewnątrz bloku.
24
Podstawowe elementy Schematów Blokowych
Początek, koniec schematu Przetwarzanie danych Operacje wejścia, wyjścia (np. druk) Blok decyzyjny. Wybór jednej z dróg w zależności od spełnienia warunku Proces uprzednio zdefiniowany, podprogram Łączniki: stronicowy i międzystronicowy
25
Zadanie przykładowe: obliczanie wartości dowolnej funkcji liniowej dla różnych wartości zmiennej niezależnej Wprowadzić współczynniki a i b równania liniowego Wprowadzić wartość zmiennej niezależnej x Obliczyć y = ax+b Wydrukować y Zapytać czy kontynuować obliczenia dla nowych x Jeżeli odpowiedź to „tak” wtedy powrót do punktu 2 Koniec
26
Drukuj: czy liczyć dalej?(t/n)
start Czytaj: a, b Czytaj: x y = ax + b Drukuj: y Drukuj: czy liczyć dalej?(t/n) Czytaj: O O = „t” tak koniec
27
Program w BASICu 10 INPUT a, b 20 INPUT x 30 y = a*x+b 40 PRINT y
50 PRINT "Czy liczyć dla nowego x (t/n)" 60 INPUT O$ 70 IF O$ = "t" THEN GOTO 20 80 PRINT "Czy liczyć dla nowych parametrów a,b (t/n)„ 90 INPUT O1$ 100 IF O1$ = "t" THEN GOTO 10 110 END
28
Wykorzystanie Visual Basica z Excela
Wprowadzenie danych: Z komórek arkusza zmienna=ActiveCell.Value Zmienna=Range(”AdresKomórki”) Z okienka wprowadzania danych Zmienna=InputBox(”opis okienka”)
29
Wykorzystanie Visual Basica
Wyprowadzanie wyników Do komórki arkusza ActiveCell.Value= zmienna Range(”AdresKomórki”)= Zmienna W okienku wiadomości MsgBox(Zmienna)
30
Wykorzystanie Visual Basica
Dodatkowe możliwości funkcji MsgBox MsgBox(prompt[, buttons] [, title] [, helpfile, context])
31
Wykorzystanie Visual Basica
5 a = InputBox("podaj a") b = InputBox("podaj b") 10 x = InputBox("podaj x") y = a * x + b odp = MsgBox(y, 5, "wynik") If odp = 4 Then GoTo 10 odp1 = MsgBox("czy liczyć dla nowych parametrów?", 1, "pytanie:") If odp1 = 1 Then GoTo 5
32
Wykorzystanie Visual Basica
Zmienne Oznaczenia Litery (A, B itp.) Wyrazy (ilosc, masa itp.) Kombinacje liter i cyfr (A1, c3 itp.) Kilka wyrazów połączonych (NazwaZbioru, srednica_wew itp.)
33
Wykorzystanie Visual Basica
Zmienne Typy Single, E-45 do E38 (+/-) 32bity Double, E-324 do E308 (64 bity) Boolean, false, true Byte, 0 to 255 Integer, -32,768 to 32,767 Long -2,147,483,648 to 2,147,483,647
34
Wykorzystanie Visual Basica
Zmienne Definiowanie Dim NazwaZmiennej As TypZmiennej Dim NazwaZmiennej(il_w, il_kol) As TypZmiennej
35
Metody Matematyczne w Inżynierii Chemicznej
Algorytmy iteracyjne
36
Algorytmy iteracyjne - definicja
Jest to klasa algorytmów, w których występuje powtarzanie pewnych kroków obliczeń w wyniku czego otrzymuje się rozwiązanie z dokładnością rosnącą wraz z liczbą powtórzeń. Całkowicie dokładny wynik uzyskuje się po nieskończonej liczbie powtórzeń (iteracji).
37
Przykład – algorytm obliczania pierwiastka liczby N>0
38
Przykład – algorytm obliczania pierwiastka liczby N>0
Wzór iteracyjny: Obliczyć pierwiastek z 9. Jako pierwsze przybliżenie przyjąć x0 = 6.
41
Podstawy teoretyczne procesów iteracyjnych
Rozważmy zadanie typu: Pierwszy krok to przekształcenie do postaci Z której wynika: Od kolejnych wartości xk oczekuje się, by spełniały warunek: rozwiązanie dokładne
42
Podstawy teoretyczne procesów iteracyjnych
Inaczej można to wyrazić wzorem: Aby algorytm można uznać za algorytm iteracyjny to przekształcenie Musi dawać zbieżny ciąg wartości xk.
43
Podstawy teoretyczne procesów iteracyjnych
Warunek zbieżności wyrażony za pomocą błędu k-tego kroku
44
Szybkość zbieżności procesu iteracyjnego
Związek miedzy ek+1 i ek Rozwijając funkcję F(x) w szereg Taylora wokół punktu xk na promieniu h = ek można wyprowadzić zależność na zmianę błędu w kolejnym kroku. Z definicji błędu: Jak szybko zmienia się błąd w kolejnych krokach iteracji, zależność pomiędzy błędami w kolejnych krokach
45
Szybkość zbieżności procesu iteracyjnego
Z definicji przekształcenia iteracyjnego: Podstawiając do rozwinięcia w szereg:
46
Szybkość zbieżności procesu iteracyjnego
Wprowadzając oznaczenie: Zakładając, że ek jest bardzo małe, znaczenie ma ten wyraz, dla którego parametr b jest różny od 0 przy najmniejszej potędze ek Z praktycznego punktu widzenia rozpatruje się tylko potęgi od 1 - 3
47
Szybkość zbieżności procesu iteracyjnego
1. Jeżeli b1 0, błędy w dwu kolejnych krokach wiąże zależność liniowa: Iteracja pierwszego rzędu 2. Jeżeli b1 = 0 i b2 0 , błędy w dwu kolejnych krokach wiąże zależność paraboliczna: Iteracja drugiego rzędu
48
Szybkość zbieżności procesu iteracyjnego
3. Jeżeli b1 = 0 i b2 = 0 a b3 0 , błędy w dwu kolejnych krokach wiąże zależność: Iteracja trzeciego rzędu Ponieważ ek<1 to im większy rząd metody tym jest ona szybciej zbieżna
49
Warunki zbieżności procesu iteracyjnego w zależności od jego rzędu
Aby proces iteracyjny był zbieżny dla dowolnego kroku k większego od pewnego kroku p musi być spełniony warunek: Proces pierwszego rzędu lub
50
Warunki zbieżności procesu iteracyjnego
W przypadku metod rzędu I-go jedynym warunkiem zbieżność jest by moduł pochodnej F’(x) w punkcie startowym był mniejszy od 1.
51
Warunki zbieżności procesu iteracyjnego
2. Proces drugiego rzędu lub W warunku zbieżności występuje wartość błędu. Ponieważ jest ona nieznana nie dla wszystkich punktów startowych będzie on mniejszy od granicznego ep dlatego obliczenia mogą nie być zbieżne!
52
Warunki zbieżności procesu iteracyjnego
3. Proces iteracyjny trzeciego rzędu Podobnie jak w przypadku II-go rzędu osiągnięcie zbieżności zależy od przyjętego punktu startowego
53
Praktyczny warunek zakończenia obliczeń
Ponieważ rzeczywista wartość błędu jest nieznana jako warunek kończący obliczenia przyjmuje się zależność opartą o różnicę rozwiązania obliczonego w dwóch kolejnych krokach e - założona wartość określająca dokładność obliczeń Wykorzystuje się ją w algorytmie, do sformułowania warunku kończącego pętlę iteracyjną
54
Schemat blokowy algorytmu obliczania pierwiastka kwadratowego liczby.
start Czytaj N, x0 x0= x1 |x1-x0|e Drukuj x0 koniec
55
Związek między e i e. Ile wynosi błąd w momencie zakończenia obliczeń iteracyjnych? Iteracja pierwszego rzędu:
56
Związek między e i e. Jeżeli b1 jest bliskie 1 to błąd jest znacząco większy e. Np. dla b1 = 0,9
57
Można zaniedbać w różnicy
Związek między e i e. Iteracje wyższych rzędów Z warunku zbieżności: Można zaniedbać w różnicy
58
Związek między e i e. Dla iteracji wyższych błędów rzeczywisty błąd obliczeń ek jest zwykle co najmniej o rząd wielkości mniejszy od parametru e decydującego o zakończeniu obliczeń.
Podobne prezentacje
© 2024 SlidePlayer.pl Inc.
All rights reserved.