Métodos Numéricos – Cap 4: Solución de Sistemas de ... - 2016a - 4 Sistemas ec - v2… ·...

15
Métodos Numéricos – Cap 4: Solución de Sistemas de Ecuaciones lineales y no lineales 1/14 Última actualización: 17/04/2016 Resolución de Resolución de Sistemas de ecuaciones Sistemas de ecuaciones lineales y no lineales lineales y no lineales Representación matricial para sistemas de ecuaciones Un número α se dice raíz o cero de la ecuación f(x) si f (α) = 0 . Los métodos numéricos para encontrar una raíz de una ecuación f(x), generarán una sucesión { x n }, n=1,2,3,... tal que: lim n→∞ x n = α. El sistema de ecuaciones está formado por un conjunto de ecuaciones del tipo f i (x 1 ,…,x n ), con i=1,…,m. F = [f 1 , f 2 ,... ,f m ] X = [x 1 ,x 2 ,...,x m ] Un vector Α Α Α = [x 1 ,x 2 ,...,x m ] se dice solución de un sistema de ecuaciones F(X) si F(Α Α Α) = 0 . Los métodos numéricos para encontrar la solución de un sistema de ecuaciones F(X) generarán una sucesión {X n }, n=1,2,3,... tal que: lim n→∞ X n = Α Α Α. Criterios de aproximación para sistemas de ecuaciones 1er Criterio Dado un número ε 1 > 0 y adecuadamente pequeño, que llamaremos tolerancia, podemos escoger como aproximación a la raíz α a un término x n de la sucesión mencionada, donde n es el menor entero positivo que satisface: |f(x n ) | < ε ε ε 1 2do Criterio El término x n de la sucesión mencionada puede ser considerado una aproximación a la raíz, donde n es el menor entero positivo que cumple la condición. |x n –x n-1 | < ε ε ε 2 ||F(X)|| < ε ε ε 1 ||X n –X n-1 || < ε ε ε 2 En sistemas F = [f 1 , f 2 ,... ,f m ] X = [x 1 ,x 2 ,...,x m ] Para una ecuación Normas vectoriales Una norma vectorial es una función ||.||: n →ℜ / X ||X|| X,Y∈ℜ n ,∀α∈ℜ i) ||X||0, ||X||=0 X=0 ii) ||αX|| = |α| ||X|| iii) ||X+Y|| ||X||+||Y|| norm(x) ó norm(x,2) norm(x,1) norm(x,inf) 2 2 1 1 1 1 1) La norma euclidiana (o norma 2) 2) La norma suma (o norma 1) 3) La norma del maximo (o norma ) max n i i n i i i i n X x X x X x = = ≤≤ = = = 1) Distancia asociada con la norma euclidiana 2) Distancia asociada con la norma suma 3) Distancia asociada con la norma del máximo ( ) i i n i i i n i i i y x max Y X y x Y X y x Y X - = - - = - - = - = = 1 1 1 2 2

Transcript of Métodos Numéricos – Cap 4: Solución de Sistemas de ... - 2016a - 4 Sistemas ec - v2… ·...

Page 1: Métodos Numéricos – Cap 4: Solución de Sistemas de ... - 2016a - 4 Sistemas ec - v2… · Métodos Numéricos – Cap 4: Solución de Sistemas de Ecuaciones lineales y no lineales

Métodos Numéricos – Cap 4: Solución de Sistemas de Ecuaciones lineales y no lineales 1/14

Última actualización: 17/04/2016

Resolución de Resolución de Sistemas de ecuaciones Sistemas de ecuaciones lineales y no linealeslineales y no lineales

Representación matricial para sistemas de ecuaciones

• Un número α se dice raíz o cero de la ecuación f(x) si f (α) = 0 .

• Los métodos numéricos para encontrar una raíz de una ecuación f(x), generarán una sucesión { xn }, n=1,2,3,... tal que: limn→∞ xn = α.

• El sistema de ecuaciones está formado por un conjunto de ecuaciones del tipo fi(x1,…,xn), con i=1,…,m.

F = [f1, f2,... ,fm] X = [x1,x2,...,xm]

• Un vector ΑΑΑΑ = [x1,x2,...,xm] se dice solución de un sistema de ecuaciones F(X)

si F(ΑΑΑΑ) = 0 .

• Los métodos numéricos para encontrar la solución de un sistema de ecuaciones F(X) generarán una sucesión {Xn}, n=1,2,3,... tal que:limn→∞Xn = ΑΑΑΑ.

Criterios de aproximación para sistemas de ecuaciones

1er Criterio

Dado un número ε1 > 0 y adecuadamente pequeño, que llamaremos tolerancia, podemos escoger como aproximación a la raíz α a un término xn de la sucesión mencionada, donde n es el menor entero positivo que satisface:

|f(xn) | < εεεε1

2do Criterio

El término xn de la sucesión mencionada puede ser considerado una aproximación a la raíz, donde n es el menor entero positivo que cumple la condición.

|xn – xn-1| < εεεε2

||F(X)|| < εεεε1 ||Xn – Xn-1|| < εεεε2

En sistemas F = [f1, f2,... ,fm] X = [x1,x2,...,xm]

Para una ecuación

Normas vectoriales

Una norma vectorial es una función

||.||: ℜn→ℜ / X →||X||

∀X,Y∈ ℜn ,∀α∈ℜ

i) ||X||≥ 0, ||X||=0 ⇔ X=0

ii) ||αX|| = |α| ||X||

iii) ||X+Y|| ≤ ||X||+||Y||

norm(x) ó norm(x,2)

norm(x,1)

norm(x,inf)

2

21

11

1

1) La norma euclidiana (o norma 2)

2) La norma suma (o norma 1)

3) La norma del maximo (o norma )

max

n

ii

n

ii

ii n

X x

X x

X x

=

=

∞ ≤ ≤

=

=

=

1) Distancia asociada con la norma euclidiana

2) Distancia asociada con la norma suma

3) Distancia asociada con la norma del máximo

( )

ii

n

i

ii

n

i

ii

yxmaxYX

yxYX

yxYX

−=−

−=−

−=−

=

=

11

1

2

2

Page 2: Métodos Numéricos – Cap 4: Solución de Sistemas de ... - 2016a - 4 Sistemas ec - v2… · Métodos Numéricos – Cap 4: Solución de Sistemas de Ecuaciones lineales y no lineales

Métodos Numéricos – Cap 4: Solución de Sistemas de Ecuaciones lineales y no lineales 2/14

Última actualización: 17/04/2016

Normas matriciales

Una norma matricial es una función

||.||: ℜnxn→ℜ / X →||X||

∀A,B∈ ℜnxn ,∀α∈ℜ

i) ||A||≥ 0, ||A||=0 ⇔ X=0

ii) ||αA|| = |α| ||A||

iii) ||A+B|| ≤ ||A||+||B||

