Corso di Laurea in Matematica Analisi Numerica · 2016. 1. 22. · Analisi Numerica 1° mod. a.a....

Post on 23-Feb-2021

3 views 0 download

transcript

1

Corso di Laurea in Matematica

Analisi Numerica (1° mod., 6 crediti, 48 ore, a.a. 2014-2015, lez.5)

Docente: Marco Gaviano

(e-mail:gaviano@unica.it)

2

Schema di un problema numerico

Tx=y

y x relazioni

input output

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.5

3

Classificazione di problemi numerici

1. Problemi diretti

y x relazioni

si assegna si determina assegnate

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.5

4

Schema di un problema numerico

Tx=y

y x relazioni

input output

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.5

5

Classificazione di problemi numerici

2. Problemi di identificazione

y x relazioni

assegnato assegnato si determina

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.5

6

Classificazione di problemi numerici

3. Problemi inversi

y x relazioni

si determina si assegna assegnate

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.5

7

Analisi degli errori

Notazione

a >> b significa a ‘molto più grande’ di b

a b significa a ‘approssimativamente uguale’ a b

a-b indica ‘l’errore assoluto’ tra i valori a e b

(a-b)/a indica ‘l’errore relativo’ tra i valori a e b

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.5

8

Analisi degli errori

Tipi di errore

1. Errori nel modello

2. Errori nei dati

3. Errori di arrotondamento e nei calcoli

4. Errori di troncamento

Analisi Numerica

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.5

9

Rappresentazione dei numeri nel Calcolatore

Notazione posizionale

8754 (nel sistema decimale) è un modo compatto

di scrivere

8103 + 7102 + 5101 + 4100

In generale in base 10 si ha

N=dndn-1…d0 = dn10n + dn-110n-1 +…+ d0100

cifre

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.5

10

Possono utilizzarsi altre basi:

• binaria (2 simboli: 0, 1)

• ottale (8 simboli: 0,1, 2, 3, 4, 5, 6, 7)

• esadecimale (16 simboli: 0,1, 2, 3, 4, 5, 6, 7, 8, 9, A,

B, C,D, E, F )

Esistono algoritmi che operano la conversione da una

base ad un’altra

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.5

11

In una generica base >1 si ha per un numero

N= (dndn-1,…,d1d0)

(dndn-1,…,d1d0) = dnn + dn-1

n-1 +…+ d11+ d0

0

cifre in base , comprese tra 0 e -1

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.5

12

Osservazione

Conversione da binario ad esadecimale

(0000)2= (0)16, (0001)2= (1)16

(0010)2= (2)16, (0011)2= (3)16 ….

(1100)2= (C)16, (1101)2= (D)16

(1110)2= (E)16, (1111)2= (F)16

F

1111

1

0001

1

1

binario

esadecimale

conversione

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.5

13

Esempio di rappresentazioni di un numero in basi

differenti

base rappres. numero

2 100011111

4 10133

8 437

10 287

12 1BB

16 11F

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.5

14

Teorema

Dato un numero reale x0 esso può esprimersi

univocamente come

con

1. sign(x) = 1 (x>0) oppure sign(x)= -1 (x<0)

2. p numero intero

3. 0di-1

4. d10 e le di non tutte uguali a -1 a partire da un

indice in poi

esponenteparte

p

mantissam

dddxsignx

