Download as pdf or txt
Download as pdf or txt
You are on page 1of 71

M`etodes Num`erics II

Professor Antonio Rodrguez


Professora Esther Sala
Transcriptors:
Pedro Bibiloni,
Adri`a Recasens,
Francesc Rullan
14 de Setembre de 2010

Index
1 Conceptes B`
asics dAproximaci
o Funcional
1.1 Introduccio a laproximacio funcional . . . . . . . . . . . . . . . . . . . . . . . . .
1.2 Interpolacio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2.1 Interpolacio Polin`omica . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 Aproximaci
o per Mnims Quadrats
2.1 Equacions Normals . . . . . . . . . . . . .
2.2 Regressio Lineal . . . . . . . . . . . . . .
2.3 Norma Matricial . . . . . . . . . . . . . .
2.4 Polinomis Ortogonals. Ortogonalitzacio de

. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
Gram-Schmidt

.
.
.
.

3 Sistemes Lineals Sobredeterminats


3.1 M`etodes num`erics per solucionar el sistema AT Ax = AT b .
3.1.1 M`etode de Cholesky . . . . . . . . . . . . . . . . . .
3.1.2 Factoritzacio QR . . . . . . . . . . . . . . . . . . . .
3.1.3 M`etode per descomposicio en valors singulars: SVD
4 Interpolaci
o Seccional: Splines
4.1 Introduccio . . . . . . . . . . . . . . .
4.2 Splines Lineals C 0 . . . . . . . . . . . .
4.2.1 C`alcul de la dimensio de lespai
4.2.2 C`alcul dels Si (x) . . . . . . . .
4.2.3 Base de lespai Es . . . . . . .
4.3 Spline Parab`olic C 1 . . . . . . . . . . .
4.4 Spline C
ubic C 1 . . . . . . . . . . . . .
4.4.1 C`alcul de Si (x) . . . . . . . . .
4.4.2 Base de lespai Es . . . . . . .
4.5 Spline C
ubic C 2 . . . . . . . . . . . . .
4.5.1 Formulacio en Derivades . . . .
4.5.2 Formulacio en Curvatures . . .
4.5.3 Condicions addicionals . . . . .
4.5.4 Spline Natural . . . . . . . . .
3

. .
. .
Es
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

7
7
9
9

.
.
.
.

11
. . 11
. . 13
. . 15
. . 15

.
.
.
.

21
22
22
22
23

.
.
.
.

.
.
.
.

25
. . . . . . . . . . . . . . 25
. . . . . . . . . . . . . . 26
. . . . . . . . . . . . . . 27
. . . . . . . . . . . . . . 27
. . . . . . . . . . . . . . 28
. . . . . . . . . . . . . . 29
. . . . . . . . . . . . . . 31
. . . . . . . . . . . . . . 31
. . . . . . . . . . . . . . 32
. . . . . . . . . . . . . . 33
. . . . . . . . . . . . . . 34
. . . . . . . . . . . . . . 35
. . . . . . . . . . . . . . 36
. . . . . . . . . . . . . . 38

INDEX

4
5 Integraci
o Num`
erica
5.1 Quadratura de Newton-Cotes . .
5.2 Quadratura de Gauss . . . . . . .
5.2.1 Particularitzacions . . . .
5.3 Quadratures mixtes . . . . . . .
5.3.1 Quadratura de Lobatto .
5.3.2 Quadratura de Radau . .
5.4 Quadratures compostes . . . . .
5.5 Comparacio entre les quadratures

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

41
42
44
47
48
48
48
49
50

6 Zeros de Funcions
6.1 M`etodes iteratius de c`alcul de zeros funcions
6.2 M`etode de Newton . . . . . . . . . . . . . . .
6.2.1 Converg`encia . . . . . . . . . . . . . .
6.2.2 An`alisi assimp`otica de converg`encia .
6.2.3 An`alisi del m`etode de Newton . . . . .
6.3 M`etode de Whittaker . . . . . . . . . . . . . .
6.3.1 Consist`encia . . . . . . . . . . . . . .
6.3.2 Converg`encia . . . . . . . . . . . . . .
6.4 M`etode de la secant . . . . . . . . . . . . . .
6.4.1 Converg`encia . . . . . . . . . . . . . .
6.4.2 Consist`encia . . . . . . . . . . . . . .
6.5 M`etode de la biseccio . . . . . . . . . . . . . .
6.5.1 Aturada de les iteracions . . . . . . .
6.6 Gr`afiques de converg`encia . . . . . . . . . . .
6.6.1 Converg`encia lineal . . . . . . . . . . .
6.6.2 Converg`encia dordre p > 1 . . . . . .

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

53
53
53
54
54
55
56
57
57
57
57
57
57
58
58
58
58

7 M`
etodes Iteratius per Sistemes Lineals
7.1 M`etodes iteratius estacionaris . . . . . . . . . . . . . . . . . . . . . . .
7.1.1 Consist`encia . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.1.2 Converg`encia . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.1.3 Posada en pr`actica . . . . . . . . . . . . . . . . . . . . . . . . .
7.1.4 M`etode de Richardson . . . . . . . . . . . . . . . . . . . . . . .
7.1.5 M`etode de Jacobi . . . . . . . . . . . . . . . . . . . . . . . . . .
7.1.6 M`etode de Gauss-Seidel . . . . . . . . . . . . . . . . . . . . . .
7.1.7 M`etodes iteratius per blocs . . . . . . . . . . . . . . . . . . . .
7.2 M`etodes iteratius no estacionaris . . . . . . . . . . . . . . . . . . . . .
7.2.1 Equival`encia entre Ax = b i problema de minimitzacio associat
7.2.2 M`etode del gradient, m`axim pendent o m`axim descens . . . . .
7.2.3 M`etode dels gradients conjugats . . . . . . . . . . . . . . . . .
7.2.4 Precondicionadors . . . . . . . . . . . . . . . . . . . . . . . . .

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

61
61
61
62
62
63
63
64
64
64
64
65
66
68

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

INDEX
8 M`
etodes iteratius per sistemes no lineals
8.1 M`etode de laproximacio succesiva o literacio directe
8.2 M`etode de Picard . . . . . . . . . . . . . . . . . . . .
8.3 M`etode de Newton-Raphson . . . . . . . . . . . . . .
8.4 M`etodes quasi Newton . . . . . . . . . . . . . . . . .

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

69
69
69
70
70

INDEX

Captol 1

Conceptes B`
asics dAproximaci
o
Funcional
1.1

Introducci
o a laproximaci
o funcional

Objectiu: aproximar f (x) per p(x) a partir de la informacio disponible sobre f (x), p(x) ' f (x)
Pregunta 1.1. Qu`e coneixem de f (x)?
Considerem una funcio f (x). Aquesta ens pot venir donada de distintes formes:
1. {xi , f (xi )}

i = 0 n,

f (x) coneguda de forma discreta

2. f (x0 ), f 0 (x0 ), f 00 (x0 ) . . . f n) (x0 )


3. Expressio analtica de f (x)
4. f (x) solucio duna equacio diferencial
Pregunta 1.2. Com es p(x)? (Tipus daproximacio)
p(x) =

ci i (x)

{0 (x), 1 (x) . . . n (x)}

i=0

1. p(x) polin`omic,

p(x) =

ci xi ,

i = xi

i=0

f`acil davaluar
f`acil de derivar i integrar
2. p(x) trigonom`etrica,

p(x) =

ai cos(ix) +

i=0

3. p(x) exponencial,

p(x) =

j=0

ai ebi x

i=0

bj sin(jx)

`
FUNCIONAL
CAPITOL 1. CONCEPTES BASICS
DAPROXIMACIO

4. p(x) racional,

p(x) =

i=0
m

ai xi
bj xj

j=0

Pregunta 1.3. Qu`e vol dir p(x) ' f (x)? (Criteri daproximacio)
Prendrem f (x) C 0 [a, b] i una dist`ancia entre funcions. Una possibilitat es considerar
min kp(x) f (x)k on P es un espai de funcions.
pP

Recordem que una norma de funcions es una aplicacio k k : P R


que compleix:
1. kf k 0,

kf k = 0 f = 0

2. kf k = ||kf k
3. kf + gk kf k + kgk
Alguns exemples de normes:


g(x) 1 =

|g(x)|dx



(
g(x) 2 =


(
g(x) p =

g(x)2 dx

)1/2

|g(x)|p dx

)p





g(x) = sup g(x)
x[a,b]

Les normes indueixen dist`


ancies. Generalment farem servir la seg
uent:

d(p, f ) = min
x[a,b]

b[

]2
p(x) f (x) dx

Comentari 1.1. Si disposem de {xi , g(xi )} i = 0 n llavors,


v
u n

u
g(x) = t
g(xi )2
i=0


1.2. INTERPOLACIO

1.2

Interpolaci
o

La interpolacio es un m`etode per aproximar funcions que consisteix en fer passar la funcio
aproximant per una xarxa de punts donada.
y6
f (x0 )
r

f (x2 )
r

f (x1 )
r

x0

1.2.1

p(xi ) = f (xi ) i = 0 n

x1

x2

Interpolaci
o Polin`
omica

Donada una xarxa de punts {xi , f (xi )} i = 0 n freq


uentment la interpolarem amb un polinomi
p(x).
y6
y6
rf (x0 )

f (x1
)

rf (x2 )

r
f (x0
) 

r


f (x1 )
r

x0

x1

x0

n=1

x1

x2

n=2

p(x) =

ai xi

i=0

p(xj ) = f (xj ) j = 0 n

ai xij = f (xj ) j = 0 n

i=0

Obtenim el sistema de Vandermonde:

1 x0 x20
1 x1 x2
1

.. ..
..
. .
.

..
.

1 xn x2n


f (x0 )
a0
xn0


xn1
a1 f (x1 )
.. .. = ..
. . .
xnn

an

f (xn )

Comentari 1.2. Fenomen de Runge:


El fenomen de Runge es produeix quan intentem interpolar una funcio amb un polinomi de
grau elevat. Consisteix en que lerror com`es a les cues de la funcio es elevat.

10

`
FUNCIONAL
CAPITOL 1. CONCEPTES BASICS
DAPROXIMACIO

Teorema 1. (Teorema de Weierstrass)


Considerem f contnua en [a, b] (f C 0 [a, b]). Aleshores  > 0 n() tal que p Pn amb
kf (x) pn (x)k < 
Exemple 1.3. Regressio Lineal
y6
o
r  - Recta de regressi
r 

r
- Aproximaci

o polin`omica
r

-

Exemple 1.4. Aproximants Seccionals (a trossos)


y6
r

A
A
r

x0

x1

Fem servir segments de recta per aproximar


la funcio als punts donats

r

A 
Ar

x2

x3

Captol 2

Aproximaci
o per Mnims Quadrats
Definici
o 2.1. Un producte escalar (, ) es una forma bilineal sim`etrica i definida positiva.

Es a dir, per , escalars i f, g, h funcions tenim:


1. Linealitat
2. Simetria

(f + g , h) = (f, h) + (g, h)
(f, g) = (g, f )

3. Definicio Positiva

(f, f ) 0 ;

(f, f ) = 0 f = 0

Comentari 2.2. Els productes escalars indueixen normes de funcions:


f =
f (x)2 dx = (f, f )
2
A aquest producte escalar podem introduir una funcio de pes w :

(f, g) = wf g dx ;
(f, g) =
w(xi )f (xi )g(xi )
i=0

2.1

Equacions Normals

Definici
o 2.3. Considerem la funcio aproximant p(x) =

ci i (x), {0 (x), 1 (x) . . . m (x)}.

i=0

Lerror E de p(x) en aproximar f (x) es:



2
E = p(x) f (x) 2
Donat que volem minimitzar lerror E haurem de trobar un punt crtic daquesta funcio en
termes dels ci .

2
min E = min p(x) f (x) 2 ,

cRm+1

cRm+1

11

E
=0
ck

k =0m

PER MINIMS QUADRATS


CAPITOL 2. APROXIMACIO

12

Podem reescriure lerror E com:


E = (p f, p f ) = (p, p) (p, f ) (f, p) (f, f ) = (p, p) 2 (p, f ) + (f, f ) =
m
m
m
)
(
)
(

ci i ,
cj j 2
ci i , f + (f, f ) =
=
i=0

j=0

m
m

i=0
m

ci cj (i , j ) 2

i=0 j=0

ci (i , f ) + kf k2

i=0

Derivant respecte les ck :


m

E
=2
(k , j ) cj 2 (k , f ) k = 0 m
ck
j=0

Imposem ara

E
ck

= 0, k = 0 m i obtenim el sistema:
m

(k , j ) cj (k , f ) = 0

k =0m

m
)
(
}
{
k ,
cj j f (x) = 0

k =0m

(2.1)

j=0

j=0

)
k , p(x) f (x) = 0

k =0m

(2.2)

Expressem el sistema en forma matricial fent servir les equacions (2.1):

(0 , 0 ) (0 , 1 ) (0 , m )
c0
(0 , f )

(1 , 1 ) (1 , m )

c1 (1 , f )
= .

.
.
.
..
..

.. ..
sim`etrica
(m , m )
cm
(m , f )
Aquestes equacions sanomenen equacions normals. El sistema te una u
nica solucio (det 6= 0 )
ja que la seva matriu es una matriu de producte escalar.
f (x)




E = p(x) f (x)

PP
p(x)PP
P
q?

< 0 , 1 . . . m > 




Observem que dacord amb les equacions (2.2) lerror E es ortogonal al subespai generat per
{0 , 1 . . . m }.

LINEAL
2.2. REGRESSIO

13

Comentari 2.4. Productes escalars que podem utilitzar:

Producte escalar continu: (f, g) =

f gdx
a
n

Producte escalar discret: (f, g) =

|i=0

f (xi )g(xi )
{z

(
es producte escalar?)

2.2

Regressi
o Lineal
(Cas particular daproximaci
o per mnims quadrats)

Dades sobre f (x) : {xi , f (xi )}, i = 0 n


Farem servir com aproximant una recta (polinomi de grau 1)
p(x) = c0 0 (x) + c1 1 (x) 0 = 1, 1 = x
El sistema amb la matriu de producte escalar queda:
[
][ ] [
]
(0 , 0 ) (0 , 1 ) c0
(0 , f )
=
(1 , 0 ) (1 , 1 ) c1
(1 , f )
Per resoldrel utilitzem el producte escalar discret, ja que nomes disposem de la informacio
de f (x) a un nombre finit de punts.
(0 , 0 ) = n + 1
(1 , 0 ) =
(1 , 1 ) =

k=0
n

(0 , f ) =

xk

(1 , f ) =

k=0
n

k=0

x2k

k=0

]
][ ] [
n
+ 1 xk2 c0 = fk
xk fk
xk c1
xk

Comentari 2.5. Si volem aproximar la funcio amb una par`abola:


