Métodos Numéricos
A. Ismael F. Vaz
Departamento de Produção e Sistemas Escola de Engenharia Universidade do Minho aivaz@dps.uminho.pt
Mestrado Integrado em Engenharia Mecânica Ano lectivo 2007/2008
Conteúdo
1 Introdução
2 Erros
3 Zeros de funções
4 Resolução de sistemas lineares
5 Resolução de sistemas não lineares
6 Interpolação polinomial
7 Interpolação segmentada - Splines
8 Mínimos quadrados lineares
9 Equações diferenciais - Condições iniciais
10 Equações diferenciais - Condições Fronteira
11 Integração numérica
Conteúdo
1 Introdução
2 Erros
3 Zeros de funções
4 Resolução de sistemas lineares 5 Resolução de sistemas não lineares 6 Interpolação polinomial
7 Interpolação segmentada - Splines 8 Mínimos quadrados lineares
9 Equações diferenciais - Condições iniciais 10 Equações diferenciais - Condições Fronteira 11 Integração numérica
Apresentação - Docente
Aulas teóricas
A. Ismael F. Vaz - aivaz@dps.uminho.pt www.norg.uminho.pt/aivaz
Aula teórico-prática e práticas Senhorinha Teixeira – st@dps.uminho.pt Ana Maria Rocha – arocha@dps.uminho.pt Horário de atendimento
Quintas das 14h00 às 15h00. Marcação por email.
As docentes das TPs e Ps terão o seu horário de atendimento.
Apresentação - Docente
Aulas teóricas
A. Ismael F. Vaz - aivaz@dps.uminho.pt www.norg.uminho.pt/aivaz
Aula teórico-prática e práticas Senhorinha Teixeira – st@dps.uminho.pt Ana Maria Rocha – arocha@dps.uminho.pt
Horário de atendimento Quintas das 14h00 às 15h00. Marcação por email.
As docentes das TPs e Ps terão o seu horário de atendimento.
Apresentação - Docente
Aulas teóricas
A. Ismael F. Vaz - aivaz@dps.uminho.pt www.norg.uminho.pt/aivaz
Aula teórico-prática e práticas Senhorinha Teixeira – st@dps.uminho.pt Ana Maria Rocha – arocha@dps.uminho.pt Horário de atendimento
Quintas das 14h00 às 15h00. Marcação por email.
As docentes das TPs e Ps terão o seu horário de atendimento.
Apresentação - Disciplina
Página da disciplina;
www.norg.uminho.pt/aivaz
6 fichas TPs a realizar ao longo do semestre (17 valores nas aulas Ts) e 6 fichas Ps a realizar ao longo do semestre (3 valores 0.5 cada -nas aulas Ps).
A classificação final é: Fichas TPs + Fichas Ps.
Não é obrigatória a presença nas aulas Ts, TPs ou Ps. Mas atenção aos momentos de avaliação.
A avaliação feitas nas aulas Ps é considerada avaliação laboratorial, pelo que é exigido o valor mínimo de 50% para ter frequência (poder ir a exame).
Apresentação - Disciplina
Página da disciplina;
www.norg.uminho.pt/aivaz
6 fichas TPs a realizar ao longo do semestre (17 valores nas aulas Ts) e 6 fichas Ps a realizar ao longo do semestre (3 valores 0.5 cada -nas aulas Ps).
A classificação final é: Fichas TPs + Fichas Ps.
Não é obrigatória a presença nas aulas Ts, TPs ou Ps. Mas atenção aos momentos de avaliação.
A avaliação feitas nas aulas Ps é considerada avaliação laboratorial, pelo que é exigido o valor mínimo de 50% para ter frequência (poder ir a exame).
Apresentação - Disciplina
Página da disciplina;
www.norg.uminho.pt/aivaz
6 fichas TPs a realizar ao longo do semestre (17 valores nas aulas Ts) e 6 fichas Ps a realizar ao longo do semestre (3 valores 0.5 cada -nas aulas Ps).
A classificação final é: Fichas TPs + Fichas Ps.
Não é obrigatória a presença nas aulas Ts, TPs ou Ps. Mas atenção aos momentos de avaliação.
A avaliação feitas nas aulas Ps é considerada avaliação laboratorial, pelo que é exigido o valor mínimo de 50% para ter frequência (poder ir a exame).
Apresentação - Disciplina
Página da disciplina;
www.norg.uminho.pt/aivaz
6 fichas TPs a realizar ao longo do semestre (17 valores nas aulas Ts) e 6 fichas Ps a realizar ao longo do semestre (3 valores 0.5 cada -nas aulas Ps).
A classificação final é: Fichas TPs + Fichas Ps.
Não é obrigatória a presença nas aulas Ts, TPs ou Ps. Mas atenção aos momentos de avaliação.
A avaliação feitas nas aulas Ps é considerada avaliação laboratorial, pelo que é exigido o valor mínimo de 50% para ter frequência (poder ir a exame).
Apresentação - Disciplina
Página da disciplina;
www.norg.uminho.pt/aivaz
6 fichas TPs a realizar ao longo do semestre (17 valores nas aulas Ts) e 6 fichas Ps a realizar ao longo do semestre (3 valores 0.5 cada -nas aulas Ps).
A classificação final é: Fichas TPs + Fichas Ps.
Não é obrigatória a presença nas aulas Ts, TPs ou Ps. Mas atenção aos momentos de avaliação.
A avaliação feitas nas aulas Ps é considerada avaliação laboratorial, pelo que é exigido o valor mínimo de 50% para ter frequência (poder ir a exame).
Material necessário e de apoio
Calculadora científica;
Folhas das fichas TPs; Papel e caneta;
Livro de Computação Numérica; www.norg.uminho.pt/emgpf Software CoNum;
www.norg.uminho.pt/emgpf
Formulário e acetatos disponíveis na página; www.norg.uminho.pt/aivaz
Material necessário e de apoio
Calculadora científica; Folhas das fichas TPs;
Papel e caneta;
Livro de Computação Numérica; www.norg.uminho.pt/emgpf
Software CoNum;
www.norg.uminho.pt/emgpf
Formulário e acetatos disponíveis na página; www.norg.uminho.pt/aivaz
Material necessário e de apoio
Calculadora científica; Folhas das fichas TPs; Papel e caneta;
Livro de Computação Numérica; www.norg.uminho.pt/emgpf Software CoNum;
www.norg.uminho.pt/emgpf
Formulário e acetatos disponíveis na página; www.norg.uminho.pt/aivaz
Material necessário e de apoio
Calculadora científica; Folhas das fichas TPs; Papel e caneta;
Livro de Computação Numérica; www.norg.uminho.pt/emgpf
Software CoNum;
www.norg.uminho.pt/emgpf
Formulário e acetatos disponíveis na página; www.norg.uminho.pt/aivaz
Material necessário e de apoio
Calculadora científica; Folhas das fichas TPs; Papel e caneta;
Livro de Computação Numérica; www.norg.uminho.pt/emgpf Software CoNum;
www.norg.uminho.pt/emgpf
Formulário e acetatos disponíveis na página; www.norg.uminho.pt/aivaz
Material necessário e de apoio
Calculadora científica; Folhas das fichas TPs; Papel e caneta;
Livro de Computação Numérica; www.norg.uminho.pt/emgpf Software CoNum;
www.norg.uminho.pt/emgpf
Formulário e acetatos disponíveis na página; www.norg.uminho.pt/aivaz
Programa detalhado
Dia Matéria
28-Fev Apresentação da disciplina. Erros. Algarismos significativos. Fórmula fundamental dos erros. Erros de truncatura.
06-Mar Solução de equações não lineares. Método dos gráficos. Método da secante e sua convergência. Método de Newton e sua convergência. Critérios de paragem.
13-Mar Sistemas de equações lineares. Eliminação de Gauss com pivotagem parcial. Avaliação sobre zeros de funções (2.5 valores).
27-Mar Métodos iterativos de Gauss-Seidel e Jacobi. Sistemas de equações não lineares. Método de Newton.
03-Abr Interpolação polinomial. Diferenças divididas. Fórmula interpoladora de Newton. Erro da fórmula interpoladora de Newton. Avaliação sobre sistemas lineares e não lineares (2.5 valores).
Programa detalhado
Dia Matéria
10-Abr Splines lineares e cúbicas. 17-Abr Splines cúbicas. Revisões
24-Abr Revisões. Avaliação sobre interpolação (3 valores). 08-Mai Mínimos quadrados polinomiais e modelos lineares.
30-Mai Equações diferenciais com condições iniciais de 1a. Sistemas de equa-ções diferenciais de 1a ordem.
05-Jun Equações diferenciais de ordem superior. Avaliação sobre mínimos quadrados (3 valores).
12-Jun Equações diferencias com condições fronteira. Integração numérica. Fórmulas simples e compostas do Trapézio, Simpson e 3/8.
19-Jun Revisões. Avaliação sobre equações diferenciais (3 valores). 26-Jun Revisões. Avaliação sobre integração (3 valores).
03-Jul Revisões.
Motivação da disciplina
Presente em todos os cursos de engenharia (aplicações em todas as áreas da engenharia);
A disciplina de métodos numéricos dedica-se à resolução numérica de problemas matemáticos. Com o desenvolvimento dos computadores encontra-se direccionada para a implementação de algoritmos estáveis.
Motivação da disciplina
Presente em todos os cursos de engenharia (aplicações em todas as áreas da engenharia);
A disciplina de métodos numéricos dedica-se à resolução numérica de problemas matemáticos. Com o desenvolvimento dos computadores encontra-se direccionada para a implementação de algoritmos estáveis.
Controlo óptimo - Um exemplo
Problema de optimização do processo semi-contínuo de produção de Etanol.
O problema de optimização é: (t0 = 0 e tf = 61.2 dias) max u(t) J (tf) ≡ x3(tf)x4(tf) s.t. dx1 dt = g1x1− u x1 x4 dx2 dt = −10g1x1+ u 150 − x2 x4 dx3 dt = g2x1− u x3 x4 dx4 dt = u 0 ≤ x4(tf) ≤ 200 0 ≤ u(t) ≤ 12 ∀t ∈ [t0, tf] com g1= 0.408 1 + x3/16 x 2 0.22 + x2 g2= 1 1 + x3/71.5 x 2 0.44 + x2
onde x1, x2e x3são as concentrações da massa celular, substrato e produto (g/L), e x4é o volume (L). As condições iniciais são:
x(t0) = (1, 150, 0, 10)T.
Abordagem para a resolução
Grande exigência em termos numéricos;
Grande exigência em termos de programação;
Solução da equação diferencial com o CVODE (software em C);
Problemas codificados em AMPL (linguagem de modelação); Algoritmo para optimização sem derivadas;
Abordagem para a resolução
Grande exigência em termos numéricos; Grande exigência em termos de programação;
Solução da equação diferencial com o CVODE (software em C); Problemas codificados em AMPL (linguagem de modelação);
Algoritmo para optimização sem derivadas;
Abordagem para a resolução
Grande exigência em termos numéricos; Grande exigência em termos de programação;
Solução da equação diferencial com o CVODE (software em C);
Problemas codificados em AMPL (linguagem de modelação); Algoritmo para optimização sem derivadas;
Abordagem para a resolução
Grande exigência em termos numéricos; Grande exigência em termos de programação;
Solução da equação diferencial com o CVODE (software em C); Problemas codificados em AMPL (linguagem de modelação);
Algoritmo para optimização sem derivadas;
Abordagem para a resolução
Grande exigência em termos numéricos; Grande exigência em termos de programação;
Solução da equação diferencial com o CVODE (software em C); Problemas codificados em AMPL (linguagem de modelação); Algoritmo para optimização sem derivadas;
Conteúdo
1 Introdução2 Erros
3 Zeros de funções
4 Resolução de sistemas lineares 5 Resolução de sistemas não lineares 6 Interpolação polinomial
7 Interpolação segmentada - Splines 8 Mínimos quadrados lineares
9 Equações diferenciais - Condições iniciais 10 Equações diferenciais - Condições Fronteira 11 Integração numérica
Formato de vírgula flutuante normalizado
f l(x) = ±0.d1d2...dk× 10e
onde, 0.d1d2. . . dk corresponde à mantissa, e e é o expoente.
f lt(x) representa o valor de x em vírgula flutuante truncado e
f la(x) representa o valor de x em vírgula flutuante arredondado.
Exemplo
x = 2
3
f lt(x) = 0.66666 × 100
f la(x) = 0.66667 × 100
Formato de vírgula flutuante
(norma IEEE-754, 32 bits)
σ e + 64 d1 d2 d3 d4 d5 d6
1 bit 7 bits 4 bits 4 bits 4 bits 4 bits 4 bits 4 bits
Exemplo
x = 2490.125 = 9 × 162+ 11 × 161+ 10 × 160+ 2 × 16−1= 9 × 16−1+ 11 × 16−2+ 10 × 16−3+ 2 × 16−4 × 163
0 1000011 1001 1011 1010 0010 0000 0000
σ e + 64 d1 d2 d3 d4 d5 d6
Exemplo de programação
Exemplo de programação
Erros
Seja x o valor exacto e x o seu valor aproximado, que será usado nos cálculos
x − x é o erro absoluto (normalmente não se pode calcular, porque x é desconhecido);
|x − x| ≤ δx é o limite superior do erro absoluto; rx =
|x−x|
|x| = |x|δx ≈ |x|δx é o erro relativo. Exemplo
Pediu-se a duas pessoas para contarem laranjas de dois cestos. A primeira contou 980 laranjas num cesto de 1000 e a segunda contou 480 num cesto de 500. Apesar de cometerem o mesmo erro absoluto (δ1= 20 laranjas e δ2= 20 laranjas)
a segunda cometeu um erro maior, visto que r1= 100020 = 0.02 e r2= 50020 = 0.04.
Erros
Seja x o valor exacto e x o seu valor aproximado, que será usado nos cálculos
x − x é o erro absoluto (normalmente não se pode calcular, porque x é desconhecido);
|x − x| ≤ δx é o limite superior do erro absoluto;
rx = |x−x|
|x| = |x|δx ≈ |x|δx é o erro relativo. Exemplo
Pediu-se a duas pessoas para contarem laranjas de dois cestos. A primeira contou 980 laranjas num cesto de 1000 e a segunda contou 480 num cesto de 500. Apesar de cometerem o mesmo erro absoluto (δ1= 20 laranjas e δ2= 20 laranjas)
a segunda cometeu um erro maior, visto que r1= 100020 = 0.02 e r2= 50020 = 0.04.
Erros
Seja x o valor exacto e x o seu valor aproximado, que será usado nos cálculos
x − x é o erro absoluto (normalmente não se pode calcular, porque x é desconhecido);
|x − x| ≤ δx é o limite superior do erro absoluto; rx =
|x−x|
|x| = |x|δx ≈ |x|δx é o erro relativo.
Exemplo
Pediu-se a duas pessoas para contarem laranjas de dois cestos. A primeira contou 980 laranjas num cesto de 1000 e a segunda contou 480 num cesto de 500. Apesar de cometerem o mesmo erro absoluto (δ1= 20 laranjas e δ2= 20 laranjas)
a segunda cometeu um erro maior, visto que r1= 100020 = 0.02 e r2= 50020 = 0.04.
Erros
Seja x o valor exacto e x o seu valor aproximado, que será usado nos cálculos
x − x é o erro absoluto (normalmente não se pode calcular, porque x é desconhecido);
|x − x| ≤ δx é o limite superior do erro absoluto; rx =
|x−x|
|x| = |x|δx ≈ |x|δx é o erro relativo. Exemplo
Pediu-se a duas pessoas para contarem laranjas de dois cestos. A primeira contou 980 laranjas num cesto de 1000 e a segunda contou 480 num cesto de 500. Apesar de cometerem o mesmo erro absoluto (δ1= 20 laranjas e δ2= 20 laranjas) a segunda cometeu um erro maior, visto que r1= 100020 = 0.02 e r2= 50020 = 0.04.
Fórmula fundamental dos erros
Dados n valores aproximados, x1, . . . , xn, e os seus respectivos erros
absolutos é possível calcular um majorante para o erro absoluto cometido quando se aplica uma função f , através da fórmula fundamental dos erros.
δf ≤ Mx1δx1+ Mx2δx2 + ... + Mxnδxn
onde maxx∈I ∂f ∂xi ≤ Mxi, com I = Ix1 × · · · × Ixn e Ixi = [xi− δxi, xi+ δxi] rf ≤ δf |f (x1, . . . , xn)|
Exemplo
Cálculo dos limites do erro absoluto e relativo do cálculo da função f (x) = x1− x2. Temos que ∂f ∂x1 ≤ Mx1 = 1 e ∂f ∂x2 ≤ Mx2 = 1, logo δf = δx1+ δx2 e rf ≤ δx1+ δx2 |x1− x2|
Algarismos Significativos
Casa decimais são as casas (algarismos) à direita da vírgula.
Os algarismos significativos são aqueles em que temos confiança do seu valor.
Exemplos:
0.1234567 tem 1 algarismo significativo se δ = 0.05, 2 se δ = 0.005 e 7 se δ = 0.00000005.
0.0000020 tem 7 casas decimais e 2 algarismos significativos (δ = 0.00000005).
Quando todas as casas decimais são significativas 0.2 é diferente de 0.20.
Conteúdo
1 Introdução 2 Erros3 Zeros de funções
4 Resolução de sistemas lineares 5 Resolução de sistemas não lineares 6 Interpolação polinomial
7 Interpolação segmentada - Splines 8 Mínimos quadrados lineares
9 Equações diferenciais - Condições iniciais 10 Equações diferenciais - Condições Fronteira 11 Integração numérica
Forma geral do problema
Pretende-se determinar x∗ tal que
f (x) = 0 Exemplo
Temos x∗ = −0.567143290409784 como solução para
ex+ x = 0
Nota: uma equação não linear pode não ter solução, ou ter mais do que uma.
Métodos iterativos
Uma sequência diz-se iterativa se é definida por uma função F
independente de k e dependente de um ou vários elementos anteriores a ele, xk= F (xk−1, xk−2, . . . )
Aproximações iniciais
Um método que se baseie numa sequência iterativa com k − 1 elementos anteriores necessita também de k − 1 valores iniciais.
Exemplo
xk= xk−1+ xk−2
Partindo de x0 = 1 e x1 = 1 temos x2 = x1+ x0 = 2,
x3= x2+ x1 = 2 + 1 = 3, x4 = x3+ x2= 3 + 2 = 5 gera uma sequência
com os números de Fibonacci.
Convergência
Uma sequência iterativa diz-se convergente quando lim k→∞xk = x ∗ Convergência superlinear lim k→+∞ |x∗− x k+1| |x∗− x k|1.618 = L ou lim k→+∞ |x∗− x k+1| |x∗− x k| = 0 Convergência quadrática lim k→+∞ |x∗− xk+1| |x∗− x k|2 = L
Critério de Paragem
A sequência de aproximações pode ser infinita. Como se pretende obter uma aproximação à solução implementa-se um critério de paragem.
Estimativa do erro relativo dk=
|xk+1− xk| |xk+1| ≤ 1 Valor da função
|f (xk+1)| ≤ 2
Número máximo de iterações
k ≥ nmax
Método dos gráficos
Uma aproximação ao zero da função f (x) pode obter-se pela intersecção do gráfico de f (x) com o eixo dos xx;
se f (x) = g(x) − h(x) os zeros de f (x) são os pontos de intersecção de g(x) com h(x).
O método dos gráficos é frequentemente usado para obtermos uma aproximação inicial para outros métodos mais precisos.
Exemplo
f (x) = ex+ x g(x) = ex h(x) = −x −1 −0.9 −0.8 −0.7 −0.6 −0.5 −0.4 −0.3 −0.2 −0.1 0 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1 x y f(x) h(x) g(x)Método da bissecção
Se f (xi)f (xs) < 0 então existe um número ímpar de raízes de f (x) no
intervalo [xi, xs].
Aproxima-se da raiz calculando xk = xi+xs2 , k = 1, 2, . . .
Considera-se o intervalo
[xi, xk] se f (xi)f (xk) < 0 e faz-se xs← xk
ou
[xk, xs] se f (xk)f (xs) < 0 e faz-se xi← xk
Interpretação gráfica (Bissecção)
f (x) = ex+ x −2 −1.5 −1 −0.5 0 0.5 1 1.5 2 −2 0 2 4 6 8 10 x f(x) xs xi xk xs xk+1Método da secante
Método iterativo em que se fornece o x1 e x2 (a raiz não está
necessariamente no intervalo [x1, x2]). O próximo valor é calculado pela
seguinte fórmula (equação iterativa):
xk+1= xk−
(xk− xk−1)f (xk)
f (xk) − f (xk−1)
, k = 2, 3, . . .
Zeros complexos: O método da secante também calcula zeros complexos,
bastando para isso usar aritmética complexa.
Convergência: A convergência do método da Secante depende do valor de
M
2m ser pequeno. M é o max |f
00(ξ)| e m é o min |f0(η)|, onde ξ, η ∈ I.
k+1 = −
f00(ξ) 2f0(η)k−1k
Interpretação gráfica (Secante)
f (x) = ex+ x −2 −1.5 −1 −0.5 0 0.5 1 1.5 2 −2 0 2 4 6 8 10 x f(x) xk xk−1 xk+1 xk+2Método de Newton
Método iterativo em que se fornece o x0. O próximo valor é calculado pela
seguinte formula (equação iterativa): xk+1 = xk−
f (xk)
f0(x k)
, k = 1, 2, ...
Zeros complexos: O método de Newton também calcula zeros
complexos, bastando para isso usar aritmética complexa.
Convergência: A convergência do método de Newton depende do valor de
M
2m ser pequeno. M é o max |f
00(ξ)| e m é o min |f0(η)|, onde ξ, η ∈ I. k+1 = − f00(ξ) 2f0(η) 2 k
Interpretação gráfica (Newton)
f (x) = ex+ x −2 −1.5 −1 −0.5 0 0.5 1 1.5 2 −2 0 2 4 6 8 10 x f(x) xk xk+1 xk+2Principais propriedades
Ambos possuem convergência local. Superlinear no caso do método da secante e quadrática no método de newton.
O método da secante não usa derivadas.
O método da secante e de Newton podem falhar quando o denominador da equação iterativa é próximo de zero, i.e., quando f (xk) ≈ f (xk−1) ou f0(xk) ≈ 0.
O método da secante e de Newton não convergem necessariamente para o zero mais próximo da aproximação inicial.
Exemplo e
x+ x = 0
Método de Newton com x0 = −0.5, ε1= 0.5, ε2 = 0.1, nmax= 2. Temos então que f (x) = ex+ x e que f0(x) = ex+ 1.
1a iteração x0= −0.5 f (−0.5) = e−0.5− 0.5 = 0.1065 e f0(−0.5) = 1.6065. x1= x0−ff (−0.5)0(−0.5) = −0.5 −0.10651.6065 = −0.5665 CP: f (−0.5665) = 1.0082 × 10−3≤ 0.1 (Verdadeiro) |x1−x0| |x1| = |−0.56665+0.5| |−0.5665| = 0.1174 ≤ 0.5 (Verdadeiro)
O processo iterativo pára com x∗≈ x1= −0.5665. E se o ε1 fosse 0.1?
Exemplo e
x+ x = 0
Método de Newton com x0 = −0.5, ε1= 0.5, ε2 = 0.1, nmax= 2.
Temos então que f (x) = ex+ x e que f0(x) = ex+ 1. 1a iteração x0= −0.5 f (−0.5) = e−0.5− 0.5 = 0.1065 e f0(−0.5) = 1.6065. x1= x0−ff (−0.5)0(−0.5) = −0.5 −0.10651.6065 = −0.5665 CP: f (−0.5665) = 1.0082 × 10−3≤ 0.1 (Verdadeiro) |x1−x0| |x1| = |−0.56665+0.5| |−0.5665| = 0.1174 ≤ 0.5 (Verdadeiro)
O processo iterativo pára com x∗≈ x1= −0.5665. E se o ε1 fosse 0.1?
Exemplo e
x+ x = 0
Método de Newton com x0 = −0.5, ε1= 0.5, ε2 = 0.1, nmax= 2.
Temos então que f (x) = ex+ x e que f0(x) = ex+ 1.
1a iteração x0= −0.5 f (−0.5) = e−0.5− 0.5 = 0.1065 e f0(−0.5) = 1.6065. x1= x0−ff (−0.5)0(−0.5) = −0.5 −0.10651.6065 = −0.5665 CP: f (−0.5665) = 1.0082 × 10−3≤ 0.1 (Verdadeiro) |x1−x0| |x1| = |−0.56665+0.5| |−0.5665| = 0.1174 ≤ 0.5 (Verdadeiro)
O processo iterativo pára com x∗≈ x1= −0.5665. E se o ε1 fosse 0.1?
Exemplo e
x+ x = 0
Método de Newton com x0 = −0.5, ε1= 0.5, ε2 = 0.1, nmax= 2.
Temos então que f (x) = ex+ x e que f0(x) = ex+ 1.
1a iteração x0= −0.5 f (−0.5) = e−0.5− 0.5 = 0.1065 e f0(−0.5) = 1.6065. x1= x0−ff (−0.5)0(−0.5) = −0.5 −0.10651.6065 = −0.5665 CP: f (−0.5665) = 1.0082 × 10−3≤ 0.1 (Verdadeiro) |x1−x0| |x1| = |−0.56665+0.5| |−0.5665| = 0.1174 ≤ 0.5 (Verdadeiro)
O processo iterativo pára com x∗≈ x1= −0.5665. E se o ε1 fosse 0.1?
Exemplo e
x+ x = 0
Método de Newton com x0 = −0.5, ε1= 0.5, ε2 = 0.1, nmax= 2.
Temos então que f (x) = ex+ x e que f0(x) = ex+ 1.
1a iteração x0= −0.5 f (−0.5) = e−0.5− 0.5 = 0.1065 e f0(−0.5) = 1.6065. x1= x0−ff (−0.5)0(−0.5) = −0.5 −0.10651.6065 = −0.5665 CP: f (−0.5665) = 1.0082 × 10−3≤ 0.1 (Verdadeiro) |x1−x0| |x1| = |−0.56665+0.5| |−0.5665| = 0.1174 ≤ 0.5 (Verdadeiro)
O processo iterativo pára com x∗≈ x1= −0.5665. E se o ε1 fosse 0.1?
Exemplo e
x+ x = 0
Método de Newton com x0 = −0.5, ε1= 0.5, ε2 = 0.1, nmax= 2.
Temos então que f (x) = ex+ x e que f0(x) = ex+ 1.
1a iteração x0= −0.5 f (−0.5) = e−0.5− 0.5 = 0.1065 e f0(−0.5) = 1.6065. x1= x0−ff (−0.5)0(−0.5) = −0.5 −0.10651.6065 = −0.5665 CP: f (−0.5665) = 1.0082 × 10−3≤ 0.1 (Verdadeiro) |x1−x0| |x1| = |−0.56665+0.5| |−0.5665| = 0.1174 ≤ 0.5 (Verdadeiro)
O processo iterativo pára com x∗≈ x1= −0.5665. E se o ε1 fosse 0.1?
Exemplo e
x+ x = 0
Método de Newton com x0 = −0.5, ε1= 0.5, ε2 = 0.1, nmax= 2.
Temos então que f (x) = ex+ x e que f0(x) = ex+ 1.
1a iteração x0= −0.5 f (−0.5) = e−0.5− 0.5 = 0.1065 e f0(−0.5) = 1.6065. x1= x0−ff (−0.5)0(−0.5) = −0.5 −0.10651.6065 = −0.5665 CP: f (−0.5665) = 1.0082 × 10−3≤ 0.1 (Verdadeiro) |x1−x0| |x1| = |−0.56665+0.5| |−0.5665| = 0.1174 ≤ 0.5 (Verdadeiro)
O processo iterativo pára com x∗≈ x1= −0.5665.
E se o ε1 fosse 0.1?
Exemplo e
x+ x = 0
Método de Newton com x0 = −0.5, ε1= 0.5, ε2 = 0.1, nmax= 2.
Temos então que f (x) = ex+ x e que f0(x) = ex+ 1.
1a iteração x0= −0.5 f (−0.5) = e−0.5− 0.5 = 0.1065 e f0(−0.5) = 1.6065. x1= x0−ff (−0.5)0(−0.5) = −0.5 −0.10651.6065 = −0.5665 CP: f (−0.5665) = 1.0082 × 10−3≤ 0.1 (Verdadeiro) |x1−x0| |x1| = |−0.56665+0.5| |−0.5665| = 0.1174 ≤ 0.5 (Verdadeiro) O processo iterativo pára com x∗≈ x1= −0.5665. E se o ε1 fosse 0.1?
Exemplo e
x+ x = 0
Método de Newton com x0 = −0.5, ε1= 0.5, ε2 = 0.1, nmax= 2.
Temos então que f (x) = ex+ x e que f0(x) = ex+ 1.
1a iteração x0= −0.5 f (−0.5) = e−0.5− 0.5 = 0.1065 e f0(−0.5) = 1.6065. x1= x0−ff (−0.5)0(−0.5) = −0.5 −0.10651.6065 = −0.5665 CP: f (−0.5665) = 1.0082 × 10−3≤ 0.1 (Verdadeiro) |x1−x0| |x1| = |−0.56665+0.5| |−0.5665| = 0.1174 ≤ 0.5 (Verdadeiro)
O processo iterativo pára com x∗≈ x1= −0.5665.
E se o ε1 fosse 0.1?
Exemplo e
x+ x = 0
Método de Newton com x0 = −0.5, ε1= 0.5, ε2 = 0.1, nmax= 2.
Temos então que f (x) = ex+ x e que f0(x) = ex+ 1.
1a iteração x0= −0.5 f (−0.5) = e−0.5− 0.5 = 0.1065 e f0(−0.5) = 1.6065. x1= x0−ff (−0.5)0(−0.5) = −0.5 −0.10651.6065 = −0.5665 CP: f (−0.5665) = 1.0082 × 10−3≤ 0.1 (Verdadeiro) |x1−x0| |x1| = |−0.56665+0.5| |−0.5665| = 0.1174 ≤ 0.5 (Verdadeiro)
O processo iterativo pára com x∗≈ x1= −0.5665. E se o ε1 fosse 0.1?
Conteúdo
1 Introdução 2 Erros3 Zeros de funções
4 Resolução de sistemas lineares
5 Resolução de sistemas não lineares 6 Interpolação polinomial
7 Interpolação segmentada - Splines 8 Mínimos quadrados lineares
9 Equações diferenciais - Condições iniciais 10 Equações diferenciais - Condições Fronteira 11 Integração numérica
Forma geral do problema
a11x1+ a12x2+ · · · + a1nxn= b1 a21x1+ a22x2+ · · · + a2nxn= b2 . . . an1x1+ an2x2+ · · · + annxn= bnÉ um sistema com n equações lineares nas n incógnitas, x1, x2, . . . , xn. O
sistema pode ser escrito na forma matricial Ax = b a11 a12 . . . a1n a21 a22 . . . a2n . . . an1 an2 . . . ann x1 x2 . . . xn = b1 b2 . . . bn
Exemplo
3 2 −2 9 7 −9 6 8 −8 x1 x2 x3 = 1 1 1 É um sistema linear de dimensão 3 × 3. A matriz dos coeficientes A = 3 2 −2 9 7 −9 6 8 −8
∈ R3×3e o vector b = (1, 1, 1)T ∈ R3 é o vector dos termos independentes.
Definições
A característica de uma matriz A, c(A), é o número máximo de linhas paralelas, ou colunas, linearmente independentes que existem na matriz.
Para que um sistema seja possível e determinado temos de ter c(A) = n. Caso contrário (c(A) < n) o sistema é indeterminado ou impossível.
À matrix (A|b) que se obtém ampliando A com a coluna do termo independente b chama-se matriz ampliada do sistema.
Triangular superior (inferior): É uma matriz em que os elementos abaixo (acima) da diagonal principal são zeros.
Tridiagonal: Matriz em que aij = 0, se |i − j| ≥ 2, i, j = 1, . . . , n.
Uma matriz com muitos elementos nulos diz-se esparsa.
Definições
A característica de uma matriz A, c(A), é o número máximo de linhas paralelas, ou colunas, linearmente independentes que existem na matriz.
Para que um sistema seja possível e determinado temos de ter c(A) = n. Caso contrário (c(A) < n) o sistema é indeterminado ou impossível.
À matrix (A|b) que se obtém ampliando A com a coluna do termo independente b chama-se matriz ampliada do sistema.
Triangular superior (inferior): É uma matriz em que os elementos abaixo (acima) da diagonal principal são zeros.
Tridiagonal: Matriz em que aij = 0, se |i − j| ≥ 2, i, j = 1, . . . , n.
Uma matriz com muitos elementos nulos diz-se esparsa.
Definições
A característica de uma matriz A, c(A), é o número máximo de linhas paralelas, ou colunas, linearmente independentes que existem na matriz.
Para que um sistema seja possível e determinado temos de ter c(A) = n. Caso contrário (c(A) < n) o sistema é indeterminado ou impossível.
À matrix (A|b) que se obtém ampliando A com a coluna do termo independente b chama-se matriz ampliada do sistema.
Triangular superior (inferior): É uma matriz em que os elementos abaixo (acima) da diagonal principal são zeros.
Tridiagonal: Matriz em que aij = 0, se |i − j| ≥ 2, i, j = 1, . . . , n.
Uma matriz com muitos elementos nulos diz-se esparsa.
Definições
A característica de uma matriz A, c(A), é o número máximo de linhas paralelas, ou colunas, linearmente independentes que existem na matriz.
Para que um sistema seja possível e determinado temos de ter c(A) = n. Caso contrário (c(A) < n) o sistema é indeterminado ou impossível.
À matrix (A|b) que se obtém ampliando A com a coluna do termo independente b chama-se matriz ampliada do sistema.
Triangular superior (inferior): É uma matriz em que os elementos abaixo (acima) da diagonal principal são zeros.
Tridiagonal: Matriz em que aij = 0, se |i − j| ≥ 2, i, j = 1, . . . , n. Uma matriz com muitos elementos nulos diz-se esparsa.
Definições
A característica de uma matriz A, c(A), é o número máximo de linhas paralelas, ou colunas, linearmente independentes que existem na matriz.
Para que um sistema seja possível e determinado temos de ter c(A) = n. Caso contrário (c(A) < n) o sistema é indeterminado ou impossível.
À matrix (A|b) que se obtém ampliando A com a coluna do termo independente b chama-se matriz ampliada do sistema.
Triangular superior (inferior): É uma matriz em que os elementos abaixo (acima) da diagonal principal são zeros.
Tridiagonal: Matriz em que aij = 0, se |i − j| ≥ 2, i, j = 1, . . . , n.
Uma matriz com muitos elementos nulos diz-se esparsa.
Tipos de métodos
Métodos directos e estáveis. Métodos que calculam a solução exacta do sistema ao fim de um número finito de operações elementares, caso não ocorram erros de arredondamento.
Matrizes dos coeficientes densas e de pequena dimensão.
Métodos iterativos. Métodos que definem uma sequência infinita de operações, determinando uma sequência de aproximações, cujo limite é a solução exacta do sistema.
Matrizes dos coeficientes esparsas e de grande dimensão.
Tipos de métodos
Métodos directos e estáveis. Métodos que calculam a solução exacta do sistema ao fim de um número finito de operações elementares, caso não ocorram erros de arredondamento.
Matrizes dos coeficientes densas e de pequena dimensão.
Métodos iterativos. Métodos que definem uma sequência infinita de operações, determinando uma sequência de aproximações, cujo limite é a solução exacta do sistema.
Matrizes dos coeficientes esparsas e de grande dimensão.
Estabilidade numérica
Considere-se o seguinte sistema linear:
0.0001x1+ x2 = 1.0001
x1+ x2 = 2
cuja solução é x = (1, 1)T. Usando aritmética de três algarismos
significativos e considerando o multiplicador igual a −0.100×101 −3 = −0.100 × 105, surge o sistema condensado
0.100 × 10−3x1+ x2= 0.100 × 101
− 0.1 × 105x
2= −0.1 × 105
cuja solução é x = (0, 1)T!!!
Motivação - Continuação
Se nas mesmas condições usarmos a pivotagem parcial temos x1+ x2 = 2 0.100 × 10−3x1+ x2 = 0.100 × 101 m = −0.100×101 −3 = −0.100 × 10−3 x1+ x2 = 2 x2 = 0.100 × 101 cuja solução é x = (1, 1)T.
Eliminação de Gauss com Pivotagem Parcial (EGPP)
Corresponde a eliminação de Gauss, mas em que a linha usada na eliminação dos elementos da coluna das linhas seguintes é o maior em módulo. Exemplo: 3 2 −2 9 7 −9 6 8 −8 1 1 1 → 9 7 −9 3 2 −2 6 8 −8 1 1 1 m21= −39 m31= −69 9 7 −9 0 −0.333333 1 0 3.333333 −2 1 0.666667 0.333333 =
Eliminação de Gauss com Pivotagem Parcial (EGPP)
9 7 −9 0 3.333333 −2 0 −0.333333 1 1 0.333333 0.666667 m32= −−0.3333333.333333 = 0.1 = 9 7 −9 0 3.333333 −2 0 0 0.8 1 0.333333 0.7 Substituição inversa
Quando a matriz é triangular superior pode-se determinar a solução directamente, através da substituição inversa.
Exemplo 9 7 −9 0 3.333333 −2 0 0 0.8 1 0.333333 0.7 vem que x3= 0.7 0.8 = 0.875, x2= 0.333333 − (−2) × 0.875 3.333333 = 0.625 x1 = 1 − (−9) × 0.875 − 7 × 0.625 9 = 0.5
Substituição directa
Quando a matriz é triangular inferior pode-se determinar a solução directamente, através da substituição directa.
Exemplo 1 0 0 2 1 0 3 2 1 2 3 4 vem que x1 = 2 1 = 2, x2 = 3 − 2 × 2 1 = −1 x3 = 4 − 3 × 2 − 2 × (−1) 1 = 0
Decomposição LU
Da eliminação de Gauss com Pivotagem Parcial resulta (A |I ) → (U |J ) Exemplo 1 2 1 0 2 1 0 1 → 2 1 0 1 1 2 1 0 → 2 1 0 1 0 1.5 1 −0.5
Determinantes de Matrizes
det(A) = (−1)s n Y i=1 uiionde uii corresponde aos elementos da diagonal da matriz U e s é o
número de trocas de linhas para obter a matriz U . Exemplo det 1 2 2 1 = (−1)1det 2 1 0 1.5 = (−1)1× 2 × 1.5 = −3
Cálculo da Inversa de Matrizes
A matriz inversa de A (A−1) verifica
AA−1= I = A−1A.
O cálculo da matriz inversa reduz-se a resolução de n sistemas lineares da forma
Axj = ej, j = 1, . . . , n,
em que os vectores independentes ej são as colunas da matriz identidade.
O vector solução xj corresponde à coluna j da matriz inversa.
Na prática resolve-se os n sistemas em simultâneo, i.e., resolve-se a equação
(U |J ) por substituição inversa.
Cálculo da Inversa de Matrizes - Exemplo
1 2 1 0 2 1 0 1 → 2 1 0 1 1 2 1 0 → 2 1 0 1 0 1.5 1 −0.5 2 1 0 0 1.5 1 → x11= 0−1×0.66672 = −0.3334 x21= 1.51 = 0.6667 2 1 1 0 1.5 −0.5 → x12= 1−1×(−0.3333)2 = 0.6667 x22= −0.51.5 = −0.3333 A inversa de 1 2 2 1 é −0.3334 0.6667 0.6667 −0.3333Métodos iterativos
Nos métodos iterativos a solução exacta só é obtida ao fim de uma sequência infinita de operações.
O processo parte de uma aproximação inicial para a solução do sistema e usa uma equação iterativa da forma
M x(k+1)= N x(k)+ b, para k = 1, 2, . . .
Os métodos em que M e N não dependem de k dizem-se estacionários. Os métodos de Jacobi e Gauss-Seidel são métodos estacionário.
Método Iterativo Jacobi
D matriz dos elementos da diagonal principal, L matriz dos simétricos dos elementos abaixo da diagonal principal e U matriz dos simétricos dos elementos acima da diagonal principal.
O método de Jacobi usa a partição de A em D − (L + U ), i.e, M = D e N = L + U
A equação iterativa fica
Dx(k+1)= (L + U )x(k)+ b ou x(k+1)= D−1(L + U )x(k)+ D−1b A matriz iteração é
CJ = M−1N = D−1(L + U )
Método Iterativo Gauss-Seidel
M = D − L N = U
A equação iterativa fica
M x(k+1) = N x(k)+ b ou x(k+1) = M−1N x(k)+ M−1b A matriz iteração é
CGS= M−1N = (D − L)−1U.
Critério de Paragem
Erro relativo na aproximação x(k+1)− x(k) x(k+1) < 1 Resíduo Ax (k+1)− b < 2
Convergência dos métodos iterativos
Condições suficientes
A simétrica e definida positiva =⇒ GS exibe convergência global;
A é estrita e diagonalmente dominante =⇒ J e GS exibem convergência global;
kCkp < 1, para qualquer normal p, =⇒ J e GS exibem convergência global;
C é a matriz iteração de Jacobi ou Gauss-Seidel.
Convergência dos métodos iterativos
Condições suficientes
A simétrica e definida positiva =⇒ GS exibe convergência global; A é estrita e diagonalmente dominante =⇒ J e GS exibem convergência global;
kCkp < 1, para qualquer normal p, =⇒ J e GS exibem convergência global;
C é a matriz iteração de Jacobi ou Gauss-Seidel.
Convergência dos métodos iterativos
Condições suficientes
A simétrica e definida positiva =⇒ GS exibe convergência global; A é estrita e diagonalmente dominante =⇒ J e GS exibem convergência global;
kCkp < 1, para qualquer normal p, =⇒ J e GS exibem convergência global;
C é a matriz iteração de Jacobi ou Gauss-Seidel.
Algumas definições
Uma matriz A diz-se simétrica se A = AT.
Uma matriz é definida positiva se dTAd > 0, ∀d 6= 0. É equivalente a
verificar que todos os determinante das sub-matrizes principais são maiores do que zero.
Uma matriz A diz-se estrita e diagonalmente dominante se |aii| >Pnj=1
j6=i
|aij|, i = 1, . . . , n
Algumas definições
Uma matriz A diz-se simétrica se A = AT.
Uma matriz é definida positiva se dTAd > 0, ∀d 6= 0. É equivalente a
verificar que todos os determinante das sub-matrizes principais são maiores do que zero.
Uma matriz A diz-se estrita e diagonalmente dominante se |aii| >Pnj=1
j6=i
|aij|, i = 1, . . . , n
Algumas definições
Uma matriz A diz-se simétrica se A = AT.
Uma matriz é definida positiva se dTAd > 0, ∀d 6= 0. É equivalente a
verificar que todos os determinante das sub-matrizes principais são maiores do que zero.
Uma matriz A diz-se estrita e diagonalmente dominante se |aii| >Pnj=1
j6=i
|aij|, i = 1, . . . , n
Exemplo - convergência de Gauss-Seidel
Considere-se a seguinte matriz dos coeficientes de um sistema linear A =
3 1
1 2
Como a A = AT a matriz é simétrica.
3 1
1 2
det(|3|) = 3 > 0 det(A) = 3 × 2 − 1 × 1 = 5 > 0 Logo A é simétrica e definida positiva e o método de Gauss-Seidel converge.
Exemplo - convergência de Jacobi
Considere-se o seguinte sistema
1 2 1
3 1 1
Como |1| ≯ |2| a matriz dos coeficientes não é estrita e diagonalmente dominante e nada se pode concluir acerca da convergência do método de Jacobi. No entanto se trocarmos as linhas temos
3 1 1
1 2 1
e como |3| > |1| e |2| > |1| a matriz é estrita e diagonalmente dominante, logo o método de Jacobi converge.
Exemplo - convergência de Jacobi
Considere-se a seguinte matriz dos coeficientes de um sistema linear A =
3 2
3 1
Como |3| > |2|, mas |1| ≯ |3| a matriz dos coeficientes não é estrita e diagonalmente dominante e nada se pode concluir acerca da convergência do método de Jacobi. D = 3 0 0 1 L = 0 0 −3 0 U = 0 −2 0 0
Continuação
CJ = D−1(L + U ) = 0.3333 0 0 1 0 −2 −3 0 = 0 −0.6666 −3 0 Como kCJk∞= max{|0| + | − 0.6666|, | − 3| + |0|} = 3 ≥ 1 e kcJk1= max{|0| + | − 3|, | − 0.6666| + |0|} = 3 ≥ 1nada se pode concluir acerca da convergência do método de Jacobi.
Uma iteração do método de Gauss-Seidel
Considere-se o seguinte sistema linear A = 3 1 1 1 2 1 , x(1)= (0, 0)T e 1 = = 0.1 D = 3 0 0 2 L = 0 0 −1 0 U = 0 −1 0 0 Equação iterativa é (D − L)x(k+1) = U x(k)+ b
Continuação
1a iteração 3 0 1 2 x(2) = 0 −1 0 0 0 0 + 1 1 = 1 1 3 0 1 1 2 1 → ( x(2)1 = 13 = 0.3333 x(2)2 = 1−1×0.33332 = 0.3334 C.P. x(2)− x(1) x(2) = 0.3333 0.3334 − 0 0 ∞ 0.3333 0.3334 ∞ = 0.3334 0.3334 = 1 ≮ 0.1Como o critério não se verifica deve-se continuar com a próxima iteração.
Conteúdo
1 Introdução 2 Erros3 Zeros de funções
4 Resolução de sistemas lineares
5 Resolução de sistemas não lineares
6 Interpolação polinomial
7 Interpolação segmentada - Splines 8 Mínimos quadrados lineares
9 Equações diferenciais - Condições iniciais 10 Equações diferenciais - Condições Fronteira 11 Integração numérica
Sistemas de equações não lineares
Forma geral do problema f1(x1, x2, . . . , xn) = 0 f2(x1, x2, . . . , xn) = 0 . . . fn(x1, x2, . . . , xn) = 0
em que f = (f1, f2, . . . , fn)T é um vector de funções pelo menos uma vez
continuamente diferenciáveis.
Pretende-se determinar um x∗ = (x∗1, x∗2, . . . , x∗n)T tal que f (x∗) = (0, 0, . . . , 0)T = 0.
Fórmula de Taylor a uma dimensão
Se f : R → R for l + 1 vezes diferenciável temos que
f (x) = l X k=0 f(k)(a) k! (x − a) k+f(l+1)(ξ) (l + 1)! (x − a) l+1
com ξ ∈ [a, x] e a função definida em torno de a.
Exemplo: Valor da função em x(k+1) definido em torno de x(k). f (x(k+1)) ≈ f (x(k)) + f0(x(k))(x(k+1)− x(k)) ou seja, quando se pretende que f (x(k+1)) = 0 vem
x(k+1)= x(k)− f (x
(k))
f0(x(k)) Eq. it. do método de Newton
Fórmula de Taylor para dimensão n
Se f : Rn→ Rn temos que f (x(k+1)) ≈ f (x(k))+ ∂f1(x(k)) ∂x1 ∂f1(x(k)) ∂x2 . . . ∂f1(x(k)) ∂xn ∂f2(x(k)) ∂x1 ∂f2(x(k)) ∂x2 . . . ∂f2(x(k)) ∂xn . . . ∂fn(x(k)) ∂x1 ∂fn(x(k)) ∂x2 . . . ∂fn(x(k)) ∂xn x(k+1)1 − x(k)1 x(k+1)2 − x(k)2 . . . x(k+1)n − x(k)n e deduzindo a equação iterativa do método de Newton para sistemas de equações não lineares temos,
J (x(k))∆(k)x = −f (x(k)), com x(k+1)= x(k)+ ∆(k)x em que J (x) é o Jacobiano da função.
Critério de paragem
kx(k+1)− x(k)k 2 kx(k+1)k 2 = k∆ (k) x k2 kx(k+1)k 2 ≤ 1 Se kx(k+1)k2 é zero, ou próximo de zero, então o critério deve ser
k∆(k)x k2 ≤ 1
kf (x(k+1))k2 ≤ 2
Número máximo de iterações.
Critério de paragem
kx(k+1)− x(k)k 2 kx(k+1)k 2 = k∆ (k) x k2 kx(k+1)k 2 ≤ 1 Se kx(k+1)k2 é zero, ou próximo de zero, então o critério deve ser
k∆(k)x k2 ≤ 1
kf (x(k+1))k2 ≤ 2 Número máximo de iterações.
Critério de paragem
kx(k+1)− x(k)k 2 kx(k+1)k 2 = k∆ (k) x k2 kx(k+1)k 2 ≤ 1 Se kx(k+1)k2 é zero, ou próximo de zero, então o critério deve ser
k∆(k)x k2 ≤ 1
kf (x(k+1))k2 ≤ 2
Número máximo de iterações.
Propriedades
Convergência local quadrática.
Determina a solução de um sistema linear numa única iteração. Inconveniente do cálculo do Jacobiano. (Também existe um método da secante para sistemas.)
O método falha quando o Jacobiano é singular (nova aproximação inicial).
O método de Newton não converge necessariamente para a solução mais próxima da aproximação inicial.
Propriedades
Convergência local quadrática.
Determina a solução de um sistema linear numa única iteração.
Inconveniente do cálculo do Jacobiano. (Também existe um método da secante para sistemas.)
O método falha quando o Jacobiano é singular (nova aproximação inicial).
O método de Newton não converge necessariamente para a solução mais próxima da aproximação inicial.
Propriedades
Convergência local quadrática.
Determina a solução de um sistema linear numa única iteração. Inconveniente do cálculo do Jacobiano. (Também existe um método da secante para sistemas.)
O método falha quando o Jacobiano é singular (nova aproximação inicial).
O método de Newton não converge necessariamente para a solução mais próxima da aproximação inicial.
Propriedades
Convergência local quadrática.
Determina a solução de um sistema linear numa única iteração. Inconveniente do cálculo do Jacobiano. (Também existe um método da secante para sistemas.)
O método falha quando o Jacobiano é singular (nova aproximação inicial).
O método de Newton não converge necessariamente para a solução mais próxima da aproximação inicial.
Propriedades
Convergência local quadrática.
Determina a solução de um sistema linear numa única iteração. Inconveniente do cálculo do Jacobiano. (Também existe um método da secante para sistemas.)
O método falha quando o Jacobiano é singular (nova aproximação inicial).
O método de Newton não converge necessariamente para a solução mais próxima da aproximação inicial.
Um exemplo
Considere-se o seguinte sistema não linear 3x2+ 2y2 = 35 4x2− 3y2 = 24 cujo Jacobiano é J (x, y) = 6x 4y 8x −6y Temos f (x, y) = 3x2+ 2y2− 35 4x2− 3y2− 24
e a aproximação inicial é (x, y)(1) = (2.5, 2). Pretende-se determinar a
solução com uma precisão de 1 = 2 = 10−1.
Continuação
1a iteração J ((x, y)(1)) = J (2.5, 2) = 15 8 20 −12 f ((x, y)(1)) = f (2.5, 2) = −8.25 −11 15 8 8.25 20 −12 11 → 20 −12 11 15 8 8.25 → 20 −12 11 0 17 0 → ∆(1)(x,y)= 0.55 0 e (x, y)(2)= (x, y)(1)+ ∆(1)(x,y) = (3.05, 2)TContinuação
C.P. f (x, y)(2) ∞= 0.9075 1.21 ∞ = 1.21 2 = 0.1Como o critério não se verifica faz-se uma nova iteração.
Conteúdo
1 Introdução 2 Erros3 Zeros de funções
4 Resolução de sistemas lineares 5 Resolução de sistemas não lineares
6 Interpolação polinomial
7 Interpolação segmentada - Splines 8 Mínimos quadrados lineares
9 Equações diferenciais - Condições iniciais 10 Equações diferenciais - Condições Fronteira 11 Integração numérica
Motivação
Pretende-se determinar uma função aproximação que descreva o melhor possível o comportamento de um conjunto de pontos (x0, f0), (x1, f1),
. . . , (xm, fm).
Este conjunto de pontos pode ter sido obtido de:
observações de uma experiência (função desconhecida);
uma função complexa cujo cálculo é difícil (função pode ser conhecida).
A função aproximação server para:
formular um modelo matemático que descreve o processo em causa;
obter valores da função em pontos que são desconhecidos.
Problema: Como implementar a função sin(x) num microcontrolador?
Motivação
Pretende-se determinar uma função aproximação que descreva o melhor possível o comportamento de um conjunto de pontos (x0, f0), (x1, f1),
. . . , (xm, fm).
Este conjunto de pontos pode ter sido obtido de:
observações de uma experiência (função desconhecida); uma função complexa cujo cálculo é difícil (função pode ser conhecida).
A função aproximação server para:
formular um modelo matemático que descreve o processo em causa; obter valores da função em pontos que são desconhecidos.
Problema: Como implementar a função sin(x) num microcontrolador?
Motivação
Pretende-se determinar uma função aproximação que descreva o melhor possível o comportamento de um conjunto de pontos (x0, f0), (x1, f1),
. . . , (xm, fm).
Este conjunto de pontos pode ter sido obtido de:
observações de uma experiência (função desconhecida); uma função complexa cujo cálculo é difícil (função pode ser conhecida).
A função aproximação server para:
formular um modelo matemático que descreve o processo em causa;
obter valores da função em pontos que são desconhecidos.
Problema: Como implementar a função sin(x) num microcontrolador?
Motivação
Pretende-se determinar uma função aproximação que descreva o melhor possível o comportamento de um conjunto de pontos (x0, f0), (x1, f1),
. . . , (xm, fm).
Este conjunto de pontos pode ter sido obtido de:
observações de uma experiência (função desconhecida); uma função complexa cujo cálculo é difícil (função pode ser conhecida).
A função aproximação server para:
formular um modelo matemático que descreve o processo em causa; obter valores da função em pontos que são desconhecidos.
Problema: Como implementar a função sin(x) num microcontrolador?
Motivação
Pretende-se determinar uma função aproximação que descreva o melhor possível o comportamento de um conjunto de pontos (x0, f0), (x1, f1),
. . . , (xm, fm).
Este conjunto de pontos pode ter sido obtido de:
observações de uma experiência (função desconhecida); uma função complexa cujo cálculo é difícil (função pode ser conhecida).
A função aproximação server para:
formular um modelo matemático que descreve o processo em causa; obter valores da função em pontos que são desconhecidos.
Problema: Como implementar a função sin(x) num microcontrolador?
Continuação
Pretende-se então, dado um conjunto de pontos (xi, fi), i = 1, . . . , m,
determinar uma função aproximação p(x) que melhor descreve o comportamento dos dados, de acordo com uma certa medida.
No nosso caso vamos apenas considerar funções aproximação polinomiais, i.e., pn(x) é um polinómio interpolador de grau n.
Para construirmos o polinómio interpolador de Newton são necessárias as diferenças divididas.
Diferenças divididas
com espaçamento não constanteConsidere-se uma função f (x) tabelada em m + 1 pontos x0, x1, . . . , xm
não igualmente espaçados.
Diferenças divididas de primeira ordem são [xj, xj+1] =
fj − fj+1
xj − xj+1
j = 0, . . . , m − 1 onde fj = f (xj).
A diferença dividida de primeira ordem corresponde ao declive da recta que passa em (xj, fj) e (xj+1, fj+1).
Continuação
As diferenças divididas de segunda ordem são [xj, xj+1, xj+2] =
[xj, xj+1] − [xj+1, xj+2]
xj− xj+2
, j = 0, . . . , m − 2.
As diferenças divididas de ordem n são [xj, xj+1, . . . , xj+n] =
[xj, xj+1, . . . , xj+n−1] − [xj+1, xj+2, . . . , xj+n]
xj− xj+n
para j = 0, . . . , m − n.
Tabela das diferenças divididas
x0 f0 [x0, x1] x1 f1 [x0, x1, x2] [x1, x2] [x0, x1, x2, x3] x2 f2 [x1, x2, x3] [x2, x3] [x1, x2, x3, x4] . . . [x0, . . . , xm−1, xm] xm−2 fm−2 [xm−3, xm−2, xm−1] [xm−2, xm−1] [xm−3, xm−2, xm−1, xm] xm−1 fm−1 [xm−2, xm−1, xm] [xm−1, xm] xm fmExemplo
xi fi dd1 dd2 dd3 dd4 dd5 1 2 0.5000 3 3 0.1667 1.0000 −0.0667 4 4 −0.1667 0.0250 0.5000 0.0833 −0.0043 6 5 0.1667 −0.0139 1.0000 −0.0139 7 6 0.0833 1.3333 10 10Propriedades das diferenças divididas
Simétrica nos argumentos, i.e., é independente da ordem dos argumentos; Exemplo xi fi 6 5 1.0000 7 6 0.0833 1.3333 10 10 xi fi 7 6 1.3333 10 10 0.0833 1.25 6 5
Propriedades das diferenças divididas
Se fj = uj+ vj para valores de xj, j = 0, . . . , m então a tabela das DD de
f é igual à soma das tabelas das DD de u e v.
Exemplo: f (x) = sin(x) + ex, u(x) = sin(x) e v(x) = ex.
xi ui 1 0.8415 0.0678 2 0.9093 −0.4180 −0.7682 3 0.1411 xi vi 1 2.7183 4.6708 2 7.3891 4.0128 12.6964 3 20.0855 xi fi 1 3.5598 4.7386 2 8.2984 3.5948 11.9282 3 20.2266
Propriedades das diferenças divididas
A diferença dividida de cf (x), com c constante, é igual ao produto da diferença dividida de f (x) por c.
Exemplo: f (x) = sin(x), cf (x) = 2 sin(x)
xi fi 1 0.8415 0.0678 2 0.9093 −0.4180 −0.7682 3 0.1411 xi 2fi 1 1.6830 0.1356 2 1.8186 −0.8360 −1.5364 3 0.2822
Propriedades das diferenças divididas
As diferenças divididas de ordem n da função xn são iguais a 1 e as de ordem r > n são nulas. Como consequência as diferenças divididas de ordem n de um polinómio de ordem n são iguais e diferentes de zero. Exemplo: f (x) = x2+ 3x + 1 xi fi dd1 dd2 dd3 dd4 −1 −1 2 0 1 1 4 0 1 5 1 0 6 0 2 11 1 8 3 19
Fórmula interpoladora de Newton
Das definições das diferenças divididas pode-se concluir que
f (x) = f0+ (x − x0)[x0, x] = f0+ (x − x0) f (x) − f0 x − x0 [x0, x] = [x0, x1] + (x − x1)[x0, x1, x] [x0, x1, x] = [x0, x1, x2] + (x − x2)[x0, x1, x2, x] . . . [x0, x1, . . . , xn−1, x] = [x0, x1, . . . , xn−1, xn] + (x − xn)[x0, x1, . . . , xn−1, xn, x] . . .
deduzindo-se a fórmula interpoladora de Newton
f (x) = f0+ (x − x0)[x0, x1] + (x − x0)(x − x1)[x0, x1, x2] + · · · +
(x − x0) . . . (x − xn−1)[x0, x1, . . . , xn] + · · ·
Polinómio interpolador de Newton
O polinómio interpolador de grau n obtém-se usado apenas n + 1 termos da fórmula interpoladora de Newton,
pn(x) = f0+ (x − x0)[x0, x1] + (x − x0)(x − x1)[x0, x1, x2] + · · · + (x − x0) . . . (x − xn−1)[x0, x1, . . . , xn] e temos que R(x) = f (x) − pn(x) = (x − x0)(x − x1) . . . (x − xn−1)(x − xn)f (n+1)(ξ) (n+1)! , ξ ∈ [x0, xn].
Diferenças divididas e derivadas
Da dedução da fórmula do erro de truncatura temos que [x0, x1, . . . , xn] =
f(n)(ξ)
n! , ξ ∈ [x0, xn],
ou seja, as diferenças divididas de primeira ordem são aproximações as primeiras derivadas e a diferença dividida de ordem n é uma aproximação à derivada de ordem n da função sobre n!.
Determinação do polinómio interpolador
Em geral temos que m > n. Para construirmos o polinómio interpolador de grau n são necessários n + 1 pontos. A escolha dos pontos está relacionada com o valor de ¯x para o qual se pretende obter uma estimativa da função f (¯x).
A escolha dos pontos deve obedecer as seguintes regras:
os pontos xj e xj+1 em que xj < ¯x < xj+1 devem ser incluídos. os restantes, até formar os n + 1 necessários, são aqueles que estão mais próximos de ¯x.
Determinação do polinómio interpolador
Em geral temos que m > n. Para construirmos o polinómio interpolador de grau n são necessários n + 1 pontos. A escolha dos pontos está relacionada com o valor de ¯x para o qual se pretende obter uma estimativa da função f (¯x).
A escolha dos pontos deve obedecer as seguintes regras:
os pontos xj e xj+1 em que xj < ¯x < xj+1 devem ser incluídos.
os restantes, até formar os n + 1 necessários, são aqueles que estão mais próximos de ¯x.
Exemplo
Considere-se a seguinte tabela de pontos
i 0 1 2 3 4 5
xi 1 3 4 6 7 10
fi 2 3 4 5 6 10
pretende-se obter uma estimativa de f (8) através usando uma interpolação quadrática (polinómio de colocação de grau 2).
Precisamos de 3 pontos para construir o polinómio de grau 2. x4 e x5
devem ser incluídos, uma vez que x4< 8 < x5, e o restante será o x3.
Continuação
Construindo a tabela das diferenças divididas temos que
xi fi 6 5 1.0000 7 6 0.0833 1.3333 10 10 e p2(x) = 5 + (x − 6) × 1 + (x − 6)(x − 7) × 0.0833, ficando f (8) ≈ p2(8) = 5 + (8 − 6) × 1 + (8 − 6)(8 − 7) × 0.0833 = 7.1666.
Nota: x0= 6, x1 = 7, e x2 = 10 para efeitos do cálculo do polinómio.
Sendo o polinómio interpolador único qualquer combinação de pontos resulta no mesmo polinómio.
Continuação
xi fi 7 6 1.3333 10 10 0.0833 1.25 6 5 e p2(x) = 6 + (x − 7) × 1.3333 + (x − 7)(x − 10) × 0.0833, ficando f (8) ≈ p2(8) = 6 + (8 − 7) × 1.333 + (8 − 7)(8 − 10) × 0.0833 = 7.1667.Cálculo do majorante do erro absoluto
ET (x) = (x − x0)(x − x1)(x − x2) f(3)(ξ) 3! , ξ ∈ [6, 10]Como necessitámos de uma estimativa para f(3)(ξ) e a função f (x) é
desconhecida vamos usar as diferenças divididas para a obter.
Com os pontos usados na construção do polinómio não é possível obter uma diferença dividida de ordem 3 e por isso vamos acrescentar mais um ponto à tabela anterior.
É indiferente inserir o ponto no início ou no final da tabela, uma vez que o valor de dd3 será o mesmo.
Continuação
xi fi 4 4 0.5000 6 5 0.1667 1.0000 −0.0139 7 6 0.0833 1.3333 10 10 ET (8) = |(8 − 6)(8 − 7)(8 − 10) × (−0.0139)| = 0.0556Conteúdo
1 Introdução 2 Erros3 Zeros de funções
4 Resolução de sistemas lineares 5 Resolução de sistemas não lineares 6 Interpolação polinomial
7 Interpolação segmentada - Splines
8 Mínimos quadrados lineares
9 Equações diferenciais - Condições iniciais 10 Equações diferenciais - Condições Fronteira 11 Integração numérica
Motivação
Pretende-se aproximar uma função f (x) conhecida em alguns pontos do seu domínio
por ser desconhecida a sua expressão analítica (experiência laboratorial);
porque a sua expressão analítica é demasiado complexa.
Dará bons resultados aproximar uma função conhecida em 11 pontos por um polinómio de grau 10?
Motivação
Pretende-se aproximar uma função f (x) conhecida em alguns pontos do seu domínio
por ser desconhecida a sua expressão analítica (experiência laboratorial);
porque a sua expressão analítica é demasiado complexa.
Dará bons resultados aproximar uma função conhecida em 11 pontos por um polinómio de grau 10?
Motivação
Pretende-se aproximar uma função f (x) conhecida em alguns pontos do seu domínio
por ser desconhecida a sua expressão analítica (experiência laboratorial);
porque a sua expressão analítica é demasiado complexa.
Dará bons resultados aproximar uma função conhecida em 11 pontos por um polinómio de grau 10?
Motivação
Pretende-se aproximar uma função f (x) conhecida em alguns pontos do seu domínio
por ser desconhecida a sua expressão analítica (experiência laboratorial);
porque a sua expressão analítica é demasiado complexa.
Dará bons resultados aproximar uma função conhecida em 11 pontos por um polinómio de grau 10?
Exemplo
Dada a função f (x) conhecida para os seguintes pontos (i = 0, . . . , 10)
xi 1 2 3 4 5 6 7 8 9 10 11 fi 0.1 0.2 0.3 0.4 0.45 0.44 0.4 0.45 0.4 0.4 0.35 0 2 4 6 8 10 12 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 x p10 (x)
Interpolação segmentada
A ideia subjacente à interpolação segmentada consiste na construção de segmentos entre pontos (em oposição à construção de um único polinómio).
A facilidade de usar polinómios fazem com que sejam candidatos naturais para a construção dos segmentos:
quando o segmento é um polinómio de grau 1 estamos na presença de uma Spline linear;
quando o segmento é um polinómio de grau 3 estamos na presença de uma Spline cúbica.
O grau do polinómio usado na construção do segmentonão está
relacionado com o número de pontos.
Para um conjunto de n + 1 pontos temos n segmentos.