









Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Prepara tus exámenes
Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Prepara tus exámenes con los documentos que comparten otros estudiantes como tú en Docsity
Encuentra los documentos específicos para los exámenes de tu universidad
Estudia con lecciones y exámenes resueltos basados en los programas académicos de las mejores universidades
Responde a preguntas de exámenes reales y pon a prueba tu preparación
Consigue puntos base para descargar
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Comunidad
Pide ayuda a la comunidad y resuelve tus dudas de estudio
Ebooks gratuitos
Descarga nuestras guías gratuitas sobre técnicas de estudio, métodos para controlar la ansiedad y consejos para la tesis preparadas por los tutores de Docsity
Asignatura: Mètodes Numèrics, Profesor: Josep Maria Mondelo, Carrera: Matemàtiques, Universidad: UAB
Tipo: Apuntes
1 / 16
Esta página no es visible en la vista previa
¡No te pierdas las partes importantes!










alcul num`
eric ´
es imprescindible controlar l’efecte dels errors.
N’hem de considerar de tres tipus:
Errors en les dades d’entrada
, deguts a mesuraments incorrectes o
a la finitud de la seva representaci´
o a l’ordinador.
Errors a les operacions
, deguts a que emprem aritm`
etica de punt
flotant finita.
etodes que veurem durant el curs no produeixen la
soluci´
o exacta del probema que aborden, ni tan sols en el sup`
osit que
pogu´
essim representar exactament les dades d’entrada i no es produis-
sin errors en les operacions. Els errors deguts a aquest fet es coneixencom a
errors de truncament
En aquest cap´
ıtol tractarem els dos primers tipus d’error. Dels errors de
truncament, que s´
on espec´
ıfics de cada m`
etode, ens ocuparem en cap´
ıtols
El seg¨
uent teorema garanteix l’exist`
encia te`
orica de representaci´
o (infinita)
en punt flotant de qualsevol n´
umero real.
Teorema 1.1.
Fixem
b
b
. Tot
x
x
pot ser representat
de la forma
x
s
∞
i
=
α
i
b
−
i
b
q
J.M. Mondelo. M`
etodes Num`
erics. Cap´
ıtol 1
amb
s
q
i
α
i
,... , b
A m´
es, la representaci´
o
anterior ´
es ´
unica si
α
1
i els
α
i
no son tots
b
d’una posici´
o en
endavant, i.e.,
i
0
i
i
0
α
i
b
Escriurem (1.1) abreujadament com
x
s
.α
1
α
2
α
3
b
b
q
El sub´
ındex
b
dels par`
entesis indica que els d´
ıgits
α
1
α
2
α
3
es troben en
base
b
Exemple 1.1.
(representacions normalitzades)
x
3
x
−
2
x
100
3
2
2
x
1
(la representaci´
o ´
es infinita per`
o no
peri`
odica).
Exemple 1.1.
Suposem
x
10
b
= 2. Per passar a binari un nombre
que nom´
es t´
e part decimal, nom´
es cal multiplicar-lo per dos, la part ente-
ra d´
ona el primer d´
ıgit, quedar-se amb la part decimal, multiplicar-la per
dos, la part entera d´
ona el segon d´
ıgit, quedar-se amb la part decimal i aix´
ı
successivament.
Com que la part decimal de 1
es 0
2, que ja ha sortit, es tornar`
a a repetir
el grup 0011 ad infinitum. Per tant, la representaci´
o bin`
aria de 0
es
10
2
2
−
3
Noteu que, tot i que la representaci´
o decimal de 0
es finita, la bin`
aria no
ho ´
es pas.
1.1 Representaci´
o en punt flotant
Observaci´
o 1.1.
El camp
e
del format IEEE simple de la taula 1.1 com-
pleix
e
q
min
e
e
q
max
, on
e
q
min
q
q
min
e
q
max
q
q
max
Noteu que no es fan servir els valors
e
= 0 i
e
= 255, tot i que s´
on repre-
sentables amb 8 bits.
El motiu ´
es que
e
= 255 s’utilitza per representar
l’infinit (resultat d’
overflow
) i una classe de n´
umeros anomenats NaN (Not
a Number), que s’usen per indicar operacions inv`
al
lides (com dividir per
zero o voler calulcar l’arrel d’un n´
umero negatiu).
El cas
e
= 0 s’usa per
representar n´
umeros no normalitzats (resultat d’
underflows
El format IEEE doble ´
es totalment an`
aleg, en aquest cas no s’usen
e
2047 (infinits i NaN) ni
e
= 0 (n´
umeros no normalitzats).
D’acord amb l’estructura de la representaci´
o en punt flotant, ´
es clar que
el conjunt de nombres reals que es poden representar exactament ´
es finit.
Concretament, Definici´
o 1.1.
Denotarem el conjunt de nombres representables exacta-
ment en aritm`
etica de punt flotant de
t
d´
ıgits, en base
b
i amb exponent
entre
q
min
i
q
max
per
b, t, q
min
, q
max
Es a dir,
b, t, q
min
, q
max
.δ
1
... δ
t
b
b
q
, δ
i
,... , b
, δ
1
, q
min
q
q
max
(noteu que nom´
es considerem nombres normalitzats). Els nombres de
b, t,
q
min
, q
max
tamb´
e es coneixen com
nombres m`
aquina
Donat
x
, si
x /
b, t, q
min
, q
max
) no el podrem representar exacta-
ment, sin´
o que haurem d’operar amb una aproximaci´
o seva
˜x
b, t, q
min
, q
max
Aquesta aproximaci´
o es pot trobar per truncament o arrodoniment.
Definici´
o 1.1.
Sigui
x
amb representaci´
o en base
b
donada per
x
s
∞
i
=
α
i
b
−
i
b
q
d’acord amb el teorema 1.1.1, i suposem
q
min
q
q
max
Anomenarem
representaci´
o en punt flotant per truncament
de
x
a fl
T
x
b, t, q
min
, q
max
definit per
fl
T
x
s
.α
1
α
2
... α
t
b
q
es a dir
δ
i
α
i
per
i
,... , t
J.M. Mondelo. M`
etodes Num`
erics. Cap´
ıtol 1
Anomenarem
representaci´
o en punt flotant per arrodoniment
de
x
a fl
A
x
b, t, q
min
, q
max
definit per
fl
A
x
s
.α
1
... α
t
b
q
si
α
t
< b/
s
.α
1
... α
t
−
1
α
t
b
q
si
b/
α
t
b
Noteu que s’han de tenir en compte els acarrejos.
2
Exemple 1.1.
Per
t
b
fl
A
0
fl
A
0
fl
A
1
Exemple 1.1.
Anem a veure com es representa dins la mem`
oria
fl
T
en l’aritm`
etica IEEE–simple. A l’exemple 1.1.3 hem vist
10
2
−
3
Llavors, d’acord amb la figura 1.1,
s
es un n´
umero positiu),
e
q
o en binari, i la mantissa surt directament de (1.4).
Per
passar un n´
umero natural a binari, hem de dividir per dos, llavors el reste
d´
ona el primer d´
ıgit (de dreta a esquerra), quedar-nos amb el quocient, di-
vidir per dos, el reste d´
ona el segon d´
ıgit, quedar-nos amb el quocient i aix´
ı
successivament fins que tinguem quocient zero. En el nostre cas,
reste −→
d’on 123 = (1111011)
2
. Per tant,
fl
A
0
0
1
1
1
1
0
1
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
1
2
Estrictament, tamb´
e s’hauria de tenir en compte que un nombre amb
q
=
q
max
que
arrodoneixi cap a amunt pot produir un overflow.
1.1 Representaci´
o en punt flotant
Recordeu que el primer d´
ıgit de la mantissa sempre ´
es 1 i no es representa.
Noteu tamb´
e que l’´
ultim bit prov´
e de l’arrodoniment.
A continuaci´
o, volem quantificar l’error que es produeix en representar
un nombre qualsevol
x
per truncament o arrodoniment. Abans d’aix`
o
hem de formalitzar el concepte d’error. Definici´
o 1.1.
Si
x
i
˜x
es una aproximaci´
o de
x
, definim l’
error
absolut de
˜x
com a aproximaci´
o de
x
e
a
˜x, x
, per
e
a
x, x
x
x,
i, si
x
, definim l’
error relatiu de
x
com a aproximaci´
o de
x
e
r
˜x, x
per
e
r
˜x, x
˜x
x
x
e
a
˜x, x
x
Notem que l’error relatiu no est`
a definit si
x
= 0. Quan
x
sigui descone-
gut, prendrem
e
r
x, x
ex
−
x
ex
. Ometrem el segon argument de
e
a
i
e
r
quan
sigui clar a partir del contexte (i, per tant, denotarem
e
a
˜x
) o
e
r
˜x
En general no coneixem aquests errors exactament sin´
o nom´
es una fita
d’aquests:
En el cas de l’error absolut, un n´
umero
ε
a
˜x
0 tal que
e
a
˜x
ε
a
x
). Notarem
x
˜x
ε
a
x
) o b´
e
x
˜x
e
amb
e
ε
a
˜x
En el cas de l’error relatiu, un n´
umero
ε
r
˜x
) tal que
e
r
˜x
ε
r
˜x
Notarem
x
x
ε
r
˜x
)) o b´
e
˜x
x
δ
) amb
δ
ε
r
x
Observaci´
o 1.1.
Sempre que tinguem una igualtat del tipus
δ
es pot llegir com “l’error relatiu de
com a aproximaci´
o de
´es
δ
”, i.e.
e
r
δ
Aix`
o ser`
a d’utilitat per fitar la propagaci´
o de l’error a les
operacions m´
es endavant.
Per exemple,
x
−
4
vol dir que aproximem
x
per
˜x
per`
o que
x
est`
a entre 2
−
4
0995 i 2
−
4
Amb les notacions anteriors,
ε
a
x
−
4
i
ε
r
x
ε
a
x
x
−
4
−
4
Habitualment escrivim els n´
umeros en base 10. Una manera c`
omoda de
referir-nos a la precisi´
o d’un c`
alcul ´
es mitjan¸
cant els conceptes de
nombre de
decimals correctes
i el
nombre de xifres significatives
J.M. Mondelo. M`
etodes Num`
erics. Cap´
ıtol 1
Definici´
o 1.1.
Sigui
x
una aproximaci´
o de
x
. Si
e
a
˜x
12
−
t
a
, direm
que
˜x
t´
e
t
a
decimals correctes
Si
x
sm
q
, amb
m <
, i
x
s
m
q
, i sigui
t
r
= max
i
m
m
−
i
Llavors direm que
x
t´
e
t
xifres significatives
El nombre de xifres significatives est`
a relacionat amb l’error relatiu, d’a-
cord amb el seg¨
uent
Lema 1.1.
En les notacions de la definici´
o anterior, es compleix
(a)
e
r
˜x
−
t
r
(b)
m
m
e
r
˜x
Prova:
Es directa de les definicions.
Quan escrivim el resultat d’un c`
alcul, ´
es habitual escriure nom´
es tants
d´
ıgits a la dreta del punt decimal com decimals correctes, o b´
e tants d´
ıgits
com xifres significatives (en aquest cas sense comptar zeros al davant). Exemple 1.1.
Considerem la seg¨
uent taula:
decimals correctes
xifres significatives
12
−
5
12
−
3
En la primera entrada, l’´
ultima xifra no es ni decimal correcte ni xifra sig-
nificativa. En la segona, tots els decimals s´
on correctes i totes les xifres s´
on
significatives.
Tornant als errors de representaci´
o, tenim la seg¨
uent
Proposici´
o 1.1.
Sigui
x
x
amb representaci´
o decimal infinita i
normalitzada donada pel teorema 1.1.1,
x
s
.α
1
α
2
b
b
q
α
1
L’error absolut en la seva representaci´
o en punt flotant en base
b
i
t
d´
ıgits
satisf`
a les seg¨
uents fites:
e
a
fl
T
x
, x
fl
T
x
x
b
q
−
t
e
a
fl
A
x
, x
fl
A
x
x
b
q
−
t
1.2 Aritm`
etica de punt flotant
ni
x
ni
y
s´
on necess`
ariament nombres m`
aquina, el que calcularem realment
´es
fl
x
fl
y
Com abans, anomenem
ε
l’`
epsilon–m`
aquina.
Per a certs
δ
1
, δ
2
, δ
3
verificant
δ
1
δ
2
δ
3
ε
, tindrem
fl
x
x
δ
1
fl
y
y
δ
2
fl
x
fl
y
fl
x
fl
y
δ
3
xy
δ
1
δ
2
δ
3
xy
δ
1
δ
2
δ
1
δ
2
δ
3
xy
δ
1
δ
2
δ
3
xy
δ
1
δ
2
δ
3
δ
3
δ
1
δ
2
xy
δ
1
δ
2
δ
3
En l’anterior cadena d’igualtats, cada cop que hem escrit un
ha estat
perqu`
e hem eliminat sumands que s´
on producte de dos o m´
es errors. Aquest
proc`
es l’anomenarem “eliminar termes d’ordre superior” i el farem de manera
sistem`
atica.
Moltes vegades escriurem = en comptes de
D’acord amb
l’anterior,
e
r
fl
x
fl
y
δ
1
δ
2
δ
3
d’on
e
r
fl
x
fl
y
ε,
o, escrit de forma equivalent,
ε
r
fl
x
fl
y
ε.
Per tant, tamb´
e tenim
ε
a
fl
x
fl
y
xy
ε.
Si
x, y
fossin nombres m`
aquina, tindr´
ıem
δ
1
δ
2
= 0 i l’error relatiu estaria
fitat per
ε
Exemple 1.2.
Anem a estudiar l’error degut a les operacions en el c`
alcul
de (
a
1
a
2
a
3
, suposant que
a
1
, a
2
, a
3
s´
on n´
umeros m`
aquina.
Calculem
e
r
a
1
a
2
a
3
). Aquest cop fem anar la notaci´
o
fl
a
1
a
2
a
3
fl
a
1
a
2
a
3
fl
a
1
a
2
fl
a
3
δ
2
fl
a
1
a
2
a
3
δ
2
J.M. Mondelo. M`
etodes Num`
erics. Cap´
ıtol 1
fl
a
1
fl
a
2
δ
1
a
3
δ
2
a
1
a
2
δ
1
a
3
δ
2
a
1
a
2
a
3
δ
1
a
1
a
2
δ
2
a
1
a
2
a
3
δ
1
a
1
a
2
δ
2
a
1
a
2
a
3
δ
1
δ
2
a
1
a
2
a
1
a
2
a
3
δ
1
a
1
a
2
δ
2
a
1
a
2
a
3
a
1
a
2
a
3
δ
1
a
1
a
2
a
1
a
2
a
3
δ
2
essent
δ
1
δ
2
ε
. Per tant,
e
r
a
1
a
2
a
3
δ
1
a
1
a
2
a
1
a
2
a
3
δ
2
Notem que, si
δ
1
= 0 i
a
1
a
2
a
1
a
2
a
3
, l’error relatiu es dispara.
Una de les coses que se segueix d’aix`
o ´
es que l’ordre de sumaci´
o ´
es important,
i per tant la suma en punt flotant no ´
es associativa.
Vegem-ne un exemple. Treballem amb
b
t
= 8 i definim
a
−
4
b
2
c
2
Aleshores,
a
b
c
2
2
−
3
b
c
a
−
3
−
4
−
3
El resultat exacte ´
es
a
b
c
−
3
Mirem quin valor pren el factor d’amplificaci´
o en cada cas.
a
1
a
2
a
3
a
1
a
2
a
1
a
2
a
3
Cas 1
a
b
c
4
Cas 2
b
c
a
Noteu que es prediu molt b´
e la p`
erdua de d´
ıgits en el cas 1.
El que est`
a passant ´
es que s’est`
a donant el proc´
es conegut com a
can-
cel
laci´
o:
quan, en el cas 1, sumem
a
b
i
c
, estem restant quantitats molt
properes i en fer-ho perdem 5 d´
ıgits (feu la resta a m`
a i veureu que obteniu
5 zeros al comen¸
cament).
1.3 Propagaci´
o d’errors
Si sou suspica¸
cos, us haureu adonat que en el cas 2 tamb´
e hi ha una
cancel
laci´
o (en la primera suma que es fa), per`
o en aquest cas no dispara
l’error, tal com prediu (1.6).
La ra´
o ´
es que estem suposant que
a, b, c
s´
on
n´
umeros m`
aquina, i en fer
b
c
de fet estem obtenint la suma exacta
b
c
Per tant aquesta cancel
laci´
o no est`
a introduint cap error.
La conclusi´
o que s’ha de treure de l’exemple anterior ´
es que les can-
cel
lacions no s´
on perilloses en quant a introduir errors en les operacions,
per`
o s´
on fatals en quant a propagar errors acumulats, com tornarem a veure
a la seg¨
uent secci´
o.
Propagaci´
o d’errors
En aquesta secci´
o estudiarem com es propaguen els errors suposant que fem
les operacions de manera exacta.
Tot i que no ´
es veritat mai, suposar les
operacions exactes ´
es del tot raonable quan l’error en les dades d’entrada ´
es
uns quants ordres de magnitud superior a l’`
epsilon–m`
aquina.
Comen¸
carem per formalitzar el concepte d’“eliminar termes d’ordre su-
perior”. Definici´
o 1.3.
Siguin
f, g
funcions definides en un entorn de
a
(a) Direm que
f
x
´es “O” de
g
x
per a
x
a
, i notarem
f
x
g
x
x
a
quan existeixin
δ, K >
tals que
x
a
δ
f
x
g
x
(b) Direm que
f
x
´es “o” de
g
x
per a
x
a
, i notarem
f
x
o
g
x
x
a
si es compleix
lim x
→
a
f
x
g
x
Exemple 1.3.
Sigui
f
de classe
k
en un entorn de
a
es a dir,
f
´es
k
f
(
k
+1)
es cont´
ınua).
Considerem el
polinomi de Taylor de
f
de grau
k
al voltant de
a
k
x
f
a
f
′
a
x
a
f
(
k
)
a
k
x
a
k
Aleshores:
J.M. Mondelo. M`
etodes Num`
erics. Cap´
ıtol 1
(a) Es compleix que
f
x
k
x
x
a
k
). En efecte,
f
x
k
x
f
(
k
+1)
ξ
x
k
x
a
k
on
ξ
x
(min(
x, a
max(
x, a
es desconegut.
Si triem
δ >
0 tal que
f
(
k
+1)
sigui cont´
ınua a [
a
δ, a
δ
] i definim
max
x
∈
[
a
−
δ,a
δ
]
f
(
k
+1)
x
k
tenim que, si
x
a
< δ
f
x
k
x
x
a
k
(b) Es compleix que
f
x
k
x
o
x
a
k
). En efecte,
lim x
→
a
f
x
k
x
x
a
k
= lim
x
→
a
f
(
k
+1)
ξ
x
k
x
a
k
x
a
k
donat que el primer factor ´
es fitat a un entorn de
a
i el segon t´
e l´
ımit
zero.
En particular,
x
x
x
2
x
per a
x
Lema 1.3.
Siguin
f, g
funcions definides a un entorn de
a
Es verifica:
(a)
g
x
g
x
g
x
per a
x
a
, en el seg¨
uent sentit: si
f
1
x
g
x
, f
2
x
g
x
x
a
aleshores
f
1
x
f
2
x
g
x
x
a
(b)
g
x
g
x
g
x
, per a
x
a
(c)
f
x
g
x
f
x
g
x
, per a
x
a
1.3 Propagaci´
o d’errors
Acabem de veure que
˜x/x
e
r
˜x, x
), d’on
e
r
1 ˜x
1 x
e
r
˜x, x
e
r
˜x, x
e
r
˜x, x
e
r
˜x, x
on, a la darrera igualtat, hem usat (1.7). Emprant ara el lema 1.3.3 apartat(c),
e
r
1 ˜x
1 x
e
r
˜x, x
e
r
˜x, x
2
d’on, menyspreant el terme
e
r
x, x
2
), tenim
e
r
1 ex
1 x
e
r
˜x, x
), d’on pren-
drem
ε
r
1 ex
1 x
ε
r
˜x, x
). Usant aquest resultat i (e), obtenim
ε
r
˜x ˜y
ε
r
˜x, x
ε
r
1 ˜y
1 y
ε
r
˜x, x
ε
r
˜y, y
La deducci´
o de (c) de (f) ´
es an`
aloga a la de (b) de (e).
Exemple 1.3.
Suposant que les operacions es fan exactament, anem a
determinar l’error efectuat en el c`
alcul de
x
1
x
22
, essent
x
1
x
2
Traduint aix`
o al formalisme en qu`
e treballem, tenim
ε
a
x
1
, x
1
ε
r
˜x
1
, x
1
ε
a
˜x
1
, x
1
˜x
1
ε
a
x
2
, x
2
ε
r
˜x
2
, x
2
ε
a
˜x
2
, x
2
˜x
2
Fent servir la proposici´
o 1.3.4, apartat (e), obtenim
ε
r
x
1
x
22
, x
1
x
22
ε
r
x
1
, x
1
ε
r
˜x
22
, x
22
ε
r
x
1
, x
1
ε
r
˜x
2
, x
2
ε
r
˜x
2
, x
2
ε
r
x
1
, x
1
ε
r
˜x
2
, x
2
Passem a error absolut,
ε
a
x
1
˜x
22
, x
1
x
22
x
1
˜x
22
ε
r
˜x
1
˜x
22
, x
1
x
22
i, per tant, podem escriure,
x
1
x
22
J.M. Mondelo. M`
etodes Num`
erics. Cap´
ıtol 1
Durant un c`
alcul llarg, en la major part de situacions estarem interessats
en l’evoluci´
o de l’error relatiu, donat que est`
a directament relacionat amb
el nombre de xifres significatives que tenim al llarg del c`
alcul. Des d’aquest
punt de vista, el producte i la divisi´
o s´
on operacions “segures”.
Cada cop
que multipliquem o dividim dues quantitats afectades d’error, l’error relatiudel resultat “nom´
es” ´
es la suma dels errors de les dades. No passa el mateix
amb sumes i restes. De la propietat (d) de la proposici´
o 1.3.4 se’n dedueix:
La suma d’operands del mateix signe tamb´
e ´
es “segura”, al igual que
el producte i la divisi´
o.
Si
x
y
x
x
y
x
y
x
i, per tant, encara que
e
r
˜x, x
) sigui gros, si tant el factor
x
x
y
com
e
r
˜y, y
) s´
on prou petits,
e
r
˜x
˜y, x
y
) ser`
a petit.
D’aix`
o se’n
diu
esmorte¨
ıment de l’error
, degut a que l’error relatiu al resultat
es m´
es petit que el m`
axim dels errors relatius dels arguments.
Si
x, y
s´
on de signes diferents, almenys un dels factors
x
x
y
y
x
y
ser`
a
1 i l’error relatiu que porta multiplicant es veur`
a amplificat.
Aquesta amplificaci´
o ´
es dr`
astica si
x
y
es a dir, quan hi ha
can-
cel
lacions
, tal com hem comprovat a l’exemple 1.2.2.
Exemple 1.3.
Anem a veure un exemple de com una cancel
laci´
o pot
eliminar tota la precisi´
o que ten´
ıem i un esmorte¨
ıment la pot recuperar.
Definim
a
−
7
ε
r
a, a
−
7
b
−
7
ε
r
b, b
−
7
c
−
7
ε
r
˜c, c
−
7
Suposem que fem les seg¨
uents dues sumes de manera exacta:
d
˜a
b,
˜e
d
˜c.
1.3 Propagaci´
o d’errors
Trobem la fita de l’error relatiu de la primera suma:
ε
r
d, d
ε
r
˜a
˜b, a
b
a
˜a
b
ε
r
˜a, a
b
˜a
b
ε
r
b, b
−
7
−
7
L’error relatiu s’ha disparat. De fet, l’error absolut ve donat per
ε
a
˜a
b, a
b
ε
a
˜a, a
ε
a
˜b, b
−
7
d’on
a
b
−
7
i ´
es clar que a
˜a
b
hem perdut 5 xifres significatives.
Continuem operant: en fer
˜e
d
˜c
, podem fitar l’error relatiu per
ε
r
˜e, e
ε
r
d
c, d
c
d
d
˜c
ε
r
d, d
˜c
d
˜c
ε
r
˜c, c
−
6
−
7
−
6
Al resultat final tenim error relatiu petit, malgrat haver tingut una can-cel
laci´
o fatal emmig del c`
alcul. L’esmorte¨
ıment l’ha compensada.
A continuaci´
o veurem un resultat per fitar la propagaci´
o de l’error a trav´
es
de l’aplicaci´
o d’una funci´
o qualsevol, suposant que aquesta funci´
o s’avalua
exactament. Proposici´
o 1.3.7 (F´
ormula de propagaci´
o de l’error maximal)
Supo-
sem que
ϕ
´es una funci´
o de classe
2
en un entorn obert que cont´
e
˜x
i
x
, i
que
e
a
˜x, x
es petit. Aleshores
e
a
ϕ
˜x
, ϕ
x
ϕ
′
x
e
a
x, x
e
r
ϕ
˜x
, ϕ
x
xϕ
′
x
ϕ
x
e
r
˜x, x
on
significa que hem menyspreat termes d’ordre
. En particular,
ε
a
ϕ
˜x
, ϕ
x
ϕ
′
x
ε
a
x, x
ε
r
ϕ
˜x
, ϕ
x
x
ϕ
′
x
ϕ
x
ε
r
x, x
J.M. Mondelo. M`
etodes Num`
erics. Cap´
ıtol 1
Prova:
Comencem per l’error absolut. Tenim e
a
ϕ
˜x
, ϕ
x
ϕ
˜x
ϕ
x
ϕ
x
e
a
˜x, x
ϕ
x
ϕ
′
x
e
a
x, x
e
a
˜x, x
2
on, a la darrera igualtat, hem usat la f´
ormula de Taylor.
Per obtenir la
igualtat a primer ordre de l’enunciat, nom´
es hem de menysprear el terme
quadr`
atic en
e
a
˜x, x
En quant a l’error relatiu,
e
r
ϕ
x
, ϕ
x
e
a
ϕ
˜x
, ϕ
x
ϕ
x
ϕ
′
x
e
a
˜x, x
ϕ
x
xϕ
′
x
ϕ
x
e
a
˜x, x
x
xϕ
′
x
ϕ
x
e
r
x, x
i aix`
o finalitza la prova.
D’acord amb la proposici´
o anterior, el nombre
x
ϕ
′
x
ϕ
x
´es el factor d’amplificaci´
o (o reducci´
o) d’una fita de l’error relatiu d’una
quantitat
x
en aplicar-li una funci´
o qualsevol
ϕ
x
) (que suposem que s’avalua
exactament).
Es per aix`
o que es coneix com a
coeficient de propagaci´
o
Una aplicaci´
o immediata de la proposici´
o anterior ´
es la classificaci´
o d’ex-
pressions matem`
aticament equivalents des del punt de vista de la propagaci´
o
d’errors. Vegem-ne un exemple. Exemple 1.3.
Suposem que volem calcular
a
4
, prenent
x
˜x
73205, de manera que
ε
r
˜x, x
ε
a
˜x, x
x
−
7
Una possibilitat per trobar
a
es fer
a
ϕ
1
x
x
4
Suposant
que pogu´
essim avaluar
ϕ
1
exactament, obtindr´
ıem
˜a
ϕ
1
˜x
Trobem la
corresponent fita de l’error relatiu:
ε
r
ϕ
1
˜x
, ϕ
1
x
ϕ
′ 1
x
x
ϕ
1
x
ε
r
x, x
x
3
x
x
4
ε
r
x, x
−
7
−
5
1.3 Propagaci´
o d’errors
1.3.7). Trenquem el c`
alcul de
f
x
) en operacions elementals i considerem els
valors exactes i aproximats a cada etapa:
˜x
0
mesura(
x
x
0
x,
˜x
1
fl
x
0
x
1
x
0
x,
˜x
2
fl
(ln
˜x
1
x
2
ln
x
1
ln
x,
˜x
3
fl
x
22
x
3
x
2
2
(ln
x
2
˜x
4
fl
˜x
3
x
4
x
3
3 + (ln
x
2
˜x
5
fl
x
4
x
5
x
4
3 + (ln
x
2
Se’ns demana donar un valor per
ε
r
x
5
, x
5
). Anem a trobar progressivament:
ε
r
˜x
0
, x
0
ε
r
x
1
, x
1
ε
r
x
2
, x
2
Sigui
δ
0
e
r
(mesura(
x
)), d’on mesura(
x
x
δ
0
), per a
δ
0
ε
Aleshores,
ε
r
˜x
0
, x
0
ε
r
x
δ
0
, x
ε.
Sigui
δ
1
e
r
fl
˜x
0
, x
0
), d’on
fl
x
0
x
0
δ
1
), per a
δ
1
ε
Aleshores
ε
r
x
1
, x
1
ε
r
x
0
δ
1
, x
0
prop. 1.3.
ε
r
x
0
, x
0
ε
r
δ
1
ε
ε
ε.
Sigui
δ
2
e
r
fl
(ln
˜x
1
ln
˜x
1
), d’on
fl
(ln
˜x
1
) = ln
˜x
1
δ
2
), per a
δ
2
ε
. Aleshores,
ε
r
˜x
2
, x
2
ε
r
fl
(ln
x
1
ln
x
1
ε
r
(ln
˜x
1
δ
2
ln
x
1
ε
r
(ln
˜x
1
ln
x
1
ε
r
δ
2
prop. 1.3.
x
1
1
|
x
1
|
ln
x
1
ε
r
x
1
, x
1
ε
ln
x
ε.
Noteu que, a (1.8), el primer terme correspon a la propagaci´
o de l’er-
ror acumulat (
ε
r
˜x
1
, x
1
)), mentre que el segon terme ´
es el nou error
introduit degut a l’avaluaci´
o del logaritme en punt flotant.
Sigui
δ
3
e
r
fl
˜x
22
˜x
22
)), d’on
fl
x
22
˜x
22
δ
3
δ
3
ε
. Aleshores,
ε
r
˜x
3
, x
3
ε
r
fl
˜x
22
, x
2
2
ε
r
˜x
22
δ
3
, x
22
J.M. Mondelo. M`
etodes Num`
erics. Cap´
ıtol 1
ε
r
x
22
, x
22
ε
r
δ
3
x
2
x
2
x
2
2
ε
r
x
2
, x
2
ε
ln
x
ε
ε
ln
x
ln
x
ε.
Novament, a (1.9) el primer terme correspon a la propagaci´
o de l’error
acumulat (
ε
r
x
2
, x
2
)), i el segon ´
es l’error introduit pel producte en
punt flotant.
Si continuem el proc`
es, acabem amb
ε
r
x
5
, x
5
ln
x
ln
x
2
ln
x
2
ε,
que ´
es el qu`
e se’ns demanava.
Algorismes estables i inestables. Proble-mes mal condicionats.
Direm que un algorisme ´
es
num`
ericament inestable
quan petites pertor-
bacions dels resultats inicials produeixen una gran difer`
encia en el resultat
final. Aix`
o el far`
a inservible des del punt de vista num`
eric, donat que am-
plificar`
a de manera sistem`
atica els errors de les dades inicials. Vegem-ne un
exemple. Exemple 1.4.
Considerem la fam´
ılia d’integrals
n
1
0
x
n
e
x
−
1
dx.
es endavant veurem m`
etodes per a aproximar integrals definides, per`
o ara
volem fer una cosa m´
es senzilla i m´
es eficient: integrant per parts, es veu de
seguida que
n
nE
n
−
1
i ´
es immediat calcular que
0
1
0
e
x
−
1
e
−
1
Aix`
o suggereix el seg¨
uent procediment per trobar
n
1.4 Algorismes estables i inestables
0
e
−
1
i
n
i
iE
i
−
1
Suposem que volem trobar
9
. Prenem una calculadora i treballem amb
6 xifres decimals:
n
n
n
n
Obtenim
9
negatiu, mentre que hauria de ser positiu, donat que estem
integrant coses positives. Per tant,
9
no t´
e cap xifra significativa!
Suposem que fem les operacions de manera exacta.
3
Per a arribar a
9
l’´
unic que hem fet han estat restes i productes.
Com que sabem que els
productes s´
on “segurs”, de la secci´
o anterior, deduim que el responsable de
fer cr´
eixer l’error relatiu ´
es el factor
y
x
−
y
de la propietat (d) de la proposici´
o
1.3.4 (exercici: comproveu-ho).
4
En aquest cas podem fer una an`
alisi m´
es directa, que ens permetr`
a predir
aquest comportament per despr´
es corregir-lo. Com que suposem les operaci-
ons exactes, l’´
unica font d’error ´
es l’error de representaci´
o d’
0
, que ´
es
e
0
−
7
de manera que no comencem amb
0
sin´
o amb
0
0
e
0
, i llavors anem
fent
i
i
i
−
1
. Si anomenem
e
i
l’error en el c`
alcul d’
i
, tenim
e
i
i
i
i
i
−
1
iE
i
−
1
i
i
−
1
i
−
1
ie
i
−
1
(en aquestes igualtats hi ha un raonament d’inducci´
o impl´
ıcit).
Observem
que a cada pas l’error es multiplica per
i
. Aix´
ı,
e
n
ne
n
−
1
n
n
e
n
−
2
n
n
e
0
3
Ho podem fer, donat que el nombre d’operacions que fem ´
es de l’ordre de desenes,
de manera que els errors introduits s´
on menyspreables al costat dels errors que estem
observant.
4
Una conseq¨
u`
encia que heu de treure d’aquesta comprovaci´
o ´
es que no calen can-
cel
·
lacions dr`
astiques per desvirtuar totalment el resultat. En tenim prou amb unes quan-
tes de “lleugeres”, com succeeix aqu´
ı.
J.M. Mondelo. M`
etodes Num`
erics. Cap´
ıtol 1
d’on
e
9
e
0
5
−
7
−
1
, que fa que l’error
relatiu d’
9
sigui de l’ordre de la unitat i per tant perdem totes les xifres
significatives.
Per a arreglar-lo, observem que, si iterem cap a enrera, l’error disminueix
en comptes d’augmentar. En efecte: si tenim
n
n
e
n
llavors, com que
i
−
1
i
i
i per les integrals aproximades usarem la mateixa recurr`
encia,
i
−
1
i
i
tindrem
e
i
−
1
i
−
1
i
−
1
i
i
i
i
e
i
i
d’on
e
n
e
n
n
e
n
n
n
k
n
n
k
e
n
k
Si, suposant que volem trobar
n
, podem escollir
n
k
de manera que, en
iterar enrera
k
vegades, el factor
n
!
(
n
k
)!
hagi eliminat
e
n
k
, ja ho tindrem.
Per a fer aix`
o, observem
n
1
0
x
n
e
x
−
1
dx
1
0
x
n
e
x
−
1
dx
1
0
x
n
dx
1
0
x
n
dx
n
d’on, si prenem
n
k
= 0, tindrem
e
n
k
n
k
n
k
n
k
1
n
k
i, per tant, de (1.11),
e
n
n
n
k
Aix´
ı, per trobar
9
amb 6 d´
ıgits, podem prendre
k
= 6, donat que
e
9
−
8
Els iterats (1.10) d´
onen:
n
n
n
n
1.4 Algorismes estables i inestables
Es clar que, llevat de les primeres arrels, totes s´
on molt sensibles a petites
variacions d’
a
1
D’aix`
o se segueix que, tot i que
p
x
) tingui arrels enteres ben f`
acils, si
proveu de determinar-les num`
ericament els errors de representaci´
o dels coefi-
cients (i.e.,
e
r
fl
a
1
,... , e
r
fl
a
20
))) introduir`
an errors considerables en les
arrels. Si us voleu conv`
encer, proveu de fer, dins Maple,
expand(mul((x-i),i=1..20));p:=evalf(%);solve(p=0,x);
per diversos valors de
Digits