elementos de análise numéricasistemas lineares -matrizes e operações com matrizes -forma geral...

34
Elementos de Análise Numérica Sistemas lineares -matrizes e operações com matrizes -forma geral de sistemas de equações lineares -solução gráfica -métodos directos -regra de Cramer -Gauss (pivotagem) -matriz inversa (Gauss-Jordan) -factorização LU -análise dos erros (número de cond. da matriz) -métodos iterativos -Gauss-Siedel -Jacobi -Sistemas especiais Resolução de sistemas de equações lineares Pontos mais importantes: 1

Upload: internet

Post on 21-Apr-2015

115 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Elementos de Análise NuméricaSistemas lineares -matrizes e operações com matrizes -forma geral de sistemas de equações lineares -solução gráfica -métodos

Elementos de Análise NuméricaSistemas lineares

-matrizes e operações com matrizes-forma geral de sistemas de equações lineares-solução gráfica-métodos directos

-regra de Cramer-Gauss (pivotagem)-matriz inversa (Gauss-Jordan)-factorização LU -análise dos erros (número de cond. da matriz)

-métodos iterativos-Gauss-Siedel-Jacobi

-Sistemas especiais

Resolução de sistemas de equações lineares

Pontos mais importantes:

1

Page 2: Elementos de Análise NuméricaSistemas lineares -matrizes e operações com matrizes -forma geral de sistemas de equações lineares -solução gráfica -métodos

Elementos de Análise NuméricaSistemas lineares

Representação geral de sistemas lineares

-procuramos os valores de x1, x2,........,xn que satisfaçam simultaneamente as funções seguintes:

f1(x1, x2,........,xn )=0f2(x1, x2,........,xn )=0...fn(x1, x2,........,xn )=0

-sistemas lineares (fi (1<i<n) são lineares):a x a x a x

a x a x a x

a x a x a x

c

c

c

n n

n n

n n nn n n

11 1 12 2 1

21 1 22 2 2

1 1 2 2

1

2

...

...

...

ou [A]nn*{x}n={c}n

-Exemplos práticos: reactores, solução numérica de eq. diferenciais, optimização,...2

Page 3: Elementos de Análise NuméricaSistemas lineares -matrizes e operações com matrizes -forma geral de sistemas de equações lineares -solução gráfica -métodos

Elementos de Análise NuméricaSistemas lineares

Solução gráfica

-aplicação para n=2 a x a x

a x a x

c

c

x

x

a

ax

c

aa

ax

c

a

11 1 12 2

21 1 22 2

1

2

2

2

11

121

1

12

21

221

2

22

x2

x1

solução-sistemas singulares:

-sem solução: decl. iguais -infinit num.de sol.: decl.

e intercep. iguais

-mal condicionados:-próximo de singulares-extremamente sens. a erros

3

Page 4: Elementos de Análise NuméricaSistemas lineares -matrizes e operações com matrizes -forma geral de sistemas de equações lineares -solução gráfica -métodos

Elementos de Análise NuméricaSistemas lineares

Métodos de solução

1, Métodos directos: -solução por eliminação de incógnitas-solução “exacta” num número fin. de op. aritméticas simples-regra de Cramer-eliminação Gaussiana-matriz inversa (Gauss-Jordan)-factorização LU

4

Page 5: Elementos de Análise NuméricaSistemas lineares -matrizes e operações com matrizes -forma geral de sistemas de equações lineares -solução gráfica -métodos

Elementos de Análise NuméricaSistemas lineares

Factorização LU (decomposição triangular)

-só envolve operações com a matriz dos coeficientes

-adequada para resolver sistemas com a mesma matriz dos coef. (várias

vectores de segundos membros)

-consequentemente mais eficiente que o método de Gauss-Jordan

-com certas modificações simples permite calcular a matriz inversa de

[A]

-necessita de uma estratégia de pivotagem como os outros métodos

directos

-a eliminação Gaussiana pode ser usada como um método LU

5

Page 6: Elementos de Análise NuméricaSistemas lineares -matrizes e operações com matrizes -forma geral de sistemas de equações lineares -solução gráfica -métodos

Elementos de Análise NuméricaSistemas lineares