iv) ||A*B|| ≤ ||A||*||B||

Norma matricial inducida por la correspondiente norma vectorial ||.||

=≤≤∞∞

≠∞

=≤≤≠

===

===

=

ℜ∈=

n

1j

ijni10x

n

1i

ijnj111

1

1

0x1

2

2

0x2

nxn0x

amaxA,1Xsi,X

AXmaxA)3

amaxA,1Xsi,X

AXmaxA)2

X

AXmaxA)1

A,X

AXmaxA

norm(A,1)

norm(A,inf)

Sistema de ecuaciones no lineales

Para resolver sistemas de ecuaciones no lineales, se pueden aplicar los métodos abiertos aplicados a la resolución de ecuaciones no lineales.

• Punto fijo

• Newton-Raphson

Siendo necesario hacer una transformación a variables vectorizadas

Sistema de ecuaciones no lineales

,...Kx

g

x

g

x

g,K

x

g

x

g

x

g

nn

11 22

2

2

1

21

1

2

1

1

1 <≤∂

∂++

∂+

∂<≤

∂++

∂+

∂LL

Con punto fijo f(x) = 0 , x = g(x)

Para un sistema de ecuaciones no lineales

F = [f1, f2, ... ,fn] X = [x1, x2, ..., xn]

G= [g1, g2, ..., gn] x1 = g1(X), x2 = g2(X), .... xn = gn(X)

F(X) = 0, X = G(X) ⇒ X(k+1) = G(X(k))

Condición de convergencia |g’(x)|<1

g

x

K

ni

j

≤( ) ( ) ( )

∞∞−

−≤− 01

1XX

K

KX

nn Α

En general, existe un único para 0 ≤ K < 1, y

punto fijo, si:

Teorema del punto fijo para sistemas

Si además, g’(x) existe para todo x ∈ [a, b] y|g’(x)| ≤ K < 1 para todo x ∈ [a, b] , K constante,

entonces g(x) tiene un único punto fijo α en [a, b] .

Si g(x) es una función continua en [a, b] yg(x) ∈ [a, b] para todo x ∈ [a, b],

entonces g(x) tiene por lo menos un punto fijo en [a, b] .

Si D={(x1, x2,…,xn) ∈ ℜn/ ai ≤ xi ≤ bi i=1,…n} y gi(X) continuasG(X) ∈ D para todo X ∈ D entonces G(X) tiene por lo menos unpunto fijo en D.

Si además existen las derivadas parciales continuas en D y

para todo X ∈ D entonces G(X) tiene un único punto fijo Α en D .

i

j

dx

)X(dg

n

K

dx

)X(dg

i

j≤

Page 3: Métodos Numéricos – Cap 4: Solución de Sistemas de ... - 2016a - 4 Sistemas ec - v2… · Métodos Numéricos – Cap 4: Solución de Sistemas de Ecuaciones lineales y no lineales

Métodos Numéricos – Cap 4: Solución de Sistemas de Ecuaciones lineales y no lineales 3/14

Última actualización: 17/04/2016

Ejemplo 1

=−

=+

0 1- y X

0 1- y X22

22

Si D={(x1, x2,…,xn) ∈ ℜn/ ai ≤ xi ≤ bi i=1,…n} y gi(X) continuas

G(X) ∈ D para todo X ∈ D entonces G(X) tiene por lo menos un punto fijo en D.

1 y- y)(x,g

0 1- y X y)(x,f

2

1

221

+=

=+=

[ ]

DXDG

]5.1,5.1[D),y,x(X

,G

∈∉

−==

++=

todo para

1 y1 x- 22

1- x y)(x,g

0 1- y X y)(x,f

22

222

=

=−=

[ ]

todo para

[-1.5,1.5]

1- x1 y- 22

DXG

D),y,x(X

,G

∈ℜ∉

==

+=

-1.5 -1 -0.5 0 0.5 1 1.5-1.5

-1

-0.5

0

0.5

1

1.5sqrt(-y2+1)

y

-1.5 -1 -0.5 0 0.5 1 1.5-1.5

-1

-0.5

0

0.5

1

1.5

x

sqrt(-x2+1)

1 y y)(x,g

0 1- y X y)(x,f

22

222

+=

=−=

1 x- y)(x,g

0 1- y X y)(x,f

2

1

221

+=

=+=-1.5 -1 -0.5 0 0.5 1 1.5

-1.5

-1

-0.5

0

0.5

1

1.5

y

sqrt(y2+1)

Ejemplo 1 Punto Fijo

-1.5 -1 -0.5 0 0.5 1 1.5-1.5

-1

-0.5

0

0.5

1

1.5

x

sqrt(x2-1)

∴no converge

∴no converge

b)

a)

Ejemplo 1 Punto Fijo

X2 + y2 -1=0 f1(x,y)= X2 + y2 -1

X2 - y2 -1=0 f2(x,y)= X2 - y2 -1[ ]yxX,

1- y X

1- y XF

22

22

=

+=

