Metody Matematyczne w Inżynierii Chemicznej

Slides:



Advertisements
Podobne prezentacje
Opracowała: Iwona Bieniek
Advertisements

Rekurencja 1 Podprogram lub strukturę danych nazywamy rekurencyjną, (recursive subprogram, recursive data structure) jeżeli częściowo składa się z samej.
Metody numeryczne część 1. Rozwiązywanie układów równań liniowych.
Programowanie w języku Visual Basic
Zmienne losowe i ich rozkłady
typy całkowite (całkowitoliczbowe)
ALGORYTM Co to jest algorytm?
Badania operacyjne. Wykład 2
Metody numeryczne Wykład no 1.
Wykład no 11.
Problemy nieliniowe Rozwiązywanie równań nieliniowych o postaci:
Metoda węzłowa w SPICE.
ZŁOŻONOŚĆ OBLICZENIOWA
Opracowała: Elżbieta Fedko
Materiały do zajęć z przedmiotu: Narzędzia i języki programowania Programowanie w języku PASCAL Część 7: Procedury i funkcje © Jan Kaczmarek.
INFORMATYKA Wykładowca: mgr Tadeusz Ziębakowski p. 126 I piętro (naprzeciw dziekanatu)
INFORMATYKA Wykładowca: mgr Tadeusz Ziębakowski
Instrukcja skoku GO TO etykieta Np. GO TO 100 ….. 100WRITE (*,*) Przeskok do instrukcji 100 Uwaga! NIE WOLNO skakać do wnętrzna złożonych instrukcji warunkowych.
Wstęp do interpretacji algorytmów
Dr Anna Kwiatkowska Instytut Informatyki
Zapis informacji Dr Anna Kwiatkowska.
OPORNOŚĆ HYDRAULICZNA, CHARAKTERYSTYKA PRZEPŁYWU
Metody matematyczne w Inżynierii Chemicznej
Metody Matematyczne w Inżynierii Chemicznej
Metody Matematyczne w Inżynierii Chemicznej Wprowadzenie do laboratorium.
Matematyka wokół nas Równania i nierówności
Budowa algorytmów Algorytm: skończony ciąg operacji wraz z ściśle sprecyzowanym porządkowaniem ich wykonywania, które po realizacji dają rozwiązanie dowolnego.
ALGORYTMY.
Programowanie w języku Fortran 95
Algorytmy Opracowanie: Maria Skalska na podstawie „Informatyka 2000” wydawnictwa Czarny Kruk.
POJĘCIE ALGORYTMU Pojęcie algorytmu Etapy rozwiązywania zadań
Algorytmy.
20 września 2003r. Centrum Kształcenia Ustawicznego im. St. Staszica w Koszalinie Wstęp do algorytmiki Autor: Marek Magiera.
Metody matematyczne w inżynierii chemicznej
Metody matematyczne w Inżynierii Chemicznej
Podstawy analizy matematycznej II
Zakładamy a priori istnienie rozwiązania α układu równań.
ALGORYTMY.
EXCEL Wykład 4.
Początek, koniec lub przerwanie algorytmu
Źródła błędów w obliczeniach numerycznych
Stało- i zmiennopozycyjna reprezentacja liczb binarnych
Visual Basic for Applications Poziom podstawowy Zajęcia 2
Spis treści W świecie algortmów -Budowa algorytmu
Szeregi funkcyjne dr Małgorzata Pelczar.
Henryk Rusinowski, Marcin Plis
Warsztaty dla nauczycieli przedmiotów informatycznych
ZAPIS BLOKOWY ALGORYTMÓW
Algorytmy.
Algorytmika.
ALGORYTMY Co to jest algorytm ? Cechy algorytmu Budowa algorytmów
Treści multimedialne - kodowanie, przetwarzanie, prezentacja Odtwarzanie treści multimedialnych Andrzej Majkowski informatyka +
WYKŁAD 3 Temat: Arytmetyka binarna 1. Arytmetyka binarna 1.1. Nadmiar
Metody matematyczne w Inżynierii Chemicznej
Zapis blokowy algorytmów
Metody matematyczne w inżynierii chemicznej Wykład 3. Całkowanie numeryczne.
Wykładowca: mgr Tadeusz Ziębakowski p. 126 I piętro (naprzeciw dziekanatu)
Algorytmy- Wprowadzenie do programowania
opracowała: Anna Mikuć
EXCEL Wstęp do lab. 4. Szukaj wyniku Prosta procedura iteracyjnego znajdowania niewiadomej spełniającej warunek będący jej funkcją Metoda: –Wstążka Dane:
Metody matematyczne w inżynierii chemicznej
Metody nieinkluzyjne: Metoda iteracji prostej.
Warstwowe sieci jednokierunkowe – perceptrony wielowarstwowe
Wstęp do interpretacji algorytmów
Pętle – instrukcje powtórzeń
Algorytmy. Co to jest algorytm? Przepis prowadzący do rozwiązania zadania.
Algorytmy, sposoby ich zapisu.1 Algorytm to uporządkowany opis postępowania przy rozwiązywaniu problemu z uwzględnieniem opisu danych oraz opisu kolejnych.
Metody matematyczne w Inżynierii Chemicznej
Zrozumieć, przeanalizować i rozwiązać
POJĘCIE ALGORYTMU Wstęp do informatyki Pojęcie algorytmu
Zapis prezentacji:

