CÁLCULO DE RAIZ DE EQUAÇÃO - LMMP –...
Transcript of CÁLCULO DE RAIZ DE EQUAÇÃO - LMMP –...
CÁLCULO DE RAIZ DE EQUAÇÃO
Necessidade de determinar a raiz de uma equação em diversos problemas de engenharia, isto é, determinar x, tal que:
0)( xf
Algumas equações mais simples possuem solução analítica, como
3 e 2065
102022
xxxx
xx
Na maioria dos casos (equação não-linear), as raizes da equação não podem ser determinadas analiticamente
Deve-se utilizar procedimentos iterativos para determinar a(s) raiz(es)
MÉTODO DE PICARD
)(0)(0)( **
)(
***
*
xgxxgxxf
xf
x* é raiz da equação f(x) = 0
PROCEDIMENTO ITERATIVO
)(
)1()(
)1()(
)1()(
)0(
:Raiz)(
1repetir , Enquanto
)(1
:inicial Chute
i
ii
ii
ii
xxgx
iixx
xgxi
x
x
)(xg
x
*xRAIZ
)0(x
)( )0(
)1(
xg
x
)2(x
)( )0(xg)( )1(xg
0 xex
xx exgex )(
EXEMPLO 1: RESOLVER
69220.0)(
36788.0)(
1
36788.0)1()2(
1)0()1(
)0(
exgx
exgx
x
n xn g(xn)0 1 0.367881 0.36788 0.692202 0.69220 0.500473 0.50047 0.606244 0.60624 0.545405 0.54540 0.579616 0.57961 0.560127 0.56012 0.571148 0.57114 0.564889 0.56488 0.56843
10 0.56843 0.5664111 0.56641 0.56756. . .
20 0.56714 0.56714
01x
12)(12 xxgxx
EXEMPLO 2: RESOLVER
6.018.02)(8.019.02)(
9.0
)1()2(
)0()1(
)0(
xgxxgx
x
n x n g ( x n )0 0 . 9 0 . 81 0 . 8 0 . 62 0 . 6 0 . 23 0 . 2 - 0 . 6
Processo iterativo diverge
PORQUE ???
x)(xg
x
*xRAIZ
)0(x
)( )0(
)1(
xg
x
)2(x
)( )0(xg)( )1(xg
DIVERGE
x
)(xg
x
*xRAIZ
)0(x
)( )0(
)1(
xg
x
)2(x
)( )0(xg
)( )1(xg
CONVERVE OSCILANDO
OSCILANDO CONVERGE0)(1
MENTEMONOTONICA CONVERGE1)(0
DIVERGE1)(
xg
xg
xg
MÉTODO DE BISSEÇÃO
SE f(x) É UMA FUNÇÃO CONTÍNUA E f(a).f(b) < 0A RAIZ DE f(x) PERTENCE AO INTERVALO (a,b)
MÉTODO DE BISSEÇÃO CRIA UMA SEQUENCIA DE INTERVALOSCADE VEZ MENOR QUE CONTENHA A RAIZ
)(xf
x
*x0a
0b
),( 00 ba
),( 11 ba
1m 2m
i
iii
ii
ii
ii
ii
ii
ii
i
i
mbam
ii
mbaa
mfaf
bbma
bfmfmf
bami
bfafba
:Raiz21
1end
then0)()( ifend
then0)()( ifdo ,)( While
211
0)()( que tal e Escolher
11
1
1
1
1
00
0000
0sin2
2
xx
EXEMPLO 3: RESOLVER
i ai-1 f(ai-1) bi-1 f(bi-1) mi f(mi)1 1.5 <0 2 >0 1.75 <02 1.75 2 1.875 <03 1.875 2 1.9375 >04 1.875 1.9375 1.90625 <05 1.90625 1.9375 1.9219
CONVERGÊNCIA EXTREMAMENTE LENTA
CONVERGÊNCIA MELHORA USANDO VALORES DE f(x)NO CÁLCULO DE mi
)()(
)()(
11
1111
ii
iiiii bfaf
bfaafbm
MÉTODO DE NEWTON-RAPHSON (DE NEWTON)
)(xf
x*x)0(x)1(x)2(x
)(
)(
)()(
tan
1
1
i
iii
iii
i
xf
xfxx
xfxx
xf
PROCEDIMENTO ITERATIVO
)1(
)()1(
)(
)(
)(
)0(
:Raiz1
)(
)(do ,)( While
0 :inicial Chute
i
ii
i
i
i
xii
xxxxf
xfx
xfi
x
0sin2
2
xx
EXEMPLO 4: RESOLVER
i xi f(xi) f’(bi) x0 1.5 0.434995 -0.67926 0.640391 2.14039 -0.30319 -1.60948 -0.188382 1.95201 -0.02437 -1.34805 -0.018083 1.93393 -0.00023 -1.32217 -0.000184 1.93375 0.000005 -1.32191
CONVERGÊNCIA RÁPIDA
O TAMANHO DO PASSO DIMINUI A CADA ITERAÇÃODE UM FATOR DE 10
0 xexEXEMPLO 5: RESOLVER
i xi f(xi) f’(bi) x0 0.01234
PROPRIEDADE DE CONVERGÊNCIA
Vamos supor que é uma raiz simples de f(x): 0)( e 0)( ff
Obter uma estimativa de erro para a aproximação xn do Método de Newton
nn x
Expandindo f(x) em série de Taylor em x=xn com um passo - xn
)(
)(
2
1lim
)(
)(
2
1
)(
)()(2
1
)(
)(
)(
)()(2
1
)()(
)(
),();()(2
1)()()(0
0)()(
22
121
2
1
2
2
1
f
f
xf
f
xf
fx
xf
xfx
xf
fxx
xf
xf
xfxxfxxf
fxxf
nn
n
xn
nn
n
n
n
x
n
nn
n
n
nn
n
nnnnn
nn
n
n
)(
)(
2
1
f
f
Quando perto da solução, o erro cai quadraticamente:
85
44
23 101010
PROBLEMAS COM O MÉTODO DE NEWTON
O chute inicial deve estar suficientemente próximo da solução
)(xf
x*x)0(x )1(x
)(xf
x
)0(x)1(x
O processo iterativo passa por umponto de máximo ou mínimo local
*x
O processo iterativo pode entrar em um ciclo que não converge
)(xf
x*x)0(x
)1(x
Os problemas com o Método de Newton podem ser resolvidos comum chute inicial perto da solução
Combinar um método com convergência global boa (mas lenta) como método de Newton (convergência global ruim, mas extremamenterápido quando perto da solução)
MÉTODO DA SECANTE
O cálculo da derivada f ’(x) pode ser muito complicado ou caro computacionalmente
Aproximar a derivada por:
1
1)()()(
ii
ii
xx
xfxfxf
PROCEDIMENTO ITERATIVO
)1(
)()1(
)1()(
)1()()(
)(
)1()0(
:Raiz1
)()()(
do ,)( While1
e :inicial Chute
i
ii
ii
iii
i
xii
xxxxfxf
xxxfx
xfi
xx
INTERPRETAÇÃO GEOMÉTRICA
)(xf
x*x)0(x)1(x)2(x
Necessita de 2 chutes iniciais
Convergência não é quadrática
0sin2
2
xx
EXEMPLO 6: RESOLVER
i xi f(xi) x0 1.0 -0.591471 2.0 0.090702345
Escreva uma rotina no SciLab para cálculo de raiz de funções usando os métodos de Bisseção e Newton.O programa principal deve fazer as seguintes tarefas:
Utilize o programa desenvolvido para determinar a raiz das equações abaixo.
(a) (b)1)( 2 xxf xexxf 21)(
Exercício
Script Principal
Método da Bisseção
Método de Newton
�M
aior parte do tempo de um
a simulação por elem
entos finitos,diferenças finitas ou outro m
étodo numérico é gasto na
resolução do sistema de equações obtido com
a discretização
�N
ecessidade de métodos robustos e rápidos
SOL
UÇ
ÃO
DE
SISTE
MA
DE
EQ
UA
ÇÕ
ES
�A
solução de um sistem
a de equações é necessária na grande maioria
dos problemas de engenharia
Problemas de interpolação e ajuste de curvas
Solução de equações diferenciais -simulação de problem
as de engenharia
SISTEMA DE n EQUAÇÕES E n INCÓNITAS
��
��
�
����
��������
nnnnnn
nnnn
bxaxaxa
bxaxaxabxaxaxa
����
2211
22222121
11212111
� Se os coeficientes aij são constantes, o sistema é dito linear
� O sistema acima pode ser representado na forma de matriz:
����
����
�
�
����
����
�
�����
�����
�
�
�
�
�
nnnnannnn
nn
nn
nn
b
bbb
x
xxx
aaaa
aaaaaaaaaaaa
���
�������
3
2
1
3
2
1
21
3133231
2122221
1111211
bAx �
MÉTODOS DE SOLUÇÃO
� MÉTODOS DIRETOS
A solução exata (a menos de erros de truncamento do computador)é determinada após um número finito de operações
Requer mais memória de armazenamentoMais robustoMais rápido
� MÉTODOS ITERATIVOS
Fornece uma sequência de soluções aproximadas que convergemquando o número de passos tende a infinito
Menor necessidade de memória de armazenamentoProblemas de convergência
MÉTODOS DIRETOSSISTEMAS TRIANGULARES
����
����
�
�
����
����
�
�����
�����
�
�
�
�
nnnn
nn
nn
nn
b
bbb
x
xxx
u
uuuuuuuuu
���
�������
3
2
1
3
2
1
313
21222
1111211
000
000
Se niuii ,,2,1,0 ��� as incógnitas podem ser facilmente calculadas
ii
n
ikkkii
i
nn
nnnnnnnnnnnn
nn
nn
u
xubx
uxub
xbxuxu
ubx
���
��
��������
��
�����
�
1,
1,1
,1111,111,1
:i linha
; :1-n linha
; :n linha
�
RETROSUBSTITUIÇÃO
Se a matriz for triangular inferior:
����
����
�
�
����
����
�
�����
�����
�
� nnnnannnn b
bbb
x
xxx
llll
llll
l
���
�������
3
2
1
3
2
1
21
3231
2221
11
0000000
A solução é calculada da seguinte forma:
ii
i
ikkkii
i l
xlbx
lxlb
xbxlxl
lbx
��
�
��
�����
�
1
,
22
11,222222,211,2
11
11
:i linha
; :2 linha
; :1 linha
�
SUBSTITUIÇÃO A FRENTE
NÚMERO DE OPERAÇÕES: ��
������n
i
nnnnin1
2
2
1)1(
2
1)1(
ELIMINAÇÃO GAUSSIANA
��
��
�
����
��������
nnnnnn
nnnn
bxaxaxa
bxaxaxabxaxaxa
����
2211
22222121
11212111
� Eliminar as variáveis de uma maneira sistemática até obter um sistema triangular, de fácil solução
Eliminar x1 das (n-1) úlimas equações
Se
����
�
����
�
�
���
����
�����
�
����
������
�
����
���
���
����
�����
�
����
������
�
����
�����
�
����
��
����
111
11
11
1212
11
121
111
2121
11
212212
11
21221
0
1111
2121
11212111
0 baabxa
aaaxa
aaax
baabxa
aaaxa
aaaxa
aaa
bxaxaxa
nnnn
nnn
nn
nnn
nn
�
�
�
�� ��� ��
�
011 �a
Eliminar x2 das (n-2) últimas equações
Se
Após o primeiro passo, o sistema fica sendo:
���
���
�
���
�������
)2()2(2
)2(2
)2(2
)2(22
)2(22
11212111
nnnnn
nn
nn
bxaxa
bxaxabxaxaxa
�
��
� Onde
nibmbbniamaa
niaam
iii
jiijij
ii
,,3,2;
,,3,2;
,,3,2;
11)2(
11)2(
11
11
�
�
�
���
���
��
0)2(22 �a
���
�
���
�
�
���
�������
�����
)3()3(3
)3(3
)3(3
)3(33
)3(33
)2(2
)2(23
)2(232
)2(22
11313212111
nnnnn
nn
nn
nn
bxaxa
bxaxabxaxaxa
bxaxaxaxa
�
��
�
�
nibmbbniamaa
niaam
iii
jiijij
ii
,,4,3;
,,4,3;
,,4,3;
)2(22
)2()3(
)2(22
)2()3(
)2(22
)2(2
2
�
�
�
���
���
��
E assim por diante, até obter um sistema da forma
���
�
���
�
�
�
������������
)()(
)3(3
)3(33
)3(33
)2(2
)2(23
)2(232
)2(22
)1(1
)1(13
)1(132
)1(121
)1(11
nnn
nnn
nn
nn
nn
bxa
bxaxabxaxaxa
bxaxaxaxa
��
�
�
O SISTEMA TRIANGULAR PODE SER FACILMENTE RESOLVIDOATRAVÉS DE UMA RETROSUBSTITUIÇÃO
� Os elementos são denominados de Pivots
� O lado direito do sistema de equações é modificado da mesma formaque os coeficientes das equações
� Melhor tratar o sistema na forma matricial, com o lado direito do sistemasendo a coluna n+1 da matriz, conforme mostrado a seguir
)1(1,1
)2(22
)1(11 ,,, �
��n
nnaaa �
�����
�����
�
�
�
�
�
nnnannnn
nn
nn
nn
b
bbb
aaaa
aaaaaaaaaaaa
��
�������
3
2
1
21
3133231
2122221
1111211niba ki
kni ,,2,1,)()(
1, ����
endend
end
1,1For
,1For 1,1For
)()()1(
)(
)(
kkjik
kij
kij
kkk
kik
ik
amaankj
aam
nkink
�����
�
����
�
end
end*
,1For 0
1,1,For
)(
)(1,
)(
iii
ini
i
ki
ik
asuma
x
xasumsumnik
sumni
��
����
���
�
ALGORÍTMO
ELIMINAÇÃO RETROSUBSTITUIÇÃO
� O maior custo computacional ocorre no processo de eliminação
� Supor que o tempo de cada operação seja de 1 microsegundo
O tempo em segundos de cada parte do algoritmo é mostrado abaixo
st 610��
NÚMERO DE OPERAÇÕES:
��
�
����1
1
331)1)((
n
k
nknkn ��
����n
i
nnni1
221
21 )1()1(
ELIMINAÇÃO RETROSUBSTITUIÇÃO
n Eliminação Retrosubstituição10 0.0050 s 0.0008 s
100 5 s 0.075 s1000 5000 s 7.5 s
PIVOTAMENTO
��
���
�
��
���
���������
122122111111
12222
1
321
321
321
xxxxxx
xxx
RESOLVER O SISTEMA POR ELMINAÇÃO GAUSSIANA
Sistema não singular, e a solução é: 1321 ���� xxx
Após o primeiro passo na eliminação, a matriz fica sendo:
0011011001111
)2(22 ��
��
���
a
A eliminação não pode continuar pelo procedimento normal.
Uma solução seria trocar a posição das linhas 2 e 3, o que já fornece a matriz triangular
��
���
�
��
���
������
���
1221220001.111111
122220001.1
1
321
321
321
xxxxxx
xxx
OUTRO EXEMPLO: RESOLVER O SISTEMA POR ELMINAÇÃO GAUSSIANA
Sistema não singular, e a solução é: 0001.1 e 1 321 ���� xxxO sistema triangular obtido após a eliminação sem troca de linhas é:
��
���
10000999900110001.001111
O processo de retrosubstituição usando uma precisão de 3 casas decimais fornece:
000.1,0 ,0 321 ��� xxx
Se as linhas 2 e 3 fossem trocadas durante o processo de eliminação, a solução também usando uma precisão de 3 casas decimais seria
000.1,000.1 ,000.1 321 ���� xxx Resultado correto usando uma precisão de 3 casas decimais
Resultado incorreto
� Para evitar falha catastrófica (divisão por zero) ou resultados erradosé necessário fazer uma escolha criteriosa dos PIVOTS usados na eliminação
PIVOTAMENTO PARCIALPIVOTAMENTO COMPLETO
PIVOTAMENTO PARCIAL
No passo k do processo de eliminação
k
r
k
rknikaa
rk
ikk
rk
e linhasTrocar
,max
que talinteiromenor o como Escolher )()(
����
�
PIVOTAMENTO COMPLETONo passo k do processo de eliminação
k
r
k
skrknjikaa
srk
ijk
rs
e colunas e , e linhasTrocar
,,max
que talinteiros menores os como e Escolher )()(
����
�
s
� A Eliminação Gaussiana deve ser feita sempre com PIVOTAMENTOpara garantir estabilidade do método
� Na grande maioria dos casos, PIVOTAMENTO PARCIAL é suficientee deve ser usada no lugar de PIVOTAMENTO COMPLETO
� PIVOTAMENTO COMPLETO não é muito usado devido ao grandetempo computacional gasto no processo de busca do pivot.
� PIVOTAMENTO não é necessário em dois casos particulares
MATRIZ DIAGONAL DOMINANTE
MATRIZ SIMÉTRICA E POSITIVA-DEFINIDA
���
��n
ijj
ijii niaa1
.,,2,1, �
0xAxxAA ����� ,0 e)( Tjiij
T aa
DECOMPOSIÇÃO LU� Muitas vezes o mesmo sistema é resolvido com
diferentes termos independente (lado direito do sistema)
� Pode-se evitar o processo repetido de eliminação gaussiana atravésde uma decomposição da matriz A
� Todo matriz não singular pode ser decomposta como o produto de uma matriztriangular inferior L e uma matriz triangular superior U
� A decomposição não é única.
�;; 2211 bAxbAx ��
�����
�
�
�����
�
�
�
�����
�
�
�����
�
�
��
� nn
n
n
n
nnnn u
uuuuuuuuu
lll
lll
000
000
;
1
010010001
; 333
22322
1131211
1,21
3231
21
��
���
��
���
ULLUA
� A matriz L corresponde aos coeficientes mik da eliminação gaussiana e a matrizU corresponde a matriz triangular superior obtida na eliminação gaussiana
� Uma vez feita a decomposição, a solução do sistema fica reduzida a soluçãode dois sistemas triangulares:
yUxbLy
bUxLy
��
��
depois e Resolver
Sistema triangular inferiorSistema triangular superior
MÉTODO DE CHOLESKI
� Matriz simétrica, positiva-definida
� Escolher L e U de forma que TLU �
nkim
mmam
mam
mumu
kk
k
pkpipik
ik
k
pkpkkkk
kppkkkkk
,,1,
e
1
1
2/11
1
2
����
�
���
����
���
��
�
��
�
�
�
MATRIZES DE BANDA
� Matrizes onde os elementos diferentes de zero estão localizados emuma banda centrada na diagonal principal da matriz
� As matrizes obtidas em resolução de um problema de valor de contornosão geralmente de banda, daí a importância do estudo deste tipo de matriz
0
0
pq qjipijaij ����� ou se 0
1 :Matriz da Banda ��� qpw
� A estrutura de banda não é perdida, se não forem realizadas nenhumatroca de linhas ou coluna (pivotamento parcial ou completo)
� As matrizes L e U serão matrizes de banda.
jipijuqjiijm
ij
ij
��������
ou se 0ou se 0
������
�
�
������
�
�
��
������
�
�
������
�
�
aaaaaaa
aaaaaaam
aamuu
aaaaaaa
aaaaaaaa
aaaaa
'''''
passo 1
EXEMPLO
� Sem pivotamentoA estrutura de banda não é perdida
� Com pivotamento (troca linha 1 e 3)A estrutura de banda é perdida
������
�
�
������
�
�
��
������
�
�
������
�
�
aaaaaaa
aaaaaaamaaamuuuu
aaaaaaa
aaaaaa
aaaaaaa
''''''
passo 1
� Os algoritmos devem ser escritos levando em conta a estrutura da matriz
� Grande economia de tempo computacional
MATRIZ TRIDIAGONAL
� Matriz de banda com p = q = 1
�����
�
�
�����
�
�
���
nn
nnnab
cab
cabca
�
���
000
000
111
222
11
� Decomposição LU da matriz triagonal:
��� ���� ���
���
��� ���� ���
���
�
���
UL
�����
�
�
�����
�
�
�����
�
�
�����
�
�
�
�����
�
�
�����
�
�
������
n
nn
n
n
nn
nnn c
cc
abcab
cabca
��
��
00000
0000
100010
0010001
000
000
11
22
11
1
2
111
222
11
nkcaba kkkkk
kk ,,3,2;,, 1
111 ������ �
�
��
�
� A solução do sistema é feita através de uma resolução de sistemas triangulares
1,2,,1,1;,
,,3,2;,
1
111
�
�
����
��
�����
�
nnixcgxgx
nigfgfg
i
iiii
n
nn
iiii
��
ANÁLISE DE ERRO DA DECOMPOSIÇÃO LU
� Considere o sistema bAx �
� Asolução do sistema sempre apresenta algum erro devido a erros de truncamento que ocorrem durante o processo
� Denominar solução obtida como
� Definir vetor resíduo como
x
xAbR ��
xx0R ��� Solução calculada é a solução exata
� Espera-se que quando o vetor resíduo seja próximo a zero, a solução calculada seja próxima da solução exata
� Isto nem sempre é verdade !
Considere o exemplo ����
����
���
��� 1440.0
8642.0 e 1441.02161.08648.02969.1 bA
Solução exata: ����
���� 0000.2
0000.2x
Solução obtida:
���
������
���
����
���
����
���
�����
�����
����
�
�
8
8
1010
4870.09911.0
1441.02161.08648.02969.1
1440.08642.0
4870.09911.0
xAbR
x
Apesar do vetor resíduo ser muito pequeno, a solução obtidanão é muito distante da solução exata
Este problema pode ser explicado analisando-se o processode eliminação gaussiana
4870.0
101440000154.01440.08642.02969.1
2161.01440.0
101440999923.01441.08648.02969.1
2161.01441.0
)2(22
)2(2
2
81
11
212
)2(2
812
11
2122
)2(22
����
���!����
���!����
�
�
abx
baabb
aaaaa
Processo de eliminação gaussiana
� Uma pequena variação no elemento 0.1441 causa uma grande variação no elemento e consequentemente em )2(
22a 2x
� Para uma análise da precisão da eliminação gaussianda,é necessário usar o conceito de norma de vetores e matrizes
NORMA DE VETOR E MATRIZ
� Escalar não negativo que em algum sentido mede a magnitude de um vetor ou matriz
� Norma p de um vetor
" # $%����� pxxxpp
npp
p 1,/1
21 �x
Norma Euclideana: p=2
Norma do máximo: p=infinito
" # 2/1222
212 nxxx ���� �x
inix
��$�
1maxx
� Propriedades de uma Norma
yxyxxx
0xx0xx
����
����escalar ,
se ,0 e se ,0
���
� Norma de uma Matrizx
AxA
0x�� max
Para Norma do máximo, pode-se mostrar que
Relação entre a norma de um vetor e de uma matriz:
��
��$�
n
jijni
a1
1maxA
xAAx �
ANÁLISE DE PERTURBAÇÃO
� Analisar o efeito de pequenas perturbações na matriz A e vetor b na solução x
" #
AA
AAxx
xxxAAx
xxAAxxxAxAbxxAA
bAxbAxbbxxAbAxbAx
A
11
11
1
&&
&&&&
&&&&&&&&
&&&&&&
�����)(
1 )(0)()(
)()(
K
��
�
��
�
��
���
�����������
����������
bb
Axx
xAbAxb&&
)( Como K�����
Se o condicionamento da matriz for alto, pequenas perturbaçõesna matriz A e no vetor b provacam grandes perturbações na solução
A Matriz é dita mal-condicionada e a solução do problema torna-se imprecisa
Condicionamento da matriz
� Para determinar o condionamento de uma matriz é necessário calculara norma da matriz inversa, que normalmente não é conhecida
� No exemplo anterior:
dacondiciona-mal Matriz 103.3)(
1671.2)8648.02969.1(
10513.110)2161.02969.1(
2969.12161.08648.01441.010
8
881
81
�!�����
!�!���
����
���
�!�
�
�
AAA
A
K
Escreva uma rotina MatLab para solução de um sistema linear sem pivotamento e uma outra com pivotamento parcial. Escreva um programa principal que realize as seguintes operações:
1. Defina a matrix A e o vetor b do sistema linear Ax = b, onde
2. Chame a função para solução do sistema sem pivotamento
3. Chame a função para solução do sistema com pivotamento
Explique o que ocorreu.
���
���
�
�
��
���
���
�
���
��
139
120
119
;
212.1411.6
71.1203.3
141.1203.3
bA
Exercício 1
Modifique a rotina desenvolvida de forma a resolver o sistema linear Ax = b, onde
Observe que a solução exata do sistema é
Exercício 2
MÉTODOS ITERATIVOS
Fornece uma sequência de soluções aproximadas que convergemquando o número de passos tende a infinito
Usado para matrizes esparsas e grandes Menor necessidade de memória de armazenamentoEliminação Gaussiana “enche” a matrizProblemas de convergência
xx
xxxx
�
����
$�
)(
)()2()1()0(
lim k
k
k�
Chute inicial
No Método de Jacobi, a sequência de aproximações é obtida por:
nia
bxa
xii
i
n
ijj
kjij
ki ,,2,1 para,
1
)(
)1( ��
��
�
���
�
MÉTODO DE JACOBI
O sistema de equações pode ser escrito como
nia
bxa
xbxaxa
nibxa
ii
i
n
ijj
jij
i
n
ijj
ijijiii
i
n
jjij
,,2,1 para,
,,2,1 para,
1
1
1
�
�
�
��
����
��
��
�
��
��
�
MÉTODO DE GAUSS-SEIDEL
No método de Jacobi, os novos valores de x só são usados no próximo passo
No método de Gauss-Seidel, os novos valores de x são usados a medida que eles são obtidos
nia
bxaxaxbxaxaxa
nibxa
ii
i
n
ijjij
i
jjij
ii
n
ijjijiii
i
jjij
i
n
jjij
,,2,1 para,
,,2,1 para,
1
1
1
1
1
1
1
�
�
�
���
�����
��
����
�
��
�
�
��
�
�
�
Para j<1, os novos valores de xj já foram calculados
No Método de Gauss-Seidel, a sequência de aproximações é obtida por:
nia
bxaxax
ii
i
n
ij
kjij
i
j
kjij
ki ,,2,1 para,1
)(1
1
)1(
)1( ��
���
���
��
�
�
�
�
EXEMPLO: Resolver Ax = b���
�
�
���
�
��
���
�
�
���
�
�
������
���
1021
;
411014011041
0114
bA
���
�
�
���
�
��
0000
:inicial Chute )0(x
����!�!��!��
�
��������
)2(2
)2(1
)1(4
)1(3
)1(2
)1(1
;375.04
125.0)0.0(0.0)1(5.0)1(
25.04
1;0.0
4
0;5.0
4
2;25.0
4
1
xx
xxxx
MÉTODO DE JACOBI
k X1(k) X2
(k) X3(k) X4
(k)
0 0.0 0.0 0.0 0.01 0.25 0.5 0.0 0.252 0.375 0.625 0.125 0.3753 0.4375 0.6875 0.1875 0.4375
8 0.49805 0.74793 0.24793 0.49805
MÉTODO DE GAUSS-SEIDEL
40625.04
10625.0)1(5625.0)1(;0625.0
4
025.0)1(
;5625.04
225.0)1(;25.0
4
1
)1(4
)1(3
)1(2
)1(1
��!��!��
���!��
�
��!��
���
xx
xx
k X1(k) X2
(k) X3(k) X4
(k)
0 0.0 0.0 0.0 0.01 0.25 0.5625 0.0625 0.406252 0.40625 0.70312 0.20312 0.476563 0.47656 0.73828 0.23828 0.49854
5 0.49854 0.74927 0.24927 0.49963
De um modo geral, os dois métodos podem ser escritos como
Os diferentes métodos possuem diferentes formas para matriz B e o vetor c.
cxBx ��� )()1( kk
Uma matriz A pode ser decomposta na soma de três matrizes:
Diagonal + Triangular Superior + Triangular Inferior
)( UILDA ���
� O Método de Jacobi pode ser escrito como:
" # bDxULx 1)()1(1
)(
)1( ,,2,1 para, ����
� ������
��
�
�kk
ii
i
n
ijj
kjij
ki ni
a
bxa
x �
� O Método de Gauss-Seidel pode ser escrito como:
bDUxLxx 1)()1()1(
1
)(1
1
)1(
)1( ,,2,1 para,
���
��
�
�
�
�
����
��
���
���
kkkii
i
n
ij
kjij
i
j
kjij
ki ni
a
bxaxax �
" # ULIB 1����GS
" #ULB ���J
ANÁLISE DE CONVERGÊNCIA
cxBx ��� )()1( kk
Se x é solução do sistema Ax = b : cxBx ��
O erro de cada aproximação x(k) é obtido pela subtração das equações
)()()( )0(1)1(2)()1( xxBxxBxxBxx �������� ��� kkkk �
Vamos supor que B tenha n autovetores linearmente independentes. Essesn vetores formam uma base do espaço vetorial. Qualquer vetor podeser escrito como uma combinação linear dos autovetores.
n
n
uuu ,,, :sAutovetore
,,, :sAutovalore
21
21
�
� '''
nknn
kkk
nnn
nn
nn
uuuxx
uuuxx
BuBuBuxxBxx
uuuxx
1
1
1
1
'�'�'�
'�'�'�
���
���
�����
������
��������
�����
�
�
�
�
�
22211)(
22211)1(
221)0()1(
221)0(
)(
O processo iterativo converge somente se somente se 1B %)((
� Raio Espectral de B: 1)(max)(1
%���
BB ini'(
Os autovalores de B não são conhecidos e esta condição não é facilmenteaplicada. Uma condição suficiente que pode ser aplicada é quepara o processo iterativo convergir: 1%B
A taxa de convergência é dada por " #)(log10 B(��R
MÉTODO DE JACOBI
" #ULB ���J 0, ���� iiii
ijij bji
aa
b ���
���
n
ijj ii
ij
niJ a
a
11maxB
Se B for diagonal-dominante Converge Processo1 �%JB
MÉTODO DE GAUSS-SEIDEL
" # ULIB 1����GSxBy
xy
Bx GS
n
ijj
GS �� ��� $
$
�,max
10
dominante diagonalfor se converge Processo1
max
, onde,
1
1
11
1
1
11
AB
xyy
y
��
�
�����
�����
��$
�
���$$$
��
�
��$
��
���
i
iniGS
i
j ii
iji
n
ij ii
ijikkk
n
ijjkj
i
jjkj
n
jjkjkk
sr
a
as
a
arrsy
xbybxbyy
MÉTODO SOR (SUCCESSIVE OVERRELAXATION)
� Modificação do Método de Gauss-Seidel para melhorar a taxa de convergência
ii
i
n
ij
kjij
i
j
kjij
ki
ki
ki
ki
ii
kiii
ii
ik
iii
n
ij
kjij
i
j
kjij
ii
i
n
ij
kjij
i
j
kjij
ki
a
bxaxarrxx
axa
a
bxaxaxa
a
bxaxax
���
���
�
����
�
���
�
��
����
�
�
�
�
�
��
�
�
�
��
�
�
�
�
)(1
1
)1(
)()()()1(
)(
)(
1
)(1
1
)1(
1
)(1
1
)1(
)1(
onde,
)()()1( SOR ki
ki
ki rxx )��� � )*++Parâmetro de Relaxação
, -20
)1()( 1
%%
���� �
))))) UILIB
Resolva o sistema linear Ax = b utilizando os métodos de Jacobi e Gauss-Seidel
Observe que a solução exata do sistema é
Exercício 3
Solução de Sistema de Equações Não-Linear
Método de Picard:
1. Chute inicial;
2. Calcular coeficientes da matriz usando o valor atual das incógnitas;
3. Resolver o sistema de equações e determinar o novo valor dasincógnitas;
• Comparar solução atual com anterior;
• Se não covergiu, voltar para 2.
, -)0()0(3
)0(2
)0(1
)0( ,,,, Nuuuuc ��
" #)(kcAA �
" #" # fcAc kk 1)()1( �� �
Convergência Ruim
)(xAAbAx
��
Método de Newton:
Generalização do Método de Newton para 1 equação não-linear
" # " # " # " #" # " # " #
" #" #xfxfx
xfxxfxxfxfxxfxxfxxf
.��
.�����..�.���
/
/////
0
2 �
PROCEDIMENTO ITERATIVO
)1(
)()1(
)(
)(
)(
)0(
:Raiz1
)(
)(do ,)( While
0 :inicial Chute
�
���
/��.
��/
��
i
ii
i
i
i
xii
xxxxfxf
x
xfi
x
0
���
�
���
�
�
�
���
0),,,,(
0),,,,(
0),,,,(
0),,,,(
321
3213
3212
3211
NN
N
N
N
xxxxf
xxxxfxxxxfxxxxf
�
�
�
�
�Sistema a ser resolvido:
Expansão por série de Taylor até termos de primeira ordem de cada equação:
NN
NNNNN
NNN
NN
N
NN
NN
N
NN
xxfx
xfx
xfxxxf
xxxxxxf
xxfx
xfx
xfxxxf
xxxxxxf
xxfx
xfx
xfxxxf
xxxxxxf
///
///
///
///
///
///
11
��11
�11
�
�����
11
��11
�11
�
�����11
��11
�11
�
�����
��
�
�
��
�
��
�
22
11
21
2211
22
2
21
1
2212
22112
12
2
11
1
1211
22111
),,,(
0),,,(
),,,(
0),,,(
),,,(
0),,,(
NN
NNNNN
NN
N
NN
N
xxfx
xfx
xfxxxf
xxfx
xfx
xfxxxf
xxfx
xfx
xfxxxf
///
///
///
11
��11
�11
��
11
��11
�11
��
11
��11
�11
��
��
�
��
��
22
11
21
22
2
21
1
2212
12
2
11
1
1211
),,,(
),,,(
),,,(
fJx
f
ff
x
xx
xf
xf
xf
xf
xf
xf
xf
xf
xf
f
N
x
N
J
N
NNN
N
N
1
2
1
2
1
21
2
2
2
1
2
1
2
1
1
1
��
����
����
�
��
����
����
�
��������
��������
�
11
11
11
11
11
11
11
11
11
/
/
//
/
�
���
�
���� ����� ��
�
�
�
�Sistema emForma matricial
Matrix Jacobianaj
iij x
fJ11
�
PROCEDIMENTO ITERATIVO
" #
)1(
)()1(
1
)(
)0(
:Raiz
1
do , While
0
:inicial Chute
�
�
�
����
��
�
�
i
ii
i
cii
xcc
fJx
cf
ic
/
/
0
Solução de um sistema linear
Convergência Quadrática
Exemplo: Resolver o sistema abaixo pelo (a) método de Picard e(b) método de Newton
��
���
��
��
54
322
2
yxxyxy