Documente Academic
Documente Profesional
Documente Cultură
Esta apostila foi elaborada para servir de base para o desenvolvimento dos tópicos da
disciplina de Métodos Numéricos dos cursos de Engenharia Elétrica e Quı́mica do campus
Pelotas do Instituto Federal Sul-Rio-Grandense.
Conteúdo
2 Diferenciação Numérica 39
2.1 Derivadas de primeira ordem . . . . . . . . . . . . . . . . . . . . . . . 39
2.2 Derivadas de ordem superior . . . . . . . . . . . . . . . . . . . . . . . 50
2.3 Derivadas Parciais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
2.4 Exercı́cios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
3 Sistemas Lineares 56
3.1 Métodos Exatos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
3.2 Métodos Iterativos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
5 Interpolação Polinomial 97
5.1 O conceito de Interpolação . . . . . . . . . . . . . . . . . . . . . . . . . 97
5.2 Fórmula de Lagrange . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
5.2.1 Esquema prático . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
5.2.2 Fórmula de Lagrange para pontos igualmente espaçados . . 102
5.3 Fórmula de Newton para o polinômio
interpolador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
5.4 Fórmula de Newton-Gregory para o polinômio interpolador . . . . 106
5.5 Erro na Interpolação Polinomial . . . . . . . . . . . . . . . . . . . . . 108
5.6 Exercı́cios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
3
6 Integração Numérica 118
6.1 Aproximando f por polinômios . . . . . . . . . . . . . . . . . . . . . . 118
6.1.1 Regra dos Trapézios . . . . . . . . . . . . . . . . . . . . . . . . . 119
6.1.2 Regra de Simpson . . . . . . . . . . . . . . . . . . . . . . . . . . 122
6.1.3 Regra 38 de Simpson generalizada . . . . . . . . . . . . . . . . 124
6.2 Quadratura Gaussiana . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
6.3 Quadratura Adaptativa . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
6.4 Exercı́cios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
Teorema 1 Se uma função contı́nua f assume valor de sinais opostos nos pontos extremos
do intervalo [a, b], ou seja, f (a)f (b) < 0, então existe pelo menos um ponto ξ ∈ (a, b), tal
que f (ξ) = 0.
Solução:
(a) Considerando a equação f (x) = x3 + 3x − 1 = 0, temos x3 = 1 − 3x. Fazendo-se
f1 (x) = x3 e f2 (x) = 1 − 3x, temos que as raı́zes da equação original f (x) = 0, são dadas
pelos pontos onde os gráficos de f1 e f2 se interceptam. A Figura a seguir apresenta o
esboço gráfico de f1 e f2 .
Observando o gráfico verificamos que a função f admite um zero real ξ ∈ (0, 1). De fato,
como f é contı́nua em [0, 1] e f (0) = −1 < 0 e f (1) = 3 > 0, pelo Teorema 1, podemos
5
garantir que existe pelo menos um zero real em (0, 1).
Observando o gráfico verificamos que a função f admite um zero real ξ ∈ 0, 5; π2 . De
fato, como f é contı́nua em 0, 5; π2 e f (0, 5) = (0, 5)2 − sin 0, 5 ≈ −0, 229426 < 0 e
2 2
f π2 = π2 − sin π2 = π4 − 1 ≈ 1, 4674011 > 0, pelo Teorema 1, podemos garantir que
existe pelo menos um zero real em 0, 5; π2 .
1.2 Refinamento
Existem diferentes métodos de refinamento dos zeros de f . Estes baseiam-se em processos
iterativos.
6
Um método iterativo consiste em uma sequência de instruções que são executadas
passo a passo, algumas das quais são repetidas em ciclos. A execução de cada ciclo
recebe o nome de iteração. Cada iteração utiliza os resultados da iteração anterior e
efetua determinados testes para verificar se o resultado obtido é próximo o suficiente do
esperado.
No entanto, a pergunta que surge, neste caso, é: “Como efetuar o teste |x − ξ| < ε se não
conhecemos ξ?”
Uma forma é reduzir o intervalo que contém a raiz a cada iteração. Ao se conseguir um
intervalo [a, b] de modo que, se ξ ∈ [a, b] e b − a < ε, então ∀x ∈ [a, b], |x − ξ| < ε. Assim,
qualquer x ∈ [a, b] pode ser tomado como x.
|ek+1 |
lim = C, (1.1)
k→∞ |ek |p
O método da Bissecção reduz a amplitude do intervalo que contém a raiz até se atingir a
precisão requerida, usando para isto sucessivas divisões da amplitude de [a, b] ao meio.
7
Graficamente
Solução:
Convergência
Suponha que [a0 , b0 ] seja o intervalo inicial e que a raiz ξ seja única no interior desse
intervalo. O método da bissecção gera três sequências:
{ak }: não decrescente e limitada superiormente por b0 , de modo que, existe r ∈ R tal
que
lim ak = r.
k→∞
{bk }: não crescente e limitada inferiormente por a0 , de modo que, existe s ∈ R tal que
lim bk = s.
k→∞
ak +bk
{xk }: por construção xk = 2
, temos ak < xk < bk , ∀k.
8
A amplitude de cada intervalo gerado é a metade da amplitude do intervalo anterior.
Assim, ∀k, temos:
b0 − a0 b0 − a0
bk − ak = ⇒ lim (bk − ak ) = lim =0
2k k→∞ k→∞ 2k
⇒ lim (bk − ak ) = 0
k→∞
⇒ lim bk = lim ak
k→∞ k→∞
⇒ s=r
Seja r = s = ℓ o limite das duas sequências. Como para todo k o ponto xk pertence ao
intervalo (ak , bk ), pelo teorema do Confronto (teorema do Sanduı́che) temos que
lim xk = ℓ.
k→∞
bk−1 − ak−1 b0 − a0
bk − ak = = .
2 2k
Devemos obter o valor de k tal que bk − ak < ε, ou seja,
b0 − a0
< ε
2k
b0 − a0
2k >
ε
b0 − a0
k log 2 > log
ε
log(b0 − a0 ) − log ε
k >
log 2
9
Algoritmo - Método da Bissecção
Dados de entrada: extremidades a e b; precisão ε, número máximo de iterações N0 .
Passo 1: Se (b − a) < ε, então escolha para x qualquer x ∈ [a, b]. Fim.
Passo 2: Faça i = 1; FA=f(a)
Passo 3: Enquanto i ≤ N0 , execute os passos 4 a 7.
Passo 4: Faça x = a+b
2
; F x = f (x)
Passo 5: Se F x = 0 ou b−a2
< ε, então
Saı́da x;
Pare.
Passo 6: Faça i = i + 1.
Passo 7: Se F A · F x > 0, então faça a = x; F A = F x
Caso contrário faça b = x
Passo 8: Saı́da (“O método falhou após N0 iterações, N0 =”, N0 ); Pare.
Graficamente
−−→
Graficamente, este ponto x é a intersecção entre o eixo OX e a reta r que passa pelos
pontos (a, f (a)) e (b, f (b)).
f (b) − f (a)
Y − f (a) = (x − a)
b−a
10
−−→
O ponto de intersecção de r e o eixo OX é (x, 0). Assim, temos:
f (b) − f (a)
0 − f (a) = (x − a)
b−a
(b − a)
x−a = −f (a)
f (b) − f (a)
(b − a)
x = a − f (a)
f (b) − f (a)
a(f (b) − f (a)) − f (a)(b − a)
x =
f (b) − f (a)
af (b) − bf (a)
x =
f (b) − f (a)
Note que, a função ϕ(x) é tal que f (ξ) = 0 se e somente se ϕ(ξ) = ξ. Assim, transforma-
mos o problema de encontrar um zero de f (x) no problema de encontrar um ponto fixo
de ϕ(x). A função ϕ(x) é denominada função de iteração para a equação f (x) = 0.
11
Graficamente
Note que, a raiz da equação x = ϕ(x) é a abscissa do ponto de intersecção da reta y = x
e da curva y = ϕ. A figura a seguir ilustra a sequência de valores para xk obtidas pela
aplicação do método iterativo linear.
2x20 + 2 2 · 0, 32 + 2
x1 = = = 0, 436
5 5
2
2x1 + 2 2 · 0, 4362 + 2
x2 = = = 0, 4760384
5 5
2x22 + 2 2 · 0, 47603842 + 2
x3 = = = 0, 490645023
5 5
2
2x3 + 2 2 · 0, 4906450232 + 2
x4 = = = 0, 496293015
5 5
2x24 + 2 2 · 0, 4962930152 + 2
x5 = = = 0, 498522702
5 5
2
2x5 + 2 2 · 0, 4985227022 + 2
x6 = = = 0, 499409954
5 5
..
.
Assim, podemos perceber que tomando x0 = 0, 3, a sequência {xk } gerada, converge para
ξ1 = 0, 5.
12
No entanto, se tomarmos x0 = 2, 2, obtemos:
2x20 + 2 2 · 2, 22 + 2
x1 = = = 2, 336
5 5
2
2x1 + 2 2 · 2, 3362 + 2
x2 = = = 2, 5827584
5 5
2x22 + 2 2 · 2, 58275842 + 2
x3 = = = 3, 068256381
5 5
2
2x3 + 2 2 · 3, 0682563812 + 2
x4 = = = 4, 165678888
5 5
2x24 + 2 2 · 4, 1656788882 + 2
x5 = = = 7, 341152239
5 5
2x25 + 2 2 · 7, 3411522392 + 2
x6 = = = 21, 95700648
5 5
..
.
Neste caso, vemos claramente que a sequência gerada pelo processo iterativo a partir de
x0 = 2, 2 não converge para nenhum dos zeros da função f .
Convergência
É fácil constatar que dada uma equação f (x) = 0, existem infinitas funções de iteração
ϕ(x) para esta. Pelo exemplo anterior, verificamos que o processo iterativo obtido pelo
método do ponto fixo pode gerar uma sequência que seja convergente para apenas um
dos zeros de f ou até mesmo, dependendo da aproximação inicial não seja convergente
para nenhum dos zeros. Assim, a pergunta que surge é: “Como podemos garantir que o
processo iterativo seja convergente?”
O teorema a seguir nos fornece condições suficientes para que o processo seja convergente.
(iii) x0 ∈ I,
então a sequência {xk } gerada pelo processo iterativo xk+1 = ϕ(xk ) converge para ξ.
Como ξ é uma raiz da equação f (x) = 0, podemos escrever f (ξ) = 0 ⇒ ξ = ϕ(ξ). Além
disso, para qualquer k, temos xk+1 = ϕ(xk ). Logo,
13
Pelo Teorema do Valor Médio, como ϕ(x) é contı́nua e diferenciável em I, se xk ∈ I,
existe ck entre xk e ξ tal que
Pela desigualdade acima, percebemos que a distância entre xk+1 e ξ é estritamente menor
que a distância entre xk e ξ e, como I está centrado em ξ, temos que se xk ∈ I, então
xk+1 ∈ I. Assim, como por hipótese, x0 ∈ I, temos que xk ∈ I, ∀k.
Logo,
lim |xk − ξ| = 0 ⇒ lim xk = ξ.
k→∞ k→∞
|ϕ′(x)| < 1, em I.
14
2x2k +2 2x2 +2
Assim, considerando-se inicialmente o processo iterativo xk+1 = 5
, temos ϕ(x) = 5
e ϕ′ (x) = 4x
5
. Logo, |ϕ′ (x)| < 1 para − 54 < x < 45 .
No entanto, note que não podemos garantir a convergência deste método para a obtenção
da raiz ξ2 = 2, pois para x ≥ 45 , temos |ϕ′ (x)| > 1.
q q
5xk 5x
Consideremos, agora, o processo iterativo xk+1 = − 1. Assim, ϕ(x) =
2 2
−1
1
−
e ϕ′ (x) = 21 5x
2
5
− 1 2 · 25 = √ 5x . Fazendo-se |ϕ′ (x)| < 1, obtemos:
4 2
−1
q5 5
<1 ⇔ q <1
5x
5x
4 − 1 4 −1
2 2
r
5x 5
⇔ −1>
2 4
41
⇔ x> = 1, 025
40
Assim, embora ϕ e suas derivadas primeira e segunda sejam contı́nuas em I = (1, 025, +∞)
e |ϕ′ (x)| < 1 em I, não podemos garantir a convergência do método para a obtenção de
ξ1 = 0, 5, pois ξ1 6∈ I.
Note que, neste caso, podemos obter um intervalo I, centrado em ξ2 = 2, por exemplo,
|ϕ′ (x)| < 1 em I. Logo, tomando-se x0 ∈ I, garantimos que
I = [1, 5; 2, 5], de modo queq
5xk
o processo iterativo xk+1 = 2
− 1 gera uma sequência convergente para ξ2 .
Ordem de Convergência
Demonstração: Suponha que todas as hipóteses do teorema do ponto fixo sejam atendi-
das. Consideremos ξ a solução da equação x = ϕ(x).
Como ϕ′ existe em [a, b], aplicando-se o Teorema do Valor Médio para a função ϕ, temos:
15
Assim, fazendo-se k → ∞ na equação (1.4), temos:
xk+1 − ξ
lim = lim ϕ′ (ck ) = ϕ′ ( lim ck ) = ϕ′ (ξ),
k→∞ xk − ξ k→∞ k→∞
ou equivalentemente,
|xk+1 − ξ|
lim = |ϕ′ (ξ)|. (1.5)
k→∞ |xk − ξ|
Portanto, considerando a definição de ordem de convergência, temos que para |ϕ′ (ξ)| =
6 0,
o método iterativo do linear apresenta convergência linear, ou seja, p = 1.
Analisando a equação (1.3) é fácil ver que quanto menor for o valor de |ϕ′ (ξ)| mais rápida
será a convergência do método. Assim, para garantir e acelerar a convergência do método
do ponto fixo, tomaremos uma função de iteração ϕ(x) tal que ϕ(ξ) = 0.
Seja f uma função contı́nua em I e ξ uma raiz da equação f (x) = 0. A forma geral para
a função de iteração ϕ(x) é dada por:
16
Note que, queremos determinar uma função de iteração, de modo que ϕ′ (ξ) = 0. Assim,
temos:
ϕ′ (x) = 1 + A(x)f ′ (x) + A′ (x)f (x) ⇒ ϕ′ (ξ) = 1 + A(ξ)f ′(ξ) + A′ (ξ) f (ξ)
| {z } |{z}
=0 =0
′
⇒ 0 = 1 + A(ξ)f (ξ)
1
⇒ A(ξ) = − ′
f (ξ)
1
Portanto, tomando A(x) = − , obtemos:
f ′ (x)
f (x)
ϕ(x) = x −
f ′ (x)
Logo, tomando x0 como aproximação inicial para o zero de f , a sequência {xk } será gerada
por:
f (xk )
xk+1 = xk − , k = 0, 1, 2, ... (1.6)
f ′ (xk )
Graficamente
O valor xk+1 representa geometricamente a abscissa do ponto de intersecção da reta tan-
−−→
gente ao gráfico de f no ponto de coordenadas (xk , f (xk )) com o eixo OX.
17
Determinando o zero da reta cuja equação foi apresentada acima, obtemos:
Convergência
Teorema 4 Se f , f ′ e f ′′ são contı́nuas em I, cujo centro ξ é solução de f (x) = 0 e se
f ′ (ξ) 6= 0, então a ordem de convergência do método de Newton é quadrática, ou seja,
p = 2.
18
Algoritmo - Método de Newton-Raphson
Dados de entrada: aproximação inicial x0 ; precisão ε, número máximo de iterações N0 .
Passo 1: Faça i = 1
Passo 2: Enquanto i ≤ N0 , execute os passos 3 a 6.
Passo 3: Faça x = x0 − ff′(x 0)
(x0 )
;
x−x
Passo 4: Se x < ε ou |f (x)| < ε, então
0
Saı́da x;
Pare.
Passo 5: Faça i = i + 1.
Passo 6: Faça x0 = x.
Passo 7: Saı́da (“O método falhou após N0 iterações, N0 =”, N0 ); Pare.
√
Exemplo 5 Considere a equação x − 5e−x = 0. Obtenha a raiz positiva com quatro
casas decimais corretas. Usando (??) confirme que a ordem de convergência do método
de Newton é quadrática, isto é, p = 2.
√
Solução: Fazendo-se f (x) = x − 5e−x , temos f ′ (x) = 2√1 x + 5e−x . Assim, aplicando-se o
√
método de Newton, obtemos o zero de f (x), ou seja, a raiz da equação f (x) = x−5e−x =
0.
√ −x
√
x
Inicialmente,
√
considerando a equação x − 5e = 0, temos 5
= e−x . Fazendo-se
x
f1 (x) = 5 e f2 (x) = e−x , temos que as raı́zes da equação original f (x) = 0, são dadas
pelos pontos onde os gráficos de f1 e f2 se interceptam. A Figura a seguir apresenta o
esboço gráfico de f1 e f2 .
Observando o gráfico verificamos que a equação admite uma raiz real x ∈ (1, 2). Assim,
tomando x0 = 1, 4, a sequência obtida aplicando-se o método de Newton, considerando-se
o erro relativo inferior a 10−4 , é apresentada a seguir.
f (xk )
xk+1 = xk − , para k = 0, 1, 2, 3, ...
f ′ (xk )
Para k = 0, temos:
√
f (x0 ) = 1, 4 − 5e−1,4 = −0, 049768863,
19
f ′ (x0 ) = √1 + 5e−1,4 = 1, 655561947,
2 1,4
Para k = 1, temos:
√
f (x1 ) = 1, 430061613 − 5e−1,430061613 = −6, 1905507 × 10−4 ,
1
f ′ (x1 ) = 2√1,430061613 + 5e−1,430061613 = 1, 614582889,
Para k = 2, temos:
√
f (x2 ) = 1, 430445028 − 5e−1,430445028 = −9, 845 × 10−8 ,
1
f ′ (x2 ) = 2√1,430445028 + 5e−1,430445028 = 1, 614068193,
√
Assim, a raiz da equação x − 5e−x = 0 com a precisão desejada é x = 1, 430445089.
k xk ek = |xk − x|
0 1, 4 0, 030445089
1 1, 430061613 3, 83476 × 10−4
2 1, 430445028 6, 1 × 10−8
Assim,
ek+1 6, 1 × 10−8
ln
ln
ek 3, 83476 × 10−4
p = = = 1, 99939479.
ek 3, 83476 × 10−4
ln
ln
ek−1 0, 030445089
20
1.7 Método da Secante
A grande desvantagem da aplicação do método de Newton-Raphson é a necessidade de
determinar f ′ (x) e calcular o seu valor numérico em cada iteração. O método da Secante
contorna o problema ao aproximar a derivada f ′ (x) pelo quociente das diferenças:
f (xk ) − f (xk−1)
f ′ (xk ) ≈ ,
xk − xk−1
onde xk e xk−1 são duas aproximações para a raiz.
f (xk )
xk+1 = xk − f (xk )−f (xk−1 )
xk −xk−1
xk − xk−1
= xk − f (xk )
f (xk ) − f (xk−1 )
xk (f (xk ) − f (xk−1 )) − f (xk )(xk − xk−1 )
=
f (xk ) − f (xk−1 )
xk−1 f (xk ) − xk f (xk−1 )
=
f (xk ) − f (xk−1 )
Graficamente
−−→
Graficamente, xk+1 representa a abscissa do ponto de intersecção entre o eixo OX e a reta
r que passa pelos pontos (xk−1 , f (xk−1 )) e (xk , f (xk )).
De fato, a equação da reta r que passa pelos pontos (xk−1 , f (xk−1)) e (xk , f (xk )) é dada
por:
f (xk ) − f (xk−1)
Y − f (xk ) = (x − xk ).
xk − xk−1
21
−−→
Assim, considerando o ponto de intersecção da reta r com o eixo OX, temos:
f (xk ) − f (xk−1 )
0 − f (xk ) = (x − xk )
xk − xk−1
xk − xk−1
x − xk = −f (xk )
f (xk ) − f (xk−1 )
xk − xk−1
x = xk − f (xk )
f (xk ) − f (xk−1 )
xk (f (xk ) − f (xk−1 )) − f (xk )(xk − xk−1 )
x =
f (xk ) − f (xk−1 )
xk−1 f (xk ) − xk f (xk−1 )
x =
f (xk ) − f (xk−1 )
Convergência
Como o método da secante é uma aproximação para o método de Newton, as condições
para a convergência do método são praticamente as mesmas. Pode-se provar que a ordem
de convergência do método da secante é p ≈ 1, 618...
22
seguir apresenta o esboço gráfico de f1 e f2 .
Analisando o gráfico verificamos que a equação admite uma raiz real positiva no intervalo
(0, 2). Assim, consideraremos como aproximações iniciais para inicializar o método das
secantes x0 = 1 e x1 = 2.
A seguir é apresentada a sequência de aproximações para a raiz positiva da equação dada,
considerando-se o erro relativo inferior a 10−3 .
xk−1 f (xk ) − xk f (xk−1 )
xk+1 = , para k = 1, 2, 3, ...
f (xk ) − f (xk−1 )
Para k = 1, temos
f (x0 ) = 4 cos(x0 ) − ex0 = 4 cos(1) − e1 = −0, 557072605
f (x1 ) = 4 cos(x1 ) − ex1 = 4 cos(2) − e2 = −9, 053643445
x0 f (x1 ) − x1 f (x0 ) 1(−9, 053643445) − 2(−0, 557072605)
x2 = = = 0, 934435595
f (x1 ) − f (x0 ) (−9, 053643445) − (−0, 557072605)
x2 − x1 0, 934435595 − 2
ERx2 =
= = 1, 140329424
x2 0, 934435595
Para k = 2, temos
f (x2 ) = 4 cos(x2 ) − ex2 = 4 cos(0, 934435595) − e0,934435595 = −0, 168686397
x1 f (x2 ) − x2 f (x1 ) 2(−0, 168686397) − 0, 934435595(−9, 053643445)
x3 = =
f (x2 ) − f (x1 ) (−0, 168686397) − (−9, 053643445)
= 0, 914205196
x3 − x2 0, 914205196 − 0, 934435595
ERx3 = = = 0, 022128947 > 10−3
x3 0, 914205196
Para k = 3, temos
f (x3 ) = 4 cos(x3 ) − ex3 = 4 cos(0, 914205196) − e0,914205196 = −0, 053110334
x2 f (x3 ) − x3 f (x2 ) 0, 934435595(−0, 053110334) − 0, 914205196(−0, 168686397)
x4 = =
f (x3 ) − f (x2 ) (−0, 053110334) − (−0, 168686397)
= 0, 904908779
x4 − x3 0, 904908779 − 0, 914205196
ERx4 =
= = 0, 010273319 > 10−3
x4 0, 904908779
23
Para k = 4, temos
f (x4 ) = 4 cos(x4 ) − ex4 = 4 cos(0, 904908779) − e0,904908779 = −6, 7717783 × 10−4
x3 f (x4 ) − x4 f (x3 )
x5 =
f (x4 ) − f (x3 )
0, 914205196(−6, 7717783 × 10−4 ) − 0, 904908779(−0, 053110334)
=
−6, 7717783 × 10−4 − (−0, 053110334)
= 0, 904788715
x5 − x4 0, 904788715 − 0, 904908779
ERx5 = = = 1, 326982366 × 10−4 < 10−3
x5 0, 904788715
Assim, a raiz positiva com quatro casas decimais corretas obtida utilizando-se o método
das secantes é x = 0, 904788715.
1.8 Exercı́cios
1. Justifique que a função f , definida por
π(x + 1)
f (x) = cos + 0.148x − 0.9062,
8
possui uma raiz no intervalo (−1, 0) e outra no intervalo (0, 1).
(a) ψ1 (x) = 2x − 1
(b) ψ2 (x) = x2 − 2x + 2
(c) ψ3 (x) = x2 − 3x + 3
Verifique que 1 é a raiz de todas estas função. Qual delas você escolheria para obter
a raiz 1, utilizando o processo iterativo xk+1 = ψ(xk )? Com a sua escolha, exiba a
sequência gerada a partir da condição inicial x0 = 1.2.
24
√
5. A equação: x2 − a = 0 possui uma raiz x = a. Explicar algébrica e geometrica-
mente por que a sequência {xk }, obtida através do processo iterativo definido por:
√
xk+1 = xak , não converge para a qualquer que seja o valor de x0 .
6. Usando o método de Newton, com erro inferior a 10−2 , determinar uma raiz das
seguintes equações:
(a) 2x = tan x
(b) 5x3 + x2 − 12x + 4 = 0
(c) sin x − ex = 0
(d) x4 − 8 = 0
9. Determinar, pelo método das secantes, uma raiz de cada uma das equações:
(a) x = 2.7 ln x
(b) log x − cos x = 0
(c) e−x − log x = 0
25
Anexo 1.1 - Programa Bissecção
Program Bisseccao
!------------------------------------------------------------------------------
! Este programa determina o valor aproximado do zero de uma funç~
ao f, a partir
! de um intervalo que contenha a raiz da equaç~
ao f(x)=0.
!------------------------------------------------------------------------------
! Declaraç~
ao das variáveis
Implicit None
Integer:: i, itermax
Double Precision:: a, b, x, fa, fb, fx, eps
! onde a e b representam os limitantes inferior e superior do intervalo que
! contenha o zero;
! x representa a aproximaç~ao para o zero na iteraç~
ao i;
! erro representa o erro cometido na aproximaç~ao x;
! eps a precis~ao desejada para a aproximaç~
ao.
a=1.0d0
b=2.0d0
eps=0.000001d0
itermax=10000
fa=valorf(a)
fb=valorf(b)
If (fa*fb>0) then
Write(*,*) ’Escolha um intervalo que contenha a raiz, ou seja, de modo
que fa*fb<0.’
stop
End If
Open(9,File=’Bisseccao.txt’)
Write(9,*) ’Método da Bissecç~
ao’
x=(a+b)/2.0d0
If (dabs(b-a)<eps) then
Write(9,*) ’O zero aproximado de f com precis~
ao’, eps, ’é: ’, x
Stop
End If
Do i=1,itermax
x=(a+b)/2.0d0
fx=valorf(x)
Write(9,*) i, x, fx
If ((fa*fx)>0) then
a=x
If (dabs(b-a)<eps) then
Write(*,*) ’O processo convergiu após’, i, ’iteraç~
oes’
Write(*,*) ’O zero aproximado com precis~ao’, eps, ’é: ’, x
exit
End If
Else
b=x
If (dabs(b-a)<eps) then
Write(*,*) ’O processo convergiu após’, i, ’iteraç~
oes’
Write(*,*) ’O zero aproximado com precis~ao’, eps, ’é: ’, x
exit
End If
End If
End Do
Close(9)
!------------------------------------------------------------------------------
Contains
26
Double Precision Function valorf(x)
! Esta funç~
ao calcula o valor de f em x.
Double Precision:: x, valorf
valorf=x**3.0d0-x-1.0d0
End Function valorf
!------------------------------------------------------------------------------
End Program
Solução da questão 02. Note que f é contı́nua no intervalo [0, 1] e, f (0) = 4·0−e0 = −1 < 0
e f (1) = 4 · 1 − e1 = 4 − e > 0. Assim, considerando o Teorema 1, temos que a equação
f (x) = 0 admite pelo menos uma raiz real no intervalo (0, 1).
x = ψ1 (x) ⇒ 1= 2·1−1= 1
x = ψ2 (x) ⇒ 1 = 12 − 2 · 1 + 2 = 1
x = ψ3 (x) ⇒ 1 = 12 − 3 · 1 + 3 = 1.
27
Para garantir a convergência do processo iterativo, devemos verificar se para cada uma
das funções de iteração ψ1 , ψ2 e ψ3 são contı́nuas e admitem derivadas primeira e segunda
contı́nuas em um intervalo I, centrado na raiz x = 1, de modo que |ψi′ (x)| < 1 em I
(Teorema 4).
Consideremos inicialmente ψ1 (x) = 2x−1. Note que, ψ1′ (x) = 2 e |ψ1′ (x)| = 2 > 1. Assim,
como as hipóteses do Teorema 4 não são atendidas, não podemos garantir a convergência
do método. Logo, ψ1 não é uma escolha adequada para o processo iterativo.
Consideremos agora ψ2 (x) = x2 − 2x + 2. Note que, ψ2′ (x) = 2x − 2 e |ψ2′ (x)| < 1
para 21 < x < 23 . Tomando, por exemplo, I = [0, 7; 1, 3], temos que ψ2 e duas derivadas
primeira e segunda são contı́nuas em I e |ψ2′ (x)| < 1 em I. Assim, podemos garantir que
o processo iterativo converge ∀x0 ∈ I. A seguir é apresentada a sequência gerada a partir
da condição inicial x0 = 1, 2.
x1 = ψ2 (x0 ) = x20 − 2 · x0 + 2 = 1, 22 − 2 · 1, 2 + 2 = 1, 04
x2 = ψ2 (x1 ) = x21 − 2 · x1 + 2 = 1, 042 − 2 · 1, 04 + 2 = 1, 0016
x3 = ψ2 (x2 ) = x22 − 2 · x2 + 2 = 1, 00162 − 2 · 1, 0016 + 2 = 1, 00000256
..
.
xk → 1 quando k → ∞
Para ψ3 (x) = x2 − 3x + 3, temos ψ3′ (x) = 2x − 3 e |ψ3′ (x)| < 1, para 1 < x < 2. Como não
há um intervalo I, centrado na raiz x = 1, de modo que |ψ3′ (x)| < 1 em I, não podemos
garantir a convergência do método. Assim, esta função de iteração não é uma escolha
adequada para a obtenção de x = 1.
Solução da questão 04. Neste caso, a função de iteração é definida por ψ(x) = a − bx2 e
ψ ′ (x) = −2bx. Assim, |ψ ′ (x)| < 1, para − 2b1 < x < 2b
1
.
Portanto, para garantir a convergência a raiz positiva da equação bx2 + x − a = 0 deve
pertencer a este intervalo. Logo,
√
1 1 1 −1 + 1 + 4ab 1 √
x∈ − , ⇔ − < < ⇔ 0 < 1 + 4ab < 2.
2b 2b 2b 2b 2b
√
Como 0 < 1 + 4ab independente dos valores assumidos por a e b, devemos ter
√ 3
1 + 4ab < 2 → 1 + 4ab < 4 → ab < .
4
Portanto, para que o processo iterativo xk+1 = a − bx2k gere uma sequência convergente
para a raiz positiva da equação dada, devemos impor que ab < 34 .
28
Solução da questão 05. A função de iteração, neste caso, é definida por ψ(x) = xa . Assim,
√ √
ψ ′ (x) = − xa2 e |ψ ′ (x)| < 1 para (−∞, − a) ∪ ( a, +∞). Assim, não há um intervalo I,
√
centrado em x = a de modo que |ψ ′ (x)| < 1 em I. Portanto, não temos as hipóteses
do Teorema 4 satisfeitas. Logo, não podemos garantir a convergência do processo iterativo.
A figura a seguir apresenta a sequência de valores obtidos pelo método iterativo linear,
gerada a partir de uma aproximação x0 . Note que, o método iterativo linear gera duas
Solução da questão 06. (a) Fazendo-se f (x) = 2x−tan x, temos f ′ (x) = 2−sec2 x. Assim,
aplicando-se o método de Newton, obtemos o zero de f (x), ou seja, a raiz da equação
f (x) = 2x − tan x = 0.
Para f1 (x) = 2x e f2 (x) = tan x, temos que as raı́zes da equação original 2x = tan x, são
dadas pelos pontos onde os gráficos de f1 e f2 se interceptam. A Figura a seguir apresenta
o esboço gráfico de f1 e f2 .
Observando o gráfico verificamos que a equação admite uma raiz real x ∈ (1, 2). Assim,
tomando x0 = 1, 2, a sequência obtida aplicando-se o método de Newton, considerando-se
29
o erro relativo inferior a 10−2 , é apresentada a seguir.
f (xk )
xk+1 = xk − , para k = 0, 1, 2, 3, ...
f ′ (xk )
Para k = 0, temos:
f (x0 ) = 2x0 − tan x0 = 2 · 1, 2 − tan 1, 2 = −0, 172151622,
f ′ (x0 ) = 2 − sec2 x0 = 2 − sec2 1, 2 = −5, 615963967,
Para k = 1, temos:
f (x1 ) = 2x1 − tan x1 = 2 · 1, 169346024 − tan 1, 169346024 = −0, 01699936,
f ′ (x1 ) = 2 − sec2 x1 = 2 − sec2 1, 169346024 = −4, 549282014,
Assim, a primeira raiz positiva da equação 2x = tan x com erro relativo inferior a 10−2 é
x = 1, 165609311.
(b) Fazendo-se f (x) = 5x3 +x2 −12x+4, temos f ′ (x) = 15x2 +2x−12. Assim, aplicando-
se o método de Newton, obtemos o zero de f (x), ou seja, a raiz da equação f (x) = 0.
2
Para f1 (x) = x3 e f2 (x) = −x +12x−4
5
, temos que as raı́zes da equação original 5x3 + x2 −
12x + 4 = 0, são dadas pelos pontos onde os gráficos de f1 e f2 se interceptam. A Figura
a seguir apresenta o esboço gráfico de f1 e f2 .
Observando o gráfico verificamos que a equação admite uma raiz real x ∈ (1, 2). Assim,
tomando x0 = 1, 2, a sequência obtida aplicando-se o método de Newton, considerando-se
30
o erro relativo inferior a 10−2 , é apresentada a seguir.
f (xk )
xk+1 = xk − , para k = 0, 1, 2, 3, ...
f ′ (xk )
Para k = 0, temos:
f (x0 ) = 5x30 + x20 − 12x0 + 4 = 5 · (1, 2)3 + (1, 2)2 − 12 · 1, 2 + 4 = −0, 32,
f ′ (x0 ) = 15x20 + 2x0 − 12 = 15 · (1, 2)2 + 2 · (1, 2) − 12 = 12,
Para k = 1, temos:
f (x1 ) 0, 01360593
x2 = x1 − ′ = 1, 226666667 − = 1, 225621986.
f (x1 ) 13, 02400001
x2 − x1 1, 225621986 − 1, 226666667
ERx2 =
= = 8, 523683256 × 10−4 < 10−2
x2 1, 225621986
Assim, uma das raı́zes positivas da equação 5x3 + x2 − 12x + 4 = 0 com erro relativo
inferior a 10−2 é x = 1, 225621986.
(c) Fazendo-se f (x) = sin x − ex , temos f ′ (x) = cos x − ex . Assim, aplicando-se o método
de Newton, obtemos o zero de f (x), ou seja, a raiz da equação f (x) = sin x − ex = 0.
Para f1 (x) = sin x e f2 (x) = ex , temos que as raı́zes da equação original sin x − ex = 0,
são dadas pelos pontos onde os gráficos de f1 e f2 se interceptam. A Figura a seguir
apresenta o esboço gráfico de f1 e f2 .
31
Observando o gráfico verificamos que a equação admite uma raiz real x ∈ (−3, 5; −2, 5).
Assim, tomando x0 = −π ≈ −3, 141592654, a sequência obtida aplicando-se o método de
Newton, considerando-se o erro relativo inferior a 10−2 , é apresentada a seguir.
f (xk )
xk+1 = xk − , para k = 0, 1, 2, 3, ...
f ′ (xk )
Para k = 0, temos:
f (x0 ) = sin x0 − ex0 = sin (−π) − e−π = −0, 043213918,
f ′ (x0 ) = cos x0 − ex0 = cos (−π) − e−π = −1, 043213918,
Para k = 1, temos:
f (x1 ) = sin x1 − ex1 = sin −3, 183016486 − e−3,183016486 = −4, 84149158 × 10−5,
f ′ (x1 ) = cos x1 − ex1 = cos −3, 183016486 − e−3,183016486 = −1, 040602557,
Assim, uma das raı́zes da equação sin x − ex = 0 com erro relativo inferior a 10−2 é
x = −3, 183063012.
Observando o gráfico verificamos que a equação admite uma raiz real x ∈ (0, 2). Assim,
tomando x0 = 1, 7, a sequência obtida aplicando-se o método de Newton, considerando-se
o erro relativo inferior a 10−2 , é apresentada a seguir.
f (xk )
xk+1 = xk − , para k = 0, 1, 2, 3, ...
f ′ (xk )
Para k = 0, temos:
f (x0 ) = x40 − 8 = 1, 74 − 8 = 0, 3521,
32
f ′ (x0 ) = 4x30 = 4 · 1, 73 = 19, 652,
f (x0 ) 0, 3521
x1 = x0 − ′ = 1, 7 − = 1, 682083249
f (x0 ) 19, 652
x1 − x0 1, 682083249 − 1, 7
ERx1 =
= = 0, 010651524 > 10−2
x1 1, 682083249
Para k = 1, temos:
f (x1 ) = x41 − 8 = 1, 6820832494 − 8 = 5, 52731531 × 10−3,
f ′ (x1 ) = 4x31 = 4 · 1, 6820832493 = 19, 03717267,
Solução da questão 07. (a) Consideremos a função f , definida por f (x) = x3 − Q, cujo
zero real é a raiz cúbica de Q. Assim, aplicando-se o método de Newton para a obtenção
deste zero, temos
f (xk )
xk+1 = xk − , para k = 0, 1, 2, 3, ...
f ′ (xk )
x3k − Q
xk+1 = xk − (1.12)
3x2k
2x3k + Q
xk+1 = (1.13)
3x2k
33
Rearranjando os termos, a equação (1.13) pode ser reescrita como:
1 Q
xk+1 = 2xk + 2 , para k = 0, 1, 2, 3, ... (1.14)
3 xk
Observe que a função f admite um zero real no intervalo (1, 2). A seguir é apresentada
√
a sequência de aproximações para 3 4 aplicando-se a fórmula (1.14), tomando x0 = 1, 5 e
considerando-se o erro relativo inferior a 10−2 .
Para k = 0, temos:
1 4 1 4
x1 = 2x0 + 2 = 2 · 1, 5 + = 1, 592592593
3 x0 3 1, 52
x1 − x0 1, 592592593 − 1, 7
ERx1 = = = 0, 058139535 > 10−2
x1 1, 592592593
Para k = 1, temos:
1 4 1 4
x2 = 2x1 + 2 = 2 · 1, 592592593 + = 1, 587417957
3 x1 3 1, 5925925932
x2 − x1 1, 587417957 − 1, 592592593
ERx2 = = = 3, 259781696 × 10−3 < 10−2
x2 1, 587417957
√
Assim, o valor de 3 4, com erro relativo inferior a 10−2 é x = 1, 587417957.
Solução da questão 08. A função real de variáveis reais f , definida por f (x) = cos x + 1,
admite como zero real x = π. Assim, para determinar este zero utilizaremos o método de
Newton. Deste modo,
f (xk ) cos xk + 1
xk+1 = xk − ⇒ xk+1 = xk + , para k = 0, 1, 2, 3, ...
f ′ (xk ) sin xk
34
Tomando x0 = 3 como aproximação inicial, temos:
cos x0 + 1 cos 3 + 1
x1 = x0 + =3+ = 3, 070914844
sin
x0 sin 3
x1 − x0 3, 070914844 − 3
ERx1 = = = 0, 023092416
x1 3, 070914844
Para k = 1, temos:
cos x1 + 1 cos 3, 070914844 + 1
x2 = x1 + = 3, 070914844 + = 3, 106268467
sin x1 sin 3, 070914844
x2 − x1 3, 106268467 − 3, 070914844
ERx2 = = = 0, 01138138
x1 3, 106268467
Para k = 2, temos:
cos x2 + 1 cos 3, 106268467 + 1
x3 = x2 + = 3, 106268467 + = 3, 123932397
sin x2 sin 3, 106268467
x3 − x2 3, 123932397 − 3, 106268467
ERx3 = = = 5, 654389355 × 10−3
x3 3, 123932397
Para k = 3, temos:
cos x3 + 1 cos 3, 123932397 + 1
x4 = x3 + = 3, 123932397 + = 3, 132762755
sin x3 sin 3, 123932397
x4 − x3 3, 132762755 − 3, 123932397
ERx4 = = = 2, 818712574 × 10−3
x4 3, 132762755
Para k = 4, temos:
cos x4 + 1 cos 3, 132762755 + 1
x5 = x4 + = 3, 132762755 + = 3, 137177733
sin x4 sin 3, 132762755
x5 − x4 3, 137177733 − 3, 132762755
ERx5 =
= = 1, 407308838 × 10−3
x5 3, 137177733
Para k = 5, temos:
cos x5 + 1 cos 3, 137177733 + 1
x6 = x5 + = 3, 137177733 + = 3, 139385197
sin x5 sin 3, 137177733
x6 − x5 3, 139385197 − 3, 137177733
ERx6 =
= = 7, 031516432 × 10−4
x6 3, 139385197
Para k = 6, temos:
cos x6 + 1 cos 3, 139385197 + 1
x7 = x6 + = 3, 139385197 + = 3, 140488926
sin x6 sin 3, 139385197
x7 − x6 3, 140488926 − 3, 139385197
ERx7 =
= = 3, 514511995 × 10−4
x7 3, 140488926
Solução da questão 09. (a) Inicialmente obteremos o intervalo ao qual pertence a raiz da
equação x = 2, 7 ln x. Fazendo-se f1 (x) = x e f2 (x) = 2, 7 ln x, temos que as raı́zes da
35
equação original, são dadas pelos pontos onde os gráficos de f1 e f2 se interceptam. A
Figura a seguir apresenta o esboço gráfico de f1 e f2 .
(b) Inicialmente obteremos o intervalo ao qual pertence a raiz da equação log x−cos x = 0.
Fazendo-se f1 (x) = log x e f2 (x) = cos x, temos que as raı́zes da equação original, são
dadas pelos pontos onde os gráficos de f1 e f2 se interceptam. A Figura a seguir apresenta
o esboço gráfico de f1 e f2 .
Analisando o gráfico verificamos que a equação dada admite um zero real no intervalo
(1, 2). Assim, utilizaremos como aproximações iniciais para inicialização do método das
secantes x0 = 1 e x1 = 2. A seguir é apresentada a sequência de aproximações para a raiz
da equação dada, considerando-se o erro relativo inferior a 10−3 .
xk−1 f (xk ) − xk f (xk−1 )
xk+1 = , para k = 1, 2, 3, ...
f (xk ) − f (xk−1 )
Para k = 1, temos
f (x0 ) = log x0 − cos x0 = log 1 − cos 1 = −0, 540302305
f (x1 ) = log x1 − cos x1 = log 2 − cos 2 = 0, 717176832
x0 f (x1 ) − x1 f (x0 ) 1(0, 717176832) − 2(−0, 540302305)
x2 = = = 1, 429670989
f (x1 ) − f (x0 ) 0, 717176832 − (−0, 540302305)
x2 − x1 1, 429670989 − 2
ERx2 = =
x2 1, 429670989
36
Para k = 2, temos
f (x2 ) = log x2 − cos x2 = log 1, 429670989 − cos 1, 429670989 = 0, 014578751
x1 f (x2 ) − x2 f (x1 ) 2(0, 014578751) − 1, 429670989(0, 717176832)
x3 = =
f (x2 ) − f (x1 ) 0, 014578751 − 0, 717176832
= 1, 417836791
x3 − x2 1, 417836791 − 1, 429670989
ERx3 =
= = 8, 34665744 × 10−3 > 10−3
x3 1, 417836791
Para k = 3, temos
f (x3 ) = log x3 − cos x3 = log 1, 417836791 − cos 1, 417836791 = −7, 37535651 × 10−4
x2 f (x3 ) − x3 f (x2 )
x4 =
f (x3 ) − f (x2 )
1, 429670989(−7, 37535651 × 10−4 ) − 1, 417836791(0, 014578751)
=
−7, 37535651 × 10−4 − (0, 014578751)
= 1, 418406651
x4 − x3 1, 418406651 − 1, 417836791
ERx4 = = = 4, 017606655 × 10−4 < 10−3.
x4 1, 418406651
Assim, a raiz da equação log x − cos x = 0, com erro relativo inferior a 10−3 é x =
1, 418406651.
(c) Inicialmente obteremos o intervalo ao qual pertence a raiz da equação e−x − log x = 0.
Fazendo-se f1 (x) = e−x e f2 (x) = log x, temos que as raı́zes da equação original, são dadas
pelos pontos onde os gráficos de f1 e f2 se interceptam. A Figura a seguir apresenta o
esboço gráfico de f1 e f2 .
Analisando o gráfico verificamos que a equação dada admite um zero real no intervalo
(1, 2). Assim, utilizaremos como aproximações iniciais para inicialização do método das
secantes x0 = 1 e x1 = 2. A seguir é apresentada a sequência de aproximações para a raiz
da equação dada, considerando-se o erro relativo inferior a 10−3 .
xk−1 f (xk ) − xk f (xk−1 )
xk+1 = , para k = 1, 2, 3, ...
f (xk ) − f (xk−1 )
37
Para k = 1, temos:
f (x0 ) = e−x0 − log x0 = e−1 − log 1 = 0, 367879441
f (x1 ) = e−x1 − log x1 = e−2 − log 2 = −0, 165694712
Para k = 2, temos:
f (x2 ) = e−x2 − log x2 = e−1,689462635 − log 1, 689462635 = −0, 043129886
x1 f (x2 ) − x2 f (x1 )
x3 =
f (x2 ) − f (x1 )
2(−0, 043129886) − 1, 689462635(−0, 165694712)
=
−0, 043129886 − (−0, 165694712)
= 1, 580186247
x3 − x2 1, 580186247 − 1, 689462635
ERx3 = = = 0, 069154119
x3 1, 580186247
Para k = 3, temos:
f (x3 ) = e−x3 − log x3 = e−1,580186247 − log 1, 580186247 = 7, 22846177 × 10−3
x2 f (x3 ) − x3 f (x2 )
x4 =
f (x3 ) − f (x2 )
1, 689462635(7, 22846177 × 10−3 ) − 1, 580186247(−0, 043129886)
=
7, 22846177 × 10−3 − (−0, 043129886)
= 1, 595871833
x4 − x3 1, 595871833 − 1, 580186247
ERx4 = = = 9, 828850692 × 10−3 > 10−3
x4 1, 595871833
Para k = 4, temos
f (x4 ) = e−x4 − log x4 = e−1,595871833 − log 1, 595871833 = −2, 66306292 × 10−4
x3 f (x4 ) − x4 f (x3 )
x5 =
f (x4 ) − f (x3 )
1, 580186247(−2, 66306292 × 10−4 ) − 1, 595871833(7, 22846177 × 10−3 )
=
−2, 66306292 × 10−4 − 7, 22846177 × 10−3
= 1, 595314488
x5 − x4 1, 595314488 − 1, 595871833
ERx5 = = = 3, 493636109 × 10−4 < 10−3
x5 1, 595314488
Assim, a primeira raiz positiva da equação e−x − log x = 0, obtida utilizando-se o método
das secantes, com erro relativo inferior a 10−3 é x = 1, 595314488.
38
Capı́tulo 2
Diferenciação Numérica
Neste capı́tulo serão apresentadas algumas técnicas para derivação numérica de funções.
Estas técnicas são utilizadas quando são conhecidos apenas os valores da função f em
alguns pontos, ou seja, quando não temos a lei de formação da função e sim, uma ta-
bela de pontos, ou quando conhecemos a função, mas queremos determinar apenas uma
aproximação para a derivada, como por exemplo, na solução de equações diferenciais.
Também podemos aproximar a derivada por uma diferença central, a qual é dada por:
df f (xi + ∆x) − f (xi − ∆x)
≈ . (2.4)
dx x=xi 2∆x
A Figura a seguir, ilustra os pontos utilizados em cada expressão para o cálculo da primeira
derivada de f por diferenças progressivas, regressivas e centrais.
39
Figura 2.1: Pontos utilizados em cada expressão para o cálculo da primeira derivada de
f por diferenças progressivas (a), regressivas (b) e centrais (c).
As aproximações (2.2), (2.3) e (2.4) podem ser obtidas através de séries de Taylor trun-
cadas, o que permite estimar o erro cometido em cada tipo de aproximação.
40
df
Note que, isolando dx , obtemos:
df f (xi + ∆x) − f (xi − ∆x) (∆x)2 d3 f
= − − ... (2.10)
dx x=xi 2∆x 3! dx3 x=xi
Solução:
Para resolver o problema proposto, implementamos um algoritmo para determinação da
derivada da função, através dos métodos citados na seção 2.1, utilizando linguagem For-
tran 1 .
Os resultados são apresentados de forma qualitativa através das Figuras 2.2 e 2.3, que
−1
ilustram o erro relativo para as aproximações com 10−1 ≤ ∆x ≤ 10240 .
1
O algoritmo implementado encontra-se em anexo
41
Tabela 2.1: Aproximação por diferenças finitas progressivas para f ′ ( π4 ).
∆x Calculado ER% Quociente do ER%
1.000000000000000E-001 -7.412547450958931E+000 4.829251368802353E+000
5.000000000000000E-002 -7.244861771760753E+000 2.457817751424289E+000 1.964853319984297E+000
2.500000000000000E-002 -7.158715009503638E+000 1.239518556038855E+000 1.982880965718471E+000
1.250000000000000E-002 -7.115077269295327E+000 6.223877156997835E-001 1.991553696790430E+000
6.250000000000000E-003 -7.093118791339208E+000 3.118479423536445E-001 1.995805106175682E+000
3.125000000000000E-003 -7.082104837436418E+000 1.560871125068702E-001 1.997909611787574E+000
1.562500000000000E-003 -7.076589205245227E+000 7.808429400843232E-002 1.998956569806655E+000
7.812500000000000E-004 -7.073829228282875E+000 3.905232548847618E-002 1.999478725830910E+000
3.906250000000000E-004 -7.072448699952929E+000 1.952870661397460E-002 1.999739473812906E+000
1.953125000000000E-004 -7.071758300876354E+000 9.764989238552662E-003 1.999869752736060E+000
9.765625000000001E-005 -7.071413067615140E+000 4.882653636639052E-003 1.999934864369028E+000
4.882812500000000E-005 -7.071240442546696E+000 2.441366506645669E-003 1.999967486793945E+000
2.441406250000000E-005 -7.071154127916088E+000 1.220693294283921E-003 1.999983548756869E+000
1.220703125000000E-005 -7.071110970064183E+000 6.103490994065679E-004 1.999991964386906E+000
6.103515625000000E-006 -7.071089391101850E+000 3.051764874799946E-004 1.999987300615937E+000
3.051757812500000E-006 -7.071078601293266E+000 1.525855511256362E-004 2.000035293176074E+000
1.525878906250000E-006 -7.071073206607252E+000 7.629316987583818E-005 1.999989663215706E+000
7.629394531250000E-007 -7.071070509264246E+000 3.814697925093916E-005 1.999979326645107E+000
3.814697265625000E-007 -7.071069160010666E+000 1.906565213213987E-005 2.000822158431864E+000
1.907348632812500E-007 -7.071068487130106E+000 9.549683991789578E-006 1.996469427525741E+000
9.536743164062501E-008 -7.071068147197366E+000 4.742309083515727E-006 2.013720283434139E+000
4.768371582031250E-008 -7.071067988872528E+000 2.503257756374481E-006 1.894454964311829E+000
2.384185791015625E-008 -7.071067914366722E+000 1.449586543602130E-006 1.726877065341711E+000
1.192092895507813E-008 -7.071067839860916E+000 3.959153308297793E-007 3.661354917891190E+000
5.960464477539063E-009 -7.071067839860916E+000 3.959153308297793E-007 1.000000000000000E+000
2.980232238769531E-009 -7.071067988872528E+000 2.503257756374481E-006 1.581600335888668E-001
1.490116119384766E-009 -7.071067690849304E+000 1.711427094714922E-006 1.462672739087058E+000
7.450580596923829E-010 -7.071067094802856E+000 1.014079679689373E-005 1.687665307758811E-001
3.725290298461914E-010 -7.071068286895752E+000 6.717942607463884E-006 1.509509293161708E+000
1.862645149230957E-010 -7.071070671081543E+000 4.043542141617911E-005 1.661400418786259E-001
9.313225746154786E-011 -7.071065902709961E+000 2.699953620125135E-005 1.497633926552600E+000
4.656612873077393E-011 -7.071056365966797E+000 1.618694514361123E-004 1.667982189456403E-001
2.328306436538696E-011 -7.071075439453125E+000 1.078703790336096E-004 1.500592218978651E+000
1.164153218269348E-011 -7.071075439453125E+000 1.078703790336096E-004 1.000000000000000E+000
5.820766091346741E-012 -7.071075439453125E+000 1.078703790336096E-004 1.000000000000000E+000
2.910383045673371E-012 -7.070922851562500E+000 2.050048264724165E-003 5.261845825279805E-002
1.455191522836685E-012 -7.070922851562500E+000 2.050048264724165E-003 1.000000000000000E+000
7.275957614183426E-013 -7.071533203125000E+000 6.581626310306933E-003 3.114805016373774E-001
3.637978807091713E-013 -7.072753906250000E+000 2.384497546036913E-002 2.760173237018315E-001
1.818989403545857E-013 -7.070312500000000E+000 1.068172283975526E-002 2.232315499857648E+000
9.094947017729283E-014 -7.070312500000000E+000 1.068172283975526E-002 1.000000000000000E+000
42
Tabela 2.2: Aproximação por diferenças finitas regressivas para f ′ ( π4 ).
∆x Calculado ER% Quociente do ER%
1.000000000000000E-001 -6.706029729039891E+000 5.162418075146140E+000
5.000000000000000E-002 -6.891382031986044E+000 2.541140668710772E+000 2.031535734605850E+000
2.500000000000000E-002 -6.981947521134764E+000 1.260351238340046E+000 2.016216266869859E+000
1.250000000000000E-002 -7.026690072530926E+000 6.275960083437721E-001 2.008220609411008E+000
6.250000000000000E-003 -7.048924761376014E+000 3.131500231450712E-001 2.004138470246988E+000
3.125000000000000E-003 -7.060007768507148E+000 1.564126331777958E-001 2.002076282349333E+000
1.562500000000000E-003 -7.065540664036689E+000 7.816567420709453E-002 2.001039903569326E+000
7.812500000000000E-004 -7.068304956835618E+000 3.907267054093649E-002 2.000520392513234E+000
3.906250000000000E-004 -7.069686564123003E+000 1.953379290400106E-002 2.000260304435466E+000
1.953125000000000E-004 -7.070377232944338E+000 9.766260761601366E-003 2.000130180918712E+000
9.765625000000001E-005 -7.070722533644585E+000 4.882971427748949E-003 2.000065105050925E+000
4.882812500000000E-005 -7.070895175565966E+000 2.441445961237345E-003 2.000032564830646E+000
2.441406250000000E-005 -7.070981494398438E+000 1.220713325523509E-003 2.000015818775730E+000
1.220703125000000E-005 -7.071024653341738E+000 6.103536960092500E-004 2.000009721420625E+000
6.103515625000000E-006 -7.071046232595108E+000 3.051769681795018E-004 1.999999212424991E+000
3.051757812500000E-006 -7.071057022258174E+000 1.525880897767308E-004 2.000005168332872E+000
1.525878906250000E-006 -7.071062416653149E+000 7.629982443010767E-005 1.999848504455012E+000
7.629394531250000E-007 -7.071065114578232E+000 3.814540199885887E-005 2.000236474959425E+000
3.814697265625000E-007 -7.071066463831812E+000 1.906407488005958E-005 2.000904960710040E+000
1.907348632812500E-007 -7.071067136712372E+000 9.548106739709283E-006 1.996634034344701E+000
9.536743164062501E-008 -7.071067476645112E+000 4.740731831435431E-006 2.014057550439051E+000
4.768371582031250E-008 -7.071067653596401E+000 2.238262701101098E-006 2.118040848870537E+000
2.384185791015625E-008 -7.071067728102207E+000 1.184591488328747E-006 1.889480654853344E+000
1.192092895507813E-008 -7.071067765355110E+000 6.577558819425716E-007 1.800959171707070E+000
5.960464477539063E-009 -7.071067690849304E+000 1.711427094714922E-006 3.843318152282356E-001
2.980232238769531E-009 -7.071067988872528E+000 2.503257756374481E-006 6.836799328222663E-001
1.490116119384766E-009 -7.071067690849304E+000 1.711427094714922E-006 1.462672739087058E+000
7.450580596923829E-010 -7.071067094802856E+000 1.014079679689373E-005 1.687665307758811E-001
3.725290298461914E-010 -7.071068286895752E+000 6.717942607463884E-006 1.509509293161708E+000
1.862645149230957E-010 -7.071070671081543E+000 4.043542141617911E-005 1.661400418786259E-001
9.313225746154786E-011 -7.071065902709961E+000 2.699953620125135E-005 1.497633926552600E+000
4.656612873077393E-011 -7.071056365966797E+000 1.618694514361123E-004 1.667982189456403E-001
2.328306436538696E-011 -7.071075439453125E+000 1.078703790336096E-004 1.500592218978651E+000
1.164153218269348E-011 -7.071075439453125E+000 1.078703790336096E-004 1.000000000000000E+000
5.820766091346741E-012 -7.071075439453125E+000 1.078703790336096E-004 1.000000000000000E+000
2.910383045673371E-012 -7.070922851562500E+000 2.050048264724165E-003 5.261845825279805E-002
1.455191522836685E-012 -7.070922851562500E+000 2.050048264724165E-003 1.000000000000000E+000
7.275957614183426E-013 -7.071533203125000E+000 6.581626310306933E-003 3.114805016373774E-001
3.637978807091713E-013 -7.070312500000000E+000 1.068172283975526E-002 6.161577499288242E-001
1.818989403545857E-013 -7.070312500000000E+000 1.068172283975526E-002 1.000000000000000E+000
9.094947017729283E-014 -7.070312500000000E+000 1.068172283975526E-002 1.000000000000000E+000
43
Tabela 2.3: Aproximação por diferenças finitas centrais para f ′ ( π4 ).
∆x Calculado ER% Quociente do ER%
1.000000000000000E-001 -7.059288589999411E+000 1.665833531718936E-001
5.000000000000000E-002 -7.068121901873399E+000 4.166145864324141E-002 3.998500258917790E+000
2.500000000000000E-002 -7.070331265319201E+000 1.041634115059561E-002 3.999625016204389E+000
1.250000000000000E-002 -7.070883670913126E+000 2.604146321994357E-003 3.999906250512978E+000
6.250000000000000E-003 -7.071021776357611E+000 6.510403957133575E-004 3.999976559274704E+000
3.125000000000000E-003 -7.071056302971783E+000 1.627603354627683E-004 3.999994186926975E+000
1.562500000000000E-003 -7.071064934640958E+000 4.069009933110279E-005 3.999998479688084E+000
7.812500000000000E-004 -7.071067092559247E+000 1.017252623015799E-005 3.999999450526937E+000
3.906250000000000E-004 -7.071067632037966E+000 2.543145013231867E-006 3.999978836138245E+000
1.953125000000000E-004 -7.071067766910346E+000 6.357615243517425E-007 4.000155586365498E+000
9.765625000000001E-005 -7.071067800629862E+000 1.588955549482402E-007 4.001128442887153E+000
4.882812500000000E-005 -7.071067809056331E+000 3.972729583769540E-008 3.999656951165339E+000
2.441406250000000E-005 -7.071067811157263E+000 1.001561979394380E-008 3.966533939488948E+000
1.220703125000000E-005 -7.071067811702960E+000 2.298301341021310E-009 4.357835769913923E+000
6.103515625000000E-006 -7.071067811848479E+000 2.403497535753123E-010 9.562320355369739E+000
3.051757812500000E-006 -7.071067811775720E+000 1.269325547298311E-009 1.893523328880313E-001
1.525878906250000E-006 -7.071067811630201E+000 3.327277134744309E-009 3.814907793654089E-001
7.629394531250000E-007 -7.071067811921239E+000 7.886260401476866E-010 4.219080990682488E+000
3.814697265625000E-007 -7.071067811921239E+000 7.886260401476866E-010 1.000000000000000E+000
1.907348632812500E-007 -7.071067811921239E+000 7.886260401476866E-010 1.000000000000000E+000
9.536743164062501E-008 -7.071067811921239E+000 7.886260401476866E-010 1.000000000000000E+000
4.768371582031250E-008 -7.071067821234465E+000 1.324975276366915E-007 5.952005703156218E-003
2.384185791015625E-008 -7.071067821234465E+000 1.324975276366915E-007 1.000000000000000E+000
1.192092895507813E-008 -7.071067802608013E+000 1.309202755563962E-007 1.012047424079977E+000
5.960464477539063E-009 -7.071067765355110E+000 6.577558819425716E-007 1.990408282929301E-001
2.980232238769531E-009 -7.071067988872528E+000 2.503257756374481E-006 2.627599496166998E-001
1.490116119384766E-009 -7.071067690849304E+000 1.711427094714922E-006 1.462672739087058E+000
7.450580596923829E-010 -7.071067094802856E+000 1.014079679689373E-005 1.687665307758811E-001
3.725290298461914E-010 -7.071068286895752E+000 6.717942607463884E-006 1.509509293161708E+000
1.862645149230957E-010 -7.071070671081543E+000 4.043542141617911E-005 1.661400418786259E-001
9.313225746154786E-011 -7.071065902709961E+000 2.699953620125135E-005 1.497633926552600E+000
4.656612873077393E-011 -7.071056365966797E+000 1.618694514361123E-004 1.667982189456403E-001
2.328306436538696E-011 -7.071075439453125E+000 1.078703790336096E-004 1.500592218978651E+000
1.164153218269348E-011 -7.071075439453125E+000 1.078703790336096E-004 1.000000000000000E+000
5.820766091346741E-012 -7.071075439453125E+000 1.078703790336096E-004 1.000000000000000E+000
2.910383045673371E-012 -7.070922851562500E+000 2.050048264724165E-003 5.261845825279805E-002
1.455191522836685E-012 -7.070922851562500E+000 2.050048264724165E-003 1.000000000000000E+000
7.275957614183426E-013 -7.071533203125000E+000 6.581626310306933E-003 3.114805016373774E-001
3.637978807091713E-013 -7.071533203125000E+000 6.581626310306933E-003 1.000000000000000E+000
1.818989403545857E-013 -7.070312500000000E+000 1.068172283975526E-002 6.161577499288242E-001
9.094947017729283E-014 -7.070312500000000E+000 1.068172283975526E-002 1.000000000000000E+000
44
Figura 2.2: Valor de ER% em função do espaçamento ∆x, no cálculo de f ′ ( π4 ) por DFP,
DFR e DFC.
45
Tabela 2.4: Aproximação por diferenças finitas progressivas para f ′ ( π6 ).
∆x Calculado ER% Quociente do ER%
1.000000000000000E-001 -5.424322810575202E+000 8.486456211504015E+000
5.000000000000000E-002 -5.214378176282786E+000 4.287563525655695E+000 1.979319060982586E+000
2.500000000000000E-002 -5.107726720346761E+000 2.154534406935209E+000 1.990018591420263E+000
1.250000000000000E-002 -5.053995675650782E+000 1.079913513015622E+000 1.995099034290944E+000
6.250000000000000E-003 -5.027030653751865E+000 5.406130750372816E-001 1.997571947258489E+000
3.125000000000000E-003 -5.013523497905226E+000 2.704699581044955E-001 1.998791580499365E+000
1.562500000000000E-003 -5.006763787584987E+000 1.352757516997194E-001 1.999397192076787E+000
7.812500000000000E-004 -5.003382402933312E+000 6.764805866621869E-002 1.999698947270335E+000
3.906250000000000E-004 -5.001691328684501E+000 3.382657369000341E-002 1.999849564610511E+000
1.953125000000000E-004 -5.000845696140459E+000 1.691392280916304E-002 1.999924799921519E+000
9.765625000000001E-005 -5.000422856010118E+000 8.457120202347566E-003 1.999962446373648E+000
4.882812500000000E-005 -5.000211429978663E+000 4.228599573234958E-003 1.999981330906135E+000
2.441406250000000E-005 -5.000105715444079E+000 2.114308881555615E-003 1.999991396774411E+000
1.220703125000000E-005 -5.000052857794799E+000 1.057155895960449E-003 1.999997246985716E+000
6.103515625000000E-006 -5.000026428897400E+000 5.285779479713425E-004 2.000000000033607E+000
3.051757812500000E-006 -5.000013214303181E+000 2.642860635937438E-004 2.000022024558449E+000
1.525878906250000E-006 -5.000006606569514E+000 1.321313902558074E-004 2.000176211588207E+000
7.629394531250000E-007 -5.000003303866833E+000 6.607733665120462E-005 1.999647639451258E+000
3.814697265625000E-007 -5.000001648440957E+000 3.296881912362436E-005 2.004237288676675E+000
1.907348632812500E-007 -5.000000819563866E+000 1.639127729546885E-005 2.011363637459672E+000
9.536743164062501E-008 -5.000000409781933E+000 8.195638638852641E-006 2.000000002167442E+000
4.768371582031250E-008 -5.000000186264515E+000 3.725290280698345E-006 2.200000005722046E+000
2.384185791015625E-008 -5.000000074505806E+000 1.490116101621197E-006 2.500000017881393E+000
1.192092895507813E-008 -5.000000000000000E+000 1.776356839400250E-014 8.388607900000000E+007
5.960464477539063E-009 -5.000000000000000E+000 1.776356839400250E-014 1.000000000000000E+000
2.980232238769531E-009 -5.000000000000000E+000 1.776356839400250E-014 1.000000000000000E+000
1.490116119384766E-009 -5.000000000000000E+000 1.776356839400250E-014 1.000000000000000E+000
7.450580596923829E-010 -4.999997615814209E+000 4.768371583807606E-005 3.725290297074135E-010
3.725290298461914E-010 -5.000000000000000E+000 1.776356839400250E-014 2.684354561000000E+009
1.862645149230957E-010 -5.000000000000000E+000 1.776356839400250E-014 1.000000000000000E+000
9.313225746154786E-011 -5.000000000000000E+000 1.776356839400250E-014 1.000000000000000E+000
4.656612873077393E-011 -4.999961853027344E+000 7.629394531427635E-004 2.328306436484486E-011
2.328306436538696E-011 -5.000000000000000E+000 1.776356839400250E-014 4.294967296100000E+010
1.164153218269348E-011 -5.000000000000000E+000 1.776356839400250E-014 1.000000000000000E+000
5.820766091346741E-012 -5.000000000000000E+000 1.776356839400250E-014 1.000000000000000E+000
2.910383045673371E-012 -4.999389648437500E+000 1.220703125001776E-002 1.455191522834568E-012
1.455191522836685E-012 -5.000000000000000E+000 1.776356839400250E-014 6.871947673610000E+011
7.275957614183426E-013 -5.000000000000000E+000 1.776356839400250E-014 1.000000000000000E+000
3.637978807091713E-013 -5.000000000000000E+000 1.776356839400250E-014 1.000000000000000E+000
1.818989403545857E-013 -4.990234375000000E+000 1.953125000000177E-001 9.094947017728455E-014
9.094947017729283E-014 -5.000000000000000E+000 1.776356839400250E-014 1.099511627776100E+013
46
Tabela 2.5: Aproximação por diferenças finitas regressivas para f ′ ( π6 ).
∆x Calculado ER% Quociente do ER%
1.000000000000000E-001 -4.559018854107606E+000 8.819622917847896E+000
5.000000000000000E-002 -4.781455677852904E+000 4.370886442941941E+000 2.017811039701049E+000
2.500000000000000E-002 -4.891231645538170E+000 2.175367089236619E+000 2.009263845430232E+000
1.250000000000000E-002 -4.945743909717066E+000 1.085121805658691E+000 2.004721569405867E+000
6.250000000000000E-003 -4.972904242208642E+000 5.419151558271728E-001 2.002383203330739E+000
3.125000000000000E-003 -4.986460226061240E+000 2.707954787752164E-001 2.001197207125489E+000
1.562500000000000E-003 -4.993232143405066E+000 1.353571318986901E-001 2.000600005161878E+000
7.812500000000000E-004 -4.996616579812780E+000 6.766840374440973E-002 2.000300353026612E+000
3.906250000000000E-004 -4.998308416998043E+000 3.383166003915860E-002 2.000150263572247E+000
1.953125000000000E-004 -4.999154240285861E+000 1.691519428279164E-002 2.000075167541919E+000
9.765625000000001E-005 -4.999577128091914E+000 8.457438161730833E-003 2.000037595229654E+000
4.882812500000000E-005 -4.999788566055941E+000 4.228678881208480E-003 2.000019012868116E+000
2.441406250000000E-005 -4.999894283537287E+000 2.114329254272462E-003 2.000009635520823E+000
1.220703125000000E-005 -4.999947141914163E+000 1.057161716762067E-003 2.000005506015055E+000
6.103515625000000E-006 -4.999973571102601E+000 5.285779480068696E-004 2.000011012090742E+000
3.051757812500000E-006 -4.999986785696819E+000 2.642860636292709E-004 2.000022024424019E+000
1.525878906250000E-006 -4.999993393430486E+000 1.321313902913346E-004 2.000176211319282E+000
7.629394531250000E-007 -4.999996698461473E+000 6.603077055800098E-005 2.001057827657353E+000
3.814697265625000E-007 -4.999998351559043E+000 3.296881915915150E-005 2.002824858216741E+000
1.907348632812500E-007 -4.999999180436134E+000 1.639127733099599E-005 2.011363635267601E+000
9.536743164062501E-008 -4.999999590218067E+000 8.195638674379778E-006 1.999999997832558E+000
4.768371582031250E-008 -4.999999813735485E+000 3.725290316225482E-006 2.199999994277954E+000
2.384185791015625E-008 -4.999999925494194E+000 1.490116137148334E-006 2.499999982118607E+000
1.192092895507813E-008 -5.000000000000000E+000 1.776356839400250E-014 8.388608099999999E+007
5.960464477539063E-009 -5.000000000000000E+000 1.776356839400250E-014 1.000000000000000E+000
2.980232238769531E-009 -5.000000000000000E+000 1.776356839400250E-014 1.000000000000000E+000
1.490116119384766E-009 -5.000000000000000E+000 1.776356839400250E-014 1.000000000000000E+000
7.450580596923829E-010 -5.000000000000000E+000 1.776356839400250E-014 1.000000000000000E+000
3.725290298461914E-010 -5.000000000000000E+000 1.776356839400250E-014 1.000000000000000E+000
1.862645149230957E-010 -5.000009536743164E+000 1.907348632634864E-004 9.313225747022147E-011
9.313225746154786E-011 -5.000000000000000E+000 1.776356839400250E-014 1.073741823900000E+010
4.656612873077393E-011 -5.000000000000000E+000 1.776356839400250E-014 1.000000000000000E+000
2.328306436538696E-011 -5.000000000000000E+000 1.776356839400250E-014 1.000000000000000E+000
1.164153218269348E-011 -5.000152587890625E+000 3.051757812482236E-003 5.820766091380622E-012
5.820766091346741E-012 -5.000000000000000E+000 1.776356839400250E-014 1.717986918390000E+011
2.910383045673371E-012 -5.000000000000000E+000 1.776356839400250E-014 1.000000000000000E+000
1.455191522836685E-012 -5.000000000000000E+000 1.776356839400250E-014 1.000000000000000E+000
7.275957614183426E-013 -5.002441406250000E+000 4.882812499998223E-002 3.637978807093036E-013
3.637978807091713E-013 -5.000000000000000E+000 1.776356839400250E-014 2.748779069439000E+012
1.818989403545857E-013 -5.000000000000000E+000 1.776356839400250E-014 1.000000000000000E+000
9.094947017729283E-014 -5.000000000000000E+000 1.776356839400250E-014 1.000000000000000E+000
47
Tabela 2.6: Aproximação por diferenças finitas centrais para f ′ ( π6 ).
∆x Calculado ER% Quociente do ER%
1.000000000000000E-001 -4.991670832341404E+000 1.665833531719407E-001
5.000000000000000E-002 -4.997916927067845E+000 4.166145864312298E-002 3.998500258930288E+000
2.500000000000000E-002 -4.999479182942466E+000 1.041634115070522E-002 3.999625016150931E+000
1.250000000000000E-002 -4.999869792683924E+000 2.604146321534273E-003 3.999906251261747E+000
6.250000000000000E-003 -4.999967447980254E+000 6.510403949455678E-004 3.999976563285294E+000
3.125000000000000E-003 -4.999991861983233E+000 1.627603353604456E-004 3.999994184724352E+000
1.562500000000000E-003 -4.999997965495027E+000 4.069009948537427E-005 3.999998462007903E+000
7.812500000000000E-004 -4.999999491373046E+000 1.017253909552096E-005 3.999994406833040E+000
3.906250000000000E-004 -4.999999872841272E+000 2.543174577596119E-006 3.999937395228421E+000
1.953125000000000E-004 -4.999999968213160E+000 6.357368143028451E-007 4.000357569956032E+000
9.765625000000001E-005 -4.999999992051016E+000 1.589796916334762E-007 3.998855500163636E+000
4.882812500000000E-005 -4.999999998017302E+000 3.965398676086806E-008 4.009172963924095E+000
2.441406250000000E-005 -4.999999999490683E+000 1.018635842342519E-008 3.892852098123434E+000
1.220703125000000E-005 -4.999999999854481E+000 2.910400809241764E-009 3.499984741304069E+000
6.103515625000000E-006 -5.000000000000000E+000 1.776356839400250E-014 1.638410000000000E+005
3.051757812500000E-006 -5.000000000000000E+000 1.776356839400250E-014 1.000000000000000E+000
1.525878906250000E-006 -5.000000000000000E+000 1.776356839400250E-014 1.000000000000000E+000
7.629394531250000E-007 -5.000000001164153E+000 2.328304660181857E-008 7.629400352020533E-007
3.814697265625000E-007 -5.000000000000000E+000 1.776356839400250E-014 1.310719000000000E+006
1.907348632812500E-007 -5.000000000000000E+000 1.776356839400250E-014 1.000000000000000E+000
9.536743164062501E-008 -5.000000000000000E+000 1.776356839400250E-014 1.000000000000000E+000
4.768371582031250E-008 -5.000000000000000E+000 1.776356839400250E-014 1.000000000000000E+000
2.384185791015625E-008 -5.000000000000000E+000 1.776356839400250E-014 1.000000000000000E+000
1.192092895507813E-008 -5.000000000000000E+000 1.776356839400250E-014 1.000000000000000E+000
5.960464477539063E-009 -5.000000000000000E+000 1.776356839400250E-014 1.000000000000000E+000
2.980232238769531E-009 -5.000000000000000E+000 1.776356839400250E-014 1.000000000000000E+000
1.490116119384766E-009 -5.000000000000000E+000 1.776356839400250E-014 1.000000000000000E+000
7.450580596923829E-010 -4.999998807907105E+000 2.384185792791981E-005 7.450580591372714E-010
3.725290298461914E-010 -5.000000000000000E+000 1.776356839400250E-014 1.342177281000000E+009
1.862645149230957E-010 -5.000004768371582E+000 9.536743162286142E-005 1.862645149577902E-010
9.313225746154786E-011 -5.000000000000000E+000 1.776356839400250E-014 5.368709119000000E+009
4.656612873077393E-011 -4.999980926513672E+000 3.814697265802635E-004 4.656612872860553E-011
2.328306436538696E-011 -5.000000000000000E+000 1.776356839400250E-014 2.147483648100000E+010
1.164153218269348E-011 -5.000076293945313E+000 1.525878906232236E-003 1.164153218282901E-011
5.820766091346741E-012 -5.000000000000000E+000 1.776356839400250E-014 8.589934591900000E+010
2.910383045673371E-012 -4.999694824218750E+000 6.103515625017762E-003 2.910383045664900E-012
1.455191522836685E-012 -5.000000000000000E+000 1.776356839400250E-014 3.435973836809999E+011
7.275957614183426E-013 -5.001220703125000E+000 2.441406249998223E-002 7.275957614188719E-013
3.637978807091713E-013 -5.000000000000000E+000 1.776356839400250E-014 1.374389534719000E+012
1.818989403545857E-013 -4.995117187500000E+000 9.765625000001774E-002 1.818989403545526E-013
9.094947017729283E-014 -5.000000000000000E+000 1.776356839400250E-014 5.497558138880999E+012
48
Figura 2.3: Valor de ER% em função do espaçamento ∆x, no cálculo de f ′ ( π6 ) por DFP,
DFR e DFC.
49
Os resultados apresentados nas Tabelas 2.1, 2.2 e 2.3 e na Figura 2.2, mostram que as
aproximações melhoram a medida que reduzimos ∆x. No entanto, para valores muito
pequenos de ∆x, temos uma oscilação do erro relativo percentual. Isto se deve ao fato
de que ocorrem erros de arredondamento nos cálculos, devido a aritmética de Ponto Flu-
tuante (número finito de dı́gitos na mantissa). Neste caso, além dos erros inerentes ao
método, temos os erros de arredondamento de máquina, os quais começam a dominar o
erro local de truncamento da série. Logo, para valores muito pequenos de ∆x o erro de
arredondamento de máquina torna-se significativo fazendo com que o erro relativo per-
centual efetivamente aumente. Observe que podemos concluir o mesmo analizando as
Tabelas 2.4, 2.5 e 2.6 e a Figura 2.3.
As equações (7.-12) e (2.7) podem, por exemplo, ser somadas, resultando em:
(∆x)2 d2 f (∆x)4 d4 f
f (xi + ∆x) + f (xi − ∆x) = 2f (xi ) + 2 +2 + ... (2.11)
2! dx2 x=xi 4! dx4 x=xi
d2 f
Isolando dx2
, obtemos:
d2 f f (xi + ∆x) − 2f (xi ) + f (xi − ∆x) (∆x)2 d4 f
= − − ... (2.12)
dx2 x=xi ∆x2 12 dx4 x=xi
Note que, a aproximação para a derivada de ordem dois é uma aproximação do tipo
diferença central e o erro cometido é O(∆x2 ) quando se faz:
d2 f f (xi + ∆x) − 2f (xi ) + f (xi − ∆x)
2
≈ (2.13)
dx x=xi
∆x2
∂f fi+1,j − fi−1,j
= + O(∆x2 ),
∂x xi ,yj
2∆x
50
Figura 2.4: Região bidimensional.
A partir da expansão em série de Taylor de f (x, y) em torno do ponto (xi , yi ), dada por
∂f ∂f (∆x)2 ∂ 2 f
f (xi + ∆x, yi + ∆y) = f (xi , yi ) + (∆x) + (∆y) + +
∂x i,j ∂y i,j 2! ∂x2 i,j
(∆x)(∆y) ∂ 2 f (∆y)2 ∂ 2 f
2 + + ... (2.14)
2! ∂x∂y i,j 2! ∂y 2 i,j
2.4 Exercı́cios
1. Manipule as expansões
∂f (α∆x)2 ∂ 2 f
f (xi − α∆x) = f (xi ) − (α∆x) + + O(∆x)3 (2.15)
∂x i 2! ∂x2 i
∂f (β∆x)2 ∂ 2 f
f (xi + β∆x) = f (xi ) + (β∆x) + + O(∆x)3 (2.16)
∂x i 2! ∂x2 i
∂ ∂f ∂ ∂f
2. Mostre que as aproximações de diferenças centrais para e são
∂x ∂y ∂y ∂x
idênticas.
51
Anexo 2.1 - Diferenças Progressiva, Regressiva e Cen-
tral
Program Derivadas
!-------------------------------------------------------------------------------------------------------------
! Este programa calcula a derivada de uma funç~
ao f=f(x) em um ponto x=x0 utilizando diferença progressiva,
! regressiva e central.
!-------------------------------------------------------------------------------------------------------------
! Declaraç~
ao de variáveis
Implicit None
Double Precision:: x0, Pi, deltax, DFP, DFR, DFC, Exato
Double Precision:: ErroDFP, ErroDFR, ErroDFC
Integer:: i
!-------------------------------------------------------------------------------------------------------------
! Declarando o ponto onde se quer calcular a derivada e o valor exato da derivada no ponto:
!-------------------------------------------------------------------------------------------------------------
Pi=acos(-1.0d0)
x0=Pi/4.0d0
Exato=-10.0*sin(x0)
!-------------------------------------------------------------------------------------------------------------
! Criando os arquivos para escrever os dados
!-------------------------------------------------------------------------------------------------------------
Open(9,File=’DifProg.txt’)
Open(10,File=’DifReg.txt’)
Open(11,File=’DifCen.txt’)
!-------------------------------------------------------------------------------------------------------------
! Calculando as derivadas
!-------------------------------------------------------------------------------------------------------------
Do i=1,41
deltax=(0.1)/(2.0**(i-1))
DFP=(Funcao(x0+deltax)-Funcao(x0))/deltax
ErroDFP=dabs((Exato-DFP)/Exato)*100.0d0
Write(9,*) deltax, ErroDFP
DFR=(Funcao(x0)-Funcao(x0-deltax))/deltax
ErroDFR=dabs((Exato-DFR)/Exato)*100.0d0
Write(10,*) deltax, ErroDFR
DFC=(Funcao(x0+deltax)-Funcao(x0-deltax))/(2.0d0*deltax)
ErroDFC=dabs((Exato-DFC)/Exato)*100.0d0
Write(11,*) deltax, ErroDFC
End Do
Contains
!-------------------------------------------------------------------------------------------------------------
Double Precision Function Funcao(a)
! Esta funç~
ao retorna o valor da funç~
ao f no ponto (a).
Double Precision:: a
Funcao=10.0d0*dcos(a)
End Function Funcao
!-------------------------------------------------------------------------------------------------------------
End Program
52
Anexo 2.2 - Soluções dos exercı́cios propostos
Solução da questão 1: Considere os três pontos mostrados na figura a seguir, que têm
espaçamentos xi+1 − xi = β∆x e xi − xi−1 = α∆x, com 0 < α, β < 1, α 6= β e ∆x um
espaçamento de referência.
∂f
Queremos determinar no ponto xi , em função do valor de f nos pontos xi−1 , xi e xi+1 .
∂x
2 2 2 ∂f (αβ∆x)2 ∂ 2 f
β f (xi − α∆x) = β f (xi ) − (αβ ∆x) + + O(∆x)3 , (2.18)
∂x i 2! ∂x2 i
∂f (αβ∆x)2 ∂ 2 f
α2 f (xi + β∆x) = α2 f (xi ) + (α2 β∆x) + + O(∆x)3 . (2.19)
∂x i 2! ∂x2 i
Para simplificar a notação escreveremos fi para f (xi ), fi+1 para f (xi+1 ) = f (xi + β∆x) e
fi−1 para f (xi−1 ) = f (xi − α∆x).
53
∂f
a qual representa a aproximação para , utilizando diferença finita central de O(∆x)2
∂x i
para grades uniformes.
∂ ∂f
Solução da questão 2: Inicialmente determinaremos a expressão que aproxima .
∂x ∂y
Para tanto, consideremos os pontos (xi , yj±1), (xi±1 , yj+1) e (xi±1 , yj−1), com xi+1 − xi =
xi − xi−1 = ∆x e yj+1 − yj = yj − yj−1 = ∆y.
Assim, aproximando-se o termo entre parênteses por diferenças finitas centrais, temos:
∂ ∂f ∂ f (xi , yj+1) − f (xi , yj−1)
= + O(∆y)2.
∂x ∂y i,j ∂x 2∆y
∂
Aplicando o operador aos pontos (xi , yj±1), obtemos:
∂x
!
∂ ∂f 1 ∂f ∂f
= − + O(∆y)2.
∂x ∂y i,j 2∆y ∂x i,j+1 ∂x i,j−1
Assim, fazendo-se f (xi+1 , yj+1) = fi+1,j+1, f (xi−1 , yj+1) = fi−1,j+1 , f (xi+1 , yj−1) = fi+1,j−1
e f (xi−1 , yj−1) = fi−1,j−1, temos:
∂ ∂f fi+1,j+1 − fi−1,j+1 − fi+1,j−1 + fi−1,j−1
= + O[(∆x)2 , (∆y)2 ]. (2.23)
∂x ∂y i,j 4(∆x)(∆y)
∂ ∂f
Vamos, agora, determinar uma aproximação para . Assim, consideremos os
∂y ∂x
pontos (xi±1 , yj ), (xi+1 , yj±1) e (xi−1 , yj±1), com xi+1 − xi = xi − xi−1 = ∆x e yj+1 − yj =
yj − yj−1 = ∆y.
Logo, aproximando-se o termo entre parênteses por diferenças finitas centrais, temos:
∂ ∂f ∂ f (xi+1 , yj ) − f (xi−1 , yj )
= + O(∆x)2 .
∂y ∂x i,j ∂y 2∆x
∂
Aplicando o operador aos pontos (xi±1 , yj ), obtemos:
∂y
!
∂ ∂f 1 ∂f ∂f
= − + O(∆x)2 .
∂y ∂x i,j 2∆x
∂y i+1,j
∂y i−1,j
54
Aproximando as derivadas que aparecem na equação anterior por diferenças centrais,
temos:
∂ ∂f 1 f (xi+1 , yj+1) − f (xi+1 , yj−1) f (xi−1 , yj+1) − f (xi−1 , yj−1)
= − +
∂y ∂x i,j 2∆x 2∆y 2∆y
+ O(∆x)2 + O(∆y)2. (2.24)
Assim, fazendo-se f (xi+1 , yj+1) = fi+1,j+1, f (xi+1 , yj−1) = fi+1,j−1 , f (xi−1 , yj+1) = fi−1,j+1
e f (xi−1 , yj−1) = fi−1,j−1, temos:
∂ ∂f fi+1,j+1 − fi+1,j−1 − fi−1,j+1 + fi−1,j−1
= + O[(∆x)2 , (∆y)2]. (2.25)
∂y ∂x i,j 4(∆x)(∆y)
∂ ∂f
Comparando as expressões (2.23) e (2.25), concluı́mos que as expressões para
∂x ∂y
∂ ∂f
e , utilizando diferença finita central, são idênticas.
∂y ∂x
55
Capı́tulo 3
Sistemas Lineares
(ii) Consideremos por hipótese que existe a decomposição LU para uma matriz de ordem
n = k − 1, nas condições do teorema, ou seja,
onde Lk−1 é uma matriz triangular inferior de odem k − 1 com 1 na diagonal principal e
Uk−1 é uma matriz triangular superior de odem k − 1.
Devemos mostrar que a decomposição pode ser feita para uma matriz de ordem n = k.
Seja, A uma matriz de ordem k. Assim, A pode ser escrita como:
!
Ak−1 b
A= ,
ct akk
56
Ak .
De fato, efetuando o produto LU e igualando a A, temos:
! !
Lk−1 Uk−1 Lk−1 e Ak−1 b
=
dt Uk−1 dt e + ukk ct akk
Note que a equação (3.1) é válida pela hipótese de indução. Além disso, Lk−1 e Uk−1 são
não singulares, pois Ak−1 é não singular. Assim,
e = L−1
k−1 b,
dt = ct Uk−1
−1
,
ukk = akk − dt e.
(ii) Consideremos, por hipótese, que existe a decomposição GGt para uma matriz de
ordem n = k − 1, nas condições do teorema, ou seja,
onde Gk−1 é uma matriz triangular inferior de odem k − 1, com elementos da diagonal
principal positivos e (Gk−1 )t a transposta de Gk−1 .
Devemos mostrar que a decomposição pode ser feita para uma matriz de ordem n = k.
Seja, A uma matriz simétrica definida positiva. Assim, A pode ser escrita como:
!
Ak−1 b
A= ,
bt akk
57
onde b é um vetor coluna, com k − 1 componentes.
Note que a matriz Ak−1 é de ordem k − 1 e satisfaz as hipóteses do teorema. Utilizando
as matrizes Gk−1 e (Gk−1 )t formamos as seguintes matrizes:
! !
t
Gk−1 0 (G k−1 ) c
G= ; Gt = ,
ct gkk 0 gkk
Note que a equação (3.2) é válida pela hipótese de indução. Além disso, como Ak−1 é
definida positiva, temos que det(Ak−1 ) > 0, portanto Ak−1 é não singular, e Gk−1 e (Gk−1 )t
também são não singulares. Assim,
c = (Gk−1 )−1 b,
−1
ct = bt (Gk−1)t ,
p
gkk = akk − ct c.
Note que, como os elementos da diagonal principal da matriz Gk−1 são positivos e gkk =
√
akk − ct c > 0, concluı́mos que os elementos diagonais de G são positivos.
58
Questão 01. Aplicando-se o método da decomposição LU à matriz:
... ... 3 ...
4 −1 10 8
A= ,
... −3 12 11
0 −2 −5 10
obteve-se as matrizes:
... 0 ... ... . . . −1 . . . 5
2 ... ... ... . . . 1 . . . −2
L= , U = .
3 0 ... 0 ... 0 3 −4
0 ... 1 ... 0 . . . 0 10
Preencher os espaços pontilhados com valores adequados.
59
e os fatores L e U resultantes da aplicação da decomposição são:
1 0 0 0 2 −1 3 5
2 1 0 0 0 1 4 −2
L= , U = .
3 0 1 0 0 0 3 −4
0 −2 1 1 0 0 0 10
Solução:
(a) A matriz
5 2 1
A = −1 4 2
2 −3 10
dos coeficientes do sistema linear pode ser decomposta de forma única no produto LU,
onde L é uma matriz triangular inferior, com lij = 1 para i = j e U é uma matriz triangular
superior, pois A satisfaz as condições da decomposição LU, ou seja, det(Ak ) 6= 0 para
k = 1, 2, onde Ak representa o menor principal de A. Veja a seguir:
det(A1 ) = det 5 = 5 6= 0,
!
5 2
det(A2 ) = det = 22 6= 0.
−1 4
Assim,
1 0 0 u11 u12 u13 5 2 1
LU = A ∴ ℓ21 1 0 0 u22 u23 = −1 4 2 .
ℓ31 ℓ32 1 0 0 u33 2 −3 10
60
Para determinarmos os elementos da primeira coluna de L, multiplicaremos a segunda e
terceira linhas de L pela primeira coluna de U. Assim, temos:
1
ℓ21 · u11 + 1 · 0 + 0 · 0 = a21 ∴ ℓ21 · 5 = −1 ∴ ℓ21 = −
5
2
ℓ31 · u11 + ℓ32 · 0 + 1 · 0 = a31 ∴ ℓ31 · 5 = 2 ∴ ℓ31 =
5
(LU)x = b ∴ L(Ux) = b.
61
Agora resolveremos o sistema Ux = y. Logo, temos:
5 2 1 x1 −12
11 88
0 22
5
x
5 2
= 5
23
0 0 2 x3 23
5x1 + 2x2 + x3 = −12
22
∴ 5 2
x + 11 x = 88
5 3 5
23
2
x3 = 23
Através da retro-substituição, obtemos como solução do sistema anterior, o qual é equi-
valente ao sistema original Ax = b:
x = (−4, 3 2)t .
Assim,
a11 ∆1
u11 = = ,
1 ∆0
onde ∆1 = det(A1 ) e ∆0 = 1.
(ii) Consideremos por hipótese que existe a decomposição LU para uma matriz de or-
dem n = k − 1, nas condições do teorema da decomposição LU, e que:
∆i
uii = , para i = 1, 2, ..., k − 1.
∆i−1
onde ∆i = det(Ai ) e ∆0 = 1.
62
Devemos mostrar que se a decomposição LU pode ser feita para uma matriz de ordem
n = k, teremos
∆i
uii = , para i = 1, 2, ..., k.
∆i−1
onde ∆i = det(Ai ), ∆k = det(A) e ∆0 = 1.
Considerando que toda a matriz A de ordem i, com i = 1, 2, ..., k, pode ser decomponı́vel
em LU, onde L é uma matriz triangular inferior de ordem i, com elementos diagonais
unitários e U é uma matriz triangular superior de ordem i, podemos escrever:
Assim, considerando-se a hipótese de indução, temos ∆k−1 = ∆k−2 uk−1,k−1. Logo, para
i = k, podemos escrever:
∆k det(Uk−1 ) · ukk
=
∆k−1 ∆k−2 uk−1,k−1
det(Uk−1 ) · ukk
=
det(Uk−3 ) · uk−2,k−2 · uk−1,k−1
det(Uk−1 ) · ukk
=
det(Uk−2 ) · uk−1,k−1
det(Uk−1 ) · ukk
=
det(Uk−1 )
= ukk
63
Para determinarmos os elementos da primeira coluna de L, multiplicamos todas as linhas
de L pela primeira coluna de U. Assim, temos:
ℓ11 · 1 = a11
ℓ21 · 1 = a21
ℓ31 · 1 = a31 ∴ ℓi1 = ai1 , para i = 1, 2, ..., n
..
.
ℓn1 · 1 = an1
64
Questão 05. Resolver o sistema Ax = b, onde:
2 3 −1 x1 4
A = 1 0 2 ; x = x2 ; b = 3 ,
0 3 −1 x3 2
usando a decomposição LU do exercı́cio 4.
ℓ11 = a11 = 2
ℓ21 = a21 = 1
ℓ31 = a31 = 0
ℓ31 · u13 + ℓ32 · u23 + ℓ33 · 1 = a33 ∴ ℓ33 = a33 − ℓ31 · u13 − ℓ32 · u23
1 5
∴ ℓ33 = −1 − 0 · − −3· −
2 5
∴ ℓ33 = 4
(LU)x = b ∴ L(Ux) = b.
x = (1, 1 1)t .
66
Questão 06. Mostre que se A satisfaz as hipóteses da decomposição LU, então A se
decompõe de maneira única no produto LDU, onde L e U são matrizes triangulares infe-
rior e superior, respectivamente, ambas com 1 na diagonal, e D é matriz diagonal. Além
disso, det(A) = d11 d22 ...dnn .
Devemos mostrar que a decomposição pode ser feita para uma matriz de ordem n = k.
Seja, A uma matriz de ordem k. Assim, A pode ser escrita como:
!
Ak−1 b
A= ,
ct akk
onde b e c ão vetores coluna, ambos com k − 1 componentes.
Note que a matriz Ak−1 é de ordem k − 1 e satisfaz as hipóteses do teorema. Utilizando
as matrizes Lk−1 , Dk−1 e Uk−1 formamos as seguintes matrizes:
! ! !
Lk−1 0 Dk−1 0 Uk−1 f
L= ; U= , U= ,
et 1 0 dkk 0 1
onde e e f ão vetores coluna, ambos com k − 1 componentes.
Assim, precisamos mostrar que existem e, f e dkk unicamente definidos, tais que Lk Dk Uk =
Ak .
De fato, efetuando o produto LDU, temos:
! ! !
Lk−1 0 Dk−1 0 Uk−1 f
LDU =
et 1 0 dkk 0 1
! !
Lk−1 Dk−1 0 Uk−1 f
= t
e Dk−1 dkk 0 1
!
Lk−1 Dk−1 Uk−1 Lk−1 Dk−1 f
= t t
e Dk−1 Uk−1 e Dk−1 f + dkk
Igualando LDU a A, obtemos:
Lk−1 Dk−1Uk−1 = Ak−1 , (3.-55)
Lk−1 Dk−1 f = b, (3.-54)
et Dk−1 Uk−1 = ct , (3.-53)
et Dk−1 f + dkk = akk . (3.-52)
67
Note que a equação (3.-55) é válida pela hipótese de indução. Além disso, Lk−1 , Dk−1
e Uk−1 são não singulares pois Ak−1 é não singular. Assim, os produtos Lk−1 Dk−1 e
Dk−1 Uk−1 também são não singulares, e
det(A) = det(LDU)
= det(L) det(D) det(U)
= (1) · (det(Dk−1 ) · dkk ) · (1)
= d11 d22 ...dk−1,k−1dkk .
Questão 07. Mostre que se A é uma matriz simétrica e satisfaz as hipóteses da decom-
posição LU, então A = LDU implica U = Lt (transposta de L).
Questão 08. Mostre que se A é uma matriz simétrica, positiva definida e satisfaz as
hipóteses da decomposição LU, então A = LDLt onde os elementos diagonais de D são
todos positivos.
A = LDU = LDLt .
Devemos mostrar que se A, além de simétrica, for positiva definida, os elementos diagonais
de D são todos positivos. De fato, considerando um x arbitrário não nulo, se A é definida
68
positiva e fazendo-se y = Lt x, obtemos:
Sabemos que se D é uma matriz de ordem n definida positiva, temos que os determinantes
dos menores principais de D são positivos, ou seja, det(Dk ) > 0, para k = 1, 2, ..., n.
Observe que pela afirmação acima, temos:
Solução:
(a) A matriz ampliada associada ao sistema é dada por:
..
2 −3 1 . −5
(1) (1)
A |b = 4 −6 −1 ..
.
. −7
..
1 2 1 . 4
Para resolver o sistema utilizando-se o método de Eliminação de Gauss, inicialmente
eliminaremos a incógnita x1 da segunda e terceira linhas, pela diferença entre a segunda
(1)
a21
e a primeira linha multiplicada por (1) e pela diferença entre a terceira e a primeira linha
a11
(1)
a31
multiplicada por (1) . Assim,
a11
(1) (1)
a21 a31 1
(1)
=2 e (1)
= ; e
a11 a11 2
69
(1)
(2) (1) a21 (1)
a21 = a21 − (1)
· a11 = 4 − 2 · 2 = 0
a11
(1)
(2) (1) a21 (1)
a22 = a22 − (1)
· a12 = −6 − 2 · (−3) = 0
a11
(1)
(2) (1) a21 (1)
a23 = a23 − (1)
· a13 = −1 − 2 · 1 = −3
a11
(1)
(2) (1) a21 (1)
b2 = b2 − (1)
· b1 = −7 − 2 · (−5) = 3
a11
(1)
(2) (1) a31 (1) 1
a31 = a31 − (1)
· a11 = 1 − ·2=0
a11 2
(1)
(2) (1) a31 (1) 1 7
a32 = a32 − (1)
· a12 = 2 − · (−3) =
a11 2 2
(1)
(2) (1) a31 (1) 1 1
a33 = a33 − (1)
· a13 = 1 − ·1=
a11 2 2
(1)
(2) (1) a31 (1) 1 13
b3 = b3 − (1)
· b1 = 4 − · (−5) =
a11 2 2
Logo,
..
2 −3 1 . −5
= 0 0 −3 ... 3
A(2) |b(2)
.
.. 13
0 72 1
2
. 2
Permutando-se a segunda e terceira equações da matriz acima, obtemos:
..
2 −3 1 . −5
(3) (3)
A |b =
7 1 .. 13
0 2 2
. 2 .
.
0 0 −3 .. 3
x = (1, 2, −1)t .
(b) Note que a permutação foi uma das operações elementares para obtenção da matriz
ampliada A(3) |b(3) . Assim,
(3) (3) (3) (3) 7
det(A) = − det(A ) = − a11 · a22 · a33 = − 2 · · (−3) = 21.
2
70
Questão 10. Verificar, usando o método de eliminação de Gauss, que o sistema:
x1 + 2x2 + x3 = 3
2x1 + 3x2 + x3 = 5
3x + 5x + 2x = 1
1 2 3
(1) (1)
a21 2 a31 3
(1)
= =2 e (1)
= = 3; e
a11 1 a11 1
(1)
(2) (1) a21 (1)
a21 = a21 − (1)
· a11 = 2 − 2 · 1 = 0
a11
(1)
(2) (1) a21 (1)
a22 = a22 − (1)
· a12 = 3 − 2 · 2 = −1
a11
(1)
(2) (1) a21 (1)
a23 = a23 − (1)
· a13 = 1 − 2 · 1 = −1
a11
(1)
(2) (1) a21 (1)
b2 = b2 − (1)
· b1 = 5 − 2 · 3 = −1
a11
(1)
(2) (1) a31 (1)
a31 = a31 − (1)
· a11 = 3 − 3 · 1 = 0
a11
(1)
(2) (1) a31 (1)
a32 = a32 − (1)
· a12 = 5 − 3 · 2 = −1
a11
(1)
(2) (1) a31 (1)
a33 = a33 − (1)
· a13 = 2 − 3 · 1 = −1
a11
(1)
(2) (1) a31 (1)
b3 = b3 − (1)
· b1 = 1 − 3 · 3 = −8
a11
71
Assim,
..
1 2 1
. 3
A(2) |b(2)
= ..
.
0 −1 −1 . −1
..
0 −1 −1 . −8
Agora, eliminaremos x2 da terceira linha pela diferença entre a terceira linha e a segunda
(2)
a32 −1
linha multiplicada por (2) = −1
= 1. Logo,
a22
(2)
(3) (2) a32 (2)
a32 = a32 − a = −1 − 1 · (−1) = 0
(2) 22
a22
(2)
(3) (2) a32 (2)
a33 = a33 − a = −1 − 1 · (−1) = 0
(2) 23
a22
(2)
(3) (2) a32 (2)
b3 = b3 − b = −8 − 1 · (−1) = −7
(2) 2
a22
Assim,
..
1 2 1
. 3
..
A(3) |b(3) =
0 −1 −1 . −1 .
..
0 0 0 . −7
Portanto, resolver o sistema Ax = b é equivalente a resolver o sistema A(3) x = b(3) :
1 2 1 x1 3 x1 + 2x2 + x3 = 3
0 −1 −1 x2 = −1 ∴ −x2 − x3 = −1
0 0 0 x3 −7 0 = −7
Note que há uma inconsistência na terceira equação do sistema. Logo, Ax = b não admite
solução.
72
Para resolver o sistema utilizando-se o método de Eliminação de Gauss, inicialmente
eliminaremos a incógnita x1 da segunda e terceira linhas, pela diferença entre a segunda
(1)
a21
e a primeira linha multiplicada por (1) e pela diferença entre a terceira e a primeira linha
a11
(1)
a31
multiplicada por (1) . Assim,
a11
(1) (1)
a21 2 a31 α
(1)
= =2 e (1)
= = α; e
a11 1 a11 1
(1)
(2) (1) a21 (1)
a21 = a21 − (1)
· a11 = 2 − 2 · 1 = 0
a11
(1)
(2) (1) a21 (1)
a22 = a22 − (1)
· a12 = −1 − 2 · 4 = −9
a11
(1)
(2) (1) a21 (1)
a23 = a23 − (1)
· a13 = 2α − 2 · α = 0
a11
(1)
(2) (1) a21 (1)
b2 = b2 − (1)
· b1 = 3 − 2 · 6 = −9
a11
(1)
(2) (1) a31 (1)
a31 = a31 − (1)
· a11 = α − α · 1 = 0
a11
(1)
(2) (1) a31 (1)
a32 = a32 − (1)
· a12 = 3 − α · 4 = 3 − 4α
a11
(1)
(2) (1) a31 (1)
a33 = a33 − (1)
· a13 = 1 − α · α = 1 − α2
a11
(1)
(2) (1) a31 (1)
b3 = b3 − (1)
· b1 = 5 − α · 6 = 5 − 6α
a11
Assim,
..
1 4 α . 6
A(2) |b(2) = ..
.
0 −9 0 . −9
..
0 3 − 4α 1 − α2 . 5 − 6α
Agora, eliminaremos x2 da terceira linha pela diferença entre a terceira linha e a segunda
(2)
a32 3−4α
linha multiplicada por (2) = −9
. Logo,
a22
(2)
(3) (2) a32 (2) 3 − 4α
a32 = a32 − (2)
a22 = 3 − 4α − · (−9) = 0
a22 −9
(2)
(3) (2) a32 (2) 2 3 − 4α
a33 = a33 − a =1−α −
(2) 23
· 0 = 1 − α2
a22 −9
(2)
(3) (2) a32 (2) 3 − 4α
b3 = b3 − b = 5 − 6α −
(2) 2
· (−9) = 2 − 2α
a22 −9
73
Assim,
..
1 4 α . 6
A(3) |b(3) = ..
.
0 −9 0 . −9
..
0 0 1 − α2 . 2 − 2α
Portanto, resolver o sistema Ax = b é equivalente a resolver o sistema A(3) |b(3) :
1 4 α x1 6 x1 + 4x2 + αx3 = 6
0 −9 0 x2 = −9 ∴ −9x2 = −9
0 0 1 − α2 x3 2 − 2α 2
(1 − α )x3 = 2 − 2α
que não admite solução, pois há uma inconsistência na terceira equação.
74
onde:
1
2 ...
G= .
... 2 1
0 −4 . . . 2
Preencher os espaços pontilhados com valores adequados.
Note que, uma vez que o processo de Cholesky foi aplicado, temos que a matriz A é
simétrica. Assim,
Portanto, temos:
a11 2 3 a14 1 2 g31 0
2 2
8 10 −8 2 4 + g22 2g31 + 2g22 −4g22
= 2 .
3 10 14 −5 g31 2g31 + 2g22 g31 + 5 −8 + g43
2
a41 −8 −5 29 0 −4g22 −8 + g43 16 + g43 +4
a11 = 1,
a14 = a41 = 0,
−4g22 = −8 ∴ g22 = 2,
−8 + g43 = −5 ∴ g43 = 3,
g31 = 3.
Portanto,
1 2 3 0 1 0 0 0
2 8 10 −8 2 2 0 0
A= e G= .
3 10 14 −5 3 2 1 0
0 −8 −5 29 0 −4 3 2
75
Escolha adequadamente e resolva um dos sistemas Ax = b, Bx = b, pelo processo de
Cholesky, onde b = (2, 1, 5)t.
76
dos coeficientes do sistema linear é singular, pois det(A) = 0. Assim, não podemos aplicar
o método citado acima para resolver o sistema original Ax = b, uma vez que uma das
hipóteses para a aplicação do método não é atendida.
Assim,
∞
X
(I − B)−1 = lim Sm = I + B + B 2 + ... = Bj .
k→∞
j=0
lim ||B k x|| ≤ lim (max |λi |)k · ||x|| = 0 ∴ lim ||B k x|| = 0
k→∞ k→∞ k→∞
∴ || lim B k x|| = 0
k→∞
∴ lim B k x = 0
k→∞
77
Teorema 7 Seja Ax = b um sistema de equações lineares, com det(A) 6= 0 e
o processo iterativo estacionário que gera uma sequência de aproximações para a solução
do sistema. A condição necessária e suficiente para a convergência do processo iterativo
definido por (3.-96) é que max |λi | < 1, onde λi são os autovalores da matriz B.
x(k) = Bx(k−1) + g
= B(Bx(k−2) + g) + g
= B 2 x(k−2) + (B + I)g
= B 2 (Bx(k−3) + g) + (B + I)g
= B 3 x(k−3) + (B 2 + B + I)g
..
.
xk = B (k) x(0) + (B k−1 + ... + B + I)g. (3.-101)
k−1
!
X
(k) (k) (0) j
lim x = lim B x + lim B g = 0 + (I − B)−1 g = (I − B)−1 g.
k→∞ k→∞ k→∞
j=0
Agora, supondo que a sequência {xk } seja convergente para x, mostraremos que max |λi | <
k→∞
1, para i = 1, 2, ..., n.
Definindo x(0) = x − v, sendo v um vetor arbitrário, temos:
de modo que,
Logo,
lim B k v = lim B k (x − x(0) ) = lim x − x(k) = 0.
k→∞ k→∞ k→∞
||B k v|| = |λ|k · ||v|| ∴ lim ||B k v|| = lim |λ|k · ||v||
k→∞ k→∞
∴ || lim B v|| = lim |λ|k · ||v||
k
k→∞ k→∞
k
∴ 0 = lim |λ| · ||v||
k→∞
78
Como v ∈ Rn era arbitrário, para que a igualdade acima se verifique, devemos ter
max |λi | < 1.
Corolário 2 O processo iterativo definido por (3.-96) é convergente se, para qualquer
norma de matrizes, ||B|| < 1.
x = Bx + g, (3.-105)
e, que o processo iterativo estacionário para a obteção da solução seja dado por (3.-96).
Subtraindo-se (3.-96) de (3.-105), obtemos:
||x − x(k) || → 0.
Portanto, se ||B|| < 1 para alguma norma, temos garantida a convergência do processo
iterativo definido por (3.-96).
79
Questão 01. Usando o método de Jacobi-Richardson, obter a solução do sistema
10x1 + x2 − x3 = 10
x1 + 10x2 + x3 = 12,
2x − x + 10x = 11
1 2 3
De fato,
- Para k = 0:
(1) (0) (0)
x1 = 1, 0 − 0, 1x2 + 0, 1x3 = 1, 0 − 0, 1 · 0 + 0, 1 · 0 = 1, 0
(1) (0) (0)
x2 = 1, 2 − 0, 1x1 − 0, 1x3 = 1, 2 − 0, 1 · 0 − 0, 1 · 0 = 1, 2
(1) (0) (0)
x3 = 1, 1 − 0, 2x1 + 0, 1x2 = 1, 1 − 0, 2 · 0 + 0, 1 · 0 = 1, 1
80
- Para k = 1:
(2) (1) (1)
x1 = 1, 0 − 0, 1x2 + 0, 1x3 = 1, 0 − 0, 1 · 1, 2 + 0, 1 · 1, 1 = 0, 99
(2) (1) (1)
x2 = 1, 2 − 0, 1x1 − 0, 1x3 = 1, 2 − 0, 1 · 1, 0 − 0, 1 · 1, 1 = 0, 99
(2) (1) (1)
x3 = 1, 1 − 0, 2x1 + 0, 1x2 = 1, 1 − 0, 2 · 1, 0 + 0, 1 · 1, 2 = 1, 02
- Para k = 2:
(3) (2) (2)
x1 = 1, 0 − 0, 1x2 + 0, 1x3 = 1, 0 − 0, 1 · 0, 99 + 0, 1 · 1, 02 = 1, 003
(3) (2) (2)
x2 = 1, 2 − 0, 1x1 − 0, 1x3 = 1, 2 − 0, 1 · 0, 99 − 0, 1 · 1, 02 = 0, 999
(3) (2) (2)
x3 = 1, 1 − 0, 2x1 + 0, 1x2 = 1, 1 − 0, 2 · 0, 99 + 0, 1 · 0, 99 = 1, 001
- Para k = 3:
(4) (3) (3)
x1 = 1, 0 − 0, 1x2 + 0, 1x3 = 1, 0 − 0, 1 · 0, 999 + 0, 1 · 1, 001 = 1, 0002
(4) (3) (3)
x2 = 1, 2 − 0, 1x1 − 0, 1x3 = 1, 2 − 0, 1 · 1, 003 − 0, 1 · 1, 001 = 0, 9996
(4) (3) (3)
x3 = 1, 1 − 0, 2x1 + 0, 1x2 = 1, 1 − 0, 2 · 1, 003 + 0, 1 · 0, 999 = 0, 9993
- Para k = 4:
(5) (4) (4)
x1 = 1, 0 − 0, 1x2 + 0, 1x3 = 1, 0 − 0, 1 · 0, 9996 + 0, 1 · 0, 9993 = 0, 99997
(5) (4) (4)
x2 = 1, 2 − 0, 1x1 − 0, 1x3 = 1, 2 − 0, 1 · 1, 0002 − 0, 1 · 0, 9993 = 1, 00005
(5) (4) (4)
x3 = 1, 1 − 0, 2x1 + 0, 1x2 = 1, 1 − 0, 2 · 1, 0002 + 0, 1 · 0, 9996 = 0, 99992
Como o critério de parada foi satisfeito, temos que a solução do sistema, com ǫ < 10−3 , é:
81
(a) Verificar a possibilidade de aplicação do método de Jacobi-Richardson.
(b) Se possı́vel resolvê-lo pelo método de Jacobi-Richardson, obtenha o resultado com
ǫ < 10−2 .
Solução:
(a) Note que a matriz dos coeficientes não é estritamente diagonalmente dominante, pois
para i = 2, temos:
|a21 | + |a23 | = |0, 2| + |0, 8| = |a22 |.
Assim, por esse critério, nada podemos afirmar a respeito da convergência do método.
Verificaremos, agora, se o processo iterativo de Jacobi-Richardson será convergente, uti-
lizando o critério das linhas e o critério das colunas. Observe que, como a matriz dos
coeficientes não é estritamente diagonalmente dominante, então o critério das linhas não
é satisfeito. De fato, pelo critério das linhas, temos
82
(b) O processo iterativo obtido pelo método de Jacobi-Richardson é dado por:
(k+1) (k) (k)
x1
= 1 − 0, 1x2 + 0, 1x3
(k+1) (k) (k)
x2 = 2 − 0, 2x1 − 0, 8x3
(k+1) (k) (k)
x3 = 3 − 0, 7x1 − 0, 1x2
Utilizaremos como critério de parada, o erro relativo, de modo que
||x(k+1) − x(k) ||∞
(k+1)
< ǫ, onde ǫ = 10−2.
||x ||∞
Assim, a partir de x(0) = (0, 0, 0)t, obtemos:
- Para k = 0:
(1) (0) (0)
x1 = 1 − 0, 1x2 + 0, 1x3 = 1 − 0, 1 · 0 + 0, 1 · 0 = 1
(1) (0) (0)
x2 = 2 − 0, 2x1 − 0, 8x3 = 2 − 0, 2 · 0 − 0, 8 · 0 = 2
(1) (0) (0)
x3 = 3 − 0, 7x1 − 0, 1x2 = 3 − 0, 7 · 0 − 0, 1 · 0 = 3
- Para k = 2:
(3) (2) (2)
x1 = 1 − 0, 1x2 + 0, 1x3 = 1 − 0, 1 · (−0, 6) + 0, 1 · 2, 1 = 1, 27
(3) (2) (2)
x2 = 2 − 0, 2x1 − 0, 8x3 = 2 − 0, 2 · 1, 1 − 0, 8 · 2, 1 = 0, 1
(3) (2) (2)
x3 = 3 − 0, 7x1 − 0, 1x2 = 3 − 0, 7 · 1, 1 − 0, 1 · (−0, 6) = 2, 29
- Para k = 3:
(4) (3) (3)
x1 = 1 − 0, 1x2 + 0, 1x3 = 1 − 0, 1 · 0, 1 + 0, 1 · 2, 29 = 1, 219
(4) (3) (3)
x2 = 2 − 0, 2x1 − 0, 8x3 = 2 − 0, 2 · 1, 27 − 0, 8 · 2, 29 = −0, 086
(4) (3) (3)
x3 = 3 − 0, 7x1 − 0, 1x2 = 3 − 0, 7 · 1, 27 − 0, 1 · 0, 1 = 2, 101
83
- Para k = 4:
(5) (4) (4)
x1 = 1 − 0, 1x2 + 0, 1x3 = 1 − 0, 1 · (−0, 086) + 0, 1 · 2, 101 = 1, 2187
(5) (4) (4)
x2 = 2 − 0, 2x1 − 0, 8x3 = 2 − 0, 2 · 1, 219 − 0, 8 · 2, 101 = 0, 0754
(5) (4) (4)
x3 = 3 − 0, 7x1 − 0, 1x2 = 3 − 0, 7 · 1, 219 − 0, 1 · (−0, 086) = 2, 1553
- Para k = 5:
(6) (5) (5)
x1 = 1 − 0, 1x2 + 0, 1x3 = 1 − 0, 1 · 0, 0754 + 0, 1 · 2, 1553 = 1, 20799
(6) (5) (5)
x2 = 2 − 0, 2x1 − 0, 8x3 = 2 − 0, 2 · 1, 2187 − 0, 8 · 2, 1553 = 0, 03202
(6) (5) (5)
x3 = 3 − 0, 7x1 − 0, 1x2 = 3 − 0, 7 · 1, 2187 − 0, 1 · 0, 0754 = 2, 13937
- Para k = 6:
(7) (6) (6)
x1 = 1 − 0, 1x2 + 0, 1x3 = 1 − 0, 1 · 0, 03202 + 0, 1 · 2, 13937 = 1, 210735
(7) (6) (6)
x2 = 2 − 0, 2x1 − 0, 8x3 = 2 − 0, 2 · 1, 20799 − 0, 8 · 2, 13937 = 0, 046906
(7) (6) (6)
x3 = 3 − 0, 7x1 − 0, 1x2 = 3 − 0, 7 · 1, 20799 − 0, 1 · 0, 03202 = 2.151205
Como o critério de parada foi satisfeito, temos que a solução do sistema, com ǫ < 10−2 , é:
Mostrar que reordenando as equações e incógnitas podemos fazer com que o critério de
Sassenfeld seja satisfeito, mas não o das linhas.
Solução: Consideremos inicialmente que a equação 4x1 + 2x2 + 6x3 = 1 seja a primeira
equação do sistema. Dividindo a equação pelo respectivo termo da diagonal principal, ou
seja, por a11 = 4, temos:
x1 + 0, 5x2 + 1, 5x3 = 0, 25.
84
Logo,
|a∗12 | + |a∗13 | = |0, 5| + |1, 5| = 2 > 1.
Consideremos, agora, que a equação 4x1 + 2x2 + 6x3 = 1 seja a segunda equação do
sistema. Dividindo a equação pelo respectivo termo da diagonal principal, ou seja, por
a22 = 2, temos:
2x1 + x2 + 3x3 = 0, 5.
Logo,
|a∗21 | + |a∗23 | = |2| + |3| = 5 > 1.
Finalmente, consideremos, que a equação 4x1 + 2x2 + 6x3 = 1 seja a terceira equação do
sistema. Dividindo a equação pelo respectivo termo da diagonal principal, ou seja, por
a33 = 6, temos:
2 1 1
x1 + x2 + x3 = .
3 3 6
Logo,
∗ ∗
2 1
|a21 | + |a23 | = + = 1.
3 3
Portanto, vemos que mesmo reordenando as equações e incógnitas do sistema o critério
das linhas não é satisfeito.
Solução:
(a) Dividindo cada equação do sistema pelo correspondente elemento da diagonal principal
da matriz dos coeficientes, obtemos:
x1 + 0, 4x2 + 0, 2x3 = 1, 4
−0, 25x1 + x2 + 0, 5x3 = 0, 75
0, 2x − 0, 3x + x = −0, 1
1 2 3
85
Como o critério de Sassenfeld é satisfeito, podemos garantir que o processo de Gauss-
Seidel converge.
- para k = 0,
(1) (0) (0)
x1 = 1, 40 − 0, 40x2 − 0, 2x3 = 1, 40 − 0, 40 · 0, 0 − 0, 2 · 0, 0 = 1, 4
(1) (1) (0)
x2 = 0, 75 + 0, 25x1 − 0, 5x3 = 0, 75 + 0, 25 · 1, 4 − 0, 5 · 0, 0 = 1, 1
(1) (1) (1)
x3 = −0, 10 − 0, 20x1 + 0, 3x2 = −0, 10 − 0, 20 · 1, 4 + 0, 3 · 1, 1 = −0, 05
- para k = 1,
(2) (1) (1)
x1 = 1, 40 − 0, 40x2 − 0, 2x3 = 1, 40 − 0, 40 · 1, 10 − 0, 2 · (−0, 05) = 0, 97
(2) (2) (1)
x2 = 0, 75 + 0, 25x1 − 0, 5x3 = 0, 75 + 0, 25 · 0, 97 − 0, 5 · (−0, 05) = 1, 0175
(2) (2) (2)
x3 = −0, 10 − 0, 20x1 + 0, 3x2 = −0, 10 − 0, 20 · 0, 97 + 0, 3 · (1, 0175) = 0, 01125
- para k = 2,
(3) (2) (2)
x1 = 1, 40 − 0, 40x2 − 0, 2x3
(3) (3) (2)
x2 = 0, 75 + 0, 25x1 − 0, 5x3
(3) (3) (3)
x3 = −0, 10 − 0, 20x1 + 0, 3x2
(3)
x1 = 1, 40 − 0, 40 · 1, 01750 − 0, 2 · (0, 01125) = 0, 99075
(3)
x2 = 0, 75 + 0, 25 · 0, 99075 − 0, 5 · (0, 01125) = 0, 9920625
(3)
x3 = −0, 10 − 0, 20 · 0, 99075 + 0, 3 · (0, 9920625) = −0, 00053125
86
- para k = 3,
(4) (3) (3)
x1 = 1, 40 − 0, 40x2 − 0, 2x3
(4) (4) (3)
x2 = 0, 75 + 0, 25x1 − 0, 5x3
(4) (4) (4)
x3 = −0, 10 − 0, 20x1 + 0, 3x2
(4)
x1 = 1, 40 − 0, 40 · 0, 9920625 − 0, 2 · (−0, 00053125) = 1, 00328125
(4)
x2 = 0, 75 + 0, 25 · 1, 00328125 − 0, 5 · (−0, 00053125) = 1, 001085938
(4)
x3 = −0, 10 − 0, 20 · 1, 00328125 + 0, 3 · (1.001085938) = −3, 3046875 × 10−4
- para k = 4,
(5) (4) (4)
x1 = 1, 40 − 0, 40x2 − 0, 2x3
(5) (5) (4)
x2 = 0, 75 + 0, 25x1 − 0, 5x3
(5) (5) (5)
x3 = −0, 10 − 0, 20x1 + 0, 3x2
(5)
−4
x1 = 1, 40 − 0, 40 · 1, 001085938 − 0, 2 · (−3, 3046875 × 10 ) = 0, 999631718
(5)
x2 = 0, 75 + 0, 25 · 0.999631718 − 0, 5 · (−3, 3046875 × 10−4 ) = 1, 000073164
(5)
x3 = −0, 10 − 0, 20 · 0, 999631718 + 0, 3 · (1, 000073164) = 9, 56056 × 10−5
t
x(5) − x(4) = −3, 649532 × 10−3 ; −1, 012774 × 10−3; 4, 2607435 × 10−4
||x(5) − x(4) ||∞ 3, 649532 × 10−3
(5)
= = 3, 649265005 × 10−3 < ǫ.
||x ||∞ 1, 000073164
Como o critério de parada foi satisfeito, temos que a solução do sistema, com ǫ < 10−2 , é:
87
Solução:
(a) O método dos Gradientes é aplicável a solução de um sistema Ax = b, onde A é uma
matriz positiva definida.
Considerando a matriz A, positiva definida, então os determinantes dos seus menores
principais e da própria matriz A são positivos. Assim, devemos ter:
Para k = 1, obtemos:
88
Agora,
−3 0, 4 −3, 252252252
v (1) = v (0) − tmin r (0)
= −1 − 0, 63063063 0, 6 = −1, 378378378 ,
12 0, 2 11, 87387387
0, 4 0, 72 −0, 054054053
r (1) = r (0) − tmin Ar (0)
= 0, 6 − 0, 63063063 0, 84 = 0, 07027027 .
0, 2 0, 48 −0, 102702702
Como
v (1) − v (0) = (−0, 252252252; −0, 378378378; −0, 12612613)t
temos:
||v (1) − v (0) ||∞ 0, 378378378
= = 0, 031866464 > ǫ.
||v (1) ||∞ 11, 87387387
Para k = 2, obtemos:
Como
v (2) − v (1) = (0, 129090421; −0, 16781755; 0, 2452718)t
temos:
||v (2) − v (1) ||∞ 0, 2452718
(2)
= = 0, 020238373 > ǫ.
||v ||∞ 12, 11914567
Para k = 3, obtemos:
89
1 0, 4 0, 4 0, 106018067 0, 118863177
Ar (2)
= 0, 4 1 0, 4 0, 052197609 = 0, 086570903 ,
0, 4 0, 4 0, 4 −0, 020084832 0, 055252337
hAr (2) , r (2) i = 0, 016010704.
Assim,
hr (2) , r (2) i 0, 014367821
tmin = (2) (2)
= = 0, 897388459.
hAr , r i 0, 016010704
Agora,
Como
v (3) − v (2) = (−0, 09513939; −0, 046841529; 0, 0180239)t
temos:
||v (3) − v (2) ||∞ 0, 09513939
(3)
= = 7, 838680135 × 10−3 < ǫ.
||v ||∞ 12, 13716957
Portanto, como o critério de parada foi satifeito, temos que a solução do sistema com a
precisão requerida é
−3, 218301221
x = v (3) = −1, 593037457 .
12, 13716957
90
Capı́tulo 4
Solução: Consderando 0.7 sin x + 0.2 cos y = F (x, y) e 0.7 cos x − 0.2 sin y = G(x, y),
temos:
xk+1 = F (xk , yk ),
yk+1 = G(xk , yk ),
91
Para k = 0, temos:
x1 = F (x0 , y0 ) = 0.7 sin x0 + 0.2 cos y0 = 0.7 sin (0, 5) + 0.2 cos (0, 5) = 0, 511114389
y1 = G(x0 , y0 ) = 0.7 cos x0 − 0.2 sin y0 = 0.7 cos (0, 5) − 0.2 sin (0, 5) = 0, 518422685
x1 − x0 0, 511114389 − 0, 5
ERx1 = = = 0, 021745404 > 10−3
x1 0, 511114389
y1 − y0 0, 518422685 − 0, 5
ERy1 = = = 0, 035536032 > 10−3
y1 0, 518422685
Para k = 1, temos:
x2 = F (x1 , y1 ) = 0.7 sin x1 + 0.2 cos y1 = 0.7 sin (0, 511114389) + 0.2 cos (0, 518422685)
= 0, 516125031
y2 = G(x1 , y1) = 0.7 cos x1 − 0.2 sin y1 = 0.7 cos (0, 511114389) − 0.2 sin (0, 518422685)
= 0, 511437823
x2 − x1 0, 516125031 − 0, 511114389
ERx2 = = = 9, 708194137 × 103 > 10−3
x2 0, 516125031
y2 − y1 0, 511437823 − 0, 518422685
ERy2 = = = 0, 013657304 > 10−3
y2 0, 511437823
Para k = 2, temos:
x3 = F (x2 , y2 ) = 0.7 sin x2 + 0.2 cos y2 = 0.7 sin (0, 516125031) + 0.2 cos (0, 511437823)
= 0, 519867889
y3 = G(x2 , y2) = 0.7 cos x2 − 0.2 sin y2 = 0.7 cos (0, 516125031) − 0.2 sin (0, 511437823)
= 0, 510930319
x3 − x2 0, 519867889 − 0, 516125031
ERx3 = = = 7, 199632982 × 10−3 > 10−3
x3 0, 519867889
y3 − y2 0, 510930319 − 0, 511437823
ERy3 = = = 9, 932930169 × 10−4 < 10−3
y3 0, 510930319
Para k = 3, temos:
x4 = F (x3 , y3 ) = 0.7 sin x3 + 0.2 cos y3 = 0.7 sin (0, 519867889) + 0.2 cos (0, 510930319)
= 0, 522193833
y4 = G(x3 , y3) = 0.7 cos x3 − 0.2 sin y3 = 0.7 cos (0, 519867889) − 0.2 sin (0, 510930319)
= 0, 509721577
x4 − x3 0, 522193833 − 0, 519867889
ERx4 = = = 4, 454178276 × 10−3 > 10−3
x4 0, 522193833
y4 − y3 0, 509721577 − 0, 510930319
ERy4 = = = 2, 371375884 × 10−3 > 10−3
y4 0, 509721577
92
Assim, a solução do sistema utilizando o método iterativo linear para sistemas não linea-
res, com erro relativo inferior a 10−2 , é (x, y) = (0, 522193833; 0, 509721577).
x2 + xy 2 = 2
xy − 3xy 3 = −4
possui uma raiz próxima a (0.8, 1.2). Usando o método iterativo linear determine essa
raiz com precisão de 10−1 .
x2 + xy 2 = 2 (4.-33)
xy − 3xy 3 = −4
x2 + xy 2 − 4x = 2 − 4x (4.-33)
xy − 3xy 3 + 8y = −4 + 8y
93
o processo iterativo
xk+1 = F (xk , yk ),
yk+1 = G(xk , yk ),
Para k = 0, temos:
Assim, a solução do sistema utilizando o método iterativo linear para sistemas não linea-
res, com erro relativo inferior a 10−1 , é (x, y) = (0, 852; 1, 3016).
Questão 17 Usando o método de Newton determine, com precisão de 10−3 , uma raiz
para cada um dos seguintes sistemas não lineares:
(a)
3x2 y − y 3 = 4
x2 + xy 3 = 9 com (x0 , y0 ) = (2; 2.5),
(b)
x2 + y 2 − 1 = 0
1
x2 + y 2 + = 0 com (x0 , y0) = (1; 3),
2
(c)
(x − 1)2 + y 2 = 4
x2 + (y − 1)2 = 4 com (x0 , y0 ) = (2; 1).
Solução:
3x2 y − y 3 = 4
x2 + xy 3 = 9 com (x0 , y0 ) = (2; 2.5).
94
Fazendo-se
3x2 y − y 3 − 4 = f (x, y)
x2 + xy 3 − 9 = g(x, y),
temos:
A seguir é apresentada a sequência gerada a partir da condição inicial (x0 , y0 ) = (2; 2, 5),
utilizando o processo iterativo de Newton para sistemas não lineares, com erro inferior a
10−3 .
f · gy − g · fy
xk+1 = xk − ,
J(f, g)
(xk ,yk )
g · fx − f · gx
yk+1 = yk − ,
J(f, g)
(xk ,yk )
Para k = 0, temos:
f (x0 , y0) = 3x20 y0 − y03 − 4 = 10, 375
g(x0 , y0 ) = x20 + x0 y03 − 9 = 26, 25
fx (x0 , y0 ) = 6x0 y0 = 30
fy (x0 , y0 ) = 3(x20 − y02) = −6, 75
gx (x0 , y0) = 2x0 + y03 = 19, 625
gy (x0 , y0 ) = 3x0 y02 = 37, 5
J(f, g) = (fx gy − fy gx )|(x0 ,y0 ) = 1257, 46875
f gy − gfy 10, 375 · 37, 5 − 26, 25 · (−6, 75)
x1 = x0 − =2− = 1, 549690599
J(f, g) (x0 ,y0 ) 1257, 46875
gfx − f gx 26, 25 · 30 − 10, 375 · 19, 625
y1 = y0 − = 2, 5 − = 2, 03566192
J(f, g) (x0 ,y0 ) 1257, 46875
x1 − x0 1, 549690599 − 2
ERx1 = = = 0, 290580197 > 10−3
x1 1, 549690599
y1 − y0 2, 03566192 − 2, 5
ERy1 = = = 0, 228101766 > 10−3
y1 2, 03566192
Para k = 1, temos:
f (x1 , y1) = 3x21 y1 − y13 − 4 = 2, 230557371
g(x1 , y1 ) = x21 + x1 y13 − 9 = 6, 474140459
fx (x1 , y1 ) = 6x1 y1 = 18, 92787684
fy (x1 , y1 ) = 3(x21 − y12) = −5, 2271355
gx (x1 , y1) = 2x1 + y13 = 11, 53500023
95
gy (x1 , y1 ) = 3x1 y12 = 19, 26537906
J(f, g) = (fx gy − fy gx )|(x1 ,y1 ) = 424, 9477313
f gy − gfy
x2 = x1 −
J(f, g) (x1 ,y1 )
2, 230557371 · 19, 26537906 − 6, 474140459 · (−5, 2271355)
= 1, 549690599 −
424, 9477313
= 1, 36893015
gfx − f gx
y2 = y1 −
J(f, g) (x1 ,y1 )
6, 474140459 · 18, 92787684 − 2, 230557371 · 11, 53500023
= 2, 03566192 −
424, 9477313
= 1, 807840364
x2 − x1 1, 36893015 − 1, 549690599
ERx2 = = = 0, 132045049 > 10−3
x2 1, 36893015
y2 − y1 1, 807840364 − 2, 03566192
ERy2 = = = 0, 126018624 > 10−3
y2 1, 807840364
Para k = 2, temos:
f (x2 , y2) = 3x22 y2 − y23 − 4 = 0, 25497373
g(x2 , y2 ) = x22 + x2 y23 − 9 = 0, 962349351
fx (x2 , y2 ) = 6x2 y2 = 14, 84884308
fy (x2 , y2 ) = 3(x22 − y22) = −4, 182951078
gx (x2 , y2) = 2x2 + y23 = 8, 646401065
gy (x2 , y2 ) = 3x2 y22 = 13, 42216894
J(f, g) = (fx gy − fy gx )|(x2 ,y2 ) = 235, 471153
f gy − gfy
x3 = x2 −
J(f, g) (x2 ,y2 )
0, 25497373 · 13, 42216894 − 0, 962349351 · (−4, 182951078)
= 1, 36893015 −
235, 471153
= 1, 337300965
gfx − f gx
y3 = y2 −
J(f, g) (x2 ,y2 )
0, 962349351 · 14, 84884308 − 0, 25497373 · 8, 646401065
= 1, 807840364 −
235, 471153
= 1, 75651701
x3 − x2 1, 337300965 − 1, 36893015
ERx3 = = = 0, 023651508 > 10−3
x3 1, 337300965
y3 − y2 1, 75651701 − 1, 807840364
ERy3 = = = 0, 029218819 > 10−3
y3 1, 75651701
96
Capı́tulo 5
Interpolação Polinomial
Neste capı́tulo serão apresentadas técnicas para determinar aproximações de funções por
polinômios. A necessidade de se efetuar esta aproximação surge em várias situações,
dentre elas podemos citar:
• quando a função em estudo tem uma expressão tal que operações como diferenciação
e a integração são difı́ceis de serem realizadas.
Demonstração: Seja
Pn (x) = a0 + a1 x + a2 x2 + ... + an xn ,
97
um polinômio de grau no máximo n, com n + 1 coeficientes a0 , a1 , a2 , ..., an a serem
determinados.
Considerando (5.1), temos:
2 n
a0 + a1 x0 + a2 x0 + ... + an x0 = f0
a0 + a1 x1 + a2 x2 + ... + an xn = f1 ,
1 1
. (5.2)
.
.
a + a x + a x2 + ... + a xn = f
0 1 n 2 n n n n
o qual pode ser interpretado como um sistema linear nas variáveis a0 , a1 , a2 , ..., an .
Para mostrar que o polinômio Pn (x) é único, devemos mostrar que o sistema linear (5.2)
admite uma única solução. Assim, consideremos o determinante da matriz dos coeficien-
tes, dado por:
1 x · · · xn
0 0
1 x1 · · · xn1
V = V (x0 , x1 , x2 , ..., xn ) = . . .. , (5.3)
.
. .
. .
1 xn · · · xnn
Note que V (x) é um polinômio de grau menor ou igual a n e, além disso, V (x) se anula
em x0 , x1 , ..., xn−1 . Assim, podemos escrever:
98
onde A depende de x0 , x1 , x2 , ..., xn−1 .
V (x) = V (x0 , x1 , ..., xn−1 , x) = V (x0 , x1 , ..., xn−1 )(x − x0 ) · ... · (x − xn−1 ). (5.6)
V (xn ) = V (x0 , x1 , ..., xn−1 )(xn − x0 )(xn − x1 ) · ... · (xn − xn−1 ). (5.7)
Por hipótese, os pontos x0 , x1 , ..., xn são distintos. Assim, V 6= 0 e o sistema (5.2) admite
uma única solução.
Portanto, dados n+1 pontos distintos x0 , x1 , ..., xn e n+1 valores f (x0 ) = f0 , f (x1 ) = f1 ,
..., f (xn ) = fn de uma função y = f (x), existe um único polinômio Pn (x) de grau no
máximo n tal que a relação (5.1) é válida.
onde Lk (x) são polinômios de grau n. Para cada i, a condição pn (xi ) = fi deve ser
satisfeita, ou seja,
99
Para que a condição acima seja satisfeita, basta impor
0, se k 6= i
ℓk (xi ) =
1, se k = i
onde
Qn
i=0,j6=k (x − xi )
ℓk (x) = Qn (5.15)
i=0,j6=k (xk − xi )
Note que, considerando a fórmula de Lagrange dada pela equação (5.14) e a fórmula dos
ℓk (x), dada por (5.11) e fazendo
Πn+1 (x) = (x − x0 )(x − x1 ) · ... · (x − xn ), (5.16)
podemos escrever a expressão para ℓk (x), como:
Πn+1 (x)
ℓk (x) = , (5.17)
(x − xk )Π′n+1 (xk )
d
onde Π′n+1 (xk ) = dx
(Πn+1 (x))x=x .
k
100
Logo, dividindo Πn+1 (x) por (x − xk )Π′n+1 (xk ), obtemos:
x −1 0 2
f (x) 4 1 −1
onde
(x − x1 )(x − x2 ) (x − 0)(x − 2) x2 − 2x
ℓ0 (x) = = = ,
(x0 − x1 )(x0 − x2 ) (−1 − 0)(−1 − 2) 3
(x − x0 )(x − x2 ) (x − (−1))(x − 2) x2 − x − 2
ℓ1 (x) = = = ,
(x1 − x0 )(x1 − x2 ) (0 − (−1))(0 − 2) −2
(x − x0 )(x − x1 ) (x − (−1))(x − 0) x2 + x
ℓ2 (x) = = = .
(x2 − x0 )(x2 − x1 ) (2 − (−1))(2 − 0) 6
Assim,
x2 − 2x x2 − x − 2 x2 + x
p2 (x) = 4 · +1· + (−1) ·
3 −2 6
2 7
= x2 − x + 1
3 3
x − x0 x0 − x1 x0 − x2 · · · x0 − xn
x1 − x0 x − x1 x1 − x2 · · · x1 − xn
x2 − x0 x2 − x1 x − x2 · · · x2 − xn
.. .. .. ..
. . . .
xn − x0 xn − x1 xn − x2 ··· x − xn
Denotando o produto dos elementos da primeira linha por D0 , o da segunda linha por D1
e assim por diante, observe que D0 é exatamente o denominador de ℓ0 (x) em (5.17), D1
101
o denominador de ℓ1 (x), etc. Além disso, o produto dos elementos da diagonal principal
será Πn+1 (x) e, então, segue que:
Πn+1 (x)
ℓk (x) = , k = 0, 1, ..., n.
Dk
Assim, a fórmula de Lagrange se reduz a:
n n
X Πn+1 (x) X fk
Pn (x) = fk = Πn+1 (x) .
k=0
Dk k=0
D k
Pn fk
Fazendo-se s = k=0 Dk , a equação acima pode ser reescrita como:
fk
k Πi=0,i6=k (xk − xi ) Dk = (x − xk )Πi=0,i6=k (xk − xi ) fk Dk
f0
0 (x0 − x1 )(x0 − x2 )(x0 − x3 )...(x0 − xn ) D0 = (x − x0 )Πi=0,i6=k (x0 − xi ) f0 D0
f1
1 (x1 − x0 )(x1 − x2 )(x1 − x3 )...(x1 − xn ) D1 = (x − x1 )Πi=0,i6=k (x1 − xi ) f1 D1
f2
2 (x2 − x0 )(x2 − x1 )(x2 − x3 )...(x2 − xn ) D2 = (x − x2 )Πi=0,i6=k (x2 − xi ) f2 D2
.. .. .. .. ..
. . . . .
fn
n (xn − x0 )(xn − x1 )(xn − x3 )...(xn − xn−1 ) Dn = (x − xn )Πi=0,i6=k (xn − xi ) fn Dn
Note que, a soma dos elementos da última coluna da tabela fornece o valor de s.
x − x0 = uh
x − x1 = x − (x0 + h) = x − x0 − h = uh − h = (u − 1)h,
x − x2 = x − (x0 + 2h) = x − x0 − 2h = uh − 2h = (u − 2)h,
..
.
x − xk−1= x − (x0 + (k − 1)h) = x − x0 − (k − 1)h = uh − (k − 1)h = (u − (k − 1))h,
x − xk+1= x − (x0 + (k + 1)h) = x − x0 − (k + 1)h = uh − (k + 1)h = (u − (k + 1))h,
..
.
x − xn = x − (x0 + nh) = x − x0 − nh = uh − nh = (u − n)h
102
e
xk − x0 = (k − 0)h = kh,
xk − x1 = (k − 1)h,
xk − x2 = (k − 2)h,
..
.
xk − xk−1= (k − (k − 1))h,
xk − xk+1= (k − (k + 1))h,
..
.
xk − xn = (k − n)h,
x −1 0 1
f (x) −4 −1 2
Solução: Como temos a disposição três pontos tabelados, então o polinômio será:
2
X
p2 (x0 + uh) = fk λk (u) = f0 λ0 (u) + f1 λ1 (u) + f2 λ2 (u),
k=0
onde
(u − 1)(u − 2) u2 − 3u + 2
λ0 (u) = = ,
(0 − 1)(0 − 2) 2
u(u − 2) u2 − 2u
λ1 (u) = = ,
1(1 − 2) −1
u(u − 1) u2 − u
λ2 (u) = = .
2(2 − 1) 2
Assim,
u2 − 3u + 2 u2 − 2u u2 − u
p2 (x0 + uh) = −4 −1 +2
2 −1 2
103
= −2u2 + 6u − 4 + u2 − 2u + u2 − u
= 3u − 4
Note que, embora tenhamos três pontos tabelados, o polinômio determinado é de primeiro
grau. Isto ocorre, porque os pontos tabelados estão sobre a reta de equação y = 3x − 1.
Para determinar f (0, 5), devemos inicialmente calcular o valor de u para x = 0, 5. Assim,
temos:
x − x0 0, 5 − (−1)
u= = = 1, 5.
h 1
Portanto,
f (0, 5) ≈ p2 (1, 5) = 3 · (1, 5) − 4 = 0, 5.
f (x1 ) − f (x0 )
∴ a1 = .
x1 − x0
Vamos, agora, introduzir a notação de diferenças divididas. A diferença dividida de ordem
zero da função f com relação a xi , indicada como f [xi ], é simplesmente o valor de f em
xi :
f [xi ] = f (xi ).
As diferenças divididas restantes são definidas indutivamente. A diferença dividida de
primeira ordem de f com relação a xi e xi+1 é indicada como f [xi , xi+1 ] e é definida como
f [xi+1 ] − f [xi ]
f [xi , xi+1 ] = .
xi+1 − xi
104
Do mesmo modo, a diferença dividida de ordem k é dada por:
f [xi+1 , xi+2 , ..., xi+k ] − f [xi , xi+1 , ..., xi+(k−1) ]
f [xi , xi+1 , xi+2 , ..., xi+k ] = .
xi+k − xi
Com esta notação, temos a0 = f [x0 ] e a1 = f [x0 , x1 ]. Logo, a equação (5.18) pode ser
reescrita como:
Pn (x) = f [x0 ] + f [x0 , x1 ](x − x0 ) + a2 (x − x0 )(x − x1 ) + ... + an(x − x0 )(x − x1 )...(x − xn−1 ).
f [x0 , x2 ] − f [x0 , x1 ]
∴ a2 =
x2 − x1
∴ a2 = f [x0 , x1 , x2 ].
Indutivamente, temos que as constantes restantes são dadas por:
ak = f [x0 , x1 , ..., xk ],
para k = 0, 1, ..., n. Assim, a expressão para Pn (x) pode ser reescrita como:
n
X
Pn (x) = f [x0 ] + f [x0 , x1 , ..., xk ](x − x0 )(x − x1 )...(x − xk−1 ).
k=1
105
0 xi f [xi ] = f (xi ) f [xi−1 , xi ] f [xi−2 , xi−1 , xi ] f [xi−3 , ..., xi ] f [xi−4 , ..., xi ]
1 1, 0 0, 7651977
−0, 4837057
2 1, 3 0, 6200860 −0, 1087339
−0, 5489460 0, 0658784
3 1, 6 0, 4554022 −0, 0494433 0, 0018251
−0, 5786120 0, 0680685
4 1, 9 0, 2818186 0, 0118183
−0, 5715210
5 2, 2 0, 1103623
Assim, temos:
Sejam x0 < x1 < x2 < ... < xn , (n+ 1) pontos igualmente espaçados, ou seja, xi = x0 + ih,
para i = 0, 1, ..., n. Chamamos operador de diferenças ordinárias:
∆f (x) = f (x + h) − f (x)
∆2 f (x) = ∆f (x + h) − ∆f (x)
..
.
∆n f (x) = ∆n−1 f (x + h) − ∆n−1 f (x)
e, naturalmente ∆0 f (x) = f (x).
A seguir é apresentado um teorema que relaciona o operador diferença ordinária com a
diferença diferença dividida.
∆n f (x0 )
f [x0 , x1 , ..., xn ] = .
hn n!
106
Demostração: A prova deste teorema será feita utilizando-se indução sobre n.
Para n = 1, temos:
Portanto, partindo da forma de Newton para Pn (x) e usando o teorema anterior, temos
que:
∆f (x0 ) ∆2 f (x0 )
Pn (x) = f (x0 ) + (x − x0 ) + (x − x0 )(x − x1 ) + ... +
h 2h2
∆n f (x0 )
+(x − x0 )(x − x1 )...(x − xn−1 )
hn n!
que é a forma de Newton-Gregory para o polinômio interpolador.
x f (x)
1, 0 0, 7651977
1, 3 0, 6200860
1, 6 0, 4554022
1, 9 0, 2818186
2, 2 0, 1103623
107
0 xi ∆0 f = f (xi ) ∆1 f ∆2 f ∆3 f ∆4 f
1 1, 0 0, 7651977
−0, 1451117
2 1, 3 0, 6200860 −0, 0195721
−0, 1646838 0, 0106723
3 1, 6 0, 4554022 −0, 0088998 0, 000354799
−0, 1735836 0, 0110271
4 1, 9 0, 2818186 0, 0021273
−0, 1714563
5 2, 2 0, 1103623
Assim, temos:
(0, 0106723)
+(x − 1, 0)(x − 1, 3)(x − 1, 6) +
3!(0, 3)3
(0, 000354799)
+(x − 1, 0)(x − 1, 3)(x − 1, 6)(x − 1, 9)
4!(0, 3)4
O valor aproximado de f (1, 5) é:
Note que o estudo do erro é importante para sabermos se o polinômio interpolador é uma
boa aproximação para f .
Teorema 10 Sejam x0 < x1 < ... < xn , n + 1 pontos e f contı́nua em [x0 , xn ] com
derivadas até ordem (n + 1) para todo x pertencente ao intervalo (x0 , xn ). Se Pn (x)
é o polinômio interpolador de f nos pontos x0 , x1 , ..., xn , então em qualquer ponto x
pertencente ao intervalo [x0 , xn ], o erro é dado por
f (n+1) (ξx )
En (x) = f (x) − Pn (x) = (x − x0 )(x − x1 )...(x − xn ) ,
(n + 1)!
onde ξx ∈ (x0 , xn ).
108
correta para x = xi , com i = 0, 1, ..., n.
Para cada x ∈ (x0 , xn ), com x 6= xi , defina uma função auxiliar H(t) por
Note que, H(t) possui derivadas até ordem n + 1, pois, por hipótese G(t) é um polinômio
de grau n + 1 e portanto admite derivadas até ordem n + 1. Também por hipótese f (t)
possui derivada até ordem n + 1 e Pn (t) possui derivadas até ordem n + 1. Assim,
Verificaremos agora que H(t) possui pelo menos (n + 2) zeros no intervalo [x0 , xn ].
Para t = xi , i = 0, 1, ..., n temos que En (t) = 0 e G(t) = 0, donde H(xi ) = En (x)G(xi ) −
En (xi )G(x) = 0, i = 0, 1, ..., n e, para t = x, H(x) = En (x)G(x) − En (x)G(x) = 0.
Assim, x0 , x1 , ..., xn , x são zeros de H(t).
Portanto, podemos aplicar sucessivamente o Teorema de Rolle a H(t), H ′ (t), ..., H (n) (t).
Assim,
Mas,
Além disso,
Assim,
H (n+1) (t) = En (x)(n + 1)! − f (n+1) (t)G(x).
Considerando ξx ∈ (x0 , xn ) um zero de H(n + 1)(t), temos:
f (n+1) (ξx )
∴ En (x) = G(x)
(n + 1)!
f (n+1) (ξx )
∴ En (x) = (x − x0 )(x − x1 )...(x − xn )
(n + 1)!
109
Limitante para o Erro
Observe que na prática a fórmula para o erro
f (n+1) (ξx )
En (x) = (x − x0 )(x − x1 )...(x − xn ) , ξx ∈ (x0 , xn )
(n + 1)!
tem uso limitado, pois são raras as situações em que conhecemos f (n+1) (x), e o ponto ξx
nunca é conhecido.
A importância da fórmula exata para En (x) é teórica, uma vez que é usada na obtenção das
estimativas de erro para as fórmulas de interpolação, diferenciação e integração numérica.
A seguir será apresentado um corolários do Teorema 3, que relaciona o erro com um limi-
tante de f (n + 1)(x).
|En (x)| ∼
= |(x − x0 )(x − x1 )...(x − xn )| (max |diferenças divididas de ordem n + 1|) .
110
5.6 Exercı́cios
1. Utilize o polinômio interpolador de Lagrange de grau 1, 2 e 3 para aproximar f (xi )
e g(xi ), sendo:
2. Os dados dos itens (a), (b) e (c) do exercı́cio 1 foram gerados, respectivamente, pelas
funções f (x) = x ln x, g(x) = x3 + 4,001x2 + 4,002x + 1,101 e h(x) = sin (ex − 2).
Utilize a fórmula do erro para determinar um limitante para o erro e compare o
limite com o erro verdadeiro para n = 1 e n = 2.
(a) xi = 0,05
x 0,0 0,2 0,4 0,6 0,8
f (x) 1,00000 1,22140 1,49182 1,82212 2,22554
(b) xi = 0,21
x 0,1 0,2 0,3 0,4
f (x) −0,62049958 −0,28398668 0,00660095 0,24842440
f (n+1) (ξx )
4. Mostre que f [x0 , x1 , ..., xn , x] = para qualquer ξx ∈ (x0 , x).
(n + 1)!
5. Conhecendo-se o diâmetro e a resistividade de um fio cilı́ndrico, verificou-se a re-
sistência do fio de acordo com o comprimento. Os dados obtidos estão indicados a
seguir.
Comp. (m) 500 1000 1500 2000 2500 3000 3500 4000
Resist. (Ohms) 2,74 5,48 7,90 11,00 13,93 16,43 20,24 23,52
111
Determine a iluminação quando a superfı́cie estiver situada a 1, 60 m da lâmpada e
2, 38 m da lâmpada.
x
y 75 100 125 150
42, 5 89 90 91 93
65, 0 72 78 82 87
81, 5 54 68 72 79
100, 0 35 55 64 70
120, 5 13 45 51 61
(a) linear;
(b) quadrática;
(c) cúbica
112
Anexo 3.1 - Fórmula de Newton
Program Newton
!-------------------------------------------------------------------------------------------------------------
! Este programa determina o valor aproximado de f em um ponto x, utilizando o polin^omio interpolador
! de Newton, sobre os valores f nos pontos x0, x1, ..., xn, onde x0<=x<=xn.
!-------------------------------------------------------------------------------------------------------------
Implicit None
! Declaraç~
ao das variáveis
Integer:: i, j, n
Double Precision:: ponto, fponto, faux, soma
Double Precision, Allocatable, Dimension(:):: x, f, prod
Double Precision, Allocatable, Dimension(:,:):: DifDiv
!-------------------------------------------------------------------------------------------------------------
! Cálculo das diferenças divididas
!-------------------------------------------------------------------------------------------------------------
DifDiv(:,:)=0.0d0
DifDiv(:,1)=f(:)
Do j=2,n
Do i=j,n
DifDiv(i,j)=(DifDiv(i,j-1)-DifDiv(i-1,j-1))/(x(i)-x((i+1)-j))
End Do
End Do
!-------------------------------------------------------------------------------------------------------------
! Cálculo dos produtos (x-x0), (x-x0)*(x-x1), (x-x0)*(x-x1)*(x-x2), ...
!-------------------------------------------------------------------------------------------------------------
Prod(1)=1.0d0
Do i=2,n
Prod(i)=(ponto-x(i-1))*Prod(1)
Prod(1)=Prod(i)
End Do
!-------------------------------------------------------------------------------------------------------------
! Fórmula de Newton do polin^
omio interpolador: p(x)=DifDiv(1,1)+(x-x0)*Dif(2,2)+(x-x0)*(x-x1)*Dif(3,3)+...
!-------------------------------------------------------------------------------------------------------------
Soma=0.0d0
Do i=2,n
faux=soma+DifDiv(i,i)*Prod(i)
Soma=faux
End Do
fponto=DifDiv(1,1)+faux
Write(*,*) ’p(’, ponto, ’)=’, fponto
!-------------------------------------------------------------------------------------------------------------
End Program
113
Anexo 3.2 - Fórmula de Newton-Gregory
Program NewtonGregory
!-------------------------------------------------------------------------------------------------------------
! Este programa determina o valor aproximado de f em um ponto x, utilizando o polin^omio interpolador
! de Newton, sobre os valores f nos pontos igualmente espaçados x0, x1, ..., xn, onde x0<=x<=xn.
!-------------------------------------------------------------------------------------------------------------
Implicit None
! Declaraç~
ao das variáveis
Integer:: i, j, k, n, Fat, Fataux Double Precision:: ponto, fponto, h, faux, soma
Double Precision, Allocatable, Dimension(:):: x, f, prod
Double Precision, Allocatable, Dimension(:,:):: Dif
h=(x(n)-x(1))/(n-1)
!--------------------------------------------------------------------------------------------------------
! Cálculo das diferenças ordinárias
!--------------------------------------------------------------------------------------------------------
Dif(:,:)=0.0d0
Dif(:,1)=f(:)
Do j=2,n
Do i=1,(n-(j-1))
Dif(i,j)=Dif(i+1,j-1)-Dif(i,j-1)
End Do
End Do
!--------------------------------------------------------------------------------------------------------
! Cálculo dos produtos (x-x0), (x-x0)*(x-x1), (x-x0)*(x-x1)*(x-x2), ...
!--------------------------------------------------------------------------------------------------------
Prod(1)=1.0d0
Do j=2,n
Prod(j)=(ponto-x(j-1))*Prod(1)
Prod(1)=Prod(j)
End Do
!--------------------------------------------------------------------------------------------------------
! Fórmula de Newton-Gregory do polin^ omio interpolador: p(x)=Dif(1,1)+(x-x0)*(Dif(1,2)/h*1!)+...
!--------------------------------------------------------------------------------------------------------
Soma=0.0d0
Do i=2,n
Fataux=1 !Cálculo do fatorial
Do k=1,i-1
Fat=Fataux*k
Fataux=Fat
End Do
faux=Soma+(Prod(i)*Dif(1,i)*(1.0d0/Fat)*(1.0d0/(h**(i-1))))
Soma=faux
End Do
fponto=Dif(1,1)+faux
!--------------------------------------------------------------------------------------------------------
End Program
114
Anexo 3.3 - Fórmula de Lagrange
Program Lagrange
!-------------------------------------------------------------------------------------------------------------
! Este programa determina o valor aproximado de f em um ponto x, utilizando o polin^omio interpolador
! de Lagrange linear, de segundo e terceiro graus, sobre os valores tabelados de f nos pontos
! x0, x1, ..., xn, sendo x0<=x<=xn.
!-------------------------------------------------------------------------------------------------------------
Implicit None
Allocate(x(n), f(n))
!-------------------------------------------------------------------------------------------------------------
! Determinando a posiç~
ao do ponto a ser interpolado na tabela.
!-------------------------------------------------------------------------------------------------------------
Do i=1,n
If (x(i)>=ponto) Then
irefaux=i
exit
End If
End Do
!-------------------------------------------------------------------------------------------------------------
! Escolhendo o grau do polin^omio de Lagrange a ser adotado
!-------------------------------------------------------------------------------------------------------------
Write(*,*) ’Escolha o grau do polin^
omio de Lagrange a ser adotado’
Write(*,*) ’1 - polin^
omio Linear;’
Write(*,*) ’2 - polin^
omio de segundo grau;’
Write(*,*) ’3 - polin^
omio de terceiro grau’
Read(*,*) grau
!-------------------------------------------------------------------------------------------------------------
If (grau==1) Then
iref=irefaux
fponto=Lagrange2Pontos(f(iref-1),f(iref),x(iref-1),x(iref),ponto)
Write(*,*) fponto
End If
If (grau==2) Then
iref=irefaux
If (irefaux==n) Then !Ajuste do ı́ndice de refer^
encia
iref=irefaux-1
End If
fponto=Lagrange3Pontos(f(iref-1),f(iref),f(iref+1),x(iref-1),x(iref),x(iref+1),ponto)
Write(*,*) fponto
End If
If (grau==3) Then
iref=irefaux
If (irefaux==2) Then !Ajuste do ı́ndice de refer^
encia
iref=irefaux+1
End If
115
If (irefaux==n) Then !Ajuste do ı́ndice de refer^
encia
iref=irefaux-1
End If
fponto=Lagrange4Pontos(f(iref-2),f(iref-1),f(iref),f(iref+1),x(iref-2),x(iref-1),x(iref),x(iref+1),ponto)
Write(*,*) fponto
End If
Contains
!-------------------------------------------------------------------------------------------------------------
Double Precision Function Lagrange2Pontos(f0, f1, x0, x1, x)
! Esta funç~
ao aproxima uma funç~
ao real f por um polin^
omio interpolador de primeiro grau que passe pelos
! pontos x0 e x1 distintos, para o qual f(x0)=f0 e f(x1)=f1. Obtendo um valor aproximado para f(x), onde
! x0<=x<=x1.
L0=(x-x1)/(x0-x1)
L1=(x-x0)/(x1-x0)
Lagrange2Pontos=(L0*f0)+(L1*f1)
!-------------------------------------------------------------------------------------------------------------
! Esta funç~
ao aproxima uma funç~
ao real f por um polin^
omio interpolador de segundo grau que passe
! pelos pontos x0, x1 e x2 distintos, para o qual f(x0)=f0, f(x1)=f1 e f(x2)=f2. Obtendo
! um valor aproximado para f(x), onde x0<x1<x2 e x0<=x<=x2.
Double Precision:: L0, L1, L2, f0, f1, f2, x, x0, x1, x2
L0=((x-x1)*(x-x2))/((x0-x1)*(x0-x2))
L1=((x-x0)*(x-x2))/((x1-x0)*(x1-x2))
L2=((x-x0)*(x-x1))/((x2-x0)*(x2-x1))
Lagrange3Pontos=(L0*f0)+(L1*f1)+(L2*f2)
!-------------------------------------------------------------------------------------------------------------
Double Precision Function Lagrange4Pontos(f0, f1, f2, f3, x0, x1, x2, x3, x)
! Esta funç~
ao aproxima uma funç~
ao real f por um polin^
omio interpolador de terceiro grau que passe
! pelos pontos x0, x1, x2 e x3 distintos, para o qual f(x0)=f0, f(x1)=f1, f(x2)=f2 e f(x3)=f3. Obtendo
! um valor aproximado para f(x), onde x0<x1<x2<x3 e x0<=x<=x3.
Double Precision:: L0, L1, L2, L3, f0, f1, f2, f3, x, x0, x1, x2, x3
L0=((x-x1)*(x-x2)*(x-x3))/((x0-x1)*(x0-x2)*(x0-x3))
L1=((x-x0)*(x-x2)*(x-x3))/((x1-x0)*(x1-x2)*(x1-x3))
L2=((x-x0)*(x-x1)*(x-x3))/((x2-x0)*(x2-x1)*(x2-x3))
L3=((x-x0)*(x-x1)*(x-x2))/((x3-x0)*(x3-x1)*(x3-x2))
Lagrange4Pontos=(L0*f0)+(L1*f1)+(L2*f2)+(L3*f3)
!-------------------------------------------------------------------------------------------------------------
End Program
116
Anexo - Respostas dos exercı́cios propostos
n Pn (8,4) n Pn (− 31 ) n Pn (0, 9)
1 17, 87833 1 0, 21504167 1 0, 44086280
1. (a) (b) (c)
2 17, 87716 2 0, 16988889 2 0, 43841352
3 17, 87714 3 0, 17451852 3 0, 44198500
n Verd. Limite
(c) 1 2, 7296 × 10 −3
1, 4080 × 10−2
2 5, 1789 × 10−3 9, 2215 × 10−3
117
Capı́tulo 6
Integração Numérica
Do Cálculo, sabemos que se f é uma função contı́nua no intervalo [a, b], então
Z b
f (x)dx = F (b) − F (a),
a
Note que, a integral acima não pode ser calculada por meio de funções elementares e,
dessa forma, uma técnica de aproximação deve ser utilizada.
Neste capı́tulo estudaremos formas de se obter aproximações para a integral de f = f (x)
em um intervalo [a, b], através de métodos numéricos.
118
6.1.1 Regra dos Trapézios
Considerando um polinômio interpolador de grau 1 para a função f = f (x), podemos
escrever: Z b Z xn
(x − x1 ) (x − x0 )
f (x)dx ≈ f0 + f1 dx.
a x0 (x0 − x1 ) (x1 − x0 )
x−x0
Fazendo-se a mudança de variáveis h
= u, temos:
x − x1 = x − (x0 + h) = uh − h = (u − 1)h
x = x0 ⇒ u=0
x = x1 ⇒ u=1
Logo, Z Z
b 1
(u − 1) · h (u · h)
f (x)dx ≈ f0 + f1 hdu
a 0 (−h) (h)
Z 1 Z 1
= h f0 (u − 1)du + f1 udu
0 0
" 1
2 1 #
u2 u
= h f0 u − + f1
2 0 2 0
1 1
= h f0 · + f1 ·
2 2
h
= [f0 + f1 ]
2
h
Note que, [f0 + f1 ] representa a área do trapézio de altura h = x1 − x0 e bases f (x0 ) e
2
f (x1 ), veja a Figura ...
f ′′ (ξx )
f (x) = p1 (x) + (x − x0 )(x − x1 ) , com ξx ∈ (x0 , x1 ).
2!
Integrando f no intervalo [x0 , x1 ], tem-se:
Z x1 Z x1 Z x1
f ′′ (ξx )
f (x)dx = p1 (x)dx + (x − x0 )(x − x1 ) dx
x0 x0 x0 2!
h3 ′′
E=− f (c), onde c ∈ (x0 , x1 ).
12
119
Note que, para intervalos grandes de integração, a regra dos trapézios nos fornece resulta-
dos distantes do valor exato na integral. Para melhorar este resultado, podemos subdividir
o intervalo de integração e aplicar a regra dos trapézios sobre estes subintervalos.
Considerando uma subdivisão do intervalo [a, b], em pontos xi , tais que, xi+1 − xi = h,
com i = 0, 1, ..., n − 1, temos:
Z b Z x1 Z x2 Z xn
f (x)dx = f (x)dx + f (x)dx + ... + f (x)dx
a x0 x1 xn−1
n−1 Z
X xi+1
= f (x)dx
i=0 xi
n−1
X h
≈ [f (xi ) + f (xi+1 )]
i=0
2
h
≈ [f (x0 ) + 2f (x1 ) + 2f (x2 ) + ... + 2f (xn−1 ) + f (xn )]
2
nh3 ′′
E=− f (ξ).
12
b−a
Como n = , temos:
h
(b − a)h2
|E| ≤ M,
12
sendo M = maxx∈[a,b] |f ′′ (x)|.
Exemplo 12 (a) Usando a Regra dos Trapézios com h = 0, 2, calcule uma aproximação
para: Z 1,2
e−x sin xdx.
0
(b) Determine o número mı́nimo de subdivisões de modo que o erro seja inferior a 10−3 .
b−a 1, 2 − 0
Solução: (a) Considerando h = 0, 2, teremos n = = = 6 subintervalos. A
h 0, 2
tabela a seguir apresenta as imagens da função f nos pontos x0 , x1 , ..., x6 .
i xi f (xi )
0 0,0 0, 000000000
1 0,2 0, 162656690
2 0,4 0, 261034921
3 0,6 0, 309882359
4 0,8 0, 322328869
5 1,0 0, 309559875
6 1,2 0, 280724778
120
Assim, aplicando a regra dos Trapézios repetida, temos:
Z 1,2
0, 2
e−x sin xdx ≈ [0, 0 + 2 · 0, 162656690 + 2 · 0, 261034921+
0 2
+2 · 0, 309882359 + 2 · 0, 322328869+
+2 · 0, 309559875 + 0, 280724778]
≈ 0, 30116502
É possı́vel calcular o limitante para o erro cometido na aplicação da regra dos trapézios,
a partir da fórmula
(b − a)h2
|E| ≤ M,
12
sendo M = maxx∈[a,b] |f ′′ (x)|.
Como a função f ′′ (x) = −2e−x cos x é uma função crescente e assume valores negativos
no intervalo [0, 1,2], temos que M = maxx∈[a,b] |f ′′(x)| = |f ′′(0)| = 2. Assim,
(1, 2 − 0)0, 22
|E| ≤ · 2 = 0,008.
12
Observe que o cálculo analı́tico da integral acima é dado por:
Z 1,2 1,2
−x 1 −x 1 −x
e sin xdx = − e cos x − e sin x ≈ 0, 3050675819.
0 2 2 0
Assim, o erro verdadeiramente cometido no cálculo pela regra dos trapézios é dado por:
(b)
(b − a)h2
|E| ≤ 0, 001 ⇒ M ≤ 0, 001
12
(1,2 − 0)h2
⇒ · 2 ≤ 0, 001
12
⇒ h ≤ 0, 070710678
Logo,
(b − a) 1,2 − 0
n≥ ⇒ n≥ = 16, 97056275
h 0, 070710678
Portanto, devemos tomar n ≥ 17, para obtermos uma aproximação com erro menor que
10−3 .
A Tabela 6.2 apresenta uma comparação dos valores da integral utilizando a regra dos
trapézios para diferentes valores de n. Os dados da tabela foram gerados com o programa
do Anexo ...
121
Tabela 6.1: Comparação dos valores da integral utilizando a regra dos trapézios para
diferentes valores de n.
n Calculado Erro
1 0,168434866782 0,136632715089
2 0,270146849170 3,492073270038E-02
3 0,289490471742 1,557711012837E-02
4 0,296294537221 8,773044649231E-03
5 0,299449627792 5,617954077939E-03
6 0,301165021091 3,902560779285E-03
7 0,302199862447 2,867719423863E-03
8 0,302871720288 2,195861582639E-03
9 0,303332437321 1,735144549081E-03
10 0,303662032107 1,405549763192E-03
11 0,303905919967 1,161661903427E-03
12 0,304091430908 9,761509628118E-04
13 0,304235810539 8,317713315025E-04
14 0,304350376647 7,172052235485E-04
15 0,304442806147 6,247757233879E-04
16 0,304518455186 5,491266846113E-04
17 0,304581152803 4,864290669288E-04
18 0,304633695095 4,338867750204E-04
19 0,304678162403 3,894194672867E-04
20 0,304716128427 3,514534438083E-04
21 0,304748801383 3,187804872336E-04
22 0,304777121326 2,904605439538E-04
23 0,304801828522 2,657533483372E-04
24 0,304823512316 2,440695548876E-04
25 0,304842646603 2,249352674741E-04
26 0,304859615944 2,079659268701E-04
27 0,304874735033 1,928468376814E-04
28 0,304888263397 1,793184731926E-04
29 0,304900416607 1,671652638503E-04
30 0,304911374914 1,562069565836E-04
31 0,304921289978 1,462918926731E-04
32 0,304930290138 1,372917323340E-04
33 0,304938484590 1,290972808174E-04
34 0,304945966710 1,216151608092E-04
35 0,304952816730 1,147651405491E-04
36 0,304959103896 1,084779740542E-04
37 0,304964888226 1,026936442666E-04
38 0,304970221945 9,735992545667E-05
39 0,304975150670 9,243120025676E-05
40 0,304979714389 8,786748105888E-05
41 0,304983948274 8,363359640112E-05
42 0,304987883359 7,969851130091E-05
43 0,304991547114 7,603475691442E-05
44 0,304994963921 7,261794987601E-05
45 0,304998155485 6,942638555713E-05
46 0,305001141178 6,644069253253E-05
47 0,305003938332 6,364353794946E-05
48 0,305006562495 6,101937540648E-05
49 0,305009027642 5,855422847434E-05
50 0,305011346366 5,623550421441E-05
122
x−x0
Fazendo-se a mudança de variáveis h
= u, temos:
x − x1 = x − (x0 + h) = uh − h = (u − 1)h
x − x2 = x − (x0 + 2h) = uh − 2h = (u − 2)h
x = x0 ⇒ u=0
x = x2 ⇒ u=2
Z b Z 2
(u − 1)h(u − 2)h (uh)(u − 2)h (uh)(u − 1)h
f (x)dx ≈ f0 + f1 + f2 hdu.
a 0 (−h)(−2h) (h)(−h) (2h)(h)
Z 2 Z 2 Z 2
h 2 2 2
≈ f0 (u − 3u + 2)du − 2f1 (u − 2u)du + f2 (u − u)du
2 0 0 0
" 2 3 3 #
3 2 2 2 2 2
h u 3u u 2u u u
≈ f0 − + 2u − 2f1 − + f2 −
2 3 2 0 3 2
0 3 2 0
h 2 8 2
≈ f0 + f1 + f2
2 3 3 3
h
≈ [f0 + 4f1 + f2 ]
3
Supondo que f (iv) é contı́nua em [x0 , xn ], temos que o erro cometido nesta aproximação é
dado por:
nh5 (iv)
E=− f (ξ), ξ ∈ (x0 , xn ).
180
Exemplo 13 Determine os valores de n e h necessários para aproximar
Z 2
e2x sin 3xdx,
0
−4
com precisão de 10 . Use regra de Simpson composta.
123
3
6.1.3 Regra 8 de Simpson generalizada
Sabe-se que a fórmula de Newton-Cotes conhecida como Regra 38 de Simpson é dada por:
Z x3
3
f (x)dx ∼
= h (f (x0 ) + 3f (x1 ) + 3f (x2 ) + f (x3 )) .
x0 8
124
Rb
Neste caso, obtém-se uma aproximação para a f (x)dx, integrando a função afim que
passa pelos pontos extremos de f no intervalo [a, b]. Entretanto, esta nem sempre é a me-
lhor linha para aproximar a integral. Observe que, a aproximação seria melhor se outros
pontos fossem escolhidos, conforme ilustra a Figura ??.
O método de Quadratura Gaussiana, que será apresentado nesta seção, consiste em esco-
lher os pontos x0 , x1 , ..., xn e os coeficientes c1 , c2 , ..., cn de modo que o erro esperado
no cálculo da aproximação seja minimizado.
Z b n
X
f (x)dx ≈ c0 f (x0 ) + c1 f (x1 ) + ... + cn f (xn ) = ci f (xi ).
a i=0
125
a qual é dada por √
3
c0 = c1 = 1, x0 = −x1 = − .
3
Portanto, a fórmula de aproximação é dada por:
Z 1 √ ! √ !
3 3
f (x)dx ≈ f − +f (6.1)
−1 3 3
Para um intervalo de integração genérico [a, b], efetuaremos uma mudança de variáveis,
de modo que o intervalo em questão seja transformado em [−1, 1]. Observe a Figura ??.
Note que, neste caso, a expressão para mudança de variáveis adequada é dada pela equação
da reta que passa pelos pontos (a, −1) e (b, 1), ou seja,
2x − a − b 1
u= ⇒ x= [(b − a)u + a + b] .
b−a 2
Logo, a quadratura gaussiana poderá ser aplicada a qualquer intervalo [a, b], já que
Z b Z 1
(b − a)u + a + b (b − a)
f (x)dx = f dt.
a −1 2 2
A tabela a seguir apresenta os valores das constantes c0 , c1 , ..., cn e dos pontos x0 , x1 , ..., xn
para diferentes valores de n.
Tabela 6.2: Comparação dos valores das constantes c0 , c1 , ..., cn e dos pontos x0 , x1 , ..., xn
para diferentes valores de n.
n xi ci
1 −0, 5773502692 1, 0000000000
0, 5773502692 1, 0000000000
2 −0, 7745966692 0, 5555555556
0, 0000000000 0, 8888888889
0, 7745966692 0, 5555555556
3 −0, 8611363116 0, 3478548451
−0, 3399810436 0, 6521451549
0, 3399810436 0, 6521451549
0, 8611363116 0, 3478548451
4 −0, 9061798459 0, 2369268850
−0, 5384693101 0, 4786286705
0, 0000000000 0, 5688888889
0, 5384693101 0, 4786286705
0, 9061798459 0, 2369268850
5 −0, 9324695142 0, 1713244923
−0, 6612093864 0, 3607615730
−0, 2386191860 0, 4679139345
0, 2386191860 0, 4679139345
0, 6612093864 0, 3607615730
0, 9324695142 0, 1713244923
Z 1,5
2
Exemplo 14 Determine uma aproximação para e−x dx.
1
126
Solução: Inicialmente devemos realizar a mudança de variáveis. Assim, temos:
1 1 u 5 1
x = [(1, 5 − 1)u + 1 + 1, 5] = + = (u + 5).
2 2 2 2 4
Para n = 1, temos:
Z 1,5 Z 1
−x2 1 2 1
e dx ≈ e− 16 (u+5) du
1 −1 4
√ √ 2
1 − 161 − 33 +5 2
1 3
− 16 +5
≈ e +e 3
= 0, 1094003
4
Para n = 2, temos:
Z 1,5 Z 1
−x2 1 2 1
e dx ≈ e− 16 (u+5) du
1 −1 4
1h 1 2 1 2
≈ (0, 5555555556) · e− 16 (−0,7745966692+5) + (0, 8888888889) · e− 16 (0+5) +
4
1 2
i
+(0, 5555555556) · e− 16 (0,7745966692+5) = 0, 1093642
esperamos que Z b
a + b a + b
f (x)dx − S a, − S , b < ε.
a 2 2
Assim, assumi-se que S a, a+b2
+ S a+b
2
, b é uma aproximação suficientemente precisa
Rb
para a f (x)dx.
R 1,5 2
Exemplo 15 Determine uma aproximação para 1
e−x dx com uma precisão ε < 10−3 ,
utilizando o método de quadratura adaptativa.
1,5−1
Solução: Aplicando a regra de Simpson para h = 2
= 0, 25, temos:
0,25 h −12 2 2
i
S(1, 1,5) = e + 4e−1,25 + e−1,5 = 0, 109310351
3
1,5−1
Aplicando, agora, a regra de Simpson para h = 4
= 0, 125, temos:
0,125 h −12 2 2 2 2
i
S(1, 1,25)+S(1,25, 1,5) = e + 4e−1,125 + 2e−1,25 + 4e−1,375 + e−1,5 = 0, 109360955
3
128
Assim, uma estimativa para o erro é dada por
1
|Erro| ≈ |S(1, 1,5) − S(1, 1,25) − S(1,25, 1,5)| = 0, 0000033736
15
Como, neste caso, a estimativa para o erro é menor do que 10−3 , tem-se que S(1, 1,25) +
S(1,25, 1,5) = 0, 109360955 é assumida como sendo uma aproximação suficientemente
R 1,5 2
precisa para 1 e−x dx.
6.4 Exercı́cios
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
129
Anexo 1 - Regra dos Trapézios
Program RegraTrapezoidal
!-------------------------------------------------------------------------------------------------------------
! Este programa fornece uma aproximaç~
ao para a integral definida da funç~
ao f=f(x), com limitantes a e b
! utilizando o método trapezoidal para diferentes valores de deltax.
!-------------------------------------------------------------------------------------------------------------
Implicit None
Integer:: i, j, n
Double Precision:: Deltax, a, b, Integral
Double Precision, Allocatable, Dimension(:):: x, f
Allocate(x(n),f(n))
!-------------------------------------------------------------------------------------------------------------
! Aplicando a fórmula dos trapézios repetida:
!-------------------------------------------------------------------------------------------------------------
Do j=2,101,2
n=j
Deltax=(b-a)/(n-1)
x(1)=a
x(n)=b
f(1)=Funcao(x(1))
f(n)=Funcao(x(n))
Do i=2,(n-1)
x(i)=a+(i-1)*Deltax
f(i)=2*Funcao(x(i))
End Do
Integral=(Deltax/2)*Sum(f)
Write(*,*) Integral
End Do
Contains
!-------------------------------------------------------------------------------------------------------------
Double Precision Function Funcao(c)
Double Precision:: c
Funcao=2.0d0/(c-4.0d0)
End Program
130
Anexo 2 - Regra de Simpson
Program RegraSimpson
!-------------------------------------------------------------------------------------------------------------
! Este programa fornece uma aproximaç~
ao para a integral definida da funç~
ao f=f(x), com limitantes a e b
! utilizando o método de Simpson para diferentes valores de deltax.
!-------------------------------------------------------------------------------------------------------------
Implicit None
Integer:: i, j, n, l
Double Precision:: Deltax, a, b, Integral
Double Precision, Allocatable, Dimension(:):: x, f
Allocate(x(n),f(n))
!-------------------------------------------------------------------------------------------------------------
! Aplicando a fórmula de Simpson:
!-------------------------------------------------------------------------------------------------------------
Do j=3,101,2
n=j
Deltax=(b-a)/(n-1)
x(1)=a
x(n)=b
f(1)=Funcao(x(1))
f(n)=Funcao(x(n))
Do i=2,(n-1)
l=i-2.0d0*(Int(i/2.0d0))
If (l==0) Then
x(i)=a+(i-1)*Deltax
f(i)=4.0d0*Funcao(x(i))
Else
x(i)=a+(i-1)*Deltax
f(i)=2.0d0*Funcao(x(i))
End If
End Do
Integral=(Deltax/3)*Sum(f)
Write(*,*) Integral
End Do
Contains
!-------------------------------------------------------------------------------------------------------------
Double Precision Function Funcao(c)
Double Precision:: c
Funcao=1.0d0/(c+4.0d0)
131
Capı́tulo 7
∂f ∂f dy 1 1
y ′′ = f ′ = + = y− 3 .
∂x ∂y dx 3
Observe que a deverida segunda de y apresenta uma descontinuidade em x0 = 0, pois
y ′′ (y0 ) não existe. Assim, neste caso, só poderı́amos utilizar o método de Taylor de pri-
meira ordem.
Seja P (x) o único polinômio de grau 2 passando pelos pontos (xn , fn ), (xn+1 , fn+1 ) e
(xn+2 , fn+2 ).
Considerando que os pontos xi , i = n, n + 1, n + 2 são igualmente espaçados de h, ou seja,
xi = xn + (i − n)h, usando a forma de Newton-Gregory para o polinômio de interpolação,
obtemos:
∆fn ∆2 fn
P (x) = fn + (x − xn ) + (x − xn )(x − xn+1 ) .
h 2!h2
Fazendo-se a mudança de variáveis u = x−x h
n
, temos:
∆fn ∆2 fn
P (x) = P (xn + uh) = fn + uh + uh(u − 1)h
h 2!h2
u(u − 1) 2
= fn + u∆fn + ∆ fn .
2
Integrando a equação diferencial de primeira ordem, do problema de valor inicial dado por
(7.-7), de xn+1 até xn+2 , substituindo y(xn+2 ) e y(xn+1 ) por yn+2 e yn+1 , respectivamente,
e usando o fato que:
Z xn+2 Z xn+2 Z 2
∼
f (x, y(x))dx = P (x)dx = P (xn + uh)hdu,
xn+1 xn+1 1
obtemos:
Z
2
u(u − 1) 2
yn+2 − yn+1 = h fn + u∆fn + ∆ fn du
1 2
3 2
u2 u u2 2
= h fn u + ∆fn + − ∆ fn
2 6 4 1
2
3 2
3
2 2 2 2 12 1 12 2
= h fn · 2 + ∆fn + − ∆ fn − fn · 1 − ∆fn − − ∆ fn
2 6 4 2 6 4
3 5 2
= h fn + ∆fn + ∆ fn . (7.-11)
2 12
133
Sabe-se que as diferenças ordinárias de primeira e segunda ordens são dadas, respectiva-
mente, por:
Solução: Seja P (x) o único polinômio de grau 1 passando pelos pontos (xn , fn ) e (xn+1 , fn+1 ).
Considerando que os pontos xi , i = n, n + 1, n + 2 são igualmente espaçados de h, ou seja,
xi = xn + (i − n)h, usando a forma de Newton-Gregory para o polinômio de interpolação,
obtemos:
∆fn
P (x) = fn + (x − xn ) .
h
Fazendo-se a mudança de variáveis u = x−x h
n
, temos:
∆fn
P (x) = P (xn + uh) = fn + uh = fn + u∆fn .
h
Integrando a equação diferencial de primeira ordem, do problema de valor inicial dado por
(7.-7), de xn+1 até xn+2 , substituindo y(xn+2 ) e y(xn+1 ) por yn+2 e yn+1 , respectivamente,
e usando o fato que:
Z xn+2 Z xn+2 Z 2
f (x, y(x))dx ∼
= P (x)dx = P (xn + uh)hdu,
xn+1 xn+1 1
obtemos:
Z 2
yn+2 − yn+1 = h [fn + u∆fn ] du
1
2
u2
= h fn u + ∆fn
2 1
22 12
= h fn · 2 + ∆fn − fn · 1 − ∆fn
2 2
3
= h fn + ∆fn . (7.-12)
2
Sabendo-se que a diferença ordinária de primeira é dada por:
∆fn = fn+1 − fn
134
a equação (7.-12) pode ser reescrita como:
3
yn+2 − yn+1 = h fn + (fn+1 − fn ) .
2
135
Questão 05. Mostre que fazendo k = 3 em
Z xn+k
y(xn+k ) − y(xn ) = f (x, y(x))dx,
xn
obtém-se
3h
yn+3 = yn + [fn + 3(fn+1 + fn+2 ) + fn+3 ]
8
que é um método implı́cito de 3-passos chamado método 38 de Simpson.
(
y ′ = f (x, y(x))
Solução: Integrando o problema de valor inicial de xn até xn+k , obte-
y(x0 ) = y0
mos: Z xn+k Z xn+k
′
y dx = f (x, y(x))dx.
xn xn
Agora, desde que o lado esquerdo da expressão acima pode ser integrado exatamente,
obtemos que a solução exata satisfaz a identidade:
Z xn+k
y(xn+k ) − y(xn ) = f (x, y(x))dx.
xn
Fazendo-se k = 3, obtemos:
Z xn+3
y(xn+3 ) − y(xn ) = f (x, y(x))dx.
xn
3
Aproximando-se a integral acima pela fórmula de Newton-Cotes conhecida como Regra 8
de Simpson, e substituindo y(xn+3 ) e y(xn ) por yn+3 e yn , respectivamente, temos:
3
yn+3 − yn = h [f (xn ) + 3f (xn+1 ) + 3f (xn+2 ) + f (xn+3 )] .
8
Para simplificar a notação escreveremos fi no lugar de f (xi ), para i = n, n+ 1, n+ 2, n+ 3.
Assim,
3
yn+3 = yn = h [fn + 3fn+1 + 3fn+2 + fn+3 ] .
8
Resolva-os pelo:
136
(b) método de Taylor de ordem 2;
usando para os itens (c) e (d), o item (b) para obter os valores iniciais necessários.
• Para o problema de valor inicial dado por (i), temos f (x, y) = y 2 +1. Assim, fazendo
n = 0 em (7.-13), obtemos:
y1 = y0 + hf0 .
Note que devemos avaliar f em (x0 , y0). Assim,
Portanto,
y1 = 0 + 0, 2 · 1 = 0, 2.
Fazendo n = 1 em (7.-13), obtemos:
y2 = y1 + hf1 .
Portanto,
y2 = 0, 2 + 0, 2 · 1, 04 = 0, 408.
Fazendo n = 2 em (7.-13), obtemos:
y3 = y2 + hf2 .
Portanto,
y3 = 0, 408 + 0, 2 · 1, 166464 = 0, 6412928.
Fazendo n = 3 em (7.-13), obtemos:
y4 = y3 + hf3 .
137
Portanto,
y4 = 0, 6412928 + 0, 2 · 1, 411256455 = 0, 923544091.
Fazendo n = 4 em (7.-13), obtemos:
y5 = y4 + hf4 .
Portanto,
y5 = 0, 923544091 + 0, 2 · 1, 852933688 = 1, 294130829.
Assim, a solução do problema de valor inicial (i) utilizando o método de Euler é
dada por:
xn yn
0 0
0, 2 0, 2
0, 4 0, 408
0, 6 0, 6412928
0, 8 0, 923544091
1, 0 1, 294130829
• Para o problema de valor inicial dado por (ii), temos f (x, y) = −2xy. Assim,
fazendo n = 0 em (7.-13), obtemos:
y1 = y0 + hf0 .
f0 = f (x0 , y0 ) = −2x0 y0 = −2 · 0 · 1 = 0.
Portanto,
y1 = 1 + 0, 3 · 0 = 1
Fazendo n = 1 em (7.-13), obtemos:
y2 = y1 + hf1 .
Portanto,
y2 = 1 + 0, 3 · (−0, 6) = 0, 82.
138
xn yn
0 1
0, 3 1
0, 6 0, 82
• Para o problema de valor inicial dado por (iii), temos f (x, y) = −xy. Assim, fazendo
n = 0 em (7.-13), obtemos:
y1 = y0 + hf0 .
Note que devemos avaliar f em (x0 , y0). Assim,
Portanto,
y1 = 2 + 0, 1 · 0 = 2
Fazendo n = 1 em (7.-13), obtemos:
y2 = y1 + hf1 .
Portanto,
y2 = 2 + 0, 1 · (−0, 2) = 1, 98.
Fazendo n = 2 em (7.-13), obtemos:
y3 = y2 + hf2 .
Portanto,
y3 = 1, 98 + 0, 1 · (−0, 396) = 1, 9404.
xn yn
0 2
0, 1 2
0, 2 1, 98
0, 3 1, 9404
139
• Para o problema de valor inicial dado por (i), temos:
fn = f (xn , yn ) = yn2 + 1,
fn′ = f ′ (xn , yn ) = 2yn (yn2 + 1).
Portanto,
0, 22
y1 = 0 + 0, 2 · 1 + · 0 = 0, 2.
2
Fazendo n = 1 em (7.-12), obtemos:
h2 ′
y2 = y1 + hf1 + f.
2 1
Para calcular y2 devemos avaliar f e sua derivada de primeira ordem em (x1 , y1 ) =
(0, 1; 0, 2). Assim,
Portanto,
0, 22
y2 = 0, 2 + 0, 2 · 1, 04 + · 0, 416 = 0, 41632.
2
Fazendo n = 2 em (7.-12), obtemos:
h2 ′
y3 = y2 + hf2 + f.
2 2
Para calcular y3 devemos avaliar f e sua derivada de primeira ordem em (x2 , y2 ) =
(0, 2; 0, 41632). Assim,
Portanto,
0, 22
y3 = 0, 41632 + 0, 2 · 1, 173322342 + · 0, 976955115 = 0, 67052357.
2
Portanto,
0, 22
y4 = 0, 67052357 + 0, 2 · 1, 449601859 + · 1, 9439844227 = 0, 999323363.
2
Fazendo n = 4 em (7.-12), obtemos:
h2 ′
y5 = y4 + hf4 + f.
2 4
Para calcular y5 devemos avaliar f e sua derivada de primeira ordem em (x4 , y4 ) =
(0, 4; 0, 999323363). Assim,
Portanto,
0, 22
y5 = 0, 999323363 + 0, 2 · 1, 998647718 + · 3, 994590718 = 1, 478944721.
2
Assim, a solução do problema de valor inicial (i) utilizando o método de Taylor de
ordem 2 é dada por:
xn yn
0 0
0, 2 0, 2
0, 4 0, 41632
0, 6 0, 67052357
0, 8 0, 999323363
1, 0 1, 478944721
fn = f (xn , yn ) = −2xn yn ,
fn′ = f ′ (xn , yn ) = −2yn − 2xn (−2xn yn ) = −2yn + 4x2n yn .
f0 = f (x0 , y0 ) = −2x0 y0 = −2 · 0 · 1 = 0,
f0′ = f ′ (x0 , y0) = −2y0 − 2x0 (−2x0 y0 ) = −2y0 + 4x20 y0 = −2 · 1 + 4 · 02 · 1 = −2.
141
Portanto,
0, 32
y1 = 1 + 0, 3 · 0 + · (−2) = 0, 91.
2
Fazendo n = 1 em (7.-12), obtemos:
h2 ′
y2 = y1 + hf1 + f.
2 1
Observe que para calcular y1 devemos avaliar f e sua derivada de primeira ordem
em (x1 , y1 ) = (0, 3; 0, 91). Assim,
Portanto,
0, 32
y2 = 0, 91 + 0, 3 · (−0, 546) + · (−1, 4924) = 0, 679042.
2
Assim, a solução do problema de valor inicial (ii) utilizando o método de Taylor de
ordem 2 é dada por:
xn yn
0 1
0, 3 0, 91
0, 6 0, 679042
fn = f (xn , yn ) = −xn yn ,
fn′ = f ′ (xn , yn ) = −yn − xn (−xn yn ) = −yn + x2n yn .
h2 ′
y1 = y0 + hf0 + f.
2 0
Observe que para calcular y1 devemos avaliar f e sua derivada de primeira ordem
em (x0 , y0 ) = (0, 2). Assim,
f0 = f (x0 , y0 ) = −x0 y0 = 0 · 2 = 0,
f0′ = f ′ (x0 , y0 ) = −y0 − x0 (−x0 y0 ) = −y0 + x20 y0 = −2 + 02 · 1 = −2.
Portanto,
0, 12
y1 = 2 + 0, 1 · 0 + · (−2) = 1, 99.
2
Fazendo n = 1 em (7.-12), obtemos:
h2 ′
y2 = y1 + hf1 + f.
2 1
142
Observe que para calcular y1 devemos avaliar f e sua derivada de primeira ordem
em (x1 , y1 ) = (0, 1; 1, 99). Assim,
Portanto,
0, 12
y2 = 1, 99 + 0, 1 · (−0, 199) + · (−1, 9701) = 1, 9602495.
2
Portanto,
0, 12
y3 = 1, 9602495 + 0, 1 · (−0, 3920499) + · (−1, 88183952) = 1, 911635312.
2
xn yn
0 2
0, 1 1, 99
0, 2 1, 9602495
0, 3 1, 911635312
y2 = y0 + 2hf1 .
Note que para obter y2 devemos avaliar o valor de f em (x1 , y1 ). Para isto utiliza-
remos y1 = 0, 2 calculado no item (b) pelo método de Taylor de ordem 2. Assim,
143
Portanto,
y2 = 0 + 2 · 0, 2 · 1, 04 = 0, 416.
Fazendo-se n = 1 em (7.-39), temos:
y3 = y1 + 2hf2 .
Portanto,
y3 = 0, 2 + 2 · 0, 2 · 1, 173056 = 0, 6692224.
y4 = y2 + 2hf3 .
Portanto,
y4 = 0, 416 + 2 · 0, 2 · 1, 447858621 = 0, 995143448.
y5 = y3 + 2hf4 .
Portanto,
y5 = 0, 6692224 + 2 · 0, 2 · 1, 990310483 = 1, 465346593.
Assim, a solução do problema de valor inicial (i) utilizando o método do Ponto
Médio é dada por:
xn yn
0 0
0, 2 0, 2
0, 4 0, 416
0, 6 0, 6692224
0, 8 0, 995143448
1, 0 1, 465346593
144
• Considerando o problema de valor inicial dado por (ii), temos f (x, y) = −2xy.
Fazendo-se n = 0 em (7.-39), temos:
y2 = y0 + 2hf1 .
Note que para obter y2 devemos avaliar o valor de f em (x1 , y1 ). Para isto utiliza-
remos y1 = 0, 91 calculado no item (b) pelo método de Taylor de ordem 2. Assim,
f1 = f (x1 , y1 ) = −2x1 y1 = −2 · 0, 3 · 0, 91 = −0, 546.
Portanto,
y2 = 1 + 2 · 0, 3 · (−0, 546) = 0, 6724.
Assim, a solução do problema de valor inicial (ii) utilizando o método do Ponto
Médio é dada por:
xn yn
0 1
0, 3 0, 91
0, 6 0, 6724
• Considerando o problema de valor inicial dado por (iii), temos f (x, y) = −xy.
Fazendo-se n = 0 em (7.-39), temos:
y2 = y0 + 2hf1 .
Note que para obter y2 devemos avaliar o valor de f em (x1 , y1 ). Para isto utiliza-
remos y1 = 1, 99 calculado no item (b) pelo método de Taylor de ordem 2. Assim,
f1 = f (x1 , y1 ) = −x1 y1 = −0, 1 · 1, 99 = −0, 199.
Portanto,
y2 = 2 + 2 · 0, 1 · (−0, 199) = 1, 9602.
xn yn
0 2
0, 1 1, 99
0, 2 1, 9602
0, 3 1, 911592
145
(d) A fórmula para o método de Adams-Bashforth é dada por:
h
yn+2 = yn+1 + [−fn + 3fn+1 ] . (7.-38)
2
• Considerando o problema de valor inicial dado por (i), e fazendo-se n = 0 em (7.-38),
obtemos:
h
y2 = y1 + [−f0 + 3f1 ] .
2
Note que, devemos avaliar f em (x0 , y0 ) e (x1 , y1 ). Utilizaremos (x0 , y0 ) = (0, 0)
prescrito pela condição inicial e (x1 , y1 ) = (0, 2; 0, 2) calculado no item (b) pelo
método de Taylor de ordem 2. Assim,
f0 = f (x0 , y0 ) = y02 + 1 = 02 + 1 = 1,
f1 = f (x1 , y1 ) = y12 + 1 = 0, 22 + 1 = 1, 04.
Portanto,
0, 2
y2 = 0, 2 + [−1 + 3 · 1, 04] = 0, 412.
2
Fazendo-se n = 1 em (7.-38), obtemos:
h
y3 = y2 +[−f1 + 3f2 ] .
2
Note que, devemos avaliar f em (x2 , y2). Assim,
f2 = f (x2 , y2) = y22 + 1 = 0, 4122 + 1 = 1, 169744.
Portanto,
0, 2
y3 = 0, 412 + [−1, 04 + 3 · 1, 169744] = 0, 6589232.
2
Fazendo-se n = 2 em (7.-38), obtemos:
h
y4 = y3 +[−f2 + 3f3 ] .
2
Note que, devemos avaliar f em (x3 , y3). Assim,
f3 = f (x3 , y3 ) = y32 + 1 = 0, 65892322 + 1 = 1, 434179784.
Portanto,
0, 2
y4 = 0, 6589232 + [−1, 169744 + 3 · 1, 434179784] = 0, 972202735.
2
Fazendo-se n = 3 em (7.-38), obtemos:
h
y5 = y4 +[−f3 + 3f4 ] .
2
Note que, devemos avaliar f em (x4 , y4). Assim,
f4 = f (x4 , y4 ) = y42 + 1 = 0, 9722027352 + 1 = 1, 945178158.
Portanto,
0, 2
y5 = 0, 972202735 + [−1, 434179784 + 3 · 1, 945178158] = 1, 412338204.
2
Assim, a solução do problema de valor inicial (i) utilizando o método de Adams-
Bashforth é dada por:
146
xn yn
0 0
0, 2 0, 2
0, 4 0, 412
0, 6 0, 6589232
0, 8 0, 972202735
1, 0 1, 412338204
Portanto,
0, 3
y2 = 0, 91 + [−0 + 3 · (−0, 546)] = 0, 6643.
2
Assim, a solução do problema de valor inicial (ii) utilizando o método de Adams-
Bashforth é dada por:
xn yn
0 1
0, 3 0, 91
0, 6 0, 6643
f0 = f (x0 , y0 ) = −x0 y0 = −0 · 2 = 0,
f1 = f (x1 , y1 ) = −x1 y1 = −0, 1 · 1, 99 = −0, 199.
Portanto,
0, 1
y2 = 1, 99 + [−0 + 3 · (−0, 199)] = 1, 96015.
2
Fazendo-se n = 1 em (7.-38), obtemos:
h
y3 = y2 + [−f1 + 3f2 ] .
2
147
Note que, devemos avaliar f em (x2 , y2). Assim,
Portanto,
0, 1
y2 = 1, 96015 + [−(−0, 199) + 3 · (−0, 39203)] = 1, 9112955.
2
Assim, a solução do problema de valor inicial (iii) utilizando o método de Adams-
Bashforth é dada por:
xn yn
0 2
0, 1 1, 99
0, 2 1, 96015
0, 3 1, 9112955
Podemos dizer que os métodos de Runge-Kutta de orem p se caracterizam por três pro-
priedades:
(ii) não exigem o cálculo de qualquer derivada de f (x, y); pagam, por isso, o preço de
calcular f (x, y) em vários pontos;
(iii) após expandir f (x, y) por Taylor para a função de duas variáveis em torno de (xn , yn )
e agrupar os termos semelhantes , sua expressão coincide com a do método de série
de Taylor de mesma ordem.
Então
yn+1 = yn + hf (xn , yn ), n = 0, 1, 2, ...
148
e o método e Euler satisfaz as três propriedades acima que o caracterizam como um
método de Runge-Kutta de ordem p = 1.
Conforme o próprio nome indica, este método consiste em fazer mudanças no método de
Euler para assim conseguir um método de ordem mais elevada.
Dada a aproximação (xn , yn ), supomos a situação ideal em que a curva desenhada com
linha cheia seja a solução y(x) da nossa equação (isto só acontece mesmo em (x0 , y0)).
Por (xn , yn ) traçamos a reta L1 cujo coeficiente angular é yn′ = f (xn , yn ), ou seja,
Assim, dado o passo h, z1 (xn+1 ) = z1 (xn + h) = yn+1 do método de Euler, que chamamos
aqui de y n+1 . Seja P ≡ (xn + h, yn + hyn′ ). Por P agora, traçamos a reta L2 , cujo
coeficiente angular é f (xn + h, yn + hyn′ ) = f (xn+1 , yn+1 ):
A reta pontilhada L0 passa por P e tem por inclinação a média das inclinações das retas
L1 e L2 , ou seja, sua inclinação é
149
O valor fornecido para yn+1 pelo método de Euler Aperfeiçoado é z(xn + h) = z(xn+1 ),
ou seja,
h
yn+1 = yn + [f (xn , yn ) + f (xn + h, yn + hyn′ )], n = 0, 1, 2, ...
2
Observams que este método é de passo um e ó trabalha com cálculos de f (x, y), não
envolvendo suas derivadas. Assim, para verificarmos que ele realmente é um método de
Runge-Kutta de 2a ordem em h:
h2 h2
yn+1 = yn + hf (xn , yn ) + fx (xn , yn ) + f (xn , yn )fx (xn , yn ),
2 2
h2 ′′′
com e(xn+1 ) = y (ξxn+1 ).
3!
Assim,
150
Para o método de Euler Aperfeiçoado,
1
a1 = b1 = 1
2
1
a2 =
b2 = 1
2
A pergunta natural que surge neste momento é se este tipo de método não poderá ser um
método de Runge-Kutta maior que dois.
Temos quatro parâmetros livres: a1 , a2 , b1 e b2 . Para qua haja concordância com a série
de Taylor até os termos de ordem h1 é necessário um paraâmetro. Considerando agora
f (xn +b1 h, yn +b2 hyn′ ) calculado pela série de Taylor de f (x, y) em torno de (xn , yn ) vemos
de maneira completamente análoga ao que foi visto no método de Euler Aperfeiçoado que,
para haver concordância desta fórmula com a do método de série de Taylor até os termos
de ordem h2 são necessários mais dois parâmetros, visto que há a considerar os termos
h2 fx e h2 f fy . O último parâmetro que resta obviamente não é suficiente para que se exija
concordância até os termos de ordem de h3 .
Porém, com quatro parâmetros disponı́veis e apenas três exigências, teremos uma infini-
dade de métodos de Runge-Kutta de 2a ordem.
Realmente, como
+ termos em h2 ,
yn+1 = yn + a1 hf (xn , yn ) + a2 h[f (xn , yn ) + b1 hfx (xn , yn ) + b2 hf (xn , yn )fy (xn , yn )]+
+ termos em h3 .
Então,
yn+1 = yn + (a1 + a2 )hf (xn , yn ) + (a2 b1 )h2 fx (xn , yn ) + (a2 b2 )h2 f (xn , yn )fy (xn , yn )+
+ termos em h3 .
Assim, para haver concordância com o método de série de Taylor até os termos em h2 é
preciso que
a1 + a2 = 1
1
a2 b1 = 2
1
a2 b2 = 2
;
conforme já foi observado, um sistema de três equações e quatro variáveis. Escolhendo
um dos parâmetros arbitrariamente, por exemplo a2 = w 6= 0, temos
1
a1 = 1 − w e b1 = b2 =
2w
151
e a forma geral dos métodos de Runge-Kutta de 2a ordem é dada por
h h
yn+1 = yn + h[(1 − w)f (xn , yn ) + wf (xn + , yn + f (xn , yn ))], n = 0, 1, 2, ...
2w 2w
3a ordem:
2 1 4
yn+1 = yn + k1 + k2 + k3 ,
9 3 9
onde
k1 = hf (xn , yn ),
h k1
k2 = hf (xn + , yn + )
2 2
e
3 3
k3 = hf (xn + h, yn + k2 ).
4 4
4a ordem:
1
yn+1 = yn + (k1 + 2k2 + 2k3 + k4 ),
6
onde
k1 = hf (xn , yn ),
h k1
k2 = hf (xn + , yn + ),
2 2
h k2
k3 = hf (xn + , yn + )
2 2
e
k4 = hf (xn + h, yn + k3 ).
Chamamos a atenção novamente para o fato de os métodos de Runge-Kutta, apesar de
serem auto-iniciáveis (pois são de passo um) e nãotrabalharem com derivadas de f (x, y),
apresentam a desvantagem de não haver para eles uma estimativa simples para o erro, o
que inclusive poderia ajudar na escolha do passo h.
Existe ainda adaptações dos métodos de Runge-Kutta que são simples operacionalmente
e que são usadas também para estimativas de erro e controle do tamanho do passo h.
Exemplo.Dado o problema de valor inicial abaixo, estimar y(1) por vários métodos e
vários tamanhos de passo h.
y ′ = 0, 04y ⇒ f (x, y) = 0, 04y
y(0) = 1000
152
Solução. Sabemos que a solução exata é
y(x) = 1000e0,04x ,
h
yn+1 = yn + [f (xn , yn ) + f (xn + h, yn + hf (xn , yn ))] =
2
h
= yn + [0, 04yn + 0, 04(yn + h · 0, 04yn)] =
2
h
= yn + [0, 04yn + 0, 04y+ h · 0, 042yn ] =
2
h2
= (1 + 0, 04h + · 0, 042 )yn .
2
153
analogamente ao que vimos no método de Euler,
h2
yk = (1 + 0, 04h + · 0, 042)k · 1000.
2
Para h = 1, temos
1
y(1) ≈ y1 = (1 + 0, 04 + · 0, 042) · 1000 = 1040, 8.
2
Para h = 0, 5, temos
0, 052
y(1) ≈ y2 = (1 + 0, 04 · 0, 5 + · 0, 042 )2 · 1000 = 1040, 808.
2
Para h = 0, 25, temos
0, 252
y(1) ≈ y4 = (1 + 0, 04 · 0, 25 + · 0, 042 )4 · 1000 = 1040, 8101.
2
Para h = 0, 1, temos
0, 12
y(1) ≈ y10 = (1 + 0, 04 · 0, 1 + · 0, 042)10 · 1000 = 1040, 8107.
2
Comentários: Dada a resposta exata y(1) = 1040, 8108 com quatro casas decimais vemo
que, à medida que h diminui, cada método obtém uma melhor aproximação e que entre os
dois, como era de se esperar, o método de Euler Aperfeiçoado fornece melhores resultados;
veja que para h = 0, 1, y(1) ≈ 1040, 8107, por Euler Aperfeiçoado!
Observamos que sendo x0 = 0, então xk = x0 + k · h = kh.
x2 x3
e0,04x = 1 + 0, 04x + 0, 042 + 0, 043 + ...
2 3!
Assim,
h2 h3
e0,04h = 1 + 0, 04h + 0, 042 + 0, 043 + ...
2 3!
2
Vemos que tanto (1 + 0, 04h)k do método e Euler como (1 + 0, 04h + 0, 042 h2 )k do método
de Euler Aperfeiçoado são aproximações para e0,04hk = e0,04xk .
E, logicamente, a segunda aproximação está mais próxima mesmo do valor exato.
De maneira análoga, com um pouco mais de elaboração nos cálculos, verificamos este
resultado para o método de Euler Aperfeiçoado.
154
(c) pelo método de Runge-Kutta de 3a ordem:
Para h = 1, temos
2 1 4
yn+1 = yn + k1 + k2 + k3 ,
9 3 9
onde
k1 = hf (xn , yn ) = h · 0, 04 · yn ;
h k1 k1
k2 = hf (xn + , yn + ) = h · 0, 04(yn + )
2 2 2
e
3 3 3
k3 = hf (xn + h, yn + k2 ) = h · 0, 04(yn + k2 )
4 4 4
e então
2 1 4
y(1) ≈ y1 = y0 + k1 + k2 + k3 .
9 3 9
Como neste caso temos
k1 = 0, 04 · 1000 = 40,
k2 = 0, 04(1000 + 20) = 40, 8
e
3
k3 = 0, 04(1000 + · 40, 8) = 41, 224;
4
segue que
2 1 4
y(1) ≈ y1 = 1000 + · 40 + · 40, 8 + · 41, 224 = 1040, 8107.
9 3 9
155
Capı́tulo 8
8.1 Introdução
As EDPs refletem dois tipos básicos de fenômenos fı́sicos: os transientes e os estacionários.
Os primeiros são modelados por equações que descrevem a variação de uma grandeza fı́sica
no tempo e no espaço. Ao passo que, os estacionários, por pressuporem um estado em que
o valor da grandeza não se altera no tempo, são descritos por equações que relacionam
somente a distribuição espacial da grandeza.
Para aplicarmos técnicas computacionais a problemas que envolvem estas equações, é
importante conhecermos suas caracterı́ticas gerais.
156
• Elı́pticas, se B 2 − 4AC < 0;
• Parabólicas, se B 2 − 4AC = 0;
É importante salientar que cada classe de equação está associada a uma categoria
diferente de fenômenos fı́sicos e, métodos numéricos que “funcionam” para uma categoria
podem não ser aplicáveis para as demais.
∇2 φ = 0, (8.3)
∂2 ∂2
∇2 = + .
∂x2 ∂y 2
A solução única para problemas envolvendo equações diferenciais parciais é obtida especificando-
se condições sobre a variável dependente na fronteira δR da região R, em que se quer
resolver o problema. Problemas que exigem condições ao longo da fronteira (contorno)
δR de toda região R são denominados problemas de valor de contorno (PVC).
Uma caracterı́stica dos problemas modelados por equações elı́pticas é que toda a região R
é imediatamente afetada por qualquer mudança no valor da variável dependente em um
ponto P no interior de R, ou em sua fronteira δR. Isso equivale a dizer que perturbações
deslocam-se em todas as direções dentro de R, afetando todos os demais pontos internos,
embora essa influência diminua com o aumento da distância ao ponto P . Portanto, as
soluções numéricas de problemas de equilı́brio variam suavemente em R.
157
Figura 8.2: Perturbação no ponto P influencia toda a região R.
158
Exemplo 17 Considere uma barra delgada de comprimento L, isolada termicamente ao
longo de seu comprimento, mas que tem suas extremidades mantidas às temperaturas T0
e T1 .
Assim, supondo que a temperatura inicial da barra é T = 0◦ C e que suas extremidades são
mantidas às temperaturas T0 = T1 = 50◦ C, obtemos a evolução temporal da temperatura
ao longo da barra dada pela Figura 1.3, que ilustra o gráfico da temperatura da barra
em diferentes instantes de tempo. Note que, após um tempo suficientemente longo, o
equilı́brio térmico é alcaçado e a temperatura da barra não mais varia.
Figura 8.3: Distribuição da temperatura em uma barra para diferentes instantes de tempo.
159
8.3.2 Equações Hiperbólicas
Equações hiperbólicas estão relacionadas a problemas de vibração ou de convecção, em
que os fenômenos dissipativos são mı́nimos ou podem ser desprezados. Situações descritas
por equações hiperbólicas necessitam de condições iniciais e de contorno. Portanto, são
também problemas de valor inicial.
Figura 8.5: Perfil senoidal transportado sem dissipação com velocidade v > 0 por uma
equação hiperbólica.
∂φ ∂φ ∂2φ
= −v + Γ 2, (8.6)
∂t ∂x ∂x
onde v representa a velocidade de propagação de φ e Γ o coeficiente de difusão de φ.
A Figura 1.6 ilustra a propagação da onda senoidal com dissipação. Os efeitos dissipativos
são claramente visı́veis: o perfil senoidal foi “espalhado” para pontos adjacentes e teve
sua amplitude reduzida.
• exista;
160
• seja única;
Em problemas que envolvem EDPs, podem-se especificar três tipos básicos de condições
sobre a variável dependente φ na fornteira da região R:
• Condição de fronteira tipo Robin: uma combinação linear das anteriores é especifi-
cada em δR.
161
A Figura 1.6 ilustra a discretização da região R utilizando uma malha uniforme com
espaçamento nas direções x e y dados, respectivamente, por ∆x e ∆y. Os ı́ndices i e j
identificam a i−ésima coluna e a j−ésima linha, respectivemente. Assim, cada ponto (i, j)
possui coordenadas (x0 + i∆x, y0 + j∆y), em que o ponto (x0 , y0) representa a origem do
sistema de coordenadas, tomado aqui como igual a (0, 0). O número de pontos tomados
nas direções x e y são dados, respectivamente, por M + 1 e N + 1.
Para que seja possı́vel tratar numericamente a equação governante do modelo, a mesma
também deve ser discretizada, ou seja, as derivadas devem ser representadas por ex-
pressões algébricas. Esse processo gera uma equação denominada equação de diferenças
finitas (EDF). A EDF é, então, escrita para cada ponto da região dicretizada em que se
deseja calcular a solução para o problema.
Note que, a solução obtida por meio das discretizações não é exata, pois contém erros
Para facilitar a notação, façamos u(xi + ∆x) = ui+1 , u(xi ) = ui , u(xi − ∆x) = ui−1 e
∆x = h. Assim, temos:
ui−1 − (h2 − 2)ui + ui+1 = −h2 xi
Como h = 0, 2, e conhecemos os valores de u em x = 0 e x = 1, os pontos onde a
equação aproximada deve ser aplicada são: x1 = x0 + ∆x = 0, 2, x2 = x0 + 2∆x = 0, 4,
x3 = x0 + 3∆x = 0, 6 e x4 = x0 + 4∆x = 0, 8. Assim,
Exemplo
19 Resolva a EDO do exemplo anterior com as condições de contorno u(0) = 0
du
e = 1.
dx x=1
Solução: O problema, agora, possui cinco incógnitas uma vez que o valor de u em x = 1,
isto é, u5 não é conhecido. Assim, é necessário gerar mais uma equação, além das quatro
correspondentes aos pontos interiores, para a solução do problema.
163
• 1a alternativa: Aproximar a condição de contorno natural por uma diferença
regressiva.
du u5 − u4 u5 − u4
= ⇒ =1 ⇒ u5 = u4 + 0, 2
dx x=1
∆x 0, 2
Substituindo a equação acima na correspondente a i = 4 no exemplo anterior, temos:
Portanto, o novo sistema de equações é: Em forma matricial, após a introdução das
condições de contorno, temos:
−1, 96 1 0 0 u1 −0, 008
1 −1, 96 1 0 u −0, 016
2
=
0 1 −1, 96 1 u3 −0, 024
0 0 1 −0, 96 u4 −0, 232
164
A equação discretizada, escrita para i = 5, fica:
∂2u ∂2u
+ = 0,
∂x2 ∂y 2
sujeita as condições de contorno:
u(x, y) = 0, para x = 0 e 0 ≤ y ≤ 1,
u(x, y) = 0, para x = 1 e 0 ≤ y ≤ 1,
u(x, y) = 0, para y = 1 e 0 ≤ x ≤ 1,
u(x, y) = x(1 − x), para y = 0 e 0 ≤ x ≤ 1,
u(xi − ∆x, yj ) − 2u(xi , yj ) + u(xi + ∆x, yj ) u(xi , yj − ∆y) − 2u(xi , yj ) + u(xi , yj + ∆y)
+ =0
∆x2 ∆y 2
Para facilitar a notação, façamos: u(xi −∆x, yj ) = ui−1,j , u(xi , yj ) = ui,j , u(xi + ∆x, yj ) =
ui+1,j , u(xi , yj − ∆y) = ui,j−1, u(xi , yj + ∆y) = ui,j+1. Dessa forma, manipulando algebri-
camente a equação anterior, obtemos:
∆y 2 [ui−1,j + ui+1,j ] − 2 ∆x2 + ∆y 2 ui,j + ∆x2 [ui,j−1 + ui,j+1] = 0
165
A seguir, discretizaremos o domı́nio de solução. A região onde se pretende resolver a
equação está representada na figura a seguir.
Fazendo-se ∆x = ∆y = 31 , temos 0 ≤ i ≤ 3 e 0 ≤ j ≤ 3.
Pelas condições de contorno, podemos escrever:
u0,j = 0
u3,j = 0
ui,3 = 0
ui,0 = xi (1 − xi )
• para i = 1 e j = 1, temos:
• para i = 1 e j = 2, temos:
• para i = 2 e j = 1, temos:
• para i = 2 e j = 2, temos:
166
Escrevendo o sistema anterior na forma matricial, obtemos:
−4 1 1 0 u1,1 − 92
1 −4 0 1
u2,1
− 29
=
1 0 −4 1 u1,2 0
0 1 1 −4 u2,2 0
As soluções aproximadas são obtidas após a resolução do sistema de equações.
Exercı́cios
1. Resolva a equação diferencial
d2 y
− y = 0, em 0 ≤ x ≤ 1,
dx2
sujeita as seguintes condições de contorno: y(0) = 0 e y(1) = 1, utilizando o MDF
com h = 0, 2. Compare os resultados obtidos com a solução analı́tica, dada por
e
y(x) = (ex − e−x ).
e2 −1
167
Considere a solução do problema transiente de difusão do calor em uma barra, modelado
pela equação:
∂T ∂2T
=α 2, (8.-8)
∂t ∂x
sujeita a condições de contorno do tipo Dirichlet T (x0 ) = T0 e T (xM ) = TM .
onde o ı́ndice “0” em Ti0 indica que esse é o valor de Ti no instante inicial t = t0 . Em geral,
o valor de T na posição (x0 + i∆x) e no instante de tempo t0 + n∆t é representado por Tin .
A equação anterior possui duas variáveis independentes, uma espacial x e uma temporal t.
As soluções da equação formam, no plano x − t, um conjunto de pontos com coordenadas
(i∆x, n∆t), com 0 ≤ i ≤ M e 0 ≤ n ≤ nf , onde nf representa o último nı́vel de
t −t
tempo, isto é, nf = f∆t 0 . Para cada nı́vel de tempo n, busca-se determinar um vetor
T n = (T0n , T1n , ..., TM
n n
−1 , TM ) que contém as temperaturas da barra.
Aproximando a derivada de segunda ordem por uma diferença central de segunda ordem,
temos:
n n
∂T Ti+1 − 2Tin + Ti−1
n
= α 2
+ O[(∆x)2 ]. (8.-7)
∂t i
∆x
168
Tin+1 − Tin T n − 2Tin + Ti−1
n
= α i+1 + O[(∆t), (∆x)2 ]. (8.-5)
∆t ∆x2
∆t
Manipulando algebricamente a expressão acima e, fazendo-se s = α ∆x 2 , podemos escrever:
Tin+1 = s Ti+1
n
+ (1 − 2s)Tin + s Ti−1
n
. (8.-4)
Note que, a expressão (8.-4), apresenta um método explı́cito, pois o lado direito depende
apenas de valores conhecidos de T no nı́vel de tempo n. O referido método é denominado
método de Euler explı́cito. O estêncil da discretização é apresentado na figura a seguir.
Ao escrevermos a expressão (8.-4) para cada ponto da barra em que se deseja a tempera-
tura no nı́vel de tempo n = 1, obtemos o conjunto de equações independentes apresentado
a seguir.
Para n = 1,
• em x1 , temos:
T11 = s T21 + (1 − 2s)T11 + s T01
• em x2 , temos:
T21 = s T31 + (1 − 2s)T21 + s T11
..
.
• em xM −1 , temos:
1 1 1 1
TM −1 = s TM + (1 − 2s)TM −1 + s TM −2
Observe que não escrevemos a equação (8.-4) para os pontos x0 e xM , já que neles a
temperatura é conhecida por ser especificada pela condição de contorno.
É importante ressaltar que só podemos calcular T 2 após todos os valores de T 1 terem sido
determinados.
Assim, podemos calcular T 2 apenas após todos os valores de T 1 terem sido determinados.
Prosseguindo essa marcha no tempo, determinamos a sequência
169
Discretização Implı́cita
A técnica apresentada nesta seção envolve aproximações implı́citas das derivadas espaci-
ais presentes na EDP. Estes métodos utilizam o mesmo processo de marcha no tempo,
diferenciando-se do anterior, principalmente, na maneira de como calcular T n+1 .
n+1
−s Ti−1 + (1 + 2s)Tin+1 − s Ti+1
n+1
= Tin . (8.-1)
Observe que, ao contrário da equação (8.-4), a equação (8.-1) sozinha não permite deter-
minar o valor de Tin+1 , pois aparecem três incógnitas: Ti−1
n+1
, Tin+1 e Ti+1
n+1
.
Os elementos finitos são definidos por sua forma geométrica, pelas funções de aproximação
adotadas e pelos tipos de problemas para os quais foram desenvolvidos.
170
Cada elemento possui um determinado número de pontos nodais, ou nós, que podem ser
internos ou externos. Os externos fazem a conexão com os elementos vizinhos. Nesses
nós comuns a diferentes elementos, o valor das variáveis do problema é o mesmo, inde-
pendentemente do elemento que esteja sendo considerado.
As bases teóricas do MEF foram melhor definidas no inı́cio da década de 60 com o estudo
mais aprofundado dos métodos energéticos e das técnicas variacionais.
é substituı́da por
E Z
X B Z
X
wℓ εΩ dΩ + w ℓ εΓ dΓ = 0, (8.3)
e=1 Ωe b=1 Γb
171
onde as funções de aproximação são definidas localmente, sendo válidas somente para Ωe
e Γb e não mais para Ω e Γ.
Matricialmente, temos:
Ku = F, (8.7)
172
onde os elementos da matriz K são dados por:
Z 1
dφℓ dφm
Kℓm = − + φℓ φm dx, com 1 ≤ ℓ, m ≤ M + 1 (8.8)
0 dx dx
x − xi
φi = φei = 1 − (8.9)
he
x − xi
φj = φej = (8.10)
he
Do ponto de vista global, as únicas funções de aproximação não nulas no elemento “e”
são as funções φi e φj , consequentemente, φℓ = 0, para ℓ 6= i ou ℓ 6= j.
Z
xj
dφi dφj
Kije = e
Kji = − + φi φj dx
xi dx dx
Z xj
d x − xi d x − xi x − xi x − xi
= − 1− + 1− dx
xi dx he dx he he he
173
Z he
d X d X X X
Kije = e
Kji = − 1− + 1− dX
0 dX he dX he he he
Z he " 2
#
1 1 X X
= + − 2 dX
0 he he he he
h
2 he
3 he
X e X X
= + − 2
h2e 0 2he 3he
0 0
1 he he
= + −
he 2 3
Assim,
1 he
Kije = Kji
e
= + .
he 6
Z xj
dφi dφi
Kiie = − + φi φi dx
xi dx dx
Z xj
d x − xi d x − xi x − xi x − xi
= − 1− 1− + 1− 1− dx
xi dx he dx he he he
Z he
d X d X X X
Kiie = − 1− 1− + 1− 1− dX
0 dX he dx he he he
Z he
1 1 2X X 2
= − − − +1− + 2 dX
0 he he he he
Z he
1 2X X 2
= − 2 +1− + 2 dX
0 he he he
" 2 3
#he
X X X
= − 2 +X − + 2
he he 3he
0
1 he
= − + he − he +
he 3
Assim,
e 1 he
Kii = − + .
he 3
Z xj
e dφj dφj
Kjj = − + φj φj dx
xi dx dx
Z xj
d x − xi d x − xi x − xi x − xi
= − + dx
xi dx he dx he he he
174
Z he
e d X d X X X
Kjj = − + dX
0 dX he dx he he he
Z he " 2
#
1 1 X
= − + 2 dX
0 he he he
Z he
1 X2
= − 2 + 2 dX
0 he he
" 3
#he
X X
= − 2 + 2
he 3he
0
1 he
= − +
he 3
Assim,
e 1 he
Kjj = − + .
he 3
Portanto,
1 he 1 he
e
− he + 3 he
+
6
K =
(8.-9)
1 he 1 he
+ − +
he 6 he 3
175
Assim,
1 h 1 h
−h + 3 +
h 6
1 h 1 h 1 h
h+6 2 − + +
h 3 h 6
1 h 1 h 1 h
+ 2 − + +
h 6 h 3 h 6
K= (8.-8)
1 h 1 h 1 h
+ 2 − + +
h 6 h 3 h 6
1 h 1 h 1 h
+ 2 − + +
h 6 h 3 h 6
1 h 1 h
+ − +
h 6 h 3
Para um nó qualquer, o elemento correspondente do vetor F é composto por duas parce-
las. A contribuição do elemento (i − 1) e a do elemento i.
176
Cáculo da contribuição do elemento i.
Z xi+1
x − xi−1
Fii =− 1− xdx
xi xi+1 − xi
Fazendo X = x − xi , dX = dx, temos:
Z h
i X
Fi = − 1− (X + xi )dX
0 h
Z h
X 2 Xxi
= − X + xi − − dX
0 h h
2 h
X X 3 X 2 xi
= − + xi X − −
2 3h 2h 0
2
h h
= − + xi
6 2
Finalmente,
Fi = Fii−1 + Fii .
Assim, os elementos de F são dados por:
2
0 1 h h h2
• Nó 1: F1 = F1 + F1 = − + · x1 = − .
6 2 6
2 2
1 2 h h h h
• Nó 2: F2 = F2 + F2 = − + x1 − + · x2 = −h2 .
3 2 6 2
2 2
2 3 h h h h
• Nó 3: F3 = F3 + F3 = − + x2 − + · x3 = −2h2 .
3 2 6 2
2 2
3 4 h h h h
• Nó 4: F4 = F4 + F4 = − + x3 − + · x4 = −3h2 .
3 2 6 2
2 2
h h h h
• Nó 5: F5 = F54 + F55 = − + x4 − + · x5 = −4h2 .
3 2 6 2
2
5 6 h h 7h2
• Nó 6: F6 = F6 + F6 = − + x5 = − .
3 2 3
x=1
du
Levando em conta os termos − φℓ o vetor F é dado por:
dx x=0
h2 du
− 6 + dx
x=0
2
−h
−2h2
F = (8.-14)
−3h2
−4h2
7 2 du
− h −
3 dx x=1
177
− 74
15
151
30
u1
151
30
− 148
15
151
30
u2
151
30
− 148
15
151
30
· u3
=F
151 (8.-13)
30
− 148
15
151
30
u4
151
30
− 148
15
151
30 u5
151
30
− 74
15
u6
− 148
15
151
30
u2 4
100
151
30
− 148
15
151
30
u3
8
100
151 · = −
30
− 148
15
151
30
u4 12
100
151
30
− 148
15
u5 16
100
+ 151
30
u2 = 0, 271926
u3 = 0, 525099
u4 = 0, 741514
u5 = 0, 904624
du
du
Das equações removidas são obtidos os valores de dx x=0
e dx x=1
.
sin x du cos x
u(x) = 2 −x ⇒ =2 − 1.
sin 1 dx sin 1
Assim, os valores exatos de du
dx x=0
e du
dx x=1
são dados por:
du du
= 1, 37679, = 0, 284185.
dx x=0 dx x=1
178
Se as condições de contorno forem:
du
u(0) = 0 e =1
dx x=1
a sentença de resı́duos ponderados é escrita como:
Z 1 2
du du
wℓ + u + x dx + wℓ −1 =0 (8.-17)
0 dx2 dx x=1
− 74
15
151
30
u1 1
150
− du
dx x=0
151
30
− 148
15
151
30
u2 4
100
151
30
− 148
15
151
30
· u3
=
8
100
151
30
− 148
15
151
30
u4
12
100
151
− 148 151 16
30 15 30 u5 100
151
30
− 74
15
u6 7
75
+1
Como u(0) é prescrito, u1 = 0, a primeira equação pode ser eliminada do sistema substi-
tuindo u1 = 0 nas outras equações, o sistema de equações se reduz a:
− 148
15
151
30
u2 4
100
151
30
− 148
15
151
30
u3
8
100
151
30
− 148
15
151
30 · u4 = 12
100
151
30
− 148
15
151
30
u5 16
100
151 74 82
30
− 15 u6 75
2 sin x
Resolvendo e comparando com a solução analı́tica, u = − x, temos:
cos 1
x Analı́tica u
0,2 0,535401 0,533529
0,4 1,041483 1,037911
0,6 1,490098 1,485158
0,8 1,855388 1,84955
1,0 2,114815 2,108663
179
du
O valor de é calculado como:
dx x=0
74 151 1 du du
− u1 + u2 = − + ⇒ = 2, 692096
15 30 150 dx x=0 dx x=0
Exercı́cios
1. Resolva a equação
d2 y
− y = 0,
dx2
(a) sujeita as condições de contorno essenciais y(0) = 0 e y(1) = 1,
dy
(b) sujeita as condições de contorno y(0) = 0 e dx x=1
= 1,
2. Resolva a equação
d2 y dy
2
− 4 − 2x = 0,
dx dx
sujeita as condições de contorno y(0) = 0 e y(1) = 1, utilizando o MEF.
3. Resolva a equação
d2 y dy
2
+ 2 + 2y = 0,
dx dx
sujeita as condições de contorno y(0) = 0 e y( π2 ) = 2, utilizando o MEF, dividindo
o intervalo [0, π2 ] em 5 subintervalos.
Respostas
dy
dy
1. (a) y2 = −, 288546481, y3 = 0, 609758603, dx x=0
= 0, 849609085 e dx x=1
= 1, 31571078.
dy
(b) y2 = 0, 219309, y3 = 0, 463444, y4 = 0, 760045 e dx x=0
= 0, 645743166.
180