[ ]1- x1 y-1- x y y)(x,g

1 y- x y)(x,g

0 1- y X y)(x,f

0 1- y X y)(x,f22

22

21

222

22

1,G +=⇒

==

+==⇒

=−=

=+=

dg1/dy = diff('sqrt(-y^2+1)','y')dg1/dy = -1/(-y^2+1)^(1/2)*y

dg1/dx = diff('sqrt(-y^2+1)',‘x')

dg1/dx = 0

Analizando en -1.5≤ x,y ≤1.5dg1/dy + dg1/dx ∈ℜn en [-1,1]

dg1/dy + dg1/dx < 1 en [-0.7,0.7]

dg2/dx = diff('sqrt(x^2-1)','x')dg2/dx = 1/(x^2-1)^(1/2)*x

dg2/dy = diff('sqrt(x^2-1)',‘y')

dg2/dy= 0

Analizando en -1.5≤ x,y ≤1.5dg2/dy + dg2/dx ∉ℜn en [-1,1]

dg2/dy + dg2/dx > 1 en [-1.5,-1]

y [1,1.5]

- 1 .5 -1 - 0 .5 0 0 .5 1 1 .5-1 5

-1 0

-5

0

5

1 0

1 5

-1 . 5 -1 -0 . 5 0 0 . 5 1 1 . 5-2 0

-1 5

-1 0

- 5

0

5

1 0

1 5

2 0

∴no converge

a)

Ejemplo 1 Punto Fijo (cont.)

++=

+===−=

+===+=1 y,1 x-G

1 y x y)(x,g0 1- y X y)(x,f

1 x- y y)(x,g0 1- y X y)(x,f 22

22

222

21

221

dg1/dx = diff('sqrt(-x^2+1)',‘x')dg1/dx = -1/(-x^2+1)^(1/2)*x

dg1/dy = diff('sqrt(-x^2+1)',‘y')dg1/dy = 0

Analizando en -1.5≤ x,y ≤1.5dg1/dy + dg1/dx ∉ℜn ó >1

dg2/dy = diff('sqrt(y^2+1)',‘y')dg2/dy = 1/(y^2+1)^(1/2)*y

dg2/dx = diff('sqrt(y^2+1)',‘x')dg2/dx= 0

Analizando en -1.5≤ x,y ≤1.5dg2/dy + dg2/dx < 1

-1 . 5 -1 -0 . 5 0 0 . 5 1 1 . 5-1 5

-1 0

-5

0

5

1 0

1 5

-1.5 -1 -0.5 0 0.5 1 1.5-1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

∴no converge

b)

Page 4: Métodos Numéricos – Cap 4: Solución de Sistemas de ... - 2016a - 4 Sistemas ec - v2… · Métodos Numéricos – Cap 4: Solución de Sistemas de Ecuaciones lineales y no lineales

Métodos Numéricos – Cap 4: Solución de Sistemas de Ecuaciones lineales y no lineales 4/14

Última actualización: 17/04/2016

Ejemplo 2 Punto Fijo

=++

=⇒=+−+=

=++

=⇒=++−=

)y,x(g10

8xxyy08y10xxy)y,x(f

)y,x(g10

8yxx08yx10x)y,x(f

2

22

2

1

2222

1

Para 0 ≤ x,y ≤1.5

≤≤++

≤≤++

5.1287.110

8xxy0

5.125.110

8yx0

2

22

G(X) ∈ D para todo X ∈ Dentonces G(X) tiene por lo menos un punto fijo en D

-10 -8 -6 -4 -2 0 2 4 6 8 10-10

-8

-6

-4

-2

0

2

4

6

8

10

x

y

x y2-10 y+x+8 = 0

x2-10 x+y2+8 = 0

>> ezplot('x^2-10*x+y^2+8',[-10,10])

>> ezplot('x*y^2-10*y+x+8',[-10,10])

Ejemplo 2 Punto Fijo (cont.)

dg1/dx=diff('(x^2+y^2+8)/10','x')dg1/dx =1/5*x

dg1/dy=diff('(x^2+y^2+8)/10','y')dg1/dy =1/5*y

dg2/dx=diff('(x*y^2+x+8)/10','x')dg2/dx =1/10*y^2+1/10 =(y^2+1)/10

dg2/dy=diff('(x*y^2+x+8)/10','y')dg2/dy =1/5*x*y

Máx. para 0 ≤ x,y ≤1.5

dg1/dx = x/5 = 0.3

dg1/dy = y/5 = 0.3

dg2/dx = (y^2+1)/10 = 0.325

dg2/dy = x*y/5 = 0.45

2

9.0

n

K

x

)X(g

i

j=≤

∴ converge

>> X=[0.5,0.5]

>> X=[(X(1)^2+X(2)^2+8)/10, (X(1)*X(2)^2+X(1)+8)/10]X = 0.8500 0.8625

>> X=[(X(1)^2+X(2)^2+8)/10, (X(1)*X(2)^2+X(1)+8)/10]X = 0.9466 0.9482

>> X=[(X(1)^2+X(2)^2+8)/10, (X(1)*X(2)^2+X(1)+8)/10]X = 0.9795 0.9798

>> X=[(X(1)^2+X(2)^2+8)/10, (X(1)*X(2)^2+X(1)+8)/10]

X = 0.9919 0.9920

>> X=[(X(1)^2+X(2)^2+8)/10, (X(1)*X(2)^2+X(1)+8)/10]X = 0.9968 0.9968

>> X=[(X(1)^2+X(2)^2+8)/10, (X(1)*X(2)^2+X(1)+8)/10]X = 0.9987 0.9987

>> X=[(X(1)^2+X(2)^2+8)/10, (X(1)*X(2)^2+X(1)+8)/10]X = 0.9995 0.9995

>> X=[(X(1)^2+X(2)^2+8)/10, (X(1)*X(2)^2+X(1)+8)/10]

X = 0.9998 0.9998

>> X=[(X(1)^2+X(2)^2+8)/10, (X(1)*X(2)^2+X(1)+8)/10]X = 0.9999 0.9999

>> X=[(X(1)^2+X(2)^2+8)/10, (X(1)*X(2)^2+X(1)+8)/10]X = 1.0000 1.0000

Sistema de ecuaciones no lineales

Con Newton xk+1 = xk – f(xk) / f’(xk)

Para un sistema de ecuaciones no lineales

F(X) = 0, F(X) = [f1(X), f2(X),... ,fn(X)] X = [x1,x2,...,xn]

Xk+1 = Xk – J-1 (F(xk), xk) * F(xk)

Con J (F(xk), xk) ≠0

Como hallar en Matlab el jacobiano (toolbox symbolic)

syms var1 var2 .....Jacobian ([f1,f2,...],[var1,var2,.....]):

∂∂

=

2

2

1

2

2

1

1

1

x

f

x

fx

f

x

f

)X,F(J

Page 5: Métodos Numéricos – Cap 4: Solución de Sistemas de ... - 2016a - 4 Sistemas ec - v2… · Métodos Numéricos – Cap 4: Solución de Sistemas de Ecuaciones lineales y no lineales

Métodos Numéricos – Cap 4: Solución de Sistemas de Ecuaciones lineales y no lineales 5/14

Última actualización: 17/04/2016

Ejemplo 1 Newton

X=[x,y]

f1 (X) = x2+y2-1

f2 (X) = x2-y2-1

−=

yx

yxJ

22

22

0.0313

1.0000

0.0625

1.0003

1250

0251

0.125

0.225

250

251

0.5

0.625

11

2020

250

251

1250251

1250251

25022512

25022512

250

251

250

251

250

750

50

50

1

50

5050

5050

50

50

1

50

11

11

50

50

15050

15050

502502

502502

50

50

50

50

43

22

221

2

1

22

221

1

0

=

=

=

=

=

−−

=

−−

−+

−−

=

=

−−

=

−−

=

−−

=

−−

−+

−−

=

=

−−

X,X,.

.

.

.

*..

.

.

..

..*

.*.*

.*.*

.

.X

.

.

.

.

.

..*

..

..

.

.

.*

.

.

..

..*

.*.*

.*.*

.

.X

.

.X

Xk+1 = Xk – J-1 (F(xk), xk) * F(xk)

syms x yJ=Jacobian ([‘x^2+y^2-1, x^2-y^2-1’],[x,y])

Va convergiendo

Ejemplo 2 Newton

=+−+=

=++−=

0810

08102

2

221

yxxy)y,x(f

yxx)y,x(f

-10 -8 -6 -4 -2 0 2 4 6 8 10-10

-8

-6

-4

-2

0

2

4

6

8

10

x

y

x y2-10 y+x+8 = 0

x2-10 x+y2+8 = 0

−+=

1021y

2y10-2x 2 xy

J

=

−−

=

=

−−

=

=

−−

=

+−+

++−

−+

−−

=

=

−−

0001

0001

01030

00720

0058899681

9968100268

99840

99870

99840

99870

37310

38440

2387888201

8783112468

93920

93770

93920

93770

6253

53

59251

19

50

50

85010505050

850501050

1050502150

50210502

50

50

50

50

1

3

2

1

2

221

21

0

.

.

.

.*

..

..

.

.X

.

.

.

.*

..

..

.

.X

.

.

.

.*

...

.

.*..*.

..*.*

.*.*.

.*.*

.

.X

.

.X

=

+

+

)y,x(f

)y,x(f

y

x,

)y,x(f

)y,x(fJ

y

x

y

x

kk

kk

k

k

kk

kk

k

k

k

k

2

1

1

2

1

1

1

syms x y>>F=[x^2-10*x+y^2+8;x*y^2-10*y+x+8]F =

x^2-10*x+y^2+8x*y^2-10*y+x+8>> X=[x;y]

X =xy>> N=X-jacobian(F)\F % o N=X-F/jacobian(F)‘ con F y X vector fila

N =x-(-40+5*y^2+7*x*y-8*y-10*x^2*y+x^3*y+50*x-5*x^2)/(-y^3-y+2*x^2*y-10*x*y-10*x+50)y-1/2*(-88+x^2-20*x*y+100*y+16*x-9*y^2+y^2*x^2-y^4)/(-y^3-y+2*x^2*y-10*x*y-10*x+50)

>> X=subs(N,[x;y],[0.5;0.5])X =

0.9377

0.9392>> X=subs(N,[x;y],X)X =

0.9987

0.9984>> X=subs(N,[x;y],X)X =

1.00001.0000

Ejemplo 2 NewtonEmpleando Matlab

=+−+=

=++−=

0810

08102

2

221

yxxy)y,x(f

yxx)y,x(f

−+=

1021y

2y10-2x 2 xy

J

=

+

=+=

=

+−+

++−−=

−+

+++

+

93920

93770

50

50

43920

43770

43920

43770

85010505050

850501050

1050502150

50210502

111

2

22

12

.

.

.

.

.

.XZX,

.

.Z

.*..*.

..*.Z*

.*.*.

.*.*

kkkk

k

Método Newton simplificadoEjemplo 2

Xk+1 = Xk – J-1 (F(xk), xk) * F(xk) ⇒ Xk+1 - Xk = – J-1 (F(xk), xk) * F(xk)

J (F(xk), xk) *(Xk+1 - Xk ) = –F(xk) |

Si Zk+1 = (Xk+1 - Xk ) ⇒ J (F(xk), xk) *Zk+1 = –F(xk) con |Zk+1|< ε

=

50

500

.

.X

Se evita invertir el Jacobiano en cada iteración

Page 6: Métodos Numéricos – Cap 4: Solución de Sistemas de ... - 2016a - 4 Sistemas ec - v2… · Métodos Numéricos – Cap 4: Solución de Sistemas de Ecuaciones lineales y no lineales

Métodos Numéricos – Cap 4: Solución de Sistemas de Ecuaciones lineales y no lineales 6/14

Última actualización: 17/04/2016

Dificultades en la solución de sistemas de ecuaciones no

lineales

• No es fácil encontrar buenos valores iniciales.Conocer el problema.

• No es posible graficar superficies multidimensionales (n>2).Reducción de ecuaciones.Partición del sistema de ecuaciones.

Solución numérica de sistemas de ecuaciones lineales

Un sistema de n ecuaciones, con coeficientes reales en las n-incógnitas x1, x2,...,xn, de la forma:

ai1, ai2,...,ain y bi constantes ∈ ℜ

i=1,…,n,

se dice sistema lineal

0

0

0

21

212

211

=

=

=

)x,,x,x(f

)x,,x,x(f

)x,,x,x(f

nn

n

n

K

M

K

K

( ) 021 == )X(Fx,,x,xX n , Si K

( )

inin2i21i1

ni

bxaxaxa

x,,x,xf

−+++=

=

K

K21con

y X ∈ ℜn entonces X es una solución real del sistema

F(X)

Un sistema de n-ecuaciones lineales puede escribirse en la forma:

ó en la forma matricial equivalente AX = B con:

A es la matriz de coeficientes del sistema, el vector columna X es el vector de incógnitas y B es el vector de términos independientes.

nnnn2n21n1

jij

nn2221

1n1n212111

bxaxaxa

n,...,,j,i,b,acon

bxaxaxa

bxaxaxa

−+++

=ℜ∈

−+++

−+++

K

M

K

K

212221

=

=

=

n

2

1

n

2

1

nnn21n

n22221

n11211

b

b

b

B,

x

x

x

X,

aaa

aaa

aaa

AMM

L

MMM

L

L

Sistemas con solución única

Consideraremos únicamente sistemas de ecuaciones lineales AX= bcon A ∈ ℜℜℜℜn×n que tengan solución única para cada vector b ∈ ℜℜℜℜn, es

decir, con A invertible ⇒ X=b*A-1.

Matlab introduce una notaciónparticular implementando los operadores \ y /. La solución a

un sistema es expresada como:

X=A\b (con b vector columna)

equivalente a inv(A)*b.ó X=b/A (con b vector fila) equivalente a b*inv(A).

Emplea eliminación Gaussiana

Page 7: Métodos Numéricos – Cap 4: Solución de Sistemas de ... - 2016a - 4 Sistemas ec - v2… · Métodos Numéricos – Cap 4: Solución de Sistemas de Ecuaciones lineales y no lineales

Métodos Numéricos – Cap 4: Solución de Sistemas de Ecuaciones lineales y no lineales 7/14

Última actualización: 17/04/2016

Sistemas sin solución única

X=b/AWarning: Matrix is singular

to working precision.

X = Inf Inf Inf

Se anula el determinante, matriz singular, no inversibleEn Matlab: det(A)

ans = 0

Si det → 0 , no implica que la

matriz → singular, puede depender de los coeficientes

de la matriz

Los métodos directos nos proporcionan una solución del sistema en un número finito de pasos.

Si usamos aritmética finita para los cálculos, obtendremos por lo general una solución aproximada, debido únicamente a los errores de redondeo, puesto que no hay errores de truncamiento

o de fórmula.

Los métodos directos más usados tienen como base la

eliminación de Gauss.

Métodos directos

SustituciónSi la matriz A es triangular (superior o inferior) con todas sus componentes sobre la diagonal principal no-nulas.

Como ann ≠ 0 , se puede despejar xn

de la última ecuación y obtenemos:

Este método se denominasustitución reversiva, regresiva o hacia atrás

(Aprox. n2+n operaciones)

=

−==

∑−=

11

1

mm

n

mkkmkm

m

nn

nn

a

xab

x

,...,nma

bx

=

nnnn

n22

1n11

b

b

b

x

x

x

a

aa

aaa

MM

L

MOM

K

K

2

1

2

1

2

12

000

0

Si A es triangular inferior, se despeja x1 de la primera ecuación. En este

caso se denomina sustitución progresiva o hacia adelante.

Transformaciones elementales

Operaciones que producen sistemas equivalentes:

• Intercambio: En el orden de las ecuaciones (filas), no altera el resultado. En el orden de las variables (columnas), altera el

orden de las variables en el resultado.

• Escalado: Producto de la ecuación por constante no nula

• Sustitución: Suma de la ecuación más múltiplo de otra

ecuación: Er1 = Er+c*Eq

Matriz ampliada[ ]

=

nnnn

n

b

b

aa

aa

B|A M

L

MLM

L 1

1

111

Page 8: Métodos Numéricos – Cap 4: Solución de Sistemas de ... - 2016a - 4 Sistemas ec - v2… · Métodos Numéricos – Cap 4: Solución de Sistemas de Ecuaciones lineales y no lineales

Métodos Numéricos – Cap 4: Solución de Sistemas de Ecuaciones lineales y no lineales 8/14

Última actualización: 17/04/2016

Eliminación de GaussSi la matriz A no es triangular, puede convertirse mediante el método de eliminación Gaussiana. El sistema AX= B tiene la forma:

Se elimina el coeficiente de x1 en cada una de las ecuaciones E2,E3,,..., En para obtener unsistema equivalente A(1) X = B(1 ) , realizando las transformaciones elementales.

=

nnnnnn1

n2221

1n11

n

i

b

b

b

x

x

x

aaa

aaa

aaa

:E

:E

:E

:E

MM

L

MOM

K

K

2

1

2

1

2

2

12

2

1

=

nnnnn

n22

1n11

)1(

n

)1(

i

)1(

)1(

b

b

b

x

x

x

aa

aa

aaa

:E

:E

:E

:E

MM

L

MOM

K

K

2

1

2

1

2

2

12

2

1

0

0

n,...,,i

EEa

aE )(

ii

i

32

1

1

11

1

=

Pivoteo

Si algún ajj=0 se deben intercambiar filas, si |ajj|→ 0 el intercambio de filas disminuye el error

(Operaciones aproximadas:2/3 n3+ 5/2 n2 - 1/6 n)

Luego se elimina el coeficiente de x2 en las ecuaciones E3 , E4....

Y así sucesivamente hasta eliminar el coeficiente de xn-1. En general:

n,...,ji,EEa

aE j

i

)j(

j)j(

jj

)j(

ijj

i 11

1

1

1 +=→

− −

Ejemplo

E1: 10*x1 – 7*x2 = 7

E2: -3*x1 + 2*x2 + 6*x3 = 4

E3: 5*x1 - x2 + 5*x3 = 6

6

4

7

515

623

0710

3E

2E

1E

Matriz ampliada [A|B]

pivote

multiplicador

E1*(5/10)E3E3

E1*3/10)(E2E2

2.5

6.1

7

52.50

60.10

0710

E3

E2

E1

(1)

(1)

(1)

(1)

(1)

−=

−−=

−El coeficiente 10

de x1 es el pivote y–0.3 y 0.5 los

multiplicadores

6.2*x3 = 6.2 ⇒ x3 = 1. 2.5*x2 + (5)*(1) = 2.5 ⇒ x2 = -1. 10*x1 + (-7)*(-1) = 7 ⇒ x1 = 0.

'3E*)5.2/1.0('2E'2E2.6

5.2

7

2.600

55.20

0710

'2E

'3E

'1E

1.6

5.2

7

61.00

55.20

0710

'2E

'3E

'1E

)1()1()2()2(

)2(

)2(

)1(

)1(

)1(

−−=

Intercambio de filas

(1)(1)(2)(2)

(2)

(2)

E2*0.1)(2.5/E3E3155

6.1

7

15500

60.10

0710

E3

E2

E1

−−=

Pivote 2.5Multiplicador –0.04

6

4

7

515

623

0710

3E

2E

1EEjemplo (cont):

Pivote 6.2

Factorización LU

L contiene los multiplicadores utilizados en la eliminación,U la matriz final de coeficientes y P describe las permutaciones.LU = PA

AX = b1 ⇒ PAX = P b1

⇒ LUX = P b1

⇒ UX = L- 1 P b1 = c⇒ Lc = P b1

Los pasos a seguir son:Paso 1. Calcular P b1 .Paso 2. Resolver c, en Lc = P b1 por sustitución progresiva.

Paso 3. Resolver X, en UX = c por sustitución regresiva.

=

=

−−

=

010

100

001

2600

5520

0710

104030

0150

001

P,

.

.U,

..

.LMultiplicadores

Pivotes

Siendo b1 un nuevo término independiente

Page 9: Métodos Numéricos – Cap 4: Solución de Sistemas de ... - 2016a - 4 Sistemas ec - v2… · Métodos Numéricos – Cap 4: Solución de Sistemas de Ecuaciones lineales y no lineales

Métodos Numéricos – Cap 4: Solución de Sistemas de Ecuaciones lineales y no lineales 9/14

Última actualización: 17/04/2016

Ejemplo LU

=

−=

−−=

010100

001

26005520

0710

1040300150

001

P,.

.U,..

.L

1er Ejemplo

6

4

7

515

623

0710

3E

2E

1E

2do Ejemplo con términos independientes cambiados

5

6

9

515

623

0710

3E

2E

1E

Lc=Pb, UX = c

{ {

{

−−

=

=−=

−=

=

=

++=−==

=

−−

41.162.293.0

2.6/72.85.2/)41.1*55.0(

10/)62.2*79( ,

72.850.000.9

*2.600

55.200710

72.8

50.000.9

5*04.09*3.06c

9*5.059

,

6

59

*

0.104.03.0

00.15.0000.1

3

2

1

3

2

1

3

2

1

3

2

1

3

2

1

*

3

2

1

x

xx

xx

x

xxx

c

cc

cc

c

cc

cXU

cbPcL

321444 3444 21

3214444 34444 21

Casos particularesSi A es una matriz tridiagonal y E.D.D. por filas, podemos usar eliminación Gaussiana simple para resolver el sistema. O resolverlo a partir de la factorización directa A = LU.

Si A es una matriz real, simétrica y definida positiva (pivotes positivos), entonces A tiene una única factorización de la forma A = LLT . Esta factorización se conoce como factorización de Choleski.

ni

cd

ad

c

c

c

UL

da

cda

cda

cda

cd

A iiii

i

ii

n

nn

n

n

nn

nnn ,...,,3200

0

00

00

100

0100

0

01

001

00

0

00

00

1

1

11

11

22

11

1

3

2

111

333

222

11

====

γγγγ−−−−====αααααααα

====γγγγ

====αααα

αααα

αααα

αααα

αααα

====

γγγγ

γγγγ

γγγγ

γγγγ

====

==== −−−−

−−−−

−−−−−−−−−−−−−−−−−−−−−−−−

LL

OM

OO

MOOOOM

ML

L

LL

L

MOOOOM

OO

ML

LL

LL

OOM

MOOOOM

MO

L

LL

niIaI

ijI

IIa

I

I

II

III

IIII

IIII

III

II

I

aaaa

aaaa

aaaa

aaaa

Ai

k

ikiiii

jj

j

k

jkikij

ij

,...,1,

1,...,2,,

000

00

0

0

00

000

1

1

2

1

1

44

4333

423222

41312111

44434241

333231

2221

11

44434241

34333231

24232221

41312111

=−=

−=

=

=

=

=

=

Otras posibilidades a partir del método de eliminación de Gauss

• Eliminación de Jordan: Se genera una matriz diagonal para eliminar la sustitución. Se eliminan elementos arriba y abajo del pivote.

• Inversión de matrices: A partir de [A|B], con B matriz identidad, aplicando Jordan y escalado, se obtiene [I|B’] con B’inversa de A.

• Determinante: A partir de la matriz triangulada det(A)=(-1)r Πaii , con r = nro. Intercambios de filas.

• Factorización LU: Permite reservar los parámetros de la eliminación de Gauss, para ser aplicados en la resolución de sistemas con igual matriz A.

Funciones MATLAB

[L,U,P] = LU(A) Donde A puede ser una matriz rectangularL es la matriz triangular inferior de LU con elementos 1 en la diagonal

U es la matriz triangular superior de LUP es la matriz de permutaciones tal que P*A = L*U.

X=U\(L\b)

R = CHOL(X) Factorización Cholesky. A=R’*R

X=R\(R’\b)

Page 10: Métodos Numéricos – Cap 4: Solución de Sistemas de ... - 2016a - 4 Sistemas ec - v2… · Métodos Numéricos – Cap 4: Solución de Sistemas de Ecuaciones lineales y no lineales

Métodos Numéricos – Cap 4: Solución de Sistemas de Ecuaciones lineales y no lineales 10/14

Última actualización: 17/04/2016

Matrices ralas

Las matrices asociadas con los sistemas de ecuaciones lineales se clasifican en densas y ralas (sparse).

Las matrices densas tienen pocos elementos nulos y su orden es relativamente pequeño (≤ 100 ). Para resolver sistemas con matrices densas pueden ser utilizados los métodos directos.

Las matrices ralas tienen pocos elementos no nulos y surgen, por ejemplo, al resolver ecuaciones diferenciales por métodos de diferencias finitas; su orden puede ser muy grande. Para resolver sistemas con matrices ralas son recomendados los métodos iterativos.

Matlab, de todos modos, posee funciones para trabajar con matrices ralas (consideradas un tipo de dato) y particularmente para resolver

sistemas de ecuaciones con métodos directos. ( luinc, cholinc ).

Condicionamiento del Sistema

0 1 2 3 4 50

1

2

3

4

5

-1/2*x+y=1

-1/2*x+y=1/2

0 1 2 3 4 50

1

2

3

4

5

-1/2*x+y=1

-x+2*y=2

0 1 2 3 4 50

1

2

3

4

5

-1/2*x+y=1

-2.3/5*x+y=1.1

0 1 2 3 4 50

1

2

3

4

5

-1/2*x+y=1

3*x+2*y=18

Sin solución ∞ soluciones

Solución únicaBien condicionado Mal condicionado

Condicionamiento del sistema

Si X es solución exacta de un sistema lineal AX= b , A invertible, b ≠ 0 , yX~ es una solución aproximada de dicho sistema,

⇒ e = |X~ - X| es el vector error de X (desconocido) y

R = AX~ − b es el vector error residual, mide hasta dónde la solución aproximada X~ satisface el sistema

Si R = 0 ⇒ X~ = X ⇒ e = 0

X~ tal que AX~ = R + b y X~ es solución de una perturbación del

sistema AX = b.

Si R "pequeño" ⇒ e también "pequeño“?

Sistemas mal condicionadosEjemplos: X=[x;y]

1) x + y = 2

10.05x +10y = 21.

Una perturbación de aprox. .2% en el término independiente, muestra un cambio relativo aproximado de 66% en el valor de X.

−=

18

201X

−=

−=

10

10

111 XX~

e

Cambio relativo de aprox el 50%en la solución

Perturbando en aprox. .5% un coeficientex + y = 210.1x +10y = 21

−=

8

101X

~

2)

=

=

=+

=+

=

=+

=+

97

66

97

34

796679

1148214

0

1

796679

148214222

.

.e

.

.X~

.y.x.

.y.x.X

.y.x.

.y.x.

Page 11: Métodos Numéricos – Cap 4: Solución de Sistemas de ... - 2016a - 4 Sistemas ec - v2… · Métodos Numéricos – Cap 4: Solución de Sistemas de Ecuaciones lineales y no lineales

Métodos Numéricos – Cap 4: Solución de Sistemas de Ecuaciones lineales y no lineales 11/14

Última actualización: 17/04/2016

Sistemas bien condicionados

Ejemplos:

3) 4 x + 5 y = 14

10 x + 6 y = 22 3

1

2X

=

Perturbando en aprox. 11% un coeficiente4.5 x + 5 y = 1410x + 6 y = 22 3

1.13041.7826

X

= %

3 3 3

0.1304

0.2174

e X X= −

= −

%

Cambio relativo de aprox el 15 % en la solución

( ) ( )

~

3 3

3 3

4 5 1.1304 14 13.4346 14 -0.56541)

10 6 1.7826 22 21.9996 22 .0004

max .1304 , .2174 .2174 , max -.5654 , .0004 .5654

R AX b

e R∞ ∞

= − = − = − = −

= − = = − =

( ) ( )

~

1 1

1 1

1 1 10 2 2 2 01)

10.05 10 8 21 20.5 21 .5

max 10 ,10 10 , max 0 , .5 .5

R AX b

e R∞ ∞

= − = − = − = − −

= − = = − =

( ) ( )

~

2 2

1 1

4.1 2.8 .34 4.11 4.11 4.1 .012)

9.7 6.6 .97 9.7 9.7 9.7 0

max .34 , .97 .97 , max 0.1, 0 .01

R AX b

e R∞ ∞

= − = − = − =

= = = =

El error en la solución es “grande” y el error residual es “pequeño”.

Se puede probar que: “pequeño” “pequeño”

si se satisface la condición A A− ≈1 1

Ejemplos (cont.): Error residual

R e

b X⇒

Número de Condición

El número resultante de ||A|| || A-1|| se llama Número de Condición (Cond(A)) de la matriz no-singular A, relativo a una norma matricial.Cond (A) ≥ 1, cualquiera sea la norma matricial inducida.

Si Cond (A) ≈ 1⇒ A está bien condicionada (el sistema AX =b está bien condicionado).

Si Cond (A) >> 1, A está mal condicionada, es posible que A tenga un malcomportamiento, en el sentido que un error residual relativo pequeño puede corresponder a una solución aproximada mala (el sistema AX= b está malcondicionado).

1y00

11 ===≤=≠≠

−−

X

Xmax

X

XImaxIAAI,AAI

xn

xnnn

1 1 1 1 200 20* 20.05 * 221 4431.05 1

10.05 10 10.05 10 201 20cond

∞ ∞

− = = = >> −

1)

Relación residuo – Error solución

• La relación entre y es:

)A(cond*b

R

X

e

)A(cond*

b

R≤≤

1

R e

b X

R e

b X⇒

1)6