p(x) = c0 + c1 x + c2 x2
0 = 1,

1 = x,

2 = x2

fk
xk fk

PER MINIMS QUADRATS


CAPITOL 2. APROXIMACIO

14
El sistema queda:

2
n
c0
+ 1 xk2 xk3
fk
xk
c1 = xk fk
2 xk3 xk4
2
xk
xk
xk
c2
xk fk

Exemple 2.6. Aproximacio per mnims quadrats:


i (x) = xi i = 0 m
(

n
)
i (x), j (x) =
i (xk )j (xk ) n m
k=0

Si n m la solucio en general no passa pels punts.


y6
r 
r 

m=1
r 
n  m r


La recta minimitza la dist`ancia


al quadrat dels punts a la recta
-

Si n = m llavors existeix una u


nica solucio que passa pels punts.
y6

m=1
n=m
(2 punts)

f (x1
)

r 
f (x0
) 

r


x0

x1

 < , >
0
1

:


r

f (x) p(x)




Si n < m existeixen infinites solucions que passen pels punts donats.


y6

m=1
n=0
(1 punts x0 )

f (x0 ) 
XX
X
r
X
 XXX
X

1 x0
x0 x20

][ ] [
]
c0
f0
=
c1
x0 f0

Sistema Compatible Indeterminat


x0

2.3. NORMA MATRICIAL

2.3

15

Norma Matricial
(Subordinada a una Norma Vectorial)

Definici
o 2.7. Considerem A Rnn . La norma de A associada a la norma vectorial k k es:

vk
A = max kA
= max kA
vk

vk
k
v k=1
v6=0 k
Volem veure qu`e passa amb les solucions dun sistema quan introdum perturbacions a les
matrius que el defineixen. Si inicialment tenim el sistema A
x = b, quan el perturbem:
A(
x + x
) = b + b

b petit x
petit?

A
x = b kA
xk = kbk

}
= kbk kAkk
xk

kA
xk kAkk
xk

A
x + A x
= b + b A x
= b x
= A1 b
k x
k = kA1 bk kA1 kkbk

(2.3)

(2.4)

Multiplicant les desigualtats (2.3) i (2.4) ens queda:


kbk
k x
k
kAk kA1 k
|
{z
} kbk
k
xk
| {z }
| {z }
cond(A)
rx

rx cond(A) rb

rb

on rx i rb son els errors relatius i cond(A) (nombre de condicio de la matriu) el factor damplificacio de lerror.
Comentari 2.8. Si tenim una matriu A normal (A AT = ATA) llavors:
cond2 (A) = kAk2 kA1 k2 =

2.4

max |i |
min |i |

on els i son els VAPs de la matriu A.

Polinomis Ortogonals. Ortogonalitzaci


o de Gram-Schmidt

Sigui {N0 , N1 , ..., Nm } una base qualsevol. Sigui (, ) un producte escalar. Aleshores, amb el
proces dortogonalitzacio de Gram-Schmidt obtindrem:
Una base ortogonal: {P0 , P1 , ..., Pm } on (Pi , Pj ) = 0

i 6= j

Una base ortonormal: {Q0 , Q1 , ..., Qm } on (Qi , Qj ) = ij


Explicaci
o de lalgorisme:

i, j

16

PER MINIMS QUADRATS


CAPITOL 2. APROXIMACIO
El primer element de la base lassignem i el normalitzem:
P0 = N0 ;

Q0 =

P0
kP0 k

El segon element, lagafem com a combinacio lineal dels 2 primers per tal de fer-lo ortogonal
al que ja tenim. Despres, el normalitzem.
P1 = N1 + Q0

(P1 ,P0 )=0

P1 = N1 (N1 , Q0 )Q0

Q1 =

P1
kP1 k

Cada element de la base el construirem igual: com una combinacio lineal dels que ja tenim.
En general, tenim que:
Pk = Nk

k1

(Nk , Qi )Qi = Nk

i=0

k1

(Nk , Pi )
i=0

Qk =

(Pi , Pi )

Pi

Pk
kPk k

Propietats 2.9. Ortogonalitzacio de Gram-Schmidt


1. {P0 , P1 , ..., Pm } es una base ortogonal (per construccio)
2. Si el polinomi Ni te grau i, aleshores Pi tambe ho compleix. De fet, si {Ni , i = 0 n}
es una base en ventall, {Pi , i = 0 n} tambe ho es.
Existeixen dues implementacions de lortogonalitzacio de Gram-Schmidt. La primera, lalgorisme cl`assic, segueix exactament el procediment explicat anteriorment. El segon, lalgorisme
modificat, reordena les operacions del primer per tal devitar grans errors que poden sorgir quan
tractam daplicar lalgorisme a vectors molt semblants (es produeixen restes de dos nombres
molt propers). Els dos algorismes son:
Algorisme 2.10. Algorisme cl`assic de Gram-Schmidt (CGS):
Per k = 0 fins m
Pk = N k
Per i = 0 fins k 1
rik = (Qi , Nk )
Pk = Pk rik Qi
rkk = kPk k2
Qk = rPkkk

DE GRAM-SCHMIDT
2.4. POLINOMIS ORTOGONALS. ORTOGONALITZACIO

17

Algorisme 2.11. Algorisme modificat de Gram-Schmidt (MGS).


Per i = 0 fins m
Pi = N i
Per i = 0 fins m
rii = kPi k2
Qi = rPiii
Per j = i + 1 fins m
rij = (Qi , Pj )
Pj = Pj rij Qi
Exemple 2.12. Algorisme de Gram-Schmidt amb aritm`etica exacta (sense errors):
Siguin
N0 = (1, 1, 0, 0)t , N1 = (1, 0, 1, 0)t , N2 = (1, 0, 0, 1)t
Aleshores, aplicant tant el CGS com el MGS, obtenim:
(
Q0 =

1 1
, , 0, 0
2 2

)t
(

)t
1
1
1
2
1
1
3
, , , 0 , Q2 = , , ,
6
6 3
12
12
12 2

)t
, Q1 =

Exemple 2.13. CGS i MGS computacional (amb errors darrodoniment):


Suposem que  es una quantitat petita. Per tant, podrem suposar que 2 + 1 = 1
Siguin
N0 = (1, , 0, 0)t , N1 = (1, 0, , 0)t , N2 = (1, 0, 0, )t
Aleshores, aplicant el CGS obtenim:
(
t

Q0 = (1, , 0, 0) , Q1 =

1 1
0, , , 0
2 2

)t

(
, Q2 =

1
1
0, , 0,
2
2

Que es un resultat clarament erroni perqu`e (Q1 , Q2 ) 6= 0.


No obstant, aplicant el MGS, obtenim:
(
t

Q0 = (1, , 0, 0) , Q1 =

(
)
)t
1
1
1
1
2
0, , , 0 , Q2 = 0, , ,
2
2
6
6 3

Teorema 2. Arrels dels polinomis ortogonals


Siguin {P0 , ...Pm } un conjunt de polinomis ortogonals i en ventall (grau(Pi ) i i), associat
a un producte escalar:

(f, g) =

w(x)f (x)g(x) dx,


a

w(x) > 0 x.
f unci
o de pes positiva

Aleshores, les arrels de xj , j = 0 i del polinomi Pi (x), s


on totes reals, simples (diferents entre
s) i pertanyen a linterval (a, b).

PER MINIMS QUADRATS


CAPITOL 2. APROXIMACIO

18
dem.

1. Primer veurem que xj es real i que pertany a [a, b]. Ho veurem per induccio:
Cas i = 1 :

P0 (x) = c, c R.

(P0 , P1 ) =

w(x)cP1 (x) = 0 = P1 (x) s0 anul cot la en (a, b)