Metody Matematyczne w Inżynierii Chemicznej wykład 1

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

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.

Błąd - definicja Wartość dokładna=wartość przybliżona+Błąd Błąd względny=błąd/wartość dokładna

BŁĘDY OBLICZENIOWE Błąd zaokrąglenia Błąd metody Błąd obcięcia Inne błędy

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

Błąd - definicja Przedstawiając 1/3 w zapisie dziesiętnym jako 0,333

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

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

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

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

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

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

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

3. Błąd obcięcia Przykład: znaleźć pierwiastek równania xwynik i = i +1

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

3. Błąd obcięcia Dokładniejszy wzór uzyskamy stosując 3 wyrazy w rozwinięciu w szereg Taylora (k=2)

3. Błąd obcięcia Stosując zapis skrócony: Stosując powyższy wzór do przykładu

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

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>

Inne błędy Błąd przypadkowy Błąd gruby

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

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.

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

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

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

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

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”)

Wykorzystanie Visual Basica Wyprowadzanie wyników Do komórki arkusza ActiveCell.Value= zmienna Range(”AdresKomórki”)= Zmienna W okienku wiadomości MsgBox(Zmienna)

Wykorzystanie Visual Basica Dodatkowe możliwości funkcji MsgBox MsgBox(prompt[, buttons] [, title] [, helpfile, context])

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

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.)

Wykorzystanie Visual Basica Zmienne Typy Single, 1.401298E-45 do 3.402823E38 (+/-) 32bity Double, 4.94065645841247E-324 do 1.79769313486232E308 (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

Wykorzystanie Visual Basica Zmienne Definiowanie Dim NazwaZmiennej As TypZmiennej Dim NazwaZmiennej(il_w, il_kol) As TypZmiennej

Metody Matematyczne w Inżynierii Chemicznej Algorytmy iteracyjne

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).

Przykład – algorytm obliczania pierwiastka liczby N>0

Przykład – algorytm obliczania pierwiastka liczby N>0 Wzór iteracyjny: Obliczyć pierwiastek z 9. Jako pierwsze przybliżenie przyjąć x0 = 6.

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

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.

Podstawy teoretyczne procesów iteracyjnych Warunek zbieżności wyrażony za pomocą błędu k-tego kroku

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

Szybkość zbieżności procesu iteracyjnego Z definicji przekształcenia iteracyjnego: Podstawiając do rozwinięcia w szereg:

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

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

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

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

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.

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!

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

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ą

Schemat blokowy algorytmu obliczania pierwiastka kwadratowego liczby. start Czytaj N, x0 x0= x1 |x1-x0|e Drukuj x0 koniec

Związek między e i e. Ile wynosi błąd w momencie zakończenia obliczeń iteracyjnych? Iteracja pierwszego rzędu:

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

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

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ń.