7

0.5 1 0.5* * 4431.05 5.37 *10 105.50

21 4431.05 21

0.01 1 0.01* * 2249.4 4.5831*10 2.2494

9.7 2249.4 9.7

.5654 1 .5654* 6.6575 0.0039 0.0257

22 6.6575 22

X X X X

X X

X X X X

X X

X X X X

X X

− −≤ ≤ ⇒ ≤ ≤

− −≤ ≤ ⇒ ≤ ≤

− −∗ ≤ ≤ ⇒ ≤ ≤

% %

% %

% %

2)

3)

Page 12: Métodos Numéricos – Cap 4: Solución de Sistemas de ... - 2016a - 4 Sistemas ec - v2… · Métodos Numéricos – Cap 4: Solución de Sistemas de Ecuaciones lineales y no lineales

Métodos Numéricos – Cap 4: Solución de Sistemas de Ecuaciones lineales y no lineales 12/14

Última actualización: 17/04/2016

Cota del error relativo

Dado un sistema AX =b , si δA y δb denotan perturbaciones en A y brespectivamente, se puede establecer una cota para el error relativoen términos de las perturbaciones relativas y la condición de A.

Si X es la solución exacta de AX =b y X~ es la solución exacta del

sistema perturbado (A+δA) X~= b + δb.