Cas i 1 cert per hip`otesi, anem a veure que tambe es compleix pel cas i. Suposem
que Pi (x) te r arrels en (a, b), r i. Sigui
Qr =

(x xj ), on grau(Qr ) = r < i = (Qr , Pi ) =

w(x)Qr (x)Pi (x)dx 6= 0

j=1

Aix`o es degut a que Qr Pi no te cap arrel simple en [a, b], sin`o que totes son dobles.
A mes, si r < i, tenim:
Qr =

k Pk = (Qr , Pi ) =

k=0

k (Pk , Pi ) = 0

k=0

Per tant, r = i.
2. Ara veurem que les i arrels de Pi (x) son simples:
Suposem que xk es arrel doble, per algun k = 0 i. Podem escriure:
2
Pi (x) = (x xk )2 qi2 (x), on grau(qi2 (x)) i 2 Pi (x) qi2 (x) = (x xk )2 qi2
(x)

0 = (Pi , qi2 ) =

2
w(x) (x xk )2 qi2
(x)dx 6= 0

Hem arribat a una contradiccio, i per tant tenim que cap arrel es doble. 
A mes daquesta propietat, tenim una proposicio que ens permet calcular els polinomis amb
mes facilitat:
Proposici
o 2.1. Relaci
o de recurr`encia pels polinomis ortogonals:
Pi+1 (x) = (ai x + bi )Pi (x) + Ci+1 (x), on ai 6= 0
dem.
Pi+1 (x) = Ai+1 xi+1 + ..., on Ai+1 6= 0.
Pi (x) = Ai xi + ..., on Ai 6= 0. ai =
(
Ja que grau Pi+1 (x)

Ai+1
Ai xPi (x)

Ai+1
Ai

i. Sigui qi (x) = Pi+1 (x)

Ai+1
Ai xPi (x).

Aleshores,

DE GRAM-SCHMIDT
2.4. POLINOMIS ORTOGONALS. ORTOGONALITZACIO

qi (x) =

19

k Pk (x)

k=0

A mes, tenim que:


1. (Pi+1 , Pj ) = 0 j i
2. (xPi , Pj ) = 0 j i 2. Aix`o es f`acil de veure ja que:

(xPi , Pj ) =

xPi (x)Pj (x)w(x)dx = (Pi , xPj ) = 0.


a

Perqu`e grau(xPj ) i 1.
Per tot aix`o, tenim que:
qi (x) =

(qi , Pk )Pk (x) =

k=0

(qi , Pk )Pk (x) = (qi , Pi1 )Pi1 (x) + (qi , Pi )Pi .

k=i1

(
qi (x) = ci Pi1 (x) + bi Pi (x) = Pi+1 (x) =

)
Ai+1
x + (qi , Pi ) Pi (x) + (qi , Pi1 )Pi1 (x)
Ai

Dedum per tant:


ai =

Ai+1
, bi = (qi , Pi1 ), ci = (qi , Pi1 ) 
Ai

Ara veurem alguns exemples de polinomis ortogonals cl`assics: els polinomis de Legendre,
els polinomis de Gram i els de Txebishev. Notem que per obtenir una famlia de polinomis
ortogonals, nomes cal imposar un producte escalar concret i una base de polinomis linealment
independents.
Exemple 2.14. Polinomis de Legendre:
Base inicial: La base can`onica de polinomis: xi = xi i N.
Producte escalar: a = 1, b = 1, w(x) = 1 = (f, g) =

f (x)g(x)dx

Aleshores, tenim que la relacio de recursio es:


Pi+1 (x) =
Don obtenim:

2i + 1
i
xPi (x)
Pi1 (x), P0 (x) = 1, P1 (x) = x.
i+1
i+1
3
1
1
P2 (x) = x2 , P3 (x) = (5x3 3x) . . .
2
2
2

f`acil veure que els polinomis de Legendre parells nomes tindran x elevat a nombres parells, i
Es
an`alogament pels polinomis senars.

20

PER MINIMS QUADRATS


CAPITOL 2. APROXIMACIO

Exemple 2.15. Polinomis de Gram:


una versi
Es
o discreta dels polinomis de Legendre.
Base inicial: La base can`onica de polinomis: xi = xi i N.
Producte escalar: (f, g) =

i=0

f (xi )g(xi ), on xi = 1 + n2 i.

Per n molt gran, sassemblen bastant als polinomis de Legendre.


Exemple 2.16. Polinomis de Txebishev:
Base inicial: La base can`onica de polinomis: xi = xi i N.
Producte escalar: a = 1, b = 1, w(x) =
1

(f, g) =
1

1
.
1x2

Per tant,

1
f (x)g(x)dx
1 x2

La funcio de pes utilitzada fa que tenguin mes rellev`ancia els extrems que el centre (ja que te
dues assmptotes, una en cada extrem, i un mnim en x = 0).

Captol 3

Sistemes Lineals Sobredeterminats


Considerem A Rmn , x Rn i b Rm , que compleixen el sistema Ax = b amb n m i
rang(A) = n.
x
x1


Ax = x1 a
1 + x2 a
2 + . . . + xn a
n
x2

a
n .
En general, b
/ <a
1 , a
2 . . . a
n > =
..
y
= El sistema no te solucio.
xn
Donat que el sistema Ax = b no tendr`a solucio haurem de trobar la manera darribar al
vector x en les millors condicions possibles.
x x

a1 a2


y y

Definici
o 3.1. Diem que r(x) = Ax b es la funci
o derror del sistema.
Lobjectiu doncs es minimitzar ||r(x)||. Per motius de comoditat minimitzarem ||r(x)||2 .
Operant amb lexpressio tenim:
||r(x)||2 = r(x)T r(x) = (Ax b)T (Ax b) = xT AT Ax 2xT AT b + bT b
Derivant respecte x ens queda:
||r(x)||2
= 2AT Ax 2AT b = 0
x
Resultat del c`alcul anterior obtenim:
0 = AT Ax AT b = AT (Ax b) = AT r AT r = 0
El sistema resultant es:
AT Ax = AT b

T
nm

A, A R
b Rm

x Rn

Considerem ara la matriu del sistema anterior AT A. Prenem z Rn no nul, i definim y = Az.
El vector y es no nul per ser el producte dun vector no nul per una matriu de rang m`axim.
Efectuant el c`alcul:
z T (AT A)z = y T y > 0
21

CAPITOL 3. SISTEMES LINEALS SOBREDETERMINATS

22

Per tant, com que podem efectuar aquest raonament z Rn , podem assegurar que la matriu
AT A es definida positiva. Per motius evidents es compleix tambe que la matriu AT A es sim`etrica.
Interpretaci
o Geom`
etrica


3.1




r(x)

PP
P
q?
Ax PP

< a0 , a1 . . . an >




La funcio derror del sistema r(x)


es perpendicular a Ax

M`
etodes num`
erics per solucionar el sistema AT Ax = AT b

Hi ha tres m`etodes a partir dels quals resoldrem el sistema AT Ax = AT b.

3.1.1

M`
etode de Cholesky

El fet de que la matriu del sistema AT A sigui sim`etrica i definida positiva ens permet aplicar el
m`etode de Cholesky per resolucio de sistemes. Vegem el cost del m`etode per separat:
( n(n+1)
) (
)
C`alcul de AT A :
coeficients 2m op/coef = mn2 + mn
2
(
) (
)
C`alcul de AT b :
n coeficients 2m op/coef = 2mn
Resolucio del sistema amb Cholesky:

1 3
3n

+ O(n2 )

Sumant totes les operacions obtenim mn2 + 3mn + 31 n3 + O(n2 ) mn2 . El gran problema
de la utilitzacio daquest m`etode es el condicionament de la matriu AT A. Si calculem el nombre de condicio de AT A (suposant convenientment definit el nombre de condicio per matrius
rectangulars) tenim:
cond(AT A) = cond(A)2
De manera que un lleuger mal condicionament de la matriu A ens portar`a a un gran mal
condicionament de la matriu AT A, que far`a poc precs el m`etode.

3.1.2

Factoritzaci
o QR

El m`etode es basa en descomposar A com A = Q R amb R triangular superior i Q matriu

mn

ortogonal (QT Q = In ).
x
x x

a
2 . . . a
n
=
1 a


y
y y

mn

nn

x
x

r11

..
q1 . . . qn
.

y
y

r1n
..
.
rnn

`
`
3.1. METODES
NUMERICS
PER SOLUCIONAR EL SISTEMA AT AX = AT B

23

On es compleix qiT qj = ij . Per trobar la matriu Q cal aplicar el proces dortonormalitzacio


de Gram-Smith, i la matriu R son els coeficients del vectors a1 , .., an en la base ortogonal Q.
Un cop feta la descomposicio, vegem com podem representar la nostra matriu del sistema
en funcio de les dues matrius Q i R. Tenim, per una banda:

AT A

AT A = (QR)T QR = RT QT QR = RT R
I per laltra, el terme independent representat com:
AT b = (QR)T b = RT QT b
Per tant, el sistema queda reescrit com RT Rx = RT QT b. Per ser R matriu no singular,
podem multiplicar per (RT )1 a les dues bandes i obtenim el sistema Rx = QT b. Per a fer el
c`alcul de les operacions cal primer enumerar els procesos a dur a terme:
1. Factoritzar A = QR.
2. Calcular y = QT b.
3. Resoldre Rx = y.
Notis que R es triangular superior i per tant l
ultim sistema es de resolucio directa. Si comptem
les operacions obtenim:
2
2mn2 n2 2mn2
3
Comentari 3.2. Pel cas m = n la complexitat del m`etode QR es 43 n3 per a resoldre el sistema
i la del m`etode de Gauss 32 n3 . Per tant, cal analitzar el cas en el que treballem per trobar la
solucio `optima.

3.1.3

M`
etode per descomposici
o en valors singulars: SVD

El m`etode es basa en descomposar la nostra matriu A = U S V T amb U i V matrius

mn

ortogonals i S
matriu diagonal1 .
1 . . . 0

.
0 . . . ..

S= .

..
n
0 ... 0

mm

mn

nn

Els valors i compleixen que:


1 2 ... n > 0
i els anomenem valors singulars de A.

Proposici
o 3.1. Si A te r valors singulars positius i i = 0
rang(A) = r.

i = r + 1 n

aleshores

1
De fet, la submatriu superior n n es diagonal i la resta s
on zeros, ja que S en general no es una matriu
quadrada.

24

CAPITOL 3. SISTEMES LINEALS SOBREDETERMINATS


Tambe podem pensar A com una aplicacio lineal:
A : Rn Rm

amb y =
Ax. Considerem ara x Rn i i la component i-`essima de x en la base definida per V ,
i.e, x = ni=1 i vi . Aleshores, apliquem A = U SV T al vector x i obtenim:

T
v1
1
n

i vi ) = ...
V T x = ... (
i=1
vnT
n

1
1 1
1 1
n


S ... = ... ;
Ax = U ... =
i i ui
i=1
n
n n
n n
Per tant, observem que i son els coeficients que multipliquen al vector imatge expressat en la
base U quan el vector entrada est`a expressat en la base V .
Passem ara a analitzar la resolucio del sistema un cop descomposada la matriu del sistema
en V, S i U . Considerem el sistema Ax = b,que equivalentment podem reescriure U SV T x = b.
Sabem que U es ortogonal, per tant podem multiplicar per U T obtenint SV T x = U T b. Per
u
ltim, fent servir que SV T es invertible obtenim: x = V S 1 U T b.
Comentari 3.3. Notem que no tenim exactament la solucio del sistema perqu`e en multplicar
per U T hem projectat les solucions (i minimitzat lerror).
Proposici
o 3.2. Sigui M matriu sim`etrica. Aleshore podem escriure M = U U T , on es una
matriu diagonal amb els VAPS de M a la diagonal i U es una matriu ortogonal.
Demostraci
o. El resultat es conseq
u`encia directa del Teorema Espectral. Per ser M sim`etrica
diagonalitza, i per tant si anomenem U a la seva base de VEPs (que podem assegurar que es
ortogonal via el Teorema Espectral altre cop), podem escriure efectivament M = U U T .
Tornem ara a lobjecte del nostre estudi, el sistema amb matriu AT Ax = AT b. La matriu
AT A la podem escriure com: AT A = (U SV T )(U SV T ) = V SU T U SV T = V S 2 V T . Usant la
proposicio anterior tenim (notant els VAPS de AT A com i ):
i (M ) = i2 (A)
rang(A) = n i > 0 i = 0 n
Trobem a partir de la descomposicio el valors i vectors propis la descomposicio SVD. Tenim:
M = U SV T
M = U 0 U 0T
Daqui extreiem que U 0 = U U , i = |i | i vi = sign(i )ui .

Captol 4

Interpolaci
o Seccional: Splines
4.1

Introducci
o

Amb freq
u`encia ens trobem diferents problemes relacionats amb la interpolacio polin`omica:
Si fem interpolacio polin`omica pura apareixen oscillacions quan el nombre de dades es
elevat (Fenomen de Runge).
Quan utilitzem mnims quadrats la funcio interpolada no passa per les dades.
En els dos casos anteriors les modificacions locals afecten globalment.
Tenint en compte els arguments anteriors, en moltes ocasions resultar`a interessant fer servir
interpolacio a trossos, ja que aquest m`etode dinterpolacio presenta els seg
uents avantatges:
Controlem la suavitat de la funcio interpolant.
Ofereix la possibilitat de fer interpolacio pura.
El desenvolupament es fa en funcio duna base, amb els avantatges que aix`o comporta.
Linterpolant es local.
Direm que fem servir splines quan utilitzem funcions a trossos per interpolar. En general,
a cada tros tindrem polinomis.

Lespai vectorial Es
Si donada una funcio aproximant fixem:
- Els punts de base {x0 , x1 . . . xn }.
- El grau del polinomi m en cada subinterval.
- La seva regularitat (continutat en els punts base interiors dS(x) i les r primeres derivades).
25

SECCIONAL: SPLINES
CAPITOL 4. INTERPOLACIO

26

Figura 4.1: Interpolacio per Splines.

es defineix lespai de funcions spline com:


Es = {S(x) C r | S(x) = Si (x) en [xi , xi+1 ] amb Si Pm }
Aquest espai de funcions es un espai vectorial, com es immediat de comprovar. Ara ens plantejem
algunes q
uestions que anirem resolent al llarg del tema per a cada cas en concret.
Quina es la dimensio daquest espai?
Com es calcula una funcio spline en aquest espai?
Com es calcula una base? Tenen els coeficients en aquesta base algun significat?

4.2

Splines Lineals C 0

En aquest cas la funcio que farem servir a cada tros ser`a un segment de recta. Tenim dues
alternatives amb aquest tipus de splines: imposar o no continutat als punts base xi . La notacio
que farem servir es la seg
uent:
{

hi = xi+1 xi

i=0n1

ti = fi+1 fi

i=0n1

La funcio Spline ve donada per


S(x) = Si (x)

en [xi , xi+1 ] [n subintervals]

En el cas que volguem tenir un spline poligonal (segment de recta) haurem dutilitzar S(xi ) =
ai x + bi .

4.2. SPLINES LINEALS C 0

27

Figura 4.2: Spline Lineal amb continutat als punts base.

Figura 4.3: Spline Lineal sense continutat als punts base.

4.2.1

C`
alcul de la dimensi
o de lespai Es

Volem obtenir la dimensio que tindr`a lespai de funcions spline per coneixer quins graus de
llibertat tenim per aproximar la funcio que ens interessa. Duna banda, el nombre de coeficients
es 2n, ja que tenim ai , bi per a i = 0n1. Per laltra, ens veiem forcats a imposar la continutat
als punts base xi si volem tenir interpolacio pura. Aix, fem servir:
Si (xi ) = Si1 (xi )

per i = 0 n 1

que equival a n 1 graus de llibertat. Fent-ne la difer`encia amb el nombre de coeficients arribem
a la conclusio de que lespai Es compleix dim(Es ) = n + 1.

4.2.2

C`
alcul dels Si (x)

Una vegada coneixem els nostres recursos per a laproximacio ens interessa calcular explcitament
com seran aquests trossos Si (x) per a cada funcio. A la figura seg
uent mostrem quines son les

SECCIONAL: SPLINES
CAPITOL 4. INTERPOLACIO

28

dades amb les que podem jugar amb aquests Si (x):

Figura 4.4: Tros de funcio Spline Si .


Calculem la recta Si (x) a partir dels valors en els punts base xi i xi+1 .
Si (x) = ai x + bi

ti
}

ai =
Si (xi ) = fi
hi

Si (xi+1 ) = fi+1
bi = fi ti xi
hi
ti
Si (x) = (x xi ) + fi , x [xi , xi+1 ] per i = 0 n 1
hi

4.2.3

Base de lespai Es

Seria convenient aprofitar el fet que estem treballant en un espai vectorial. En aquest sentit,
ara construirem una base de lespai de splines que complir`a certes propietats:
Dependr`a dels punts base xi triats.
De totes les bases possibles escollim la que ens permeti variar amb facilitat els valors de
fi , de manera que ens serveixi per a tots els problemes sense haver de recalcular-la cada
vegada.
La funcio interpolant (spline) sescriu com:
S(x) =

fi i (x),

x [x0 , xn ]

i=0

on i son les funcions de la base de splines definides en tot [x0 , xn ]. Notem que les funcions de
la base han de verificar:
i (xj ) = ij , i, j = 0 n

`
4.3. SPLINE PARABOLIC
C1

29

Tenint en compte les propietats anteriors observem que la base ja queda completament determinada. Escriure les funcions obtingudes de manera analtica es llarg i tampoc ens aporta molta
mes informacio, per tant ens limitem a representar-les gr`aficament.

Figura 4.5: Base de Splines C 0 .

4.3

Spline Parab`
olic C 1

En aquest cas volem que en cada subinterval laproximacio es faci amb una par`abola i de forma
que tinguem continutat C 1 a tot lspline (incloent-hi els punts base). En cada subinterval
[xi , xi+1 ] tindrem
Si (x) = ai x2 + bi x + ci

Notem que ara tenim tres coeficients a cadascun dels n subintervals, de forma que tenim en total
3n graus de llibertat. Daltra banda, tambe haurem dimposar les condicions de continutat de
lspline i de la seva derivada als n 1 punts interiors:

Si (xi ) = Si1 (xi )

0
Si0 (xi ) = Si1
(xi )

per

i=1n1

En total tenim 2(n1) restriccions, de forma que si restem obtenim n+2 par`ametres lliures, que
correspon a la dimensio del nou espai Es . Podem imposar el valor de la funcio als n + 1 punts

SECCIONAL: SPLINES
CAPITOL 4. INTERPOLACIO

30

base i una condicio addicional. Per exemple, podem imposar el pendent a linici S 0 (x0 ) = s00 :

S0 (x0 ) = f0

S0 (x1 ) = f1

S0 (x0 ) = s00

S1 (x1 ) = f1

S1 (x2 ) = f2

S1 (x1 ) = s01

Sn2 (xn2 ) = fn2

Sn2 (xn1 ) = fn1


Sn2 (xn2 ) = s0n2

S0 (x) en [x0 , x1 ]

s01 = S00 (x1 )

S1 (x) en [x1 , x2 ]

s02 = S10 (x2 )

..
.

Sn2 (x) en [xn2 , xn1 ]

Sn1 (xn1 ) = fn1

Sn1 (xn ) = fn
Sn1 (xn1 ) =

s0n1

0
s0n1 = Sn1
(xn1 )

Sn1 (x) en [xn1 , xn ]

Lspline C 1 parab`olic es coneix com spline parab`


olic recurrent. Depenent de quin valor triem
0
per la condicio inicial s0 obtenim aproximacions de la funcio considerablement distintes, tal com
illustra el seg
uent exemple:

Figura 4.6: Diferentes funcions spline depenent de la condicio adicional s00 .


4.4. SPLINE CUBIC
C1

31

Per a leleccio de s00 tenim diferentes alternatives:


- Deixar-lo com par`ametre lliure i modificar-lo interactivament.
- Interpolar un polinomi amb N + 1 punts a lentorn de x0 i prendre s00 = pendent del
polinomi a x0 .
0
- Prendre s01 = xf22 f
encia centrada) i interpolar un subinterval en sentit conx0 (difer`
trari.
Lspline parab`olic no es molt utilitzat, en part degut a que la base de funcions que sobte no
es local.

4.4

Spline C
ubic C 1

De nou modifiquem la funcio que aproxima dins de cada subinterval, i en aquesta ocasio utilitzem
una c
ubica:
Si x = ai x3 + bi x2 + ci x + di
Lspline c
ubic es coneix tambe com interpolaci
o dHermite. Lesmentada interpolacio compta
amb quatre coeficients a triar dins cadascun dels n subintervals, que fan un total de 4n. A mes,
cal imposar les restriccions aplicables per al cas, que corresponen a la continutat de lspline i
de la primera derivada als n 1 punts interiors (id`enticament al cas parab`olic).
}
Si (xi ) = Si1 (xi )
per i = 1 n 1
0
Si0 (xi ) = Si1
(xi )
De no obtenim 2(n 1), que restant-los dels 4n graus de llibertat fan un total de 2(n + 1)
par`ametre lliures (dimensio de Es ). Amb aquesta dimensio podem imposar el valor de la funcio
i del a derivada en els n + 1 punts base. Si els valors de les derivades S 0 (xi ) no son coneguts es
possible aproximar-los:
f 0 (xi ) '

f (xi+1 ) f (xi )
,
xi+1 xi

f 0 (xi ) '

f (xi+1 ) f (xi1 )
xi+1 xi1

Notarem per s0i = S 0 (xi ) la derivada als punts base.

4.4.1

C`
alcul de Si (x)