Factorização LU (decomposição triangular)

[A]nn*{x}n-{c}n=0

-suponha que esta eq. pode ser reformulada como:

1

0 1

0 0 1

12 1

2

1

2

1

2

a a

a

x

x

x

d

d

d

n

n

n n

ou [U]nn*{x}n-{d}n=0

-suponha também que existe uma matriz triangular inferior:

L

l

l

l ln n nn

11

21 22

1 2

0 0

1 0

1

tal que: [L] nn([U]nn*{x}n-{d}n)= [A]nn*{x}n-{c}n

então: [L] nn[U]nn=[A]nn

e [L] nn {d}n ={c}n6

Page 7: Elementos de Análise NuméricaSistemas lineares -matrizes e operações com matrizes -forma geral de sistemas de equações lineares -solução gráfica -métodos

Elementos de Análise NuméricaSistemas lineares

Factorização LU (decomposição triangular)

diagrama do método: [A]nn*{x}n={c}n

[U] nn [L]nn

[L] nn* {d}n ={c}n

[U]nn *{x}n={d}n

{x}

decomposição

substituição parafrente

substituição paratrás

7

Page 8: Elementos de Análise NuméricaSistemas lineares -matrizes e operações com matrizes -forma geral de sistemas de equações lineares -solução gráfica -métodos

Elementos de Análise NuméricaSistemas lineares

Decomposição Crout

-resulta uma matriz onde [U] contém 1 na diagonal

-determinação de elementos de [L] e [U] simultaneamente usando

as regras de multiplicação da matrizes: [L] nn[U]nn=[A]nn

nn2n1n

n22221

n11211

aaa

aaa

aaa

nn2n1n

n22221

n11211

lll

0ll

00l

1

0 1

0 0 1

12 1

2

u u

un

n

Algoritmo: li1=ai1 1<i<nu1j=a1j/l11 1<j<n

-repetir para j=2,3,,,n-1

l a l u

a l u

l

a l u

ij ij ik kjk

j

jk ji iki

j

jj

nn nk knk

n

1

1

1

1

1

1

para i = j, j +1,..., n

u para k = j +1, j + 2,..., n

l

jk

nn

-e

8

Page 9: Elementos de Análise NuméricaSistemas lineares -matrizes e operações com matrizes -forma geral de sistemas de equações lineares -solução gráfica -métodos

Elementos de Análise NuméricaSistemas lineares

Substituição para frente: aplicação das regras de multiplicação de matrizes

[L] nn* {d}n ={c}n

l

l l

l l l

n

n

m m mn

11 12 1

21 22 2

1 2

0 0

0

d

d

dn

1

2

c

c

cn

1

2

-algoritmo:

dc

l

c l d

l

i ij jj

i

ii

11

11

1

1

d para i = 2,3,..., ni

9

Page 10: Elementos de Análise NuméricaSistemas lineares -matrizes e operações com matrizes -forma geral de sistemas de equações lineares -solução gráfica -métodos

Elementos de Análise NuméricaSistemas lineares

Substituição para trás: aplicação das regras de multiplicação de matrizes

1

0 1

0 0 1

12 1

2

u u

un

n

x

x

xn

1

2

d

d

dn

1

2

[U]nn *{x}n={d}nx d

u x

n n

ij jj i

n

x = d para i = n -1, n - 2,...,1i i

1

-algoritmo:

10

Page 11: Elementos de Análise NuméricaSistemas lineares -matrizes e operações com matrizes -forma geral de sistemas de equações lineares -solução gráfica -métodos

Elementos de Análise NuméricaSistemas lineares

-exemplo:

0

9

10

x

x

x

226

813

731

3

2

1

- decomposição:

226

813

731

333231

2221

11

lll

0ll

00l

100

u10

uu1

23

1312

l11=a11=-1 ; l21=a21=3 ; l31=a31=6

l11u12=a12 ->u12=a12/l11=3/-1=-3

l11u13=a13 ->u13=a13/l11=7/-1=-7

l21u12+ l221 =a22 ->l22=10

l31u12+ l321 =a32 ->l32=20

l21u13+ l22u23 =a23 ->u23=2.9

l31u13+ l32u23 + l331 =a33 ->l33=-1811