Si A es no-singular, (lo que asegura que A + δAes invertible y que

⇒1 0− >cond A

A

A( )

δ

δAA

<−

11

( )

1 ( )

X X b ACond A

AX b ACond A

A

δ δ

δ

− ≤ +

%

1 1

1 1 11) 0.05, 0.0045,

221

0.012) 0, ( )* ( )* 2249.4*0.001=2.2494

9.7

A AA A

X XbA cond A cond A

b X

− −δ = = = δ >

−δδ = = = ≥

%

Métodos Indirectos

En los métodos iterativos o indirectos se parte de una aproximación inicial a la solución del sistema dado y se genera, a partir de dicha aproximación, una sucesión de vectores {Xn} que

deberían converger a la solución del sistema.

Además de los errores de redondeo, si se usa aritmética

finita, habrá errores de truncamiento o de fórmula.

Los métodos iterativos más simples y conocidos están

basados en Iteraciones de Punto Fijo.

Método JacobiDado un sistema AX ==== b, donde A no-singular se puede transformaren un sistema equivalente X ==== BX ++++ c para alguna matriz BJ (matriz de iteración de Jacobi) y algún vector c.

ii

iiii

ij

ij

ii

ij

n

ji1i ii

ij

ia

bc con

ji,0

ji,a

a

