Numerička matematika 1. predavanje dodatak Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb NumMat 2019, 1. pre
|
|
- Rada Stefanović
- пре 5 година
- Прикази:
Транскрипт
1 Numerička matematika 1. predavanje dodatak Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb NumMat 2019, 1. predavanje dodatak p. 1/102
2 Sadržaj predavanja dodatka Prikaz realnih brojeva u računalu IEEE standard: Osnovni oblik floating point prikaza mantisa i eksponent. IEEE standard tipovi: single, double, extended. Greške zaokruživanja u prikazu. Pojam jedinične greške zaokruživanja. Greške zaokruživanja u aritmetici realnih brojeva: Greške zaokruživanja osnovnih aritmetičkih operacija. Opasno ili katastrofalno kraćenje. Širenje grešaka zaokruživanja. Stabilni i nestabilni algoritmi. NumMat 2019, 1. predavanje dodatak p. 2/102
3 Sadržaj predavanja dodatka Primjeri širenja grešaka zaokruživanja i izbjegavanja nestabilnosti: Parcijalne sume harmonijskog reda. Korijeni kvadratne jednadžbe. Transformacije nestabilnih formula. NumMat 2019, 1. predavanje dodatak p. 3/102
4 Prikaz realnih brojeva u računalu IEEE standard NumMat 2019, 1. predavanje dodatak p. 4/102
5 Uvod u prikaz realnih brojeva Kako pohraniti jako velike ili jako male brojeve? Recimo, dekadski pisano: Koristimo tzv. znanstveni zapis (ili notaciju), u kojem prvo pišemo vodeće značajne znamenke broja, a zatim pišemo faktor koji ima oblik potencije baze, tj. baza na odgovarajući cjelobrojni eksponent. Dogovor: vodeći dio je jednoznamenkast ispred točke! U bazi 10, to znači izmedu 1 i 10 (strogo ispod 10). Nakon odgovarajućih pomaka decimalne točke, znanstveni zapisi su: NumMat 2019, 1. predavanje dodatak p. 5/102
6 Prikaz realnih brojeva U računalu se binarni zapis realnog broja pohranjuje u znanstvenom formatu: broj = predznak mantisa 2 eksponent. Mantisa se uobičajeno (postoje iznimke!) pohranjuje u tzv. normaliziranom obliku, tj. tako da vrijedi 1 mantisa < (10) 2. I za pohranu mantise i za pohranu eksponenta rezervirano je konačno mnogo binarnih znamenki. Posljedice: prikaziv je samo neki raspon realnih brojeva, neki brojevi unutar prikazivog raspona nisu prikazivi, jer im je mantisa predugačka = zaokruživanje. NumMat 2019, 1. predavanje dodatak p. 6/102
7 Prikaz realnih brojeva (nastavak) Primjer. Znanstveni zapis brojeva u binarnom sustavu: = = Primijetite da se vodeća jedinica u normaliziranom obliku ne mora pamtiti, ako znamo da je broj 0. U tom slučaju, taj bit se može upotrijebiti za pamćenje dodatne znamenke mantise. Tada se vodeća jedinica zove skriveni bit (engl. hidden bit), jer se ne pamti, nego se podrazumijeva. Ipak, ovo je samo pojednostavljeni prikaz realnih brojeva. Stvarni prikaz je malo složeniji. NumMat 2019, 1. predavanje dodatak p. 7/102
8 Stvarni prikaz realnih brojeva Najznačajnija promjena obzirom na pojednostavljeni prikaz: eksponent se prikazuje u zamaskiranoj ili pomaknutoj formi (engl. biased form ). To znači da se stvarnom eksponentu, označimo ga s e, dodaje konstanta takva da je pomaknuti eksponent uvijek pozitivan, za normalizirane brojeve. Ta konstanta ovisi o broju bitova za prikaz eksponenta i bira se tako da je prikaziva recipročna vrijednost najmanjeg pozitivnog normaliziranog broja. Takav pomaknuti eksponent naziva se karakteristika, a normalizirana mantisa obično se zove signifikand. NumMat 2019, 1. predavanje dodatak p. 8/102
9 Stvarni prikaz realnih brojeva IEEE 754 Stvarni prikaz realnih brojeva ima tri dijela i svaki od njih ima svoju duljinu broj bitova predvidenih za prikaz tog dijela. predznak s uvijek zauzima jedan bit, i to najviši; karakteristika k zauzima sljedećih w bitova (w = engl. width, širina pomaknutog eksponenta); signifikand m zauzima sljedećih t bitova (t = engl. trailing, završni ili razlomljeni dio od m). Po starom standardu ako se pamti vodeći (cjelobrojni) bit mantise, on je prvi (vodeći) u m, a duljina je t+1. Još se koristi i standardna oznaka preciznost p := t+1 to je ukupni broj vodećih značajnih bitova cijele mantise. NumMat 2019, 1. predavanje dodatak p. 9/102
10 Stvarni prikaz realnih brojeva IEEE 754 Karakteristika k se interpretira kao cijeli broj bez predznaka, tako da je k {0,...,2 w 1}. Rubne vrijednosti za k označavaju tzv. posebna stanja: k = 0 nula i denormalizirani brojevi, k = 2 w 1 beskonačno (Inf) i nije broj (NaN). Sve ostale vrijednosti k {1,...,2 w 2} koriste se za prikaz normaliziranih brojeva različitih od nule. Veza izmedu karakteristike k i stvarnog eksponenta e je: k = e+bias, bias = 2 w 1 1. Dakle, dozvoljeni eksponenti e moraju biti izmedu e min = (2 w 1 2) i e max = 2 w 1 1. NumMat 2019, 1. predavanje dodatak p. 10/102
11 Standardni tipovi realnih brojeva IEEE 754 Novi standard IEEE standard ima sljedeće tipove za prikaz realnih brojeva: ime tipa binary32 binary64 binary128 duljina u bitovima t = w = u = 2 p u raspon brojeva 10 ±38 10 ± ±4932 Broj u je tzv. jedinična greška zaokruživanja (v. malo kasnije). Najveći tip binary128 još uvijek ne postoji u većini procesora. NumMat 2019, 1. predavanje dodatak p. 11/102
12 Standardni tipovi realnih brojeva extended Većina PC procesora još uvijek ima posebni dio tzv. FPU (engl. Floating Point Unit). On stvarno koristi tip extended iz starog standarda, koji odgovara tipu extended binary64 u novom IEEE standardu. Dio primjera koje ćete vidjeti napravljen je baš u tom tipu! ime tipa extended duljina u bitovima 80 t+1 = 63+1 w = 15 u = 2 p u raspon brojeva 10 ±4932 NumMat 2019, 1. predavanje dodatak p. 12/102
13 Oznake Oznake: Crveno duljina odgovarajućeg polja u bitovima, bitove brojimo od 0, zdesna nalijevo (kao i obično), s predznak: 0 za pozitivan broj, 1 za negativan broj, k karakteristika, m mantisa (signifikand). 1 s w k t m Najznačajniji bit u odgovarajućem polju je najljeviji, a najmanje značajan bit je najdesniji. NumMat 2019, 1. predavanje dodatak p. 13/102
14 Stvarni prikaz tipa single (binary32) Najkraći realni tip je tzv. realni broj jednostruke točnosti. U C-u se taj tip zove float. Savjet: ne koristiti u praksi! On ima sljedeća svojstva: duljina: 4 byte-a (32 bita), podijeljen u tri polja. 1 s 8 k 23 m u mantisi se ne pamti vodeća jedinica, ako je broj normaliziran, stvarni eksponent e broja, e { 126,...,127}, karakteristika k = e+127, tako da je k {1,...,254}, karakteristike k = 0 i k = 255 koriste se za posebna stanja. NumMat 2019, 1. predavanje dodatak p. 14/102
15 Stvarni prikaz tipa single (nastavak) Primjer. Broj (10.25) 10 prikažite kao broj u jednostrukoj točnosti. ( (10.25) 10 = ) = ( ) Prema tome je: s = 0 = ( ) 2 = k = e+127 = (130) 10 = ( ) 10 = m = NumMat 2019, 1. predavanje dodatak p. 15/102
16 Prikazi nule: k = 0, m = 0 Realni broj nula ima dva prikaza: mantisa i karakteristika imaju sve bitove jednake 0, a predznak može biti 0 pozitivna nula, ili 1 negativna nula. Ta dva prikaza nule su: +0 = = Smatra se da su vrijednosti ta dva broja jednake (kad se usporeduju). NumMat 2019, 1. predavanje dodatak p. 16/102
17 Denormalizirani brojevi: k = 0, m 0 Ako je k = 0, a postoji barem jedan bit mantise koji nije nula, onda se kao eksponent e uzima 126 = najmanji dozvoljeni. Mantisa takvog broja nije normalizirana i počinje s 0.m. Takvi brojevi zovu se denormalizirani brojevi. Primjer. Kako izgleda prikaz binarno zapisanog realnog broja ? Rješenje: s = 0 k = m = NumMat 2019, 1. predavanje dodatak p. 17/102
18 Plus i minus beskonačno: k = 255, m = 0 Ako je k = 255, a mantisa je jednaka 0, onda s = 0 prikaz +, skraćena oznaka +Inf, s = 1 prikaz, skraćena oznaka -Inf. Rezultat Inf (odnosno, -Inf) dobivamo ako pokušamo spremiti preveliki broj (tzv. overflow ), ili ako nešto različito od nule podijelimo s nulom. Primjer. Prikaz broja + ( ) je s = 0 (s = 1) k = m = NumMat 2019, 1. predavanje dodatak p. 18/102
19 Nije broj: k = 255, m 0 Ako je k = 255 i postoji bar jedan bit mantise različit od nule, onda je to oznaka za tzv. Not a Number ( nije broj ) ili, skraćeno, NaN. Rezultat NaN je uvijek signal da se radi o pogrešci. Na pr., dijeljenje nule s nulom, vadenje drugog korijena iz negativnog broja i sl. Primjer. s = 0 k = m = NumMat 2019, 1. predavanje dodatak p. 19/102
20 Greške zaokruživanja Postoje realni brojevi koje ne možemo egzaktno spremiti u računalo, čak i kad su unutar prikazivog raspona brojeva. Takvi brojevi imaju predugačku mantisu. Primjer. Realni broj (u binarnom zapisu) B = ima 25 znamenki mantise i ne može se egzaktno spremiti u realni broj jednostruke točnosti, odnosno, tip float u C-u, koji ima 23+1 znamenki za mantisu. Što se onda zbiva? Tada se pronalaze dva najbliža prikaziva susjeda B, B +, broju B, takva da vrijedi B < B < B +. NumMat 2019, 1. predavanje dodatak p. 20/102
21 Greške zaokruživanja (nastavak) U našem primjeru je: B = B = B + = Nakon toga, zaokružuje se rezultat. Zaokruživanje može biti: prema najbližem broju (standardno, engl. default, za sve procesore) ako su dva susjeda jednako udaljena od B, izabire parni od ta dva broja zadnji bit je 0, prema dolje, tj. prema, prema gore, tj. prema +, prema nuli, tj. odbacivanjem viška znamenki. NumMat 2019, 1. predavanje dodatak p. 21/102
22 Greške zaokruživanja (nastavak) Standardno zaokruživanje u našem primjeru: B = B = B + = Ovdje su B i B + jednako udaljeni od B, pa je zaokruženi B jednak B +, jer B + ima parni zadnji bit (jednak je 0). Način zaokruživanja (tzv. rounding mode ) može se birati postavljanjem tzv. procesorskih zastavica, ili opcijama za compiler. U nastavku pretpostavljamo standardno zaokruživanje. Za ostala tri načina, ocjena za grešku je 2 puta veća! NumMat 2019, 1. predavanje dodatak p. 22/102
23 Jedinična greška zaokruživanja standardno Ako je x R unutar raspona brojeva prikazivih u računalu, onda se, umjesto x, sprema zaokruženi prikazivi broj fl(x). Time smo napravili grešku zaokruživanja 1 zadnjeg bita 2 mantise (tj t = 2 t 1 = 2 p ). Ta gornja ocjena se zove jedinična greška zaokruživanja (engl. unit roundoff ). Standardna oznaka je u. Za float je Vrijedi u = fl(x) = (1+ε)x, ε u, gdje je ε relativna greška napravljena tim zaokruživanjem. Dakle, imamo vrlo malu relativnu grešku. NumMat 2019, 1. predavanje dodatak p. 23/102
24 Prikaz brojeva jednostruke točnosti sažetak IEEE tip single = float u C-u: 1 s 8 k 23 m Vrijednost broja je ( 1) s 2 (k 127) (1.m) ako je 0 < k < 255, ( 1) s 2 ( 126) (0.m) ako je k = 0 i m 0, v = ( 1) s 0 ako je k = 0 i m = 0, ( 1) s Inf ako je k = 255 i m = 0, NaN ako je k = 255 i m 0. NumMat 2019, 1. predavanje dodatak p. 24/102
25 Raspon tipa float Najveći prikazivi pozitivni broj je s prikazom FLT_MAX = ( ) , s = 0 k = m = Najmanji prikazivi normalizirani pozitivni broj je s prikazom FLT_MIN = , s = 0 k = m = NumMat 2019, 1. predavanje dodatak p. 25/102
26 Raspon tipa float Simboličke konstante FLT_MAX, FLT_MIN i još poneke vezane uz tip float, definirane su u datoteci zaglavlja float.h i mogu se koristiti u C programima. Uočite: 1/FLT_MIN je egzaktno prikaziv (nadite prikaz), 1/FLT_MAX nije egzaktno prikaziv i zalazi u denormalizirane brojeve (tzv. gradual underflow ). Najmanji prikazivi denormalizirani pozitivni broj je = , s prikazom s = 0 k = m = NumMat 2019, 1. predavanje dodatak p. 26/102
27 Stvarni prikaz tipa double (binary64) Srednji realni tip je tzv. realni broj dvostruke točnosti. U C-u se taj tip zove double. Savjet: njega treba koristiti! On ima sljedeća svojstva: Duljina: 8 byte-a (64 bita), podijeljen u tri polja. 1 s 11 k 52 m u mantisi se ne pamti vodeća jedinica, ako je broj normaliziran, stvarni eksponent e broja, e { 1022,...,1023}, karakteristika k = e+1023, tako da je k {1,...,2046}, karakteristike k = 0 i k = 2047 posebna stanja. NumMat 2019, 1. predavanje dodatak p. 27/102
28 Prikaz brojeva dvostruke točnosti sažetak IEEE tip double = double u C-u: 1 s 11 k 52 m Vrijednost broja je ( 1) s 2 (k 1023) (1.m) ako je 0 < k < 2047, ( 1) s 2 ( 1022) (0.m) ako je k = 0 i m 0, v = ( 1) s 0 ako je k = 0 i m = 0, ( 1) s Inf ako je k = 2047 i m = 0, NaN ako je k = 2047 i m 0. NumMat 2019, 1. predavanje dodatak p. 28/102
29 Jedinična greška i raspon tipa double Jedinična greška zaokruživanja za double je u = Broj 1+2u je najmanji prikazivi broj strogo veći od 1. Postoji DBL_EPSILON = 2u Najveći prikazivi pozitivni broj je DBL_MAX = ( ) Najmanji prikazivi normalizirani pozitivni broj je DBL_MIN = NumMat 2019, 1. predavanje dodatak p. 29/102
30 Tip extended Stvarno računanje (na IA 32) se obično radi u proširenoj točnosti. U C-u je taj tip možda dohvatljiv kao long double. On ima sljedeća svojstva: Duljina: 10 byte-a (80 bita), podijeljen u četiri polja s k i m u mantisi se pamti vodeći bit i mantise, stvarni eksponent e broja, e { 16382,...,16383}, karakteristika k = e+16383, tako da je k {1,...,32766}, karakteristike k = 0 i k = posebna stanja. NumMat 2019, 1. predavanje dodatak p. 30/102
31 Prikaz brojeva proširene točnosti sažetak IEEE tip extended: 1 s 15 k 1 i 63 m s tim da je i = 0 k = 0 (tu je redundantnost u prikazu). Vrijednost broja je ( 1) s 2 (k 16383) (1.m) ako je 0 < k < 32767, ( 1) s 2 ( 16382) (0.m) ako je k = 0 i m 0, v = ( 1) s 0 ako je k = 0 i m = 0, ( 1) s Inf ako je k = i m = 0, NaN ako je k = i m 0. NumMat 2019, 1. predavanje dodatak p. 31/102
32 Realna aritmetika računala (IEEE standard) NumMat 2019, 1. predavanje dodatak p. 32/102
33 Zbrajanje realnih brojeva u računalu Primjer. Uzmimo računalo u bazi 10, s p = 4 značajne dekadske znamenke. Treba naći rezultat zbrajanja brojeva x = , y = Prvo se izjednače eksponenti na onaj veći, uz pomak mantise manjeg broja udesno (ako treba), a onda se zbroje te mantise. Dobiveni rezultat se normalizira (ako treba) i zaokružuje. x = y = x+y = pomak zbroj x+y = normalizacija fl(x+y) = zaokruživanje NumMat 2019, 1. predavanje dodatak p. 33/102
34 Oznake Oznaka. Neka je F skup svih realnih brojeva koji se nalaze u dozvoljenom rasponu za normalizirani prikaz (u danom tipu). Što to znači? Broj x F ne mora biti prikaziv, ali njegova zaokružena aproksimacija fl(x) ima normalizirani prikaz, pa onda i malu relativnu grešku. Najmanji normalizirani prikazivi broj u danom tipu je v min = [ ] 2 e min = 2 e min, a najveći normalizirani prikazivi broj je v max = [ ] 2 e max = (1+(1 2 t )) 2 e max = 2(1 2 t 1 ) 2 e max = (1 2 p ) 2 e max+1. Dakle, vrijedi x F fl(x) [v min,v max ]. NumMat 2019, 1. predavanje dodatak p. 34/102
35 Zaokruživanje u aritmetici Osnovna pretpostavka za realnu aritmetiku u računalu: za sve četiri osnovne aritmetičke operacije vrijedi ista ocjena greške zaokruživanja kao i za prikaz brojeva. Isto vrijedi i za neke matematičke funkcije, poput, ali ne mora vrijediti za sve funkcije (na pr. za sin oko 0, ili ln oko 1). Preciznije: Neka označava bilo koju operaciju +,,, /. Za prikazive brojeve u dozvoljenom rasponu x,y F, takve da je i egzaktni rezultat x y u dozvoljenom rasponu (tj. u F), vrijedi ocjena relativne greške fl(x y) = (1+ε)(x y), ε u. Broj ε ovisi o x, y, operaciji i aritmetici računala. NumMat 2019, 1. predavanje dodatak p. 35/102
36 Zaokruživanje u aritmetici (nastavak) Ova ocjena je ekvivalentna idealnom izvodenju aritmetičkih operacija: egzaktno izračunaj rezultat operacije x y, zaokruži ga, pri spremanju rezultata u memoriju. To ne znači da računalo zaista tako i računa. Naime, za +,, to bi se još i moglo napraviti (egzaktni rezultati imaju konačan binarni prikaz), ali kod dijeljenja to sigurno ne ide (egzaktni kvocijent može imati beskonačan binarni prikaz). Dakle, važno je samo da dobijemo istu ocjenu greške kao u idealnom računanju, a nije važno kako se stvarno računa! NumMat 2019, 1. predavanje dodatak p. 36/102
37 Zaokruživanje u aritmetici (nastavak) U principu, to dozvoljava da se rezultati ponešto razlikuju na raznim računalima (ovisno o stvarnoj realizaciji aritmetike), ali ocjena relativne greške mora biti ista. Uočite da mjesta za razlike nema puno, tj. razlike su zaista rijetke. Napomena. Oznaka fl(izraz), općenito, označava izračunatu vrijednost izraza, tj. ona mora biti prikaziva. Ali, to ne znači: izračunaj egzaktno, pa zaokruži, nego: izračunaj sve operacije i funkcije u aritmetici računala (tj. i svaki medurezultat mora biti prikaziv). NumMat 2019, 1. predavanje dodatak p. 37/102
38 Zaokruživanje u aritmetici (nastavak) Još nekoliko napomena o točnosti aritmetike. Relacija fl(x y) = (1+ε)(x y), ε u, kaže da izračunati rezultat fl(x y) ima malu relativnu grešku obzirom na egzaktni rezultat x y. Obratite pažnju na uvjete uz koje vrijedi taj zaključak: ulazne vrijednosti moraju biti prikazive (što je jasno), ali i u dozvoljenom rasponu, tj. normalizirane, egzaktni rezultat mora, takoder, biti u dozvoljenom rasponu. Bez oba uvjeta, zaključak ne vrijedi. NumMat 2019, 1. predavanje dodatak p. 38/102
39 Zaokruživanje u aritmetici (nastavak) Prvi uvjet na ulaz, zvuči razumno i s njim nije teško izaći na kraj. Ako je (barem jedna) ulazna vrijednost nula, onda su operacije ili egzaktne, tj. nema greške (operacije +,,, 0/y, uz y 0, i funkcija ), ili dijelimo s nulom, pa dobivamo Inf ili NaN ili grešku. Za sve ostale moguće nenormalizirane operande i ne očekujemo neki točan rezultat. U svakom slučaju, ulazne vrijednosti uvijek možemo testirati (tj. provjeriti) u programu i tako kontrolirati što se dogada. NumMat 2019, 1. predavanje dodatak p. 39/102
40 Zaokruživanje u aritmetici (nastavak) Drugi uvjet na rezultat, je mnogo teže kontrolirati: izračunati rezultat vidimo tek kad ga izračunamo, i tad je sve gotovo, a egzaktni rezultat ionako ne znamo. Općenito, može nam se dogoditi da je egzaktni rezultat izvan prikazivog raspona (kao i kod prikaza brojeva): blizu nula po apsolutnoj vrijednosti tzv. underflow, i računalo tada šutke vraća nulu ili nenormalizirani broj blizu nule (bez poruke o grešci), prevelik po apsolutnoj vrijednosti tzv. overflow, i računalo tada vraća Inf ili javlja grešku (i prekida izvršavanje programa). NumMat 2019, 1. predavanje dodatak p. 40/102
41 Zaokruživanje u aritmetici (nastavak) Naravno, treća mogućnost je da radimo nedozvoljenu operaciju, pa je rezultat NaN ili greška, ali to se može spriječiti kontrolom unaprijed. Ni u jednom od ova tri slučaja ne dobivamo malu relativnu grešku dakle, ranija ocjena ne vrijedi. Oprez: čisto statistički gledano, po svim dozvoljenim operandima, množenje i dijeljenje relativno često daju (egzaktni) rezultat izvan prikazivog raspona (na pr. x 2 ). Iako egzaktni rezultat operacije ne znamo unaprijed, to ne znači da nema mogućnosti kontrole pojave rezultata izvan prikazivog raspona (i pripadnog gubitka točnosti). NumMat 2019, 1. predavanje dodatak p. 41/102
42 Zaokruživanje u aritmetici (nastavak) Naprotiv, gomila nepotrebnih pojava underflowa i, posebno, overflowa može se izbjeći pažljivim projektiranjem algoritama. Overflow je, općenito, opasniji, jer nema gradiranog prijelaza (kao kod underflowa), najčešće (još uvijek) završava greškom, tj. prekidom izvršavanja programa. Zato se računanje obično skalira tako da se izbjegne overflow. U većini slučajeva, to se postiže jednostavnim transformacijama standardnih formula. Primjeri malo kasnije. NumMat 2019, 1. predavanje dodatak p. 42/102
43 Širenje grešaka zaokruživanja NumMat 2019, 1. predavanje dodatak p. 43/102
44 Širenje grešaka zaokruživanja Vidimo da gotovo svaki izračunati rezultat ima neku grešku. Osim toga, zaokruživanje se vrši nakon svake pojedine operacije. Najlakše je stvar zamišljati kao da zaokruživanje ide na kraju operacije, iako je ono dio operacije. Kad imamo puno aritmetičkih operacija (inače nam računalo ne treba), dolazi do tzv. akumulacije ili širenja grešaka zaokruživanja. Malo pogrešni rezultati (možda već od čitanja), ulaze u operacije, koje opet malo griješe, i tako redom... greške se šire kroz sve što računamo! NumMat 2019, 1. predavanje dodatak p. 44/102
45 Širenje grešaka zaokruživanja (nastavak) Očekujemo da greške rastu, ali koliko? Pomalo, ili brzo? Ključno pitanje: Možemo li nešto reći o tom rasprostiranju grešaka zaokruživanja? Ali, (uvijek ima neki ali ), Možemo! put do odgovora nije nimalo jednostavan, i treba ga provesti za svaki pojedini proračun posebno. Gdje je problem? NumMat 2019, 1. predavanje dodatak p. 45/102
46 Širenje grešaka zaokruživanja (nastavak) Nažalost, aritmetika računala nije egzaktna i u njoj ne vrijede uobičajeni zakoni za operacije na R. Na primjer, za aritmetičke operacije u računalu nema asocijativnosti zbrajanja i množenja, nema distributivnosti množenja prema zbrajanju. Dakle, poredak izvršavanja operacija je bitan! Zapravo, jedino standardno pravilo koje vrijedi je komutativnost za zbrajanje i za množenje. (Relativno nedavno je postojalo računalo na kojem ni to nije vrijedilo prva Cray računala). NumMat 2019, 1. predavanje dodatak p. 46/102
47 Primjer: Neasocijativnost zbrajanja NumMat 2019, 1. predavanje dodatak p. 47/102
48 Primjer neasocijativnosti zbrajanja Primjer. Asocijativnost zbrajanja u računalu ne vrijedi. Znamo (odnosno, uskoro ćete znati) da je tzv. harmonijski red i + divergentan, tj. suma mu je beskonačna. No, nitko nas ne spriječava da računamo konačne početne komade ovog reda, tj. njegove parcijalne sume S n := n n. A kojim redom zbrajamo? (Zbrajanje je binarna operacija!) NumMat 2019, 1. predavanje dodatak p. 48/102
49 Primjer neasocijativnosti zbrajanja (nastavak) U realnim brojevima je potpuno svejedno kojim poretkom zbrajanja računamo ovu sumu, jer vrijedi asocijativnost. a+(b+c) = (a+b)+c = a+b+c. Uostalom, sam zapis izraza bez zagrada S n = n n već podrazumijeva asocijativnost. U suprotnom, morali bismo zagradama naglasiti poredak operacija. Ovdje imamo točno n 1 binarnih operacija zbrajanja, i možemo ih napraviti kojim redom hoćemo. NumMat 2019, 1. predavanje dodatak p. 49/102
50 Primjer neasocijativnosti zbrajanja (nastavak) Drugim riječima, u prethodni izraz za S n možemo rasporediti zagrade na bilo koji način, samo da svi plusevi budu binarni, tj. zbrajaju dva objekta, a objekt je broj ili (podizraz u zagradama). Na pr., zbrajanju unaprijed odgovara raspored zagrada ( (( S n,1 := 1+ 1 ) + 1 ) ) n 1 n, a zbrajanju unatrag odgovara raspored zagrada ( ( ( S n,2 := n ) n )). NumMat 2019, 1. predavanje dodatak p. 50/102
51 Primjer neasocijativnosti zbrajanja (nastavak) Koliko takvih rasporeda zagrada ima bit će napravljeno u Diskretnoj matematici (tzv. Catalanovi brojevi). Bitno nam je samo da svi ti rasporedi, matematički, daju isti rezultat. Komutativnost nam uopće ne treba. Ako i nju iskoristimo, dobivamo još puno više načina za računanje ove sume, i svi, naravno, opet daju isti rezultat. Izračunajmo aritmetikom računala navedene dvije sume S n,1 unaprijed, i S n,2 unatrag, za n = , u tri standardne IEEE točnosti: single, double i extended. Preciznije, koristimo ova tri tipa za prikaz brojeva, uz pripadne aritmetike za računanje. NumMat 2019, 1. predavanje dodatak p. 51/102
52 Primjer neasocijativnosti zbrajanja (nastavak) Uz skraćene oznake S 1 i S 2 za varijable u kojima zbrajamo pripadne sume, odgovarajući algoritmi za zbrajanje su unaprijed: unatrag: S 1 := 1, S 1 := S i, i = 2,...,n, S 2 := 1 n, S 2 := 1 i +S 2, i = n 1,...,1. Dakle, zaista ne koristimo komutativnost zbrajanja. NumMat 2019, 1. predavanje dodatak p. 52/102
53 Primjer neasocijativnosti zbrajanja (nastavak) Dobiveni rezultati za sume S 1, S 2 (prva pogrešna znamenka je crvena) i pripadne relativne greške su: tip i suma vrijednost rel. greška single S E 03 single S E 06 double S E 14 double S E 15 extended S E 17 extended S E 18 Slovo E u brojevima zadnjeg stupca znači puta 10 na, pa je, na primjer, E 18 = NumMat 2019, 1. predavanje dodatak p. 53/102
54 Primjer neasocijativnosti zbrajanja (nastavak) Izračunate vrijednosti S 1 i S 2 su različite (u sve tri točnosti). Dakle, zbrajanje brojeva u aritmetici računala, očito, nije asocijativno. Primijetite da, u sve tri točnosti, zbrajanje unatrag S 2 daje nešto točniji rezultat. To nije slučajno. Svi brojevi koje zbrajamo su istog predznaka pa zbroj stalno raste, bez obzira na poredak zbrajanja. Kad zbrajamo unatrag od manjih brojeva prema većim, zbroj se pomalo nakuplja. Obratno, kad zbrajamo unaprijed od velikih brojeva prema manjim, zbroj puno brže naraste. Pred kraj, mali dodani član jedva utječe na rezultat (tj. dobar dio znamenki pribrojnika nema utjecaj na sumu). NumMat 2019, 1. predavanje dodatak p. 54/102
55 Primjer neasocijativnosti zbrajanja (nastavak) Drugim riječima, uz isti broj pribrojnika, kod zbrajanja unaprijed dodajemo manji broj, ali na veću (dotadašnju) sumu, pa je utjecaj tog pribrojnika bitno manji, a greška veća. Ovo se izrazito vidi u single S 1. U usporedbi sa single S 2 pripadna relativna greška je preko 400 puta veća i dobivamo samo 3 točne znamenke u rezultatu. Cijeli ovaj eksperiment napravljen je u prastarom Turbo Pascalu 7.0 (DOS), danas Delphi jer jednostavno podržava sva tri standardna IEEE tipa. Probajte to napraviti u C-u, FORTRAN-u ili nekom drugom programskom jeziku. NumMat 2019, 1. predavanje dodatak p. 55/102
56 Primjer neasocijativnosti zbrajanja (zadatak) Zadatak. U aritmetici računala, za dovoljno velike n, parcijalne sume S n,1 i S n,2 postaju konstantne, tj. više ne ovise o n. Zašto? Precizno objasnite! Za koji n se to prvi puta dogada, ovisno o točnosti i smjeru zbrajanja? Probajte u single, pa zaključite što će se dogoditi u double i extended (bez eksperimentiranja). Koji smjer zbrajanja je bolji? Na kraju ovog primjera, možda je zgodno reći odakle mi točan rezultat tj. onaj koji služi za računanje relativnih grešaka u prethodnoj tablici. NumMat 2019, 1. predavanje dodatak p. 56/102
57 Primjer neasocijativnosti zbrajanja (kraj) Postoji algoritam zbrajanja, tzv. dvostruko kompenzirano zbrajanje (engl. doubly compensated summation), koji uvijek daje zbroj s vrlo malom relativnom greškom (oko 2u, ako broj pribrojnika nije prevelik). Taj algoritam daje extended S DC = Na 18 dekadskih znamenki, rezultat je isti kao i extended S 2. Koga zanima taj i slični algoritmi, može pogledati knjigu: Nicholas J. Higham, Accuracy and Stability of Numerical Algorthms (2. ed.), SIAM, Philadelphia, Naravno, može se javiti i meni! NumMat 2019, 1. predavanje dodatak p. 57/102
58 Širenje grešaka u aritmetici NumMat 2019, 1. predavanje dodatak p. 58/102
59 Širenje grešaka zaokruživanja (nastavak) Za analizu grešaka zaokruživanja ne možemo koristiti nikakva normalna pravila za aritmetičke operacije u računalu, jer ti zakoni naprosto ne vrijede. Stvarna algebarska struktura je izrazito komplicirana i postoje debele knjige na tu temu. Vrijede neka zamjenska pravila, ali su neupotrebljiva za analizu iole većih proračuna. Medutim, analiza pojedinih operacija postaje bitno lakša, ako uočimo da: greške zaokruživanja u aritmetici računala možemo interpretirati i kao egzaktne operacije, ali na malo pogrešnim podacima! NumMat 2019, 1. predavanje dodatak p. 59/102
60 Širenje grešaka zaokruživanja (nastavak) Kako? Dovoljno je faktor (1+ε) u ocjeni greške fl(x y) = (1+ε)(x y), ε u, zalijepiti na x i/ili y. To je isto kao da operand(i) ima(ju) neku relativnu grešku na ulazu u operaciju, a operacija je egzaktna. Dakle, izračunati (ili zaokruženi ) rezultat jednak je egzaktnom rezultatu, ali za malo promijenjene (tj. perturbirane) podatke (u relativnom smislu). Što dobivamo ovom interpretacijom? Onda možemo koristiti normalna pravila egzaktne aritmetike za analizu grešaka. NumMat 2019, 1. predavanje dodatak p. 60/102
61 Širenje grešaka zaokruživanja (nastavak) Ne zaboravimo još da ε ovdje ovisi o x, y, i operaciji. Kad takvih operacija ima više, pripadne greške obično označavamo nekim indeksom u ε. Na primjer, ako je zbrajanje (+), onda je fl(x+y) = (1+ε x+y )(x+y) = [(1+ε x+y )x]+[(1+ε x+y )y], uz ε x+y u, ako su x, y i x+y u prikazivom rasponu. Potpuno ista stvar vrijedi i za oduzimanje. Kod množenja i dijeljenja možemo birati kojem ulaznom podatku ćemo zalijepiti faktor (1 + ε). NumMat 2019, 1. predavanje dodatak p. 61/102
62 Širenje grešaka zaokruživanja (nastavak) Za množenje možemo pisati a za dijeljenje fl(x y) = (1+ε x y )(x y) = [(1+ε x y )x] y = x [(1+ε x y )y], fl(x/y) = (1+ε x/y )(x/y) = [(1+ε x/y )x]/y = x/[y/(1+ε x/y )]. Postoje i druge varijante. Na primjer, da svakom operandu zalijepimo 1+ε (odnosno 1/ 1+ε), ali to nije naročito važno. Bitno je samo da je izračunati rezultat egzaktan za malo perturbirane podatke. NumMat 2019, 1. predavanje dodatak p. 62/102
63 Širenje grešaka (bilo kojih) Zasad nije vidljivo koja je točno korist od ove interpretacije. Stvar se bolje vidi tek kad imamo više operacija zaredom. Medutim, ova ideja s malo pogrešnim podacima je baš ono što nam treba za analizu širenja grešaka, i to bez obzira na uzrok grešaka, čim se sjetimo da rezultati ranijih operacija s nekom greškom ulaze u nove operacije. Naime, uzroka grešaka može biti mnogo, ovisno o tome što računamo. Od grešaka modela i metode, preko grešaka mjerenja (u ulaznim podacima), do grešaka zaokruživanja (ali to je tema za Numeričku matematiku). NumMat 2019, 1. predavanje dodatak p. 63/102
64 Širenje grešaka u aritmetici Za analizu širenja grešaka u aritmetici, treba pogledati što se dogada s greškama u rezultatu, kad imamo greške u operandima. Prvo u egzaktnoj aritmetici, a onda i u aritmetici računala. Pretpostavimo onda da su polazni podaci (ili operandi) x i y malo perturbirani, s pripadnim relativnim greškama ε x i ε y. Koje su operacije opasne (ako takvih ima), ako nam je aritmetika egzaktna, a operandi su x(1+ε x ) i y(1+ε y )? Treba ocijeniti relativnu grešku ε rezultata operacije (x y)(1+ε ) := [x(1+ε x )] [y(1+ε y )]. NumMat 2019, 1. predavanje dodatak p. 64/102
65 Širenje grešaka u aritmetici (nastavak) Naravno, za početak, moramo nešto pretpostaviti o ε x i ε y. Što smatramo malom relativnom perturbacijom? Svakako mora biti ε x, ε y < 1, inače perturbacijom gubimo predznak operanda. Medutim, to nije dovoljno za neki razuman rezultat. Stvarno očekujemo ε x, ε y c 1, tako da imamo barem nekoliko točnih znamenki u perturbiranim operandima. Na pr., c = 10 1 (jedna točna znamenka). Idealno, u računalu je ε x, ε y u, tj. kao da smo oba operanda samo spremili u memoriju računala (jedna greška zaokruživanja). NumMat 2019, 1. predavanje dodatak p. 65/102
66 Širenje grešaka kod množenja Množenje je bezopasno (benigno), jer vrijedi (x y)(1+ε ) := [x(1+ε x )] [y(1+ε y )] = xy(1+ε x +ε y +ε x ε y ), kad stvar napišemo bez nepotrebnih zagrada i. Onda je ε = ε x +ε y +ε x ε y ε x +ε y, ako su ε x i ε y dovoljno mali da ε x ε y možemo zanemariti. Dakle, relativna greška se samo zbraja. U idealnom slučaju ε x, ε y u, dobivamo približnu ocjenu relativne greške ε 2u (do na u 2 ), ili, na pr., ε 2.01u. NumMat 2019, 1. predavanje dodatak p. 66/102
67 Širenje grešaka kod dijeljenja Dijeljenje je, takoder, bezopasno (benigno), samo je zaključak malo dulji. Na početku je (x/y)(1+ε / ) := [x(1+ε x )]/[y(1+ε y )] = x(1+ε x) y(1+ε y ). Ako su ε x i ε y dovoljno mali da sve možemo linearizirati (tj. zanemariti kvadratne i više potencije epsilona), onda je i 1 1+ε y = 1 ε y + ( 1) n ε n y 1 ε y n=2 (1+ε x )(1 ε y ) = 1+ε x ε y ε x ε y 1+ε x ε y. NumMat 2019, 1. predavanje dodatak p. 67/102
68 Širenje grešaka kod dijeljenja (nastavak) Kad to uvrstimo u prvi izraz, dobivamo (x/y)(1+ε / ) x y (1+ε x)(1 ε y ) x y (1+ε x ε y ). Za relativnu grešku (približno) vrijedi ε / ε x ε y, ε / ε x + ε y. Dakle, relativne greške se oduzimaju, a ocjene zbrajaju. U idealnom slučaju ε x, ε y u, opet dobivamo približnu ocjenu relativne greške ε / 2u. Vidimo da su i množenje i dijeljenje bezopasne operacije za širenje grešaka zaokruživanja. NumMat 2019, 1. predavanje dodatak p. 68/102
69 Širenje grešaka kod zbrajanja i oduzimanja Zbrajanje i oduzimanje. Ovdje rezultat ključno ovisi o predznacima od x i y. Sasvim općenito, neka su x i y proizvoljnih predznaka. Za zbrajanje i oduzimanje (oznaka ±) vrijedi (x±y)(1+ε ± ) := [x(1+ε x )]±[y(1+ε y )]. Pogledajmo prvo trivijalne slučajeve. Ako je egzaktni rezultat x±y = 0, onda imamo dvije mogućnosti. Ako je i x(1+ε x )±y(1+ε y ) = 0, relativna greška ε ± može biti biti koji broj (nije odredena), a prirodno je uzeti ε ± = 0. U protivnom, za x(1+ε x )±y(1+ε y ) 0, gornja jednakost je nemoguća, pa stavljamo ε ± = ±. NumMat 2019, 1. predavanje dodatak p. 69/102
70 Širenje grešaka kod zbrajanja i oduzimanja Pretpostavimo nadalje da je x±y 0. Onda je (x±y)(1+ε ± ) = x(1+ε x )±y(1+ε y ) = (x±y)+(xε x ±yε y ) ( = (x±y) 1+ xε ) x ±yε y x±y. Relativnu grešku ε ± možemo napisati u obliku linearne kombinacije polaznih grešaka ε x i ε y ε ± = xε x ±yε y x±y = x x±y ε x ± y x±y ε y. NumMat 2019, 1. predavanje dodatak p. 70/102
71 Širenje grešaka kod zbrajanja i oduzimanja Naravno, za nastavak rasprave ključno je pitanje koliko su veliki faktori uz polazne greške, tj. da li prigušuju ili napuhavaju greške. Da ne bismo stalno pisali hrpu oznaka ± (nepregledno), pogledajmo što se zbiva kad x i y imaju isti predznak, a posebno gledamo operacije + i. Ako su x i y različitih predznaka, zamijenimo operaciju u suprotnu (+, +), pa će vrijediti isti zaključci. Nadalje, zbrajamo i oduzimamo brojeve istih predznaka. NumMat 2019, 1. predavanje dodatak p. 71/102
72 Širenje grešaka kod zbrajanja Zbrajanje brojeva istog predznaka je bezopasno (benigno). To izlazi ovako. Zbog istih predznaka od x i y, vrijedi x, y x+y, pa je x x+y, y x+y 1. To vrijedi i kad je x = 0 ili y = 0. Odavde odmah slijedi ε + ε x + ε y. Dakle, relativna greška se, u najgorem slučaju, zbraja. U idealnom slučaju ε x, ε y u, opet dobivamo ocjenu relativne greške ε + 2u. NumMat 2019, 1. predavanje dodatak p. 72/102
73 Širenje grešaka kod zbrajanja (nastavak) Uz malo truda, dobivamo i bolju ocjenu. Prvo uočimo da za faktore vrijedi x x+y + y x+y = 1, i još iskoristimo ε x, ε y max{ ε x, ε y }. Onda je ε + x x+y ε x + y x+y ε y ( ) x x+y + y x+y max{ ε x, ε y } = max{ ε x, ε y }. NumMat 2019, 1. predavanje dodatak p. 73/102
74 Širenje grešaka kod zbrajanja (nastavak) Dakle, relativna greška zbrajanja je, u najgorem slučaju, maksimum polaznih grešaka (ne treba ih zbrajati). U idealnom slučaju ε x, ε y u, sada dobivamo ocjenu relativne greške ε + u. Bolje ne može! Naravno, isto vrijedi i za oduzimanje brojeva različitih predznaka. I to je bezopasno. NumMat 2019, 1. predavanje dodatak p. 74/102
75 Širenje grešaka kod oduzimanja Oduzimanje brojeva istog predznaka može biti opasno, čak katastrofalno loše. Točnije, ne mora uvijek biti opasno, ali može! Zašto i kada je opasno? Zbog različitih predznaka od x i y, uz x 0 i y 0, sigurno vrijedi x y < max{ x, y }, pa je barem jedan od faktora veći od 1, tj. { } x max x y, y x y > 1. NumMat 2019, 1. predavanje dodatak p. 75/102
76 Širenje grešaka kod oduzimanja (nastavak) Odavde odmah slijedi da u ocjeni relativne greške ε x x y ε x + y x y ε y na barem jednom mjestu imamo rast greške, a to se može dogoditi i na oba mjesta. Kad je to zaista opasno? Ako je x y x, y, ovi faktori x x y, y x y, mogu biti proizvoljno veliki, pa i relativna greška ε rezultata može biti proizvoljno velika! NumMat 2019, 1. predavanje dodatak p. 76/102
77 Opasno oduzimanje ili kraćenje Opasna situacija x y x, y znači da je rezultat oduzimanja brojeva istog predznaka = broj koji je po apsolutnoj vrijednosti mnogo manji od polaznih podataka (oba operanda), a to znači da operandi x i y moraju biti bliski, tako da dolazi do kraćenja. Zato se ovaj fenomen obično zove Opasno ili katastrofalno kraćenje. Dosad smo govorili da relativna greška u tom slučaju može biti velika, ali da li se to zaista dogada? Naime, ovdje je ipak riječ o ocjeni greške, pa se možda dogada da je ocjena vrlo loša, a prava greška ipak mala! Nažalost, nije tako! To se itekako dogada u praksi! NumMat 2019, 1. predavanje dodatak p. 77/102
78 Primjer: Katastrofalno kraćenje NumMat 2019, 1. predavanje dodatak p. 78/102
79 Primjer katastrofalnog kraćenja Zakruživanjem ulaznih podataka dolazi do male relativne greške. Kako ona može utjecati na konačni rezultat? Primjer. Uzmimo realnu aritmetiku računala u bazi 10. Za mantisu (značajni dio broja) imamo p = 4 dekadske znamenke, a za eksponent imamo 2 znamenke (što nije bitno). Neka je x = = , y = = Umjesto brojeva x i y, koji nisu prikazivi, u memoriju spremamo brojeve fl(x) i fl(y), pravilno zaokružene na p = 4 znamenke fl(x) = , fl(y) = NumMat 2019, 1. predavanje dodatak p. 79/102
80 Primjer katastrofalnog kraćenja (nastavak) Ovim zaokruživanjima napravili smo malu relativnu grešku u x i y (ovdje je u = 1 2 b p = ). Razliku fl(x) fl(y) računamo tako da izjednačimo eksponente (što već jesu), oduzmemo značajne dijelove (mantise), pa normaliziramo fl(x) fl(y) = = = 3.??? Kod normalizacije, zbog pomaka ulijevo, pojavljuju se Što sad?? = znamenke koje više ne možemo restaurirati (ta informacija se izgubila zaokruživanjem x i y). NumMat 2019, 1. predavanje dodatak p. 80/102
81 Primjer katastrofalnog kraćenja (nastavak) Računalo radi isto što bismo i mi napravili: na ta mjesta? upisuje 0. Razlog: da rezultat bude točan, ako su polazni operandi točni. Dakle, ovo oduzimanje je egzaktno i u aritmetici računala. Konačni izračunati rezultat je fl(x) fl(y) = Pravi rezultat je x y = = = Već prva značajna znamenka u fl(x) fl(y) je pogrešna, a relativna greška je ogromna! Uočite da je ta znamenka (3), ujedno, i jedina koja nam je ostala sve ostalo se skratilo! NumMat 2019, 1. predavanje dodatak p. 81/102
82 Primjer katastrofalnog kraćenja (nastavak) Prava katastrofa se dogada ako 3.??? 10 3 ude u naredna zbrajanja (oduzimanja), a onda se skrati i ta trojka! Uočite da je oduzimanje fl(x) fl(y) bilo egzaktno i u aritmetici našeg računala, ali rezultat je, svejedno, pogrešan. Krivac, očito, nije oduzimanje (kad je egzaktno). Uzrok su polazne greške u operandima fl(x), fl(y). Ako njih nema, tj. ako su polazni operandi egzaktni, i dalje, naravno, dolazi do kraćenja, ali je rezultat (uglavnom, a po IEEE standardu sigurno) egzaktan, pa se ovo kraćenje onda zove benigno kraćenje. NumMat 2019, 1. predavanje dodatak p. 82/102
83 Širenje grešaka u aritmetici računala Dosad smo gledali širenje grešaka u egzaktnoj aritmetici. U aritmetici računala postupamo na potpuno isti način. Samo treba zgodno iskoristiti onu raniju interpretaciju da je izračunati (ili zaokruženi ) rezultat jednak egzaktnom, ali za malo perturbirane podatke (u relativnom smislu). A širenje grešaka u egzaktnoj aritmetici znamo. Ukratko, bez dokaza: Svaka pojedina aritmetička operacija u računalu samo povećava perturbaciju svojih ulaznih podataka za jedan faktor oblika (1+ε), uz ocjenu ε u, ovisno o tome kojim operandima zalijepimo taj faktor. NumMat 2019, 1. predavanje dodatak p. 83/102
84 Širenje grešaka u aritmetici računala primjer Primjer. Računamo zbroj ˆx+ŷ, gdje su ˆx i ŷ spremljeni u računalu i već imaju neku grešku, nastalu spremanjem pravih vrijednosti x i y u memoriju računala i eventualnim ranijim računom. Znamo da za izračunati rezultat vrijedi fl(ˆx+ŷ) = (1+ε + )(ˆx+ŷ) = (1+ε + )ˆx+(1+ε + )ŷ, uz ε + u, ako su ˆx, ŷ i ˆx+ŷ u prikazivom rasponu. No, ˆx i ŷ već imaju neke relativne greške obzirom na prave egzaktne vrijednosti x i y ˆx = (1+ε x )x, ŷ = (1+ε y )y, i to treba uvrstiti u gornju formulu. NumMat 2019, 1. predavanje dodatak p. 84/102
85 Širenje grešaka u aritmetici računala primjer Dobivamo da je fl(ˆx+ŷ) = (1+ε + )(ˆx+ŷ) = (1+ε + )(1+ε x )x+(1+ε + )(1+ε y )y. Drugim riječima, izračunati rezultat fl(ˆx + ŷ) se opet može interpretirati kao egzaktni rezultat, ali na malo više perturbiranim polaznim podacima x = (1+η x )x = (1+ε + )(1+ε x )x, ỹ = (1+η y )x = (1+ε + )(1+ε y )y. Relativne greške η x i η y su tzv. greške unatrag ili obratne greške jer se odnose na perturbaciju ulaza (uz egzaktno računanje). NumMat 2019, 1. predavanje dodatak p. 85/102
86 Širenje grešaka u aritmetici računala primjer Nažalost, prethodne formule ne daju neku informaciju o tome koliko je izračunati rezultat daleko od pravog rezultata, a upravo to je ono što nas stvarno zanima. Ovo je tzv. greška unaprijed, jer mjeri perturbaciju rezultata, tj. izlaza (uz približno računanje). Zadatak. Nadite relativnu grešku unaprijed η + u izračunatom rezultatu fl(ˆx+ŷ) = (1+η + )(x+y), u terminima ulaznih podataka x i y, te grešaka ε x, ε y i ε +. Zaključak. Greška unaprijed se puno teže računa od grešaka unatrag! Zato se obično nalazi zaobilaznim putem. NumMat 2019, 1. predavanje dodatak p. 86/102
87 Natuknice o analizi grešaka Bilo koji algoritam gledamo kao preslikavanje: Naravno, zanima nas ulaz (domena) izlaz (kodomena). greška u izračunatom rezultatu u kodomeni, uz približno računanje aritmetikom računala. Ova greška zove se greška unaprijed (engl. forward error). Nažalost, postupak direktne analize grešaka je težak, relativno rijetko ide i često daje loše ocjene greške. Primjer. Obična norma vektora u R 2 (i još dodaj scaling ). (v. Z. Drmač, članak u MFL-u). NumMat 2019, 1. predavanje dodatak p. 87/102
88 Natuknice o analizi grešaka (nastavak) U praksi se puno češće koristi tzv. obratna analiza grešaka. Osnovna ideja je ista kao i za pojedine operacije: izračunati rezultati algoritma mogu se dobiti egzaktnim računanjem, ali na perturbiranim ulaznim podacima u domeni. Ova greška u domeni zove se greška unatrag ili obratna greška (engl. backward error). Prednost: ocjena tih perturbacija u domeni je bitno lakša, jer se akumulacija onih faktora oblika (1 + ε) prirodno radi unatrag od rezultata prema polaznim podacima. U protivnom, moramo znati grešku za operande, a to je greška unaprijed za prethodni dio algoritma. NumMat 2019, 1. predavanje dodatak p. 88/102
89 Natuknice o analizi grešaka (nastavak) Postupak unatrag za nalaženje grešaka u izračunatim rezultatima ide u dva koraka. Prvo se obratnom analizom naprave ocjene perturbacija polaznih podataka u domeni, a zatim se koristi matematička teorija perturbacije, koja daje ocjene grešaka rezultata u kodomeni. Ovaj izvod ide za egzaktni račun, pa vrijede sva normalna pravila. Tako stižemo do pojmova: stabilno i nestabilno računanje ili algoritam = prigušivač ili pojačalo grešaka. Slikice (skripta NA, Higham) su na sljedećoj stranici. Primjeri nestabilnosti uklonjivi i NEuklonjivi. NumMat 2019, 1. predavanje dodatak p. 89/102
90 Greška unaprijed i obratna greška Uzmimo da algoritam rješava problem P. x P y Ako problem P intepretiramo kao računanje funkcije f, onda grešku unaprijed i obratnu grešku možemo prikazati ovako: obratna greška x y = f(x) x+ x greška unaprijed ŷ = f(x+ x) NumMat 2019, 1. predavanje dodatak p. 90/102
91 Dodatna literatura za floating point aritmetiku Ako želite saznati još ponešto o floating point prikazu brojeva i aritmetici, pogledajte/potražite članke: David Goldberg, What Every Computer Scientist Should Know About Floating Point Arithmetic, ACM Computing Surveys, Vol. 23, No. 1, March 1991, pp Zlatko Drmač, Numerička matematika i računala, MFL 4/196, Zagreb, 1999., str i već spomenutu Highamovu knjigu. Zbog copyrighta, ovo nije na mom webu, ali možete dobiti, ako želite. NumMat 2019, 1. predavanje dodatak p. 91/102
92 Primjer: Kvadratna jednadžba NumMat 2019, 1. predavanje dodatak p. 92/102
93 Kvadratna jednadžba Uzmimo da treba riješiti (realnu) kvadratnu jednadžbu ax 2 +bx+c = 0, gdje su a, b i c zadani, i vrijedi a 0. Matematički gledano, problem je lagan: imamo 2 rješenja x 1,2 = b± b 2 4ac 2a Numerički gledano, problem je mnogo izazovniji: ni uspješno računanje po ovoj formuli, ni točnost izračunatih korijena, ne možemo uzeti zdravo za gotovo.. NumMat 2019, 1. predavanje dodatak p. 93/102
94 Kvadratna jednadžba standardni oblik Za početak, jer znamo da je a 0, onda jednadžbu možemo podijeliti s a, tako da dobijemo tzv. normalizirani oblik x 2 +px+q = 0, p = b a, q = c a. Po standardnim formulama, rješenja ove jednadžbe su x 1,2 = p± p 2 4q. 2 Medutim, u praksi, stvarno računanje se radi po formuli x 1,2 = p 2 ± (p 2) 2 q, s tim da na početku izračunamo i zapamtimo p/2 ili p/2. Ovim postupkom štedimo jedno množenje (ono s 4). NumMat 2019, 1. predavanje dodatak p. 94/102
95 Kvadratna jednadžba problem Primjer. Rješavamo kvadratnu jednadžbu x 2 56x+1 = 0. U dekadskoj aritmetici s p = 5 značajnih znamenki dobijemo Točna rješenja su x 1 = = = , x 2 = = = x 1 = i x 2 = Apsolutno manji od ova dva korijena x 1, ima samo dvije točne znamenke (kraćenje), relativna greška je ! Apsolutno veći korijen x 2 je savršeno točan. NumMat 2019, 1. predavanje dodatak p. 95/102
96 Kvadratna jednadžba popravak Prvo izračunamo većeg po apsolutnoj vrijednosti, po formuli x 2 = (b+sign(b) b 2 4ac) 2a = p 2 sign(p) (p 2) 2 q, a manjeg po apsolutnoj vrijednosti, izračunamo iz x 1 x 2 = c a = q (Vièteova formula), tj. formula za x 1 je x 1 = c x 2 a = q x 2. Opasnog kraćenja za x 1 više nema! NumMat 2019, 1. predavanje dodatak p. 96/102
97 Kvadratna jednadžba (nastavak) Ovo je bila samo jedna, od (barem) tri opasne točke za računanje. Preostale dvije su: kvadriranje pod korijenom mogućnost za overflow. Rješenje skaliranjem. oduzimanje u diskriminanti s velikim kraćenjem nema jednostavnog rješenja. Naime, krivac nije aritmetika. To je samo odraz tzv. nestabilnosti problema. Tad imamo dva bliska korijena, koji su vrlo osjetljivi na male promjene (perturbacije) koeficijenata jednadžbe. Na primjer, pomak c = pomak grafa gore dolje. Mali pomak rezultira velikom promjenom korijena! NumMat 2019, 1. predavanje dodatak p. 97/102
98 Primjeri izbjegavanja kraćenja NumMat 2019, 1. predavanje dodatak p. 98/102
99 Neki primjeri izbjegavanja kraćenja Primjer. Treba izračunati y = x+δ x, gdje su x i δ zadani ulazni podaci, s tim da je x > 0, a δ vrlo mali broj. U ovoj formuli, očito, dolazi do velike greške zbog kraćenja zaokruživanje korijena prije oduzimanja. Ako formulu deracionaliziramo u oblik problema više nema! y = δ x+δ + x, NumMat 2019, 1. predavanje dodatak p. 99/102
100 Neki primjeri izbjegavanja kraćenja Primjer. Treba izračunati y = cos(x+δ) cosx, gdje su x i δ zadani ulazni podaci, s tim da je cosx razumno velik, a δ vrlo mali broj. Opet, dolazi do velike greške zbog kraćenja. Ako formulu napišmo u produktnom obliku y = 2 sin δ ( 2 sin x+ δ ), 2 problema više nema! NumMat 2019, 1. predavanje dodatak p. 100/102
101 Širenje grešaka zaključak NumMat 2019, 1. predavanje dodatak p. 101/102
102 Opasne i bezopasne operacije sažetak Jedina opasna operacija kad rezultat može imati veliku relativnu grešku, je oduzimanje bliskih brojeva, i to samo kad polazni operandi već imaju neku grešku (samo oduzimanje je tada, najčešće, egzaktno). Ovaj fenomen zove se opasno ili katastrofalno kraćenje. Sve ostale operacije su bezopasne relativna greška rezultata ne raste pretjerano. Posebno, dijeljenje malim brojem nije opasno, osim kad je mali broj nastao (ranijim) kraćenjem. Nažalost, u nekim knjigama piše suprotno i pogrešno. NumMat 2019, 1. predavanje dodatak p. 102/102
Programiranje 1 IEEE prikaz brojeva sažetak Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog1 2018, IEEE p
Programiranje IEEE prikaz brojeva sažetak Saša Singer singer@math.hr web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog 208, IEEE prikaz brojeva sažetak p. /4 Sadržaj predavanja IEEE standard
ВишеProgramiranje 2 0. predavanje Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog2 2019, 0. predavanje p. 1/4
Programiranje 2 0. predavanje Saša Singer singer@math.hr web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog2 2019, 0. predavanje p. 1/48 Sadržaj predavanja Ponavljanje onog dijela C-a koji
ВишеNumerička matematika 1. predavanje Saša Singer web.math.hr/~singer PMF Matematički odjel, Zagreb NumMat 2010, 1. predavanje p.1/133
Numerička matematika 1. predavanje Saša Singer singer@math.hr web.math.hr/~singer PMF Matematički odjel, Zagreb NumMat 2010, 1. predavanje p.1/133 Dobar dan, dobro došli NumMat 2010, 1. predavanje p.2/133
ВишеNumerička matematika 11. predavanje dodatak Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb NumMat 2019, 11. p
Numerička matematika 11. predavanje dodatak Saša Singer singer@math.hr web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb NumMat 2019, 11. predavanje dodatak p. 1/46 Sadržaj predavanja dodatka
ВишеProgramiranje 1 3. predavanje prošireno Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog1 2018, 3. predava
Programiranje 1 3. predavanje prošireno Saša Singer singer@math.hr web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog1 2018, 3. predavanje prošireno p. 1/120 Sadržaj proširenog predavanja
ВишеProgramiranje 1 3. predavanje Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog1 2017, 3. predavanje p. 1/1
Programiranje 1 3. predavanje Saša Singer singer@math.hr web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog1 2017, 3. predavanje p. 1/132 Sadržaj predavanja Osnovni tipovi podataka u računalu
ВишеALIP1_udzb_2019.indb
Razmislimo Kako u memoriji računala prikazujemo tekst, brojeve, slike? Gdje se spremaju svi ti podatci? Kako uopće izgleda memorija računala i koji ju elektronički sklopovi čine? Kako biste znali odgovoriti
ВишеCIJELI BROJEVI 1.) Kako još nazivamo pozitivne cijele brojeve? 1.) Za što je oznaka? 2.) Ispiši skup prirodnih brojeva! 3.) Kako označavamo skup priro
CIJELI BROJEVI 1.) Kako još nazivamo pozitivne cijele brojeve? 1.) Za što je oznaka? 2.) Ispiši skup prirodnih brojeva! 3.) Kako označavamo skup prirodnih brojeva? 4.) Pripada li 0 skupu prirodnih brojeva?
ВишеJMBAG IME I PREZIME BROJ BODOVA 1. (ukupno 6 bodova) MJERA I INTEGRAL 1. kolokvij 4. svibnja (Knjige, bilježnice, dodatni papiri i kalkulatori n
1. (ukupno 6 bodova) MJERA I INTEGRAL 1. kolokvij 4. svibnja 2018. (Knjige, bilježnice, dodatni papiri i kalkulatori nisu dozvoljeni!) (a) (2 boda) Definirajte (općenitu) vanjsku mjeru. (b) (2 boda) Definirajte
ВишеMicrosoft Word - 6ms001
Zadatak 001 (Anela, ekonomska škola) Riješi sustav jednadžbi: 5 z = 0 + + z = 14 4 + + z = 16 Rješenje 001 Sustav rješavamo Gaussovom metodom eliminacije (isključivanja). Gaussova metoda provodi se pomoću
ВишеMatrice. Algebarske operacije s matricama. - Predavanje I
Matrice.. Predavanje I Ines Radošević inesr@math.uniri.hr Odjel za matematiku Sveučilišta u Rijeci Matrice... Matrice... Podsjeti se... skup, element skupa,..., matematička logika skupovi brojeva N,...,
Више23. siječnja od 13:00 do 14:00 Školsko natjecanje / Osnove informatike Srednje škole RJEŠENJA ZADATAKA S OBJAŠNJENJIMA Sponzori Medijski pokrovi
3. siječnja 0. od 3:00 do 4:00 RJEŠENJA ZADATAKA S OBJAŠNJENJIMA Sponzori Medijski pokrovitelji Sadržaj Zadaci. 4.... Zadaci 5. 0.... 3 od 8 Zadaci. 4. U sljedećim pitanjima na pitanja odgovaraš upisivanjem
ВишеMicrosoft Word - 15ms261
Zadatak 6 (Mirko, elektrotehnička škola) Rješenje 6 Odredite sup S, inf S, ma S i min S u skupu R ako je S = { R } a b = a a b + b a b, c < 0 a c b c. ( ), : 5. Skratiti razlomak znači brojnik i nazivnik
Више2015_k2_z12.dvi
OBLIKOVANJE I ANALIZA ALGORITAMA 2. kolokvij 27. 1. 2016. Skice rješenja prva dva zadatka 1. (20) Zadano je n poslova. Svaki posao je zadan kao vremenski interval realnih brojeva, P i = [p i,k i ],zai
ВишеProgramiranje 1 9. predavanje Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog1 2018, 9. predavanje p. 1/6
Programiranje 1 9. predavanje Saša Singer singer@math.hr web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog1 2018, 9. predavanje p. 1/60 Sadržaj predavanja Osnovni algoritmi na cijelim brojevima:
ВишеOblikovanje i analiza algoritama 4. predavanje Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb OAA 2017, 4. pr
Oblikovanje i analiza algoritama 4. predavanje Saša Singer singer@math.hr web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb OAA 2017, 4. predavanje p. 1/69 Sadržaj predavanja Složenost u praksi
Вишеs2.dvi
1. Skup kompleksnih brojeva 1. Skupovibrojeva.... Skup kompleksnih brojeva................................. 6. Zbrajanje i množenje kompleksnih brojeva..................... 9 4. Kompleksno konjugirani
Више(Microsoft Word - Dr\236avna matura - studeni osnovna razina - rje\232enja)
1. C. Imamo redom: I. ZADATCI VIŠESTRUKOGA IZBORA 9 + 7 6 9 + 4 51 = = = 5.1 18 4 18 8 10. B. Pomoću kalkulatora nalazimo 10 1.5 = 63.45553. Četvrta decimala je očito jednaka 5, pa se zaokruživanje vrši
Више0255_Uvod.p65
1Skupovi brojeva Skup prirodnih brojeva Zbrajanje prirodnih brojeva Množenje prirodnih brojeva U košari ima 12 jaja. U drugoj košari nedostaju tri jabuke da bi bila puna, a treća je prazna. Pozitivni,
ВишеSlide 1
OSNOVNI POJMOVI Naredba je uputa računalu za obavljanje određene radnje. Program je niz naredbi razumljivih računalu koje rješavaju neki problem. Pisanje programa zovemo programiranje. Programski jezik
Више(Microsoft Word - Rje\232enja zadataka)
1. D. Svedimo sve razlomke na jedinstveni zajednički nazivnik. Lako provjeravamo da vrijede rastavi: 85 = 17 5, 187 = 17 11, 170 = 17 10, pa je zajednički nazivnik svih razlomaka jednak Tako sada imamo:
Више(Microsoft Word - MATB - kolovoz osnovna razina - rje\232enja zadataka)
. B. Zapišimo zadane brojeve u obliku beskonačno periodičnih decimalnih brojeva: 3 4 = 0.7, = 0.36. Prvi od navedenih četiriju brojeva je manji od 3 4, dok su treći i četvrti veći od. Jedini broj koji
ВишеMatematika 1 - izborna
3.3. NELINEARNE DIOFANTSKE JEDNADŽBE Navest ćemo sada neke metode rješavanja diofantskih jednadžbi koje su drugog i viših stupnjeva. Sve su te metode zapravo posebni oblici jedne opće metode, koja se naziva
ВишеOblikovanje i analiza algoritama 5. predavanje Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb OAA 2017, 5. pr
Oblikovanje i analiza algoritama 5. predavanje Saša Singer singer@math.hr web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb OAA 2017, 5. predavanje p. 1/68 Sadržaj predavanja Nehomogene rekurzije
ВишеPLAN I PROGRAM ZA DOPUNSKU (PRODUŽNU) NASTAVU IZ MATEMATIKE (za 1. razred)
PLAN I PROGRAM ZA DOPUNSKU (PRODUŽNU) NASTAVU IZ MATEMATIKE (za 1. razred) Učenik prvog razreda treba ostvarit sljedeće minimalne standarde 1. SKUP REALNIH BROJEVA -razlikovati brojevne skupove i njihove
ВишеHej hej bojiš se matematike? Ma nema potrebe! Dobra priprema je pola obavljenog posla, a da bi bio izvrsno pripremljen tu uskačemo mi iz Štreberaja. D
Hej hej bojiš se matematike? Ma nema potrebe! Dobra priprema je pola obavljenog posla, a da bi bio izvrsno pripremljen tu uskačemo mi iz Štreberaja. Donosimo ti primjere ispita iz matematike, s rješenjima.
ВишеPROGRAMIRANJE Program je niz naredbi razumljivih računalu koje rješavaju neki problem. Algoritam je postupak raščlanjivanja problema na jednostavnije
PROGRAMIRANJE Program je niz naredbi razumljivih računalu koje rješavaju neki problem. Algoritam je postupak raščlanjivanja problema na jednostavnije korake. Uz dobro razrađen algoritam neku radnju ćemo
ВишеMicrosoft Word - predavanje8
DERIVACIJA KOMPOZICIJE FUNKCIJA Ponekad je potrebno derivirati funkcije koje nisu jednostavne (složene su). Na primjer, funkcija sin2 je kompozicija funkcija sin (vanjska funkcija) i 2 (unutarnja funkcija).
ВишеUAAG Osnovne algebarske strukture 5. Vektorski prostori Borka Jadrijević
Osnovne algebarske strukture 5. Vektorski prostori Borka Jadrijević Osnovne algebarske strukture5. Vektorski prostori 2 5.1 Unutarnja i vanjska množenja Imamo dvije vrste algebarskih operacija, tzv. unutarnja
ВишеJMBAG IME I PREZIME BROJ BODOVA MJERA I INTEGRAL 2. kolokvij 29. lipnja (Knjige, bilježnice, dodatni papiri i kalkulatori nisu dozvoljeni!) 1. (
MJERA I INTEGRAL. kolokvij 9. lipnja 018. (Knjige, bilježnice, dodatni papiri i kalkulatori nisu dozvoljeni! 1. (ukupno 6 bodova Neka je (, F, µ prostor s mjerom, neka je (f n n1 niz F-izmjerivih funkcija
ВишеPrimjena neodredenog integrala u inženjerstvu Matematika 2 Erna Begović Kovač, Literatura: I. Gusić, Lekcije iz Matematike 2
Primjena neodredenog integrala u inženjerstvu Matematika 2 Erna Begović Kovač, 2019. Literatura: I. Gusić, Lekcije iz Matematike 2 http://matematika.fkit.hr Uvod Ako su dvije veličine x i y povezane relacijom
Више6-8. ČAS Celobrojno programiranje Rešavamo sledeći poblem celobrojnog programiranja: Gde pretpostavljamo da je A celobrojna matrica dimenzije,. Takođe
6-8. ČAS Celobrojno programiranje Rešavamo sledeći poblem celobrojnog programiranja: Gde pretpostavljamo da je A celobrojna matrica dimenzije,. Takođe, očekuje se da su koordinate celobrojne. U slučaju
ВишеPROMENLJIVE, TIPOVI PROMENLJIVIH
PROMENLJIVE, TIPOVI PROMENLJIVIH Šta je promenljiva? To je objekat jezika koji ima ime i kome se mogu dodeljivati vrednosti. Svakoj promenljivoj se dodeljuje registar (memorijska lokacija) operativne memorije
ВишеJMBAG IME I PREZIME BROJ BODOVA MJERA I INTEGRAL završni ispit 6. srpnja (Knjige, bilježnice, dodatni papiri i kalkulatori nisu dozvoljeni!) 1.
MJERA I INTEGRAL završni ispit 6. srpnja 208. (Knjige bilježnice dodatni papiri i kalkulatori nisu dozvoljeni!). (8 bodova) Kao na predavanjima za d N sa P d : a b ] a d b d ] : a i b i R a i b i za i
ВишеUvod u obične diferencijalne jednadžbe Metoda separacije varijabli Obične diferencijalne jednadžbe Franka Miriam Brückler
Obične diferencijalne jednadžbe Franka Miriam Brückler Primjer Deriviranje po x je linearan operator d dx kojemu recimo kao domenu i kodomenu uzmemo (beskonačnodimenzionalni) vektorski prostor funkcija
ВишеCelobrojno programiranje Rešavamo sledeći poblem celobrojnog programiranja: min c T x Ax = b x 0 x Z n Gde pretpostavljamo da je A celobrojna matrica
Celobrojno programiranje Rešavamo sledeći poblem celobrojnog programiranja: min c T x Ax = b x 0 x Z n Gde pretpostavljamo da je A celobrojna matrica dimenzije m n, b Z m, c Z n. Takođe, očekuje se da
ВишеDržavno natjecanje / Osnove informatike Srednje škole Zadaci U sljedećim pitanjima na odgovore odgovaraš upisivanjem slova koji se nalazi ispred
Zadaci. 8. U sljedećim pitanjima na odgovore odgovaraš upisivanjem slova koji se nalazi ispred točnog odgovora, u za to predviđen prostor. Odgovor Ako želimo stvoriti i pohraniti sliku, ali tako da promjenom
ВишеSVEUČILIŠTE U ZAGREBU PRIRODOSLOVNO MATEMATIČKI FAKULTET MATEMATIČKI ODSJEK Ivana Šore REKURZIVNOST REALNIH FUNKCIJA Diplomski rad Voditelj rada: doc.
SVEUČILIŠTE U ZAGREBU PRIRODOSLOVNO MATEMATIČKI FAKULTET MATEMATIČKI ODSJEK Ivana Šore REKURZIVNOST REALNIH FUNKCIJA Diplomski rad Voditelj rada: doc.dr.sc. Zvonko Iljazović Zagreb, rujan, 2015. Ovaj diplomski
ВишеTeorija skupova - blog.sake.ba
Uvod Matematika je jedan od najomraženijih predmeta kod većine učenika S pravom, dakako! Zapitajmo se šta je uzrok tome? Da li je matematika zaista toliko teška, komplikovana? Odgovor je jednostavan, naravno
ВишеMicrosoft Word - 1. REALNI BROJEVI- formulice
REALNI BROJEVI Skup prirodnih brojeva je N={1,2,3,4,,6,7, } Ako skupu prirodnih brojeva dodamo i nulu onda imamo skup N 0 ={0,1,2,3, } Skup celih brojeva je Z = {,-3,-2,-1,0,1,2,3, } Skup racionalnih brojeva
ВишеTest ispravio: (1) (2) Ukupan broj bodova: 21. veljače od 13:00 do 14:00 Županijsko natjecanje / Osnove informatike Osnovne škole Ime i prezime
Test ispravio: () () Ukupan broj bodova:. veljače 04. od 3:00 do 4:00 Ime i prezime Razred Škola Županija Mentor Sadržaj Upute za natjecatelje... Zadaci... Upute za natjecatelje Vrijeme pisanja: 60 minuta
Више(Microsoft Word - Dr\236avna matura - svibanj osnovna razina - rje\232enja)
I. ZADATCI VIŠESTRUKOGA IZBORA 1. A. Svih pet zadanih razlomaka svedemo na najmanji zajednički nazivnik. Taj nazivnik je najmanji zajednički višekratnik brojeva i 3, tj. NZV(, 3) = 6. Dobijemo: 15 1, 6
ВишеDržavna matura iz informatike
DRŽAVNA MATURA IZ INFORMATIKE U ŠK. GOD. 2013./14. 2016./17. SADRŽAJ Osnovne informacije o ispitu iz informatike Područja ispitivanja Pragovi prolaznosti u 2014./15. Primjeri zadataka po područjima ispitivanja
ВишеMicrosoft PowerPoint - 03-Slozenost [Compatibility Mode]
Сложеност алгоритама (Програмирање 2, глава 3, глава 4-4.3) Проблем: класа задатака истог типа Велики број различитих (коректних) алгоритама Величина (димензија) проблема нпр. количина података које треба
Више(Microsoft Word - Dr\236avna matura - kolovoz osnovna razina - rje\232enja)
5 5: 5 5. B. Broj.5 možemo zapisati u obliku = =, a taj broj nije cijeli broj. 0 0 : 5 Broj 5 je iracionalan broj, pa taj broj nije cijeli broj. Broj 5 je racionalan broj koji nije cijeli broj jer broj
Вишеknjiga.dvi
1. Vjerojatnost 1. lgebra dogadaja......................... 1 2. Vjerojatnost............................. 9 3. Klasični vjerojatnosni prostor................. 14 4. eskonačni vjerojatnosni prostor...............
Више8. razred kriteriji pravi
KRITERIJI OCJENJIVANJA MATEMATIKA 8. RAZRED Učenik će iz nastavnog predmeta matematike biti ocjenjivan usmeno i pismeno. Pismeno ocjenjivanje: U osmom razredu piše se šest ispita znanja i bodovni prag
Више7. predavanje Vladimir Dananić 14. studenoga Vladimir Dananić () 7. predavanje 14. studenoga / 16
7. predavanje Vladimir Dananić 14. studenoga 2011. Vladimir Dananić () 7. predavanje 14. studenoga 2011. 1 / 16 Sadržaj 1 Operator kutne količine gibanja 2 3 Zadatci Vladimir Dananić () 7. predavanje 14.
ВишеMicrosoft Word - Rjesenja zadataka
1. C. Svi elementi zadanoga intervala su realni brojevi strogo veći od 4 i strogo manji od. Brojevi i 5 nisu strogo veći od 4, a 1 nije strogo manji od. Jedino je broj 3 strogo veći od 4 i strogo manji
Вишеatka 26 (2017./2018.) br. 102 NEKE VRSTE DOKAZA U ČAROBMATICI Jadranka Delač-Klepac, Zagreb jednoj smo priči spomenuli kako je važno znati postavljati
NEKE VRSTE DOKAZA U ČAROBMATICI Jadranka Delač-Klepac, Zagreb jednoj smo priči spomenuli kako je važno znati postavljati prava pitanja. U Jednako je važno znati pronaći odgovore na postavljena pitanja,
ВишеAlgoritmi i arhitekture DSP I
Univerzitet u Novom Sadu Fakultet Tehničkih Nauka Katedra za računarsku tehniku i međuračunarske komunikacije Algoritmi i arhitekture DSP I INTERNA ORGANIACIJA DIGITALNOG PROCESORA A OBRADU SIGNALA INTERNA
ВишеPripreme 2016 Indukcija Grgur Valentić lipanj Zadaci su skupljeni s dva predavanja na istu temu, za učenike od prvog do trećeg razreda i za MEMO
Pripreme 016 Indukcija Grgur Valentić lipanj 016. Zadaci su skupljeni s dva predavanja na istu temu, za učenike od prvog do trećeg razreda i za MEMO kandidate. Zato su zadaci podjeljeni u odlomka. U uvodu
ВишеMy_P_Red_Bin_Zbir_Free
БИНОМНА ФОРМУЛА Шт треба знати пре почетка решавања задатака? I Треба знати биному формулу која даје одговор на питање чему је једнак развој једног бинома када га степенујемо са бројем 0 ( ) или ( ) 0!,
ВишеElementi praćenja i ocjenjivanja za nastavni predmet Matematika u 4. razredu Elementi praćenja i ocjenjivanja za nastavni predmet Matematika u 4. razr
Elementi praćenja i ocjenjivanja za nastavni predmet Matematika u 4. razredu ODLIČAN (5) navodi primjer kuta kao dijela ravnine omeđenog polupravcima analizira i uspoređuje vrh i krakove kuta analizira
Више18 1 DERIVACIJA 1.3 Derivacije višeg reda n-tu derivaciju funkcije f označavamo s f (n) ili u Leibnizovoj notaciji s dn y d x n. Zadatak 1.22 Nadite f
8 DERIVACIJA.3 Derivacije višeg reda n-tu derivaciju funcije f označavamo s f (n) ili u Leibnizovoj notaciji s dn y d x n. Zadata. Nadite f (x) ao je (a) f(x) = ( + x ) arctg x (b) f(x) = e x cos x (a)
Више(Microsoft Word - Dr\236avna matura - rujan osnovna razina - rje\232enja)
I. ZADATCI VIŠESTRUKOGA IZBORA. B. Broj je cijeli broj, tj. pripada skupu cijelih brojeva Z. Skup cijelih brojeva Z je pravi podskup skupa racionalnih brojeva Q, pa je i racionalan broj. 9 4 je očito broj
Више8 2 upiti_izvjesca.indd
1 2. Baze podataka Upiti i izvješća baze podataka Na početku cjeline o bazama podataka napravili ste plošnu bazu podataka o natjecanjima učenika. Sada ćete izraditi relacijsku bazu u Accessu o učenicima
Више(Microsoft Word - Dr\236avna matura - lipanj osnovna razina - rje\232enja)
1. C. Zaokružimo li zadani broj na najbliži cijeli broj, dobit ćemo 5 (jer je prva znamenka iza decimalne točke 5). Zaokružimo li zadani broj na jednu decimalu, dobit ćemo 4.6 jer je druga znamenka iza
ВишеОрт колоквијум
II колоквијум из Основа рачунарске технике I - 27/28 (.6.28.) Р е ш е њ е Задатак На улазе x, x 2, x 3, x 4 комбинационе мреже, са излазом z, долази четворобитни BCD број. Ако број са улаза при дељењу
ВишеNumeričke metode u fizici 1, Projektni zadataci 2018./ Za sustav običnih diferencijalnih jednadžbi, koje opisuju kretanje populacije dviju vrs
Numeričke metode u fizici, Projektni zadataci 8./9.. Za sustav običnih diferencijalnih jednadžbi, koje opisuju kretanje populacije dviju vrsta životinja koje se nadmeću za istu hranu, dx ( dt = x x ) xy
Више(Microsoft Word - Dr\236avna matura - kolovoz osnovna razina - rje\232enja)
I. ZADATCI VIŠESTRUKOGA IZBORA. C. Zadani broj očito nije niti prirodan broj niti cijeli broj. Budući da je 3 78 3. = =, 00 5 zadani broj možemo zapisati u obliku razlomka kojemu je brojnik cijeli broj
Више(Microsoft Word - Dr\236avna matura - lipanj osnovna razina - rje\232enja)
1. D. Prirodni brojevi su svi cijeli brojevi strogo veći od nule. je strogo negativan cijeli broj, pa nije prirodan broj. 14 je racionalan broj koji nije cijeli broj. Podijelimo li 14 s 5, dobit ćemo.8,
ВишеSKRIPTE EKOF 2019/20 skripteekof.com Lekcija 1: Brojevni izrazi Lekcija 1: Brojevni izrazi Pregled lekcije U okviru ove lekcije imaćete priliku da nau
Lekcija : Brojevni izrazi Pregled lekcije U okviru ove lekcije imaćete priliku da naučite sledeće: osnovni pojmovi o razlomcima proširivanje, skraćivanje, upoređivanje; zapis razlomka u okviru mešovitog
ВишеMicrosoft Word - 12ms121
Zadatak (Goran, gimnazija) Odredi skup rješenja jednadžbe = Rješenje α = α c osα, a < b < c a + < b + < c +. na segmentu [ ], 6. / = = = supstitucija t = + k, k Z = t = = t t = + k, k Z t = + k. t = +
ВишеTutoring System for Distance Learning of Java Programming Language
Deklaracija promenljivih Inicijalizacija promenljivih Deklaracija promenljive obuhvata: dodelu simboličkog imena promenljivoj i određivanje tipa promenljive (tip određuje koja će vrsta memorijskog registra
Вишеvjezbe-difrfv.dvi
Zadatak 5.1. Neka je L: R n R m linearni operator. Dokažite da je DL(X) = L, X R n. Preslikavanje L je linearno i za ostatak r(h) = L(X + H) L(X) L(H) = 0 vrijedi r(h) lim = 0. (5.1) H 0 Kako je R n je
ВишеDvostruki integrali Matematika 2 Erna Begović Kovač, Literatura: I. Gusić, Lekcije iz Matematike 2
vostruki integrali Matematika 2 Erna Begović Kovač, 2019. Literatura: I. Gusić, Lekcije iz Matematike 2 http://matematika.fkit.hr Uvod vostruki integral je integral funkcije dvije varijable. Oznaka: f
ВишеRazvoj programa, Code::Blocks, struktura programa, printf, scanf, konverzioni karakteri predavač: Nadežda Jakšić
Razvoj programa, Code::Blocks, struktura programa, printf, scanf, konverzioni karakteri predavač: Nadežda Jakšić projektni zadatak projektovanje programa (algoritmi) pisanje programskog koda, izvorni kod,
Више(Microsoft Word - Dr\236avna matura - kolovoz ni\236a razina - rje\232enja)
1. C. Imamo redom: I. ZADATCI VIŠESTRUKOGA IZBORA. B. Imamo redom: 0.3 0. 8 7 8 19 ( 3) 4 : = 9 4 = 9 4 = 9 = =. 0. 0.3 3 3 3 3 0 1 3 + 1 + 4 8 5 5 = = = = = = 0 1 3 0 1 3 0 1+ 3 ( : ) ( : ) 5 5 4 0 3.
ВишеMicrosoft Word - ASIMPTOTE FUNKCIJA.doc
ASIMPTOTE FUNKCIJA Naš savet je da najpre dobro proučite granične vrednosti funkcija Neki profesori vole da asimptote funkcija ispituju kao ponašanje funkcije na krajevima oblasti definisanosti, pa kako
Више1
Podsetnik: Statističke relacije Matematičko očekivanje (srednja vrednost): E X x p x p x p - Diskretna sl promenljiva 1 1 k k xf ( x) dx E X - Kontinualna sl promenljiva Varijansa: Var X X E X E X 1 N
ВишеAlgoritmi SŠ P1
Županijsko natjecanje iz informatike Srednja škola 9. veljače 2018. RJEŠENJA ZADATAKA Napomena: kodovi za većinu opisanih algoritama dani su u Pythonu radi jednostavnosti i lakše čitljivosti. Zbog prirode
Више1 Polinomi jedne promenljive Neka je K polje. Izraz P (x) = a 0 + a 1 x + + a n x n = n a k x k, x K, naziva se algebarski polinom po x nad poljem K.
1 Polinomi jedne promenljive Neka je K polje. Izraz P (x) = a 0 + a 1 x + + a n x n = n a k x k, x K, naziva se algebarski polinom po x nad poljem K. Elementi a k K su koeficijenti polinoma P (x). Ako
ВишеMinistarstvo prosvjete i športa Republike Hrvatske Agencija za odgoj i obrazovanje Hrvatsko matematičko društvo OPĆINSKO/ŠKOLSKO NATJECANJE IZ MATEMAT
Ministarstvo prosvjete i športa Republike Hrvatske Agencija za odgoj i obrazovanje Hrvatsko matematičko društvo OPĆINSKO/ŠKOLSKO NATJECANJE IZ MATEMATIKE 1. razred srednja škola B kategorija 9. siječnja
ВишеLogičke izjave i logičke funkcije
Logičke izjave i logičke funkcije Građa računala, prijenos podataka u računalu Što su logičke izjave? Logička izjava je tvrdnja koja može biti istinita (True) ili lažna (False). Ako je u logičkoj izjavi
ВишеSkalarne funkcije više varijabli Parcijalne derivacije Skalarne funkcije više varijabli i parcijalne derivacije Franka Miriam Brückler
i parcijalne derivacije Franka Miriam Brückler Jednadžba stanja idealnog plina uz p = nrt V f (x, y, z) = xy z x = n mol, y = T K, z = V L, f == p Pa. Pritom je kodomena od f skup R, a domena je Jednadžba
ВишеSlide 1
0(a) 0(b) 0(c) 0(d) 0(e) :: :: Neke fizikalne veličine poput indeksa loma u anizotropnim sredstvima ovise o iznosu i smjeru, a nisu vektori. Stoga se namede potreba poopdavanja. Međutim, fizikalne veličine,
ВишеProgramiranje 1 drugi kolokvij, 2. veljače Ime i prezime: JMBAG: Upute: Na kolokviju je dozvoljeno koristiti samo pribor za pisanje i brisanje,
Upute: Na kolokviju je dozvoljeno koristiti samo pribor za pisanje i brisanje, te službeni podsjetnik. Kalkulatori, mobiteli, razne neslužbene tablice, papiri i sl., nisu dozvoljeni! Sva rješenja napišite
Више(Microsoft Word - Dr\236avna matura - lipanj osnovna razina - rje\232enja)
1. C. Interval, tvore svi realni brojevi strogo manji od. Interval, 9] tvore svi realni brojevi strogo veći od i jednaki ili manji od 9. Interval [1, 8] tvore svi realni brojevi jednaki ili veći od 1,
ВишеMATEMATIKA viša razina MATA.29.HR.R.K1.24 MAT A D-S MAT A D-S029.indd :30:29
MATEMATIKA viša razina MAT9.HR.R.K.4.indd 9.9.5. ::9 Prazna stranica 99.indd 9.9.5. ::9 OPĆE UPUTE Pozorno pročitajte sve upute i slijedite ih. Ne okrećite stranicu i ne rješavajte zadatke dok to ne odobri
ВишеMicrosoft Word - 1.Operacije i zakoni operacija
1. Operacije i zakoni operacija Neka je S neprazan skup. Operacija dužine n skupa S jeste svako preslikavanje : n n f S S ( S = S S S... S) Ako je n = 1, onda operaciju nazivamo unarna. ( f : S S ) Ako
ВишеAlgebarski izrazi (4. dio)
Dodatna nastava iz matematike 8. razred Algebarski izrazi (4. dio) Aleksandra-Maria Vuković OŠ Gornji Mihaljevec amvukovic@gmail.com 12/21/2010 SADRŽAJ 7. KVADRATNI TRINOM... 3 [ Primjer 18. Faktorizacija
ВишеSadržaj 1 Diskretan slučajan vektor Definicija slučajnog vektora Diskretan slučajan vektor
Sadržaj Diskretan slučajan vektor Definicija slučajnog vektora 2 Diskretan slučajan vektor Funkcija distribucije slučajnog vektora 2 4 Nezavisnost slučajnih vektora 2 5 Očekivanje slučajnog vektora 6 Kovarijanca
ВишеŽUPANIJSKO NATJECANJE IZ MATEMATIKE 28. veljače razred - rješenja OVDJE SU DANI NEKI NAČINI RJEŠAVANJA ZADATAKA. UKOLIKO UČENIK IMA DRUGAČIJI
ŽUANIJSKO NATJECANJE IZ MATEMATIKE 8. veljače 09. 8. razred - rješenja OVDJE SU DANI NEKI NAČINI RJEŠAVANJA ZADATAKA. UKOLIKO UČENIK IMA DRUGAČIJI OSTUAK RJEŠAVANJA, ČLAN OVJERENSTVA DUŽAN JE I TAJ OSTUAK
ВишеVeeeeeliki brojevi
Matematička gimnazija Nedelja informatike 3 12. decembar 2016. Uvod Postoji 10 tipova ljudi na svetu, oni koji razumeju binarni sistem, oni koji ne razumeju binarni sistem i oni koji nisu očekivali šalu
ВишеProgramiranje 2 popravni kolokvij, 15. lipnja Ime i prezime: JMBAG: Upute: Na kolokviju je dozvoljeno koristiti samo pribor za pisanje i brisanj
Upute: Na kolokviju je dozvoljeno koristiti samo pribor za pisanje i brisanje, te službeni šalabahter. Kalkulatori, mobiteli, razne neslužbene tablice, papiri i sl., nisu dozvoljeni! Sva rješenja napišite
ВишеNewtonova metoda za rješavanje nelinearne jednadžbe f(x)=0
za rješavanje nelinearne jednadžbe f (x) = 0 Ime Prezime 1, Ime Prezime 2 Odjel za matematiku Sveučilište u Osijeku Seminarski rad iz Matematičkog praktikuma Ime Prezime 1, Ime Prezime 2 za rješavanje
ВишеNAČINI, POSTUPCI I ELEMENTI VREDNOVANJA UČENIČKIH KOMPETENCIJA IZ NASTAVNOG PREDMETA: MATEMATIKA Na osnovu članka 3., stavka II, te članka 12., stavka
NAČINI, POSTUPCI I ELEMENTI VREDNOVANJA UČENIČKIH KOMPETENCIJA IZ NASTAVNOG PREDMETA: MATEMATIKA Na osnovu članka 3., stavka II, te članka 12., stavka II i III, Pravilnika o načinima, postupcima i elementima
ВишеINF INFORMATIKA INF.27.HR.R.K1.20 INF D-S INF D-S027.indd :50:41
INF INFORMATIKA INF.7.HR.R.K..indd 7.7.6. 3:5:4 Prazna stranica 99.indd 7.7.6. 3:5:4 OPĆE UPUTE Pozorno pročitajte sve upute i slijedite ih. Ne okrećite stranicu i ne rješavajte zadatke dok to ne odobri
ВишеMicrosoft Word - Matematika_kozep_irasbeli_javitasi_0611_horvatH.doc
Matematika horvát nyelven középszint 0611 ÉRETTSÉGI VIZSGA 006. május 9. MATEMATIKA HORVÁT NYELVEN MATEMATIKA KÖZÉPSZINTŰ ÍRÁSBELI ÉRETTSÉGI VIZSGA PISMENI ISPIT SREDNJEG STUPNJA JAVÍTÁSI-ÉRTÉKELÉSI ÚTMUTATÓ
ВишеPASCAL UVOD 2 II razred gimnazije
PASCAL UVOD 2 II razred gimnazije Upis-ispis 1. Upis Read(a,b); --u jednom redu Readln(a,b); -- nakon upisa prelazi se u novi red 2. Ispis Write(a,b); -- u jednom redu Writeln(a,b); --nakon ispisa prelazi
ВишеProgramiranje u C-u ili C++-u Pseudo-slučajni brojevi; Dinamička alokacija memorije 1 ZADACI SA ČASA Zadatak 1 Napraviti funkciju koja generišlučajan
Programiranje u C-u ili C++-u Pseudo-slučajni brojevi; Dinamička alokacija memorije 1 ZADACI SA ČASA Zadatak 1 Napraviti funkciju koja generišlučajan realan broj od 0 i 1. Na standardni izlaz ispisati
ВишеSkripte2013
Chapter 2 Algebarske strukture Preslikivanje f : A n! A se naziva n-arna operacija na skupu A Ako je n =2, kažemo da je f : A A! A binarna operacija na A Kažemo da je operacija f arnosti n, u oznaci ar
ВишеPEDAGOŠKI ZAVOD TUZLA u saradnji s UDRUŽENJEM MATEMATIČARA TUZLANSKOG KANTONA Takmičenje učenika srednjih škola Tuzlanskog kantona iz MATEMATIKE Tuzla
PEDAGOŠKI ZAVOD TUZLA u saradnji s UDRUŽENJEM MATEMATIČARA TUZLANSKOG KANTONA Takmičenje učenika srednjih škola Tuzlanskog kantona iz MATEMATIKE Tuzla, 3. mart/ožujak 019. godine Prirodno-matematički fakultet
Више08 RSA1
Преглед ЗАШТИТА ПОДАТАКА Шифровање јавним кључем и хеш функције RSA алгоритам Биће објашњено: RSA алгоритам алгоритам прорачунски аспекти ефикасност коришћењем јавног кључа генерисање кључа сигурност проблем
ВишеNatjecanje 2016.
I RAZRED Zadatak 1 Grafiĉki predstavi funkciju RJEŠENJE 2, { Za, imamo Za, ), imamo, Za imamo I RAZRED Zadatak 2 Neka su realni brojevi koji nisu svi jednaki, takvi da vrijedi Dokaži da je RJEŠENJE Neka
Више(Microsoft Word - Dr\236avna matura - svibanj vi\232a razina - rje\232enja)
I. ZADATCI VIŠESTRUKOGA IZBORA. D. Skup svih realnih brojeva koji su jednaki ili manji od je interval, ]. Skup svih realnih brojeva koji su strogo veći od je interval, +. Traženi skup tvore svi realni
ВишеMicrosoft Word - 24ms221
Zadatak (Katarina, maturantica) Kružnica dira os apscisa u točki (3, 0) i siječe os ordinata u točki (0, 0). Koliki je polumjer te kružnice? A. 5 B. 5.45 C. 6.5. 7.38 Rješenje Kružnica je skup svih točaka
ВишеUDŽBENIK 2. dio
UDŽBENIK 2. dio Pročitaj pažljivo Primjer 1. i Primjer 2. Ova dva primjera bi te trebala uvjeriti u potrebu za uvo - denjem još jedne vrste brojeva. Primjer 1. Živa u termometru pokazivala je temperaturu
Више