Page 12: Elementos de Análise NuméricaSistemas lineares -matrizes e operações com matrizes -forma geral de sistemas de equações lineares -solução gráfica -métodos

Elementos de Análise NuméricaSistemas lineares

18206

0103

001

L

100

9.210

731

U

-Substituição para frente:

[L] nn* {d}n ={c}n

3

2

1

d

d

d

18206

0103

001

0

9

10

d1=-10/-1=10

d2=(9-310)/10=-2.1

d3=(0-610-20(-2.1))/-18=1

1

1.2

10

d

12

Page 13: Elementos de Análise NuméricaSistemas lineares -matrizes e operações com matrizes -forma geral de sistemas de equações lineares -solução gráfica -métodos

Elementos de Análise NuméricaSistemas lineares

Substituição para trás:

[U]nn *{x}n={d}n

3

2

1

x

x

x

100

9.210

731

1

1.2

10

x3=1

x2=-2.1-2.91=-5

x1=10-(-3)(-5)- (-7)1 =2

1x

5x

2x

3

2

1

13

Page 14: Elementos de Análise NuméricaSistemas lineares -matrizes e operações com matrizes -forma geral de sistemas de equações lineares -solução gráfica -métodos

Elementos de Análise NuméricaSistemas lineares

Análise dos erros e número de condição de matrizes

-a solução de um sistema linear envolve a propagação dos erros de

arredondamento, por isso deve ser considerada como uma solução

aproximada

14

-exemplo (solução exacta: x1=8 x2=0,8):

35,6

67,1

4.1000,210,1

0,10 00,205,1

2

1

21

21

x

x

xx

xx

200,00,1006,14,10

120.000,206,100,2

200,0

0,10

120,00

00,205,1

4,10

0,10

00,210,1

00,205,1