Ba

bx

a

ax =

=

≠−=+

−= ∑

≠=

Coeficientes de BJ

Coeficientes de c

nn

nnnnnnnnn2n21n1

nnnn2221

n1n21211n1n212111

a

xaxabbxaxaxa

a

xaxaxabxbxaxaxa

a

xaxabxbxaxaxa

1111

22

2323121222221

111

−−−−−==+++

−−−==+++

−−−==+++

KK

MM

KK

KK

n x

G(X)

Fórmula de iteración del Metodo Jacobi

Se construye entonces la sucesión de vectores {X(k)}k a partir de la fórmula de iteración X(k+1) = G(X(k)) = BX(k) + Cy se espera que "converja" a la única solución X del sistema.ii

n

ji1j

)k(

jiji

)1k(

ia

xab

x

∑≠=

+

=

ε<−

ε<−

ε<−=

)(

)1(

)1(

)()(

iii)

ii)

i)

k

k(k)

k(k)

kk

X

XX

XX

bAXR

1B con 1k,X-X B1

BX-X iii)

1k,X-X B1

BX-X ii)

1k,X-X BX-X i)

(0)(1)

k

(k)

(0)(1)

k

(k)

(0)k(k)

<≥−

≥−

≥≤

Criterios de aproximación Cotas para error de truncamiento