Ja hem dit que la funcio que farem servir en cada subinterval seria de la forma:
Si (x) = ai x3 + bi x2 + ci x + di
Volem calcular la c
ubica Si (x) a partir del valor de S(x) i de la seva derivada als punts base xi
i xi+1 .

ai x3i + bi x2i + ci xi + di = fi

Si (xi ) = fi

ai x3 + bi x2 + ci xi+1 + di = fi+1
Si (xi+1 ) = fi+1
i+1
i+1

0
0
2

Si (xi ) = si
3ai xi + 2bi xi + ci = s0i

Si0 (xi+1 ) = s0i+1


3ai x2i+1 + 2bi xi+1 + ci = s0i+1

SECCIONAL: SPLINES
CAPITOL 4. INTERPOLACIO

32

Del sistema anterior determinem els valors de ai , bi , ci i di . Lexpressio de lspline c


ubic en cada
subinterval [xi , xi+1 ] (i per a x [xi , xi+1 ]) es:
x xi
hi

Si (x) =

4.4.2

Base de lespai Es

s0i+1 )

[hi (s0i

2ti ]

)3
+ [3ti

hi (2s0i

s0i+1 )]

x xi
hi

)2

+ (x xi )s0i + fi ,

Si calculem una base del nou espai de splines podrem expressar f`acilment qualsevol funcio
aproximant dins de lespai considerat. Linterpolant (spline c
ubic) sescriu com:
S(x) =

fi i (x) +

i=0

i (x),
s0i

x [x0 , xn ]

i=0

i (x) son les funcions de la base de splines (definides en tot [x0 , xn ]). Les funcions
on i (x) i
de la base han de verificar
}
i (xj ) = ij , 0i (xj ) = 0
i, j = 0 n
i (xj ) = 0,
0i (xj ) = ij

ja que les condicions del problema ens donen les expressions


S(xj ) =
S 0 (xj ) =

i=0
n

i=0

fi i (xj ) +
fi i (xj ) +

i=0
n

i (xj )
s0i
i (xj )
s0i

i=0

Obtenir les expressions analtiques explcitament no ens donar`a molta informacio nova sobre
aquestes funcions, ja sabem que son c
ubiques a trosso i restriccions que sapliquen sobre elles.
Ens limitem per tant a representar-les gr`aficament.


4.5. SPLINE CUBIC
C2

33

Figura 4.7: Primeres funcions de la base.

Figura 4.8: Segones funcions de la base.

4.5

Spline C
ubic C 2

Igual que al cas anterior, utilitzarem una c


ubica en cada subinterval [xi , xi+1 ].
Si x = ai x3 + bi x2 + ci x + di
De nou ens trobem amb 4n coeficients que podem triar, ja que de cadascun dels n subintervals
en tenim quatre. No obstant, ara imposarem la continutat de lspline, la seva primera derivada
i la seva segona derivada als n 1 punts interiors.

Si (xi ) = Si1 (xi )

0
Si0 (xi ) = Si1
(xi )
per i = 1 n 1

00
00
Si (xi ) = Si1 (xi )
En aquesta ocasio la difer`encia entre les restriccions i els coeficients disponibles es de n + 3, ja
que tenim 3(n 1) condicions a imposar. Amb els graus de llibertat que ens queden podem
fixar que lspline passi pels n + 1 punts base. Ens queden a mes dues condicions addicionals,
que podem aprofitar de diferentes maneres:

SECCIONAL: SPLINES
CAPITOL 4. INTERPOLACIO

34

- fixant les derivades als extrems S 0 (x0 ) = s00 , S 0 (xn ) = s0n ,


- fixant les segones derivades als extrems S 00 (x0 ) = s000 , S 00 (xn ) = s00n ,
- fent lspline una funcio peri`odica S 0 (x0 ) = S 0 (xn ), S 00 (x0 ) = S 00 (xn ),
- etc.

4.5.1

Formulaci
o en Derivades

Quan treball`avem amb splines c


ubics C 1 hem obtingut la seg
uent expressio per a la funcio
aproximant dins cada interval [xi , xi+1 ]:
Si (x) = [hi (s0i + s0i+1 ) 2ti ]

x xi
hi

)3

+ [3ti hi (2s0i + s0i+1 )]

x xi
hi

)2

+ (x xi )s0i + fi ,

Recordem que amb els splins s


ubics C 2 nomes podem imposar el valor de la funcio S(xi ) = fi i
dues condicions addicionals. A lexpressio anterior els pendents s0i no son dades, son par`ametres
a determinar imposant la continutat de S 00 (x):
00
Si00 (xi ) = Si1
(xi ),

i=1n

i les dues condicions addicionals.


Les segones derivades de lspline venen donades per les expressions seg
uents:
x xi
1
+ 2[3ti hi (2s0i + s0i+1 )] 2
3
hi
hi
1
x xi1
00
Si1
(x) = 6[hi1 (s0i1 + s0i ) 2ti1 ]
+ 2[3ti1 hi1 (2s0i1 + s0i )] 2
h3i1
hi1
Si00 (x) = 6[hi (s0i + s0i+1 ) 2ti ]

Continutat de la segona derivada


00 (x ) llavors, per a i = 1 n 1 tenim:
Si imposem que Si00 (xi ) = Si1
i

[
] 1

Si00 (xi ) = 2 3ti hi (2s0i + s0i+1 ) 2

hi
[
] 1
[
] 1
00
Si1
(xi ) = 6 hi1 (s0i1 + s0i ) 2ti1 2 + 2 3ti1 hi1 (2s0i1 + s0i ) 2

hi1
hi1
(
)
hi
hi1
3
hi
hi1
0
0
0

s
+ 2si +
s
=
ti1 +
ti
hi + hi1 i1
hi + hi1 i+1 hi + hi1 hi1
hi


4.5. SPLINE CUBIC
C2

35

Hem obtingut un sistema dequacions (n 1) (n + 1) que podem reescriure en forma matricial:


0
s0

e1
1 2 1
s10
s e2

2 2
2

.. ..

.
.
.
..
..
..
. = .

sn2 en2

n2
2
n2

en1
n1
2
n1 s0n1
s0n
on els valors de i , i i ei son:
hi
hi1
, i =
hi + hi1
hi + hi1
(
)
hi
hi1
ei = 3hi + hi1
ti1 +
ti
hi1
hi
i =

Al sistema anterior falta afegir-li les ja esmentades dues condicions addicionals.

4.5.2

Formulaci
o en Curvatures

Aquesta formulacio preten expressar lspline en funcio de fi i de les segones derivades als punts
base s00i . Recordem una vegada mes que a cada subinterval [xi , xi+1 ] tenim una c
ubica:
Si (x) = ai (x xi )3 + bi (x xi )2 + ci (x xi ) + di
La segona derivada de Si es:

Si00 (x) = 6ai (x xi ) + 2bi

Imposem els valors S(xi ) = fi i S 00 (xi ) = s00 (xi ):

di = fi
Si (xi ) = fi

Si (xi+1 ) = fi+1
ai h3i + bi h2i + ci hi + di = fi+1

Si00 (xi ) = s00i


2bi = s00i

6a h + 2b + c = s00
S 00 (x ) = s00
i

i+1

i+1

i i

i+1

Aix tenim que lspline c


ubic a cada interval expressat en funcio de les curvatures s00i i les imatges
fi es:
[
]
1 00
1
ti
1
Si (x) =
(si+1 s00i )(x xi )3 + s00i (x xi )2 +
hi (s00i+1 + 2s00i ) (x xi ) + fi
6hi
2
hi 6
Notem que nomes podem fixar el valor de la funcio fi i dues condicions addicionals, com hem
justificat anteriorment. Observem tambe que les curvatures s00i no son dades, son par`ametres a
determinar imposant la continutat de S 0 (x):
0
Si0 (xi ) = Si1
(xi )

SECCIONAL: SPLINES
CAPITOL 4. INTERPOLACIO

36

i les dues condicions addicionals. Les primeres derivades de lspline venen donades per:
[
]
1 00
ti
1
00
00
2
00
00
=
(s
si )(x xi ) + si (x xi ) +
hi (si+1 + 2si )
2hi i+1
hi 6
[
]
1
ti1
1
0
00
00
2
00
00
00
Si1 (x) =
(s si1 )(x xi1 ) + si1 (x xi1 ) +
hi (si + 2si1 )
2hi1 i
hi1 6
Si0 (x)

Continutat de la primera derivada


0 (x ) llavors, per a i = 1 n 1 tenim:
Si imposem que Si0 (xi ) = Si1
i

ti
1

hi (s00i+1 + 2s00i )

hi 6
[
]

1 00
ti1
1

00
00
00
00
00

Si1 (xi ) = (si si1 )hi1 + si1 hi1 +


hi (si + 2si1 )
2
hi1 6
(
)
hi1
hi
6
ti
ti1
00
0
00

s
+ 2si +
s
=

hi + hi1 i1
hi hi1 i+1 hi + hi1 hi hi1
Si00 (xi ) =

Hem obtingut un sistema dequacions (n 1) (n + 1) que podem reescriure en forma matricial:

1 2

1
2
..
.

2
..
.
n2

..

.
2

n1

n2
2

s000
s001
s002
..
.

d1

d2

..

= .
00

sn2 dn2

n1 s00n1
dn1
00
sn

on els valors de i , i i ei son:


hi1
hi
, i =
hi + hi1
hi + hi1
(
)
ti
ti1
6

di =
hi + hi1 hi hi1

i =

Al sistema anterior falta afegir-li les ja esmentades dues condicions addicionals.

4.5.3

Condicions addicionals

Una vegada hem triat de quina manera volem resoldre el nostre problema de determinar lspline
c
ubic, ens cal ara escollir les dues condicions extres que ens queden. A continuacio mostrem
alguns dels casos mes habituals.


4.5. SPLINE CUBIC
C2

37

Curvatures prescrites als extrems: s000 i s00n donades


Resoldrem aquest cas amb la formulacio en curvatures, ja que encara que amb la formulaci
o
en derivades tambe es pot fer, queda una mica mes complicat. El sistema que obtenim te una
matriu de dimensio (n 1) (n 1), tridiagonal, no sim`etrica i estrictament diagonalment
dominant1 . Gr`acies a que es estrictament diagonalment dominant podem afirmar que te rang
m`axim i per tant el sistema te solucio u
nica. Escrivim el sistema en forma matricial:

00

d1 1 s000
s1
2 1

s00
2 2
d2
2

.
.
.
.
.
..
..
..
..

.. =

00

dn2
n2
2
n2 sn2
00
00
dn1 n1 sn
sn1
n1
2
Pendents prescrits als extrems: s00 i s0n donats
Resoldrem aquest cas amb la formulacio en pendents, ja que encara que amb la formulaci
o
encurvatures tambe es pot fer, queda una mica mes complicat. El sistema que obtenim te una
matriu de dimensio (n 1) (n 1), tridiagonal, no sim`etrica i estrictament diagonalment
dominant.Gr`acies a que es estrictament diagonalment dominant podem afirmar que te rang
m`axim i per tant el sistema te solucio u
nica.

2 1
s1
e1 1 s00
2 2
s0

2
e2

.
.
..
..
..
..

.. =

.
.
.

n2
2
n2
sn2
en2
0
0
n1
2
sn1
en1 n1 sn
Imposici
o dun pendent i una curvatura: per exemple, s00 i s00n
En aquesta ocasio farem servir la formulacio en curvatures, encara que es pot resoldre an`alogament
per a la formulacio en derivades. Duna banda, sabem que la funcio del primer subinterval S0
te lexpressio seg
uent:
[
]
1
1 00
t0
1 00
00
00
00
3
2
(s s0 )(x x0 ) + s0 (x x0 ) +
h0 (s1 + 2s0 ) (x x0 ) + f0
S0 (x) =
6h0 1
2
h0 6
Per altra banda, hem dimposar la derivada s00 :
s00 = S00 (x0 ) =

h0
h0
t0
s000
s001
h0
3
6

i obtenim lequacio:
2s000 + s001 = 6
1

s00
t0

6
h0
h20

Recordem que una matriu (aij ) es diagonalment dominant si compleix |aii |

j6=0

|aij |

SECCIONAL: SPLINES
CAPITOL 4. INTERPOLACIO

38

Ara, el sistema resultant que obtenim ve donat per les equacions:

2 1
1 2

1
2
..
.

2
..
.

..

n2

n1

6t0 /h20 s00 /h0

d1

d2

..

00

n2 sn2
dn2
00
00
2
sn1
dn1 n1 sn
s000
s001
s002
..
.

Altres alternatives
Spline peri`odic: si es verifica f0 = fn pot ser interessant exigir s00 = s0n i s000 = s00n .
Interpolacio quadr`atica en els dos subintervals dels extrems: s000 = s001 i s00n1 = s00n .
Interpolacio amb la mateixa c
ubica en els dos primers subintervals i en els dos darrers
subintervals:
s00n2 s00n1
s00 s00n1
s00 s001
s001 s000
= 2
,
= n
h0
h1
hn2
hn1

4.5.4

Spline Natural

Un cas particular de spline C 2 c


ubic es el que te s000 = 0 i s00n = 0. Aquest spline sanomena spline
natural.
Comentari 4.1. La suavitat de la funcio interpolant es mesura amb el funcional:

xn

I(f ) =

[ 00 2 ]
f (x) dx

x0

Teorema 3. De totes les funcions C 2 que passen per xi , fi i=0n la mes suau es lspline natural.
a dir, lspline natural minimitza el funcional I en C 2 .
Es
dem.
Sigui h C 2 tal que h(xi ) = f (xi ) i S(x) lspline natural. La difer`encia del funcional I es:

xn

x0

[ 00 2 ]
h (x) dx

xn

[ 00 2 ]
s (x) dx =

x0

xn

x0xn
=
x0

(
(

)
h002 s002 dx
00

h s

)
00 2