2)1(

22)1(

06,105,1

10,1

c

a

f

35,605,1

67,100,20,10

67,1120,0

200,0

1

2

x

x

Page 15: Elementos de Análise NuméricaSistemas lineares -matrizes e operações com matrizes -forma geral de sistemas de equações lineares -solução gráfica -métodos

Elementos de Análise NuméricaSistemas lineares

Análise dos erros e número de condição de matrizes

-erro de aproximação:

-resíduo da solução:

-além de aplicações em engenharia, a matriz inversa indica se um sistema

é mal condicionado (erros grandes):

e x x

R A x A x c A x

A e R

15

- A é normalizada e existem elementos em A-1 que são várias ordens de magnitude maiores que a unidade

- A* A-1 é muito diferente que I

- [A-1] -1 é muito diferente que A

Page 16: Elementos de Análise NuméricaSistemas lineares -matrizes e operações com matrizes -forma geral de sistemas de equações lineares -solução gráfica -métodos

Elementos de Análise NuméricaSistemas lineares

Análise dos erros e número de condição de matrizes

Normas de vectores e matrizes: uma função real que mede o “tamanho”

de vectores e matrizes

-a norma tem propriedades semelhantes ao valor absoluto de um número

F a b F a b ce c 2 2 2vectores: -Euclidiana:

x x x xe ii

n

1 2 nx ...x 2

1

-”uniform vector norm” (elemento de valor maior absoluto):

x x x x ii n

1 2 nx ...x max1

-norma de ordem p:

x x x xp i

p

i

n

p 1 2 nx ...x

116

Page 17: Elementos de Análise NuméricaSistemas lineares -matrizes e operações com matrizes -forma geral de sistemas de equações lineares -solução gráfica -métodos

Elementos de Análise NuméricaSistemas lineares

matrizes: -Frobenius: A aF ijj

n

i

n

2

11

Análise dos erros e número de condição de matrizes

-”uniform matrix norms”

-”row sum” (linha com maior somatório):

-”column sum”(coluna com maior somatório):

A ai n

ijj

n

max

1 1

A aj n

iji

n

11 1

max

17

Page 18: Elementos de Análise NuméricaSistemas lineares -matrizes e operações com matrizes -forma geral de sistemas de equações lineares -solução gráfica -métodos

Elementos de Análise NuméricaSistemas lineares

Análise dos erros e número de condição de matrizes

Características de normas:

( )

( )

( )

( ) *

( )

( )

( )

( , )

i a

ii a a

iii a a b

iv A A B

n

n

n

n n p p p

a e a sse a = 0

e a

e b a + b

e B A * B

(n)

(n,n)

0 0

Resumindo a relação entre erro e resíduo de uma solução aprox.:

R A x A x c A x

A e R e A R

ou 1

então:

R

Ae A R A R 1 1

18

Page 19: Elementos de Análise NuméricaSistemas lineares -matrizes e operações com matrizes -forma geral de sistemas de equações lineares -solução gráfica -métodos

Elementos de Análise NuméricaSistemas lineares

Análise dos erros e número de condição de matrizes

-erro relativo:e

x-resíduo relativo:

R

c

R

Ae A R A R 1 1

-combinando estas expressões, os limites superior e inferior do erro

relativo (desconhecido) em termos do resíduo relativo (conhecido)

podem ser escritos:

c

A x

R

c

e

x

A

x

R

cc

1

ou

11

1

A A

R

c

e

xA A

R

c onde cond(A)=||A||*||A-1||

19

Page 20: Elementos de Análise NuméricaSistemas lineares -matrizes e operações com matrizes -forma geral de sistemas de equações lineares -solução gráfica -métodos

Elementos de Análise NuméricaSistemas lineares

Análise dos erros e número de condição de matrizes

-se cond(a) é próx. de 1, então o erro relativo e o resíduo relativo têm

sempre grandezas semelhantes--------> o resíduo relativo pode ser

usado como uma estimativa do erro relativo

-quanto maior for cond(A) maior é a incerteza associada à solução

aproximada, e menos informação é obtida a partir do resíduo relativo

-é obvio que cond(A) depende da norma usada (sempre >1)

-erros de arredondamento (expressão alternativa):

e

xcond A

E

A

E A A

( )

se os elementos de A têm t algar. sign. (ij aprox. 10-t) e cond(A)=10c ----> a solução pode ser correcta ate t-c dígitos (erro de arredondamento da ordem 10c-t)

20

Page 21: Elementos de Análise NuméricaSistemas lineares -matrizes e operações com matrizes -forma geral de sistemas de equações lineares -solução gráfica -métodos

Elementos de Análise NuméricaSistemas lineares

Métodos de solução

2, Métodos iterativos: -solução por processo iterativo (um número infinito de operações)-necessita de estimativas iniciais para cada incógnita-mais adequado que os métodos directos no caso de sistemas muito grandes (n>100)-vantagem que A nunca é alterada durante o processo iterativo------> fácil “economizar” a memória-a presença de erros de arredondamento origina um limite de melhoramento-método de Jacobi-método de Gauss-Seidel

21

Page 22: Elementos de Análise NuméricaSistemas lineares -matrizes e operações com matrizes -forma geral de sistemas de equações lineares -solução gráfica -métodos

Elementos de Análise NuméricaSistemas lineares

Métodos iterativos

-métodos iterativos em forma geral: [M]{x(k+1)}={c}+[N]{x(k)}

-comparando com a expressão para sistemas lineares: [A]*{x}={c}

[A]= [M]- [N]

-a forma particular de [M] e [N] depende de método utilizado

22

Page 23: Elementos de Análise NuméricaSistemas lineares -matrizes e operações com matrizes -forma geral de sistemas de equações lineares -solução gráfica -métodos

Elementos de Análise NuméricaSistemas lineares

Método de Jacobi

[M]=[D]=diag[A]

e

[N]=[D]-[A]= -([L]+[U])

-onde [L] e [U] são matrizes triagonais (não iguais às matrizes resultantes

de decomp. LU!) com ai i=0.

-o algoritmo em termos de componentes:

ii

n

1j

kjiji

ki

1ki

ii

n

ij1j

kjiji

1ki a

xac

xxou a

xac

x

23

Page 24: Elementos de Análise NuméricaSistemas lineares -matrizes e operações com matrizes -forma geral de sistemas de equações lineares -solução gráfica -métodos

Elementos de Análise NuméricaSistemas lineares

4

5

7

x

x

x

917.0

182

35.07

3

2

1

9

x9xx7.04xx

8-

x8xx25xx

7

x3x5.0x77xx

k3

k2

k1k

31k

3

k3

k2

k1k

21k

2

k3

k2

k1k

11k

1

k=0

4444.09

)0(9)0()0(7.040x

625.08-

)0()0(8)0(250x

17

)0(3)0(5.0)0(770x

13

12

11

k=1

2972.0x

9531.0x

146.1x

23

22

21

k=2

2494.0x

031.1x

059.1x

33

32

31

k=3

2475.0x

019.1x

033.1x

43

42

41

495.0

344.0

127.0146.1

)1146.1(

ea

192.0

076.0

082.0

ea

008.0

012.0

025.0

ea

-exemplo

24

Page 25: Elementos de Análise NuméricaSistemas lineares -matrizes e operações com matrizes -forma geral de sistemas de equações lineares -solução gráfica -métodos

Elementos de Análise NuméricaSistemas lineares

Método de Gauss-Seidel

-semelhante ao método de Jacobi

-diferença: o novo valor de xi é utilizado logo na equação seguinte para

determinar xi+1 ou por outras palavras, a melhor estimativa disponível é

logo utilizada (em caso de convergência)

algoritmo:

[M]=[L]+ [D] e [N]=[D]-[A]= - [U]

x

c a x a x

ax

c a x a x

aik

i ij jk

ij jk

j i

n

j

i

iiik

ik

i ij jk

ij jk

j i

n

j

i

ii

1

1

11

1

1

1

1

1

ou x

25

Page 26: Elementos de Análise NuméricaSistemas lineares -matrizes e operações com matrizes -forma geral de sistemas de equações lineares -solução gráfica -métodos

Elementos de Análise NuméricaSistemas lineares

4

5

7

x

x

x

917.0

182

35.07

3

2

1

9

x9xx7.04xx

8-

x8xx25xx

7

x3x5.0x77xx

k3

1k2

1k1k

31k

3

k3

k2

1k1k

21k

2

k3

k2

k1k

11k

1

k=0

2694.09

)0(9875.017.040x

875.08-

)0()0(81250x

17

)0(3)0(5.0)0(770x

13

12

11

k=1

2517.0x

9976.0x

053.1x

23

22

21

k=2

2517.0x

009.1x

037.1x

33

32

31

k=3

2517.0x

01.1x

036.1x

43

42

41

07.0

123.0

05.0053.1

)1053.1(

ea

%1

0

011.0

015.0

ae

%1

0

001.0

001.0

ae

-exemplo

26

Page 27: Elementos de Análise NuméricaSistemas lineares -matrizes e operações com matrizes -forma geral de sistemas de equações lineares -solução gráfica -métodos

Elementos de Análise NuméricaSistemas lineares

Convergência de métodos iterativos

-como para o caso de funções simples não há sempre convergência

-a partida semelhança com o método de IPF o critério de conv. pode ser

definido da seguinte forma:

f

xi

ji

n

1

1 para j=1,2,...,nou a aii ijjj i

n

1

-matrizes com esta característica são chamadas diagonalmente dominantes

-condição suficiente mas não necessária

27

Page 28: Elementos de Análise NuméricaSistemas lineares -matrizes e operações com matrizes -forma geral de sistemas de equações lineares -solução gráfica -métodos

Elementos de Análise NuméricaSistemas lineares

Aceleração de convergência com relaxação

-modificação do processo no sentido de “antecipar” a evolução das

iterações:

- é o factor de relaxação e pode variar entre 0-2

-=0-1, média pesada entre o novo e o valor presente (sub- relaxação),

para evitar oscilações na solução

- =1-2 , mais peso para o novo valor , só para sistemas muito estáveis

(sobre-relaxação)

-o valor óptimo de é determinada empiricamente (excepto casos muito

simples)

x x xik

ik

ik 1 1 1 ( )

28

Page 29: Elementos de Análise NuméricaSistemas lineares -matrizes e operações com matrizes -forma geral de sistemas de equações lineares -solução gráfica -métodos

Elementos de Análise NuméricaSistemas lineares

-modificação dos métodos com o objectivo de produzir um algoritmo

mais eficaz a partir da estrutura especial da matriz

-matriz esparsa: muitos coeficientes zeros (<---> matriz densa)

-matrizes em banda: algoritmo de Thomas

-matrizes simétricas: método de Cholesky

Sistemas com matrizes especiais

29

Page 30: Elementos de Análise NuméricaSistemas lineares -matrizes e operações com matrizes -forma geral de sistemas de equações lineares -solução gráfica -métodos

Elementos de Análise NuméricaSistemas lineares

Matrizes em banda

0

0

BW

HBW

- o seu armazenamento requer muito menos

espaço de memória do que no caso geral

- o número de operações que nós

precisamos para resolver o problema é

menor do que no caso geralBW=2*HBW+1

aij= 0 onde |i-j|>HBW

30

Page 31: Elementos de Análise NuméricaSistemas lineares -matrizes e operações com matrizes -forma geral de sistemas de equações lineares -solução gráfica -métodos

Elementos de Análise NuméricaSistemas lineares

Sistemas tridiagonais (BW=3 ou HBW=1)

-sistemas tridiagonais são resultado frequente de cálculo de “splines”

e da solução numérica de equações diferenciais 1D.

-exemplo: -u´´(x)=f(x) 0<x<1 u(0)=u(1)=0

u xu u u

h

h

i i i( )*1 1

2

2

2

1

2

2

-1 0

-1 -1

0 -1 2

0

0

-1 0

0 0

0 0

-1 2 -1

-1 2

u

u

u

u

u

f

f

f

f

f

1

2

3

n-1

n

1

2

3

n-1

n

31

Page 32: Elementos de Análise NuméricaSistemas lineares -matrizes e operações com matrizes -forma geral de sistemas de equações lineares -solução gráfica -métodos

Elementos de Análise NuméricaSistemas lineares

Sistemas tridiagonais (BW=3 ou HBW=1)

-representação geral:

e

a e

0 a d

e

a d e

a d

0

a

a

a

a

d

d

d

d

d

e

e

e

e

0

1

2 2

3 3 3

n-1 n-1 n-1

n n

2

3

n-1

n

1

2

3

n-1

n

1

2

3

n-1

d

d1

2

-algoritmo de Thomas(Gauss): -eliminação:

-d´k e c´k são os coeficientes modificados-o núm. de op e proporcional com n em vez de n3 no caso de algoritmo geral de Gauss

d d

c c

para i

d da

de

c ca

dc

k kk

kk

k kk

kk

1 1

1 1

11

11

= 2,..., n fazer: -substituição para trás:

k

kkkk

nnn

d

xecx

para

dcx

1

´

:fazer 2...,1-n1,-n=i

/

32

Page 33: Elementos de Análise NuméricaSistemas lineares -matrizes e operações com matrizes -forma geral de sistemas de equações lineares -solução gráfica -métodos

Elementos de Análise NuméricaSistemas lineares

Matrizes simétricas

-matrizes simétricas: aij=aji

-desejável trabalhar só com um dos

triângulos, superior ou inferior, da

matriz de coeficientes

-o processo de eliminação produz

submatrizes também simétricas

-factorização de Choleski (adaptada

para o método LU): [A]=[L]*[L]T

[A]nn*{x}n={c}n

[L]T nn [L]nn

[L] nn* {d}n ={c}n

[L]T nn *{x}n={d}n

{x}

decomposição

substituição parafrente

substituição paratrás

33

Page 34: Elementos de Análise NuméricaSistemas lineares -matrizes e operações com matrizes -forma geral de sistemas de equações lineares -solução gráfica -métodos

Elementos de Análise NuméricaSistemas lineares

Factorização de Choleski

1k

1j

2kjkkkk

ii

1i

1jkjijki

ki

lal

e

n2,...,=k e 1-k1,2,...,=i para l

lla

l

-aplicando das regras de multiplicações de matrizes (para linha k):

ik ll= llai

1jkjij

n

1jkjjiki

-podemos chegar o algoritmo de Choleski:

-só funciona se a expressão baixo de raiz quadrado é positivo (matrizes definidas positivas)-quase duas vezes mais rápido do que método geral-pode ser mostrado que o método é numericamente estável sem pivotagem

34