Page 13: Métodos Numéricos – Cap 4: Solución de Sistemas de ... - 2016a - 4 Sistemas ec - v2… · Métodos Numéricos – Cap 4: Solución de Sistemas de Ecuaciones lineales y no lineales

Métodos Numéricos – Cap 4: Solución de Sistemas de Ecuaciones lineales y no lineales 13/14

Última actualización: 17/04/2016

Convergencia Método Jacobi

||B||<1 si A es E.D.D.⇒ el método Jacobi converge a una única solución.Una matriz es Estrictamente Diagonalmente Dominante si

Si ||B||≥1 no se puede asegurar la convergencia y se debe estudiar el radio espectral ρ(B).

⇒ det(B-λI) = ecuación característica de B

y ρ(B) = max(raíces de la ec. Característica),

si ρ(B) ≥1 el método diverge

si ρ(B) <1 el método converge

||B|| depende de la reubicación de las filas

a aii ijjj i

n

>=≠

∑1

Ejemplo método Jacobi

No es E.D.D||B||∞=4 >1

Radio espectral ρ(BJ) , de la matriz de iteración BJ.r_espec = max(abs(eig(B))) ó

r_espec = max(abs(roots(poly(B))))

El método Jacobi no converge. Verificar intercambiando filas

=++=++−=+−

45330312

321

321

321

xxxxxxxxx