xn

dx + 2
| x0

(
)
s00 h00 s00 dx
{z
}
()


4.5. SPLINE CUBIC
C2

xn

() =

00

00

h s

00

39

dx =

x0

n1

n1
xi+1

(
) x
s00 h0 s0 xi+1

i=0 xi
n1
xi+1

n1

x
xi+1
(
)

s000
s000 h0 s0 dx = s00 (h0 s0 ) xn0
i (h s) xi
|
{z
}
i=0

xi

i=0

i=0

(
)
s00 h00 s00 dx =

=0

Per tant,

xn

[ 00 2 ]
h (x) dx

x0

xn

[ 00 2 ]
s (x) dx =

x0

xn

| x0

h00 s00
{z

)2

i essent S(x) lspine natural (s000 = s00n = 0) ens queda:


xn
xn
[ 00 2 ]
[ 00 2 ]
s (x) dx
h (x) dx

x0

x0

Comentari 4.2. De lequacio


xn

[ 00 2 ]
h (x) dx
x0

x
dx +2s00 (h0 s0 ) xn0
}

xn

00

s (x)

xn

dx =

x0

h00 s00

x0

)2

x
dx + 2s00 (h0 s0 ) xn0

tambe es dedueix que lspline c


ubic C 2 es la funcio C 2 mes suau per pendents fixats als extrems
0
0
0
0
(h0 = s0 , hn = sn )
Base de Splines Naturals
Una vegada mes podem escriure els nostres splines en funcio de certa base:
S(x) =

fi i (x)

i=0

on els vectors de la base han de verificar


i (xj ) = ij
00
i (x0 ) = 00i (xn )

=0

La base que compleix les condicions anteriors no es una base local, com mostra la figura seg
uent,
per`o s que presenta un esmortement suficientment r`apid fora del subinterval corresponent al
seu subndex.

40

SECCIONAL: SPLINES
CAPITOL 4. INTERPOLACIO

Figura 4.9: Base dels splines naturals.

Exemple: Paradoxa de Runge. Considerem la funcio


f (x) =

1
x2 + 1

en [5, 5]

Als gr`afics seg


uents mostrem lefecte que te un increment considerable del nombre de punts
que prenem per aproximar una funcio. Per una banda observem que la interpolacio polin`omica
empitjora el seu ajust amb un nombre elevat dimatges, mentre que per laltra comportament de
lspline natural ens resulta molt mes convenient ja que lerror dajust es molt menor (si definim
les funcions derror adequades).

Figura 4.10: Aproximacio polin`omica i per spline natural.

Captol 5

Integraci
o Num`
erica
La integracio num`erica es una eina per obtenir els valors num`erics de integrals, sense resoldre-les
analticament. Si volem obtenir el valor de:

f (x)dx

I=
a

Analticament, hem de:


1. Trobar una primitiva de F (x).
2. Aplicar la regla de Barrow.
Aquest m`etode no sempre es pot aplicar, ja que o be obtenir F (x) pot no ser senzill, o be
nomes coneixem f en uns punts concrets: {xi , f (xi )}
Num`ericament, farem la seg
uent aproximacio:

I=

f (x)dx =
a

f (xi )wi + En

i=0

f (xi )wi

i=0

Ens interessar`a con`eixer com es En (una fita de lerror).


Definici
o 5.1. Una quadratura es tancada {a, b} {xi }.
Una quadratura es oberta {a, b} 6 {xi }.
Definici
o 5.2. Una quadratura ser`a dordre q si integra exactament tots els polinomis de grau
q.
Comentari 5.3. Si integrem el polinomi que interpola n + 1 punts donats, podem assegurar
que la quadratura resultant ser`a dordre n. Tambe ho podrem assegurar si tenim que lerror te
la forma: En = Cf q+1) ()
41

NUMERICA
`
CAPITOL 5. INTEGRACIO

42

5.1

Quadratura de Newton-Cotes

Donats {xi , f (xi )}i=0...n , on xi no estan necess`ariament equiespaiats, lobjectiu es trobar el valor
n

de la integral I
f (xi )wi . Nomes ens cal determinar:
i=0

Els pesos dintegracio wi .


Lerror: En .
Idea general: El procediment consisteix en aproximar f per una funci`o que la interpoli i
que sigui f`acil dintegrar, i fer:

I=

f (x)dx =

pn (x)dx +

Rn (x)dx
a

Si utilitzem interpolacio polin`omica, i els polinomis de Lagrange per la interpolacio, pn (x) =


n

f (xi )Li (x), tenim:


i=0

I=

f (xi )

Li (x)dx + En wi =

Li (x)dx;

i=0

En =

Rn (x)dx
a

M`
etode general:
pn (x) =

f (xi )Li (x),

on Li (x) =

i=0

x xj
xi xj

j=0
j6=i

don obtenim que:


I

i=0

Rn (x) =

f (xi )

i=0

Li (s)ds
a

(x xi )

f n+1) ((x))
(n + 1)!

Notem que depen del x triat.


Comentari 5.4. Lavantatge mes important que presenta aquest m`etode es que si els punts son
equiespaiats, els Li (x) estaran tabulats.
Canvi de variable: Sigui x = x0 + h, on {0, 1, . . . , n}. Aleshores, tendrem que:
n
n

x xj
j
Li (x) =
Li () =
xi xj
ij
j=0

j=0

j6=i

j6=i

5.1. QUADRATURA DE NEWTON-COTES


A mes, podem veure que lerror ser`a:
b

En =
Rn (x)dx =
a

b
a

hn+2
(n + 1)!

43

n
f n+1) ((x))

(x xj )dx =
(n + 1)!
j=0

f n+1) ((x))

( j)d

j=0

Exemple 5.5. Els dos exemples mes representatius de les quadratures de Newton-Cotes son el
m`etode del trapezi (n = 1) i el m`etode de Simpson (n = 2):
M`etode del trapezi:
n=1

a = x0 , b = x1

...

w0 (x) =

ba
ba
, w1 (x) =
2
2

I per tant el valor de la integral es


ba
(f (a) + f (b))
2
En aquest cas, es demostra que lerror te la forma:
I

E=

h3 00
f (),
12

on (a, b)

M`etode de Simpson:
a = x0 , b = x2 . . .
ba
4(b a)
ba
w0 (x) =
, w1 (x) =
, w2 =
6
6
6
Per tant, la integral es:
n=2

ba
(f (x0 ) + 4f (x1 ) + f (x2 ))
6
En el m`etode de Simpson es pot demostrar que lerror es:
I

E=

h5 0000
f (),
90

on (a, b)

Daquests dos exemples cal remarcar que, a pesar de que hem demostrat que la quadratura
pel m`etode dels trapezis es almenys dordre 1 (ja que a lerror hi ha un factor multiplicatiu de
la forma f 00 () ), lordre de la quadratura seguint el m`etode de Simpson es 3 (seguint el mateix
a dir, amb nomes un punt mes, hem aconseguit una quadratura amb un dordre
raonament). Es
2 unitats mes gran. En general, a les quadratures de Newton-Cotes es compleix que lordre per
n senar es n. No obstant, per n parell lordre es n + 1, es a dir, un mes de lesperat. A mes, es
demostra que les formules dels errors son:

n
hn+2 n+1)

En = (n+1)!
f
() 0 ( 1) . . . ( n)d, (a, b)
n parell

n senar E =
n

hn+3 n+2)
()
(n+2)! f

n
0

( 1) . . . ( (n + 1))d, (a, b)

NUMERICA
`
CAPITOL 5. INTEGRACIO

44

5.2

Quadratura de Gauss

Saplica quan la funcio f (x) es coneguda analticament, o be podem avaluar-la en els punts
on volguem. Aquesta llibertat per escollir els punts on avaluarem la funcio es tradueix en que
les quadratures seran, en general, dordre superior a les quadratures de Newton-Cotes amb el
mateix nombre de punts.
Idea: Considerarem integrals del tipus:

I=

w(x)f (x)dx
a

on w(x) ser`a una funcio de pes coneguda a priori que sigui estrictament positiva en [a,b]1 . La
integral laproximarem per expressions del tipus:

I=

f (xi )wi + En

i=0

f (xi )wi

i=0

El problema consistir`a en trobar els wi , xi tals que maximitzin el grau de la quadratura.

Exemple 5.6. Si volem integrar una funcio donada entre (1, 1) i podem avaluar la funcio en
3 punts concrets, ens interessar`a fer-ho als seg
uents:

15
15
, 0,
5
5

Aquesta
e)s una bona
ubica que passi pels punts
(
( elecci
)o perqu`e es compleix que qualsevol c
15
15
e la mateixa integral definida en linterval (1, 1) que l
unic po5 , f0 , (0, f1 ) ,
5 , f2 t
per aix`o que aquesta quadratura, a pesar
linomi de grau 2 que interpola aquests 3 punts. Es
dhaver estat creada a partir de nomes 3 punts, te ordre 3.

Excepte, potser, en un conjunt de mesura nulla.

5.2. QUADRATURA DE GAUSS

45

0,5

-1

-0,5

0,5

En aquest dibuix veiem els 3 punts dibuixats per uns determinats valors f (x0 ), f (x1 ), f (x2 ), en
vermell. Tambe podem veure en vermell la funcio cuadr`atica que interpola els 3 punts, i la seva
`area. En blau apareixen dues de les infinites funcions c
ubiques que passen pels punts donats.
Exemple 5.7. En el cas de les integrals entre (-1,1), per`o avaluant nomes en 2 punts, podem
fer una construccio similar per tal de que la recta que passa per dos punts tengui la mateixa
integral que totes les par`
aboles que ho fan. En aquest cas, els dos punts tenen abscisses:

3 3

,
3 3
Obtenint aix una quadratura dordre 2.
2,4

1,6

1,2

0,8

0,4

-1

-0,5

0,5

NUMERICA
`
CAPITOL 5. INTEGRACIO

46

En aquest altre dibuix veiem, an`alogament, els 2 punts dibuixats per uns determinats valors
f (x0 ), f (x1 ), en vermell. La funcio lineal que interpola els 2 punts, i la seva `area. En blau
apareixen dues de les infinites funcions par`aboles que passen pels 2 punts donats.
Proposici
o 5.1. La quadratura de Gauss es dordre 2n + 1.
dem.
Siguin {x0 , . . . , xn } punts dintegracio arbitraris. Sigui pn el polinomi interpolador mitjancant els polinomis de Lagrange2 de la funcio f (x) en els punts {x0 , . . . , xn }, on f (x) P 2n+1 .
Aleshores, podem escriure:
f (x) = pn (x) + Rn (x) =

Li (x)f (xi ) + Rn (x)

i=0

On tenim que lerror es una funcio polin`omica tal que:


Rn (x) = f (x) pn (x) P 2n+1
Per haver estat utilitzant la interpolacio de Lagrange, podem expressar lerror Rn (x) com:
Rn (x) = L(x)

f n+1) ((x))
= L(x)qn (x),
(n + 1)!

on L(x) = (x x0 )(x x1 ) . . . (x xn )

Tenim que f n+1) P n qn P n L P n+1 . Daltra banda, integrant, ens queda:


( n
)
b
b
b
n

Li (x)w(x)f (xi )+w(x)Rn (x)


I=
w(x)f (x)dx =
w(x)
Li (x)f (xi ) + Rn (x) dx =
a

a i=0

i=0

Hem obtingut el valor de la integral i de lerror3 :


I

wi f (xi ),

on wi =

w(x)Li (x)dx
a

i=0

1
En =
(n + 1)!

w(x)L(x)f n+1) ((x))dx


a

Sigui (, ) un producte escalar per funcions definit com:

(u, v) =

w(x)u(x)v(x)dx
a

Observem que:
Els polinomis de Lagrange que utilitzam aqu dependran dels punts {x0 , . . . , xn }. De fet, aix`
o es el que ens
servir`
a per demostrar la proposici
o.
3
Atenci
o: no confondre wi , que es el pes del valor f (xi ) per aproximar la integral com un sumatori, amb w(x),
que es la funci
o de pes coneguda a priori. Tampoc confondre lerror en la interpolaci
o de Lagrange, Rn , amb
lerror en la quadratura, En .
2

5.2. QUADRATURA DE GAUSS

47

Pel proces dortogonalitzacio de Gram-Schmidt, existeix una famlia de funcions ortogonals


Qk tals que (Qi , Qj ) = 0 i 6= j. A mes, totes les arrels de tots els polinomis Qk son
simples.
Lerror de la integral, En , es pot expressar com: En = (L, qn ).
Donat que L P n+1 (i te grau exactament igual a n + 1), i qn P n , podem escollir L(x) =
a dir, escollim L tal que tengui les mateixes arrels
(x x0 )(x x1 ) . . . (x xn ) = CQn+1 . Es
que Qn+1 i sigui m`onic. Aleshores, donat que Qn+1 es ortogonal a tots els polinomis de grau
mes petit estricte que n + 1, tendrem que:
En = (L, qn ) = (CQn+1 , qn ) = C(Qn+1 , qn ) = 0
I, per tant, hem demostrat que la quadratura integra exactament els polinomis de grau 2n + 1
si agafem com punts dintegracio les arrels de Qk .


5.2.1

Particularitzacions

Segons els extrems de linterval i la funcio de pes, ens podem trobar amb diferents tipus de
quadratures que sengloben sota el nom de quadratures de Gauss:
Quadratures de Gauss-Legendre:
a = 1,

b = 1,
w(x) = 1 x
1
f (x)dx
I=
1

Quadratures de Gauss-Laguerre:
a = 0,

b = ,
w(x) = ex

ex f (x)dx
I=
0

Quadratures de Gauss-Hermite:
b = ,
w(x) = ex

2
I=
ex f (x)dx

a = ,

Quadratures de Gauss-Txebishev:
a = 1,

b = 1,

I=

w(x) =

1
1 z2

1
f (x)dx
1 z2

Lavantatge daquestes quadratures es que els punts i els pesos ja estan tabulats (per cada valor
de n, ja estan calculats a priori els n + 1 punts xi , i els n + 1 pesos wi ). Els dos exemples
presentats al principi daquesta seccio corresponen a quadratures de Gauss-Legendre per n = 1
i per n = 2.

NUMERICA
`
CAPITOL 5. INTEGRACIO

48

5.3

Quadratures mixtes

Idea: Sanomenen quadratures mixtes perqu`e no tenim llibertat absoluta sobre leleccio dels
punts (com es el cas en les quadratures de Gauss), per`o tampoc tenim tots els punts fixats.
Existeixen dues que son remarcables: la quadratura de Lobatto i la quadratura de Radau.