...)()( 3

3

2

2

1

1

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.5

15

Esempi

2345 =+(210-1+ 310-2+ 410-3+ 510-4)104

=+(.2345)104

0.0045 =+(410-1+ 510-2)10-2

=+(.45)10-2

0.00004 =+(410-1)10-4

=+(.4)10-4

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.5

16

Osservazione 1

d1 è 0 perché in tal modo nel rappresentare il

numero non si scrivono gli zeri per esempio

0.000000004 =+(410-1)1010-8

=+(.4)10 10-8

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.5

17

Osservazione 2

La condizione 4 serve per avere una rappresentazione

univoca. Altrimenti le 2 espressioni

(.99999999….)10 100 e (1)101

rappresenterebbero lo stesso numero

9 ripetuto infinite volte

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.5

18

Osservazione 3

La mantissa m soddisfa la relazione

In conclusione un numero reale x con x 0 si può

scrivere nella forma

x=(.d1 d2 d3…)p

e si parla di ‘rappresentazione normalizzata’

11

m

le cifre potrebbero essere infinite

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.5

19

Numeri macchina o sistema floating point

L’insieme dei numeri reali è infinito e vi sono dei

numeri con un numero infinito di cifre (numeri

irrazionali).

In un calcolatore che ha un numero finito di celle di

memoria può rappresentarsi un sottoinsieme finito

dei numeri reali. Inoltre i numeri reali con un

numero di cifre ‘grande’ o infinito saranno

rappresentati mediante approssimazioni.

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.5

20

Ogni calcolatore può avere il suo modo di

rappresentare i numeri. Si individua comunque uno

schema generale comune, chiamato

sistema floating point

o

sistema in virgola mobile

o

insieme dei numeri macchina

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.5

21

(definizione)

Un insieme di numeri macchina con t cifre

significative, base e range (L,U) è l’insieme dei

numeri dato da

con

• t, interi > 0 e 2

• 0 di -1, i=2,3,…

• d1 0, L p U, U>0, L<0

t

i

i

i

p dxsignRxULtF1

)(0),,,(

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.5

22

Un numero reale x ha la forma

Un numero macchina x ha la forma

p

tdddx 21.

numero di cifre finito e uguale a t

le cifre potrebbero essere infinite

pdddx 321.

p è limitato

p non è limitato

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.5

23

Esempi di sistemi floating point in doppia precisione

Dec 11/780 Vax 2 56 256

IBM /370 16 14 128

Cray 2 96 32768

Honeywell DPS8 2 63

Sperry 1100 2 60 2048

IEEE standard chip 2 52 2048

Hewlett Packard 3000 2 54 512

calcolatore t U+|L|+1

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.5

24

Il numero (cardinalità) dei numeri in un sistema

floting point è

infatti

1)1)(1||(21 tLU

t

i

i

i

p dxsignRxULtF1

)(0),,,(

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.5

25

Esempio di sistema floating point con

=2, t=3, L= 1, U=2

Il generico numero ha la forma

pdd 21.0 21

3 cifre per la

mantissa

parte esponente con

-1p2 1a cifra 0

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.5

26

La cardinalità di tale sistema è 1+2(2+1+1)(1)(2)2

I numeri sono: lo zero e

± 0.100·2-1 ± 0.101·2-1 ± 0.110·2-1 ± 0.111·2-1

± 0.100·20 ± 0.101·20 ± 0.110·20 ± 0.111·20

± 0.100·21 ± 0.101·21 ± 0.110·21 ± 0.111·21

± 0.100·22 ± 0.101·22 ± 0.110·22 ± 0.111·22

)21.0(0)2,1,3,2( 21

pddF

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.5

27

I valori positivi nella retta reale sono rappresentati da

0 2-2 2-1 20 21 22

I numeri si distribuiscono uniformemente tra successive

potenze di 2 ovvero tra

[2-2 , 2-1], [2-1 , 20], [20 , 21], [21 , 22]

underflow overflow

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.5

28

Un sistema floating point più realistico è dato da

=2, t=24, U+|L|+1=256

In tal caso si potrebbe avere la rappresentazione su un

calcolatore utilizzando 4 bytes (precisione semplice)

caratteristica mantissa

8 bits 23 bits

segno

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.5

29

Come rappresentiamo un numero reale x, x>0,

su un calcolatore con sistema floating point F(,t,L,U)?

1. x è tale che L p U e di =0 per i > t; allora x è un

numero macchina rappresentabile esattamente

pdddx ...)(. 321

rappresentazione normalizzata di x

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.5

30

2. L’esponente p della rappresentazione di x non

appartiene all’intervallo [L,U]. X non può essere

rappresentato esattamente nel sistema floating

point.

Se p < L si parla di underflow ed x viene

approssimato con lo zero

Se p > U si parla di overflow ed x non può essere

rappresentato in nessun modo

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.5

31

3. L’esponente p della rappresentazione di x

appartiene all’intervallo [L,U] ma le cifre di ,

per i > t non sono tutte nulle. Allora x viene

approssimato da un numero del sistema

floating F del calcolatore

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.5

32

Approssimazione ad un numero floating point

Sia x un numero reale > 0 della forma

con p[L,U] allora il numero macchina che lo approssima

si indica con fl(x) con fl(x) dato da

pdddx ...)(. 321

t

i

i

i

p dxtroncxfl1

)()(

)2

1()(

1

1

tt

i

i

i

p dtroncxfl

troncamento, chopping

arrotondamento, rounding

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.5

33

Esempio

Sia dato il numero x=165.286 in base 10.

x=(.165286)103 (in forma normalizzata )

In caso di troncamento con t=4 si approssima con

In caso di arrotondamento con t=4 si approssima con

310)1652(.)()( xtroncxfl

34 10)]102

