METODY NUMERYCZNE Wykład. Aaliza błędów w metodach umeryczych Met.Numer. wykład Po co wprowadzamy liczby w formacie zmieoprzecikowym (floatig poit)? Przykład. W jaki sposób moża zapisać liczbę 56.78 a 5-ciu miejscach? 5 6. 7 8 Jak moża zapisać ajmiejszą liczbę w tym formacie? 0 0 0. 0 0 Jak moża zapisać ajwiększą liczbę w tym formacie? 9 9 9. 9 9 Met.Numer. wykład Po co wprowadzamy liczby w formacie zmieoprzecikowym (floatig poit)? Przykład. W jaki sposób moża zapisać liczbę 56.786 a 5-ciu miejscach? zaokrągleie (rouded off) 5 6. 7 9 urwaie (chopped) 5 6. 7 8 Wiosek: Błąd jest miejszy iż 0.0 Met.Numer. wykład
Jaki błąd popełiamy? Błąd bezwzględy o wielkość dokłada lub rzeczywista o Błąd względy Obliczeia: o o ε t o o 56.79 56.786 00 % 00% 0.00558% 56.786 Met.Numer. wykład 4 Jaki błąd popełiamy? Względe błędy wielkości małych są duże. Porówajmy: o εt o o εt o 56.79 56.786 00 % 00% 0.00558% 56.786.55.546 00 % 00% 0.80%.546 Błędy bezwzględe są jedakowe: o 56.786 56.79.546.55 0.004 Met.Numer. wykład 5 Jak utrzymać błędy względe a podobym poziomie? Moża przedstawić liczbę w postaci: zak matysa 0 wykł lub zak matysa wykł czyli 56.78 zapisujemy jako +.5678 0 0.00678 zapisujemy jako+.678 0 56.78 zapisujemy jako.5678 0 Met.Numer. wykład 6
Co zyskujemy stosując zapis zmieoprzecikowy? Zwiększa się zakres liczb, które możemy zapisać Jeżeli użyjemy tylko 5 miejsc do zapisu liczby (dodatiej o dodatim wykładiku) to ajmiejsza liczba zapisaa to a ajwiększa 9.999 0 9. 9 9 9 9 9 matysa wykładik Zakres możliwych do zapisaia liczb zwiększył się od 999.99 do 9.999 0 9. Met.Numer. wykład 7 Dlaczego? Co tracimy stosując zapis zmieoprzecikowy? Dokładość (precyzję). Liczba 56.78 będzie przedstawioa jako.5678 0 i a pięciu miejscach: 5 6 8 matysa wykładik Wystąpi błąd zaokrągleia. Met.Numer. wykład 8 Przykład do samodzielego rozwiązaia. Proszę przedstawić liczbę 5769.78 a sześciu miejscach stosując: a) metodą zaokrągleia b) urywaia (choppig) matysa wykładik. Proszę oszacować błąd bezwzględy i względy obu metod. Porówać z przypadkiem gdy dyspoujemy jedyie pięcioma miejscami. Wyciągąć wioski Met.Numer. wykład 9
Arytmetyka zmieoprzecikowasystem dziesięty Postać liczby σ m 0 e wykładik będący liczbą całkowitą zak liczby (- lub +) matysa () 0 m<(0) 0 Przykład.5678 0 σ m.5678 e Met.Numer. wykład 0 Arytmetyka zmieoprzecikowasystem dwójkowy Postać liczby σ m e wykładik będący liczbą całkowitą zak liczby (0 dla dodatiej lub dla ujemej liczby) Przykład (.00) (0) ie jest zapisywae matysa () m<() σ 0 m 00 e 0 Met.Numer. wykład Przykład Mamy słowo 9-bitowe pierwszy bit odpowiada zakowi liczby, drugi bit zakowi wykładika, astępe cztery bity kodują matysę, ostatie trzy bity zapisują wykładik 0 0 zak liczby zak wykładika matysa wykładik Zajdź liczbę (w postaci dziesiętej), która jest przedstawioa w poday sposób. Met.Numer. wykład 4
Rozwiązaie przykładu 0 0 0 0 5 (.0) ( 0) (.0) (54 0 ) ie jest zapisywae Dla zapisu liczby 54.75 trzeba mieć 7 miejsc dla matysy. ( 54.75) 0 ( 00.) (.00) (.0) ( 0) Met.Numer. wykład 5 Co to jest ε maszyy cyfrowej? Dla każdej maszyy cyfrowej defiiuje się parametr epsilo ε określający dokładość obliczeń: ε N t gdzie: N (w zapisie dwójkowym), N0 (w zapisie dziesiętym), t jest liczbą bitów w matysie liczby ε jest tym miejsze im więcej bitów przezaczoo a reprezetowaie matysy M Epsilo ε moża traktować jako parametr charakteryzujący dokładość obliczeiową maszyy (im miejsze ε tym większa dokładość). Podwója precyzja (Fortra) ε ε DP Met.Numer. wykład 4 Co to jest ε maszyy cyfrowej? Epsilo ε jest to ajmiejsza liczba, która po dodaiu do.000 produkuje liczbę, którą moża przedstawić jako różą od.000. Przykład: słowo dziesięciobitowe w 0 0 0 0 0 0 0 0 0 0 () 0 M N zak liczby wykładik matysa astępa zak wykładika 0 0 0 0 0 0 0 0 0.000. 065 liczba ( ) ( ) 0 mach.065 4 Met.Numer. wykład 5 5
Pojedycza precyzja w formacie IEEE-754 (Istitute of Electrical ad Electroics Egieers) bity dla pojedyczej precyzji 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 zak (s) wykładik (e ) matysa (m) e' 7 ( m) s Liczba ( ). Met.Numer. wykład 6 Przykład 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Sig (s) Biased Epoet (e ) Matissa (m) Value s e' 7 ( ) (. m) (00000) 7 ( ) (.000000) 6 7 ( ) (.65) 5 0 ( ) (.65) 5.584 0 Met.Numer. wykład 7 Wykładik dla -bitowego stadardu IEEE-754 8 bitów wykładika ozacza 0 e 55 Ustaloe przesuięcie wykładika wyosi 7 a zatem 7 e 8 W istocie e 54 Liczby e 0 i e 55 są zarezerwowae dla przypadków specjalych Zakres wykładika 6 e 7 Met.Numer. wykład 8 6
Reprezetacja liczb specjalych e 0 e 55 e same zera same jedyki s m Reprezetuje 0 same zera same zera 0 same zera same zera -0 0 same jedyki same jedyki 0 lub same jedyki same zera same zera róże od zera NaN Met.Numer. wykład 9 Format IEEE-754 Największa liczba 7 8 (...).40 Najmiejsza liczba 0 6 8 (.00...0).8 0 Epsilo maszyy cyfrowej ε mach.9 0 7 Met.Numer. wykład 0 Aaliza błędów Jeżeli ie zamy wielkości dokładej o możemy obliczać błąd bezwzględy przybliżeia (ag. approimate error) jako różicę wartości uzyskaych w kolejych przybliżeiach : Błąd względy ε a : ε a Met.Numer. wykład 7
Przykład 0.5 Dla f ( ) 7e w a) f () dla h 0. b) f () dla h 0. 5 c) błąd przybliżeia zajdź a) h 0. Rozwiązaie f ( + 0,) f () 7e f '() 0, f ( + h) f ( ) f ' ( ) h 0,5(,) 7e 0, 0,5() 0,65 Met.Numer. wykład Przykład (cd) b) h 0.5 f ( + 0,5) f () 7e f '() 0,5 c) ε a ε a Błąd procetowy,89% 0,5(,5) 7e 0,5 9,880 0,65 0,089 9,8800 0,5() 9,880 Met.Numer. wykład Błąd względy jako kryterium zakończeia procedury iteracyjej Jeżeli błąd względy jest miejszy lub rówy od pewej określoej wcześiej liczby to dalsze iteracje ie są koiecze ε a ε s Jeżeli wymagamy przyajmiej m cyfr zaczących w wyiku to ε a 0.5 0 m Met.Numer. wykład 4 8
Podsumowaie przykładu ε h f () a 0.5 0 εa m 0. 0.65 N/A 0 0.5 9.8800 0.0894 0.0 9.7559 0.07 0.0 9.578 0.086 0.00 9.564 0.005 m Wartość dokłada 9.54 Met.Numer. wykład 5 Źródła błędów w obliczeiach umeryczych. Błędy wejściowe (błędy daych wejściowych). Błędy obcięcia (ag. trucatio error). Błędy zaokrągleń (ag. roud off error) Błędy wejściowe występują wówczas gdy dae wejściowe wprowadzoe do pamięci komputera odbiegają od dokładych wartości tych daych. Błędy obcięcia są to błędy wyikające z procedur umeryczych przy zmiejszaiu liczby działań. Błędy zaokrągleń są to błędy, których a ogół ie da się uikąć. Powstają w trakcie obliczeń i moża je zmiejszać ustalając umiejętie sposób i kolejość wykoywaia zadań. Met.Numer. wykład 6 Błędy wejściowe Źródła błędów wejściowych: dae wejściowe są wyikiem pomiarów wielkości fizyczych skończoa długość słów biarych i koieczość wstępego zaokrąglaia wstępe zaokrąglaie liczb iewymierych Przybliżaie liczb, których ie moża wyrazić dokładie dokouje się poprzez: urywaie (ag. choppig) zaokrąglaie (ag. roudig) Met.Numer. wykład 7 9
Przykład: π,45 π,4596559 π,46 urywaie zaokrąglaie Zaokrąglaie prowadzi do miejszego błędu iż urywaie. Met.Numer. wykład 8 Błąd obcięcia Spowodoway jest użyciem przybliżoej formuły zamiast pełej operacji matematyczej: przy obliczaiu sum ieskończoych szeregów przy obliczaiu wielkości będących graicami (całka, pochoda) W lim Δ 0 F Δ Fd praca Met.Numer. wykład 9 Szereg Taylora Jeżeli fukcja jest ciągła i wszystkie pochode f, f, f istieją w przedziale [, +h] to wartość fukcji w pukcie +h moża obliczyć jako: f ( + h) f ( ) + f ( ) f h +! ( ) f ( ) h h! +! h h! +L Szereg Maclauria jest to rozwiięcie wokół 0 f ( 0 + h) f ( 0) + f ( 0) h + f ( 0) + f ( 0) + L+ Met.Numer. wykład 0 0
Przykłady Typowe rozwiięcia w szereg wokół zera cos( ) + +L! 4! 6! si( ) + +L! 5! 7! e + + + +L!! 5 4 7 6 Met.Numer. wykład Błąd obcięcia w szeregu Taylora f h! h! ( ( + h) f ( ) + f ( ) h + f ''( ) + L+ f ) ( ) + R ( ) R + h ( + )! ( + ( ) f ) () c < c < + h reszta Met.Numer. wykład Przykład Rozwiięcie w szereg e wokół 0 e 4 5 + + + + + +L!! 4! 5! Im większa ilość wyrazów jest uwzględiaa w rozwiięciu, tym błąd obcięcia jest miejszy i możemy zaleźć tym dokładiejszą wartość wyrażeia Pytaie: Ile ależy uwzględić wyrazów aby otrzymać przybliżoą wartość liczby e z błędem miejszym iż 0-6? e 4 5 + + + + + +L!! 4! 5! + + + + 6 4 0 Met.Numer. wykład
Rozwiązaie 0, h, f ( ) e R + h ( + )! ( + ( ) f ) () c ale < c < + h 0 < c < 0 + 0 < c < R ( 0) + ( + )! + () ( + )! ( + f ) () c e < R ( 0) < ( + )! ( + )! e c Met.Numer. wykład 4 Rozwiązaie ( e + < 0 )! 6 założoy poziom błędu 6 ( + )! > 0 e ( + )! > 0 9 6 Co ajmiej 9 wyrazów musimy zastosować aby otrzymać wartość błędu a poziomie 0-6 Met.Numer. wykład 5 Przykład tragiczego błędu zaokrągleia 5 lutego 99 w Dhahra, Arabia Saudyjska, zgięło 8 amerykańskich żołierzy w wyiku ataku irackiej rakiety Scud. System obroy Patriot ie wykrył zagrożeia. Dlaczego? System oblicza powierzchię, którą powiie skaować a podstawie prędkości obiektu i czasu ostatiej detekcji. Zegar wewętrzy był ustawioy a pomiar co /0 sekudy. Długość słowa 4 bity. Z powodu zaokrągleń błąd bezwzględy wyiósł 9.5 0-8 s a po 00 godziach: 9.5 0 8 0 60 60 00 0.4 sec Przesuięcie obliczoe a tej podstawie 687 m. Obiekt jest uzay poza zakresem gdy przesuięcie wyosi 7 m Met.Numer. wykład 6
Działaia arytmetycze. Dodawaie i odejmowaie Aby dodać lub odjąć dwie zormalizowae liczby w zapisie zmieoprzecikowym, wykładiki w powiy być zrówae poprzez odpowiedie przesuięcie matysy. Przykład: Dodać 0,4546 0 5 do 0,54 0 7 przesuwamy 0,0045 0 7 +0,54 0 7 0,5478 0 7 Wiosek: Tracimy pewe cyfry zaczące Met.Numer. wykład 7. Możeie Działaia arytmetycze Przykład: Pomożyć 0,554 0 przez 0,4 0-5 Możymy matysy i wykładiki w dodajemy. 0,554 0 0,4 0-5 0,787 0-0,78 0 -. Dzieleie Przykład: Podzielić 0,000 0 5 przez 0,9999 0 0,000 0 5 /0,9999 0 0,000 0 Za każdym razem tracimy pewe cyfry zaczące co jest źródłem błędu Met.Numer. wykład 8 Kolejość działań (a+b)-c (a-c)+b brak przemieości, łączości a(b-c) (ab-ac) brak rozdzielości możeia względem dodawaia Przykład: a 0,5665 0, b0,5556 0 -, c0,5644 0 (a+b)0,5665 0 +0,5556 0-0,5665 0 +0,0055 0 0,570 0 (a+b)-c0,570 0-0,5644 0 0,7600 0 - (a-c)0,5665 0-0,5644 0 0,00 0 0,00 0 - (a-c)+b0,00 0 - +0,5556 0-0,7656 0 - Met.Numer. wykład 9
Wioski z dotychczasowych rozważań W wielu przypadkach moża uikąć błędów wejściowych i błędów obcięcia. W trakcie obliczeń pojawiają się owe błędy (błędy zaokrągleń), których ie da się uikąć. Błędy zaokrągleń moża zmiejszyć ustalając umiejętie sposób i kolejość wykoywaia działań. Met.Numer. wykład 40 Propagacja błędów 40 y 0 00 80 60 40 0 0 u(y) fukcja y f() stycza dy dy/d u (y) u() d u() 0 4 Met.Numer. wykład 4 Metoda różiczki zupełej Dla wielkości złożoej yf(,,... ) gdy iepewości maksymale Δ, Δ,... Δ są małe w porówaiu z wartościami zmieych,,... iepewość maksymalą wielkości y wyliczamy z praw rachuku różiczkowego: y y Δ y Δ + Δ +... + y Δ Met.Numer. wykład 4 4
Przykład Oszacować błąd pomiaru gęstości ρ kuli o masie m i promieiu R błąd bezwzględy ale błąd względy ρ m m ρ( m, R) (4 )πr ρ ρ Δρ Δm + ΔR m R ( 4 ) πr ρ R ε ρ ε m + ε R 4 ( 4 ) πr Met.Numer. wykład 4 Błędy działań arytmetyczych Błąd sumy A a ± Δa B b ± Δb błędy bezwzględe składików sumy A + B a + b ± Δa ± Δb a + b ± Δ( a + b) błąd bezwzględy sumy Zatem błąd bezwzględy sumy (różicy) jest rówy sumie błędów składików. Δ ( a ± b) Δa + Δb Met.Numer. wykład 44 Błędy działań arytmetyczych Błąd względy sumy Błąd względy różicy ε ε a+ b a b Δa + Δb a + b Δa + Δb a b Błąd względy różicy może być duży awet gdy błędy względe odjemej i odjemika są małe. Należy uikać odejmowaia prawie rówych liczb przybliżoych! Zjawisko zwae redukcją cyfr zaczących Szczególie istote przy obliczeiach ilorazów różicowych przybliżających pochode fukcji, pierwiastków rówaia kwadratowego przy domiującym współczyiku przy pierwszej potędze, itp. Met.Numer. wykład 45 5
Kocepcja zera Tracimy dokłady ses liczby 0 jeśli dokoujemy obliczeń umeryczych pierwiastkami są ± w przybliżeiu + 0 0,70 0 o -0.7 0 Sprawdzić, że po podstawieiu rozwiązań przybliżoych ie otrzymujemy dokładie liczby zero Powio się zatem uikać odejmowaia bliskich sobie liczb i waruek w pętli ie powiie być ustawiay do zera, if a-b<ε Met.Numer. wykład 46 Wioski praktycze Przy obliczeiach umeryczych korzyste jest: poowe rozwiązaie tego samego zagadieia ią metodą lub taką samą metodą, ale z ią kolejością operacji poowe rozwiązaie zagadieia przy iezaczej zmiaie daych wejściowych Met.Numer. wykład 47 Zadaia i algorytmy umerycze Zadaie umerycze wymaga jasego i iedwuzaczego opisu powiązaia fukcjoalego między daymi wejściowymi czyli zmieymi iezależymi zadaia i daymi wyjściowymi, tj. szukaymi wyikami. Zadaie umerycze jest problemem polegającym a wyzaczeiu wektora wyików w a podstawie wektora daych a zadaie dobrze odwzorowaie W postawioe a D w r r w W (a) jedozacze przyporządkowaie Met.Numer. wykład 48 6
Zadaia i algorytmy umerycze Algorytm umeryczy jest pełym opisem poprawie określoych operacji przekształcających wektor dopuszczalych daych wejściowych (zbiór DN) a wektor daych wyjściowych. Algorytm jest poprawie sformułoway gdy liczba iezbędych działań będzie skończoa DN D a DN odwzorowaie WN w w WN( a, ε) wektor wyiku zależy od dokładości obliczeiowej ε maszyy cyfrowej Met.Numer. wykład 49 Przykłady algorytmów.. Daa jest liczba zespoloa a+iy. Obliczyć /a Algorytm I: t y / (tages fazy liczby a) a + y (kwadrat modułu liczby a) t Re Im a / a / + t / a /. t a + t Zadaie jest dobrze postawioe, jeżeli: + y 0 czyli: D R { (0,0)} Algorytm jest poprawie sformułoway ( iezbędych działań) Met.Numer. wykład 50 Przykłady algorytmów Nie dla każdej pary daych (,y) 0 moża zaleźć rozwiązaie zadaia stosując algorytm I.. Wystąpi admiar liczb zmieopozycyjych (dla 0 ale także z powodu zaokrągleia do zera). Nadmiar może astąpić może już w pierwszym kroku gdy 0-5 i y0 5 z powodu dzieleia y/. Dla 0, istiejącego dla y 0 rozwiązaia ie moża wyzaczyć stosując te algorytm. Wzrost dokładości obliczeń ie zmiei tego faktu. Algorytm I ie jest umeryczie stabily Met.Numer. wykład 5 7
Przykłady algorytmów Daa jest liczba zespoloa a+iy. Obliczyć /a Algorytm II:.. y r Re a + y y u Im a + y Algorytm II jest poprawie sformułoway (9 iezbędych działań) Algorytm II jest umeryczie stabily co wyika z ciągłości wzorów dla + y 0 Met.Numer. wykład 5 Uwarukowaie zadaia i stabilość algorytmów Algorytm obliczeiowy jest umeryczie stabily, jeżeli dla dowolie wybraych daych a 0 D istieje taka dokładość obliczeń ε 0, że dla ε<ε 0 mamy a 0 DN( ε ) oraz limwn ( a0, ε) W ( a0) ε 0 Algorytm obliczeiowy jest umeryczie stabily wtedy, gdy zwiększając dokładość obliczeń moża wyzaczyć ( z dowolą dokładością) dowole istiejące rozwiązaie zadaia. Met.Numer. wykład 5 Uwarukowaie zadaia i stabilość algorytmów Uwarukowaiem zadaia azywamy cechę, która mówi jak bardzo wyik dla zaburzoego wektora daych różi się od wyiku dla dokładego wektora daych czyli: W(a + δa) W(a) Wskaźik uwarukowaia zadaia B(a) jest to liczba, dla której jest spełioy waruek: δw w δa B(a) a δw WN( a, ε) W ( a) Met.Numer. wykład 54 8
Wskaźik uwarukowaia zadaia Przyjmijmy względy błąd wielkości ~ ~ Względy błąd wielkości f() f ( ) f ( ~ ) f '( ~ )( ~ ) ( ~ f ) f ( ~ ) Wskaźik uwarukowaia: ~ f '( ~ ) f ( ~ ) Met.Numer. wykład 55 Wskaźik uwarukowaia zadaia Przykład f ( ) Wskaźik uwarukowaia: ~ '( ~ f ) ( ~ f ) zadaie dobrze uwarukowae Met.Numer. wykład 56 Wskaźik uwarukowaia zadaia Przykład 0 f ( ) Wskaźik uwarukowaia: ~ f '( ~ ) ( ~ f ) zadaie źle uwarukowae w pobliżu i - Met.Numer. wykład 57 9
Schemat Horera Przykład wzoru rekurecyjego Aby obliczyć wartość wielomiau: + a +... + a p ( ) + a w daym pukcie z, korzystamy ze schematu: p z + a p zp + a p + a zp ( z) p p co odpowiada obliczaiu wartości wyrażeia: { z[ z...( z + a ) + a] +... + a } a z + Met.Numer. wykład 58 Schemat Horera Schemat Horera umożliwia zacze zmiejszeie liczby działań arytmetyczych. W schemacie Horera wykoujemy - możeń i dodawań. Obliczając bezpośredio: zz... z + + a z... z +... + a z a o razy - razy wykoujemy (-)(+)/ możeń i dodawań. Oszacowaie wielkości błędów zaokrągleń jest idetycze dla obu metod Met.Numer. wykład 59 Schemat Horera Przykład: oblicz 0z z p ( z) a + a + a z + a w schemacie Horera dla obliczeń ręczych: p ( z) (( a z + a 0 z + a) z + a) a 0 a a a zb 0 zb zb b 0 b b b p(z)b Zadaie: Oblicz p(8) dla p() ++7 0 7 6 8 0 8 6 9 09 p(8)09 Met.Numer. wykład 60 0