5.3.1

Quadratura de Lobatto

Aquesta es una quadratura que aproxima integrals de la forma:


1
n

I=
f (x)dx
wi f (xi )
1

i=0

A on tenim fixats dos punts dintegracio: x0 = a = 1, i xn = b = 1. Els altres punts dintegraci


o
(x1 , . . . xn1 ) son lliures.
Si prenem el producte escalar:
1
(u, v) =
(x2 1)u(x)v(x)dx
1

Considerem les arrels del polinomi Qn1 , que es el polinomi n1 duna base en ventall ortogonal
segons aquest producte escalar.
Es demostra que, si agafem els punts dintegracio lliures x1 , . . . xn1 com les arrels del polinomi Qn1 , aleshores la quadratura te ordre 2n 1.
La demostracio es molt similar a la demostracio de la proposicio en les quadratures de Gauss,
amb la difer`encia de que 2 dels punts ja estan fixats (x0 = 1, xn = 1), aix que en lloc de tenir
L(x) = (x x0 )(x x1 ) . . . (x xn ),
tenim el seg
uent factor a la integral:
b
b
L(x) = (x x0 )(x xn )(x x1 ) . . . (x xn1 ) = (x + 1)(x 1)L(x)
= (x2 1)L(x).
I nomes apareixen n 1 graus de llibertat en leleccio dels punts.

5.3.2

Quadratura de Radau

La quadratura de Radau es una quadratura que ens permet aproximar integrals com:
1
n

I=
f (x)dx
wi f (xi )
1

i=0

On tenim fixat a priori un punt: x0 = 1. Els n punts restants queden lliures. An`alogament al
cas anterior, es pot demostrar que la quadratura te ordre 2n, i sassoleix agafant els punts lliures
x1 , . . . , xn com les arrels del polinomi Qn , que pertany a la base en ventall i ortogonal segons el
producte escalar:

(u, v) =

(x + 1)u(x)v(x)dx

La justificacio daquest fet es la mateixa que per al cas de la quadratura de Lobatto.

5.4. QUADRATURES COMPOSTES

5.4

49

Quadratures compostes

Idea: Dividir el domini dintegracio en m subintervals i en cada interval fer servir una quadratura
simple de (n + 1) punts. Lestudi de lerror en laproximacio es distint en cada cas, segons quina
quadratura sestigui utilitzant. Presentem dos exemples:
Exemple 5.8. Formula del Trapezi compost.
Sigui {xi , f (xi )}i=0...n una funcio donada puntualment, on a = x0 , b = xn . Aleshores, el
trapezi compost consisteix en:
n xi
n

hi
I=
f (x)dx =
[f (xi1 + f (xi )] + En
2
xi1
i=1

i=1

Per tant, si treballem amb punts equiespaiats (es a dir, hi = h i), tenim:
[
]
n1

h
I
f (x0 ) + 2
f (xi ) + f (xn )
2
i=1

On tendrem que lerror es:


n
n

h3 00
(b a)3 00
hi 00
f (i ) =
f (i ) =
f (i )
En =
12
12
12m2
i=1

i=1

4
Cas particular: Suposem que volem aproximar la integral 1 x sin (3x)dx, amb el m`etode
del Trapezi compost. Agafarem m = 3. Per tant, tendrem 4 punts que ens divideixen el nostre
interval [1, 4] en 3 intervals mes petits.
La representacio gr`afica daquest cas es;

3,2

2,4

1,6

0,8

0,8

-0,8

1,6

2,4

3,2

4,8

NUMERICA
`
CAPITOL 5. INTEGRACIO

50

En aquest cas, la integral exacta es:


4
I=
x sin (3x)dx 6.8887
1

Mentre que laproximacio ens dona I 7.4349. En aquest cas, amb m = 4, hem obtingut un
error de lordre de:
|7.4349 6.8887|
4 =
= 0.079
6.8887
a dir, un error, aproximadament, del 8%. Aquest error pot semblar petit en comparacio amb
Es
laproximacio, que es realment terrible. Aix`o es degut a que lerror es pot disminuir significativament per la cancellacio derrors.
Exemple 5.9. Formula composta de Simpson.
Sigui {xi , f (xi )}i=0...n una funcio donada puntualment. Aleshores, per aproximar la integral
mitjancant la formula composta de Simpson, cal dividir el nostre interval en m subintervals.
Cada subinterval ha de tenir un punt interior, i dos extrems.
2

n1

I=

i=1

n1

hi
[f (x2i2 ) + 4f (x2i1 ) + f (x2i )] + En
f (x)dx =
6
x2i2

x2 i

i=1

Per tant, si treballem amb punts equiespaiats (es a dir, hi = h i), tenim:
h[
I
(f (x0 ) + 4f (x1 ) + f (x2 )) + (f (x2 ) + 4f (x3 ) + f (x4 )) + . . . +
6
]
+ (f (xn2 ) + 4f (xn1 ) + f (xn ))
1
2
2
]

h[
I
f (x2i ) + 2
f (x2i+1 )
f (x0 ) + f (xn ) + 4
6
n1

n1

i=1

i=1

a dir, sumem una vegada els extrems, 4 vegades els valors amb i parell, i 2 vegades els valors
Es
amb i senar (a excepcio dels extrems, que ja els hem sumat).
En el m`etode de Simpson composat, es demostra que lerror es del tipus:
Em =

5.5

(b a)5 4)
f (),
2880m4

on [a, b]

Comparaci
o entre les quadratures

Fins ara hem estudiat 4 tipus de quadratures:


1. Newton-Cotes: Normalment tendr`a punts equiespaiats. Casos particulars son el m`etode
del trapezi, el m`etode de Simpson, el segon m`etode de Simpson, etc.
2. Gauss: Hem estudiat 4 casos particular, a saber: Gauss-Legendre, Gauss-Laguerre, GaussHermite i Gauss-Txebishev.

ENTRE LES QUADRATURES


5.5. COMPARACIO

51

3. M`etodes mixtes: entre els que podem incloure els m`etodes de Lobatto i de Radau.
4. M`etodes compostos: que fan servir altres m`etodes, generalment Newton-Cotes, per aproximar la integral.
A la seg
uent taula sexposen algunes de les difer`encies entre els m`etodes estudiats:4

Tipus dintegral
Punts lliures
Punts fixos
Ordre

Newton-Cotes
b
a f (x)dx
Cap
Tots
n o (n + 1)

Gauss
a w(x)f (x)dx
Tots (n + 1)
Cap
2n + 1

Lobatto
1
1 f (x)dx
n1
x0 = 1, xn = 1
2n 1

Radau
1
1 f (x)dx
n
x0 = 1
2n

Cal recordar que lordre de la quadratura de Newton-Cotes te ordre n si n es senar, o n + 1


si n es parell. Els errors en laproximacio queden recollits en la seg
uent taula:
Quadratura

Error
{

Newton-Cotes

En = Cn hn+2 f n+1) () n senar


En = Cn hn+3 f n+2) () n senar

Gauss-Legendre

En = Cn f 2n+2) ()

Composta trapezis

(ba)
f 00 ()
12m2

Composta Simpson

(ba)
4) ()
2880m
4f

Composta Gauss-Legendre

( ba )2n+3
2

Cn
f 2n+2) ()
m2n+2

Fent refer`encia a la converg`encia, observem que:


Els m`etodes de Newton-Cotes per punts equiespaiats no tenen converg`encia assegurada si
augmentem el nombre de punts (augmentant, aix, n).
Les quadratures simples de Gauss, augmentant n, i les quadratures compostes en general,
augmentant m, s tenen converg`encia assegurada.

4
No sinclouen els m`etodes compostos per no ser un m`etode daproximaci
o duna integral, sin
o una ajuda per
fer servir els altres m`etodes:

52

NUMERICA
`
CAPITOL 5. INTEGRACIO

Captol 6

Zeros de Funcions
En aquest captol estudiarem donada una funcio qualsevol com trobar num`ericament els seus
zeros.
Definici
o 6.1. Diem que es zero de f f () = 0.
Hi ha casos concrets de funcions per les quals ja tenim una solucio a aquest problema. Un
exemple ben clar en son els polinomis de segon grau. Ara considerem f arbitr`aria.

6.1

M`
etodes iteratius de c`
alcul de zeros funcions

Definici
o 6.2. Anomenem m`etode iteratiu a aquell on sobte una seq
u`encia x0 , x1 ...xk calculant
xk+1 = (xk ) amb de manera que limk xk = .
Per tant, prendrem x0 una aproximacio inicial i posteriorment calcularem xk+1 = (xk ).
Anomenem a funci
o diteraci
o, i dep`en en general tant de la funcio f com del m`etode utilitzat.
raonable que els m`etodes iteratius per a buscar zeros de funcions compleixin:
Propietats 6.3. Es
Consist`encia: es un zero de f () =
Converg`encia: limk xk =
ja que son aquestes propietats les que garantiran l`exit de lalgorisme.

6.2

M`
etode de Newton

El m`etode de Newton es basa en fer laproximacio de la funcio per un desenvolupament de Taylor


de primer ordre. Prenem x0 com punt inicial. Volem ara calcular
x1 = x0 + x1
53

CAPITOL 6. ZEROS DE FUNCIONS

54

Hem dimposar que f (x1 ) = 0 (o almenys shi apropi), per tant, desenvolupant en Taylor f al
voltant de x0 obtenim:
0 = f (x1 ) = f (x0 + x1 ) =
= f (x0 ) + f 0 (x0 )x1 +

f 00 (x0 )(x1 )2
+ O((x1 )3 ) f (x0 ) + f 0 (x0 )x1
2!

Per tant, allant obtenim


x1 =

f (x0 )
f 0 (x0 )

Substituint, ens queda que en general:


xk+1 = xk

6.2.1

f (xk )
f 0 (xk )

Converg`
encia

Quan parlem dun m`etode iteratiu es important tenir mesures que ens indiquin com de r`apid
sarriba al valor final desitjat. A la pr`actica el que farem es marcar el llindar i iterar fins a
trobar-nos dins aquest interval prou aprop del zero com perqu`e ens serveixi el resultat:
Definici
o 6.4. Diem que un m`etode te converg`encia lineal o dordre p = 1 quan
|xk+1 | |xk | on 0 < < 1. En termes de E k = |xk |, tenim E k+1 E k .
Definici
o 6.5. Diem que un m`etode te converg`encia quadr`atica o dordre p = 2 quan E k+1
k
2
(E ) .
Definici
o 6.6. Diem que un m`etode te converg`encia dordre p quan E k+1 (E k )p .
Definici
o 6.7. Diem que un m`etode te converg`encia superlineal quan E k+1 k E k amb
limk k = 0.
Comentari 6.8. Les arrels dobles son mes difcils de tractar. Per exemple, al m`etode dicot`omic
no tenim un interval amb canvi de signe que ens permeti aplicar-lo.

6.2.2

An`
alisi assimp`
otica de converg`
encia

Si desenvolupem per Taylor la funcio :


xk+1 = (xk ) = ( + xk ) = () + 0 ()(xk ) + O(|xk |2 )
Donat que () = , ara arribem a: |xk+1 | |0 ()||xk |, i.e:
E k+1 |0 ()|E k
Definici
o 6.9. Anomenem al valor 0 () factor assimpt`
otic de converg`encia (FAC).
Usant la definicio anterior veiem que si 0 < 0 () < 1, tenim converg`encia lineal. Analitzem
el cas en el qual sanullen les derivades de .

`
6.2. METODE
DE NEWTON

55

Exemple 6.10. Si tenim 0 () = 0 i 00 () 6= 0 aleshores desenvolupant ens queda:


xk+1 = () +

00 () k
(x )2 + O(|xk |3 )
2
00 ()

I per tant, es compleix la desigualtat: E k+1 |

|(E k )2 , que assegura converg`encia quadr`atica.

Comentari 6.11. Generalitzant lexemple, el cas 0 () = 00 () = ... = p1 () i


p () 6= 0 ens porta a:
p

() k p
k+1

(E )
E

p!
a dir, amb aquesta condicio podem assegurar converg`encia dordre p.
Es

6.2.3

An`
alisi del m`
etode de Newton

Com ja hem comentat abans, el m`etode de Newton itera amb la funcio diteracio (x) = x ff0(x)
(x) .
Analitzem ara tant la converg`encia com la consist`encia del m`etode:
Consist`
encia
0
Tenim () = ff0()
etode es consistent.
() . Si f () 6= 0 aleshores tenim que efectivament el m`
0
Cal analitzar doncs els casos en els quals () = 0.

1. arrel doble. En aquest cas caldr`a veure si el lmit


lHopital:
f ()
f 0 ()
=
=0
f 0 ()
f 00 ()

f ()
f 0 ()

es nul. Aplicant la regla de

Per tant, tenim que efectivament el m`etode es consistent.


2. En el cas d arrel de multiplicitat p, cal tornar a calcular el lmit i tenim:
f ()
f p1 ()
=
=0
f 0 ()
f p ()
Per tant, podem assegurar que el m`etode es consistent per qualsevol valor de p.
Converg`
encia
Vegem el valor que prenen les derivades de :
0 (x) = 1
00 (x) =

f 0 (x)2 f (x)f 00 (x)


f (x)f 00 (x)
=
f 0 (x)2
f 0 (x)2

f 0 (x)f 00 (x) + f (x)f 00 (x) 2f (x)f 00 (x)2

f 0 (x)2
f 0 (x)3

Tornarem ara a la casustica de les arrels de f :

CAPITOL 6. ZEROS DE FUNCIONS

56
1. Arrels simples. Tenim 0 () =
f 0 ()
f ()

f ()f 00 ()
f 0 ()2

= 0. I per altra banda, no dir res respecte

ja que no coneixem el valor de f 00 (). Podem assegurar doncs que el m`etode


=
de Newton te converg`encia quadr`atica en arrels simples.
00 ()

2. Arrels dobles. Tenim doncs 0 () =


lHopital i obtenim:

f ()f 00 ()
.
f 0 ()2

Calculem ara el lmit per la regla de

f 0 (x)f 00 (x) + f (x)f 000 (x)


1
f (x)f 000 (x)
=
+
lim
=
x
2f 0 (x)f 00 (x)
2 x 2f 0 (x)f 00 (x)
f 0 (x)f 000 (x) + f (x)f 000 (x)
1
1 1
=
= + lim
2 2 x f 00 (x)2 + f 0 (x)f 000 (x)
2
lim

Per tant, tenim que el m`etode de Newton te converg`encia lineal per arrels dobles amb un
factor assimpt`otic 12 .
3. Arrels amb multiplicitat p. Tenim:
0 () = 1

p1
1
=
p
p

Notem que el factor es mante per sota per`o tendeix a 1.


Comentari 6.12. Tot lan`alisi anterior del m`etode de Newton el podem condensar en la seg
uent
taula:
Taula 6.1: M`etode de Newton
Consist`encies
Converg`encia

Arrels Simples
S
S, p = 2

Arrels M
ultiples (multiplicitat n)
S
S, p = 1 i F AC = 1 n1

Comentari 6.13. Si es arrel doble de f (x) es una arrel simple de g(x) := f 0 (x).
Aleshores:
g(xk )
f 0 (xk )
xk+1 = xk 0 k = xk 00 k
g (x )
f (x )
0
Cal notar per`o que f (x) sanulla tambe als m`axims i mnims de la funcio f i pot no ser un zero
de la pr`opia funcio.

6.3

M`
etode de Whittaker

El m`etode de Whittaker te la funcio diteracio definida com:


f (x)
(x) = x
a
Treballem doncs amb el mateix pendent fix en totes les iteracions (en contraposicio al m`etode
de Newton on el calculavem cada vegada). Fixem el valor de a com el del pendent en la primera
iteracio.