116528(.[)( troncxfl

33 10)1653(.10)]00005.016528(.[ tronc

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.5

34

Osservazione

Se dt+1< /2 troncamento ed approssimazione coincidono;

per esempio con t=4 in entrambi i casi si ha

x=856.428 (.8564)103

Se dt+1 /2 troncamento ed approssimazione differiscono

(in valore assoluto) di p-t; per esempio con t=4

x = 856.468 (.8564)103 (troncamento)

x = 856.468 (.8565)103 (arrotondamento)

differenza = 103-4 = 0.1

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.5

35

Proposizione

Sia x un numero reale in base , ovvero

Allora (se non si verifica overflow) si ha la valutazione

dell’errore

con k=1 nel caso del troncamento e

con k=0.5 nel caso dell’arrotondamento

].,[,01

1

ULpddxi

i

i

p

tkx

xxfl 1)(

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.5

36

Dimostrazione nel caso dell’arrotondamento

Si ha

Poiché d1 0 e m –1, si ha

ptxxfl 2

1)(

t

t

p

pt

mmx

xxfl

1

2

1

||

2

1

||

2

1)(

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.5

37

La quantità

si chiama precisione macchina del sistema floating

point.

(proprietà) eps è il più piccolo numero macchina

positivo tale che

tkeps 1

1)1( epsfl

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.5

38

Come conoscere il valore eps di un sistema floating

point?

Algoritmo(precisione macchina) in pseudo-codice

eps=1.

eps1=eps+1;

while eps1> 1,

eps=0.5*eps;

eps1=eps+1

end

stampa ‘la precisione macchina è: 2*eps

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.5

39

Algoritmo in FORTRAN(descritto nel libro di testo)

EPS=1.

1 EPS=0.5*EPS

EPS1=EPS+1

IF(EPS1.GT.1) GOTO 1

EPS=2.*EPS

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.5

40

Corso di Laurea in Matematica

Analisi Numerica (1° mod., 6 crediti, 48 ore, a.a. 2014-2015, lez.6)

Docente: Marco Gaviano

(e-mail:gaviano@unica.it)

41

Osservazione

Quando si eseguono calcoli su un calcolatore è

importante conoscere i parametri del suo sistema

floating point, F(, t, L, U). In particolare si deve

conoscere la precisione macchina

In Matlab il valore eps è predefinito e vale

eps = 2.220446049250313e-016

tkeps 1

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.6

42

1. eps dà la distanza tra 1 ed il successivo numero

macchina più grande

2. eps è il più piccolo numero macchina positivo tale che

1)1( epsfl

1 eps

non ci sono numeri macchina

gli altri numeri macchina numero macchina successivo ad 1

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.6

43

Perché la somma di due numeri macchina a e b con

a>> b può dare a? ovvero: a+b=a

Esempio con =10 (sistema decimale) e t=4

a=24,56 = (.2456)·102

b=0,00001234 = (.1234)·10-4

.2456 102

.0000001234 102

.2456 102

riduzione alla stessa parte esponenziale

quella del numero maggiore

somma e perdita delle cifre di b

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.6

44

La relazione

Può riscriversi come

epskx

xxfl t 1)(

epsconxxfl ||)1()(

perturbazione

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.6

45

Le operazioni aritmetiche sul calcolatore

(aritmetica floating point)

Dato x e y numeri macchina di un sistema floating point

F(, t, L, U). Si ha

x+y xy = fl(x+y)

x-y xy = fl(x-y)

y*y xy = fl(x*y)

x/y xy = fl(x/y)

operazioni (esatte) definite in matematica

operazioni eseguite dal calcolatore

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.6

46

Osservazione

Le operazione aritmetiche eseguite in un calcolatore

sono approssimazioni delle operazioni definite in

Matematica.

Nell’eseguire un’operazione quale la somma tra due

numeri reali a e b può aversi e un errore di

rappresentazione di a e b; inoltre ad esso deve

aggiungersi l’errore introdotto nel fare la somma.

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.6

47

Possiamo scrivere per x e y numeri macchina

xy = (xy)(1+ ) con | | eps

Nel caso della somma

xy = float(x+y) = (x+y)(1+ )

qualsiasi operazione aritmetica

eseguita dal calcolatore operazione aritmetica

corrispondente esatta

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.6

48

ed anche

x y = float(x+y) = (x + y)(1+ )= x(1+ ) + y(1+ )

a cui può darsi la seguente interpretazione la somma

data dal calcolatore è la somma esatta di

x(1+ ) e y(1+ )

cioè il calcolatore dà la somma esatta non di x e y ma di

due valori modificati (perturbazioni di x e y)

somma nel calcolatore somma esatta

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.6

49

Questo modo di operare viene usato per studiare gli

errori che si commettono quando un algoritmo è

implementato su di un calcolatore; viene chiamata

analisi all’indietro dell’errore o backward analysis.

Cioè a partire dai dati x, il calcolatore, applicando un

certo algoritmo, produce il risultato y affetto da errore.

Il risultato y è interpretato come risultato esatto

ottenuto a partire da x+ (dati perturbati)

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.6

50

In pratica avviene questo

Noi con l’analisi all’indietro lo interpretiamo come

y x algoritmo

y x+ algoritmo

affetto da errore opera in aritmetica finita

non affetto da errore opera esattamente dati perturbati

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.6

51

Conclusione

L’aritmetica (finita) del calcolatore non coincide con

l’aritmetica (infinita) definita in Matematica

Proprietà valide in Matematica possono non essere

valide

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.6

52

Esempi

Dati i numeri a, b, c si deve calcolare a+b+c

a= 0.2337125810-4

b= 0.33678429102

c= -0.33677811102

Si può operare in 2 modi differenti

(algorit.1) (a b) c = 0.33678452102 0.33677811102

=0.6410000010-3

(algorit.2) a (b c) = 0.2337125810-4 0.618000010-3

=0.64137126 10-3

risultato esatto

a+b+c= 0.64137125810-3

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.6

53

(esercitazione)

La funzione

y1= x6-6x5+15x4-20x3 +15x2-6x+1

può essere scritta anche nella forma

y2=(x-1)6

Fare il grafico della funzione utilizzando le 2

rappresentazioni. Ovvero nella stessa figura fare il

grafico di y1 e y2 nell’intervallo [0.994, 1.006].

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.6

54

Come operano i programmi che tracciano il

grafico di una funzione di una variabile ?

A partire da una tabulazione (xi, yi), i=1,…,n

uniscono con una curva i punti riportati in un

sistema di assi cartesiani

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.6

55

I punti sono pochi: il grafico non è soddisfacente

-8 -6 -4 -2 0 2 4 6 8-1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.6

56

I punti sono sufficienti: il grafico è accettabile

-8 -6 -4 -2 0 2 4 6 8-1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.6

57

I grafici di

y1= x6-6x5+15x4-20x3 +15x2-6x+1 e y2=(x-1)6

0.994 0.996 0.998 1 1.002 1.004 1.006 1.008 1.01-1

0

1

2

3

4

5x 10

-14

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.6

58

I grafici di

y1= x6-6x5+15x4-20x3 +15x2-6x+1 e y2=(x-1)6

0.994 0.996 0.998 1 1.002 1.004 1.006 1.008 1.01-1

0

1

2

3

4

5x 10

-14

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.6

59

I grafici di

y1= x6-6x5+15x4-20x3 +15x2-6x+1 e y2=(x-1)6

0.994 0.996 0.998 1 1.002 1.004 1.006 1.008 1.01-1

0

1

2

3

4

5x 10

-14

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.6

60

Problema ben posto (definizione)

Un problema si dice ben posto (Hadamard) quando

ammette una ed una sola soluzione e questa dipende con

continuità dai dati

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.6

61

Problema ben posto

y x relazioni

dati del problema soluzione del problema

ad ogni x corrisponde

uno ed un solo y

dipende con continuità

al variare di x

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.6

62

Condizionamento di un problema

Consideriamo un problema in cui si abbia

x(dati input) f(x) (soluzione esatta), x, f(x)R

Si debba operare a partire dai dati x ma per errori dovuti alla

raccolta dei dati si operi a partire da x+

La soluzione esatta sarà ora f(x+) (al posto di f(x)).

L’errore assoluto sarà f(x)-f(x+) e quello relativo

Il termine è chiamato errore inerente dovuto all’errore sui dati

in input

0)(,)(

)()(

xf

xf

xfxff

f

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.6

63

L’errore inerente viene posto in relazione con l’errore

relativo in input

In tal modo si può analizzare il problema in termini

generali e valutare, come al variare dei dati in input

varia la soluzione esatta.

0,

xx

x

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.6

64

La quantità

è detta numero di condizionamento del problema nel punto x.

Si ha per qualsiasi incremento ||

Se C è piccolo, allora il problema è ben condizionato

0,||

)(

)()(supsup

|||

x

xf

xfxfC

x

f

xf C

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.6

65

Esempio

Si debba calcolare

Posto si ha

Trascurando i termini di ordine superiore al primo (si assume

|<<1|), si ottiene

)1()21(

)1()1(ˆˆ)ˆ(

22

222

xxx

xx

xx

xxxxxf

x

xxf

x

x

xx

xxxx

xf

xfxf

1

12

)(

)()1()21(

)(

)()ˆ(2

22

xxxf 2)(

)1(ˆxxxx

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.6

66

Poiché , il problema di valutare

è mal condizionato per valori in

input in intorni del punto –1.

Altro esempio:

Con calcoli analoghi si ottiene

In tal caso il problema

è ben condizionato.

1

12lim

1 x

x

x

xxxf 2)(

3)( xxf

xfxf

xfxf 3

)(

)()ˆ(

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.6

67

Problema ben condizionato (definizione)

Un problema si dice ben condizionato quando è ben posto

e la sua soluzione non varia di molto al variare dei dati

y x relazioni

non varia di molto

al variare dei dati dati del problema

soluzione del problema

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.6

68

Algoritmo

Insieme di operazioni che permettono di risolvere un

problema numerico

y x algoritmo

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.6

69

Il problema dello studio dell’attendibilità delle soluzioni

date da un algoritmo è di grande importanza in Analisi

Numerica. Tale studio è difficile e solo in casi particolari

si riesce a dare delle indicazioni utili; esistono varie

tecniche: le principali sono

• Analisi in avanti (forward analysis)

• Analisi all’indietro (backward analysis)

• Aritmetica dell’intervallo

• Analisi statistica

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.6

70

Analisi in avanti dell’errore algoritmico

Con l’analisi in avanti, si valuta ad ogni operazione

eseguita dall’algoritmo l’errore commesso,

ricordando che per ogni operazione al calcolatore si

ha

xy=(xy)(1+ ) con | | eps .

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.6

71

Esempio

Si debba valutare l’errore algoritmico che si ottiene

eseguendo al calcolatore

Si assume che i valori in input siano numeri macchina

xxxf 5)( 2

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.6

72

Le operazioni dell’algoritmo nel calcolare x2-5x sono

si ottiene

Ricordando la relazione fondamentale dei calcoli in

aritmetica di macchina, ed effettuando i calcoli in

prima approssimazione, ossia trascurando gli ordini

superiori al primo, si ottiene:

.;5; 2132

2

1 zzzxzxz

).();5();( 2132

2

1 zzflzxflzxflz

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.6

73

Tramite questo sviluppo al prim’ordine siamo in grado

di valutare l’errore algoritmico

33

2

21

22

321

22

321

2

21

2

2

3

555

)1)(55(

)1))(1(5)1((

))1(5)1((

))5()((

xxxxxx

xxxx

xx

xxfl

xflxflflz

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.6

74

L’algoritmo è instabile poichè per x tendente a 5, l’errore

algoritmico cresce in maniera non limitata.

32132212

2

2

2

33

2

21

22

2

5

5

55

5

5

5

5555

)(

)())5()((

)(

)())((

xx

x

xx

x

xx

x

xx

xxxxxxxx

xf

xfxflxflfl

xf

xfxfflALG

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.6

75

Consideriamo, per la stessa funzione f(x) l’algoritmo

seguente

Consideriamo ogni passo dell’algoritmo:

Al calcolatore si ottiene

)5()( xxxf

.;5 121 zxzxz

).();5( 121 zxflzxflz

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.6

76

L’errore algoritmico risulta essere

L’algoritmo è stabile.

2121

)5(

)5()1)(5(

)(

)())5((

)(

)())((

xx

xxxx

xf

xfxflxfl

xf

xfxfflALG

)1)(5(

)1))(1)(5(())5((

21

212

xx

xxxflxflz

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.6

77

Analisi all’indietro dell’errore algoritmico

Insieme di problemi da risolvere

ottenuti perturbando i dati

Pb

P

x

y

soluzione esatta

soluzione calcolata

dall’algoritmo problema la cui soluzione

esatta è y

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.6

78

Algoritmo stabile (definizione qualitativa)

Un algoritmo si dice stabile quando nella sua applicazione

gli errori di arrotondamento non vengono

amplificati eccessivamente

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.6

79

Possiamo avere

•Un problema può essere ben condizionato per certi

dati ma non per altri

•Un problema può essere ben condizionato ma se lo

risolviamo con un algoritmo non stabile le soluzioni

ottenute possono non essere attendibili

•In Analisi Numerica in generale si riesce a trovare la

soluzione di problemi ben condizionati se si dispone di

algoritmi stabili

Analisi Numerica 1° mod. a.a. 2014-2015, Lezione n.6