{ {321444 3444 21

cX

3

2

1

BX

3

2

1

5

4

0

2

1

x

x

x

05

3

5

3

301

2

1

2

10

x

x

x

1k

J

k

+

−−

−−

=

05

3

5

8

5

3

5

3

31

2

1

2

1

)I-Bdet( 3J =+λ+λ−=

λ−−−

−λ−−

−λ−

=λ421954

1.42195 1

3

2

1

.−≈λ≈λ

−≈λ

{ } 11.42195 .421954 -,1.42195,1-max)B( G >==ρ

Jacobi-Intercambiando filas…

=++

=++

−=+−

0x3xx

4x5x3x3

1xxx2

321

321

321

{ {

321444 3444 21c

X

B

X k

J

k

x

x

x

x

x

x

+

−−

−−

=

03

42

1

03

1

3

13

501

2

1

2

10

1

3

2

1

3

2

1

09

1

9

23 =+λ+λ

No es E.D.D||BJ||∞=8/3 >1 no se puede asegurar la convergencia, por lo tanto debemos encontrar el radio espectral ρ(BJ). La ecuación característica es

{ }{ } 1631096.419595,.631096.Max

i276567.155483.,i276567.315548.-,631096.Max)B(

i276567.155483.

i276567.155483.

631096.

J

3

2

1

<=≈

−−+≈ρ

−−≈λ

+−≈λ

≈λ

cuyas raíces son

Jacobi – Solución al ej.

De acuerdo al análisis de convergencia, el método iterativo de Jacobi converge a una única solución, cualquiera sea la aproximación inicial X(0) .

Iterando con el método de Jacobi, tomando como aproximación inicial X(0) = [0,0,0]’ , y usando como criterio de aproximación

||X(k) – X(k-1)|| < . 001

Obtenemos:X(1) = [-.5, 1.3333, 0]’, X(2) = [.16667, 1.8333, -.27778]’

X(15) = [.99798, 1.9990, -.99842]’ X(16)=[.99873, 1.9994, -.99901]’

Como k = 16 es el primer entero positivo para el cual

||X(k) – X(k-1)|| < . 001

X≈X(16) es solución al problema.

Page 14: Métodos Numéricos – Cap 4: Solución de Sistemas de ... - 2016a - 4 Sistemas ec - v2… · Métodos Numéricos – Cap 4: Solución de Sistemas de Ecuaciones lineales y no lineales

Métodos Numéricos – Cap 4: Solución de Sistemas de Ecuaciones lineales y no lineales 14/14

Última actualización: 17/04/2016

Fórmula vectorial de iteración del Metodo Jacobi

La matriz A puede descomponerse como: A = D +L+UDonde D es la matriz diagonal de A (diag(diag(A))),L es la matriz triangular estrictamente inferior de A (tril(A,-1)),U es la matriz triangular estrictamente superior de A (triu(A,1)),Entonces:

AX = b ⇔ (D + L + U) X = bDX + (L+U) X = bDX = -(L + U) X + bX = -D-1(L + U) X + D-1 b

X(k) = -D-1(L + U) X(k-1) + D-1 b, k = 1,2, ...

B c

[B|c] = Bc = [ -diag(1./diag(A))*(tril(A,-1)+triu(A,1)) , diag(1./diag(A))*b ]

B*X+c= X= [-diag(1./diag(A))*(tril(A,-1)+triu(A,1))*X+diag(1./diag(A))*b ]

Con b y X vectores columna

Método Gauss-SeidelUna mejora del algoritmo de Jacobi es obtener xi

(k) utilizando las x1

(k), x2(k),..., xi-1

(k), ya calculadas, ya que son mejores aproximaciones a la solución exacta.

En general para 1erIteración:

En general:

A partir de un valor inicial[x1

(0), x2(0),..., xi-1

(0)]

El análisis de convergencia coincide con Jacobi, aunque suele converger más rápido. La matriz BJ no es la misma que BGS.

22

3

02

11212

(1)2

11

2

011

(1)1

a

xaxab

x,a

xab

x

n

j

)(jj

)(n

j

)(jj ∑∑

==

−−

=

=

nn

n

j

)(jnjn

ii

n

ij

)(jij

i

j

)(jiji

a

xab

x,a

xaxab

x

∑∑∑−

=+=

=

=

−−

=

1

1

1

(1)n

1

01

1

1

(1)i

ii

n

ij

)k(jij

i

j

)k(jiji

a

xaxab

x

∑∑+=

−−

=

−−

=1

11

1(k)i

Ejemplo método Gauss-Seidel

||BG||∞ = 3 >1

Entonces el método diverge

En este caso, como la matriz BG es triangular los autovalores son los elementos de la diagonal

15

9

5

9,

2

1,0max)B( G >=

−=ρ

=++=++−=+−

45330312

321

321

321

xxxxxxxxx

{ {

32144 344 21c

X

3

2

1

B

X

3

2

1

5

42

12

1

x

x

x

5

900

2

5

2

10

2

1

2

10

x

x

x

1k

G

k

+

−−

=

5

x3x34x

,x3xx

,2

xx1x

)k(

2

)k(

1k

3

)1k(

3

)k(

1

k

2

)1k(

3

)1k(

2k

1

−−=

−−=

−+−=

−−

5

x94x

,2

x5x1x

,2

xx1x

)1k(

3k3

)1k(3

)1k(2k

2

)1k(3

)1k(2k

1

−−

−−

+=

−−=

−+−=

GS-Intercambiando filas…

=++

=++

−=+−

0x3xx

4x5x3x3

1xxx2

321

321

321

Como ||BG||∞ >1 no podemos asegurar la convergencia,

Pero ρ(BG) = Max {0,1/2,5/9} <1 entonces el método de Gauss-Seidel converge a la única solución del sistema dado, cualquiera sea la aproximación inicial.

X≈X(13) = [.99898 ,1.9996 , -.99952] es solución al problema.

{ {

32144 344 21c

X

3

2

1

B

X

3

2

1

5

46

112

1

x

x

x

9

500

6

7

2

10

2

1

2

10

x

x

x

1k

G

k

+

−−

=

Page 15: Métodos Numéricos – Cap 4: Solución de Sistemas de ... - 2016a - 4 Sistemas ec - v2… · Métodos Numéricos – Cap 4: Solución de Sistemas de Ecuaciones lineales y no lineales

Métodos Numéricos – Cap 4: Solución de Sistemas de Ecuaciones lineales y no lineales 15/14

Última actualización: 17/04/2016

Fórmula vectorial de iteración del Metodo Gauss-Seidel

( ) i)1k(

j

n

1ij

ij)k(

j

i

1j

ij

ii

n

1ij

)1k(

jij

1i

1j

)k(

jiji

(k)i bxaxa

a

xaxab

x +−=⇒

−−

= −

+==

+=

−−

= ∑∑∑∑

(D + L) X(k) = -U X(k-1) + b

X(k) = (D + L)-1 (-U) X(k-1) + (D +L)-1 b, con k=1,2,...

B c

[B|c] = Bc=[tril(A)^-1*-triu(A,1) , (tril(A))^-1*b ]

B*X+c= X=[tril(A)^-1*-triu(A,1)*X+(tril(A))^-1*b ]

Métodos iterativos

Ventajas Desventajas

• Más eficientes que los directos para sistemas de orden muy alto.

• Más simples de programar.

• Pueden encontrarse aproximaciones a la solución.

• Son menos sensibles a los errores de redondeo (importante en sist. mal

condicionados).

• Si se tienen varios sistemas que comparten la misma matriz de coeficientes, por

cada uno hay que aplicar el método.

• Aunque la convergencia esté asegurada puede ser lenta

(En Gauss no es predecible).

• No se obtiene ni det(A) ni A-1