`
6.4. METODE
DE LA SECANT

6.3.1

57

Consist`
encia

f ()
= f () = 0
a
Per tant, el m`etode de Whittaker es consistent.
() =

6.3.2

Converg`
encia

Calculem el F AC = |0 ()| = |1
|1

f 0 ()
a |.

Volem doncs:

f 0 ()
f 0 ()
f 0 ()
| < 1 1 < 1
< 1 0 <
<2
a
a
a

I aquesta condicio ens donar`a converg`encia lineal.

6.4

M`
etode de la secant

El m`etode de la secant es basa en aproximar la derivada pel pendent entre el punt i lanterior,
i.e:
f (xk ) f (xk1 )
sk =
' f 0 (xk )
xk xk1
a dir, obtenim una funcio diteracio que dep`en de dues variables:
Es
xk+1 = (xk , xk1 ) = xk

6.4.1

f (xk )
sk

Converg`
encia

Analitzant la converg`encia daquest m`etode obtenim:

k+1

|x |
k

1+

(5)

= |x |
k

(5)

E k = k E k

Notem que limk k = 0 i per tant, el m`etode te converg`encia superlineal.

6.4.2

Consist`
encia

Per altra banda, el m`etode es consistent ja que (suposant sk 6= 0), podem fer:
xk+1 =

6.5

f ()
=
sk

M`
etode de la bisecci
o

El m`etode de la biseccio consisteix en trobar dos valors de signe contrari i anar dividint linterval
entre dos quedant-nos en el que sabem que hi haur`a com a mnim una arrel de la funcio (es a
dir, amb el dextrems amb signe de la funcio diferent). El gran problema daquest m`etode es
que no funciona en casos en els que f te arrels m
ultiples i pot no existir un canvi de signe.

CAPITOL 6. ZEROS DE FUNCIONS

58

6.5.1

Aturada de les iteracions

Aquest m`etode no ens donar`a un punt sino ens donar`a un interval on sassegura la pres`encia
dalmenys un zero de la funcio f . Per tant, caldr`a marcar un criteri per finalitzar les iteracions.
Amb aquest objectiu considerem (tenint en compte que xk es l
ultim extrem calculat):
E k = |xk | lerror absolut
rk =

Ek
||

error relatiu

Una possibilitat es imposar una toler`ancia sobre el valor de la funcio |f (xk )| < T OLf per`o
aquest sistema no ens assegura que ens trobem molt aprop del zero de la funcio (podria ser que
el decreixement fos molt lent).
Per tant, com a segon opcio tenim considerar: rk < T OLx . El problema es que com rk dep`en
directament de , valor que no coneixem, caldr`a aproximar amb el valor de xk+1 . Per tant, la
k
k+1
condicio ser`a rk = | x xx
| < T OLx . Per tal dassegurar la bona converg`encia podem combinar
k+1

les dues condicions i aturar quan es compleixi alhora que | xxk+1


| < T OLx i que |f (xk )| < T OLf .
k

6.6

Gr`
afiques de converg`
encia

Per tal de poder fer un an`alisi visual de la converg`encia del m`etode escollit cap a la solucio, en
aquest u
ltim apartat analitzarem com graficar aquesta converg`encia de manera clara. La millora
manera ser`a graficant lerror en funcio del nombre diteracions.

6.6.1

Converg`
encia lineal

En aquest cas tenim (per (0, 1)):


E k E k1 2 E k2 ... k E 0
En termes de lerror relatiu obtenim:
rk k r0 log(rk ) klog() + log(r0 )
I per tant, ser`a aquesta u
ltima recta la que graficarem.

6.6.2

Converg`
encia dordre p > 1

Tenim en aquest cas:


2

E k (E k1 )p ((E k2 )p )p = p+1 (E k2 )p p+1 ((E k3 )p )p


2

pk1

1++ (E k3 )p ... 1++...+


Per tant, finalment obtenim:
Ek

pk 1
p1

(E 0 )p

(E 0 )p =

pk 1
p1

(E 0 )p

`
`
6.6. GRAFIQUES
DE CONVERGENCIA

59

Ara operem per obtenir lexpressio en funcio de lerror relatiu. Per fer-ho dividim per || a
banda i banda i ens queda:
rk

pk 1
p1

pk 1
E 0 pk pk 1
k
k
) ||
= p1 (r0 )p ||p 1
||

Tambe volem obtenir la gr`afica logartmica que, com sabem, ens permet fer un an`alisi amb mes
precisio dels resultats:
pk 1
log(rk )
log() + pk log(r0 ) + (pk 1)log|| =
p1
{
} {
}
log()
k log()
0
=p
+ log(r ) + log||
+ log||
p1
p1
Converg`
encia quadr`
atica (p=2)
Per u
ltim, farem el cas particular p = 2. Substitum p = 2 a la formula anterior i obtenim:
{
} {
}
k
0
2 log() + log(r ) + log|| log() + log||
Notem ara que log() + log(r0 ) + log|| = log(r0 ||) = log(E 0 ). Per tant, lexpressio final
ser`a:
log(rk ) 2k log(E 0 ) log(||)
. Hem obtingut que amb una bona aproximacio inicial tindrem E 0 < 1 i la gr`afica ser`a una
funcio decreixent.

60

CAPITOL 6. ZEROS DE FUNCIONS

Captol 7

M`
etodes Iteratius per Sistemes
Lineals
En aquest u
ltim captol farem una an`alisi dels diferents m`etodes iteratius que sutilitzen a lhora
de resoldre sistemes lineals dequacions. Coneixem ja els anomenats m`etodes directes, amb els
que arribem a la solucio final amb un nombre finit de passos, com poden ser els m`etodes de
Crout o de Cholesky. En aquests casos, coneixem lordre del nombre doperacions que haurem de
fer per tal dobtenir una solucio final (en el cas de Crout 23 n3 ); en canvi, en els m`etodes iteratius
ens regirem per toler`ancies derror que fixarem abans de comencar a aplicar lalgorisme.

7.1

M`
etodes iteratius estacionaris

Sigui A Rnn , b, x Rn i sigui x = A1 b la solucio del sistema. Definim r(x) = Ax b la


funcio residu del sistema i notem que r(x ) = 0. Sigui x0 una aproximacio inicial de la solucio.
Aleshores, el nostre m`etode estacionari operar`a com:
xk+1 = Gxk + h
Anomenarem a G la matriu diteraci
o, i aquesta podr`a deprendre tant de la matriu A del sistema
com del m`etode iteratiu escollit. Comprovem ara les condicions que ha de complir el m`etode
per tal de garantir un bon funcionament del mateix.

7.1.1

Consist`
encia

Cal exigir, primer de tot, que x sigui l


unic punt fix de la funcio. En qualsevol altre cas podrem
obtenir falsos positius com a solucions del sistema.
x
es punt fix
La condicio a complir ser`a:
x = Gx + h h = x Gx = (I G)x = (I G)A1 b
61

`
CAPITOL 7. METODES
ITERATIUS PER SISTEMES LINEALS

62
x u
nic punt fix

Sigui y = Gy + h un punt fix. Aleshores:


(x y) = G(x y) (I G)(x y) = 0
Cal doncs que I G sigui una matriu regular.

7.1.2

Converg`
encia

Sigui ek = x xk+1 . Volem veure que:


lim xk = x lim ek = 0

e0

Tenim x = Gx + h i xk+1 = Gxk + h. Aix`o ens porta, restant les dues anteriors, a ek+1 =
x xk+1 = G(x xk ) = Gek ek = Gk e0 . Per tant, per complir la condicio anterior voldrem:
lim Gk = 0 (G) = maxi=1n |i | < 1

7.1.3

Posada en pr`
actica

Sigui C Rnn . Per tal de posar en pr`actica el m`etode exposat anteriorment garantint que es
compleixin les condicions tant de converg`encia com de consist`encia, els passos a seguir seran:
1. C`alcul del residu: rk = Axk b
2. Resolucio del sistema: Cxk = rk
3. Actualitzacio: xk+1 = xk + xk
Cal ara crear lanalogia entre lestudi te`oric anterior i aquest proces per tal de poder comprovarne les propietats. Sabem que
Cxk = rk xk = C 1 rk = C 1 (Axk b)
Per tant, tenim:
xk+1 = xk + xk = xk C 1 (Ax b) = (I C 1 A)xk + C 1 b
Don extraiem que en aquest cas G = I C 1 A i h = C 1 b. Comprovem a continuacio qu`e ha
de complir la matriu C:
Consist`
encia
1. h = (I G)A1 b = C 1 AA1 b = C 1 b. c.v.d
2. I G regular C 1 A regular. c.v.d
Volem que C sigui f`acilment inversible (per tal de poder resoldre f`acilment sistemes amb la
matriu C) i que C 1 ' A1 . Entrem ara a fer lan`alisi de m`etodes especfics. Com ja hem vist
en aquest apartat, cada m`etode es pot caracteritzar simplement per una matriu C.

`
7.1. METODES
ITERATIUS ESTACIONARIS

7.1.4

63

M`
etode de Richardson

En aquest m`etode, C = I G = I A i per tant, per complir la condicio de converg`encia


caldr`a veure que (I A) < 1. Aquesta condicio es restrictiva, ja que imposa que la matriu A
tingui els valors propis propers a la unitat1 . La formula diteracio quedar`a en aquest cas com:
xk+1 = (I A)xk + b

7.1.5

M`
etode de Jacobi

Partint de largumentacio anterior, triem en aquest cas C = DA , on DA es una matriu diagonal


amb els valors de la diagonal iguals als de A (aix`o es, (dA )ii = aii i (dA )ij = 0 i 6= j). Caldr`a
exigir en aquest cas que aii 6= 0 i {1, .., n} ja que sino no complirem la condicio de que C
fos una matriu inversible.
1
La condicio de converg`encia quedar`a com (GJ ) = (I DA
A) < 1. Donarem ara una
condicio equivalent per tal de facilitar-ne la comprovacio.
Definici
o 7.1. Diem que A es matriu diagonalment dominant |aii | >

j=1 j6=i |aij |

i.

1
Proposici
o 7.1. Sigui A matriu diagonalment dominant (I DA
A) < 1

Per tant, amb la proposicio anterior trobem un cam mes practicable per tal de comprovar
si la matriu A es susceptible de ser aplicada al m`etode de Jacobi.
Ens queda doncs:
1
xk+1 = xk + DA
(b Axk )

DA xk+1 = DA xk+1 + b Axk = b (LA + UA )xk


On LA i UA son les matrius triangulars inferior i superior de A respectivament. Per u
ltim, la
formula que obtenim component a component es:
xk+1
i

{
}
i1
n

1
i = 1 n
bi
aij xkj
aij xkj
=
aii
j=1

j=i+1

Observem que el primer sumatori usa subndexs ja calculats del vector xk+1 . Seria raonable doncs
pensar que podem aprofitar aquests subndexs i optimitzar encara mes lalgorisme, quedant-nos
amb:
{
}
i1
n

1
xk+1
=
bi
aij xk+1

aij xkj
i = 1 n
i
j
aii
j=1

j=i+1

Aquesta es exactament la millora que aporta el seg


uent m`etode, el de Gauss-Seidel.
1

Aix`
o es dedueix de que els VAPS de A kI s
on i k.

`
CAPITOL 7. METODES
ITERATIUS PER SISTEMES LINEALS

64

7.1.6

M`
etode de Gauss-Seidel

En aquest cas la C = DA + LA . La formula iterativa ens queda:


xk+1 = xk + (DA + LA )1 (b Axk )
(DA + LA )xk+1 = (DA + LA )xk + b Axk = b UA xk
Aquesta formula matricial es correspon coordenades tal com hem comentat abans a:
{
}
i1
n

1
k+1
k+1
k
bi
aij xj
aij xj i = 1 n
xi =
aii
j=1

j=i+1

Notem que en aquest cas la matriu diteracio es:


GGS = I (DA + LA )1 A
Com a condicio de converg`encia tenim, com sempre, que (GGS ) < 1. Presentem ara dues
proposicions que ens donaran condicions per tal de verificar aquesta propietat a la pr`actica
sense grans dificultats.
Proposici
o 7.2. Sigui A matriu diagonalment dominant (GGS ) < 1
Proposici
o 7.3. Sigui A sim`etrica i definida positiva (GGS ) < 1
Per tant, tenim ara dues vies independents per comprovar la condicio.

7.1.7

M`
etodes iteratius per blocs

Sigui A una matriu i Aij les seves submatrius. Podem plantejar-nos aplicar m`etodes iteratius
aprofitant lestructura de blocs de la matriu per tal de millor els m`etodes anteriors. Tot i aix,
no explicarem cap dels m`etodes iteratius per blocs utilitzats.

7.2

M`
etodes iteratius no estacionaris

En aquest cas tractarem sistemes de la forma Ax = b amb la matriu A sim`etrica i definida


positiva. Recordem, abans de procedir, un resultat que ens ser`a u
til a lhora de fer lan`alisi del
sistema.
Proposici
o 7.4. Sigui A matriu sim`etrica i definida positiva A diagonalitza en VAPS reals.

7.2.1

