Pobierz prezentację
Pobieranie prezentacji. Proszę czekać
OpublikowałSylwia Rzeźniczak Został zmieniony 11 lat temu
1
Metody Matematyczne w Inżynierii Chemicznej
wykład 1
2
Literatura Emil Slavicek, Technika obliczeniowa dla chemików
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
3
BŁĘDY OBLICZENIOWE Błąd zaokrąglenia Błąd metody Błąd obcięcia
4
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. Przykład Używając 5 miejsc znaczących Popełniamy błąd zaokrąglenia
5
2. Błąd metody Jego przyczyna leży w niedoskonałości metod obliczeniowych, które aby dać dokładny wynik wymagają: Użycia nieskończonej ilości składników, np. rozwinięcie w szereg Taylora o nieskończonej ilości wyrazów albo Zastosowania nieskończenie małe przyrostów. Praktyczne zastosowanie wymaga użycia skończonych wielkości.
6
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
7
Rozwinięcie w szereg Taylora
2. Błąd metody 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
8
2. Błąd metody Dokładniejszy wzór uzyskamy stosując 3 wyrazy w rozwinięciu w szereg Taylora (k=2)
9
2. Błąd metody Stosując zapis skrócony:
Stosując powyższy wzór do przykładu
10
3. Błąd obcięcia Dotyczy iteracyjnych metod obliczeniowych (w których do rozwiązania zbliżamy się powtarzając obliczenia) 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ć.
11
3. Błąd obcięcia Przykład: znaleźć pierwiastek równania xwynik
i = i +1
12
4. 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
13
4. 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>
14
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
15
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.
16
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
17
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
18
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
19
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
20
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”)
21
Wykorzystanie Visual Basica
Wyprowadzanie wyników Do komórki arkusza ActiveCell.Value= zmienna Range(”AdresKomórki”)= Zmienna W okienku wiadomości MsgBox(Zmienna)
22
Wykorzystanie Visual Basica
Dodatkowe możliwości funkcji MsgBox MsgBox(prompt[, buttons] [, title] [, helpfile, context])
23
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
24
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.)
25
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
26
Wykorzystanie Visual Basica
Zmienne Definiowanie Dim NazwaZmiennej As TypZmiennej Dim NazwaZmiennej(il_w, il_kol) As TypZmiennej
27
Metody Matematyczne w Inżynierii Chemicznej
Algorytmy iteracyjne
28
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).
29
Przykład – algorytm obliczania pierwiastka liczby N>0
30
Przykład – algorytm obliczania pierwiastka liczby N>0
Wzór iteracyjny: Obliczyć pierwiastek z 9. Jako pierwsze przybliżenie przyjąć x0 = 6.
33
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
34
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.
35
Podstawy teoretyczne procesów iteracyjnych
Warunek zbieżności wyrażony za pomocą błędu k-tego kroku
36
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
37
Szybkość zbieżności procesu iteracyjnego
Z definicji przekształcenia iteracyjnego: Podstawiając do rozwinięcia w szereg:
38
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
39
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
40
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
41
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
42
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.
43
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!
44
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
45
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ą
46
Schemat blokowy algorytmu obliczania pierwiastka kwadratowego liczby.
start Czytaj N, x0 x0= x1 |x1-x0|e Drukuj x0 koniec
47
Związek między e i e. Ile wynosi błąd w momencie zakończenia obliczeń iteracyjnych? Iteracja pierwszego rzędu:
48
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
49
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
50
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.