Академический Документы
Профессиональный Документы
Культура Документы
MIEEC, FEUP
http://www.fe.up.pt/∼faf/mnum
Conteúdo I
1 Erros
Valores exacto e aproximado
Sistemas de vírgula flutuante
Aritmética em representações finitas
Propagação de erros no cálculo de funções
Erro no cálculo de séries
Exercícios
2 Equações não Lineares
Método das bissecções sucessivas
Método da falsa posição
Método iterativo simples
Método de Newton
Método da Secante
Ordem de convergência: definição
Raízes de Polinómios
3 Sistemas de equações não lineares
MIEEC (FEUP) MÉTODOS NUMÉRICOS 2 / 458
Conteúdo
Conteúdo II
Método iterativo simples
Método de Newton
4 Aproximação de funções
Aproximação dos mínimos quadrados
Aproximação em espaços vectoriais
Sistemas Sobredeterminados
5 Interpolação polinomial
Polinómio interpolador: unicidade e existência
Forma de Lagrange
Forma de Aitken-Neville
Forma de Newton
Diferenças divididas
Diferenças fiinitas
Interpolação directa e inversa
Dupla interpolação
Erro de interpolação
MIEEC (FEUP) MÉTODOS NUMÉRICOS 3 / 458
Conteúdo
Conteúdo III
Splines
6 Integração numérica
Regra dos trapézios
Regra de Simpson
Integração de Romberg
7 Sobre normas de vectores e matrizes
Norma de um vector
Norma de uma matriz
8 Sistemas de equações lineares
Eliminação gaussiana
Estratégias de pivotação
Erro e resíduo de uma solução aproximada
Perturbações no sistema de equações
Métodos iterativos
Inversão de matrizes
9 Integração de Equações diferenciais
MIEEC (FEUP) MÉTODOS NUMÉRICOS 4 / 458
Conteúdo
Conteúdo IV
Problema de valor inicial
Métodos de Euler
Método de Taylor
Consistência e Convergência
Métodos de Runge-Kutta
Sistemas de equações diferenciais
Equações diferenciais de ordem n
Docentes
C. Mendonça e Moura
cmm@fe.up.pt
Manuel J. Oliveira
moliv@fe.up.pt
M. Joana Peres
jperes@fe.up.pt
Fernando A. Fontes
faf@fe.up.pt
Objectivos da disciplina
Importância da disciplina
Programa
É expectável
Aulas teóricas
Aulas teórico-práticas
Ferramentas
Uso obrigatório
calculadora científica
compilador de C
Uso incentivado
aplicações de cálculo numérico e simbólico
Matlab
Maple
...
folha de cálculo
Exame Final (E )
Classificação
A classificação final é
Motivação: a nota da avaliação prática vale tanto mais quanto melhor for
a nota do exame!
Obtenção de frequência
Páginas disciplina
1 Erros
4 Aproximação de funções
5 Interpolação polinomial
6 Integração numérica
1 Erros
Valores exacto e aproximado
Sistemas de vírgula flutuante
Aritmética em representações finitas
Propagação de erros no cálculo de funções
Erro no cálculo de séries
Exercícios
4 Aproximação de funções
5 Interpolação polinomial
MIEEC (FEUP) MÉTODOS NUMÉRICOS 22 / 458
Erros Valores exacto e aproximado
Valor exacto: x
Valor aproximado: x∗
Erro (de aproximação): ∆x ∗ = x − x ∗
Δx*
x* x
Aproximação
por defeito: x∗ < x ⇔ ∆x ∗ > 0
por excesso: x ∗ > x ⇔ ∆x ∗ < 0
Erro absoluto
ε: |∆x ∗ | ≤ ε
Notação:
x = x∗ ± ε ⇔ x ∈ [x ∗ − ε, x ∗ + ε]
Erro relativo
|∆x ∗ | |∆x ∗ |
Erro relativo: ou aproximadamente
|x| |x ∗ |
Notação: x = x ∗ ± (100ε0 )% ⇔ x ∈ [x ∗ (1 − ε0 ), x ∗ (1 + ε0 )]
Notação científica
Truncatura
ignoram-se algarismos a partir do índice n + 1
Arredondamento
se 0.dn+1 dn+2 . . . > 0.5 soma-se uma unidade à casa n para
(arredondar para cima)
se 0.dn+1 dn+2 . . . < 0.5 mantém-se a casa n (arredondar para baixo)
se 0.dn+1 dn+2 . . . = 0.5 arredonda-se para cima ou para baixo ficando
a casa n par (por vezes também se arredonda para cima)
Procedimento
1 majoração de ε por um número da forma 0.5 × 10n
2 arredondar x ∗ para a casa 10n
Teorema
Seja x 6= 0. Uma aproximação de x com n algarismos significativos tem um
erro relativo inferior a 5 × 10−n .
1 Erros
Valores exacto e aproximado
Sistemas de vírgula flutuante
Aritmética em representações finitas
Propagação de erros no cálculo de funções
Erro no cálculo de séries
Exercícios
4 Aproximação de funções
5 Interpolação polinomial
MIEEC (FEUP) MÉTODOS NUMÉRICOS 31 / 458
Erros Sistemas de vírgula flutuante
β base de representação
n número de dígitos da mantissa (precisão)
m, M expoentes mínimo e máximo (gama representável)
Sistema normalizado: x = 0 ∨ d1 6= 0
overflow overflow
underflow
x, y ∈ FP ; x ◦ y ∈ FP
⇒ erros de representação
underflow e overflow
⇒ impossibilidade de representação
Vírgula flutuante
1 Erros
Valores exacto e aproximado
Sistemas de vírgula flutuante
Aritmética em representações finitas
Propagação de erros no cálculo de funções
Erro no cálculo de séries
Exercícios
4 Aproximação de funções
5 Interpolação polinomial
MIEEC (FEUP) MÉTODOS NUMÉRICOS 36 / 458
Erros Aritmética em representações finitas
1 Erros
Valores exacto e aproximado
Sistemas de vírgula flutuante
Aritmética em representações finitas
Propagação de erros no cálculo de funções
Erro no cálculo de séries
Exercícios
4 Aproximação de funções
5 Interpolação polinomial
MIEEC (FEUP) MÉTODOS NUMÉRICOS 38 / 458
Erros Propagação de erros no cálculo de funções
y* f
x x*
Estimação do erro de y∗ =f (x ∗ )
f
f
y* y*
y
y
x x* x x*
f de variação lenta f de variação rápida
∆y ∗ = y − y ∗ = f (x) − f (x ∗ ) = f (x ∗ + ∆x ∗ ) − f (x ∗ )
0
xf (x)
f (x) designa-se número de condição de f em x.
0
xf (x)
→ f (x) reduzido: a função diz-se bem condicionada
0
xf (x)
→ f (x) elevado: a função diz-se mal condicionada
Qn
Nota: os máximos são determinados em i =1 [xi − εxi , xi + εxi ]
1 Erros
Valores exacto e aproximado
Sistemas de vírgula flutuante
Aritmética em representações finitas
Propagação de erros no cálculo de funções
Erro no cálculo de séries
Exercícios
4 Aproximação de funções
5 Interpolação polinomial
MIEEC (FEUP) MÉTODOS NUMÉRICOS 46 / 458
Erros Erro no cálculo de séries
R n = S − Sn
Teorema
Seja a sucessão {an }∞n=0 decrescente e de termos não negativos, isto é,
a0 ≥ a1 ≥ . . .P
≥ an ≥ . . . ≥ 0.
Estão a série ∞ i
i=0 (−1) ai é convergente para
P um número S.
Verifica-se ainda que a soma parcial Sn = ni=0 (−1)i ai satisfaz
|S − Sn | ≤ an+1 ,
A série alternada
1 1 1 1
1− + − + − ···
3 5 7 9
é convergente para o valor π4 .
Determinar quantos termos são necessários para calcular este valor com um
erro inferior a 10−4 .
1 Erros
Valores exacto e aproximado
Sistemas de vírgula flutuante
Aritmética em representações finitas
Propagação de erros no cálculo de funções
Erro no cálculo de séries
Exercícios
4 Aproximação de funções
5 Interpolação polinomial
MIEEC (FEUP) MÉTODOS NUMÉRICOS 52 / 458
Erros Exercícios
cos(x)
Considere a relação t = y + e −yz .
(a) Determine um valor aproximado de t e um majorante para o erro
absoluto quando
1 Erros
4 Aproximação de funções
5 Interpolação polinomial
6 Integração numérica
..
.
Problema
Dada uma função f determinar s tal que f (s) = 0.
f(x)
Métodos de resolução
Directos
soluções determinadas por expressões envolvendo f
fornecem soluções exactas (usando precisão infinita)
aplicáveis apenas a alguns tipos de problemas
→ Exemplo: fórmula resolvente de equações do 2o grau
Iterativos
geram sucessões de soluções aproximadas
aplicáveis a uma vasta gama de problemas
x0 , x1 , . . . , xn , . . . → s, onde f (s) = 0
definir_estimativa_inicial;
repetir
calcular_nova_estimativa;
até verificar_critério_paragem;
1 estimativa inicial
como escolher x0 ?
2 convergência de {xn }
é convergente?
converge para uma solução?
3 critério de paragem
xn próximo de s?
f (xn ) próximo de 0?
número de iterações?
4 rapidez de convergência
quantas iterações são necessárias?
Características
aplicação geral
simples de automatizar
possibilidade de falhar zeros ⇒ ajustar passo h . . .
f(x)
s3
s1 s2 x
g(x)
h(x)
s1 s2 x
⇒ Números de Rolle de f : D → R
pontos fronteira de D
zeros da função f 0
Teorema
Se f é estritamente monótona em [a, b], então f tem no máximo um zero
em [a, b].
Teorema
Se f é diferenciável, então entre dois números de Rolle consecutivos f tem
no máximo um zero.
Estimação do erro
Teorema
f continuamente diferenciável em [a, b] tal que m1 = min |f 0 (ξ)| > 0.
ξ∈[a,b]
Seja s ∈ [a, b] tal que f (s) = 0. Então
|f (x)|
|s − x| ≤ ∀x ∈ [a, b].
m1
Critério de paragem
Parando o método quando |f (xk )| ≤ δ garante-se que
δ
|xk − s| ≤
m1
1 Erros
4 Aproximação de funções
5 Interpolação
MIEEC (FEUP) polinomialMÉTODOS NUMÉRICOS 70 / 458
Equações não Lineares Método das bissecções sucessivas
f(x)
Descrição
Parte-se de um intervalo tal que a função
tenha sinais contrários nos seus extremos.
Divide-se o intervalo a meio, escolhe-se o a
subintervalo onde a função tem sinais con- x1 b x
trários nos extremos e assim sucessivamente.
Teorema
Seja f contínua em [a, b] tal que f (a)f (b) ≤ 0 e seja s o único zero de f
nesse intervalo. Então o método das bissecções sucessivas gera uma
sucessão que converge para s.
a+b b−a
x1 = ⇒ |s − x1 | ≤
2 2
a1 + b1 b1 − a1 b−a
x2 = ⇒ |s − x2 | ≤ =
2 2 22
..
.
an−1 + bn−1 bn−1 − an−1 b−a
xn = ⇒ |s − xn | ≤ =
2 2 2n
b−a
n ≥ log2 ⇒ |s − xn | ≤ δ
δ
1 Erros
4 Aproximação de funções
5 Interpolação
MIEEC (FEUP) polinomialMÉTODOS NUMÉRICOS 77 / 458
Equações não Lineares Método da falsa posição
an f (bn ) − bn f (an )
xn+1 = an xn+1 x
f (bn ) − f (an )
bn
Este ponto corresponde à intersecção com
o eixo dos xx da recta que une os pontos
(an , f (an )) e (bn , f (bn )).
Teorema
Seja f continuamente diferenciável em [a, b] e tal que f (a)f (b) ≤ 0. Sejam
m1 = minξ∈[a,b] |f 0 (ξ)| > 0 e M1 = maxξ∈[a,b] |f 0 (ξ)|.
Então, o erro de aproximação de s, único zero de f em [a, b], pela
estimativa xn+1 satisfaz a relação
M1 − m1
|s − xn+1 | ≤ |xn+1 − xn |.
m1
Critério de paragem
M1 − m1
εn+1 = |xn+1 − xn | ≤ δ ⇒ |s − xn+1 | ≤ δ
m1
1.3
x1 x2 x3 s
Teorema
Se f for estritamente monótona e duplamente diferenciável em [a, b], se
f (a)f (b) ≤ 0 e se o sinal de f 00 não variar em [a, b], então a sucessão
produzida pelo método da falsa posição converge monotonamente para o
zero de f nesse intervalo. Também se verifica que um dos extremos do
intervalo permanece inalterado.
Fb /2
Fb /4
x1 x2 x3
x4
Teorema
Se f é contínua, estritamente monótona e tiver sinais contrários nos
extremos de um intervalo [a, b], a sucessão produzida pelo método da falsa
posição modificado converge para o zero de f em [a, b].
1 Erros
4 Aproximação de funções
5 Interpolação
MIEEC (FEUP) polinomialMÉTODOS NUMÉRICOS 92 / 458
Equações não Lineares Método iterativo simples
y =x
F (x0 )
F (x2 )
F (x1 )
y = F (x)
x0 x2 s x1
Inicialização Escolher x0
Repetir xn+1 = F (xn )
Até verificar critério de paragem
y=x
y = F(x)
x0 x1 x2 s x
Convergência monótona
y = F(x) y=x
x0 x2 s x1 x
Convergência “alternada”
y = F(x)
y=x
s x0 x1 x2 x
Divergência
Teorema
Se F é continuamente diferenciável em [a, b], maxx∈[a,b] |F 0 (x)| < 1 e
existe s ∈ [a, b] tal que s = F (s), então, para qualquer valor inicial
x0 ∈ [a, b], a sucessão gerada o método iterativo simples converge para s
(s será único! porquê?).
Majoração do erro
1−L
|xn+1 − s| ≤ |xn+1 − xn |
L
Critério de paragem
1−L
εn+1 = |xn+1 − xn | ≤ δ ⇒ |xn+1 − s| ≤ δ
L
1 Erros
4 Aproximação de funções
5 Interpolação
MIEEC (FEUP) polinomialMÉTODOS NUMÉRICOS 103 / 458
Equações não Lineares Método de Newton
Método de Newton
f (x)
s x2 x1 x0
Inicialização Escolher x0
f (xn )
Repetir xn+1 = xn −
f 0 (xn )
Até verificar critério de paragem
y = f(x)
s x1 x0 x2 x
Anulamento da derivada
y = f(x)
x1
s x0 x2 x
Mudança de concavidade
Teorema
Seja f ∈ C 2 ([a, b]; R) tal que f 0 (x) 6= 0, e f 00 (x) ≤ 0 ou f 00 (x) ≥ 0 em
[a, b]. Seja ainda s o (único) zero de f em [a, b]. Então a sucessão gerada
pelo método de Newton converge para s sempre que o ponto inicial
x0 ∈ [a, b] satisfizer f (x0 )f 00 (x0 ) ≥ 0. Mais ainda, a sucessão gerada é
monótona.
Majoração do erro
M2
|xn+1 − s| ≤ |xn+1 − xn |2
2m1
Critério de paragem
M2
εn+1 = |xn+1 − xn |2 ≤ δ ⇒ |xn+1 − s| ≤ δ
2m1
Teorema
Sejam f ∈ C 2 ([a, b]; R) e s um zero de f em [a, b] tal que f 0 (s) 6= 0.
Então existe δ > 0 tal que a sucessão {xn } gerada pelo método de Newton
converge para s sempre que x0 ∈ [s − δ, s + δ].
1 Erros
4 Aproximação de funções
5 Interpolação
MIEEC (FEUP) polinomialMÉTODOS NUMÉRICOS 113 / 458
Equações não Lineares Método da Secante
Método da secante
y = f(x)
s xn+1 xn xn-1 x
Teorema
Seja f ∈ C 2 ([a, b]; R) tal que f 0 (x) 6= 0, e f 00 (x) ≤ 0 ou f 00 (x) ≥ 0 em
[a, b]. Seja ainda s o (único) zero de f em [a, b].
Então a sucessão gerada pelo método da secante converge para s sempre
que os pontos iniciais x−1 , x0 ∈ [a, b] satisfizerem f (x−1 )f 00 (x−1 ) ≥ 0 e
f (x0 )f 00 (x0 ) ≥ 0. Mais ainda, a sucessão gerada é monótona.
Majoração do erro
M2
|xn+1 − s| ≤ |xn+1 − xn | · |xn+1 − xn−1 |
2m1
Critério de paragem
M2
εn+1 = |xn+1 − xn | · |xn+1 − xn−1 | ≤ δ ⇒ |xn+1 − s| ≤ δ
2m1
1 Erros
4 Aproximação de funções
5 Interpolação
MIEEC (FEUP) polinomialMÉTODOS NUMÉRICOS 120 / 458
Equações não Lineares Ordem de convergência: definição
xn+1 = F (xn )
xn → s
o método têm convergência de ordem p
Ordem de convergência
∆n+1 ∝ ∆n p
Seja ∆n = s − xn , obtemos
F (p) (ξ)
p
|∆n+1 | = |xn+1 − s| = |F (xn ) − s| = ∆n
p!
ou seja
∆n+1 ∝ ∆n p
n ∆n (mét. A) ∆n (mét. B)
0 10−1 10−1
1 10−3 10−2
2 10−5 10−4
3 10−7 10−8
4 10−9 10−16
5 10−11 10−32
6 10−13 10−64
1 + x + e x = 0, x ∈ [−2, −1]
A primeira derivada
A 2a derivada
f 00 (s)
F 00 (s) = . . . =
f 0 (s)
é em geral não nula. Logo o método é de 2a ordem.
|en+1 |
lim =K
n→+∞ |en |p
Teorema
Nas condições suficientes apresentadas para a convergência do método da
secante, pode ainda afirmar-se que sucessão dos erros de aproximação
gerada por este método tem convergência de ordem
√
1+ 5
(≈ 1.618).
2
1 + x + e x = 0, x ∈ [−2, −1]
√
1+ 5
p= 2
1 Erros
4 Aproximação de funções
5 Interpolação
MIEEC (FEUP) polinomialMÉTODOS NUMÉRICOS 132 / 458
Equações não Lineares Raízes de Polinómios
Raízes de polinómios
Teorema
O polinómio p(x) tem n raízes (contando com a multiplicidade). Estas
raízes podem ser reais ou complexas, caso em quem surgem em pares
conjugados.
Teorema
Sejam r1 , r2 , . . . , rn as n raízes do polinómio de grau n p(x). Então, p(x)
pode ser escrito como
p(x) = an (x − r1 )(x − r2 ) · · · (x − rn )
an an−1 . . . a1 a0
s sbn−1 . . . sb1 sb0
bn−1 bn−2 . . . b0 || r
an an−1 an−2 . . . a2 a1 a0
β βbn−2 . . . βb2 βb1 βb0
α αbn−2 αbn−3 . . . αb1 αb0
bn−2 bn−3 bn−4 . . . b0 || r s
Exemplo:
p(x) = x 5 − 5x 4 + 10x 3 − 6x 2 − 12x + 16
tem 4 mudanças de sinal
Teorema
Todos os zeros do polinómio p(x) situam-se no interior do círculo (no
plano complexo) centrado na origem e de raio
ak
1 + max
0≤k≤n−1 an
Estratégia
Ir obtendo raízes, uma de cada vez, e dividir o polinómio até se obter um
polinómio de grau 1 ou 2, casos em que a determinação de raízes é trivial.
A expressão de recorrência é
p(xk )
xk+1 = xk −
p 0 (xk )
an x 2 + an−1 x + an−2 = 0
Determinação x0
x02 + 2x0 + 10 = 0 ⇔ x0 = −1 ± 3j
k xk p(xk ) p 0 (xk )
0 −1.00 + j3.00 56.00 + j72.00 60.00 − j48.00
1 −0.98 + j1.81 43.35 + j23.00 25.40 + j12.07
2 −2.73 + j1.74 −2.57 − j69.73 13.53 + j111.88
3 −2.11 + j1.79 8.26 − j15.13 32.70 + j63.12
4 −1.97 + j1.99 1.84 + j0.91 47.11 + j54.20
5 −2.00 + j2.00 −0.02 − j0.02 48.01 + j56.03
6 −2.00 + j2.00 ≈0
r1 = −2 + 2j r2 = −2 − 2j
Depois, determinar as raízes do polinómio:
p(x) p(x)
= 2 = x 2 − 2x + 10
(x − r1 )(x − r2 ) x + 4x + 8
Método de Lin
p(x) rx + s
= q(x) + 2
x2 + pi x + qi x + pi x + qi
Método de Lin
an an−1 ... a2 a1 a0
−qi . . . −qi b2 −qi b1 −qi+1 b0
−pi −pi bn−2 . . . −pi b1 −pi+1 b0
bn−2 bn−3 ... b0 || 0 0
(
a1 − qi b1 − pi+1 b0 = 0
a0 − qi+1 b0 = 0
Determinar os zeros de
p(x)
k pk qk quociente da divisão x 2 +pk x+qk
0 1 1 x2 − 7x + 24
1 −0.708333 0.666667 x 2 − 5.2917x + 13.5851
2 −1.506965 1.177764 x 2 − 4.4930x + 10.0514
3 −1.861262 1.591820 x 2 − 4.1387x + 8.7049
4 −2.000237 1.838044 x 2 − 3.9998x + 8.1615
5 −2.039857 1.960428 x 2 − 3.9601x + 7.9614
6 −2.039382 2.009685 x 2 − 3.9606x + 7.9131
1 Erros
4 Aproximação de funções
5 Interpolação polinomial
6 Integração numérica
onde f1 , f2 , . . . , fn : Rn → R
F (x) = 0
Métodos iterativos
método iterativo simples (iteração de ponto fixo)
método de Newton
...
1 Erros
4 Aproximação de funções
5 Interpolação polinomial
6 Integração numérica
x = G (x), G : Rn → Rn
ou seja
x1 = g1 (x1 , x2 , . . . , xn )
x2 = g2 (x1 , x2 , . . . , xn )
..
.
xn = gn (x1 , x2 , . . . , xn )
x(k+1) = G (x(k) )
x1 = [ln(x1 x2 ) + 8]/4 = 0
√
x2 = [2x1 + x1 x2 − 3]/4
k x1,(k) x2,(k) g1 (x1,(k) , x2,(k) ) g2 (x1,(k) , x2,(k) )
0 1.50000 1.00000 2.10137 0.30619
1 2.10137 0.30619 1.88976 0.50122
2 1.88976 0.50122 1.98643 0.43819
3 1.98643 0.43819 1.96531 0.47646
4 1.96531 0.47646 1.98357 0.47457
5 1.98357 0.47457 1.98489 0.48434
6 1.98489 0.48434 1.99015 0.48757
7 1.99015 0.48757 1.99247 0.49134
8 1.99247 0.49134 1.99469 0.49359
9 1.99469 0.49359 1.99611 0.49541
10 1.99611 0.49541 1.99721 0.49666
L
kz − x(k) k ≤ kx − x(k−1) k
1 − L (k)
1 Erros
4 Aproximação de funções
5 Interpolação polinomial
6 Integração numérica
Método de Newton
ou ainda
x = x − [JF (x)]−1 F (x)
Método de Newton
Expressão de recorrência
Determinação de x(k+1)
1 calcular F (x(k) )
2 calcular JF (x(k) )
3 calcular v(k) resolvendo o SEL JF (x(k) ) v(k) = F (x(k) )
4 calcular x(k+1) = x(k) − v(k)
f1 (x1 , x2 ) = 0
Para o sistema de equações ,
f2 (x1 , x2 ) = 0
" #
∂f1 ∂f1
a b
a matriz jacobiana JF (x1 , x2 ) = = ∂x 1
∂f2
∂x2
∂f2
c d ∂x1
∂x2
d −b
tem como inversa JF−1 (x1 , x2 ) = ad−bc1
.
−c a
Logo
x1,(k+1) x1,(k) f1
= − JF−1 (x1,(k) , x2,(k) )
x2,(k+1) x2,(k) f2
x1,(k+1) x1,(k) 1 df1 − bf2
= − (x1,(k) , x2,(k) )
x2,(k+1) x2,(k) ad − bc −cf1 + af2
Teorema
Sejam F de classe C 2 e z tal que F (z) = 0.
Se det(JF (z)) 6= 0 a sucessão gerada pelo método de Newton converge
para z qualquer que seja o ponto inicial x(0) suficientemente próximo de z.
Verifica-se ainda que existe uma constante positiva c tal que
kz − x(k) k ≤ c kz − x(k−1) k2 ,
Dificuldades de convergência
→ ...
1 Erros
4 Aproximação de funções
5 Interpolação polinomial
6 Integração numérica
Aproximação de funções
..
.
Aproximação
bc
bc
(xn , yn )
g (x)
bc
bc
bc
(x1 , y1 ) (x2 , y2 )
x
Funções aproximantes
g (x) = F (x; c1 , c2 , . . . , ck )
Critérios de aproximação
di = yi − F (xi ; c1 , . . . , ck ) i = 1, . . . , n
Critérios de aproximação
Funções aproximantes
1 Erros
4 Aproximação de funções
Aproximação dos mínimos quadrados
Aproximação em espaços vectoriais
Sistemas Sobredeterminados
5 Interpolação polinomial
6 Integração numérica
n n n n
X X X X
c φ 2
(x ) + c φ (x )φ (x ) + · · · + c φ (x )φ (x ) = yi φ1 (xi )
1 1 i 2 1 i 2 i k 1 i k i
i =1 i =1 i =1 i =1
n n n n
c X φ (x )φ (x ) + c X φ2 (x ) + · · · + c X φ (x )φ (x ) = X y φ (x )
1 2 i 1 i 2 2 i k 2 i k i i 2 i
i =1 i =1 i =1 i =1
.........
X n X n Xn X n
c1
φk (xi )φ1 (xi ) + c2 φk (xi )φ2 (xi ) + · · · + ck φ2k (xi ) = yi φk (xi )
i =1 i =1 i =1 i =1
x 1 2 4 5 7 8 10
y 1 1 4 4 6 6 7
por
a) uma recta
b) uma parábola
c) uma recta que minimize o erro em x
Exemplo
bc
bc bc
bc bc
y = 0.3333 + 0.7207x
x = −0.1475 + 1.3115y
bc bc
b1 φ1 (x) + · · · + bk φk (x)
cj = ψj−1 (bj ), j = 1, . . . , k.
x 1 1.2 1.6 2
y 1 1.3 1.4 1.7
bc
y = 1.05x 0.69
bc
bc
bc
1 Erros
4 Aproximação de funções
Aproximação dos mínimos quadrados
Aproximação em espaços vectoriais
Sistemas Sobredeterminados
5 Interpolação polinomial
6 Integração numérica
Teorema
Sejam os vectores {v1 , v2 , . . . , vk } de V linearmente independentes e um
vector u ∈ V . A combinação linear c1 v1 + c2 v2 + · · · + ck vk que torna
mínimo o valor
ku − (c1 v1 + c2 v2 + · · · + ck vk )k2
satisfaz as relações
h vj , u − (c1 v1 + c2 v2 + · · · + ck vk ) i = 0, j = 1, 2, . . . , k.
c1 φ1 (x) + · · · + ck φk (x)
é equivalente a
Este sistema tem solução única se os vectores φ̄1 , φ̄2 , . . . , φ̄k , forem
linearmente independentes.
Exercício
Vectores ortogonais
Concluindo-se que
hvj , ui
cj =
hvj , vj i
Z T
Sejam f , g : [0, T ] → C e defina-se hf , g i = f ∗ (t)g (t)dt.
0
2kπ
j T t
1 Verifique que
√ as funções vk (t) = e com k ∈ Z são ortogonais.
Nota: j = −1.
(
1 se 0 ≤ t ≤ T2
2 Considere a função h(t) =
0 se T2 < t ≤ T
Qual a combinação linear de v−N , . . . , v0 , . . . , vN que melhor aproxima
h no sentido dos mínimos quadrados?
Exemplo
1 Erros
4 Aproximação de funções
Aproximação dos mínimos quadrados
Aproximação em espaços vectoriais
Sistemas Sobredeterminados
5 Interpolação polinomial
6 Integração numérica
Sistemas Sobredeterminados
kd k2 = ky − Ack2
Desenvolvendo a expressão
−2y T A + 2c T AT A = 0
⇔ AT Ac = AT y (1)
Pseudo-inversa
Normalidade
A expressão (1)
AT Ac = AT y
é uma outra forma de escrever as equações normais, pois reescrevendo
como
AT (Ac − y ) = 0 ⇔ AT d = 0
1 Erros
4 Aproximação de funções
5 Interpolação polinomial
6 Integração numérica
Interpolação
..
.
Interpolação
y
bc
g (x) bc
(xn , yn )
bc
bc
bc
(x0 , y0 ) (x1 , y1 )
x
Aplicações da interpolação
Interpolação polinomial
onde n ∈ N0 e an 6= 0.
Interpolação polinomial
Teorema (Weierstrass)
Seja [a, b] um intervalo real e f uma função contínua em [a, b]. Então,
qualquer que seja ε > 0, existe uma função polinomial p tal que
y
f (x) + ε
f (x)
f (x) − ε
p(x)
a b x
MIEEC (FEUP) MÉTODOS NUMÉRICOS 210 / 458
Interpolação polinomial
Formas polinomiais
p(x) = a0 + a1 x + a2 x 2 + · · · + an x n
Forma de Newton
p(x) = ã0 + ã1 (x − c1 ) + ã2 (x − c1 )(x − c2 ) + · · · + ãn (x − c1 ) · · · (x − cn )
p(x) = a0 + a1 x + · · · + an x n
y ← an
Para i = n − 1 até 0 fazer
y ← ai + y · x
Forma de Newton:
p(x) = a0 + a1 (x − c1 ) + · · · + an (x − c1 ) · · · (x − cn )
y ← an
Para i = n − 1 até 0 fazer
y ← ai + y · (x − ci+1 )
5 Interpolação polinomial
Polinómio interpolador: unicidade e existência
Forma de Lagrange
Forma de Aitken-Neville
Forma de Newton
Diferenças divididas
Diferenças fiinitas
Interpolação directa e inversa
Dupla interpolação
Erro de interpolação
Splines
Teorema
Dados os nós distintos x0 , x1 , . . . , xn e os valores nodais y0 , y1 , . . . , yn ,
existe um e um só polinómio p de grau menor ou igual a n que interpola
os valores yi nos nós xi , ou seja, tal que
p(xi ) = yi , i = 0, 1, . . . , n.
Determinante de Vandermonde
1 x0 x02 . . . x0n−1 x0n
1 x1 x12 . . . x1n−1 x1n
v (x0 , x1 , . . . , xn ) = .. .. .. . . .. ..
. . . . . .
1 xn xn2 . . . xnn−1 xnn
Determinante de Vandermonde
1 x0 x02 . . . x0n−1 0
1 x1 x12 . . . x1n−1 x1n−1 (x1 − x0 )
.. .. .. . . .. ..
. . . . . .
1 xn xn2 . . . xnn−1 xnn−1 (xn − x0 )
Determinante de Vandermonde
1 x0 x02 ... x0n−2 0 0
1 x1 x12 ... x1n−2 x1n−2 (x1 − x0 )
x1n−1 (x1 − x0 )
.. .. .. .. .. .. ..
. . . . . . .
1 xn xn2 ... xnn−2 xn (xn − x0 ) xn (xn − x0 )
n−2 n−1
Determinante de Vandermonde
1 0 0 ... 0 0
1 x1 − x0 x1 (x1 − x0 ) ... x1n−2 (x1 − x0 )
x1n−1 (x1 − x0 )
.. .. .. .. .. ..
. . . . . .
1 xn − x0 xn (xn − x0 ) . . . xn (xn − x0 ) xn (xn − x0 )
n−2 n−1
Determinante de Vandermonde
x1 − x0 x1 (x1 − x0 ) ... x1n−2 (x1 − x0 )
x1n−1 (x1 − x0 )
x2 − x0 x2 (x2 − x0 ) ... x2n−2 (x2 − x0 )
x2n−1 (x2 − x0 )
.. .. .. .. ..
. . . . .
xn − x0 xn (xn − x0 ) . . . xn (xn − x0 ) xn (xn − x0 )
n−2 n−1
Determinante de Vandermonde
1 x1 x12 ... x1n−1
1 x2 x22 ... x2n−1
(x1 − x0 ) · (x2 − x0 ) · · · (xn − x0 ) · .. .. .. .. ..
. . . . .
1 xn xn2 ... xnn−1
Determinante de Vandermonde
Yn
v (x0 , x1 , . . . , xn ) = (xj − x0 ) · v (x1 , . . . , xn )
j=1
Determinante de Vandermonde
Yn Y
n Yn
v (x0 , x1 , . . . , xn ) = (xj − x0 ) · (xj − x1 ) · . . . · (xj − xn−1 )
j=1 j=2 j=n
Dados os valores (yi )ni=0 nos nós distintos (xi )ni=0 , como se determina o
polinómio interpolador p, de grau ≤ n?
5 Interpolação polinomial
Polinómio interpolador: unicidade e existência
Forma de Lagrange
Forma de Aitken-Neville
Forma de Newton
Diferenças divididas
Diferenças fiinitas
Interpolação directa e inversa
Dupla interpolação
Erro de interpolação
Splines
Forma de Lagrange
e verificam as relações
(
1 se k = j
Lk (xj ) = δkj =
0 se k 6= j
L0 (x)
L1 (x) L3 (x)
x0 x1 x2 x3 x
L2 (x)
x −1 0 2 3
y 6 −12 18 24
Forma de Lagrange
5 Interpolação polinomial
Polinómio interpolador: unicidade e existência
Forma de Lagrange
Forma de Aitken-Neville
Forma de Newton
Diferenças divididas
Diferenças fiinitas
Interpolação directa e inversa
Dupla interpolação
Erro de interpolação
Splines
Forma de Aitken-Neville
pm+1,k (x)
ym+k bc
ym+k+1 bc
pm,k+1 (x)
ym bc
ym+1 bc
pm,k (x)
Forma de Aitken-Neville
m+k+1 m+k+1
e se pm+1,k (x) interpola (yi )i=m+1 nos nós (xi )i=m+1
então
Forma de Aitken-Neville
A expressão de recorrência
(x − x1 ) · y0 + (x0 − x) · y1
x0 − x1
Forma de Aitken-Neville
pm,k (x) x − xm
pm+1,k (x) x − xm+k+1
pm,k+1 (x) =
xm − xm+k+1
Forma de Aitken-Neville
Para determinar p(x) que interpola (yi )ni=0 em (xi )ni=0 é necessário obter os
polinómios
pi,0 (x), i = 0, . . . , n
pi,1 (x), i = 0, . . . , n − 1
... e, finalmente
p0,n (x) = p(x).
Forma de Aitken-Neville
y0 x − x0 y1 x − x1
y1 x − x1 y2 x − x2
y01 (x) = , y12 (x) = ,...
x0 − x1 x1 − x2
y01 (x) x − x0
y12 (x) x − x2
y012 (x) = , y123 (x) = . . .
x0 − x2
..
.
Forma de Aitken-Neville
5 Interpolação polinomial
Polinómio interpolador: unicidade e existência
Forma de Lagrange
Forma de Aitken-Neville
Forma de Newton
Diferenças divididas
Diferenças fiinitas
Interpolação directa e inversa
Dupla interpolação
Erro de interpolação
Splines
Forma de Newton
onde
W0 (x) = x − x0
W1 (x) = (x − x0 )(x − x1 )
...
Wn−1 (x) = (x − x0 )(x − x1 ) · · · (x − xn−1 )
Forma de Newton
Teorema
Sendo os polinómios p0 , p1 , . . . , pn definidos por
p0 (x) = a0 ,
pk (x) = pk−1 (x) + ak Wk−1 (x), k = 1, . . . , n,
e definindo os valores
a0 = y0 ,
yk − pk−1 (xk )
ak = , k = 1, . . . , n,
Wk−1 (xk )
x −1 2 3
y 1 3 5
5 Interpolação polinomial
Polinómio interpolador: unicidade e existência
Forma de Lagrange
Forma de Aitken-Neville
Forma de Newton
Diferenças divididas
Diferenças fiinitas
Interpolação directa e inversa
Dupla interpolação
Erro de interpolação
Splines
Diferenças divididas
m+k+1
pm,k+1 (x) interpola (xi , yi )i=m
Diferenças divididas
Teorema
As diferenças dividas satisfazem y [xj ] = yj , e
onde
y [x0 ] = y0
y [x1 ] − y [x0 ]
y [x0 , x1 ] =
x1 − x0
y [x1 , x2 ] − y [x0 , x1 ]
y [x0 , x1 , x2 ] =
x2 − x0
...
5 Interpolação polinomial
Polinómio interpolador: unicidade e existência
Forma de Lagrange
Forma de Aitken-Neville
Forma de Newton
Diferenças divididas
Diferenças fiinitas
Interpolação directa e inversa
Dupla interpolação
Erro de interpolação
Splines
Diferenças finitas
Definição
x y ∆y ∆2 y ... ∆n−1 y ∆n y
x0 y0
∆y0
x1 y1 ∆ 2 y0
∆y1 ...
... ... ... ∆n−1 y0
... ... ∆n y0
... ... ... ∆n−1 y1
∆yn−2 ...
xn−1 yn−1 ∆2 yn−2
∆yn−1
xn yn
Teorema
A diferença dividida de ordem k dos valores nodais y nos nós
h-equidistantes xi , xi+1 , . . . , xi+k satisfaz
1
y [xi , . . . , xi+k ] = ∆k yi
k!hk
x −1 1 3 5
y 2 5 3 1
Forma de Newton
5 Interpolação polinomial
Polinómio interpolador: unicidade e existência
Forma de Lagrange
Forma de Aitken-Neville
Forma de Newton
Diferenças divididas
Diferenças fiinitas
Interpolação directa e inversa
Dupla interpolação
Erro de interpolação
Splines
q(yi ) = xi , i = 0, 1, . . . , n.
Agora (yi )ni=0 são os nós de interpolação e (xi )ni=0 são os valores nodais, da
função f −1 a interpolar.
5 Interpolação polinomial
Polinómio interpolador: unicidade e existência
Forma de Lagrange
Forma de Aitken-Neville
Forma de Newton
Diferenças divididas
Diferenças fiinitas
Interpolação directa e inversa
Dupla interpolação
Erro de interpolação
Splines
Dupla interpolação
Dupla interpolação
Dupla interpolação
5 Interpolação polinomial
Polinómio interpolador: unicidade e existência
Forma de Lagrange
Forma de Aitken-Neville
Forma de Newton
Diferenças divididas
Diferenças fiinitas
Interpolação directa e inversa
Dupla interpolação
Erro de interpolação
Splines
Erro de interpolação
Teorema
Sejam f ∈ C n+1 ([a, b]; R) e p o polinómio de grau menor ou igual a n que
interpola f nos nós distintos (xi )ni=0 , pertencentes a [a, b]. Então, para
qualquer x ∈ [a, b] existe ξ ∈ [a, b] tal que
1
e(x) ≡ f (x) − p(x) = f (n+1) (ξ)Wn (x),
(n + 1)!
Lema
Sejam f ∈ C k ([a, b]; R) e (xi )ki=0 um conjunto de nós distintos em [a, b].
Então existe ξ ∈ [a, b] tal que
1 (k)
f [x0 , x1 , . . . , xk ] = f (ξ).
k!
Erro de interpolação
hn+1
|e(x)| ≤ · max |f (n+1) (z)|
4(n + 1) z∈[a,b]
5 nós
7 nós
9 nós
5 Interpolação polinomial
Polinómio interpolador: unicidade e existência
Forma de Lagrange
Forma de Aitken-Neville
Forma de Newton
Diferenças divididas
Diferenças fiinitas
Interpolação directa e inversa
Dupla interpolação
Erro de interpolação
Splines
Splines polinomiais
Definição
S(xi ) = yi , i = 0, 1, . . . , n.
y y2
y0 y1 y4
y3
x0 x1 x2 x3 x4 x
Splines lineares
Si (xi−1 ) = yi−1 i = 1, . . . , n,
Si (xi ) = yi i = 1, . . . , n.
Splines lineares
xi − x x − xi−1
Si (x) = yi−1 + yi
hi hi
1
|e| ≤ · |f 00 | · h2
8 max
y y2
y0 y1 y4
y3
x0 x1 x2 x3 x4 x
Splines quadráticos
Si (xi−1 ) = yi−1 i = 1, . . . , n,
Si (xi ) = yi i = 1, . . . , n,
Si0 (xi ) = 0
Si+1 (xi ) i = 1, . . . , n − 1.
Splines quadráticos
Definindo Si , i = 1, . . . , n, como
Mi
Si (x) = yi−1 + mi−1 (x − xi−1 ) + (x − xi−1 )2
2
Splines quadráticos
y y2
y0 y1 y4
y3
x0 x1 x2 x3 x4 x
Splines cúbicos
Si (xi−1 ) = yi−1 i = 1, . . . , n,
Si (xi ) = yi i = 1, . . . , n,
Si0 (xi ) = Si+1
0
(xi ) i = 1, . . . , n − 1,
00 00
Si (xi ) = Si+1 (xi ) i = 1, . . . , n − 1.
Splines cúbicos
Splines cúbicos
Splines cúbicos
para i = 1, 2, . . . , n − 1.
Teorema
Sejam os nós a = x0 < · · · < xn = b e os valores nodais y0 , . . . , yn . Então,
de todas as funções g ∈ C 2 ([a, b]; R) que interpolam estes pontos, o spline
cúbico natural é a única que torna mínimo o valor de
Z b
[g 00 (x)]2 dx.
a
5
|e| ≤ · |f (4) | · h4
384 max
linear
quadratico
cubico
1 Erros
4 Aproximação de funções
5 Interpolação polinomial
6 Integração numérica
Integração numérica
Z 1
Para calcular sin x 2 dx, encontra-se h(x) tal que h0 (x) = sin x 2 e
0
calcula-se h(1) − h(0).
Mas h(x) não pode ser escrita à custa de um número finito de funções
conhecidas!
Integração numérica
Dada uma função f definida num intervalo [a, b], consiste em obter valores
aproximados de
Z b
I (f ) = f (x)dx
a
sem obter uma primitiva de f .
f(x)
a b x
3 O erro cometido é
E (f ) = I (f ) − I (g ) = I (f − g )
Rb Rb
Aproximar a f (x)dx por a pn (x)dx, onde pn é o polinómio de menor grau
que interpola f nos nós x0 < x1 < · · · < xn de [a, b].
P
Como pn (x) = ni=0 f (xi )Li (x), onde os Li são os polinómios de Lagrange
nos nós (xi )ni=0 , temos
Z b Z b Z b X
n
! n
X
f (x)dx ' pn (x)dx = f (xi )Li (x) dx = Ai f (xi )
a a a i=0 i=0
Rb
onde Ai = a Li (x)dx.
y0 f(x) y1
p1(x)
a x0 x1 b x
Polinómio interpolador em 2 nós
y0 f(x) y2 p2(x)
y1
a x0 x1 x2 b x
Polinómio interpolador em 3 nós
Definição
6 Integração numérica
Regra dos trapézios
Regra de Simpson
Integração de Romberg
y1 f(x) yn-1
y0 y2 yn
...
h
I (f ) ' (y0 + 2y1 + 2y2 + · · · + 2yn−1 + yn )
2
h2
E (f ) = − (b − a)f 00 (ξ)
12
h2
|E (f )| = (b − a) max |f 00 (x)|
12 x∈[a,b]
εa ≤ (b − a)ε
R1 2
Calcular um valor aproximado de 0 e −x dx, utilizando a regra dos
trapézios com 20 subintervalos e obter um majorante para o erro cometido,
considerando que os valores de f são exactos.
Qual o erro máximo absoluto admissível para os valores de f se se pretender
que o erro de arredondamento não seja superior ao erro de truncatura?
6 Integração numérica
Regra dos trapézios
Regra de Simpson
Integração de Romberg
Regra de Simpson
y2 y3 f(x)
y1
y0 y4 yn
...
a=x0 x1 x2 x3 x4 xn=b x
Regra de Simpson
h
I (f ) ' (y0 + 4y1 + 2y2 + 4y3 + 2y4 + · · · + 4yn−1 + yn )
3
h4
E (f ) = − (b − a)f (4) (ξ)
180
h4
|E (f )| = (b − a) max |f (4) (x)|
180 x∈[a,b]
εa ≤ (b − a)ε
R1 2
Calcular um valor aproximado de 0 e −x dx, utilizando a regra de Simpson
com 12 subintervalos e obter um majorante para o erro cometido,
considerando que os valores de f são exactos.
6 Integração numérica
Regra dos trapézios
Regra de Simpson
Integração de Romberg
Integração de Romberg
Rb
Consiste em obter estimativas de I = a f (x)dx partindo de várias
aplicações da regra dos trapézios, com subintervalos de larguras diferentes.
Sendo T (h) o valor aproximado de I dado pela regra dos trapézios com
subintervalos de largura h, tem-se que
I = T (h) + K1 h2 + K2 h4 + K3 h6 + · · ·
Integração de Romberg
4T (h/2)−T (h)
Se T1 (h) = 3 então I = T1 (h) + K10 h4 + K20 h6 + · · ·
...
Integração de Romberg
Definindo
T0 (h) = T (h)
4n Tn−1 (h/2) − Tn−1 (h)
Tn (h) = , n = 1, 2, . . .
4n − 1
verifica-se que
R1 dx
Obter uma estimativa de 0 1+x 2 com erro de ordem 8, utilizando um valor
de inicial de h = 0.25.
h T (h)
0.25 0.7827941176471
0.125 0.7847471236228
0.0625 0.7852354030103
0.03125 0.7853574732937
π
O valor do integral a calcular é 4 = 0.78539816339744830963 . . .
4 Aproximação de funções
5 Interpolação polinomial
6 Integração numérica
Norma de um vector
V : espaço vectorial
norma: k·k:V →R
1 kxk ≥ 0 ∀x ∈ V e kxk = 0 ⇒ x = 0
2 kαxk = |α| · kxk ∀α ∈ R, ∀x ∈ V
3 kx + y k ≤ kxk + ky k ∀x, y ∈ V
Norma euclidiana em Rn
x = (x1 , x2 , . . . , xn ) ∈ Rn
q n
!1
X 2
Outras normas em Rn
n
X
→ norma 1 |xi |
i=1
n
!1
X p
→ ...
x2
kxk1 = 1
1
kxk1.4 = 1
kxk2 = 1
kxk3 = 1
kxk∞ = 1
1 x1
Equivalência de normas
Teorema
Sejam k · kα e k · kβ duas normas definidas em Rn .
Então existem constantes k1 , k2 > 0 tais que
√
Exemplo: kxk∞ ≤ kxk2 ≤ n kxk∞ , ∀x ∈ Rn
Convergência em Rn
Sejam
→ x(k) = (x1,(k) , . . . , xn,(k) ) ∈ Rn , k ∈N
→ s = (s1 , . . . , sn ) ∈ Rn
Definição
lim kx(k) − sk = 0.
k→+∞
Teorema
x(k) → s se e só se xi,(k) → si , i = 1, . . . , n.
Normas de matrizes
x2
{x : kxk2 = 1}
1
{Ax : kxk2 = 1}
1 x1
p √
kAk2 = 3+ 5
x2
{x : kxk1 = 1}
1
{Ax : kxk1 = 1}
1 x1
kAk1 = 2
x2
{x : kxk∞ = 1}
1
{Ax : kxk∞ = 1}
1 x1
kAk∞ = 3
Teorema
Seja A ∈ Rn×n de elemento genérico aij . Então verifica-se
n
X
kAk1 = max |aij |,
j=1,...,n
i=1
ou seja, kAk1 é o máximo das somas por colunas dos valores absolutos dos
elementos de A.
Teorema
Seja A ∈ Rn×n de elemento genérico aij . Então verifica-se
n
X
kAk∞ = max |aij |,
i=1,...,n
j=1
ou seja, kAk∞ é o máximo das somas por linhas dos valores absolutos dos
elementos de A.
Sendo
−2 0 1 6
−3 −1 2 4
A=
2
1 −1 1
3 −2 2 5
calcular kAk1 e kAk∞ .
Teorema
q
Seja A ∈ Rn×n . Então verifica-se kAk2 = ρ(AT A).
Teorema
Para qualquer norma induzida k · k e para qualquer A ∈ Rn×n tem-se
ρ(A) ≤ kAk.
kAk ≤ ρ(A) + ε.
4 Aproximação de funções
5 Interpolação polinomial
6 Integração numérica
..
.
a11 x1 + a12 x2 + · · · + a1n xn = b1
a21 x1 + a22 x2 + · · · + a2n xn = b2
.. ..
. .
am1 x1 + am2 x2 + · · · + amn xn = bm
em forma compacta: Ax = b
Teorema
O sistema de n equações a n incógnitas tem solução única se e só se
det A 6= 0.
det Ai
xi =
det A
Métodos de resolução
a11 x1 + a12 x2 + · · · + a1,n−1 xn−1 + a1n xn = b1
a22 x2 + · · · + a2,n−1 xn−1 + a2n xn = b2
.. ..
. .
an−1,n−1 xn−1 + an−1,n xn = bn−1
ann xn = bn
Substituição inversa
bn
xn =
ann
Pn
bi − j=i +1 aij xj
xi = i = n − 1, . . . , 1
aii
Eliminação gaussiana
Pn
bi − j=i+1 aij xj
Na substituição inversa xi =
aii
n
X |aij |
a propagação de erros é εxi ≤ εx
|aii | j
j=i+1
|aij |
Então interessa que os quocientes sejam pequenos!
|aii |
|akj |
é máximo
dk
→ |akl | é máximo
4 Realiza-se a eliminação
x̃ = x̄ ⇒ e =0∧r =0
x̃ 6= x̄ ⇒ ?
?
erro pequeno ⇒ resíduo pequeno
?
resíduo pequeno ⇒ erro pequeno
1.01 0.99
x1
2
1
0.99 1.01 x2 = 2 tem solução exacta x̄ = 1
1.01
−0.01
−0.02
→ se x̃ = 1.01 tem-se e = −0.01 er= −0.02
2
−1
−0.02
→ se x̂ = 0 tem-se e = 1 er= 0.02
1.01 0.99
x1
2
100
0.99 1.01 x2 = −2 tem solução exacta x̄ = −100
101
−1
−2
→ se x̃ = −99 tem-se e = −1 er= −2
Número de condição
1 kr k kek kr k
≤ ≤ cond(A)
cond(A) kbk kx̄k kbk
Número de condição
Teorema
Se A é não singular tem-se que
kAk
cond(A) = max .
B singular kA − Bk
kAk
cond(A) ≥
kA − Bk
Teorema
Seja x̄ a solução do sistema de equações Ax = b, onde A é não singular e b
é não nulo.
Seja x̃ a solução do sistema de equações (perturbado) Ax = b̃.
Então verifica-se que
Teorema
Seja x̄ a solução do sistema de equações Ax = b, onde A é não singular.
Seja x̃ a solução do sistema de equações (perturbado) Ãx = b, onde à é
não singular.
Então verifica-se que
tem solução x̄ = [ 1 1 1 ]T . h i
1 5 10
Se a matriz dos coeficientes for à = 0 1 −6 a solução é
0 0 1.1
T
x̃ = [ 51
11
5
11
10
11 ] .
Métodos iterativos
x = Gx + d
x(k+1) = Gx(k) + d k = 0, 1, . . . .
Métodos iterativos
Métodos iterativos
Métodos iterativos
x1 = − aa12 x2 − aa11
13
x3 − · · · − aa1n xn + b1
11 11 a11
x2 = − a22 x1
a21
− aa23
22
x3 − · · · − aa2n
22
xn + b2
a22
.. ..
. .
xn = − aann
n1
x1 − aann
n2
x2 − aann
n3
x3 − ··· + bn
ann
Métodos iterativos
x = Bx + c
Método de Jacobi
x(k+1) = Bx(k) + c
ou, equivalentemente
n
X
xi,(k+1) = bij xj,(k) + ci i = 1, . . . , n
j=1
Método de Gauss-Seidel
A expressão de recorrência é
i−1
X n
X
xi,(k+1) = bij xj,(k+1) + bij xj,(k) + ci
j=1 j=i+1
Resolver o sistema
" #" # " #
1 −1 1 x1 1
0 2 −1 x2 = 1
1 −2 2 x3 1
x = Gx + d ,
x(k+1) = Gx(k) + d , k = 0, 2, . . . ,
kG k
kx̄ − x(k+1) k ≤ kx − x(k) k, k = 1, 2, . . . .
1 − kG k (k+1)
Teorema
Sejam A ∈ Rn×n e b ∈ Rn . Se a matriz A for estritamente diagonalmente
dominante por linhas então a sucessão gerada pelo método de Jacobi
converge para a única solução do sistema de equações Ax = b, qualquer
que seja o ponto inicial x(0) .
Teorema
Sejam A ∈ Rn×n e b ∈ Rn . Se a matriz A for estritamente diagonalmente
dominante por linhas então a sucessão gerada pelo método de Gauss-Seidel
converge para a única solução do sistema de equações Ax = b, qualquer
que seja o ponto inicial x(0) .
Expressão de recorrência
n
X
1
xi,(k+1) = xi,(k) + bi − aij xj,(k)
aii
j=1
0<ω<1 → sub-relaxação
ω>1 → sobre-relaxação
Expressão de recorrência
i−1
X n
X
1
xi,(k+1) = xi,(k) + bi − aij xj,(k+1) − aij xj,(k)
aii
j=1 j=i
0<ω<1 → sub-relaxação
ω>1 → sobre-relaxação (SOR)
Exemplo: Gauss-Seidel
Exemplo: SOR
Inversão de matrizes
Inversão de matrizes
Inversão de matrizes
Em cada etapa
efectuar escolha de pivot
pivotação parcial
pivotação total
anular toda a coluna
4 Aproximação de funções
5 Interpolação polinomial
6 Integração numérica
Dados
uma função f : R × R → R
um intervalo real [t0 , T ]
e valores x0,0 , x0,1 , . . . , x0,n−1 ∈ R
consiste em determinar x : [t0 , T ] → R que verifique
x x1 xN-1
x2
x0
xN
…
t0 t1 t2 tN-1 tN t
x → solução exacta
e(h) = x − x(h)
Z t+h
1
Fh (t, x) ≈ h f (t, ξ(t))dt
t
Métodos de Euler
Z t+h
O integral f (ξ, x(ξ))d ξ pode ser aproximado pelas áreas dos
t
rectângulos como se mostra nas figuras.
f f
f(t, x(t))
f(t+h, x(t+h))
t t+h ξ t t+h ξ
Rectângulo à esquerda Rectângulo à direita
Caracteriza-se por
Fh (t, x) = f (t, x(t))
Th (t, x) = h2 f 0 (ζ, x(ζ))
xi+1 = xi + hf (ti , xi ), i = 0, 1, . . . , N − 1,
Utilizar o método de Euler progressivo com passo h = 0.1 para obter uma
solução aproximada de
x 0 = 1 + t − x, t ∈ [0, 1]
com x(0) = 1.
ti xi xi +1
0.0 1.0000 1.0000
0.1 1.0000 1.0100
0.2 1.0100 1.0290
0.3 1.0290 1.0561
0.4 1.0561 1.0905
0.5 1.0905 1.1314
0.6 1.1314 1.1783
0.7 1.1783 1.2305
0.8 1.2305 1.2874
0.9 1.2874 1.3487
1.0 1.3487 —
Caracteriza-se por
Fh (t, x) = f (t + h, x(t + h))
Th (t, x) = − h2 f 0 (ζ, x(ζ))
Utilizar o método de Euler regressivo com passo h = 0.1 para obter uma
solução aproximada de
x 0 = 1 + t − x, t ∈ [0, 1]
com x(0) = 1.
ti xi xi +1
0.0 1.0000 1.0091
0.1 1.0091 1.0264
0.2 1.0264 1.0513
0.3 1.0513 1.0830
0.4 1.0830 1.1209
0.5 1.1209 1.1645
0.6 1.1645 1.2132
0.7 1.2132 1.2665
0.8 1.2665 1.3241
0.9 1.3241 1.3855
1.0 1.3855 —
Caracteriza-se por
h hp−1 (p−1)
• Fh (t, x) = f (t, x(t)) + f 0 (t, x(t)) + · · · + f (t, x(t))
2 p!
hp
• Th (t, x) = f (p) (ζ, x(ζ)), ζ ∈ [t, t + h]
(p + 1)!
A expressão de recorrência é
h2 0 hp
xi+1 = xi + hf (ti , xi ) + f (ti , xi ) + · · · + f (p−1) (ti , xi )
2 p!
para i = 0, 1, . . . , N − 1.
Utilizar o método de Taylor de ordem 2 com passo h = 0.1 para obter uma
solução aproximada de
x 0 = 1 + t − x, t ∈ [0, 1]
com x(0) = 1.
ti xi xi +1
0.0 1.0000 1.0050
0.1 1.0050 1.0190
0.2 1.0190 1.0412
0.3 1.0412 1.0708
0.4 1.0708 1.1071
0.5 1.1071 1.1494
0.6 1.1494 1.1972
0.7 1.1972 1.2500
0.8 1.2500 1.3072
0.9 1.3072 1.3685
1.0 1.3685 —
Consistência
Método consistente se
lim kTh k = 0
h→0
kTh k ≤ chp
Convergência
Método convergente se
ke(h) k ≤ chp
Consistência e convergência
Teorema
Se um método de passo simples verificar a condição
kTh k Lh (t−t0 )
|e(h) (t)| ≤ e Lh (t−t0 ) |e0 | + [e − 1], t ∈ [t0 , T ],
Lh
Convergência e arredondamento
Lh (t−t0 ) kTh k δ
|e(h) (t)| ≤ e |e0 | + + [e Lh (t−t0 ) − 1], t ∈ [t0 , T ]
Lh h
pelo que quando h → 0 o termo δ/h impede que o erro e(h) se aproxime de
zero.
Métodos de Runge-Kutta
Métodos de Runge-Kutta
F1 = f (ti , xi )
F2 = f (ti + α2 h, xi + hβ21 F1 )
F3 = f (ti + α3 h, xi + h(β31 F1 + β32 F2 ))
...
Fs = f (ti + αs h, xi + h(βs,1 F1 + βs,2 F2 + . . . + βs,s−1 Fs−1 ))
xi+1 = xi + h(w1 F1 + w2 F2 + . . . + ws Fs )
Runge-Kutta de 2a ordem
Expressão de recorrência
F1 = f (ti , xi )
F2 = f (ti + α2 h, xi + hβ21 F1 )
xi+1 = xi + h(w1 F1 + w2 F2 )
w1 + w2 = 1
1
α 2 w2 =2
β21 w2 = 12
Runge-Kutta de 2a ordem
F1 = f (ti , xi )
F2 = f (ti + h, xi + hF1 )
xi+1 = xi + h2 (F1 + F2 )
F1 = f (ti , xi )
F2 = f (ti + 32 h, xi + 23 hF1 )
xi+1 = xi + h4 (F1 + 3F2 )
Runge-Kutta de 4a ordem
F1 = f (ti , xi )
F2 = f (ti + h2 , xi + h2 F1 )
F3 = f (ti + h2 , xi + h2 F2 )
F4 = f (ti + h, xi + hF3 )
x 0 = 1 + t − x, t ∈ [0, 1]
x(0) = 1
pelo método
a) de Euler modificado;
b) de Runge-Kutta de 4a ordem.
ti xi F1 F2 xi +1
0.0 1.000000 0.000000 0.100000 1.005000
0.1 1.005000 0.095000 0.185500 1.019025
0.2 1.019025 0.180975 0.262878 1.041218
0.3 1.041218 0.258782 0.332904 1.070802
0.4 1.070802 0.329198 0.396278 1.107076
0.5 1.107076 0.392924 0.453632 1.149404
0.6 1.149404 0.450596 0.505537 1.197210
0.7 1.197210 0.502790 0.552511 1.249975
0.8 1.249975 0.550025 0.595022 1.307228
0.9 1.307228 0.592772 0.633495 1.368541
1.0 1.368541 — — —
0
x1 (t) = f1 (t, x1 (t), x2 (t), . . . , xn (t))
x 0 (t) = f2 (t, x1 (t), x2 (t), . . . , xn (t))
2
..
.
0
xn (t) = fn (t, x1 (t), x2 (t), . . . , xn (t))
Em notação vectorial
x0 (t) = f(t, x(t))
onde f : R1+n → Rn é definida por f = [f1 f2 ... fn ]T e x : R → Rn é
definida por x = [x1 x2 . . . xn ]T .
x(t0 ) = x0 ,
Malha {ti }N
i=0 de passo h no intervalo [t0 , T ]
xi+1 = xi + hf(ti , xi )
F1 = f(ti , xi )
F2 = f(ti + h, xi + hF1 )
xi+1 = xi + h2 (F1 + F2 )
...
MIEEC (FEUP) MÉTODOS NUMÉRICOS 452 / 458
Integração de Equações diferenciais Equações diferenciais de ordem n
x(t0 ) = x0
x 0 (t0 ) = x00
···
(n−1)
x (n−1) (t0 ) = x0
x1 (t) = x(t)
x2 (t) = x 0 (t)
···
xn (t) = x (n−1) (t)