Equival`
encia entre Ax = b i problema de minimitzaci
o associat

Sigui (x) = 12 xT Ax xT b amb x Rn . Usarem a partir dara el conveni dEinstein2 . Tenim


doncs: (x) = 21 xi aij xj xi bi . Per calcular el gradient derivem component a component:
(x)
1

=
(xi aij xj )
(xi bi ) =
xk
2 xk
xk
2

Aquest consisteix en no explicitar el sumatori, usar directament els subndex

`
7.2. METODES
ITERATIUS NO ESTACIONARIS

65

1
1
(ik aij xj + xi aij jk ) ik bi = (akj xj + ajk xj ) bk = akj xj bk
2
2
Per tant, ens queda:
5 = Ax b = r(x)

7.2.2

M`
etode del gradient, m`
axim pendent o m`
axim descens

Lobjectiu daquest m`etode es minimitzar la funcio definida anteriorment. Equivalentment,


podem trobar un zero del seu vector gradient, que ser`a aleshores una solucio del sistema que
volem resoldre. Amb aquest objectiu definim rk = Axk b el residu del sistema. Sigui el m`etode
iteratiu definit per:
xk+1 = xk + k rk
En cada iteracio ens mourem en la direccio del residu i resoldrem el problema de minimitzacio
restringida a la recta definida pel vector rk . Daquesta manera, obtindrem el punt seg
uent xk+1 .
Vegem quin ha de ser el valor de k per tal de que el nou punt xk+1 sigui la solucio del problema
de minimitzacio restringida:
1
1
(xk+1 ) = (xk+1 )T Axk+1 (xk+1 )T b = (xk + k rk )T A(xk + k rk ) (xk + k rk )T b =
2
2
1 k T k
1
k T
k
= (x ) Ax (x ) b + k (r Axk (rk )T b) + k2 (rk )T Ark
2
2
Si ara considerem la funcio f (k ) = (xk+1 ) = (xk ) + k (rk )T rk + 21 k2 (rk )T Ark , derivant
i igualant a 0 obtenim:
df
= (rk )T rk + k (rk )T Ark
dk

k =

(rk )T rk
(rk )T Ark

Anomenem a aquest valor dk la longitud `


optima davanc. Notem que te signe negatiu, i per
tant el sentit davanc es el contrari al del residu.
Estudi de rk+1 envers rk
Vegem com son dos residus consecutius del m`etode del m`axim descens.
rk = Axk b
rk+1 = Axk+1 b = A(xk + k rk ) b = Axk + k Ark b = rk + k Ark = (I + k A)rk
rk+1 = rk

(rk , rk )
Ark
(rk , Ark )

(rk+1 , rk ) = 0

El fet de tenir residus ortogonals no ens interessa, ja que molt possiblement ens veurem obligats
a repetir direccions. Difcilment tindrem un apropament eficient seguint aquesta estrat`egia.
Podem entrendre el m`etode del gradient com una millora respecte al m`etode de Richardson, on
simplement es pren k = 1 a totes les iteracions.

`
CAPITOL 7. METODES
ITERATIUS PER SISTEMES LINEALS

66

7.2.3

M`
etode dels gradients conjugats

Tornem a les hip`otesis del m`etode anterior, es a dir, A matriu sim`etrica i definida positiva. En
aquest cas el pas iteratiu es fa com:
xk+1 = xk + k pk
I sescull k igual que abans com la solucio del problema de minimitzacio restringida en la
direccio pk , es a dir:
(pk , rk )
k = k
(p , Apk )
Caldr`a doncs triar be pk per tal devitar els problemes que tenia el m`etode de m`axim pendent
amb la repeticio de direccions. Per aquest motiu triem pk direccions conjugades (A-ortogonals,
i.e, pi Apj = 0 per i 6= j). Definirem pk com:
{
r0 si k = 0
pk =
k
k1
r + k p
si k > 0
Cal imposar ara que 0 = (pk , Apk1 ) = (rk + k pk1 , Apk1 ) = (rk , Apk1 ) + k (pk1 , Apk1 ).
Aix`o ens porta a la seg
uent definicio de k :
k =

(rk , Apk1 )
(pk1 , Apk1 )

Reescriurem ara lalgorisme complet per dur a terme el m`etode dels gradients conjugats. Donada
x0 aproximacio inicial, definim: k = 0, r0 = Ax0 b i p0 = r0 . I els passos a fer son:
1. Comprovar converg`encia. Si no nhi ha:
2. q k = Apk
k

,r )
3. k = (p(pk ,Ap
k)

4. xk+1 = xk + k pk
5. rk+1 = Axk+1 b
k

k1

)
6. k+1 = (p(rk1,Ap
,Apk1 )

7. pk+1 = rk+1 + k+1 pk


8. k = k + 1
Proposici
o 7.5. Aquest esquema iteratiu verifica que k n:
1. (rk , pi ) = 0 per i < k
2. (ri , ri ) = (ri , pi ) per i k

`
7.2. METODES
ITERATIUS NO ESTACIONARIS

67

3. (rk , ri ) = 0 per i < k (Residus ortogonals)


4. (pk , Api ) = 0 per i < k (Direccions conjugades)
Demostraci
o. Procedirem a una demostracio per induccio. Pel cas k = 1 tenim:
1. (r1 , p0 ) = (r0 + 0 Ap0 , p0 ) = (r0 , p0 ) + 0 (Ap0 , p0 ) = 0 per la definicio de 0 .
2. (r0 , r0 ) = (r0 , p0 ) per definicio de p0 . I per altra banda, (r1 , p1 ) = (r1 , r1 ) + 1 (r1 , p0 ) =
(r1 , r1 ).
3. (r1 , r0 ) = 0 com ja hem vist abans.
4. (p1 , Ap0 ) = 0 per definicio de p1 .
Ara suposem que es cert per k, i vegem que es cert per k + 1.
1. Per i < k + 1,

(rk+1 , pi ) = (rk + k Apk , pi ) = (rk , pi ) + k (Apk , pi ). Distingim dos casos:

Si i = k: (rk+1 , pk ) = (rk , pk ) + k (Apk , pk ) = 0


Si i < k: (rk+1 , pi ) = (rk , pi ) + (Apk , pi ) = 0 + 0, ja que
(Apk , pi ) = (Apk )T pi = (pk )T AT pi = (pk , Api ) = 0
aplicant la hip`otesi dinduccio de lapartat 4 i (rk , pi ) = 0 per hip`otesi dinduccio del
primer apartat.
2. (rk+1 , pk+1 ) = (rk+1 , rk+1 + k+1 pk ) = (rk+1 , rk+1 ) + k+1 (rk+1 , pk ) = (rk+1 , rk+1 ) ja que
(rk+1 , pk ) = 0 per lapartat anterior.
3. (rk+1 , ri ) = (rk+1 , pi i pi1 ) = (rk+1 , pi ) i (rk+1 , pi1 ) = 0 utilitzant en els dos casos
lapartat 1.
4. Tenim que Api = 1i (ri+1 ri ). (pk+1 , Api ) = (rk+1 , Api )+k+1 (pk , Api ) =
ri ) + k+1 (pk , Api ). Distingim dos casos:

1
k+1 , r i+1
i (r

Si i < k tenim (rk+1 , ri+1 ri ) = 0 per lapartat (3) i (pk , Api ) = 0 per hip`otesi
dinduccio de (4).
Si i = k (pk+1 , Apk ) = 0 perqu`e son consecutives.
Daquesta proposicio dedum que (rn , r0 ) = (rn , r1 ) = ... = (rn , rn1 ) = 0 rn = 0. Per
tant, podem assegurar que lalgoritme acaba en un nombre finit diteracions. Aix`o ens podria fer
pensar en el m`etode dels gradients conjugats com un m`etode directe, per`o el fet de que sarribi
a convergir en moltes menys iteracions que el m`axim fa que sigui mes eficient considerar-lo com
un m`etode iteratiu tot i la seva propietat daturada en n iteracions.

`
CAPITOL 7. METODES
ITERATIUS PER SISTEMES LINEALS

68
Converg`
encia

Respecte la converg`encia, tenim amb el m`etode dels gradients conjugats:


{
||xi x ||A 2

cond(A) 1

}i

cond(A) + 1

||x0 x ||A

En canvi amb el m`etode del m`axim descens:


{
}i
cond(A) 1
i

||x x ||A 2
||x0 x ||A
cond(A) + 1
Observem com el nombre de condicio juga un paper fonamental en la converg`encia. Per aquest
motiu, intentarem trobar matrius P per tal de modificar el nostre sistema i obtenir una matriu
amb un millor nombre de condicio. Nanomenarem precondicionadors del sistema.

7.2.4

Precondicionadors

Com coment`avem anteriorment, el nombre de condicio es clau en la velocitat de converg`encia dels


m`etodes iteratius de resolucio de sistemes lineals. Per aquest motiu, ens plantegem multplicar
1
1
el sistema per una matriu P de manera que es redueixi el nombre de condicio. Sigui P = P 2 P 2
una matriu inversible. Aleshores:
Ax = b

P 2 AP 2 P 2 x = P 2 b
1

1
e = P 12 AP 12 , x
Aquest raonament ens porta a resoldre un nou sistema amb matriu A
e = P 2x i
eb = P 21 b. Caldr`a doncs trobar una matriu P per tal de que A
e estigui millor condicionada que A.
En molts casos P = DA resulta ser un precondicionador prou bo. Lanomenem precondicionador
de Jacobi.

Captol 8

M`
etodes iteratius per sistemes no
lineals
En aquest u
ltim captol del curs, introduirem els m`etodes iteratius orientats a la resolucio de
sistemes no lineals dequacions. La forma general daquests sistemes es f (x) = 0, essent f : Rn 7
Rn . Notem que el cas n = 1 ja lhem comentat extensament en captols anteriors. En camps
denginyeria sen dona un u
s significatiu a aquest tipus de sistemes ja que modelitzen fen`omens
fsics complexos amb bastanta exactitud (amb els lineals a vegades tenim una aproximacio de la
modelitzacio). Lestructura iterativa ser`a sempre de la forma: xk+1 = (xk ) i exigirem com ja
es habitual consist`encia i converg`encia als m`etodes utilitzats.

8.1

M`
etode de laproximaci
o succesiva o literaci
o directe

un m`etode senzill dutilitzar ja que nomes


En aquest m`etode prenem (x) = x f (x). Es
avaluem la funcio una vegada i efectuem una suma per cada iteracio, per`o per altra banda,
per assegurar converg`encia cal exigir que la funcio sigui contractiva (per poder utilitzar el
teorema del punt fix). Del mateix teorema es despren que si efectivament es contractiva, la
converg`encia ser`a lineal, i per tant moltes vegades la velocitat de converg`encia no ser`a prou
r`apida per als nostres interessos.

8.2

M`
etode de Picard

En aquest cas, el m`etode de Picard es restringeix a problemes molt concrets, els problemes en
els que la funcio f te la forma f (x) = A(x)x b(x) es a dir, resoldre el sistema A(x)x = b(x).
Donat que tenim A(x)x = b(x) podem prendre:
(x) = A(x)1 b(x)
Per tal de no haver de calcular la inversa, el que es fa a la pr`actica es resoldre el sistema
A(xk )xk+1 = b(xk ) en cada iteracio. Aix`o ens permetria tambe aprofitar la forma de la matriu
A(x) (podria ser semidefinida positiva, triangular..) per resoldre mes r`apidament el sistema,
69

`
CAPITOL 8. METODES
ITERATIUS PER SISTEMES NO LINEALS

70

per`o per altra banda ens pot portar al problema de trobar-nos amb una matriu singular per
algun valor de xk . Per u
ltim, comentar que el m`etode nomes te converg`encia lineal (en el cas
que convergeixi).

8.3

M`
etode de Newton-Raphson

I per u
ltim presentem el m`etode de resolucio de sistemes no lineals per excell`encia. El m`etode
de Newton-Raphson es basa en aproximar la funcio per una s`erie de Taylor de primer ordre i
posteriorment fer la rectificacio adequada per tal dapropar-nos al zero de la funcio. Tenim:
f (xk+1 ) ' f (xk ) +

f k
(x )xk+1
x

Notem que f
es la Jacobiana de la funcio f i per tant, per obtenir-la caldr`a calcular
x = J(x)
les derivades parcials de les components de la funcio f respecte totes les variables, operacions
de cost computacional elevat. De lequacio anterior allem xk+1 i obtenim:
xk+1 = J(xk )1 f (xk )
Per tant, ens queda:
xk+1 = xk J(xk )1 f (xk )
Notem, com abans, que el c`alcul de xk+1 a la pr`actica no passar`a mai per invertir la matriu
sino que sefectuar`a resolent el sistema lineal J(xk )xk+1 = f (xk ). Pel problema anterior que
resol el m`etode de Picard, lesquema iteratiu es:
xk+1 = xk J(xk )1 (A(xk )xk b(xk ))
Ens trobem amb linconvenient de que la matriu Jacobiana no conserva lestructura de A (ja
b(x)
que es J(x) = A(x) + A(x)
etodes orientats a formes
x x ) i per tant no podrem utilitzar m`
de matriu determinades perqu`e desconeixem la forma de la matriu jacobiana. Aquesta p`erdua
defici`encia en la resolucio del sistema lineal queda compensada en un guany de la velocitat
de converg`encia que en el m`etode de Newton-Raphson sassegura quadr`atica. Per tant, aquesta
difer`encia fa que cap dels dos m`etodes sigui lidoni (tot i que Newton es el mes utilitzat): podrem
tenir una matriu amb una forma molt determinada on la resolucio del sistema fos molt r`apida i
aquest augment del nombre diteracions es compenses amb un augment de la velocitat a lhora
de fer cada iteracio (no oblidem que el cost computacional duna iteracio de Newton es alt).
Per u
ltim, comentar que pel bon funcionament del m`etode cal que la jacobiana sigui sempre
no-singular, per`o no es una condicio molt restrictiva ja que es compleix gairabe sempre.

8.4

M`
etodes quasi Newton

En aquest u
ltim apartat parlarem dels anomenats m`etodes quasi Newton. Aquests m`etodes
simplement aproximen la matriu Jacobiana per una matriu S k mes senzilla de calcular (es

`
8.4. METODES
QUASI NEWTON

71

lan`aleg al m`etode de la secant en versio n-dimensional). Per a trobar aquesta matriu S k en


general es resol el sistema:
S k (xk xk1 ) = f (xk ) f (xk1 )
Com veiem hi ha n2 inc`ognites i n equacions aix que tenim la possibilitat dexigir a S k mes
restriccions per tal de fer mes senzill el seu c`alcul. Aquestes restriccions les escollirem adaptantles a cada problema concret.

You might also like