Livro - Calculo Numerico
Livro - Calculo Numerico
Livro - Calculo Numerico
Cálculo Numérico
UFU
2015
Almeida, César Guilherme de
Cálculo Numérico / César Guilherme de Almeida. Uberlândia, MG
: UFU, 2015.
229p.:il.
Licenciatura em Matemática.
1. Cálculo Numérico
PRESIDENTE DA REPÚBLICA EQUIPE DO CENTRO DE EDUCAÇÃO A
Dilma Vana Rousseff DISTÂNCIA DA UFU - CEaD/UFU
COORDENAÇÃO DE TUTORIA
Janser Moura Pereira
Sumário
Informações ii
Sobre o Curso iv
Cálculo Numérico
Informações
Prezado(a) aluno(a),
Ao longo deste guia impresso você encontrará alguns “ícones” que lhe ajudarão
a identificar as atividades. Fique atento ao significado de cada um deles. Isto facilitará a
sua leitura e seus estudos.
Destacamos alguns termos no texto do Guia cujos sentidos serão importantes para sua
compreensão. Para permitir sua iniciativa e pesquisa não criamos um glossário, mas se
houver dificuldade interaja no Fórum de Dúvidas.
ii
Cálculo Numérico
Sobre o autor
iii
Cálculo Numérico
Sobre o curso
As soluções das equações resultantes (ou dos sistemas de equações resultantes) dos
modelos matemáticas, na maioria dos casos, são determinadas somente com a ajuda de
métodos numéricos. Desta forma, um curso introdutório de Cálculo Numérico é
fundamental para a formação dos profissionais que possivelmente trabalharão com
modelagem matemática.
iv
Cálculo Numérico
previsão-correção.
A seguir são apresentados os conteúdos programados para cada um dos quatro módulos
do curso:
• Isolamento de raízes.
• Método da Bissecção.
• Polinômio de Lagrange.
• Regra de Simpson.
Cálculo Numérico
Para que os alunos assimilem satisfatoriamente o conteúdo abordado neste material, a
metodologia de ensino deve conter quatro (4) etapas, descritas a seguir.
vi
Cálculo Numérico
Anotações
vii
Cálculo Numérico
Módulo 1
1. Introdução
Neste módulo você aprenderá o conceito de zero de uma função real, f: R ® R, onde
R é o conjunto dos números reais. Por definição, r é um zero de f se, e somente se, r é
raiz da equação f(x) = 0; ou seja, f(r) = 0. Um exemplo bastante conhecido é o de se
obter as raízes da equação de segundo grau: f(x) = ax2 + bx + c = 0. Os zeros da
parábola (a função f dada anteriormente) são obtidos pela fórmula de Bhaskara, que é
bastante conhecida. Se D = b2 — 4ac > 0 então os zeros reais da parábola ou,
Em geral, equações do tipo f(x) = 0 não possuem fórmulas, como a de Bhaskara, que
forneçam as suas raízes através de um número finito de operações. Por exemplo, a
equação f(x) = x - 1,5 sen(x) = 0 possui uma raiz r = 0, pois f(0) = 0 - 1,5sen(0) = 0.
Porém, a raiz positiva somente será obtida através de um método numérico que vai
gerar uma sequência infinita de números reais que se aproximará desta raiz com
qualquer precisão desejada. Uma tal sequência é dada, por exemplo, por
rn = 1,5 sen(rn-1), onde r0 = 1,3 e n e N (conjunto dos números naturais). Note que r1 =
1,5.sen(r0) = 1,5.sen(1,3) = 1,4453372278. Observe que o cálculo do seno está
retornando valores em radianos. Este será o padrão, sempre que estivermos lidando com
as funções trigonométricas.
Desta forma, a aproximação do zero de f(x) = x - 1,5 sen(x), com 9 casas decimais, é
dada por r = 1,495781568. Note que f(r) é aproximadamente - 0,19713 x 10-9. Para
estes valores serem obtidos, a sua calculadora deverá executar os cálculos em radianos
(lembre-se de que a medida de um ângulo dada em graus não representa um número
real).
Cálculo Numérico
O objetivo deste módulo será o de estudar métodos numéricos que obtenham
aproximações de zeros de uma função real. Para você ficar familiarizado com as
técnicas numéricas de obtenção de raízes de equações não lineares do tipo f(x) = 0,
serão utilizados vários recursos: resolução de listas de exercícios; leitura de materiais
didáticos e elaboração de algoritmos computacionais.
Espero que possamos fazer uma ótima parceria nesta disciplina do curso de Licenciatura
em Matemática do Plano Nacional de Formação de Professores da Educação Básica -
PARFOR.
• Isolamento de raízes.
• Método da Bissecção.
3. Isolamento de raiz
Cálculo Numérico
Duas fases são importantes para a determinação dos zeros de f: (I) isolamento das raízes
da equação f (x) = 0; (II) Geração de um processo iterativo que irá convergir para uma
determinada raiz da equação f (x) = 0. Este processo será chamado de refinamento da
raiz ou refinamento do intervalo que contém uma raiz da equação f (x) = 0.
Fase I - Localização ou isolamento das raízes
Consiste em obter um intervalo [a, b] que contém uma única raiz da equação f(x) = 0.
Nesta fase, é feita uma análise gráfica e teórica da função f. A precisão desta análise é o
pré-requisito para o sucesso da fase II. Os seguintes procedimentos são utilizados:
i) Esboçar o gráfico da função f(x) e localizar as abscissas dos pontos de interseção da
curva com o eixo horizontal (Ox). Por exemplo, se f(x ) = x3 - 9x + 3 então podemos
isolar cada uma das três raízes de f(x) = 0 nos seguintes intervalos [- 4, - 3], [0, 1] e
[2, 3]. Veja o gráfico apresentado a seguir.
40
30
20
10
r1 r3
0
-10
-20
ii) A partir da equação f(x) = 0, obtém-se uma equação equivalente g(x) = h(x) . Os
pontos de interseção das curvas g e h são os zeros de f. Isto é, g(x) = h(x) f(x) = 0.
Por exemplo, a equação f(x) = e<x) - x = 0 é equivalente à equação g(x) = e('x) = x =
h(x). Desta forma, encontramos o intervalo [0, 1] que contém a raiz de f(x) = 0. Veja o
gráfico exibido a seguir.
8
------
7
1
4 ...... h(x).
3
r
-1
!
-2L
-2 -1 0 1 2 3 4
3
Cálculo Numérico
A análise teórica consiste em usar o Teorema do Valor Intermediário ou de Bolzano
(veja, mais adiante, as referências [4, 5] - Elon Lages Lima), que será enunciado a
seguir, sem demonstração (veja o Exercício 2 no final da Seção 4).
lí
Referências
[1] ÁVILA, G. Análise Matemática para a Licenciatura, Ed.Edgard Blucher, São Paulo,
2006.
[2] ÁVILA, G. Introdução à análise matemática, Ed.Edgard Blucher, São Paulo, 1992.
[4] LIMA, E. L. Curso de análise. Volume 1. Projeto Euclides, SBM, Rio de Janeiro,
2000.
[5] LIMA, E. L. Análise real. Volume 1. Coleção Matemática Universitária, SBM, Rio
de Janeiro, 2001.
Cálculo Numérico
Interpretação Geométrica do TVI (Figura 2):
Incluindo mais uma hipótese no TVI, obtemos um outro teorema importante para o
isolamento de raízes:
Teorema 2. Seja f uma função contínua no intervalo fechado [a, b] tal que f (a) f (b) <
0. Se f'(x) existir e preservar o sinal no intervalo aberto (a, b) então existirá um único
ponto x = r entre a e b tal que f (r) = 0.
Demonstração: O TVI garante que existe r entre a e b tal que f(r) = 0. Suponha, por
exemplo, que f'(x) > 0, para todo x em (a, b). Neste caso a função f será estritamente
crescente (*) e poderá cortar o eixo horizontal (Ox) uma única vez (veja Figura 3).
(FIM) □
Cálculo Numérico
O Teorema 2 também pode ser demonstrado supondo-se, por contradição, que existam
r e s distintos tais que f(r) = f(s) = 0. Então, pelo Teorema de Rolle, existiria c entre r e
s tal que f '(c) = 0. Mas isto seria um absurdo porque a derivada de f ou é positiva ou é
negativa.
Partindo-se de I0 = [a, b], queremos obter intervalos In = [an , bn], n e N, que contêm
a raiz r da equação f(x) = 0, de modo que In c In1 e o comprimento de In tenda a
zero. Isto pode ser feito até que se obtenha uma aproximação da raiz com precisão e
prefixada.
Cálculo Numérico
Fase II - Refinamento da raiz (processo iterativo)
(i) se | rn - rn-1| < e = 0.5 x 10-s então rn será uma aproximação da raiz, r, da equação
f(x) = 0, com precisão de s casas decimais;
(ii) se
|r -r |
n n-1
< e = 0.5 x 10-s então rn será uma aproximação da raiz, r, da
1r 1
n
equação f(x) = 0, com precisão de s casas decimais;
(iii) se |f(rn)| < e = 0.5 x 10-s então rn será uma aproximação da raiz, r, da equação f(x)
= 0, com precisão de s casas decimais.
O problema descrito a seguir foi apresentado pelo professor José Manoel Balthazar para
alunos de graduação em matemática da Universidade Estadual Paulista (Unesp), Rio
Cálculo Numérico
Claro - São Paulo. A disciplina era Cálculo Numérico e o ano não me recordo muito
bem, provavelmente 1987, mas os alunos iniciaram o curso de graduação em 1986. Eu
era um deles.
Problema 1. Uma teoria sobre a a formação de nuvens diz que o surgimento de gotas a
partir da umidade do ar é facilitada pela presença de impurezas na atmosfera. Tais
impurezas são chamadas “núcleos de condensação” e agem como concentradores de
umidade e podem crescer até o tamanho de gotas de nuvens. As propriedades
importantes que determinam o crescimento destes núcleos são a curvatura de sua
superfície e a concentração molar da solução (isto é, a quantidade de sais dissolvidos na
água). Quanto menor o tamanho da gota, maior será sua tendência para evaporar;
enquanto que a maior concentração da solução faz com que as gotas cresçam. A uma
dada umidade relativa do ar, uma gota está em equilíbrio se a tendência ao crescimento
é contrabalançada pela tendência à evaporação. O diâmetro d que deve ter uma tal gota
em equilíbrio foi deduzido por Kohler e deve obedecer à equação:
Solução do Problema 1:
Cálculo Numérico
(0, 1/45), onde f '(d) < 0. O gráfico de f é côncavo para baixo no intervalo (— ¥, 1/90),
onde f ''(d) < 0 e côncavo para cima no intervalo (1/90, +¥), onde f ''(d) > 0. A seguir,
veja o esboço do gráfico da função f (Figura 5).
Problema 1 - Chuva
Para encontrar uma aproximação da menor raiz positiva, vamos utilizar a técnica de
refinamento de intervalo.
OBJETIVO: Partindo-se de I0 = [a, b], queremos obter In = [an, bn] de modo que: (1) In
c In-1; (2) f(an)f(bn) < 0 e (3) o comprimento de In é a metade do comprimento de In.x.
Isto pode ser feito até que se obtenha uma aproximação da raiz da equação f(d) = 0 com
precisão e prefixada. Vamos utilizar e = 0.5 x 10-5 e o critério de parada dado pelo valor
absoluto da função f.
A solução do exercício será obtida em quatro passos apresentados a seguir.
Cálculo Numérico
(ii) Segundo refinamento.
Sabemos que f(1/90) > 0 e f(1/60) < 0. No ponto médio, d1 = (1/90 + 1/60)/2 = 1/72,
tem-se que f(d1) > 0. Então o segundo intervalo refinado é I2 = [1/72, 1/60].
4. Método da Bissecção
10
Cálculo Numérico
Dados iniciais:
a0+b0;
x0 2 ;
, .
IteraÇão 1: f (x )> 0
a a
1 0
Iteração 2: f (x1 )< 0
“ 2= 1
b2= b1
X
0 b =x
.
f (- ) f(+) < O ; x1 ab
= 1+ 1 ;
A0
2 ■
3) k = 1.
4) x = (a + b)/2.
6) b = x.
11
Cálculo Numérico
7) Se (b - a ) < e , escolha r qualquer em [a , b]. FIM.
b0-a0
Note que <e 2(n+1) > b- a- (n+1) ln(2) > |n ()
n+1
2 £
-
b0 a0
ln (— -)
n> - 1.
ln(2)
Solução do Exercício 1:
Note que a função f é contínua e satisfaz f(1)f(2) < -. Então, utilizando a fórmula
anterior,
ln ( —
—
b- a-
- )
ln( 2 — 1 ) ln(10)
n> - 1= 10—6 - 1 = —1 + 6 - 18,93
ln(2) ln (2)
ln (2)
Seja I0 = [a0, b0], tal que f(a0)f(b0) < 0, onde f é uma função contínua. De acordo com o
Método da Bissecção, três sequências são construídas: (an), (bn) e (xn) formadas,
12
Cálculo Numérico
respectivamente, pelos extremos inferiores, extremos superiores e pontos médios dos
intervalos In = [an, bn], nos quais f troca de sinal, ou seja, f(an)f(bn) < 0.
e xn =
an +b
2
n
, com an £ xn £ bn, " n e N. Desta forma,
(i) (an) é não decrescente e limitada superiormente por bo, ou seja, an £ bo, " n e N;
(ii) (bn) é não crescente e limitada inferiormente por a0, ou seja, bn > a0, " n e N.
Agora fica faltando mostrar que fr) = 0. Com efeito, note que f é contínua e, portanto,
f(an)f(bn) < 0 lim f (an) f (bn) < 0 f (lim an) f (lim bn)< 0
n^v n^v n ^v
- f (r) f (r)< 0
Saiba Mais
que é a maior cota inferior de A (observe que M é uma cota inferior de A).
13
Cálculo Numérico
Este teorema deverá ser apresentado para você nas disciplinas “Cálculo” e “Introdução à
Análise”. As referências apresentadas na Seção 3 podem ser consultadas, também.
Saiba Mais
Observe que se a função de iteração for contínua então lim t(Xn-i) = T(lim xn_ i).
n^w n->w
Desta forma, r é um ponto fixo de j (Veja a Fig. 7), ou seja, r = j(r) f(r) = 0.
14
Cálculo Numérico
Interpretação Geométrica do Método do Ponto Fixo:
6 6
(iii) x3 + x - 6 = 0 x(x2 + 1) = 6 x= j(x) =
x2 + 1 x2 + 1
6— x 6 1
(iv) x3 + x - 6 = 0 x3 = 6 - x x= 2
x x2 x'
Nem todas as funções de iteração irão gerar processos iterativos convergentes. Por
exemplo, considerando-se x0 = 1.5, a função dada no primeiro item (i) será divergente
e a função dada no item (ii) será convergente. De fato,
15
Cálculo Numérico
T1( x )=6 - x 3; q>2( x ) = ^6 - x;
x1=6-1.53=2.625 xx = ^6-1.5 — 1.65096
x2 = 6 - 2.6253—-12.0879 x2 = 36 -1.65096 — 1.63229
x3=6-(-12.0879 )3—1772.2516 x3 = 3 6 -1.63229 — 1.63462
Cálculo Numérico
Figura 9. Comportamentos do MPF: converge (quadro 1) e diverge (quadro 2)
Teorema 3 (Condição Suficiente de Convergência do MPF). Seja r a única raiz da
equação f (x) = 0, pertencente ao intervalo I = [r - d, r + d], d > 0 . Seja j(x) uma
função de iteração para a equação f (x) = 0. Suponha que
Confronto (veja o final da Seção 4), que lim |xn — r| = 0 , ou seja, lim xn = r.
n^w n^w
□
O algoritmo do Método do Ponto Fixo é dado a seguir:
17
Cálculo Numérico
3) k = 1.
4) x1 = j(x0).
5) Se |f(x1)| < ei ou se |xi - x0| < e2, faça r = x1. FIM (critério do erro absoluto)
6) x0 = xb
Definição (ordem de convergência): Seja (xn) uma sequência que converge para um
número r e seja en = xn - r o erro na iteração n. Se existir um número p > 1 e uma
1-
constante C > 0, tais que lim
i
en+1 | |
i
C , , „ . ,
p = C então p é a ordem de convergência da
n^w. | en |
sequência e C é a constante assintótica do erro.
— | 1
lim e"+1 = I q-'(r)| Na última passagem, utilizamos o Teorema do Confronto e o
|
en
fato de j' ser uma função contínua.
Note que cn está entre xn e r e, além disto, xn converge para r. Portanto, 0 < C = |j'(r)| <
1, o que garante a convergência linear do Método do Ponto Fixo. Daí vem o outro nome
deste método: Método Iterativo Linear. □
18
Cálculo Numérico
Vamos finalizar esta seção com mais um problema retirado da lista do professor
Balthazar (mesmo estilo do Problema 1, apresentado no final da Seção 3), com
pequenas adaptações (Veja a Figura 10).
pista
Com os dados fornecidos pelo problema, podemos construir uma circunferência de raio
R (a ser determinado) e considerar o arco de 6 metros que dará origem a uma corda de 4
metros (linha de cor vermelha na Figura 11). O objetivo é encontrar a altura h (ponto
mais alto da peça transportada) para saber se o caminhão irá passar ou não pelo túnel.
19
Cálculo Numérico
É fácil mostrar que a reta que passa pelo centro da corda e pelo centro da circunferência
é perpendicular à corda (basta usar congruência de triângulos; caso Lado-Lado-Lado).
Além disto, utilizando o teorema que garante que toda reta tangente a um ponto da
circunferência é perpendicular ao raio que tem uma das extremidades no ponto de
tangência, podemos concluir que o ponto mais alto da peça transportada é a medida do
segmento de reta que passa perpendicularmente pelo centro da corda e divide o arco de
circunferência em dois arcos de mesmo comprimento (veja a Figura 11, imagem do
lado direito).
Note que o arco de 6 m corresponde a um ângulo central, digamos 2q, que tem medida,
em radianos, igual a 6/R, ou seja, 2q = 6/R; logo q = 3/R.
Problema 2
De acordo com o gráfico (Fig. 12), o ponto fixo da função j(t) = 1.5 sen(t), ou o zero da
função f, encontra-se no intervalo [1 1.5]. Para confirmar este resultado, basta utilizar o
20
Cálculo Numérico
Teorema do Valor Intermediário. É fácil verificar que f é contínua e satisfaz f(1)f(1.5) <
0.
Observe que j'(t) = 1.5 cos(t), com t pertencente ao intervalo [1 1.5]. Neste intervalo, a
função cosseno é decrescente e positiva. Portanto |j'(t)| = 1.5 cos(t) £ 1.5 cos(1) < 1. De
acordo com o Teorema 3, o Método do Ponto Fixo é convergente.
Vamos utilizar o Método do Ponto Fixo para determinar o valor do ângulo q, tal que
q = 1,5 sen(q). Para isto considere q0 = (1 + 1.5)/2 = 1.25 e calcule as demais
aproximações do ponto fixo através da sequência: qn = j(qn-1). Isto dará origem aos
seguintes valores (não se esqueça de calcular os valores da função seno em radianos):
l08 — 07l
Calculando o erro relativo, na iteração 8, obtemos: ER = t^t » 1.402031 x 10-7.
|^ |
8
Portanto, q8 é uma aproximação do ponto fixo da função j com pelo menos 6
algarismos significativos (ER < 0.5 x 10-6).
Lembre-se de que a distância da base do caminhão até a pista é igual a 1m. Portanto a
altura máxima (h) da peça que está sendo transportada somada a 1 dará
aproximadamente 2,86. Conclusão: o caminhão passa pelo túnel, mas a folga é algo em
torno de 14 cm. r
21
Cálculo Numérico
6. Método de Newton - Raphson
22
Cálculo Numérico
Demonstração: Vamos mostrar que as hipóteses do Teorema 3 valem para a função de
f (x)
iteração do método de Newton - Raphson, j(x) = x—
f (x).
Primeiramente, observe que r = j(r) f(r) = 0. Agora, note que f'(x) é contínua em I
e f'(r) 0; logo existe um intervalo Ii c I tal que f'(x) # 0, para todo x e Ii.
Agora, note que j'(r) = 0, pois f(r) = 0. Desta forma, utilizando a continuidade de j' no
ponto r, pode-se mostrar a existência de um intervalo I2 c Ii, contendo r, tal que
|j'(x)| £ M < i, " x e I2. Desta forma, as hipóteses do Teorema 3 são satisfeitas e,
portanto, o método de Newton - Raphson converge para r.
Pare e Pense
Se j' é contínua em r então dado e = M = 1/2 exite d > 0 tal que |x - r| < d —
|j'(x) - j'(r)| < M. Como j'(r) = 0 então |j'(x)| < M, para todo x e (r - d r + d). Pode-
se escolher d2 £ d, tal que I2 = [r - d2 r + d2] c Ii (intervalo mencionado na
demonstração do Teorema 4). Deste modo, |j'(x)| £ M < i, " x e I2.
3) k = 1.
4) x1 = j(x0) = x0 ( )
f x0
f(x ).
0
23
Cálculo Numérico
5) Se |f(x1)| < ei ou se |xi - Xo| < e2, faça r = Xi. FIM (critério do erro absoluto)
6) X0 = X1.
f"(cn-i) e2n-i ;
f (r+en-1) =f (r)+ f '(r)en-1 +
2! ’
en
(dn-1)- 2 e ] en
f''(dn-1) -
________ 2 Assim
(X n-1
2
en-1 ( )
f ' Xn-1
Na última passagem, utilizamos que cn-1 e dn-1 estão entre r e Xn-1 e que a função f'' é
contínua. Depois, aplicamos o Teorema do Confronto nas sequências com termos gerais
cn-1 e dn-1 para concluir que ambas convergem para r, já que Xn-1 converge para r. Isto
garantiu a convergência quadrática do Método de Newton - Raphson. □
24
Cálculo Numérico
Exemplo 3. Para verificar que o Método de Newton - Raphson converge mais rápido
que o Método do Ponto Fixo, considere a mesma equação dada no Problema 2
(apresentado no final da Seção 5), x = 1,5 sen(x) « f(x) = x — 1,5 sen(x) = 0, e o
mesmo valor inicial x0 = 1.25. As iterações serão realizadas com a função j(x) =
valores (não se esqueça de calcular os valores das funções seno e cosseno em radianos):
x1 = j(x0) = 1.579167955;
x2 = j(x1) = 1.500929896;
x3 = j(x2) = 1.495803715;
x4 = j(x3) = 1.495781569;
x5 = j(x4) = 1.495781568.
Observe que na quinta iteração o erro relativo é dado por ER = i—i » 0.066855 x
1X 1
5
10-8. Além disto, |/(xs)| = | X5 — 1,5 sen(xs)| » 0.197 x 10-9 (resultado muito menor do
que o obtido com o MPF - Confira!).
Vamos finalizar esta seção com a apresentação de um problema que foi adaptado da
Monografia de Especialização “Modelagem de Problemas de Matemática Financeira e
suas Resoluções Utilizando Técnicas Matemáticas e Computacionais ” de Leone Alves
Leite, então aluna da Faculdade de Matemática da Universidade Federal de Uberlândia.
A monografia foi apresentada, em agosto de 2005, para a Banca Examinadora composta
pelos professores Edson Agustini, Marcos Antônio da Câmara e César Guilherme de
Almeida (orientador).
Solução: Toda vez que alguém for financiar um produto, ou um bem qualquer, deve
ficar atento à equação: F . j = P. [ 1 - (1 + j)-n ], onde F é o Valor Financiado; j é a
Taxa Mensal de Juros; P é o Valor Mensal da Prestação e n é o Número de
Prestações. O mais importante é saber calcular a taxa de juros.
25
Cálculo Numérico
OBSERVAÇÕES: (i) Se x = 1 + j então a equação apresentada no início desta solução
pode ser reescrita como: F.(x - 1) = P. [ 1 - x-n], onde F = R$1.000,00 (que é o preço à
vista menos a entrada) em ambos os planos. (ii) Seja K = F/P. Desta forma, a seguinte
equação é obtida g(x) = Kxn+1 - (K + 1) xn + 1 = 0. (iii) No plano A tem-se que n = 7 e
K = 1000/250 = 4. No Plano B, n = 10 e K = 1000/200 = 5.
A equação associada ao Plano A será denotada por g(x) = 4x8 - 5 x7 + 1 = 0 e a do
Plano B será denotada por G(x) = 5x11 - 6x10 + 1.
26
Cálculo Numérico
Figura 14: Gráfico de G(x) = 5X11 - 6 x10 + 1
Como g e G são funções contínuas e g(1.1).g(1.2) < 0 e G(1.1).G(1.2) < 0 então, pelo
Teorema do Valor Intermediário, existem c e d pertencentes ao intervalo aberto
(1.1, 1.2) tais que que g(c) = 0 e G(d) = 0. Observações: g(1.1) < 0; g(1.2) > 0;
G(1.1) < 0 e G(1.2) > 0.
Vamos utilizar o Método da Bissecção para fazer dois refinamentos do intervalo Inicial
I0 = [1.1, 1.2].
Note que no ponto médio, x0 = (1.1 + 1.2)/2 = 1.15, tem-se que g(x0) < 0 e G(x0) < 0.
Então o primeiro intervalo refinado é I1 = [1.15 1.2].
27
Cálculo Numérico
Sabemos que g(1.15) < 0 e g(1.2) > 0; G(1.15) < 0 e G(1.2) > 0. No ponto médio, x1 =
(1.15 + 1.2)/2 = 1.175, tem-se que g(x1) > 0 e G(x1) > 0. Então o segundo intervalo
refinado é I2 = [1.15 1.175].
Vamos utilizar o Método de Newton - Raphson para encontrar as raízes das equações
g(x) = 0 e G(x) = 0. As iterações serão obtidas a partir da seguinte fórmula: xm = xm-1 -
[f(xm-1)/f'(xm-1)], onde x0 = 1.1625 (ponto médio do intervalo I2, dado anteriormente).
Note que o erro relativo ER2 = |x2 - x1| / |x2| » 0.0000049946 < 0.5 x 10-5. Além disto,
|g(x2)| » 0.422 x 10-8 < 0.5 x 10-8. A partir da quarta iteração, os valores de x3 serão
repetidos, caso a calculadora exiba no visor apenas 9 dígitos.
Considerando x2 (ou x3) como a aproximação da raiz desejada então a precisão será de
pelo menos oito casas decimais.
Note que o erro relativo ER4 = |x4 - x3| / |x4| » 0.052 x 10-7 < 0.5 x 10-7. Além disto,
|G(x4)| » 0.27 x 10-8 < 0.5 x 10-8. A partir da quinta iteração, os valores de x4 serão
repetidos, caso a calculadora exiba no visor apenas 10 dígitos. Considerando x4 como a
aproximação da raiz desejada então a precisão será de pelo menos oito casas decimais.
28
Cálculo Numérico
A monografia de Leone Alves Leite foi publicada, em setembro de
2005, na revista eletrônica “FAMAT em Revista”. Este artigo pode ser
Adicional Comentada encontrado no seguinte endereço:
www.portal.famat.ufu.br/sites/famat.ufu.br/files/Anexos/Bookpage/Famat_Revista_05.pdf
7. Atividades do Módulo 1
Não deixe de consultar outras referências bibliográficas, além deste material didático,
para te auxiliar na resolução das atividades propostas a seguir. Veja, por exemplo:
Enunciado da atividade
Em praticamente todos os exercícios desta lista você precisará fazer algum tipo de
gráfico; portanto, é fundamental que você recorde a teoria e as técnicas, estudadas nas
disciplinas de Cálculo Diferencial, referentes a esboço de gráfico de funções.
1) Seja f(R) = - (10/R2) + 4p R. Use algum tipo de gráfico para isolar o zero de f.
Justifique a escolha do intervalo. Faça dois refinamentos do intervalo [0.5, 1]; use o
método da bissecção.
29
Cálculo Numérico
2) Um professor da área de exatas com talento para adivinhações lançou o seguinte
desafio para os seus alunos: “eu sou capaz de adivinhar o número memorizado por
qualquer um de vocês, em no máximo sete palpites, desde que o número pensado seja
inteiro e esteja entre 1 e 100.” O professor, de fato, não era adivinhão; ele era
conhecedor do método da bissecção!
i) No método da bissecção a sequência dos pontos médios dos intervalos [an, bn], que
contêm a raiz r da equação f(x) = 0,é dada por xn = (an + bn)/2. Logo, |xn - r| £ (bn -
an)/2 £ (b - a)/2(n+1) < e. Considere e = 1/2 e obtenha n = 7 (os palpites).
ii) Justifique a seguinte afirmação: “Se fosse considerado D = 1 (ou seja |xn - r\ < 1)
não seria garantido o acerto em 7 palpites”. Observe que r é um número natural e a sua
aproximação, xn, é obtida por arredondamento simétrico.
3) Seja f(t) = t - exp(t2 - 1), onde exp(x) = ex. Observe que f(1) = 0.
ii) Se Q(t) = exp(t2 - 1), então Q'(t) = 2t exp(t2 - 1). Verifique que |Q'(t)| < 1, se 0 < t
< 1/2 (Sugestão: 0 < t < % =^> t2 < 1/4 =^> t2 - 1 < - 3/4). O M.I.L será convergente ?
4) Coloque V ou F e justifique.
i. ( ) Seja f(x) = 4sen(x) - ex = 0, com x e I = [-2p, 1/2]. Uma função de iteração pode
ser dada por: Q(x) = x - 2sen(x) + 0.5ex.
ii. ( ) Se x0 = 1 então a sequência xn = xn-1(2 - a xn-1) convergirá para 1/a, em que 0 < a
< 1, porque tal sequência será crescente e limitada superiormente por 1/a.
iii. ( ) Seja Q'(x) = 1 - 2cos(x) + 0.5ex. Como |Q'(-2p)| < 1 e |Q'(0.5)| < 1 então
|Q'(x)| < 1 , para " x e I = [-2p, 1/2].
iv. ( ) O método iterativo gerado pela função de iteração j(x) = 2x - ax2 convergirá
para a raiz da equação f(x) = (1/x) - a = 0, onde 1 > a > 0, se x0 > 2/a.
5) Seja r a única raiz da equação f(x) = 0, xe I = [r-d r+d] (intervalo centrado na raiz).
Escrevendo a equação anterior na forma equivalente - problema de ponto fixo -: x =
j(x), uma das condições (a principal) de convergência do processo iterativo dado por xn
= j(xn-1), com valor inicial x0 e I, é a seguinte: |j'(x)| £ M < 1. Esta é uma condição
30
Cálculo Numérico
suficiente. Para entender isto considere as equações: (A) x = 2/x, x > 0; (B) x=
sen(x), x e [-p/2 p/2].
ii) Mostre que o processo iterativo, proveniente de A, vai gerar uma sequência
divergente que ficará oscilando entre dois valores, qualquer que seja x0 # r. Exiba estes
valores.
iii) Mostre através de análise gráfica que o processo iterativo proveniente de B vai gerar
uma sequência convergente. Considere x0 > r.
iv) Considere x0 = -0.05 e faça algumas iterações. Observe que a sequência será
crescente e a convergência será muito lenta. O método de Newton-Raphson, que tem
convergência quadrática, apresentaria resultados muito melhores neste caso? Justifique.
Conclusão: Se j(x) não satisfaz as condições de convergência o método iterativo pode
convergir ou não; quando converge, a convergência pode ser muito lenta e, daí, o
método será ineficiente. O melhor é trabalhar com funções que satisfazem as condições
de convergência.
6) O dono de uma pequena obra exigiu que fosse gasto o mínimo possível de material
na construção de uma caixa d'água cilíndrica, com capacidade para cinco mil litros (5
m3). Este é um problema simples de otimização, onde se quer minimizar a área lateral de
um cilindro, levando-se em conta as suas bases inferior e superior. Deixando-se a área
lateral em função do raio da base, obtém-se a seguinte função: AL(R) = (10/R) + 2pR2.
i) Seja f(R) a derivada primeira de AL(R). Use um procedimento gráfico para isolar o
zero de f, justifique. Faça dois refinamentos do intervalo [0.5 1]; use o método da
bissecção.
ii) Utilize o valor inicial R0 = 0.93 e aplique o método de Newton-Raphson para obter o
zero de f(R), com erro relativo menor do que 0.5x10-6.
7) Sejam g(x) = ax2 e h(x) = cos(x). Se xd (no primeiro quadrante) é ponto de interseção
entre g e h, isto é g(xd) = h(xd), obtenha o valor de a > 0, com precisão de pelo menos
seis casas decimais, de modo que “A = 1/4”, veja a figura abaixo. Note que a área é
calculada pela seguinte integral:
31
Cálculo Numérico
x
A= J [h(x)—g(x)]dx . Use o método de Newton-Raphson.
0
ii) Faça dois refinamentos de I = [-1/2 0] (intervalo que contém a raiz de p) com o
método da bissecção. Use o ponto médio do último intervalo refinado como valor inicial
para o método de Newton. Obtenha uma aproximação com erro absoluto menor do que
0.5X10-6.
iii) Exiba uma função de iteração do M.I.L. associada à equação p(l) = 0; faça a análise
de j(l) = - (0.1 + 0.125l)1/3.
32
Cálculo Numérico
Para o caso 1 < a, a escolha de um valor inicial para o método de Newton pode ser feita
considerando-se a seguinte condição: a x0 < 2 (esta condição é um pouco menos
restritiva do que a condição obtida no item (i) anterior). O seguinte procedimento pode
ser adotado para a escolha do valor inicial. Dado a > 1 construa a sequência x0,0 = 0.005
(ou qualquer outro número próximo de zero) e x0,i = xo,i-i +10. Escolha x0 = x0,i assim
que ax0,i < 2.
ii) Faça 4 iterações com o método de Newton para obter o inverso de a = 500. Use o
processo anterior para a escolha de x0. Calcule o erro absoluto.
10) Dados o ponto (xn-1, f(xn-1)) e o coeficiente angular m = f'(xn-1), o próximo valor da
sequência gerada pelo método de Newton-Raphson é xn = xn-1 - [f(xn-1)/f'(xn-1)], obtido da
interseção da reta tangente y = f(xn-1) + m (x - xn-1) com o eixo x. Nos casos em que f'(x)
é uma função complicada (exigiria muito esforço computacional nos cálculos de
f'(xn-1)), usa-se o método de Newton Modificado: xn = xn-1 - [f(xn-1)/f'(x0)]. Note que neste
método as retas tangentes são substituídas por retas com um mesmo coeficiente angular
m = f'(x0).
11) Seja f(x) = x5 - (10/9)x3 + (5/21)x = 0; use x0 = -0.8984375 e faça duas iterações com
o método de Newton modificado. Qual a precisão da aproximação?
21
1 +P P
P=
2 (P2 P+1-
Nesta fórmula, P é a probabilidade de certo jogador A eliminar um jogador B,
vencendo-o por um placar de 21 a 0, em uma partida de raquetebol; p é a probabilidade
33
Cálculo Numérico
do jogador A rebater um saque com precisão, qualquer que seja o sacador. Qual o
valor de p dado que P = 1/2 ?
Sugestão: Use o método de Newton-Raphson. Tome como valor inicial para o método
de N-R o ponto médio do intervalo I2 (veja o item 11.2). Faça duas iterações e analise o
erro relativo.
11.4) Obtenha uma função de iteração, j(p), para o método iterativo linear (método do
ponto fixo) associado ao item anterior (exercício 11.3). Faça algumas iterações com esta
função e observe se o método irá convergir. Tente mostrar que |j'(p)| < 1.
12) Considere a figura dada a seguir. Para obter o valor de l siga as sugestões abaixo.
Sugestões:
iv) Faça os gráficos de f(H) = H(H - 16) e de g(H) = 500.(H - 8)2/H2, com H > 0.
34
Cálculo Numérico
vi) Use o Teorema do Valor Intermediário para garantir que a raiz positiva, r, de p está
no intervalo [24, 26].
vii) Faça dois refinamentos do intervalo anterior por bissecção e considere o ponto
médio do último intervalo refinado como valor inicial para o método de Newton-
Raphson. Obtenha uma aproximação de r com pelo menos 5 casas decimais.
i) Justifique por que a condição anterior (*) é muito restritiva para a escolha de um valor
inicial para o cálculo da raiz p-ésima de a ([a]1/p), através do método de Newton-
Raphson.
Sugestão: Verifique que a condição anterior vai gerar um intervalo contendo a raiz
(centrado na raiz). Atribua valores para p (variando de 2 até o infinito) e observe o que
ocorre com este intervalo.
iii) Dado um valor qualquer x0, com 0 < x0 < r, mostre que x1 = Q(x0) > r. Mostre,
também, que a condição expressa no resultado da nota anterior é válida no intervalo I =
(r, x1].
35
Cálculo Numérico
Observação: O teorema enunciado na Nota anterior é demonstrado seguindo-se os
seguintes passos:
2°) Mostra-se que: i) f(x) < 0 f''(x) < 0 f'(x) é decrescente; ii) f(x) > 0
f''(x) > 0 =^> f'(x) é crescente. O fato de f' ser crescente ou decrescente determinará
se f' será positiva ou negativa no intervalo I; tal análise dependerá do sinal de f'(r) =
limx®r [f(x) - f(r)]/[x - r].
3°) Mostra-se que: i) f(x)/f'(x) < 0, "x e I = [c, r); ii) f(x)/f'(x) > 0, "x e I = (r, d].
Conclui-se, portanto, que xn = xn-1 - [f(xn-1)/f'(xn-1)] ou é uma sequência crescente e
limitada (caso i), ou é uma sequência decrescente e limitada (caso ii).
4°) Dos passos anteriores, segue que xn-1 e I =^> xn e I. Logo, a sequência convergirá
para r.
Prezado(a) aluno(a),
Será fundamental para o bom acompanhamento deste tópico que você esteja
familiarizado com as técnicas para fazer esboço de gráfico de funções. Estas técnicas
foram estudadas na disciplina de Cálculo Diferencial. Para recordar estas técnicas
recomendo que você leia novamente o material didático que foi disponibilizado em sua
disciplina de Cálculo.
Para fazer o esboço do gráfico de uma função real você deverá recordar os conceitos de
função monótona (crescente ou decrescente) e concavidade de gráfico (concavidade
para cima e concavidade para baixo) e relacionar estes conceitos com as definições de
derivada primeira e derivada segunda de uma função f. Além disto, você tem que
recordar os conceitos de valores máximos e mínimos de função e relacioná-los com os
testes da derivada primeira ou da derivada segunda; recordar a definição de assíntota
vertical e horizontal e de ponto de inflexão.
Enunciado da atividade
(I) Leia atentamente um dos seguintes materiais didáticos sobre o método da Bissecção
e Isolamento de raízes: (1) apostila do curso; (2) Apostila do professor Castilho e slides
(Aula - Unidade 1), ambos localizados em www.portal.famat.ufu.br/node/278 e (3) livro
de Cálculo Numérico da professora Neide Maria Bertoldi Franco.
(II) Como exercício proponho que você faça os esboços dos seguintes gráficos:
36
Cálculo Numérico
1) f(H) = H(H-16), com H > 0;
Faça o esboço dos dois gráficos em um mesmo plano cartesiano. Obtenha um intervalo
fechado I = [a, b] que contenha a intersecção de f e g. Neste caso o ponto de interseção,
h, é tal que f(h) = g(h), ou seja, F(h) = f(h) - g(h) = 0. Portanto, o zero da função F
coincide com o ponto de intersecção das funções f e g.
Observações: i) g'(H) = 8.000 (H- 8)/H3; ii) g"(H) = 16.000 (12 - H)/ H4 .
3) Pontos críticos de cada uma das funções - Ponto crítico de f : H = 8; ponto crítico de
g: H = 8.
7) O Teorema do Valor Intermediário garante que o intervalo está correto pois F(a).F(b)
< 0.
37
Cálculo Numérico
Gráficos das funções da atividade 2.
Tarefa 1
38
Cálculo Numérico
Tarefa 1
Prezado(a) aluno(a),
Você já deve ter visto na disciplina de Cálculo Diferencial o enunciado do Teorema do
Valor Intermediário. A demonstração deste teorema é feita em um curso de Análise na
reta. Porém, uma demonstração construtiva deste importante resultado de Análise pode
ser elaborada com os conhecimentos que você adquiriu nas disciplinas de Cálculo
Diferencial, tais como: funções contínuas e sequências de números reais, juntamente
com os teoremas lá demonstrados. Esta construção construtiva é conhecida como o
Método da Bissecção.
Enunciado da atividade
(I) Leia atentamente um dos seguintes materiais didáticos sobre o método da bissecção:
(I) apostila do curso; (2) Apostila do professor Castilho e slides (Aula - Unidade 1),
ambos localizados na página da FAMAT: http://www.portal.famat.ufu.br/node/278 e
(3) livro de Cálculo Numérico da professora Neide Maria Bertoldi Franco.
(II) Se F(H) = f(H) - g(H), onde g(H) = 500. (H - 8)2/H2 e f(H) = H(H - 16), então F(H)
=0 p(H) = H4 - 16 H3 - 500 H2 + 8000 H - 32000 = 0.
39
Cálculo Numérico
Obtenha uma aproximação com duas casas decimais para o zero de F. Considere a
sequência formada pelos pontos médios de cada intervalo refinado, partindo do
intervalo inicial I0 = [a0 , b0] = [25.21875 25.25]. Note que as aproximações, neste caso,
devem ter pelo menos três casas decimais. Mostre que F(a0).F(b0) < 0. Como teste de
parada utilize o seguinte critério: |F(xn)| < 0.5 x 10-2, onde xn é o ponto médio do n-
ésimo intervalo refinado. Quantos refinamentos do intervalo I0 são necessários para se
obter uma aproximação com erro menor do que 10-9?
1) I1 = [25.234375 , 25.25].
2) I2 = [25.234375 , 25.2421875].
3) I3 = [25.23828125 , 25.2421875].
5) Os valores de p(xn) não estão próximos de zero, mesmo que xn esteja próximo da
raiz.
Prezado(a) aluno(a),
Dada uma equação do tipo f(x) = 0 sempre é possível reescrevê-la da forma equivalente
x = j(x), com j(x) = x - f(x), por exemplo. Neste caso, o problema de se encontrar os
zeros de uma função f (encontrar x tal que f(x) = 0) é equivalente ao problema de se
encontrar os pontos fixos da função j (encontar x tal que j(x) = x).
40
Cálculo Numérico
fixo de j. As condições suficientes de convergência são as seguintes: j e j' são
funções contínuas e | j'(x)| £ M < 1, para todo x pertencente a uma vizinhança de r.
O Método do Ponto Fixo também é conhecido como Método Iterativo Linear, devido à
|en|
sua convergência linear, ou seja, lim =C , onde |en| = |xn - r| e C é uma
n^w |en-1|
constante tal que 0 < C < 1.
Enunciado da atividade
(I) Leia atentamente um dos seguintes materiais didáticos sobre o método iterativo
linear: (1) apostila do curso; (2) Apostila do professor Castilho e slides (Aula - Unidade
1), ambos localizados na página da FAMAT: http://www.portal.famat.ufu.br/node/278 e
(3) livro de Cálculo Numérico da professora Neide Maria Bertoldi Franco.
(a) Faça os gráficos das funções h(x) = x e g(x) = 1,5 sen(x). Obtenha um intervalo que
contenha a raiz positiva de f(x) = 0. Use o Teorema do Valor Intermediário para garantir
que realmente existe uma raiz no intervalo dado.
(b) Obtenha uma aproximação da raiz positiva de f(x) = 0 com precisão de 9 casas
decimais. Use o Método do Ponto Fixo e como teste de parada use o erro relativo: ERk =
|x^.I xl 11
xk
- < 0.5 X10’9.
(c) Ajuste o intervalo encontrado, se for necessário, de modo a garantir a validade das
condições suficientes de convergência do Método do Ponto Fixo: j e j' são funções
contínuas e |j'(x)| £ M < 1, para todo x pertencente a uma vizinhança de r.
41
Cálculo Numérico
(a.1) Intervalo que contém a raiz positiva de f: [1, 1.5].
(b.1) A sequência gerada pelo MIL tem termo geral xn = 1.5 sen(xn-1); com x0 = 1.25, por
exemplo.
Observação: ERk =
Ix — x
k 1 < 0.5X10-9.
k-1
lxkl
(c.1) Note que j(x) = 1.5 sen(x) e j'(x) = 1.5 cos(x) são contínuas.
(c.2) Não se esqueça de mostrar que |j'(x)| < 1, no intervalo dado. Note que cos(x) é decrescente
e positiva no intervalo [1, 1.5].
Prezado(a) aluno(a),
Dada uma equação do tipo f(x) = 0, o Método de Newton - Raphson (MNR) tem função
f (x) f (x )f''(x )
de iteração j(x) = x — . é fácil mostrar que j'(x) = 2 • Se r
f ' (x) [f '(x )]
representa o zero de f então j'(r) = 0. Supondo que as funções f, f' e f'' são contínuas,
42
Cálculo Numérico
pode-se mostrar que |j'(x)| £ M < 1, para todo x pertencente a uma vizinhança de r;
além disto, j e j' serão contínuas, garantindo a validade das condições suficientes de
convergência para a função de iteração do MNR. Esta convergência é quadrática, ou
|el 1 If''(r)|
seja, lim n
|en-1|
2 = C , onde |ej = |xn - r| e C =
2 f '( dl|
. A grosso modo, podemos
Enunciado da atividade
(I) Leia atentamente um dos seguintes materiais didáticos sobre o método de Newton -
Raphson: (1) apostila do curso; (2) Apostila do professor Castilho e slides (Aula -
Unidade 1), ambos localizados na página da FAMAT:
http://www.portal.famat.ufu.br/node/278 e (3) livro de Cálculo Numérico da professora
Neide Maria Bertoldi Franco.
(1) O zero de f é dado por 1.495781568 (com precisão de pelo menos 8 casas decimais).
43
Cálculo Numérico
8. Atividades suplementares
oã
Atividades
Suplementares
Atividade 1
(Início da Rotina.)
(Fim da Rotina.)
44
Cálculo Numérico
(Início da Rotina.)
%Método de Newton_Raphson
%Cálculo da raiz da equação g(x) = 0
clear
pm=(a+b)/2;
fpm=funcao(pm);
VAf = abs(fpm);
cont = cont+1;
comp=(b-a)/2;
end
fprintf('\n');
x0 = pm;
45
Cálculo Numérico
f0 = fpm;
%Método de Newton_Raphson
s = 8;
cont = 0;
tol = 0.5*10A(-s); %tolerância usada no Erro Relativo
x = x0 - (f0/df0);
ER = abs((x-x0)/(x));
x0 = x;
f0 = funcao(x0);
df0 = dfuncao(x0);
VAf = abs(f0);
end
46
Cálculo Numérico
Observação: Em Octave, o nome de um arquivo que representa uma função que é
chamada em uma determinada rotina (ou código computacional) deve coincidir com o
nome que foi utilizado para a função, na rotina. Por exemplo, a função funcao(x) foi
chamada na rotina anterior (Método de Newton-Raphson) e o nome do arquivo
correspondente teve que ser funcao.m. O mesmo procedimento foi adotado para a
função dfuncao(x). O arquivo correspondente recebeu o nome de dfuncao.m
Atividade 2
A figura abaixo mostra um caso para o qual o Método da Bissecção não pode ser
utilizado (note que f(a)f(b) > 0). Já o Método de Newton-Raphson será convergente;
porém a convergência da sequência gerada por este método não é garantida pelo
Teorema 4, que foi demonstrado na Seção 6. Isto ocorre porque f '(r) = 0.
Considere f(x) = x2. Mostre que a sequência gerada pelo Método de Newton-Raphson é
convergente para r = 0. Considere x0 > 0 e demonstre que a sequência será decrescente
e limitada inferiormente por zero (xn > 0, " n e N).
47
Cálculo Numérico
Módulo 2
Sistemas Lineares
1. Introdução
Observação: A norma de matriz que faremos uso com mais frequência neste curso é
chamada de norma linha. Considerando uma matriz C de ordem n, a norma linha de C é
dada por:
n
|| C || = máximo{L1, L2, Ln}, onde Li = | cij | (que corresponde à soma dos
j=1
valores absolutos dos elementos da linha i da matriz C), 1 £ i £ n.
48
Cálculo Numérico
Para recordar, as operações elementares são 3:
Observação. A operação anterior (e2) pode ser invertida, ou seja, para recuperar a
linha i que foi alterada basta executar a seguinte operação: Li ® Li - t.Lj. Além disto,
este tipo de operação elementar não altera o valor do determinante da matriz.
(e3) Li ® t.Li, t # 0: a linha i é trocada pela linha i multiplicada por um número real t
não nulo.
Observação. A operação anterior (e3) também pode ser invertida, ou seja, para
recuperar a linha i que foi alterada basta executar a seguinte operação: Li ® (t-1).Li.
Observação. Não deixe de rever os tópicos sobre matriz inversa (Leia, por exemplo, o
material visto na disciplina de Álgebra Linear). Lembre-se de que uma matriz quadrada
A de ordem n tem inversa se existir uma matriz quadrada de ordem n indicada por A(-1)
tal que A . A(-1) = A(-1). A = I, onde I é a matriz identidade, que é formada por elementos
iguais a 1 na diagonal e elementos nulos fora da diagonal. Para obter a inversa de A,
basta resolvermos n sistemas lineares do tipo Ax(i) = b(i), onde x(i) será a i-ésima coluna
da matriz inversa e b(i) será a i-ésima coluna da identidade, 1 £ i £ n.
49
Cálculo Numérico
Conteúdos básicos do Módulo 2
x1
x2
x= x3 pode ser reescrito, em termos de equações lineares, como segue:
x4
- 1.0x1 + 0.5x2 - 0.1x3 + 0.1x4 = 0.2;
50
Cálculo Numérico
Partindo-se de um vetor inicial x(0), as iterações com o método de Jacobi são dadas por:
Nas próximas seções, apresentaremos com mais detalhes as deduções destes dois
métodos.
51
Cálculo Numérico
Exemplo 1. (Sistema equivalente) Considere o sistema linear Ax = b, onde
5 1 1 b1 5
)
x1
A = (3 -4 ; x = x2) e b = b2 8 . Então, de acordo com a notação
1 1 -2 1
x3 b3 -2
3 3
) ) )
0 0 0 5 0 0 0 1 1
anterior, obtemos: L = (3 0 D = (0 -4 ; U = (0 0
1 1 0
0 0 0-0
2 0 0 1
0
)
0 0 1
D-1 = ( 0 -1 / 4 0
-1/2
; Cj = (3/4
1/2
0
1/2
/
1 4 ) e gj = ( 8 /-4
-2/-2
= (-2
00 0 1
5 1
)
1
Exemplo 2. (Método de Jacobi) O sistema linear Ax = b, onde A = (3 -4
1 1 -1
2
x1 b1 5 1 0.95
x= x2) e b = b2 = ( 8) tem solução x = -1 . Considerando x(0) 0.95 ) ,
x3 b3 -2 1 0.95
3 3
após duas iterações com o método de Jacobi, obtemos:
52
Cálculo Numérico
Neste caso, o vetor x(k) será uma aproximação do vetor solução x com a precisão
estabelecida pela tolerância e.
llX (1)-Clímax
ER(1) 0.1/1.05 » 0.09524 < 0.5x 10 0;
|x(1)||mQx
llx (2)-x<1)ILx
ER(2) = = 0.05/1.01 » 0.049505 < 0.5x 10-1. □
llx (2)ILx
n
(xi)(k) = O- ( b ,
a11 Ea
.=2
ijx(k-1)),
1 i- 1 n
(xi)(k) a (bi-E ai.x((.k)) k E a.x;k-1)) , 2 £ i £ n - 1;
aii .=1 .=i+1
53
Cálculo Numérico
n-1
(
(x„)(k) = a bn-^ anjx j) .
nn j=1
)
Observe que a primeira equação deste novo método é idêntica a primeira equação do
método de Jacobi e, neste caso, somente as coordenadas do vetor x(k-1) são utilizadas.
Nas demais equações, os índices, j, das coordenadas do vetor x(k-1) correspondem a
índices de colunas que estão depois da posição diagonal (índices associados à matriz U
- veja o início da Seção 3.1), ou seja, i + 1 £ j £ n. A partir da segunda equação, os
valores das coordenadas do vetor atualizado x(k) também são utilizadas no processo
iterativo. Note que os índices, j, destas coordenadas correspondem a índices de colunas
que estão antes da posição diagonal (índices associados à matriz L - veja o início da
Seção 3.1), ou seja, 1 £ j £ i - 1. Este fato irá garantir a aceleração da convergência do
processo iterativo.
1 i-1 n
(xi)(k) = — (b—^ aijx(!t)— ajxj X)) , 1 £ i £ n (quando i = 1, o primeiro somatório
aii j=1 j=i+1
)
5 1 1 5 0.95
A = (3 -4 e b = ( 8 ) e x(0) = (-0.95) após duas iterações com o método
1 1 -1
2 -2 0.95
de Gauss - Seidel, obtemos:
54
Cálculo Numérico
(Xi)(1) = { 5 - 1(X2)(0) - 1(X3)(0)} - {5} = 1;
Agora, vamos calcular o erro relativo cometido na segunda iteração do método de Gauss
- Seidel e compará-lo com o erro do método de Jacobi. Antes, porém, note que o vetor
1.00375 - 1 0.00375
diferença x(2) - x(1) tem coordenadas '-0.99875 + 1.0125 ) = '0.01375 ) . Desta forma,
1.0025 - 0.99375 0.00875
||x (2)— x' Dll
ER(2) = - — = 0.01375/1.00375 » 0.0137 < 0.049505, que é o valor do erro
lx'2!.. □
relativo associado a segunda iteração do método de Jacobi.
Para estudar a convergência dos métodos iterativos vamos precisar da noção de norma
de uma matriz quadrada de ordem n. Aqui neste curso utilizaremos a norma linha de
matriz.
Definição 4 (Norma Linha de matriz). Seja C uma matriz de ordem n com elementos
cij, 1 £ i £ n e 1 £ j £ n. A norma linha da matriz C é definida como:
n
|| C ||L = máximo {L1t L2, Ln}, onde Li = |cj (que é a soma dos valores absolutos
j=1
dos elementos da linha i da matriz C), 1 £ i £ n.
55
Cálculo Numérico
Observação: No exemplo anterior, a norma linha da matriz de iteração do método de
Jacobi resultou igual a 1. Neste caso, fica um pouco mais difícil demonstrar que o
método numérico é convergente. Porém, se || C || < 1 então o método iterativo
x(k) = C x(k-1) + g sempre será convergente, independente da norma utilizada e
independente do vetor inicial x(0). Antes de enunciarmos este resultado, considere a
definição mais geral de uma norma de matriz.
(N1) 0 £ || M ||, qualquer que seja M, matriz quadrada de ordem n. Além disto, || M || = 0
se, e somente se, M = 0 (matriz nula).
(N3) || t M || = |t| || M ||, para todo número real t e para qualquer M, matriz quadrada de
ordem n.
Observação: Dizemos que uma norma de matriz é consistente com uma norma de vetor
se || Cx || £ || C || || x ||, onde C é uma matriz de ordem n e x é um vetor coluna com n
coordenadas. A norma linha de matriz, por exemplo, é consiste com a norma do
máximo de vetor, ou seja, || Cx ||max £ || C ||L || x ||max.
Demonstração: 0 £ ||x(k) - x|| = 11Cx(k-” + g - Cx - g|| = ||C(x(k-1) - x)|| £ ||C|| ||x(k-1) - x||.
Repetindo-se o mesmo argumento anterior e utilizando indução finita, obtém-se que
Como || C || < 1 então lim ||C||k = 0. Então, pelo Teorema do Confronto (veja a
Observação (**) posterior ao Exercício 2 da Seção 4 do Módulo 1), segue-se que
k+ w
k
lim ||x( )-x || = 0 ou, equivalentemente, lim x( ) = x.
k +w
k |
56
Cálculo Numérico
Critério das Linhas
Existe uma maneira prática para verificar se o método de Jacobi será convergente. Este
critério de convergência é conhecido como Critério das Linhas. Basta lembrar que os
elementos da matriz CJ estão relacionados com os elementos da matriz A do sistema
1.0 = |a11| > |a12| + |a13| + |a14| = 0.7; 0.6 = |a22| > |a21| + |a23| + |a24| = 0.5;
1.5 = |a33| > |a31| + |a32| + |a34| = 0.5; 1.0 = |a44| > |a41| + |a42| + |a43| = 0.6.
Portanto, o Critério das Linhas é satisfeito; logo o método de Jacobi será convergente.
□
Critério de Sassenfeld
1n
b = L1 = r-|
lQul j= 2
£
|a | ,
1 i -1 1 n
| |
b = ia-|
aii j=1
+ l|a-f| E
a
ii j=i + 1
N . 2 £ t < n;
57
Cálculo Numérico
b |a
ann
| £ I anj
j=1
10 j ■
Solução do Exercício 1:
nn
(x1)(k) (
- x1 = — £ a!j xj-xj -1)
a11 j=2
k ) • |(x1)(k) - x1 1 £ 7—I
a11 j=2
£ 1 11
a!j xj-xj -1) k 1
1
k
|(x1)(k) - x1| £ —— £ 1 a!j Hle( -1)Hmax = ||e(k-1)||max fr. Portanto,
a11 j=2
Por indução finita, suponhamos que |(ej)(k)| £ b ||e(k-1)||max, para todo j tal que 1 £ j £ i -1.
1 i -1 1 n
|(xi)(k) - xi| £ -----£ 1 11
aii j=1
aij xj-x(j) 1 + --a £ 1 a! | 1 x -x k-1 | ,
ii j=i+1
j j j ) 2£i £ n - 1. Portanto,
2 £ i £ n - 1. Além disto,
58
Cálculo Numérico
Conclusão: ||e(k)||max £ b ||e(k-1)||max. (Lembre-se de que b= máximo {b1, b2, ..., bn} < 1).
Portanto, por indução finita, 0 £ ||e(k)||max £ b k ||e(0)||max. Novamente, o Teorema do
Confronto garante que lim ||e(k= 0
k w k w
k
lim x( ) = x.
I—I
)
x1 b1
sistema linear Ax = b, onde A = (3 -4 , x= x2) e b = b2) = ( 8 )
1 1 -1
2 x3 -2
3 b3
Observação: Os auto-valores, l, de uma matriz C de ordem n são tais que det(C - lI)
= 0, em que I é a matriz identidade e det(C - l I) é o determinante da matriz C - lI.
Esta teoria faz parte do conteúdo da disciplina Álgebra Linear.
Referências
59
Cálculo Numérico
[1] BURDEN, R.L. e FAIRES, J.D. Análise Numérica. Tradução da 8a edição norte-americana,
São Paulo: Cengage Learning, 2008.
[2] ISSACSON, E. and KELLER, H. B., Analysis of numerical methods, John Wiley
and Sons, New York, 1982.
[3] ORTEGA, J. M., Numerical analysis; a second course, Academic Press, New York,
1972.
)
x1 b1
x = e b = b2 ) ( 8) . De fato, a matriz de iteração é dada por
x
x2 b33
-2
3
0 -1/5 1/5
CJ = (3/4 0 1/ 4 . Calculando-se det(CJ - lI) obtemos o seguinte
1/2 1/2 0
polinômio: p(l) = - l3 - (l/8) - 1/10 (Veja o exercício 8 da Atividade 1 do Módulo 1).
Uma das raízes deste polinômio pode ser encontrada pelo método de Newton-Raphson
(l1 = - 0.375713238) e as outras duas podem ser obtidas através da resolução de uma
equação do segundo grau, após a utilização do algoritmo de Briot-Ruffini:
60
Cálculo Numérico
4. Métodos Diretos baseados em Escalonamento de Matriz
Observação. A operação anterior (e2) pode ser invertida, ou seja, para recuperar a
linha i que foi alterada basta executar a seguinte operação: Li ®Li - t.Lj. Além disto,
este tipo de operação elementar não altera o valor do determinante da matriz.
(e3) Li ® t.Li, t # 0: a linha i é trocada pela linha i multiplicada por um número real t
não nulo.
Observação: A operação anterior (e3) também pode ser invertida, ou seja, para
recuperar a linha i que foi alterada basta executar a seguinte operação: Li ®(t-1).Li.
61
Cálculo Numérico
0 = (aik)(k) = aik - mik akk. Assim, mk = .
akk
Depois da etapa do escalonamento, vem a etapa conhecida como Retro-solução, que
consiste na resolução do sistema equivalente. Lembre-se de que a matriz dos
coeficientes deste sistema linear equivalente é triangular superior.
X3 = B3/U33;
Xn = Bn /unn;
1n
Xi = {
— Bi-
Uii
E
j=i +1
uíjxj }; i variando de n - 1 até 1.
Desta forma, podemos elaborar um algoritmo que contém duas partes. A primeira parte
do algoritmo transformará a matriz A do sistema linear AX = b em uma matriz triangular
superior U. A segunda parte do algoritmo obterá a solução do sistema linear
equivalente, UX = B.
O algoritmo que será apresentado a seguir está configurado para ser executado no
software Octave. Observe que os comentários que são escritos no programa devem ser
precedidos pelo símbolo de porcentagem: “%”.
Para não sobrecarregar a notação, no algoritmo exibido a seguir, sempre que uma
operação elementar (do tipo e2) for realizada, as notações para os elementos da matriz e
para os termos independentes serão as mesmas, isto é, aij e bi respectivamente. Isto
significa que ao invés de utilizarmos uma notação diferente para a matriz triangular
superior (U) e uma notação para o termo independente modificado com o
escalonamento (B) continuaremos a empregar a mesma notação original para os
elementos da matriz (a(i,j): notação usada no algoritmo) e para os termos independentes
62
Cálculo Numérico
(b(i): notação usada no algoritmo).
% Escalonamento de um sistema linear com n incógnitas
mult = (a(i,k))/a(k,k);
%Retro-solução
soma = soma + x(j)*a(i,j); %soma das demais parcelas; j variando de i+2 até n
end
63
Cálculo Numérico
Exemplo 9. (Eliminação de Gauss) Vamos utilizar o Método da Eliminação de Gauss
3 -4 1
)
x1
para resolver o seguinte sistema linear: Ax = b, onde A = (1 2 , x= x2) e
4 2
0 -3 x3
3
b1
b = b2 (0) . Primeiramente, faremos o escalonamento da matriz ampliada (A | b).
0
b3
3
-4 1 | 1
A(1) = ((m21=1/3) 10/3 5/3 | -1 /3
-4 1 I 1
A(2) = ((m21=1/3) 10/3 5/3 | -1/3
(m31=4/3) (m32=8/5) -7 I - 4 /5
Observe que a matriz triangular superior e o novo termo independente são dados por
3 -4 1 1
U = (0
0
10/3
0
/
5 3)
-7 -4/5
-/
e B = ( 1 3) . Assim, o vetor solução do sistema linear
64
Cálculo Numérico
tem as seguintes coordenadas:
*3 = B.-'U- = 4/35;
X2 = (1/U22HB2 - U23 X3} = - 11/70;
xi = (1/un){B1 - U12 X2 - U13 X3} = 3/35.
O teorema mais geral sobre este resultado conhecido como decomposição LU pode ser
encontrado em:
B
[4] FRANCO, Neide Bertoldi, Cálculo Numérico, São Paulo: Pearson
Referências Prentice Hall, 2006.
Esforço Computacional
Observe que o índice k varia de 1 até n - 1. Além disto, quando o índice i varia de k + 1
até n, uma subtração é realizada na alteração do termo independente e uma subtração é
realizada para cada índice j variando de k + 1 até n, na alteração das linhas da matriz.
Note que não estamos computando aquelas operações que produzirão elementos nulos.
Por esta razão, o algoritmo apresenta o índice j variando de k + 1 até n ao invés de
variar de k até n. Seja n_ae o número total de operações de adições e subtrações
efetuadas no escalonamento. Então
n-1 n- 1
n_ae = ^ {[n — (k + 1 ) + 1 ] + 1 }[n — (k + 1) + 1 ] =
k=1 k =1
[(n — k) + 1 ][n — k]
65
Cálculo Numérico
n-1 n-1
n_ae = Z [(n—k)2+(n—k)] = Z [(n2+n)-(2n+1)k+k2].
k=1 k=1
Sabendo que
n—1
Z k= (n —21 )n e Z k — )( — )
=(n 1 2n 1 n então n_ae = n3/3 - n/3.
k=1 k=1 6
Observe que o índice k varia de 1 até n - 1. Além disto, quando o índice i varia de k + 1
até n, uma divisão é realizada no cálculo do multiplicador e uma multiplicação na
alteração do termo independente e, para cada índice j variando de k + 1 até n, uma
multiplicação é realizada na alteração das linhas da matriz. Seja n_me o número total de
operações de multiplicações e divisões efetuadas no escalonamento. Então
n—1 n—1
n_me = Z{[n — (k + 1 ) + 1 ]+2}[n — (k + 1 ) + 1 ] = Z [(n — k)+2][n — k]
k=1 k=1
n—1 n— 1 n—1
n_me = Z [(n — k)2+2(n — k)] = Z [(n — k)2+(n —k)] + Z n — k.
k =1 k =1 k=1
Uma divisão é efetuada no cálculo da coordenada x(n). Além disto, quando o índice i
varia de n - 1 até 1, uma multiplicação é efetuada no cálculo da variável soma (primeira
parcela) e uma divisão é realizada no cálculo da coordenada x(i) ao final da variação do
índice j: de i + 2 até n. Note que para cada variação do índice j é efetuada uma
multiplicação no cálculo da variável soma (demais parcelas do somatório). Seja n_mr o
número total de operações de multiplicações e divisões efetuadas na retro-solução.
Então
66
Cálculo Numérico
n-1 n-1
n_mr = 1 + £{[n—(i + 2)+1 ] + 2} = £ (n +1—i) = (n + 1 )(n-1)- (n—21) n
i=1 i=1
2
nn
Assim, nmr = 1 + — +---- 1 = n2/2 + n/2.
22
n_ae + n_me = [n3/3 - n/3] + [n3/3 + n2/2 - (5n)/6] = 2n3/3 + n2/2 - 7n/6;
Note que A.A-1 = I (matriz identidade). Então, multiplicando-se a matriz A pela primeira
coluna de A-1 obtém-se a primeira coluna da matriz identidade; multiplicando-se a
matriz A pela segunda coluna de A-1 obtém-se a segunda coluna da matriz identidade e
assim por diante. Portanto, para se obter A-1 basta resolvermos n sistemas lineares do
tipo Ax(j) = b(j), onde A é uma matriz de ordem n; x(j) é o vetor que representa a coluna j
da matriz A-1 e b(j) é a coluna j da matriz identidade, ou seja, a coordenada j do vetor b(j)
é igual a 1 e as demais coordenadas são iguais a zero.
67
Cálculo Numérico
Exemplo 10. (Inversão de matriz) Vamos obter a inversa da matriz A =
3 -4 1
12 2 dada no Exemplo 9. Conforme os cálculos efetuados naquele exemplo,
4 0 -3
)
1 0 0 3 -4 1
tem-se que L = (1/3
4/3
1
8/5 0
1
e U = (0
0
10/3
0
/
5 3) . O primeiro sistema
-7
1 3/35
linear, com b(1) = (0 ) , já foi resolvido e obtivemos x(1) = (-11/70) , que é a
0 4/35
primeira coluna da matriz inversa. Vamos resolver os outros dois sistemas utilizando a
decomposição LU.
Sistema 2
1 0 0 y1 0 y1 0
(sistema triangular inferior) (1/3 1 0) y2) = 1)
( (y2) ( 1 );
4 /3 8/5 1 y3 0 y3 -8/5
3
3 -4 1 x1 y1 0 x1
1 )
(s. triang. sup.) (0
0
10/3
0
5 3)
-7
/ x2) = y2) = (
y3 -8/5
( x2 (13/70)
8/35
x3 x33
Sistema 3
1 0 0 y1 y1
(sistema triangular inferior) 1/3 1 0 (y2) (0) (y2) (0);
4/3 8/5 1 y3 1 y3 1
3 -4 1 x1 y1 0 x1
(s. triang. sup.) (0 10/3 5/3 ) x2) (y2) (0 ) x2) ( 1/14 )
0 0 -7 y3 1 -1/7
x33 3 x33
68
Cálculo Numérico
do escalonamento com a possibilidade de se trocar as linhas da matriz do sistema linear;
(ii) diminuição dos efeitos de erros de arredondamento.
Para motivar o estudo deste método, vejamos um exemplo que o professor José Bezerra
Leite apresentou, na primeira parte da disciplina Cálculo Numérico, para os alunos da
turma de 1986 do curso de Matemática da Unesp de Rio Claro. Esta disciplina foi
dividida com o professor José Manoel Balthazar, também professor do Departamento de
Matemática.
0.1 X 10 - 0.1 X 105 X 0.1 X 101 = 0.1 X 10 - 0.01 X 106 = 0.1 X 10 - 0.1 X 105 =
0.00001 X 105 - 0.1 X 105 = 0.000 - 0.1 X 105 = - 0.1 X 105 ;
0.2 X 10 - 0.1 X 105 X 0.1 X 101 = 0.2 X 10 - 0.01 X 106 = 0.2 X 10 - 0.1 X 105 =
0.00002 X 105 - 0.1 X 105 = 0.000 - 0.1 X 105 = - 0.1 X 105 .
1x1 + 1x2 = 2;
0.0001x1 + 1x2 = 1.
69
Cálculo Numérico
Aplicando-se o Método da Eliminação de Gauss ao sistema linear anterior, obtemos
m2i = (0.1 x 10-3)/(0.1 x 101) = 0.1 x 10-3. Após a operação elementar L2 ® L2 - m21.L1,
a matriz ampliada será dada por
0.1 x 10 - 0.1 x 10-3 x 0.1 x 101 = 0.1 x 10 - 0.1 x 10-3 = 0.1 x 10 - 0.00001 x 10 =
0.1 x 101 - 0.000 = 0.1 x 10 1 ;
0.1 x 10 - 0.1 x 10-3 x 0.2 x 101 = 0.1 x 10 - 0.02 x 10-2 = 0.1 x 10 - 0.00002 x 10 =
0.1 x 101 - 0.000 = 0.1 x 101 .
Outros exemplos deste tipo podem ser encontrado no livro da Márcia A. Gomes
Ruggiero e Vera Lúcia da Rocha Lopes:
70
Cálculo Numérico
estágio k que antecede o processo de escalonamento, o valor máximo dos módulos dos
elementos da coluna k, da diagonal para baixo. Este valor máximo será representado por
Pk = máximo {|aik|, k £ i £ n}. Se |aimax,k| for o elemento máximo e imax > k então, antes
de efetuarmos o escalonamento, a linha imax deverá ser trocada com a linha k. Se o
elemento com o valor módulo já estiver na diagonal então seguimos direto para o
processo de escalonamento, calculando-se os multiplicadores da mesma forma que no
Método de Eliminação de Gauss. O processo referente à retro-solução é exatamente o
mesmo já visto anteriormente.
Estágio 1 (k = 1):
Pivoteamento
Pi = máximo {|afx |, 1 £ i £ 3} = \aimax,i | = 4; imax = 3 > 1 = k.
3
Assim, a linha 3 deve ser trocada com a linha 1. Logo, ind = 2 e t = 1.
1
4 0 -3
Agora, temos que considerar a seguinte matriz: ( 1 2 2).
3 -4 1
71
Cálculo Numérico
Escalonamento (os elementos da matriz anterior continuarão sendo denotados por 0j)
40
A(1) = ((m21=1/ 4) 2 11/4
(m31=3 /4) —4 13/4
Estágio 2 (k = 2):
Pivoteamento
P2 = máximo {|af21, 2 £ i £ 3} = |ofmox,1| = 4; imax = 3 > 2 = k.
Assim, a linha 3 deve ser trocada com a linha 2. Logo, ind = (1) e t = 2.
2
4 0 —3
((3/4) —4
Agora, temos que considerar a seguinte matriz: 13/4 . Observe que
(1/4) 2 11/4
os valores dos multiplicadores foram trocados de lugar, porém continuam armazenados
naquelas posições que seriam ocupadas pelos elementos que foram zerados pelo
processo de escalonamento.
Escalonamento (os elementos da matriz anterior continuarão sendo denotados por 0$)
4 0
A(2) = ((3/4)
—4 13/4
(1/4) (m32=—1/2) 35/8
72
Cálculo Numérico
Observação: Se considerarmos uma matriz triangular inferior, L, formada pelos
multiplicadores que foram obtidos ao longo do processo de pivoteamento e
escalonamento e colocarmos 1 na diagonal desta matriz, obteremos:
) )
1 0 0 1 0 0 4 0 -3
L = (3/4 1 . Note que LU = (3/4 1 (0 -4 13/4 ) =
1/4 1/2 0
1 1/4 -1/2 0
1 0 0 35/8
4 0-3
(3
1
-4
2 1
2 ) = PA, onde P é o produto de matrizes de permutação (veja a
Saiba Mais
) ) )
0 0 1 1 0 0 0 0 1
P13 = (0 1 e P23 = (0 0 . A matriz P é dada por P23 P13 = (1 0
1 0 0
0 0 1 1
0 0 1 0
0
Note que o efeito de multiplicar uma matriz de permutação por uma matriz A é o de
produzir uma permutação na matriz A com as mesmas características da permutação que
foi realizada na identidade:
) ) )
3 -4 1 4 0 3 4 0 -3
PA = P23 P13 A = P23 P 13 (1 2 (1 2 (3 -4
Q
I
I
4 0 -2
3 3 4 2
1 1 2 1
2
0 0 1 3 -4 1 4 0 3
PA = P23 P13 A = (1
0
0
1 0
0 ) (1
4
2
0 -
2
3)
= (3
1
4
2 1
2 )
73
Cálculo Numérico
Saiba Mais
Observação: Como PA = LU então o sistema linear Ax = b é equivalente ao sistema
PAx = Pb, pois P é invertível (produto de matrizes invertíveis), que por sua vez é
equivalente ao sistema LUx = Pb. Utilizando um vetor auxiliar, y = Ux, podemos
resolver o sistema linear anterior em duas etapas:
Solução do Exercício 2:
0
)
0
Utilizando-se o Exemplo 12, pode-se concluir que L = (3/4 1 e U =
1/4 -1/2 0
1
-4 0 3
(0 4 -13/4 ) Para se obter a inversa da matriz A, precisaremos resolver 3
0 0 -35/ 8
sistemas lineares do tipo Axj = b(j «• PAx(j = Pb(j) «• LUx(j) = Pb(j), onde xj é o
vetor que representa a coluna j da matriz A-1 e Pb(j) é a coluna j da matriz identidade
permutada de acordo com o pivoteamento parcial (controlado pelo vetor de índices).
Como o vetor de índices, que controla as trocas de linhas, é dado por ind = 1 então,
2
v1 v3
para qualquer vetor v = v2) , tem-se que Pv = v1)
v3 v2
3 2
Sistema 1
1 0 0 1 0 0
)
y1 y1
(triangular inferior) (3/4 1 (y2) = P (0 ) = 1)
( y2) = ( 1 )
1/4 -1/2 0
1 0 0 1/2
y3 y3
74
Cálculo Numérico
x1 -3/35
(triang. superior) x2 ( 11/70 )
-4/35
x
3■
Sistema 2
1 0 0 y1 0 y1
(triangular inferior) (3/4 1 0) (y2) = P (1) (0) (y2) (0)
1/4 -1/ 2 1 y3 0 1 y3 1
-4 0 3 x1
(triang. superior) 0 4
0
--13/4)
35/8
x2) =
x3
(-13/70)
-8/35
0 3
Sistema 3
y1 0 y1
1 0 0
(triangular inferior) 3/4 1 (y2) = P 0)
(
(0) (y2) (-3/4)
0
1/4 -1/2 1 y3 1 0 y3 -5/8
3 3
-4 0 3 x1 y1 x1
(triang. superior) ( 0 4 -13/4 ) x2 (y2) -/
( 3 4)
-5/8
x2 (-1/14
1/7
0 0 -35/ 8
x33 y3 x33
75
Cálculo Numérico
Vamos considerar pontos igualmente espaçados no intervalo J, particionando-o em nt
subintervalos. Assim, ht = Dt = (T-t0)/nt e tj = t0 + jht, 1 £ j £ nt. Também iremos
considerar pontos igualmente espaçados no intervalo I, particionando-o em nx
subintervalos, assim hx = Dx = (xf - x0)/nx e xi = x0 + ihx; 1 £ i £ nx.
1
Se h = hx e V(xi) = u(xi, tj) então uxx(xi, tj) h2 { u(x,-1, tj) - 2u(xi, tj) + u(xi+1, tj) }. Esta
hx
1_
última expressão será denotada por h2 { ui-1>j - 2ui>j + ui+1,j }.
hx
(1-9)Dt
gj = tj + q Dt
qDt
Desta forma,
76
Cálculo Numérico
Além disto, 0U(tj+i) + (1 - q) U(j = U(g) + 0 Oi + (1 - 0) O2 = U(g) + O3((ht)2).
Portanto, 0 U(tf+i) + (1 - 0) U(tj) » U(g).
Considerando-se t = g e x = xi na equação do calor, obtém-se que
De acordo com os cálculos anteriores e supondo que a função uxx seja derivável no
tempo, obtemos
[u(xi, tj+1) - u(xi, tj)]/ht » K{0 ujxi, tj+1) + (1 - 0) Uxx(Xi, tj)} + 0 f(xi, tj+1) + (1 - 0) f(xi, tj).
Portanto,
1 X
Uij+1 - Uij = ht 0K h (Ui-1j+1 - 2uij+1 + Ui+1j+1) + ht (1 - 0)K h2 (Ui-1,j - 2Ui,j + Ui+1,j)
hx hx
+ ht 0f(xi, tj+1) + ht (1 - 0) f(xi, tj).
h_
Seja r = K > 0. Então
h2x
Observe que os termos que aparecem do lado esquerdo são as incógnitas e os que
aparecem do lado direito são termos conhecidos. Precisamos utilizar a condição inicial
da equação do calor para gerar o vetor inicial Uj = (Uy , U2j, uj), j = 0; n = nx - 1. As
condições de fronteira são utilizadas para ajeitar a primeira e a última equação do
sistema linear, com vetor de incógnitas Uj+1 = (U1j+1 , U2J+1, ..., Un,j+1). A matriz deste
sistema linear é estritamente diagonal dominante: |2 + 2r| > 2r = |-r| + |-r|. Portanto, o
sistema pode ser resolvido pelo Método de Gauss - Seidel. Como a matriz é tridiagonal
então é bastante simples a resolução do sistema linear por meio da decomposição LU.
77
Cálculo Numérico
sujeita às condições
A solução analítica desta equação do calor é dada por u(x, t) = exp(- p2x) sen(px).
Vamos obter aproximações de u(x,t) no tempo t = 0.5 e nos pontos x = xi, igualmente
espaçados com espaçamento hx = 0.1. Os passos de tempo terão comprimento ht = 0.01.
ht
Observe que r = K 2 = 1; nx = 10 e n = 50. Em cada passo de tempo, temos que
hx
resolver um sistema linear do seguinte tipo
u1, j+1
2(1 +p) -p 0 0 0 0 0 0 0
u2, j+1
-P 2(1+p) -p 0 0 0 0 0 0
u3, j+1
0 -p 2(1+p) -p 0 0 0 0 0
u4,j+1
0 0 -p 2(1+p) -p 0 0 0 0
u5, j+1
0 0 0 -p 2(1+p) -p 0 0 0
u6, j+1
0 0 0 0 -p 2(1+p) -p 0 0
0 0 0 0 0 -p 2(1+p) -p 0 u7, j+ 1
0 0 0 0 0 0 -p 2(1+p) -p u8, j+ 1
0 0 0 0 0 0 0 -p 2(1+p) u9, j+1
u1,j
2(1-p) -p 0 0 0 0 0 0 0 I1
u2,j
-p 2(1-p) -p 0 0 0 0 0 0 l.
u3,j
0 -p 2(1-p) -p 0 0 0 0 0 'I1.
u4,j
0 0 -p 2(1-p) -p 0 0 0 0 I4
0 0 0 -p 2(1-p) -p 0 0 0 u5,j + I5
u6,j
0 0 0 0 -p 2(1-p) -p 0 0 l6
0 0 0 0 0 -p 2(1-p) -p 0 u7,j
l7
0 0 0 0 0 0 -p 2(1-p) -p u8,j
l8
0 0 0 0 0 0 0 -p 2(1-p) u9,j
l9
Y1 = r(u0,j + u0,j+1) + ht (f(x1, tj+1) + f(x1, tj)) = r(g1(tj) + g1(tj+1)) + ht(f(x1, tj+1) + f(x1, tj));
78
Cálculo Numérico
No exemplo em questão, todas as coordenadas do vetor Y são nulas porque as
condições de fronteira são nulas e o termo de fonte é nulo.
u1,0 0.30902
u2,0
0.58779
u3,0 0.80902
u4,0 0.95106
u5,0 1.00000
u6,0 0.95106
0.80902
u7,0
0.58779
u8,0 0.30902
u9,0
Observe que a matriz do sistema linear é tridiagonal, ou seja, os elementos não nulos da
matriz estão na diagonal inferior (estes valores são todos iguais a -1), na diagonal
principal (estes valores são todos iguais a 4) e na diagonal superior (estes valores são
todos iguais a -1). Portanto, para efeitos computacionais estes valores podem ser
armazenados em 3 vetores apenas, o que gera uma economia muito grande relacionada à
memória do computador já que a quantidade de elementos nulos é muito maior do que a
quantidade de elementos não nulos.
79
Cálculo Numérico
Tabela de valores - Exemplo 13 -
Solução aproximada (Crank-Nicolson; T = 0.5) e solução analítica
xi ui (Crank - Nicolson) exp(- p2T) sen(pxi)
(solução analítica)
0 0 0
1.0 0 0
80
Cálculo Numérico
6. Atividades do Módulo 2
Enunciado da atividade
Em praticamente todos os exercícios desta lista você precisará lidar com sistemas
lineares e matrizes; portanto, é fundamental que você recorde a teoria vista sobre este
assunto na disciplina de Álgebra Linear. Esta lista contém exercícios referentes ao
conteúdo do Módulo 2: Método Iterativo de Gauss - Jacobi e de Gauss - Seidel; Método
da Eliminação de Gauss e Decomposição LU. Você tem que se esforçar para tentar
fazer todos os exercícios.
1) Seja A = (aij) uma matriz de ordem n, onde aii = -2; ai,i-1 = 1; ai,i+1 = 1 e os demais
-2 1 0 0
1 -2 1 0
elementos são nulos. Por exemplo, para n = 4, A = A é uma
0 1 -2 1
001 -2
matriz tridiagonal.
ii) Considere n =3, bt = (-1, 0, -0.5) e [x(0)]t = (0, 0, 0). Faça duas iterações com o
método de Gauss-Seidel e calcule o erro relativo. Justifique a convergência deste
método.
81
Cálculo Numérico
i) Verifique se o critério de Sassenfeld é satisfeito.
ii) Faça duas iterações com o método de Jacobi; use x(0) = (0, 0, 0, 0)T.
iii) Utilize x(2), calculado no item anterior, como valor inicial e faça uma iteração com o
método de Gauss-Seidel. Calcule o erro relativo.
21 3
3) Sejam A = (0 -1
10 1
3 ) xt = (x1 x2 x3) e bt = (9 1 3). Troque a 1a linha com a 3a
(iii) Monte o esquema numérico que certamente convergirá e faça uma iteração partindo
de [x(0)]t = (8.8 -2.7 -1.8).
1n
Li = I—I E
laiil j= 1, j*i
Kl , 1£i £n
1 i -1 1 n
b E
= TTT \aij\Pj
Iaiil j=1
+ E
|0"7
laiil j=i+1
lajl, 2£i £n e b = L1.
82
Cálculo Numérico
6) Dado o sistema linear
{ x1 + x2 = 3
Xi - 3 X2 = - 3
verifique que o critério das linhas não é satisfeito. No entanto, o método de Jacobi (e
também o de Gauss-Seidel) é convergente. Para demonstrar esta afirmação proceda
como segue.
i) Faça o gráfico de cada uma das retas representadas nas equações acima e verifique
que o ponto de interseção entre elas, (3/2, 3/2), é a solução do sistema linear.
iii) Considere x(0) = (0, 0). Mostre que x(2k) = ([xi](2k) , [x2](2k) ) é tal que [x2](2k) = [xi](2k),
ou seja os pontos da sequência que possuem índices pares estão sobre a reta y = x.
iv) Sabendo que x(i) = (3, 1), mostre que os pontos de índices ímpares estão sobre a reta
y = 2 - (1/3)x.
Sugestão: Calcule o coeficiente angular da reta que passa pelos pontos x(2k-i) e x(2k-3) e
obtenha o seguinte valor:
{[X2](2k-1) - M2k-3)}/{ [Xi](2k-1) - [Xi](2k-3)} = - 1/3.
Portanto, [x1](2k-1) - [x1](2k-3) = 2 - (4/3)[x1](2k-3). Contas análogas são feitas para [x2](2k-1).
v) Faça iterações até que se obtenha erro relativo menor do que 0.5x10-1.
vi) Coloque os pontos sobre as respectivas retas e perceba a convergência para (3/2,
3/2).
Observações: (I) a sequência de índices pares terá termo geral xn = 2 - (1/3) xn-1, com x0
= 0. Pode-se mostrar que xn = 2.{1 - 1/3 + 1/32 - 1/33 ....}, que é uma série alternada,
portanto a sequência com termo geral xn é convergente. (II) A sequência de índices
ímpares é do tipo zn = 2 - (1/3) zn-1, com z0 = 1. Pode-se mostrar que a sequência de
termo geral zn - xn é convergente e o seu limite vale zero. Logo a sequência com termo
geral zn = xn + (zn - xn) é convergente e possui o mesmo limite da sequência com termo
geral xn , que é igual a 3/2.
83
Cálculo Numérico
Ax = b (1)
um sistema linear com n equações e n incógnitas que tem como solução o vetor x*.
Resolvendo o sistema (1) obtém-se o vetor x(1) que devido a erros de arredondamento é
tal que x* - x(1) = e(1), onde e(1) é o vetor erro. Assim, x* = x(1) + e(1). Observe que
Logo, b - Ax(1) = Ae(1) . O vetor r(1) = b - A x(1) é chamado de resíduo. Com a finalidade
de obter e(1), resolve-se o seguinte sistema linear (com a mesma matriz do sistema dado
em (1)!):
Ae(1) = r(1). (3)
A solução encontrada (com erro e(2)) é denotada por e(1) = e(1) - e(2). Assim, x* = x(1) +
e(1) = x(1) + e(1) + e(2). Desta forma, é encontrada uma nova aproximação para x* (com
erro e(2)):
x(2) = x(1) + e(1). (4)
Os passos anteriores (2 a 4) podem ser repetidos até que o resíduo r(k) (depois de k
refinamentos) esteja próximo do vetor nulo, ou seja, || r(k)|| < e ( a norma do resíduo é
inferior a uma tolerância dada).
utilizado o multiplicador m21 = 0.19. Resolva o sistema (3) de maneira eficiente (como
se fosse resolver um sistema de grande porte: n muito grande, com mínimo esforço
computacional). Faça apenas um refinamento da solução e obtenha x(2). Calcule o
resíduo r(2).
8) Dado o sistema Ax = B, com xt = (x1, x2, x3) e Bt = (3, 1.1, 0), seja A(1) =
11 1
(0 0.1 1 a matriz obtida após o pivoteamento parcial que trocou a primeira linha
0 -1 1
com a terceira linha da matriz A. Os multiplicadores do primeiro passo são m21 = -1/4 e
m31 = 3/4.
84
Cálculo Numérico
ii) Exiba o vetor dos termos independentes que é utilizado na decomposição LU.
9) Dado o sistema Ax = B, com xt (x1, x2, x3) e Bt = (7, 1, -4), seja A(1) =
40 -3
(0 2 11/4 a matriz obtida após o pivoteamento parcial que trocou a primeira
0 -4 13/4
linha com a terceira linha da matriz A. Os multiplicadores do primeiro passo são m21 =
-1/4 e m31 = 3/4.
ii) Exiba o vetor dos termos independentes que é utilizado na decomposição LU.
for j = (I+2) : N
Lembrando-se de que o sistema triangular inferior é resolvido de cima para baixo e que
a matriz L possui todos os elementos da diagonal iguais a 1, escreva o algoritmo
associado ao sistema triangular inferior.
85
Cálculo Numérico
11) Quer-se determinar uma matriz B tal que A.B = C, em que
) )
3 -3 1 4 -1 9
A = (1 -1 e C = (1 -5
2 1 0
2 0 1 3
8
Prezado(a) aluno(a),
Enunciado da atividade
(I) Leia atentamente um dos seguintes materiais didáticos sobre os Métodos de Jacobi e
de Gauss - Seidel: (1) apostila do curso; (2) Apostila do professor Castilho e slides
(Aula - Unidade 2), ambos localizados em www.portal.famat.ufu.br/node/278 e (3) livro
de Cálculo Numérico da professora Neide Maria Bertoldi Franco.
86
Cálculo Numérico
5
)
1
Sejam A = (3 -4 xt = (x1 x2 x3) e bt = (7 0 0).
1 1 -1
2
(b) Faça duas iterações com o método de Gauss - Seidel partindo do vetor inicial x(0) =
(0.95 0.95 0.95)t.
l|x(2)-x(1)||max
(c) Calcule o erro relativo: Lembre-se de que
llx< Clímax
llXLx = maX {|xiL N> |x3|} •
(5) Obtenção do autovalor real de C, que é a raiz real de p(l) = - l3 - (l/8) -1/10.
87
Cálculo Numérico
Gráfico (item 5)
Utilizando o Método de Newton - Raphson com valor inicial - 0.25 obtemos a seguinte
aproximação para a raiz: li = - 0.375713238.
(7) Conclusão.
Prezado(a) aluno(a),
Você já deve ter visto na disciplina de Álgebra Linear a definição de matriz inversa
(A.A(-1) = I) . Em Cálculo Numérico, o método da Decomposição LU, obtido do Método
da Eliminação de Gauss, fornecerá a inversa de qualquer matriz A quadrada de ordem n,
que tenha determinante diferente de zero. O cálculo do determinante da matriz A
também é fornecido pelo método da Decomposição LU. Sabendo-se que L é uma matriz
triangular inferior, com elementos diagonais iguais a 1, e U é uma matriz triangular
88
Cálculo Numérico
superior então det(A) = det(U), se A = LU ou det(A) = det(U). (-1)r, se PA = LU, onde r
é o número de trocas de linhas que foram executadas ao longo do processo de
escalonamento. Note que det(U) = u11.u22 ... unn.
Enunciado da atividade
(I) Leia atentamente um dos seguintes materiais didáticos sobre o método da Eliminação
de Gauss e Decomposição LU: (1) apostila do curso; (2) Apostila do professor Castilho
e slides (Aula - Unidade 2), ambos localizados na página da FAMAT:
http://www.portal.famat.ufu.br/node/278 e (3) livro de Cálculo Numérico da professora
Neide Maria Bertoldi Franco.
3 -4 1
(II) Obtenha a inversa da matriz A = 12 2 Utilize o método de
4 0 -3
Decomposição LU obtido do Método de Eliminação de Gauss com Pivoteamento
Parcial. Neste caso você terá que resolver três sistemas lineares do tipo LU = Pb, onde L
é a matriz dos multiplicadores (que são permutados de acordo com as trocas de linhas
efetuadas); U é a matriz triangular superior obtida após o escalonamento da matriz A e
Pb é o vetor b (colunas da matriz Identidade) permutado de acordo com as trocas de
linhas efetuadas no Pivoteamento Parcial.
3 -4 1
Partindo-se de A = 1 2 2 , obtemos no primeiro estágio:
40 -3
4 0 -3
)
4 0 -3
((1/4)
(pivoteamento) (1 2 ; (escalonamento) A(1) = 2 11/4 e no
3 -4 2
1 (3/4) -4 13/4
segundo estágio obtemos:
4 0 -3 4 0 -3
(pivoteam.) ((3/4)
(1/4)
-4
2
13 4)
11/4
/; (escalonamento) A(2) = ((3/4) - 4
(1/4) (-1/2)
/
13 4)
11/4
Cálculo Numérico
4 0 -3
(3) Matriz Triangular Superior: U = (0 -4 13/4 )
0 0 11/4
b(1) = (1) (sistema 1); b(2) = (0) (sistema 2) e b(3) = (0) (sistema 3).
0 1 0
3/35 6/35
A-1 = (-11/70
4/35
13/70
8/35
/
1 14)
-1/7
7. Atividades suplementares
Sr
Atividades
Suplementares
Atividade 1
90
Cálculo Numérico
% resoluccao do sistema linear Au =B utilizando decomposição LU; discretização da
% equaccao: ut = Kuxx + f.
%Entrada de dados
t0 = 0.0;
T = 0.5;
nt= 50; %subdivisões do intervalo J
%Difusibilidade térmica
KK = 1.00;
%Comprimento da barra
L = 1.0;
%Numero de incognitas
91
Cálculo Numérico
N = ns-1;
Ht = (T - t0)/nt;
for i=1:ns+1
xx(i) = x0 + (i-1)*H;
end
ro = (KK*Ht)/(H*H);
ro_p1 = ro + 1.0;
one_ro = 1.0 - ro;
for i = 1 : N
diag(i) = 2.0*ro_p1;
ds(i) = -ro;
di(i) = -ro;
end
%Decomposicao LU
for i = 1 : N-1
mult = di(i)/diag(i);
di(i) = mult;
diag(i+1) = diag(i+1) - mult*ds(i);
92
Cálculo Numérico
end
for j = 1:nt+1
u_fe(j) = ge_fr(tt(j));
u_fd(j) = gd_fr(tt(j));
end
for j = 1:nt
%calculo do termo independente
for i = 2:N-1
y(1) = B(1);
for i = 2:N
y(i) = B(i) - di(i-1)*y(i-1);
end
93
Cálculo Numérico
%FIM
%Retro-soluccao - Sistema Triangular Superior
uj(N) = y(N)/diag(N);
for k = 1:N-1
uj(N-k) = (y(N-k) - (ds(N-k)*uj(N-k+1)))/diag(N-k);
end
for i = 1:N
uj0(i) = uj(i);
end
end
% FIM do código
function g = q_inic(x)
g = sin(pi*x);
end
function g = ge_fr(t)
g = 0;
end
94
Cálculo Numérico
(3) arquivo gd_fr.m (condição de fronteira direita):
function g = gd_fr(t)
g = 0;
end
function g = f_fon(x,t)
g =0;
end
Atividade 2
Atividade 3
95
Cálculo Numérico
Módulo 3
Ajuste de curvas;
Interpolação Polinomial e
Integração Numérica
1. Introdução
Neste módulo você irá estudar o Método dos Quadrados Mínimos, que é muito utilizado
para aproximar uma função f(x), x e I = [a, b], ou para aproximar (ou ajustar) os dados
de uma tabela com m pontos (xk, yk), 1 £ k £ m, por meio de uma função pré-
estabelecida F(x). No caso discreto (pontos dados por meio de uma tabela), se a função
de ajuste for do tipo F(x) = vigi(x) + V2g2(x) + ... + Vngn(x), onde v = (vi, V2, ... , Vn) é
um vetor de parâmetros, então o Método dos Quadrados Mínimos consiste em resolver
um sistema linear Aa = b, cuja solução é o vetor de parâmetros a = (ai, a2, . , an) que
m
minimiza a função E = E(v) = £ (0(xj — yk)2
k=i
. Os elementos da matriz A são
m
dados por aij = aji = £ g (xk) g (xk)
k=i
i j e as coordenados do vetor b são dadas por bi =
m
£ yk gi( xk ).
k=i
Desta forma, os métodos desenvolvidos para resolver sistemas lineares
Dada uma função real f: I = [a, b] c R ® R e dados n + 1 pontos, xo, xi, xn, no
intervalo fechado I, dizemos que o polinômio de grau igual a n ou de grau menor do que
n, pn(x) = ao + aix + . + an xn, é o polinômio interpolador associado à função f se pn(xi)
= f(xi), para todo i, o £ i £ n. Observe que as n + i equações anteriores dão origem a um
sistema linear de ordem n + i. A matriz deste sistema linear é conhecida como matriz de
Vandermonde e possui determinante dado por det(V) =
96
Cálculo Numérico
n- 1 n
n n (xi — xj)= n
j = 0 i = j+1 0<j<i<n
(x~ xj) . Por exemplo, se n = 3 então det(V) = (x1 - X0).
(x2 - x0).(x3 - x0). (x2 - x1).(x3 - x1).(x3 - x2). Desta forma, se os pontos forem distintos
dois a dois, isto é, xi # xj para i # j, então det(V) # 0 e, portanto, existirá um único
polinômio interpolador (pois o sistema linear possuirá uma única solução, que
corresponde aos coeficientes do polinômio interpolador).
No caso de três pontos distintos de interpolação, X0, X1 e X2, a função f, com valores f(x0),
f(x1) e f(x2), terá o seguinte polinômio interpolador de Lagrange:
T ()= (
x—x0 x—x1 )(
L2(x)= (x2 — x0)( x2 — x1) •
)
O polinômio de Newton será dado por: p2(x) = d0 + d1(x - x0) + d2(x - x0)(x - x1), onde
( ( )
f x 1) — f x0
d0 = f(x0); d1 = f[x0, x1] =
—
x 1 x0
Ao aproximar uma função por um polinômio será cometido um erro (E), chamado de
erro de interpolação. Digamos que f(x) = pn(x) + E(n)(x). Então a integral de f pode ser
97
Cálculo Numérico
b b b
escrita como: J f (x) dx = J pn(x) dx + J E( (x) dx ) . Neste caso dizemos que
a a a
b
E(n)(x) é o erro de interpolação e J E n (x) dx
( ) é o erro de integração.
a
Observação. Não deixe de rever os tópicos relacionados a polinômios (Leia, por
exemplo, o material visto na disciplina Fundamentos da Matemática elementar I).
Considerando-se uma partição de pontos igualmente espaçados do intervalo [a, b], x0,
xi, Xm, onde Xi = X0 + ih, h = (b - a)/m, as duas regras de integração, com os
respectivos erros de integração, são dadas por
Etr = - mh f"
12
(c) , c e [a, b];
m pode ser qualquer número inteiro positivo.
São dois os objetivos deste módulo: (i) aproximar uma função real utilizando ajuste de
curvas ou interpolação polinomial. Em ajuste de curvas, estudaremos o Método dos
Quadrados Mínimos, que é utilizado para aproximar funções ou para ajustar os pontos
de uma tabela através de uma função pré-estabelecida. Em interpolação polinomial,
estudaremos os polinômios de Lagrange e de Newton. (ii) aproximar a integral de uma
função real pela integral do polinômio interpolador desta função. Para você ficar
familiarizado com os métodos numéricos apresentados neste módulo, não deixe de
resolver os exercícios propostos e não deixe de ler as referências bibliográficas
indicadas neste texto e outras que você achar conveniente.
98
Cálculo Numérico
• Existência e unicidade do polinômio interpolador.
• Polinômio de Lagrange.
• Regra de Simpson.
99
Cálculo Numérico
Existe, claramente, um comportamento linear dos pontos exibidos no diagrama de
dispersão desta tabela. Esta análise nos leva a acreditar que a função de ajuste seja uma
reta, ou seja, F(x) = vi + V2x. Portanto, gi(x) = 1 e g2(x) = x. □
- -
- -
O Método dos Quadrados Mínimos para o caso discreto do Modelo Linear de Ajuste de
Curvas consiste em determinar o vetor ótimo de parâmetros a = (ai, a2, ... , an) que irá
m
minimizar a função erro: E(v) = (0(xj — yk)2 , onde F(x; vi, V2, .., Vn) = vigi(x)
k=1
+ V2g2(x) + ... + Vngn(x). Note que E é uma função de n variáveis reais, ou seja,
E: Rn • R.
Mostraremos que o vetor ótimo de parâmetros, a = (ai, a2, . , an), é aquele que anula
/dE dE dE
o gradiente da função E: VE(a) =
(
(ão;• sa2• ••• ’ãan) = °’0’-’0 • Observe )
que
()
dE v = d([^( x )
k ])
yk , para cada i variando de 1 até n.
d Vi k=1 d Vi
100
Cálculo Numérico
Observação: Lembre-se de que ao fazer a derivada parcial em relação à variável vi
todas as outras coordenadas do vetor v = (vi, V2, vn) permanecem constantes.
Portanto,
dE (a) = 0
dai ~
m n
EEa g (x ) g (x ) = E y g (x ).
j j k i k
m
k i k
k =i j =i k=i
n m m
Ea E g (x )g (x ) = E y g (x )
j=1
j
k=1
j k i k
k=1
k i k >1 £ i£n.
Se você ainda não percebeu que isto é um sistema linear nas incónitas ai, a2, ... , an,
então considere o caso particular n = 2 e note que as equações anteriores são dadas por:
m m m
a E g (x )g (x ) + a E g (x )g (x ) = E y g (x )
i
k =1
i k i k 2
k =1
2 k i k
k=1
k i k ;
m m m
a E g ( X ) g ( XJ + a E g ( X ) g ( XJ = E y g ( X )
i
k=i
i k 2 2
k=i
2 k 2
k=i
k 2 k .
= (aii a12
Neste caso, o sistema dois por dois possui matriz de coeficientes A (a2i
, onde
a22
m m m
a11 = E g (xk) g (xk);
k=1
1 1 a12 = a21 = E g (X ) g ( X ) ;
k =i
2 k 1 k a22 = E g (X )g (X )
k =i
2 k 2 k e
m
bi
E y g (X )
vetor de
m
termos independentes b
b2 , , onde bi =
k=i
k i k e
b2 = E y g ( x ).
k=i
k 2 k No caso geral, o sistema n x n possui matriz A de ordem n,
m
101
Cálculo Numérico
Exercício 1. (Matriz Hessiana da função E(v)) Sabendo que
m
d E (v) _
d vi
2 E[v g (x )+ ••• + v g (x ) + ••• + v g (x )- y ]g (x )
k=1
i i k j j k n n k k i k obtenha a
matriz Hessiana da função E(v), a qual é composta pelas derivadas de ordem 2
d2 E (v)
2 , 1 £ i £ n, 1 £ j £ n.
d vv
Solução do Exercício 1:
Note que
d2 E ( v ) = 2 y d{[ v g ( x ) + ••• + v g ( x ) + ••• + v 9 ( X ) - y ] 9 ( X )}
1 1 k j- j k n n k k i k
d2vjvi k=! dv j
m
d2 E (v) d2 E (v)
Assim, 2 yg (x )g (x )= 2a
j k i k ij = Portanto, a Matriz Hessiana
dv v j i k=1 d vv'
da função E(v) é H(E(v) = 2A, onde A é a matriz do sistema linear (apresentado antes do
Exercício 1) oriundo do Método dos Quadrados Mínimos. O
Solução do Exercício 2:
Seja w um vetor coluna não nulo com n coordenadas reais. Então, de acordo com a
hipótese do exercício, Sk = w1g1(xk) + w2g2(xk) + . + wngn(xk) # 0. Portanto, (Sk)2 > 0.
n n nn
Assim, 0 < (Sk)2 = ( y w g (x )) (yw g (x ))
i=1
i i k
j=1
j j k = yy w g (x )w g (x )
i=1 j =1
i i k j j k (na
m
0< yyyw g (x )w g (x )
k =1 i =1 j=1
i i k j j k y w y (y g (x )g (x ))w
i=1
i
j=1 k=1
i k j k j
yw ya w)
n n
= i ij j = wtAw .
i=1 j=1
Portanto, a matriz A é definida positiva.
102
Cálculo Numérico
Observação: O desenvolvimento de Taylor da função E: Rn R em torno do ponto a
= (ai, a2, ... , an) é dado por
Iàí
[i] LIMA, Elon Lages, Curso de Análise Volume 2 (Projeto Euclides).
Rio de Janeiro, Instituto de Matemática Pura e Aplicada, CNPq, 2000.
Referências
Síntese
O Método dos Quadrados Mínimos para o caso discreto do Modelo Linear de Ajuste de
Curvas consiste em determinar o vetor ótimo de parâmetros a = (ai, a2, ... , an) que irá
m
minimizar a função erro: E(v) = £ ($(xk) — yk)2
k=i
, onde F(x; vi, v2, .., vn) = vigi(x)
+ v2g2(x) + ... + vngn(x). Para isto, basta resolver os sistema linear Aa = b, onde os
m
elementos da matriz A são dados por aij = aji = £ gi(xk)gj(xk)
k=i
e as coordenados do
m
vetor b são dadas por bi = £ y g (x ).
k=i
k i k
i03
Cálculo Numérico
6 6 6 6
an = E g 2 (x ) = E 1 = 6
k=1
i k
k=1
; ai2 = a2i = E1 g2 (x ) g1(x ) = E1 x
k=
k k
k=
k = 163^9 ;
6 6 6 6
a22 = Eg2(x ) = E x
k=1
k
k=1
k = 4481.59 ; bi = Ey 9 (x ) = Ey
k=1
k 1 k
k=1
k =166.8 e
66
b2 = Ey d (x ) = E1 y x
k=1
k 2 k
k=
k k = 4560.48 .
O Modelo de Ajuste de Curvas é dito não linear sempre que a função de ajuste não
estiver no formato F(x; vi, V2, vn) = vigi(x) + V2g2(x) + ... + vngn(x).
Fonte: IBGE - Censos Demográficos 1950, 1960, 1970, 1980, 1991, 2000 e 2010
104
Cálculo Numérico
parâmetros vi, V2, vn, procuramos uma função L tal que L(F(xk)) = wigi(x) + W2g2(x)
+ ... + Wngn(x). Assim, L(F) é linear nos novos parâmetros wi, W2, ..., Wn. Obtida a
linearização L, a próxima etapa consiste em considerar uma nova tabela com pontos
(xk, zk), onde zk = L(yk), 1 £ k £ m. O Método dos Quadrados Mínimos aplicado ao
problema linearizado produzirá um sistema linear: Aw = B, onde os elemento de A são
m
dados por aij = aji = E gi(xk)gj(xk)
k=1
e as coordenados do vetor B são dadas por bi =
m
E z g (x ).
k=1
k i k
---------- 1-----------
- í
- o -
- -
0
0
0 -
(1) F(x) = 1/(a + cx); L(F(x)) = 1/(F(x)) = a + cx; gi(x) = 1 e g2(x) = x. Neste caso,
os parâmetros de F e L(F(x)) são os mesmos: vi = a e v2 = c.
105
Cálculo Numérico
(2) F(x) = x/(a + cx); L(F(x)) = 1/(F(x)) = a(1/x) + c; g1(x) = 1/x e g2(x) = 1. Neste
caso, os parâmetros de F e L(F(x)) são os mesmos: v1 = a e v2 = c.
(3) F(x) = 20 + [1/(a + cx)]; L(F(x)) = 1/(F(x) - 20) = a + cx; g1(x) = 1 e g2(x) = x.
Neste caso, os parâmetros de F e L(F(x)) são os mesmos: v1 = a e v2 = c.
(4) F(x) = y*/(c.e(-ax) + 1), onde y* é uma constante dada; a e c são parâmetros a serem
determinados; v1 = c e v2 = a; L(F(x)) = ln([y*- F(x)]/F(x)) = ln(c) - ax. Assim, os
novos parâmetros são wi = ln(vi) e W2 = - V2; gi(x) = 1 e g2(x) = x. Note que: vi =
exp(w1) e v2 = - w2.
1
(5) F(x) = 20 + 2 ; vi = a e V2 = c; L(F(x)) = 1/(F(x) - 20)2 = a2(1 + cx2) =
a v1 +cx
a2 + a2cx2. Assim, os novos parâmetros são wi = (vi)2 e W2 = (vi)2v2 ; gi(x) = 1 e
V
g2(x) = x2. Note que: vi = ± w1 e V2 = w2/wi.
(i) Ao invés dos pontos (t, y), considere os pontos (x, y), onde x = (t - 1950)/10. Faça
um ajuste dos pontos desta nova tabela utilizando uma família de curvas exponenciais
do tipo F(x; vi, v2) = vi.exp(v2.x). Estime a população de Uberlândia em t = 2010.
106
Cálculo Numérico
(ii) Seja y* = 838.9i6 (estimativa obtida no item (i) anterior). Considere uma família de
curvas do tipo logística F(x) = y*/(c.e(-ax) + i) para ajustar os pontos da tabela, conforme
o item (i) anterior. Obtenha uma estimativa da população de Uberlândia em t = 20i0.
Solução do Problema 1:
x= 0 1 2 3 4.1 5
(t - 1950)/10
y 54.984 88.282 126.112 240.96 367.062 501.214
(Habitante
1
X 103)
Como F(x; vi, v2) = vi.exp(v2.x) então a linearização é dada por L(F(x)) = ln(F(x)) =
ln(vi) + x.v2. Assim, os novos parâmetros são wi = ln(vi) e w2 = v2; gi(x) = 1 e g2(x) =
x. Note que: vi = exp(wi) e v2 = w2.
A tabela que será utilizada no modelo linearizado tem pontos (xk, zk), onde zk = ln(yk),
1 £ k £ 6. Considerando-se 4 casas decimais, obtemos os seguintes valores: zi = 4.0070 ;
z2 = 4.4805; z3 = 4.8372; z4 = 5.4846; z5 = 5.9055 e z6 = 6.2170.
mm
A=
(
6.00
15.10
15.10
55.81), onde aii = S g (x ) g (x )’
k =1
1 k 1 k ai2 = a2i = S g (x ) g (x )>
k=1
2 k 1 k
m
a22 = S g (x )g (x ) e b = 30.9318
k=1
2 k 2
85.9063
k (considerando apenas 4 casas decimais),
mm
onde b = S z g (x ) e b = S z g (x )
i k 1 k 2 k 2 k
k=1 k=1
107
Cálculo Numérico
(ii) Seja y* = 838.916. Como F(x) = y*/(c.e(ax) + 1) então vi = c e v2 = a; L(F(x)) =
ln([y*- F(x)]/F(x)) = ln(c) - ax. Assim, os novos parâmetros são wi = ln(vi) e W2 =
- v2; gi(x) = 1 e g2(x) = x. Note que: vi = exp(wi) e v2 = - W2.
A tabela que será utilizada no modelo linearizado tem pontos (xk, zk), onde zk =
ln([y*- yk]/yk), 1 £ k £ 6. Considerando-se 5 casas decimais, obtemos os seguintes
valores: zi = 2.65728 ; Z2 = 2.14038; Z3 = 1.73204; Z4 = 0.90888; Z5 = 0.25114 e
Z6 = - 0.39487.
Teste de alinhamento
Dadas uma tabela de pontos (xk, yk), 1 £ k £ m, yk sendo aproximado por uma função
F(xk; vi, v2), que não é linear em seus parâmetros, e uma linearização L, tal que
L(F(xk)) = wi + w2g2(x), o teste de alinhamento consiste em verificar se o diagrama de
dispersão dos pontos (g2(xk), L(yk), 1 £ k £ m, assemelha-se a uma reta. Quanto mais
alinhados estiverem os pontos do diagrama, mais adequada será a linearização.
108
Cálculo Numérico
Observação: Todas as funções de linearização exibidas no Exemplo 4 podem ser
avaliadas de acordo com o teste de alinhamento.
Xk 2 5 8 10 14 17 27 31 35 44
e as funções: F1(X) = i/(a + cX); F2(X) = X/(a + cX); F3(X) = a.eXp(X.c); qual é a melhor
família de curvas para ajustar estes pontos?”
(i) (Xk, i/yk); (2) (i/Xk, i/yk); (3) (Xk, ln(yk)); i £ k £ i0.
i09
Cálculo Numérico
Figura 3 - Módulo 3. Teste de alinhamento - Exemplo 5
Para ficar mais evidente o alinhamento, o segundo ponto da tabela, (5, 98.8), foi
retirado. Analisando-se os diagramas produzidos pelo teste de alinhamento, fica claro
que o ajuste exponencial irá produzir o melhor ajuste dos pontos. Se a dúvida persistir, o
ideal é aplicar o Método dos Quadrados Mínimos no problema linearizado e comparar o
m
valor mínimo de cada uma das funções erro E = £ (0( x )— y )2
k=i
k k
ii0
Cálculo Numérico
b
Aa = b onde os elementos da matriz A são dados por aij = aji J 9 (x) 9 (x) dx
i j e as
b
coordenados do vetor b são dadas por bi = J f (x)gi(x) dx; 1 £ i £ n e 1 £ j £ n.
a
Exercício 3. (Caso Contínuo - Modelo Linear) Seja f: [0, 2p] R uma função
contínua. Obtenha os parâmetros ótimos da família F(x) = v0 + vi cos(x) + v2 cos(2x)
+ ... + vn cos(nx) + wi sen(x) + W2 sen(2x) + ... + Wn sen(nx), x e [0, 2p], que melhor
aproxime a função f no sentido do Método dos Quadrados Mínimos.
Solução do Exercício 3:
(1, 1) (1, cos ( x)) (1, cos( 2x)) (1, sen( x)) (1, sen (2x))
(cos( x), 1) (cos(x) , cos ( x)) (cos( x) , cos(2x)) (cos(x) , sen( x)) (cos( x) , sen (2x))
A= (cos (2x) , 1) (cos(2x ), cos(x)) (cos(2x) , cos(2x )) (cos(2x ), sen( x)) (cos (2x) , sen( 2x))
(sen( x) , 1) ( sen( x) , cos( x)) ( sen( x) , cos(2x)) ( sen(x) , sen(x)) (sen(x), sen(2x ))
(sen (2x) , 1) ( sen(2x ), cos (x )) (sen(2x) , cos(2x )) ( sen(2x ), sen( x)) ( sen(2x ), sen (2x))
(1, f ( x))
(cos(x), f (x))
b= (cos(2x), f (x))
(sen(x), f (x))
(sen(2x), f (x))
111
Cálculo Numérico
1 do vetor b estão associadas à função gi (x) = cos(ix) e ao parâmetro vi ; 1 £ i £ n; a
linha j + n + 1 (coluna j + n + 1) da matriz A e a coordenada j + n + 1 do vetor b estão
associadas à função gj(x) = sen(jx) e ao parâmetro wj ; 1 £ j £ n.
Sabendo que
cos(x + y) = cos(x)cos(y) - sen(x)sen(y);
cos(x - y) = cos(x)cos(y) + sen(x)sen(y);
2n
Desta forma, an = J 12 dx = 2p e os demais elementos da linha 1 são nulos porque
0
2n
Jcos(ix).1 dx = (1/i) [ sen(i.2p ) - sen(i.0)] = 0 e
0
2n
Jsen( jx).1 dx = (- 1/j) [ cos(j.2p ) - cos(j.0)] = 0; 1 £ i £ n; 1 £ j £ n.
0
112
Cálculo Numérico
2n 1. 2 n
J cos(ix)sen(jx)dx = —
20
J
sen((j+ i)x) + sen((j-i)x) dx = 0 (veja os
0
Os demais elementos desta linha são nulos porque já foi mostrado que
2n
J cos(ix ) sen ( jx) dx = 0, quaisquer que sejam i e j. Além disto,
0
2n 2n
Jsen(jx) sen (lx) dx J
- cos(( j-1) x)- cos((j+1) x) dx = 0,
0 20
1 £ j £ n; 1 £ 1 £ n; j # 1.
Desta forma, é fácil concluir que as coordenadas do vetor ótimo de parâmetros são
dadas por
2n 1 2n 1 2n
vo =
nJ ( )
2n f x dx ;
2 0
vi n J f(x)cos(ix) dx
0
J() (
w = n f x sen jx) dx ;
0
1 £ i £ n; 1 £ j £ n. □
Os parâmetros ótimos são conhecidos como coeficientes de Fourier. Para saber mais
consulte a referência abaixo
113
Cálculo Numérico
4. Interpolação Polinomial
Dada uma função real f: I = [a, b] c R ® R e dados n + 1 pontos, xo, x1, xn, no
intervalo fechado I, dizemos que o polinômio de grau igual a n ou de grau menor do que
n, pn(x) = a0 + a1x + . + anxn, é o polinômio interpolador associado à função f se pn(xi)
= f(xi), para todo i, 0 £ i £ n. Observe que as n + 1 equações anteriores dão origem a um
sistema linear de ordem n + 1. A matriz deste sistema linear é conhecida como matriz de
Vandermonde. Para o caso particular n = 3, a matriz de Vandermonde é
2 3
1 x0 x0 x0 f ( x0)
2 3
1 x1 x1 x1 f ( x1)
V= 2 3 e o vetor de temos independentes é B = . Neste caso, o
1 f ( x2)
x2 x2 x2
1
2
x33 3 f ( x3)
x3 x3
determinante de V é igual a (x1 - x0).(x2 - x0).(x3 - x0).(x2 - x1).(x3 - x1).(x3 - x2).
C4 - . +1 C4 - k +1 - xo.Ct-., com 1 £ k £ 3.
Note que tais operações não alteram o determinante de V. A partir deste fato e utilizando
o desenvolvimento de Laplace, pela primeira linha, para o cálculo de determinantes e a
propriedade que diz que se uma linha qualquer de uma matriz M for multiplicada por
um número real t não nulo gerando uma matriz M' então det(M') = t det(M), obtemos:
2 3
1 x0 x0 x0 1 0 0 0
2 3 1 (x1—x0) x1(x1—x0) x12(x1—x0)
1 x1 x1 x1
det(V) = 2 3
1 1 (x2—x0) x2(x2—x0) x22(x2—x0)
x2 x2 x2
2 3 1 (x3— x0) x3(x3—x0) x32(x3—x0)
1 x3 x3 x3
114
Cálculo Numérico
xi2(xi-xo) 2
(xi-xo) xi(xi-xo) i xi xi
x22(x2-xo) 2
(x2-xo) x2(x2-xo) = (xi - xo).(x2 - xo).(x3 - xo). i x2 x2
x32(x3-xo) 2
(x3-xo) x3(x3-xo) i x3 x3
1 x2
= (x1 - xo).(x2 - xo).(x3 - xo).(x2 - x1).(x3 - x1). 1
x3
n-1 n
No caso geral, será mostrado que det(V) = nn( x, -
j=o i= j+1
Xj )= n
o<j<i<n
( xi- xj ) . Desta
forma, se os pontos forem distintos dois a dois, isto é, x, # xj para i # j, então det(V) # o
e, portanto, existirá um único polinômio interpolador (pois o sistema linear possuirá
uma única solução, que corresponderá aos coeficientes do polinômio interpolador).
Seja V uma matriz de ordem m + i que tenha a mesma estrutura de uma matriz de
Vandermonde, isto é, os seus elementos são construídos da mesma forma que os
elementos da matriz de Vandermonde. Note que tal matriz tem elementos iguais a i na
primeira coluna. Se a segunda coluna desta matriz for composta pelo vetor v = (vi, v2,
., vm+i), com coordenadas distintas duas a duas, então a coluna j desta mesma matriz,
com 2 < j £ m + i, será composta pelo vetor ([vi]j-i, [v2]j-i, ., [vm+i]j-i).
ii5
Cálculo Numérico
Suponha que exista um número natural n > i tal que toda matriz V de ordem m + i, com
a mesma estrutura de uma matriz de Vandermonde, possua determinante dado por
m m+i
nn( v — v )= n (v — v ) >
j = 1 i = j+1
i j
1< j <i<m+1
i j para 1 £ m £ n - 1.
n n+1
n— 1 n
Para isto, considere as seguintes operações elementares efetuadas nas colunas da matriz
V:
Cn-k+1 Cn-k+1 - xo.Cn-k, com 1 £ k £ N - 1.
Note que tais operações não alteram o determinante de V. De acordo com a formação
dos elementos desta matriz, após a execução de cada uma das operações elementares
anteriores, a coluna CN-k+1 passará a ter, na posição i + 1, 0 £ i £ N - 1, o seguinte
elemento: [xi]N - k - x0.[xi]N - k - 1 = [xi]N - k - 1 (xi - x0). Portanto, o primeiro elemento de cada
uma das colunas anteriores (i = 0) será nulo. Desta forma, a linha i + 1 da matriz V1
obtida após a execução das operações elementares será formada pelos elementos
uma matriz de ordem n que tem a mesma estrutura de uma matriz de Vandermonde. A
segunda coluna desta matriz é composta pelo vetor v = (x1, x2, ., xn). Portanto, pela
n—1 n
hipótese de indução, det(V2) = nn( x —x )= n
j=1 i= j+1
i -
1<j<i<n
( xi—xj ). Portanto,
n n— 1 n
det(V) = n(x —x ) n (x —x )
i=1
i o
1<j<i<n
i j = n (*-x )=nn(*-x ).
o<j<i<n
-
j=o i=j+1
- ■
116
Cálculo Numérico
a melhor opção para se obter o polinômio interpolador. O mal condicionamento desta
matriz será presenciado neste exemplo que foi retirado da referência [2] da Seção 3.2:
“Utilizando aritmética de ponto flutuante com 3 dígitos e o Método da Eliminação de
Gauss (veja o Exemplo 11 da Seção 4.2 do Módulo 2), o polinômio interpolador de
grau 3 associado à função f tabelada abaixo:
Como o polinômio Lj(x) possui grau n e xi, 0 £ i £ n, i # j, são raízes deste polinômio
(Lj(xi) = 0 , se i # j) então o polinômio de Lagrange é dado por c.Nj(xi), onde c é uma
constante não nula e Nj(x) = (x - xü)(x - x1) ... (x - xj-1)(x - xj+1) ... (x - xn) =
n
n (x — xs) . Além disto, Lj(xj) = 1. Desta forma, basta considerar c = N(xj) # 0
i=0 ;i * j
(lembre-se que os pontos de interpolação são distintos dois a dois). Conclusão: Os
polinômios de Lagrange são dados por Lj(x) = Nj(x)/Nj(xj).
117
Cálculo Numérico
n
Observação: É comum utilizar o polinômio N(x) = n(x— x ),
i=0
i de grau n + 1, para
escrever Nj(x) = N(x)/(x - xj), se x # xj e Nj(xj) = N’(xj) (derivada de N(x) no ponto x = xj).
L2(x)
(x—x )( x—x )
0 1
.
( x2— x0)( x2—x1)
O polinômio interpolador é dado por p2(x) = f(x0)L0(x) + f(x1)L1(x) + (x). □
Solução do Exercício 4:
O primeiro passo consiste na escolha dos pontos de interpolação. Como a função será
aproximada no ponto x* = 0.78, vamos escolher os pontos x0, x1 e x2 que estiverem mais
próximos de x* de modo que o valor de |N(x*)| = |x* - x0|.|x* - x1|.|x* - x2| seja o menor
possível.
Existem duas opções para a escolha dos pontos: (i) x0 = 0.5, x1 = 0.6 e x2 = 0.8 ou (ii) x0
= 0.6, x1 = 0.8 e x2 = 0.9. O menor valor de |N(x*)| é obtido com a segunda opção (ii).
118
Cálculo Numérico
Os polinômios de Lagrange foram exibidos acima, no Exemplo 7.
« n
y(~1 )nt2 x
n=0 n!
n!
Saiba Mais
B = {1, (x - xò), (x - x0)(x - x1), (x - xò)(x- x1)(x - x2), ..., (x - xò)(x - x1)...(x - xn-1)}.
Observação: Utilizando indução finita, não é difícil mostrar que os polinômios da base
B são linearmente independentes, isto é,
dü + d1(x - xb) + d2(x - xb)(x - x1) + ... + dn(x - x0)(x -x1)...(x - xn-1) = 0, " x e R,
Para isto, basta observar que se x = x0, então d0 = 0, pois todas as parcelas acima, a
partir da segunda, tem o fator (x - x0). Suponha que di = 0 para i < k £ n (hipótese de
119 □
Cálculo Numérico
indução). Note que o fator (x - xk) está presente em todas as parcelas a partir da parcela
k + 1, Assim, se x = xk então dk(xk - xo)(xk - x1)...(xk - xk) = 0. Como os pontos de
interpolação são distintos dois a dois, segue-se que dk = 0.
pn(x) = do + d1(x - xo) + d2(x - xo)(x - x1) + ... + dn(x - xo)(x - xx)...(x - xn-1).
1 ( )- f ( x )
{ f x2 o ( )- f (x ) ( x _x ) }
f x1 o 2 o
d2 =
( x - x ) x -x
2 o 2 1 x -x 1 ( x -x )
o 2 1
1 ( ) ( )
{ f x2 _ f x1 ( )- ( )
f x 1 f x o [ x 2_ x o _ 1 ]
d2 =
(x -x ) x - x
2 o 2 1 -
x2 x1 x1_ xo
d2 =
1 { f (x )- f ( x )
2 1 ( )- ( )
f x 1 f xo }
(x2 _ xo) x2_ x1 x 1_ x o
(o) Ordem zero: /[w] = f(w), para todo w edom{ f }(domínio da função /).
f[w2]_ f[w1]
(1) Ordem 1 (2 argumentos): f[W1,W2] = , " W1 edom{ f }, " W2
( W _W )
2 1
edom{ f }.
12o
Cálculo Numérico
f[w2 ,w3] — f[w1,w2]
(2) Ordem 2 (3 argumentos): f[w1,w2, w3] =
( —W )
w3 1
wi Cdom{ f },
i c {1, 2, 3}.
[ ] — f [ W ,... ,W ]
f W2 ,... , Wn + 1 1 n
f[W1,W2, .Wn, Wn+1] =
(W —W )
n+1 1
o qual depende de n + 1
argumentos.
(x —x )
2 o
B = {1, (x - xo), (x - xo)(x - xx), (x - xo)(x - x1)(x - x2), ., (x - xo)(x - xx)...(x - xm)}
e
Bs = {1, (x - xC(0)), (x - xC(0))(x - xC(i)), (x - xC(0))(x - xC(1))(x - xC(2)), .,
(x - xs(0))(x - xs(i))...(x - xs(i-1))}.
121
Cálculo Numérico
p,(x) = do + di(x - xo) + d2(x - xo)(x - xi) + .. + d,(x - xo)(x - xi)...(x - x^);
Pis(x) = Do + Di(x - xso)) + Di(x - xs(o))(x - xs(i)) +...+ D,(x - xs(o))(x - xC(n)...(x - x^-i));
onde di e Di são as diferenças divididas de ordem i com relação a cada uma das bases B
e Bs, respectivamente.
i22
Cálculo Numérico
Bs = {1, (x - xi), (x - xi)(x - x-i), (x - xi)(x - x-i)(x - x-2) (x - xi)(x - x-i)...(x - x1)}.
Pi(x) = do + d1(x - xo) + d2(x - xo)(x - x1) + ... + d,(x -xo)(x - x1)...(x - xn);
pis(x) = Do + D1(x - xi) + D2(x - xi)(x - x-i) + ... + Di(x - x,)(x - x-i)...(x - x1);
onde di e Di são as diferenças divididas de ordem i com relação a cada uma das bases B
e Bs, respectivamente.
Como o polinômio interpolador é único (Teorema 1, Seção 4.1), então pi(x) - pis(x) = o
(polinômio nulo), para todo número real x. Desta forma, o coeficiente de xi-1 no
polinômio nulo deve ser igual a zero. De acordo com as definições dos polinômios pi(x)
e pis(x), as únicas parcelas destes polinômios que contribuirão para a análise do
coeficiente de xi-1 no polinômio nulo são:
Portanto o coeficiente de xi-1 no polinômio nulo é dado por (veja a observação anterior
ao enunciado deste teorema): di-1 - di(xo + x1 + . + xi-1) - [Di-1 - Di(x1 + x2 + . + xi)].
Como este valor deve ser zero e, pelo Teorema 2, di = Di, então:
De acordo com o Teorema 2, a ordem dos argumentos não altera o valor do operador
de diferenças divididas. Assim,
B' = {1, (x - xo), (x - xo)(x - x1), (x - xo)(x - x1)(x - x2), ., (x - xo)(x - x1)...(x - xn-1),
(x - xo)(x - x1)...(x - xn-1)(x - xn)}.
123
Cálculo Numérico
pn(x) = d0 + d1(x - xü) + d2(x - xò)(x - xx) + ... + dn(x - x0)(x - x4)...(x - xn-1).
Pn + 1(x) = Do + D1(x - xo) + D2(x - xo)(x - x1) + .+ Dn+1(x - xo)(x - x1)...(x - xn-1)(x - xn),
x0 = 0.5 f[x0] = 0.46128 f[x0, x4] f[x0, xb xz] f[x0, x1, x2, xà] f[x0, x1, x2, x3, x4]
xi = 0.6 f[x1] = 0.53515 f[x1, x2] f[x1, x2, xs] f[x1, x2, x3, x4]
124
Cálculo Numérico
f(x): DD0 DD1 DD2 DD3 DD4
Solução do Exercício 5:
O primeiro passo consiste na escolha dos pontos de interpolação. Como a função será
aproximada no ponto x* = 0.78, vamos escolher os pontos x0, x1 e x2 que estiverem mais
próximos de x* de modo que o valor de |N(x*)| = |x* - x0|.|x* - x1|.|x* - x2| seja o menor
possível. De acordo com o Exercício 4 (Seção 4.2), a melhor opção é escolher x0 = 0.6,
x1 = 0.8 e x2 = 0.9.
125
Cálculo Numérico
De acordo com a escolha dos pontos de interpolação, deve-se desprezar o primeiro valor
de x na tabela original, ou seja, ao invés de x0 = 0.5 o primeiro ponto de interpolação
será denotado por x0 = 0.6. Desta forma, a escolha dos valores das diferenças divididas
de ordem 0, 1 e 2, que serão utilizados na construção do polinômio interpolador de grau
2, deverá seguir o mesmo princípio, ou seja, na coluna de diferenças divididas de ordem
k (0, 1 e 2), o primeiro valor tem que ser desprezado e o segundo será o valor
considerado para dk. Desta forma, d0 = 0.53515, d1 = 0.6126 e d2 = - 0.423. Portanto,
f(0.78) » p2(0.78) = d0 + d1(0.78 - x0) + d2(0.78 - x0)( 0.7 - x1) = 0.6469408.
Observação: Nas duas opções anteriores os seguintes valores se repetem: 0.6, 0.8 e 0.9.
O valor 0.5 aparece somente na primeira opção (i) e o valor 1.1 aparece somente na
segunda opção (ii). Portanto, para saber qual a opção que fornecerá o menor valor de
|N(x*)|, basta verificar qual dos dois seguintes valores é o menor: |x* - 0.5| ou |x* - 1.1|.
Como x* = 0.78 então a primeira opção é a melhor.
p3(x) = d0 + d1(x - x0) + d2(x - x0)(x - x1) + d3(x - x0)(x - x1)(x - x2).
£3(x) = d0 + d1(x - x,) + d2(x - x0)(x - x1) + d3(x - x0)(x - x1)(x - x2).
126
Cálculo Numérico
Observe que este polinômio pode ser reescrito da seguinte forma:
(iteração o)
V = d3 = - o.oo666666675;
(iteração 1)
V:= d2 + (x - x2).V = - o.42o3... + (o.78 - o.8).(- o.oo666666675) = - o.42o2;
(iteração 2)
V:= d1 + (x - xi).V = o.7387 + (o.78 - o.6).(- o.42o2) = o.663o64;
(iteração 3)
V:= do + (x - xo).V = o.46128 + (o.78 - o.5).(o.663o64) = o.64693792.
127
Cálculo Numérico
4.4. Erro de Interpolação e Estimativas para o Erro
(x - xn) = n (x — xi)
i=0
e X(x) pertence ao intervalo aberto (a, b).
Em geral, o valor de x(x) C (a, b) não é conhecido. Assim, assumindo-se que f (n+1) é
uma função contínua no intervalo fechado [a, b], podemos fazer a seguinte estimativa:
128
Cálculo Numérico
n
|N(x)|máx{\f[ +1 \t)|; t e [a,b]}
(n + 1)!
Observação: Toda função real contínua definida em um intervalo fechado e limitado
possui valor máximo e valor mínimo (Veja as referências [1 - 5] exibidas na Seção 3 do
Módulo 1).
n n
h +1 máx {|f ( +1)(t)|; t e [x0,xn ]}
4 (n +1)
()
lN x l = hn+1 lul lu —
1I lu 2I — —
lu nl
com u e [0, n]. Desta forma, usando a
(n + 1)! 12 3 n +1 ’
primeira estimativa, obtém-se que
|E(n)(x)| £
hn + 1 Iu| \u — 1| \u — 2\ \u—n\
() [
máx(\f(n+1) t | ; t e x0,xn }. ]
12 3 n+1
129
Cálculo Numérico
No primeiro caso, tem-se que p(u) = |u| |u - i| £ i/4. Além disto, |u - 2|/2 £ i. De fato,
o £ u£ i • -2 £ u-2 £- i < o |u - 2| = 2 - u £ 2 |u - 2|/2 £ i.
h3máx {If(3)(t)|; t e [x0,x2]}
Portanto, |E(2)(x)| £
4 (3)
Desta forma, se n for par então para cada i, o £ i < n/2, existirá o par correspondente
| - || -( - - )|
u i u n i i < n + i-i i + 2 = . S f i
n - i - i tal que ———7----- -—77—— < —:— --------- - —: = i. Se n for impar então
i+2 (n-i-i)+2 i+2 n +i-i
i = (n - i)/2 satisfaz: i = n - i - i ~ i + 2 = n + i - i. Neste caso, tem-se que
| u - i| n +i-i
'. + . +2 i = i. Para os demais pares de pontos (i, n - i - i), O £ i £ (n - 3)/2,
obtemos a mesma desigualdade exibida no inicio deste parágrafo. Portanto,
i3o
Cálculo Numérico
|E(n)(x)| £
n n
h +1 máx{|f( +1)(t)|; t e [x^xn]}
4 (n +1)
Caso a expressão da função f não seja conhecida ou seja muito complexa então podemos
utilizar apenas a tabela de diferenças divididas para obter uma estimativa do erro de
interpolação. Neste caso, vale a seguinte estimativa:
Portanto, n
f( +1)(§( x))
= DDn+1 = f[x0, x1, x2, ..., xn, x].
(n+1)!
131
Cálculo Numérico
x /(x): DDo DD1 DD2 DD3
Vamos escolher os pontos xo, x1 e x2 que estiverem mais próximos de x* = 1.12 de modo
que o valor de |N(x*)| = |x* - xo|.|x* - x1|.|x* - x2| seja o menor possível.
Neste caso, o polinômio interpolador é p2(x) = do + d1(x - xo) + d2(x - xo)(x - x1). Como
d2 = o então o polinômio terá grau 1: p2(x) = 1 + o.48(x - 1.o). Deste modo, a
aproximação desejada é V 1.12 » p2(1.12) = 1.o576. O erro efetivo é 71.12 -
1.o576 » o.7o x 1o-3.
Este é o primeiro resultado estranho. A escolha dos pontos foi feita de modo a obter o
menor valor para o erro de interpolação. Porém, como mostrado anteriormente, a
primeira aproximação (gerada pelo polinômio de grau 1) produziu um erro maior do que
o erro produzido pela segunda aproximação, que foi gerada por um polinômio de grau
2. Por que isto ocorreu? Será que os cálculos efetuados na construção da tabela de
diferenças divididas e que geraram d2 = o, na primeira escolha dos pontos, estão
corretos?
Sabendo-se que f (3)(t) = (3/8)t-5/2 é uma função decrescente então máx{|f (3)(t)|, t e
[1, 1.25]} = 3/8. Considerando-se x = 1.12, N(t) = (t - xo)(t - x1)(t - x2) e os pontos de
interpolação escolhidos em cada uma das opções anteriores, segue da teoria do erro de
(2) |N(x)|máxílf37t)| ;t e[a,b]}
interpolação que |E(2)(x)| £ 3! . Portanto, na primeira
opção, |E(2)(x)| £ o.oooo72 x (3/8) x (1/6) = o.45 x 1o-5 e, na segunda opção, |E(2)(x)| £
o.oooo78 x (3/8) x (1/6) = o.4875 x 1o-5.
132
Cálculo Numérico
Observe, também, que |E(2)(x)| » |N(x)| máx{|DD3|} = |N(x)|0.533 Assim, na primeira
opção, |E(2)(x)| » 0.000072 x 0.533... = 0.384 x 10-4 e, na segunda opção, |E(2)(x)| »
0.000078 x 0.533... = 0.416 x 10-4.
Este é o segundo resultado estranho na resolução do exercício. A teoria nos diz que o
valor absoluto do erro de interpolação deveria ser inferior a 10-5, porém os cálculos
efetuados mostram que as estimativas obtidas, mesmo as referentes ao erro efetivo, são
da ordem de 10-3 ou 10-4 e, portanto, superiores às estimativas previstas na teoria.
Solução do Exercício 6:
De acordo com a fórmula da estimativa de erros com pontos igualmente espaçados, tem-
h2máx{lf*2\t)|; t e [0.1,0.5]}
se que |E(1)(x)| £
4(2
Note que h = 0.1; f (1)(x) = x4[1 + 5/n(x)] e f (2)(x) = x3[9 + 20/n(x)]. Os pontos
críticos x = xc de f (2)(x) são tais que:
133
Cálculo Numérico
Por exemplo, utilizando o polinômio de Lagrange sobre os pontos de interpolação xo =
o.4 e x1 = o.5, obtemos p1(o.45) = - o.o15521833 (Verifique!). Como f(o.45) =
- o.o14734712 então f(o.45) - p1(o.45) » o.7871 x 1o-3. ■
x 1 2 3 4 5 6
obtenha x* tal que f(x*) = o. Use um polinômio de grau 2 e apresente uma estimativa do
erro.
Solução do Exercício 7:
134
Cálculo Numérico
Tabela de diferenças divididas (g = f -1(y))
y3 = - 0.959 g[ys] = 5
(iii) Escolha dos pontos que serão utilizados na construção do polinômio de grau 2.
Dado y* = 0, a melhor escolha dos pontos é aquela que fornecerá o menor valor para
|N(y*)| = |y* - y0|.|y* - y1|.|y* - y2|. Neste caso, os pontos escolhidos são: y0 = 0.909;
y1 = 0.141 e y2 = - 0.757.
5. Integração Numérica
Ao aproximar uma função f por um polinômio de grau n, pn(x), será cometido um erro
de interpolação. De acordo com as hipóteses do Teorema 4 (Seção 4.4), f(x) = pn(x) +
135
Cálculo Numérico
E(n)(x), onde E(n)(x) =
b b
(n + 1 !
b
) . Então a integral de f pode ser escrita como:
b
J f (X ) dx = J P ( X ) dx + J ( )
n E X dx- Neste caso dizemos que J n( E( ) X) dX é o
erro de integração.
onde X(x) e (a, b), " x e [a, b]; portanto, f(2)(xmin) £ f(2)(X(x)) £ f(2)(xmax) (lembre-se de
que toda função contínua definida em um intervalo fechado assume valor mínimo e
valor máximo - referências [1 - 5] apresentadas na Seção 3, Módulo 1).
A Regra do Trapézio, IT, será obtida da integral de p1(x) = f(x0)L0(x) + f(x1)L1(x), onde
( x - x1 ) ( x- x0)
Lo(x) = 1 ; Li(x)= 0 . É usual utilizar a seguinte troca de variáveis:
( x0-x1) ( x1-x0)
x1 1
x = xo + uh. Assim, J p1(x) dx =J p1(xo+uh) h du. Note que p1(xo + uh) =
xo o
f(xo)Lo(xo + uh) + f(xi)Li(xo + uh) = f(xo) x0 uh ( -h
)
x1 + f(xi) (X0 )
Uh—xo . Assim,
h
x1 1 1
J p (x) dx = —f(x )J (u—1)h du + f(x )J uh du.
1 o 1 Agora, observe que
x0 0 o
1 [h(u—21)2]1 1 2 1
J (u-1) h du = 2
= - h/2; J u
j uh du = h—
2 0
= h/2.
0 o o
x 1
Portanto, IT = J p ( x ) dx = 1 [f (x ) + f (x )].
1 i
x 0
o
Para se deduzir a fórmula do erro, note que N(x) = (x - xo)(x - x1) < o, " x e (xo, x1).
Desta forma, N(x)f(2)(xmax) £ N(x)f(2)(x(x)) £ N(x)f(2)(xmin). Utilizando as propriedades
das funções integráveis, segue-se que
136
Cálculo Numérico
x1 x1 x1
J N (x ) f(2 \ x max) dx < J N (x ) f <2)(^( x )) dx < J N (x) f(2)( x
min) dx.
xo xo x o
Utilizando o Teorema do Valor Intermediário, pode-se mostrar que existe c e (xo, x1) tal
x1 x1
x
1
x1
x
o
1 x 1
x 1
x1 J N(x)f(2)(?(x)) dx
Observação: J N( x ) dx < o
f 2)(x )< 12-- < f<2)(x K
xo
min
J N(x) dx
max
x o
Portanto, pelo Teorema do Valor Intermediário, existe c e (xo, x1) tal que
x 1
J N(x)f<2)(?(x)) dx
X = = f (2)(c).
J N(x) dx
x o
Observação: Suponha que f(2)(x) não seja constante e que existam a1 e b1 em [a, b] tais
que f(2)(x1) = f(2)(xmin) e f(2)(x2) = f(2)(xmax), onde x1 = x(a1) e (a, b) e x2 = x(b1) e (a, b).
Sabe-se que x(x) e (a, b), " x e [a, b], e f(2)(xmin) £ f(2)(x(x)) £ f(2)(xmax). Então, da
observação anterior, segue-se que f(2)(x1) £ l £ f(2)(x2). Do Teorema do Valor
intermediário, existe c e[ x1 , x2] ou c e[ x2 , x1], logo c e (a, b), tal que f(2)(c) = l. As
demais desigualdades: f(2)(xmin) < l < f(2)(xmax); f(2)(x1) £ l < f(2)(xmax) e f(2)(xmin) < l £
f(2)(x2) conduzirão ao mesmo resultado.
137
Cálculo Numérico
Observação: Se /(2)(x) for constante então /(2)(c) = l, qualquer que seja c e (a, b).
Desta forma,
b m xi x m i m
J f (x) dx = É f f (x) dx
a i= 1 xi— 1
Éf p (x) dx = É 22[f (x )+ f (x )].
i =1 xi—1
1)
i =1
i—1 i
138
Cálculo Numérico
A Regra Repetida do Trapézio pode ser reescrita como:
m-1
Itr = (h/2) {fX) + 2 S f (X )
i=1
i + fX)}.
12 =^' ( 1)
)=_ mh3 f
i 12
fc c)
onde c e (a, b).
139
Cálculo Numérico
época em que fui tutor do PET (de agosto de 2001 a dezembro de 2005). Ótimas
recordações!
Por envolver integração numérica, o problema apresentado pela aluna Gisliane Alves
Pereira, em 2004, na Semana Acadêmica da UFU, foi selecionado para compor este
texto (Infelizmente, ao abrir o arquivo com a apresentação do problema, verifiquei que a
aluna se esqueceu de incluir as referências bibliográficas!).
140
Cálculo Numérico
eixo x
Figura 4 - Módulo 3: Gráfico da função Gaussinana f(x)
xo
A integral de f(x) dá a frequência acumulada, ou seja, F(xo ) = òf (x)dx é a
O,5 + í i
e
2 (
O,OO5 I dx . Fazendo a mudança de variável:
Jx O, OO5 V2n
-i 2
x —x x — 4,99i i “2T z dz .
z = S = O,OO5 tem-se que F(5) = o'5 '—n Ie
Para que o valor da integral anterior tenha erro inferior a iO-6, é necessário calcular o
número de subintervalos, m, do intervalo [a, b] = [o, i.8] de modo que
Observe que
i4i
Cálculo Numérico
f(z) = exp(- 0.5z2) f '(z) = - z.exp(- 0.5z2) f (2)(z) = (z2 - 1).exp(- 0.5z2)
máx{\f (2)(z)|; z e [0, 1.8]} - máx{\f (2)(0)|; |f (2)(1.8)|; |f (2)(- 31/2)|; |f (2)(31/2)| } = 1.
mh3
máx{ |f2)(x) | ;x G [0, 1.8]} - m2 (1.8)3 (1/12) < 10-6 m2 > 0.486 x 106
12
clear
a - 0;
b - 1.8;
m - 698;
for j - 1:m+1
x(j) - a + (j-1)*h;
y(j) - f_trap(x(j)); %vetor que armazena os pontos relativos à função integrada
end
142
Cálculo Numérico
%Regra dos Trapezios
soma = o;
forj = 2:1:n
fprintf('O valor da integral, obtido pela Regra dos Trapezios, eh dado por %12.8f\n',
I_TR);
%Fim da rotina
A função f_trap(z) tem que ser definida no arquivo f_trap.m. O conteúdo deste arquivo
é o seguinte:
function g = f_trap(z)
g = exp(-o.5*z*z);
%Fim da rotina.
o 1 2 (3)(^
2
a x o x o
onde x(x) e (a, b), " x e [a, b]. A Regra de Simpson, IS, será obtida da integral de
P2(x) = f(xo)Lo(x) + f(x1)L1(x) + flx)L2(x), onde
Lo(x) =
( x - x )( x - x )
1 2 . L (x)
; L1(x)
( x - x )( x - x )
o 2
e L2(x) =
( x - x )( x - x )
o 1
( xo- x1)( xo- x2) ( x -x )( x -x )
1 o 1 2 ( x -x )( x -x )
2 o 2 1
143
Cálculo Numérico
Note que
p2(x0 + uh) = f(xo)Lo(xo + uh) + f(x1)L1(xo + uh) + f(x2)L2(xo + uh) =
f(x0)
(u——1h)(h—(u2h— ) )h 2 +
f(x1)
) uh u 2 h +
h (—h)
(—)
fx2)
) uh u 1 h
2h(h) ’
(—)
Assim,
x
f p ( x ) dx = f(2x ) f (u-1 )(u-2)h du - f (x )f u(u-2)h du
2
2 o 1
x 0 0 0
2 3 22 32 2
f u (u — 2) hdu =
03
h (u—u2) = - 4h/3 e f u(u — 1 )h du = h (u— u)
32
= 2h/3.
00 0
Utilizando integração por partes com u = f[x0, x1, x2, x] e dv = N(x) dx, obtém-se v =
x x2
W(x) = f N(t) dt. Assim, Es = fXo, xb x2, x] W(x) g - f f'[x0, x1, x2, x]W(x) dx.
x0 x0
Pode-se mostrar que: (i) N(x1 - t) = - N(x1 + t), para qualquer número real t; (ii) W(x) >
f W(g( x))
0 para todo x e [xo , x2]; (iii) W(xo) = W(x2) = 0; (iv) f'[x0, xh x* x] = (4)! ,
144
Cálculo Numérico
De acordo com os itens anteriores e utilizando-se o resultado que foi apresentado na 6a
Observação da Seção 5.1, segue-se que
Na última igualdade foi utilizada integração por partes com u = W(x); dv = 1dx; du =
W'(x) = N(x) e v = (x - x0). Fazendo a troca de variáveis x = xq + uh, obtém-se que
2 2
-(4)(C) h5 - (4)(C)
ES =
(4)!
J
q
uh h3u(u - 1)(u - 2) hdu =
24
J
q
u2(u2 - 3u + 2) du
2
h - (4)(C) u 5 3u4 2u3 -h5-(4)(C)
ES = com C e (xq, x2).
24 5 43 q 9q
Propriedade 2: W(x) = J
xq
N(t) dt > 0, " x e (xq, x2).
x1-s x1 x x1-s q
145
Cálculo Numérico
x1-s x1-s
J N(x1 + T) dT = J N(t)dt + J
0
N(x1 - T) dT - J
0
N(xi - T) dT = J N(t)dt > 0,
0 x0 x0
pois xo £ xi - s < xi. □
x0 xi x2
Demonstração: W(xo) = J
N(t) dt = o; W(x2) = N(t) dt + J
N(t) dt. Fazendo a J
xo xo xi
troca de variáveis t = xi - T, na primeira integral, e t = xi + T, na segunda integral,
obtém-se que
o h h h
W(x2) = - J
h
N(xi - T) dT + J
o
N(xi + T) dT =
o
J N(xi - T) dT +
o
J N(xi + T) dT = o,
pela propriedade 1. □
Propriedade 4: Suponha que f tenha derivada quarta contínua em [a, b] e que os pontos
distintos dois a dois x, xo , xi e x2 pertençam ao intervalo [a, b]. Então
f14|(g( x))
f'[x0, x1, x2, x] = com X(x) e (a, b).
(4)!
Voltando à Seção 4.3 deste módulo, depois da primeira observação daquela seção, note
i f (x2)-f (xo) f (xi)-f (xo)
que d2 = f[x0, xu xz] = __
x2 xi x2-xo- xi-xo
. Através de um
Observe que
(i) f'(xo + t1 (x2 - xo)) = f'(xo + ti (x2 - x1 + x1 - xo)) = f'(xo + t1 (x1 - xo) + t1(x2 - x1));
146
Cálculo Numérico
1 t1
Assim, f[x0, x1, x2] = òòf”(x0 + h (x - x0) + t2 (x2 - x^) dt2 dtu Em geral, tem-se o
i
00
Lema 1. Suponha que f seja derivável até ordem n em [a, b] e que xi e [a, b], 0 £ i £ n,
sejam pontos distintos dois a dois. Então
f[x0, xi, x2, ..., xn] =
i ti tn-i
••• J J J
f'n)(X0 + t1(X1 - X0) + t2 (X2 - X1) + ...+ tn (xn - Xn-1)) dtn...dt2 dt1.
0 0 0
n
Demonstração: Primeiro observe que a x0 + E t (x -X
i=1
i i --1H b> pois 0 £ tn £ tn-1 £
nn
... £ t2 £ t1 £ 1 e x0 + E ti(x-xi 1) = E aixi, onde 0 £ a = 1 - b; 0 £ a = t - t ,
i=1
-
i=0
o ,- i i+1
n
1 £ i £ n - 1 e 0 £ an = tn; logo E ai = 1. Além disto, pelo Teorema 2 da Seção 4.3,
i=0
tem-se que f[x0, x1, x2, ..., xn-2, xn-1] = f[xn-1, x0, x1, x2, ..., xn-2] e f[xn-1, x0, x1, x2, ..., xn-2, xn] =
f[x0, x1, x2, ..., xn-2, xn-1, xn].
1 t1 tn-1
Ò ò
0 0
...
0
Ò f(n)(x0 + t1(x1 - x0) + t2 (x2 - x1) + ...+ tn (xn - xn-1)) dt„...dt2 dt1 =
1 t t 1 n- 2 n-2
JJ-J x -1x
0 0 0 n n-1
(n-1)(x0 + E t ( x -x ) + t ( x -x
i=1
i i i-1 n-1 n n-1 + xn-1-xn-2 )) dt n-1 -dt2 dt1
147
Cálculo Numérico
t t
1 1 n_ 2 n_2
1 t t 1 1 n_2 n_2
1 t t 1
1 n_2 n_ 2
= (f[X0, X1, X2, Xn-2, Xn] - f[Xo, X1, X2, Xn-2, Xn-1])/(Xn - Xn-1) = fiXn-1, Xo, X1, X2, Xn-2, Xn]
= f[Xo, X1, X2, Xn-2, Xn-1, Xn]. ■
Lema 2. Suponha que f seja uma função real derivável até ordem n + 1 e que satisfaça
as seguintes condições: (i) f (k)(0) = 0, para todo k tal que 0 £ k £ n; (ii) f(1) = 1. Então
1 t11tnn
J J ... J f (n + 1)(tn+1) dtn +1dtn...dt2 dt1 = 1.
0 0 0
1 t1 tn_1
Considere a seguinte Hipótese de Indução: J J
0
... J f (n)(tn) dtn dtn...dt2 dt1 = 1, se
00
(i) f (k)(0) = 0, para todo k tal que 0 £ k £ n - 1; (ii) f(1) = 1. Desta forma, se f (n)(0) = 0,
1 1tn
t t1
1 tn-1
J J .. J f (n+1)(tn+1) dtn+1dtn...dt2dt1 =
J J ••• J ]t n
t n+1)) 0 dtn...dt2dt1 =
0 0 0 0 0 0
1 t1 tn-1 1 t
1 t n-1
J J0
0
ò
... 0 [f (n)(tn) - f (n)(0)] dtn...dt2dt1 = J J
0
... J
f (n)(tn) dtn...dt2dt1 = 1. ■
00 00
1 t1 tn
Lema 3. J
0
J ... J dtn +1dtn...dt2 dt1 = 1/(n + 1)!.
00
148
Cálculo Numérico
Demonstração: Seja f(t) = tn+ então f í-k>(t) = (n + 1)(n)...(n + 2 - k) tnn+1e (n + 1)! =
f (n+1)(t). Desta forma: (i) f (k)(0) = 0, para todo k tal que 0 £ k £ n ; (ii) f(1) = 1. Portanto,
pelo Lema 2,
1 t1 tn 1 t1 tn
1 t1 t2
f[xo, X1, X2, x] = J J J f (3)(xo + t1(X1 - Xo) + Í2 (X2 - X1) + Í3 (x - X2)) dt3 dt2 dt1.
000
Como f tem derivada quarta contínua então é possível derivar a diferença dividida com
respeito à variável x. Desta forma,
1 t1 t2
f'[Xo, Xi, X2, x] = J J J f (4)(xo + t1(X1 - Xo) + Í2 (X2 - X1) + Í3 (x - X2)) Í3 dt3 dt2 dt1.
000
Sabendo que t3 > 0 e que f (4) é contínua em [a , b], o Teorema do Valor Intermediário
pode ser aplicado (veja a 6a Observação da Seção 5.1) sucessivamente para se obter:
1 t1 t2
f'[X0, Xi, X2, X] = J J
f (4)(Xo + t1(X1 - Xo) + Í2 (X2 - X1) + C3 (X - X2)) Í3 dt3 dt2 dt1 = J
o o o
1 t1
Jf (4)(xo +t1(X1 - xo) + C2 (X2 - X1) + C3 (x - X2)) F(t2) dt2 dt1 = J
oo
1
149
Cálculo Numérico
A Regra Repetida de Simpson
b x
m/ 2 2i
m/2 2i m/ 2
È J p ( x ) dx = È 33 [f ( X )+ 4f ( x ) + f ( X )] .
i=1 x2i -2 2) i=1 2i-2 2i-1 2i
m /2 (m/ 2)-1
Isr = (h/3){f(xo) + 4 È f (X
i=1
2i-1) +2 È
i=1
f (X2i ) + f(Xm)}-
m/2
È- h flc) = hL È
fW(C)
mh5 f 4 \C)
onde C e (a, b).
ESR =
i=1 90 90 È f ( i) 180
m/2
m /2
150
Cálculo Numérico
Estimativa do erro na Regra Repetida de Simpson
mh5|f*4 )(c)|
Note que |ESR| =
180
< m80máx f 4)(x)l;x e[a>b]}•
f(z) = exp(- 0.5z2) f '(z) = - z.exp(- 0.5z2) f (2)(z) = (z2 - 1).exp(- 0.5z2)
Comparando este valor de m (número de subintervalos) com o obtido pela Regra dos
Trapézios (698 subintervalos) fica evidente que a Regra de Simpson é mais eficiente do
que a Regra dos Trapézios. O valor aproximado da integral, utilizando a Regra Repetida
de Simpson com 20 subintervalos, é dado por 1.16325015147918. Se fossem utilizados
698 subintervalos, o valor obtido seria 1.16325018351050. O valor aproximado da
integral, utilizando a Regra dos Trapézios com 698 subintervalos, é igual a
1.16324998610089.
151
Cálculo Numérico
%Regra de Simpson (1/3)
clear
for j = 1:n+1
x(j) = a + (j-1)*h;
y(j) = f_simp(x(j));
end
%Regra de Simpson
soma_p = 0;
soma_imp = 0;
for j = 2:2:(n-2)
soma_p = soma_p + y(j);
soma_imp = soma_imp + y(j+1);
end
IS = (h/3)*(y(1)+4*(soma_p+y(n))+2*(soma_imp)+y(n+1));
fprintf('O valor da integral, obtido por Simpson, eh dado por %12.8f\n', IS);
%Fim da rotina
A função f_simp(z) tem que ser definida no arquivo f_simp.m. O conteúdo deste
arquivo é o seguinte:
function g = f_simp(z)
g = exp(-0.5*z*z);
%Fim da rotina.
152
Cálculo Numérico
6. Atividades do Módulo 3
Enunciado da atividade
Em praticamente todos os exercícios desta lista você precisará lidar com polinômios;
portanto, é fundamental que você recorde a teoria vista sobre este assunto na disciplina
Fundamentos da Matemática Elementar I.
Estes pontos serão ajustados por uma função do tipo Q(x) = Q(x; a, b) = a (1 + bx2)1/2.
Observe que Q(x) não é linear nos parâmetros a e b. Para que o Método dos Quadrados
Mínimos - modelo linear - seja utilizado, deve-se linearizar o problema.
153
Cálculo Numérico
ii) Calcule somente o vetor de termos independentes do sistema linear do problema
linearizado (se Ax = b então b é o vetor de termos independentes).
3) Uma função da forma j(x) = 20 + [1/(a + bx)] é utilizada para ajustar os pontos
(xi, yi) de uma tabela; j(xi) » yi. Este é um modelo não linear de ajuste de curva. Para
simplificar o ajuste, será utilizado o método dos quadrados mínimos (MQM) em um
problema linearizado. Será preciso modificar os pontos da tabela, levando-se em
consideração os pontos zi = T(yi).
x o 1 2 3 4 5 6
y 32 47 65 92 132 190 275
O ajuste dos pontos será feito por uma função do tipo j(x) = abx. Observe que jnão é
linear nos parâmetros a e b. Para se utilizar o modelo linear do método dos quadrados
mínimos será preciso obter uma linearização. Neste caso, a linearização adequada é a
função ln(y).
(iii) Utilizando uma função exponencial do tipo y(x) = axb para ajustar os pontos da
tabela anterior obtemos a = 38.83871 e b = 2.61978, pelo método dos quadrados
mínimos não linear. Explique por que esta função não é adequada para ajustar os pontos
tabelados.
154
Cálculo Numérico
5) Considere os pontos a seguir.
Estes pontos serão ajustados por uma função do tipo Q(X) = Q(X; a, b) = 20 +
1 _
2 . Observe que Q(x) não é linear nos parâmetros a e b. Para que o modelo
a v1 +bx2
linear do Método dos Mínimos Quadrados seja utilizado, deve-se considerar uma
transformação adequada.
(i) Use a transformação T(y) = 1/(y-20)2 para linearizar o problema. Quais serão os
novos parâmetros associados à família de curvas do tipo T(Q(X))?
6) Dada a tabela
suponha que o ajuste dos pontos seja feito pelo Método dos Quadrados Mínimos
(MQM) com uma função do tipo Q(X) = Q(X; a1, a2) = a1g1(X) + a2g2(X). Faça o
diagrama de dispersão e indique qual das funções abaixo fornecerá o melhor ajuste: a)
g1(X) = 1 e g2(X) = eX; b) g1(X) = 1 e g2(X) = 1/X; c) g1(X) = 1 e g2(X) = sen(X).
Justifique a sua resposta.
k
7) Considere a seguinte função f(k) = £i .
i=1
Note que f(1) = 1 e f(2) = 1 + 2 = 3.
(i) Atribua valores para k e construa o polinômio de Lagrange de grau dois que interpola
a função f. (ii) Sabendo-se que f(k) = % k(k+1), obteríamos resultados melhores se
interpolássemos f utilizando um polinômio de Lagrange de grau 3?
pontos X0, X1, ..., Xn é dado por pn(X) = £ f ( x1 ) L (x) , onde L (x) = N(x)/N (x ) e N(x) é
i=0
. i i i
obtido do polinômio N(x) = (x - x0)(x - Xi) ... (x - Xi)...(x - Xn) retirando-lhe o fator
155
Cálculo Numérico
n
(x - xi). Se f for um polinômio constante, pode-se mostrar que Z Li(x) = 1,
i=0
"xe R.
9) Seja f(x,y) uma função definida sobre os pares (x,y), com xi < x < xi+1 e yj <y <yj+1.
r 120.5 13 45 51 61
fi,j+1
i,j+1 & r fi+
i+ 1,j+1
yj+1 < <
100.0 35 55 64 70
(x, y)
y
81.5 54 68 72 79
< fijij *A < fi+
i+ 1,j
yj < < 65.0 72 78 82 87
xi xxi+1 89 90 91 93
42.5
A função f(x,y) pode ser aproximada da seguinte forma (veja Fig. 1): primeiro faça a
interpolação linear através de fij = f(xi, yj) e fi+1,j = f(xi+1, yj) e obtenha a aproximação fA;
em seguida, através de fi,j+1 = f(xi, yj+1) e fi+1,j+1 = f(xi+1, yj+1) obtenha a aproximação fB.
Interpole linearmente através de fA e fB para obter a aproximação desejada.
f(x, y) ~ (1- a)(1 - b) fij + a(1 - b) fi+1,j + (1 - a)bfi,j+1 + abfi+1,j+1 = p(x,y) = fij.Lij (x, y)
+ fi+1,j.Li+1,j (x, y) + fi,j+1.Li,j+1 (x, y) + fi+1,j+1.Li+1,j+1 (x, y); tal que p(xi, yj) = f(xi, yj).
Utilizando a fórmula anterior, juntamente com os pontos da tabela acima, obtenha uma
aproximação para f(x, y) = f(110, 98).
10) Considere x0, x1, x2 e x3 pontos distintos dois a dois. O polinômio interpolador com
diferenças divididas (polinômio de Newton) de grau três é dado por
156
Cálculo Numérico
p3(x) = ( dq + (x-xq) ( d1 + (x-x1) ( d2 + (x-x2) d3 ) ) ).
b = d3;
b = d2+ (c-x2) b;
b = d1 + (c-x1) b;
b = dq + (c-xq) b .
O último valor de b é igual a p3(c). Agora, escreva um algoritmo para o cálculo do valor
numérico do polinômio de Newton de grau n.
11) A tabela abaixo pode ser encontrada em diversos livros didáticos de Geografia
Geral e do Brasil. Ela registra a evolução da dívida externa de alguns países Latino-
Americanos. Alguns dados (1984) foram extraídos do RELATÓRIO do
desenvolvimento humano 2qqq. Nova York: PNUD, Lisboa: Trinova, 2qqq.
157
Cálculo Numérico
x -3.0 -2.0 -1.0 0.0 1.0 2.0
f(x) -9.0 0.0 1.0 0.0 3.0 16.0
13) Quer-se interpolar a função sen(x), sobre o intervalo I = [a,b] = [0, p/4], usando um
polinômio de grau 2, com pontos igualmente espaçados. Qual deve ser o menor número,
m, de subintervalos de I para se garantir um erro menor do que 10-4. Neste caso, a
fórmula a seguir é válida:
14) O erro na interpolação linear é dado por E(2) = (1/2) f''(c(x))N(x), onde N(x) =
(x-x0)(x-x1). É fácil mostrar que x e[x0 , x1] se, e somente se, existe u e [0 , 1] tal que x
= x0 + uh, com h = x1 - x0.
Neste caso, pode-se definir M(u) = |N(x0 + uh)| = h2 |(u)(u-1)|. Desta forma, umax é o
ponto de máximo de M se, e somente se, xmax = x0 + umaxh é ponto de máximo de |N(x)|.
Portanto, |E(2)| £ (h2/8) máx{| f''(x)| ; x e[x0 , x1]}.
Qual deve ser o menor número de pontos igualmente espaçados de uma tabela contendo
valores de cos(x), x e[1, 2], de modo que ao se usar interpolação linear para aproximar
cos(x*) obtenha-se erro inferior a 10-6, qualquer que seja x* e [1, 2] ?
15) Dados n + 1 pontos distintos dois a dois, xo, Xi, X2, X3 , ..., xn, pode-se provar, por
indução finita, que uma base para o espaço dos polinômios de grau até n, Pn, é dada por
B = {1, (x-xo), (x-xo)(x-xi), (x-xo)(x-xi)(x-x2), ..., (x-xo)(x-xi)...(x-xn-i)}. O polinômio
interpolador com diferenças divididas de grau n é dado por pn(x) = d0 + d1(x-x0) +
d2(x-xo)(x-x1) + ... + dn(x-xo)(x-x1)(x-x2)...(x-xn-1). Prove que se B ' = {1, (x-xo),
(x-xo)(x-x1), (x-xo)(x-x1)(x-x2), ..., (x-xo)(x-x1)...(x-xn-1), (x-xo)(x-x1)...(x-xn)} for a base do
espaço Pn+1 então
onde Di = di, 0 £ i £ n.
16) Considere os pontos x0, x1, x2 e x3 distintos dois a dois e as seguintes bases de P3:
158
Cálculo Numérico
onde s(k) = n - k, com n = 3 e 0 £ k £ n. Mostre que a diferença dividida de ordem três
eé dada por [ ] [ ]
dd 3= f x 1 ,x2 ,x3 -f x0 ,x1 ,x2 , onde ã diferenças
d ff[[x1,x2,x3]] e f[f[x0,x1,x2]] são d.f
x3— x0
divididas de ordem 2. Sugestão: h(x) = p3,s(x) - p3(x) = 0, pois o polinômio interpolador
e único; assim, o coeficiente de x2 em h(x) e igual a zero. Tente generalizar este
resultado.
x 1 2 3 4 5 6
f(x) 0.841 0.909 0.141 -0.757 -0.959 -0.279
obtenha x* tal que f(x*) = 0. Use um polinômio de grau 2 e apresente uma estimativa do
erro. A estimativa com um polinômio de grau 3 seria melhor? Justifique.
ii) A função f e linear por partes (f e uma reta em cada um dos seguintes intervalos:
[-0.5 , 0] e [0 , 0.58] ), assim, o erro de interpolação deve ser igual a zero. Lembre-se de
que se f e crescente (ou decrescente), então f -1 e tambem crescente (ou decrescente).
(i) Por que os pontos entre f (p/4) e f ((5p)/4) não são adequados para se calcular x* tal
que f (x*) = 0.8 ?
159
Cálculo Numerico
(iii) Calcule uma estimativa para o erro.
1
20) Sabe-se que J sen(x) dx = 0.459698.
0
(i) Mostre que o resultado numérico obtido pela Regra de 1/3 de Simpson, com h = 0.5,
é uma aproximação muito boa desta integral. Justifique isto pela fórmula do erro: E(1/3)S
= -[h4(b-a)f(iv)(c)]/180. Sugestão: use uma estimativa do erro.
(ii) No item anterior, qual o valor de n deve ser usado para se obter uma aproximação
com erro menor do que 10-6 ?
11
21) Sabe-se que I
0.1 x
dx = ln(10).
(i) O resultado numérico obtido pela regra de 1/3 de Simpson com n = 2 não é uma boa
aproximação para esta integral (Verifique!). Faça o cálculo pela regra dos trapézios
também. Qual apresentará melhor aproximação? Justifique.
(ii) Qual o valor de n deve ser usado na regra repetida de Simpson para se obter uma
aproximação com erro menor do que 10-3? Calcule, também, o valor de n para a regra
repetida do Trapézio.
23) Defina f como segue: f(x) = x5ln(x), se 0.1 £ x £0.36; f(x) = (x+1), se 0.36 < x £ 1.
Quais os procedimentos numéricos, para se obter uma aproximação da integral de f no
intervalo dado, que utilizam esforço computacional mínimo com estimativa de erro
menor do que 10-9 ? Justifique a sua resposta utilizando os conhecimentos a respeito das
regras de Simpson e do Trapézio. Sugestão: Se g(x) = x5ln(x) então g(iv)(x) =
x[120ln(x) + 154].
24) Quer-se interpolar e integrar a função sen(x), sobre o intervalo I = [a, b] = [0, p/4],
usando um polinômio de grau n = 2, com pontos igualmente espaçados. Qual deve ser o
160
Cálculo Numérico
menor número, m, de subintervalos de I para se garantir um erro menor do que 10-4 tanto
na integração quanto na interpolação? A fórmula a seguir é válida:
hn+1
\f(x) -pn(x)\ £ h max{\f(n+1)(x)\, x e I}, onde h = (b-a)/m.
4 ( n+ 1 )
Utilizando a regra de integração por partes com u = f[x0, x1, x2, x] e dv = N(x) dx, obtém-
xb
se v = W(x) = J
N(t) dt. Assim, I = f[x0, x1t x2, x] W(x) £ - J f'[x0, x1t x2, x]W(x) dx.
aa
i) Faça o gráfico de N(x) ou o gráfico de N(u) = N(xo + uh), 0 <u <2.
ii) Mostre que N(x1 - t) = - N(x1 + t), para todo t real (No caso geral, em que n é o
número de subintervalos de [a, b] e é par, tem-se que N(xm - t) = - N(xm + t), " t real e
m = n/2).
iii) Mostre que W(a) = W(b) = 0. (Sugestão: integre em dois intervalos, [x0, x1] e [x1, x2];
considere as seguintes trocas de variáveis: x = x1 - t (no primeiro intervalo) e x = x1 + t
(no segundo).
1 ( ( ) f(x )- f(x ) }.
{ f x 2 )-f x0 1 0
- x -x x -x
d2 ° f[x0, x1, x2] =
x2 x 1 2 0 1 0
Para o cálculo do erro de integração é adequado obter uma expressão integral para a
diferença dividida. Observe que
com c entre x0 e x1 (basta usar o Teorema do Valor Médio); logo, c = x0 + t. (x1 - x0),
161
Cálculo Numérico
0 < t < 1. Note que
1
J f'(X0 + t (X1 - X0)) dt =
1 f(xo + t (X1 - Xo)) I1 = f[xo, X1]. Através de um
0 (X _x )
1 0
raciocínio análogo, obtém-se que
1
1
d2 = f[X0, X1, X2] =
(X 2_ X1)
J {f'(Xo + t1 (X2 - Xo)) - f'(Xo + t1 (X1 - Xo))} dt1.
o
Observe que
1 t1
i) Exiba a expressão integral para f [Xo, X1, X2, X] e calcule a sua derivada.
ii) Usando o teorema do valor intermediário obtém-se que f'[Xo, X1, X2, X] = f(4) (c(x))
1 t1 t2
JJJ t3 dt3 dt2 dt1, c(x) e (a, b). Calcule a integral anterior.
ooo
162
Cálculo Numérico
Atividade 2 - Polinômio Interpolador de Lagrange
Enunciado da atividade
(I) Leia atentamente um dos seguintes materiais didáticos sobre Polinômio Interpolador
de Lagrange: (1) apostila do curso; (2) Apostila do professor Castilho e slides (Aula -
Unidade 4), ambos localizados em www.portal.famat.ufu.br/node/278 e (3) livro de
Cálculo Numérico da professora Neide Maria Bertoldi Franco.
(II) A tabela abaixo permite que sejam calculadas as estimativas da dívida externa, em
1992, de qualquer um dos países mencionados. Obtenha a estimativa da dívida do
Brasil. Use o polinômio de Lagrange de grau 2. Aproveite algumas das contas anteriores
(polinômio do Brasil) para calcular a estimativa da dívida do México, usando um
polinômio de grau 2, também.
(x-1987)(x-1998) ; L ) (x-1977)(x-1998)
(1977-1987)(1977-1998) ' 1( ) (1987-1977)(1987-1998)
(x-1977)(x-1987)
(1998-1977)(1998-1987) '
163
Cálculo Numérico
(2) Polinômio Interpolador do Brasil: p2,B (x) = f0,B L0(x) + f1,B L1(x) + f2,B L2(x), onde
f0,B = 28,3; f1,B = 109,4 e f2,B = 232,0.
(3) Polinômio Interpolador do México: p2,M(x) = f0,M L0(x) + f1,M L1(x) + f2,M L2(x), onde
f0,M = 26,6; f1,M = 93,7 e f2,M = 159,9.
(4) Valor Numérico do polinômio do Brasil: p2,B (1992) = f0,B L0(1992) + f1,B L1(1992) +
f2,B L2(1992) = - 0.142857142 f0,B + 0.818181818 f1,B + 0.324675324 f2,B » 160.791.
(5) Valor Numérico do polinômio do México: p2,M (1992) = f0,M L0(1992) + f1,M L1(1992)
+ f2,M L2(1992) = - 0.142857142 f0,M + 0.818181818 f1,M + 0.324675324 f2,M » 124. 779.
Prezado(a) aluno(a),
Você já deve ter visto na disciplina de Cálculo que toda função real contínua e
monótona (crescente ou decrescente) definida em um intervalo fechado [a, b], possui
inversa. Em determinados problemas, precisamos usar um polinômio interpolador para
aproximar a inversa de uma dada função. Acontece que, em muitos casos, a função pode
ser dada por meio de uma tabela. Assim, como saber se a função representada por uma
tabela possui inversa? É simples. Basta supor que a função tabelada seja contínua e
considerar apenas os pontos da tabela nos quais podemos afirmar que a função é
monótona (crescente ou decrescente). A interpolação inversa só terá validade no
intervalo onde a função é estritamente crescente ou estritamente decrescente.
Enunciado da atividade
(I) Leia atentamente um dos seguintes materiais didáticos sobre Polinômio de Newton e
Interpolação Inversa: (1) apostila do curso; (2) Apostila do professor Castilho e slides
(Aula - Unidade 4), ambos localizados na página da FAMAT:
http://www.portal.famat.ufu.br/node/278 e (3) livro de Cálculo Numérico da professora
Neide Maria Bertoldi Franco.
(II) Resolva o seguinte exercício (professor Balthazar, Unesp Rio Claro): Na tabela
abaixo são registradas, em cada instante de tempo, as velocidades de um elevador.
Calcule os instantes em que a velocidade do elevador se anula (tenha cuidado ao
escolher os pontos). Use polinômios de grau 2. Apresente os cálculos das estimativas
dos erros.
164
Cálculo Numérico
Tempo 0 1 2 3 4 5 6 7 8 9 10
Veloc. 2.0 4.0 6.2 3.9 0.3 -0.67 -0.32 0.18 4.1 6.3 4.8
Informações sobre a Atividade 3.
Polinômio de grau 2
onde
Valor Numérico em v = 0.
165
Cálculo Numérico
(4) Escolha dos pontos da segunda interpolação inversa.
Comentários análogos aos do item 1. A análise do erro vai precisar das diferenças
divididas de ordem 3, pois o polinômio interpolador e de grau 2. Assim, os pontos
escolhidos para a velocidade são: -0.67; -0.32; 0.18; 4.1 e 6.3, que correspondem a uma
função crescente.
Polinômio de grau 2
Valor Numerico em v = 0.
Prezado(a) aluno(a),
Este exercício e continuação da Atividade 3. A primeira vez que tive contato com o
mesmo foi em 1987, na aula de cálculo numerico, quando fiz a graduação (1986 - 1989)
166
Cálculo Numerico
em Matemática na Unesp de Rio Claro. A primeira parte da disciplina foi ministrada
pelo professor José Bezerra Leite (que também ministrou para a minha turma, no ano
seguinte, a disciplina Análise Numérica) e a segunda parte foi ministrada pelo professor
José Manoel Balthazar.
Enunciado da atividade
(I) Leia atentamente um dos seguintes materiais didáticos sobre a Regra dos Trapézios:
(I) apostila do curso; (2) Apostila do professor Castilho e slides (Aula - Unidade 5),
ambos localizados na página da FAMAT: http://www.portal.famat.ufu.br/node/278 e
(3) livro de Cálculo Numérico da professora Neide Maria Bertoldi Franco.
(II) Resolva o seguinte exercício: Na tabela abaixo são registradas, em cada instante de
tempo, as velocidades de um elevador. Calcule o espaço total percorrido pelo elevador (
10
J | v| dt ). Use a Regra dos trapézios. Lembre-se de que |v| não possui derivada no
0
instante t em que a velocidade do elevador se anula (t = 4.28 e t = 6.70). Nestes casos
você deverá utilizar a Regra Simples do Trapézio.
Tempo 0 1 2 3 4 5 6 7 8 9 10
Veloc. 2.0 4.0 6.2 3.9 0.3 -0.67 -0.32 0.18 4.1 6.3 4.8
Dada a tabela
Tempo 0 1 2 3 4 5 6 7 8 9 10
Veloc. 2.0 4.0 6.2 3.9 0.3 -0.67 -0.32 0.18 4.1 6.3 4.8
Note que
10 4 4.28 5 6 6.70
J|v| dt
0
J |v| dt + J |v| dt + J |v| dt
0 4 4.28
+ J |v| d
56
+ J |v| d +
7 10
J |v| dt
6.70
+ J|v| dt = I + I + I + I + I + I + I .
7
1 2 3 4 5 s 7
Observe que os pontos tabelados, ti (tempo), são igualmente espaçados, ou seja, ti = ih,
0 £ i £ 10, com h = 1. Desta forma, podemos usar a Regra dos Trapézios para calcular
as integrais I1 e I7:
167
Cálculo Numérico
11 » (h/2){ |v(o)| + 2 [ |v(1)| + |v(2)| + |v(3)| ] + |v(4)| } = o.5 { 2 + 2 [ 4 + 6.2 + 3.9 ] +
o.3 } = 15.25.
I7 » (h/2){ |v(7)| + 2 [ |v(8)| + |v(9)| ] + |v(1o)| } = o.5 { o.18 + 2 [ 4.1 + 6.3 ] + 4.8 } =
12.89.
As demais integrais são calculadas com a regra simples do trapézio, contendo um único
intervalo. Assim:
10
Portanto, JIvI dt = I1 + I2 + I3 + I4 + I5 + I6 + I7 » 29.0572 m.
0
Prezado(a) aluno(a),
Este exercício é uma aplicação de integração numérica. A modelagem do problema vai
utilizar a fórmula do comprimento de arco, L, de uma curva representada por uma
função f: I = [a, b] c R ® R. Em Cálculo 2 você aprendeu que L =
b
J V1+(f’(t))2 dt
a
.
Enunciado da atividade
(I) Leia atentamente um dos seguintes materiais didáticos sobre a Regra de Simpson: (1)
apostila do curso; (2) Apostila do professor Castilho e slides (Aula - Unidade 5), ambos
localizados na página da FAMAT: http://www.portal.famat.ufu.br/node/278 e (3) livro
de Cálculo Numérico da professora Neide Maria Bertoldi Franco.
(II) Resolva o seguinte exercício: Uma telha ondulada tem a forma da função dada por
f(t) = 0.05 sen(50 t), t in [1, 2]. A parte não ondulada da telha mede 3 metros. Quarenta
telhas serão utilizadas para cobrir uma garagem e serão pintadas com uma tinta especial
impermeabilizante que, também, tem o efeito de reduzir o aquecimento do local
coberto. Um litro desta tinta custa R$2,80. O rendimento da tinta é o seguinte: 9 litros
de tinta para cada 5 m2. Qual o custo para se pintar as 40 telhas? Sugestão: a área de
168
Cálculo Numérico
uma telha é A = 3 x L. Use a Regra de Simpson com 8 subintervalos para calcular L.
Qual seria a economia se o valor de L fosse calculado com 1000 subintervalos?
(1) Obtenção de h.
b
A integral J V1+( f ' t))2 dt
a
( vai ser resolvida pela Regra de Simpson com m = 8
Observe que g(t) = [ 1 + 6.25 cos2(50 t)) ]1/2, pois f '(t) = 2.5 cos(50 t).
(0.125/3) { g(t0) + 4 [ g(t1) + g(t3) + g(t5) + g(t7)] + 2 [g(t2) + g(t4) + g(t6)] + g(t8) } .
Neste caso, devemos utilizar um código computacional para obter o valor aproximado
da integral pela regra de Simpson. O valor da integral obtido pela regra de Simpson,
com m = 1000 subintervalos, é dado por IS = 1.9416 (utilizando arredondamento
simétrico na quarta casa decimal depois da vírgula).
169
Cálculo Numérico
Com o valor mais preciso para L, a área de uma telha é dada por A = 3 x L = 3 x
1.9416 m2 = 5.8248 m2. Desta forma a área de 40 telhas é igual a AT = 232.992 m2 »
233 m2. Como o rendimento da tinta é de 5 m2 para cada 9 litros então para se pintar 233
m2 serão necessários 419.4 litros de tinta. Como 1 litro de tinta custa R$ 2,80 então o
custo total para se pintar 40 telhas será igual a R$ 1.174,32. Em relação ao custo
anterior (valor menos preciso de L), isto daria uma economia de R$ 342,72.
for j = 1:m+1
x(j) = a + (j-1)*h; %pontos igualmente espaçados; o 1° ponto é x(1) e não x(0).
y(j) = fsimp(x(j)); %avaliação da função nos pontos da regra de integração
end
for j = 2:2:(m-2)
soma_p = soma_p + y(j);
soma_imp = soma_imp + y(j+1);
end
IS = (h/3)*(y(1)+4*(soma_p+y(m))+2*(soma_imp)+y(m+1));
fprintf('O valor da integral, obtido por Simpson, eh dado por %12.24f\n', IS);
170
Cálculo Numérico
A função fsimp foi implementada em Octave e o arquivo recebeu o seguinte nome:
fsimp.m. A rotina computacional está descrita abaixo.
function g = fsimp(x)
g = 1 + 6.25*cos(50.0*x)*cos(50.0*x);
g = sqrt(g);
%sqrt calcula a raiz quadrada de um número real positivo.
%Fim da rotina
7. Atividades suplementares
Sr
Atividades
Suplementares
Referências sugeridas pelo aluno Clovis Antonio da Silva: (1) Hamilton Luiz
Guidorizzi. Um Curso de Cálculo, v.2. LTC Editora, 5a edição. (2) Heyder Diniz Silva
(ex professor da FAMAT - UFU). Apostilas de Estatística e de Probabilidade.
Atividade 1
A duração de um certo tipo de pneu, em quilômetros rodados, é uma variável que possui
distribuição normal, com média igual a 60.000 km e desvio padrão igual a 10.000 km.
171
Cálculo Numérico
Sugestões:
(1) Reveja o Problema 2 da Seção 5.1. Utilize a função de probabilidade que foi dada
naquele problema juntamente com as suas propriedades.
(i) P(X > 75.000) = P(Z > 1,5) = 0,5 - 0,4332 = 0,0668.
(ii) P(50.000 < X < 70.000) = P(-1 < Z < 1) = 0,3413 + 0,3413 = 0,6826.
(iii) P(63.000 < X < 70.000) = P(0,3 < Z < 1) = 0,3413 - 0,1179 = 0,2234.
O problema proposto na atividade 2 abaixo foi apresentado pelos alunos Bruno Nunes
de Souza, Maksuel Andrade Costa e Ricardo de Oliveira Hakime quando cursavam, no
primeiro semestre de 2005, a disciplina Cálculo Diferencial e Integral 2 na Faculdade de
Matemática da UFU. Uma das tarefas dos alunos daquela turma de Cálculo 2 era a
apresentação de problemas práticos que utilizassem a teoria vista em aula.
Posteriormente, em 2007, eu solicitei ao monitor de Cálculo Numérico (Miller, do curso
de Engenharia Civil da UFU) que aperfeiçoasse o problema com o intuito de motivar o
estudo de técnicas de integração numérica. O trabalho dos alunos está apresentado
abaixo e o trabalho do Miller foi proposto na Atividade 5, Seção 6, deste Módulo 3.
Referência sugerida pelos alunos: Thomas, George B. Cálculo, volume 1; 10° Edição.
Editora Pearson Education.
172
Cálculo Numérico
Atividade 2
Uma empresa fabrica folhas de metal onduladas para telhados. As seções transversais
dessas folhas têm a forma da curva: f(x) = sen([3px]/20), 0 < x < 20. Se as telhas devem
ser moldadas a partir de folhas planas, por um processo que não estique o material, qual
deve ser o comprimento da folha original?
173
Cálculo Numerico
Módulo 4
Solução Numérica de
Problema de Valor Inicial
1. Introdução
Neste módulo você utilizará a série de Taylor de uma função (conteúdo que faz parte da
disciplina Cálculo III) para desenvolver métodos numéricos que serão aplicados a
problemas que envolvem equações diferenciais ordinárias (EDO) de primeira ordem
(conteúdo que também faz parte da disciplina Cálculo III). Além disto, as técnicas de
integração numérica também serão utilizadas para o desenvolvimento de métodos que
resolverão numericamente um Problema de Valor Inicial (PVI) de primeira ordem.
(ii) Construa uma partição de I com n pontos igualmente espaçados: ti = t0 + ih, 0 < i <
n, onde h = (T - t0)/n.
174
Cálculo Numérico
y(ti) = y(ti-i) + hy'(ti-i) + (1/2!)h2y”(ti-i) + ... + (1/k!)hky(k)(ti-1) + Erro,
(iv) Despreze o Erro na expressão anterior; troque y(ti) e y(ti-1) pelos valores
dk
1)
aproximados yi e yi-1; para cada k, troque a derivadas y(k)(ti-1) por k-1
dt
Lembre-se de que y'(t) = f(t, y(t)).
Observação: Seja g uma função de uma variável real h. Diz-se que g(h) = O(hp) quando
()
lim ghph existe e é igual a uma constante.
0
O método mais simples obtido com o procedimento anterior é o método de Euler. Neste
caso, a fórmula de Taylor é dada por y(ti) = y(ti-1) + hy'(ti-1) + Erro, onde Erro =
[1/(2!)]h2y"(Ci-1) = O(h2) e Cn e (ti-1, ti). Seguindo o passo (iv) anterior, obtém-se o
método de Euler:
yi = yi-1 + hf(ti-1, yi-1), 1 < i < n.
Seguindo o passo (iv) anterior, obtém-se o Método do Ponto Médio ou Regra do Ponto
Médio (livro de Cálculo Numérico, da Neide Bertoldi Franco - referência [6] do
Módulo 1):
yi = yi-2 + 2h.f(ti-1, yi-1), 2 < i < n.
175
Cálculo Numérico
Outros autores, como Chapra e Canale, Burden e Faires, atribuem o nome de Método do
Ponto Médio ao seguinte esquema:
E?
Referências
[1] BURDEN, R.L., FAIRES, J.D., Análise Numérica - tradução da 8a edição norte-
americana, São Paulo, Cengage Learning, 721 p., 2008.
[2] CHAPRA, S.C., CANALE, R.P., Métodos Numéricos para Engenharia, São Paulo,
McGraw-Hill, 809 p., 2008.
Como foi dito na introdução deste módulo, o Método de Euler é o método mais simples
que pode ser aplicado a um PVI. Neste caso, de acordo com os passos (i - iv) descritos
na Seção 1 anterior, a expansão de Taylor da função incógnita é dada por y(ti) = y(ti-1) +
hy'(ti-1) + [1/(2!)]h2y"(ci_1), cí-1 e (ti-1, ti) e o método de Euler é dado por
176
Cálculo Numérico
Exemplo 1. (Método de Euler)
A equação anterior é uma clássica EDO linear de primeira ordem cuja solução analítica
é conhecida. A técnica do fator integrante (veja a observação (*) adiante) é utilizada
para se obter a solução de uma EDO deste tipo. No exemplo em questão, a solução
analítica é dada por: y(t) = 4e(t - x) - t - 1. A solução analítica vai nos auxiliar no quesito
relacionado à precisão do método numérico.
Este Problema de Valor Inicial será resolvido, primeiramente, com o Método de Euler e
irá nos acompanhar até o final deste módulo 3. Com o intuito de apresentar uma
sequência evolutiva dos métodos numéricos aplicados a PVI, este primeiro exemplo
será utilizado como modelo de comparação entre os diversos métodos exibidos aqui. A
eficiência de cada método será caracterizada basicamente por dois fatores: o esforço
computacional e a precisão da solução.
(ii) h = (T - t0)/n n = (1.2 - 1)/0.05 = 20/5 = 4; logo ti = t0 + ih, 0 < i < 4, ou seja,
Sabendo que ft, y) = t + y, o método de Euler, yt = yi-1 + hfltj-1, yi-1), dará origem aos
seguintes valores:
Portanto, y(1.2) = y(t4) » y4 = 2.662025. Note que a solução analítica, y(t) = 4e(t - - t -
1, fornece o seguinte valor: y(1.2) = 2.685611033.
y(t) =
Jb(x) dx t
J a(x)0(x) dx + y0 }.
e t0
t0
177
Cálculo Numérico
A interpretação geométrica exibida a seguir foi retirada do projeto “Aperfeiçoamento
das Técnicas de Ensino-Aprendizagem da Disciplina Cálculo Numérico”, no âmbito do
Programa Institucional de Bolsas de Graduação da UFU - PIBEG, realizado pela equipe
composta por quatro professores da FAMAT: Sezimária de Fátima Pereira Saramago
(coordenadora do projeto), Alessandro Alves Santana (colaborador); Célia Aparecida
Zorzo Barcelos (orientadora) e César Guilherme de Almeida (orientador) e por dois
alunos de graduação: Paulo Balduíno Flabes Neto (Faculdade de Engenharia Mecânica)
e Warlisson de Inácio Miranda (Faculdade de Matemática). O projeto foi realizado no
período de 01 de outubro de 2007 a 31 de outubro de 2008.
Todo o material didático produzido pela equipe do projeto citado anteriormente está
disponível no seguinte endereço eletrônico (na página da FAMAT):
http://www.portal.famat.ufu.br/node/278.
Considere a reta r0(x) que passa por (x0, y0) e tem coeficiente angular y'(x0) = f(x0, y0), ou
seja r0(x) = y0 + (x - x0)f(x0, y0). No Método de Euler, y(x1) » r0(x1) = y0 + (x1 - x0)f(x0, y0)
= y0 + hf(x0, y0) = y1. A Figura 1 abaixo exibe esta aproximação para o caso em que o
PVI é dado por y'(x) = y(x) e y(0) = 1, cuja solução é y(x) = ex.
No caso geral, considera-se a reta ri-1(x) que passa pelo ponto (xi-1, yi-1) e que tem
coeficiente angular f(xi-1, yi-1), isto é, ri-1(x) = yi-1 + (x - xi-1)f(xi-1, yi-1). A aproximação de
y(xi) é dada por ri-1(xi), ou seja, y(xi) » ri-1(xi) = yi-1 + (xi - xi-1)f(xi-1, yi-1) = yi-1 + hf(xi-1, yi-1)
= yi.
178
Cálculo Numérico
Erro Global do Método de Euler
Já foi dito na Seção 1 que o erro local do método de Euler é o erro de truncamento da
série de Taylor da função y. Isto acontece porque no cálculo do Erro Local (Eloc)
considera-se que y(ti-1) = yi-1. Assim, da equação diferencial dada no PVI, tem-se que
f(ti-1, yi-1) = f(ti-1, y(ti-1)) = y'(ti-1). Portanto,
Como o Erro Local do método de Euler é O(h2), diz-se que este método tem ordem 1.
Para a análise do erro global do Método de Euler, serão consideradas hipóteses sobre a
função do PVI, f(t, y), e sobre a derivada segunda da função incógnita, y(t): (i) Suponha
que f seja uma função Lipschitziana na segunda coordenada (y), ou seja, suponha que
exista uma constante positiva L tal que |f(t,y) - f(t,Y)| £ L|y - Y|, quaisquer que sejam t e
[t0, T], y e Y reais. (ii) Suponha, também, que |(1/2)y''(t)| £ k, para todo t e [t0, T].
s = mn - 1 + mn - 2 + - + m2 + m + 1 ms = mn+mn - 1 + ••• + m3 + m2 + m
n
1 —^
s- ms = 1 - mn ■ s(1 - m) = 1 - mn s=
1—p,
179
Cálculo Numérico
— ly(í2) - y2| £ [y(íi) - yil + hL\y(ti) -yi\ + (1/2)h2k, pois ci e (ti, t2).
Como |y(ti) -yi| £ h2k então |y(t2) -y2\ £ [i + hL]h2k + h2k , ou seja
- Iy(t3) -yal £ y(t2) -y>\ + hL\y(t2) -y2\ + h2k, pois c2 e (t2, ta).
y(t3) -y3\ £ [i + hL]{[i + hL] + i}h2k + h2k = h2k{[i + hL]2 + [i + hL] + i}.
y(t/) -y/\ £ h2k{[i + hL]- i + [i + hL]- 2 + ... + i}, i < j < n. Portanto,
\y(tj +i) -yj +i\ = y(0 + hfth y(tj)) + (i/2)h2y"(cj) -yj - hfth yj)\ -
- \y(tj +i) -yj +i\ £ ly(tj) -yj\ [i + hL] + h2k, pois cj e (j tj +1).
\y(tj-+i) - yj+i\ £ h2k {[i + hL]j - i + [i + hL] - 2 + ... + [i + hL] + i}[i + hL] + h2k —
[y(tj +i) - yj+i\ £ h2k {[i + hL] + [i + hL] - i + ... + [i + hL]2 + [i + hL] + i}.
T—t 0
(( + ( — ) ))
i+ T t0 L —i
i n
n
0 £ \y(tn) - yn\ £ k
n L
i80
Cálculo Numérico
(
n
(T-t o) L (T-t0)L (T-t0) L
Note que lim 1 + = e e lim — = 0. Portanto,
n^+w y n n^+w n
lim |y(tn)-yn|= 0.
n^ + w
Como foi mostrado na Introdução (Seção 1), o Método do Ponto Médio é um método de
ordem 2 e, portanto, tem uma ordem de precisão a mais do que o Método de Euler.
Além disto é um método de passo múltiplo; de passo 2, para ser mais específico, ou
seja, o esquema numérico precisará de 2 valores para ser iniciado: y0 e y1.
Note que o valor de y1 deve ser calculado por algum método que tenha,
preferencialmente, a mesmo ordem do Método do Ponto Médio. Isto evita a introdução
de imprecisões numéricas logo no início do método.
Como, até este momento, não foi deduzido formalmente nenhum método de ordem 2,
auto.iniciante (método de passo simples que necessita apenas do valor y0, dado no PVI,
para ser iniciado), o próximo exemplo exibirá uma aplicação do Método do Ponto
Médio que utilizará o valor de yi calculado pelo Método de Euler (que possui ordem i).
181
Cálculo Numérico
(i) I = [t0, T] = [1, 1.2];
(ii) h = (T- to)/n n = (1.2 - 1)/0.05 = 20/5 = 4; logo ti = to + ih, 0 < i < 4, ou seja,
Sabendo que ft, y) = t + y, o método do Ponto Médio, yt = yf.2 + 2hf(ti-1, yn), dará
origem aos seguintes valores:
Portanto, y(1.2) = y(t4) » y4 = 2.6842. Este valor é mais preciso do que o obtido pelo
Método de Euler; basta comparar com o valor fornecido pela solução analítica, y(t) =
4e(t - n - t - 1, y(1.2) = 2.685611033. ■
Para a análise do erro global do Método do Ponto Médio, serão consideradas hipóteses
sobre a função do PVI, f(t, y), sobre a derivada terceira da função incógnita, y(t), e sobre
a aproximação inicial de y(t1), denotada por y1: (i) Suponha que f seja uma função
Lipschitziana na segunda coordenada (y), ou seja, suponha que exista uma constante
positiva L tal que |f(t,y) - f(t,Y)| £ L|y - Y|, quaisquer que sejam t e [t0, T], y e Y reais.
(ii) Suponha, também, que |(1/3)y'''(t)| £ k1, para todo t e [t0, T]. (iii) |y(t1) -y1| £ Ch3.
disto, yi = yi-2 + 2hf(ti-1, yi-1), 2 < i < n; y(t0) = y0 e y1 foi obtido por um método de
ordem 2, ou seja, |y(t1) - y1| £ Ch3. Assim,
182
Cálculo Numérico
3
Ly(tf) -yi| = |y(ti-2) + 2h /(tf-1, y(ti-1)) + — {(y'''(ci-1) + y'"^)} -y« + 2h /(tf-1, yf_1)| -
Assim,
|y(t2) - y2| £ |y(tü) - yü| + 2hL|y(t1) - yx| + h3k1 £ 2hLCh3 + h3k1 £ h3k{2hL + 1},
|y(t3) -ya| £ |y(t1) -y1| + 2hL|y(t2) -y2\ + h3k1 £ Ch + 2hL{h3k[2hL + 1]} + h3k1 £
|y(t4) - y4| £ |y(t2) - y2| + 2hL |y(t3) -y3| + h3k1 £ h3k{ 2hL + 1 } + 2hL{ h3k +
Considere h < 1/(2L) ou, equivalentemente, n > (T - t0)2L. Seja Z = 2hL < 1. Por
indução finita, suponha que
183
Cálculo Numérico
\y(tj+1) -yj +1| £ pi: '(h) + h"'k{Zj + Z- 1 + — + 1},
Por indução finita, segue-se que 0 £ y(tn) -yn| £ p(n)(h) + h3k {Zn " 1 + Zn - 2 + — + 1}.
Dado e > 0 existe d > 0 tal que \h\ < d • \p(n)(h)\ < e. Seja n0 > máximo{(T - t0)/d,
(T- t0)2L}. Assim, se n > n0 então h < d — \p(n)(h)\ < e — \p(n)([T - t0]/d)\ < e. Observe
que: n > n — h < 1/(2L) — Z < 1.
h2 3
h
y(ti) = y(ti-1 + h) = y(ti-1) + hy'(ti-1) + 2h! y"(M + y"'(ci-1), Ci-1 e (ti-1, ti).
3!
Sabendo que y'(t) = f(t, y(t)) e utilizando a regra de derivação conhecida como Regra da
d f df
Cadeia (*), tem-se que y"(t) = ftí, y(t)) + ypPyXjp onde f = —, fy = -^y e
y'(t) = f(t, y(t)).
184
Cálculo Numérico
(*) Para obter informações sobre a Regra da Cadeia, consulte as
referências abaixo e o material didático desenvolvido para a
disciplina Cálculo III.
[3] BOULOS, P. Introdução ao cálculo. Volume 2. Editora Edgard Blucher Ltda, São
Paulo, 1974.
3
h
Na expansão de Taylor dada anteriormente, desprezando-se o erro ( y'''(ci-1) =
3!
O(h3), ci-1 e (ti-1, ti)) e trocando-se os valores exatos pelos valores aproximados (veja os
passos (i - iv) apresentados na Seção 1 deste módulo), obtém-se o Método de Taylor de
ordem 2:
yi-1) + 2!
yi = yi-1 + hf(ti-1, {ft(ti-1, yi-1) + fy(ti-1, yi-1).f(ti-1, yi-1)}, 1 < i < n.
h3
Eloc = |y(ti) - yi| = |O(h3)| = — |y'''(ci-1)|, ci-1 e (ti-1, ti).
Como o Erro Local é O(h3), diz-se que este Método de Taylor tem ordem 2.
185
Cálculo Numérico
Exemplo 3. (Método do Ponto Médio com valor y1 calculado pelo Método de
Taylor de ordem 2) Considere o seguinte PVI:
(ii) h = (T - to)/n — n = (i.2 - i)/0.05 = 20/5 = 4; logo ti = to + ih, 0 < i < 4, ou seja,
O método do Ponto Médio, yi = yi-2 + 2hf(ti-i, yi-i), dará origem aos seguintes valores:
Portanto, y(i.2) = y(t4) » y4 = 2.6852o5. Este valor é mais preciso do que aquele obtido
no Exemplo 2, no qual, também, considerou-se o Método do Ponto Médio, porém yi foi
calculado pelo Método de Euler de ordem i. Lembre-se de que a solução analítica, y(t)
= 4e(t - n - t - i, fornece y(i.2) = 2.6856iio33. ■
O Próximo exercício tem como propósito mostrar que o Método de Taylor de ordem 2
demanda mais contas (mais esforço computacional) do que o Método do Ponto Médio,
embora os dois métodos tenham a mesma precisão (ordem 2).
i86
Cálculo Numérico
h.
yi = yi-1 + hf(ti-1, yi-1) +
2!
{ft(ti-1, yi-1) + fy(ti-1, yi-1).f(ti-1, yi-1)} = yi-1 + —f(ti-1, yi-1) +
h2
— {1 + ftti-i, yi-i)}.
Assim,
2
y1 = y0 + hf(t0, y0) + — {1 + ftt0, y0)} = 2 + 0.05(1 + 2) + 0.00125{1 + (1 + 2)} =
2.155.
2
y2 = yi + hf(ti, yi) + 2?! {1 + fa, yi)} = 2.155 + 0.05(1.05 + 2.155) + 0.00125{1 +
(1.05 + 2.155)} = 2.32050625.
2
y3 = y2 + hf(t2, y2) + 2- {i + f(t2, y2)} = 2.32050625 + 0.05(1.1 + 2.32050625) +
0.00125{1 + (1.1 + 2.32050625)} = 2.497057195.
2
y4 = y3 + hftt3, y3) + 2! {1 + ftt3, y3)} = 2.497057195 + 0.05(1.15 + 2.497057195) +
0.00125{1 + (1.15 + 2.497057195)} = 2.685218876. D
s
Ki = yi - 1 + h £ al>] f (t^+hC ,K );
j=1
j j 1 £ l £ s;
s
yi = yi- 1 + h £ b f (t;
j=1
j -1+hCj,Kj); 1 £ i £ n.
s
Os parâmetros a, , ci = al . e bj são determinados de modo a garantir a igualdade
j=1
dos polinômios de Taylor, na variável h, oriundos do desenvolvimento de Taylor da
função f que aparece tanto na expressão do Método de Runge - Kutta quanto na
expressão do Método de Taylor de uma determinada ordem.
Os métodos s-RK dados pela fórmula geral exibida anteriormente são denominados
métodos implícitos. Neste material didático, não serão deduzidos os métodos implícitos.
Uma referência importante sobre o assunto é a seguinte:
187
Cálculo Numérico
BUTCHER, J.C. The numerical analysis of ordinary differential
equations: Runge-Kutta and general linear methods. Wiley-Interscience
Bibliografia
Adicional Comentada New York, NY, USA, 1987.
Eu utilizei este livro em minha dissertação de Mestrado. Fui orientado pela professora
Célia Maria Finazzi de Andrade, ICMC - USP - São Carlos. A professora Célia
emprestou o livro dela, novinho em folha, para mim. Era o meu livro de cabeceira, era a
minha Bíblia. Café da manhã, almoço e janta, o livro sempre a vista. Chorei, sorri, senti
me aliviado diante dele. Dissertação finalizada, defendida e aprovada, em fevereiro de
1993, devolvi o livro para a professora Célia Finazzi. Ela mostrava com orgulho, para a
professora Neide Bertoldi, as folhas encardidas pelo manuseio. Se não me engano, a
dissertação foi aprovada com louvor pelos membros da Banca Examinadora: Célia
Finazzi, Neide Bertoldi Franco (ICMC - USP) e Sebastião Pereira Martins (IBILCE -
UNESP - São José do Rio Preto).
Observação: No caso geral, os s estágios de um método de Runge - Kutta são obtidos
através da resolução de um sistema de s equações não lineares. Este tipo de sistema não
será abordado neste material, mas quem tiver interesse no assunto pode consultar, por
exemplo, o livro da Vera Lúcia Lopes e Márcia Ruggiero (Bibliografia comentada na
Seção 4.2 do módulo 2). Os parâmetros de um s-RK podem ser exibidos matricialmente
como segue.
s
a11 a12 a13 a1s
ci = Z
j=1
qi,j
s
a21 a22 a23 a2s
c2 = Za
j=1
2,j
s
a31 a32 a33 a3s
c3 = Za
j=1
3,j
s
as1 as2 as3 ass
Cs = Za
j=1
s,j
bi b2 b3 bs
188
Cálculo Numérico
Desta forma, dados os valores de Ki, Kj-i, o valor do estágio Kj, 2 < j £ s, será obtido
resolvendo-se a equação Kj = Fj(Ki, Kj-1, Kj). A fórmula de um s-RK diagonalmente
implícito é exibida a seguir.
l
Ki = yi - i + h Ea
j=i
j (tf-i+hCj,Kj); 1 £ l £ s;
s
yi = yi- 1 + h Eb
j=i
jf (ti-i+hCj,Kj); 1 £ i £ n.
1
a11 0 0 0
c1 = Ea
j=1
1,j
2
a21 a22 0 0
C2 = Ea
j=1
2, j
3
a31 a32 a33 0
C3 = Ea
j=1
3,j
s
as1 as2 as3 ass
Cs = Ea
j=1
s,j
b1 b2 b3 bs
s
yi = yi - 1 + h Eb jf (ti-1+hCj,Kj); 1 £ i £ n.
j=1
189
Cálculo Numérico
c1 = 0 0 0 0 0 0
C2 = a21 a21 0 0 0 0
2
a31 a32 0 0 0
c3 = Ea
j=1
3, J
s-1
as1 as2 as3 as,s-1 0
cs = Ea
J=1
s, J
b1 b2 b3 bs-1 bs
yi = yi- 1 + h{b1 yi-1) + b2 f(ti-i + hc2, yi- 1 + ha21 fiti-h yt- 1))}, 1 £ i £ n.
yi = yi-1 + h{b f(ti-1, yi - 1) + b2 fit{ - 1 + hc2, yi - 1 + ha21 flfi - 1, yi - 1))} = yi - 1 + hb f(ti- 1, yi -1)
+ h b2{ f(ti-1, yi -1) + ft(ti - 1, yi - 1). hc2 + fifa - 1, yi - 1).ha21 fífi -1, yi - 1) + O(h2)} =
yi - 1 + hf(ti - 1, yi -1) [b1 + b2] + h2[b2 C2 f(ti - 1, yi - 1) + b2 a21 fy(ti - 1, yi - 1) fit{ - 1, yi - 1)] + O(h3).
yi = yi-1 + hf(ti -1, yi -1) [b1 + b2] + h2b2 C2 [f£(tf - 1, yi - 1) + fy(ti - 1, yi - 1) ft -1, yi - 1)] + O(h3).
190
Cálculo Numérico
Desta forma,
b1 + b2 = 1 e b2 c2 = 1/2.
Portanto, existem infinitos métodos de Runge - Kutta de ordem dois e dois estágios.
Supondo-se C2 # 0 então b2 = 1/(2c2 ) e bi = 1 - 1/(2c2 ).
Os dois métodos mais utilizados são o Método de Euler Melhorado e o Método de Euler
Modificado. No Método de Euler Melhorado (ou Aperfeiçoado), tem-se que c2 = 1; b2 =
1/(2c2 ) = 1/2 e b1 = 1 - 1/(2c2 ) = 1/2. No Método de Euler Modificado, tem-se que
c2 = 1/2; b2 = 1/(2c2 ) = 1 e b1 = 1 - 1/(2c2 ) = 0. Desta forma, as expressões destes
métodos são as seguintes:
i9i
Cálculo Numérico
Note que Li(ti+ h) = yi + hW(ti, yi) é uma aproximação do Método de Euler de ordem i,
a qual será denotada por yt+i.
Agora considere o ponto P = (ti+i,yt+i). A reta passando por P e que tem coeficiente
angular dado por W(ti+i, yyi+i) é dada por L2(t) = yyi+i + W (xi+i,yyi+i) (t - ti+i)
(Veja a Figura 3).
i92
Cálculo Numérico
Figura 4 - Módulo 4 - 3a parte da interpretação geométrica - Euler Melhorado
L(t) = yi + (
f ti ■ yi ) + f (t i+1 ■ yi+1 ) (t - ti).
2
193
Cálculo Numérico
Como exercício, faça a interpretação geométrica do Método de Euler Modificado.
y2 = y1 + hf(t1+ h/2, y1 + (h/2) f(t1, y1)) = 2.155 + 0.05{t1 + h/2 + y1 + (h/2)[t1 + y1]} =
2.155 + 0.05{1.05 + 0.025 + 2.155 + 0.025 [1.05 + 2.155]} = 2.32050625;
194
Cálculo Numérico
y3 = y. + hf(t2+ h/2,y2 + (h/2) f(t2,y2)) = 2.32050625 + 0.05{t2 + h/2 + y2 + (h/2)[t2 + y2]}
= 2.32050625 + 0.05{1.1 + 0.025 + 2.32050625 + 0.025 [1.1 + 2.32050625]} =
2.497057195;
Portanto, y(1.2) = y(t4) » y4 = 2.685218876. Note que todos os valores obtidos pelo
Método de Euler Modificado coincidem com os valores obtidos, no Exercício 1 da
Seção 3.3, pelo Método de Taylor de ordem 2; porém o Método de Euler Modificado
não utiliza derivadas parciais. Lembre-se de que a solução analítica, y(t) = 4e(t - 1) - t - 1,
fornece y(1.2) = 2.685611033. ■
195
Cálculo Numérico
Síntese
Os Métodos de Runge - Kutta de ordem p são de passo um, ou seja, são auto-iniciantes;
não exigem o cálculo de derivadas parciais da função f(t,y) dada no PVI; necessitam
apenas do cálculo de f(t,y) em determinados pontos, que são obtidos através de uma
comparação com o Método de Taylor de ordem p; são análogos ao Método de Taylor
de ordem p no seguinte sentido: expandindo-se a função f em série de Taylor em torno
do ponto (ti-i, yi-i) e agrupando-se os termos em relação às potências de h, de 0 até p, a
expressão do método de Runge - Kutta (polinômio de grau p na variável h) coincide
com a expressão do Método de Taylor.
ti ti t
i
J f(t,y(t)) dt
tJ y'(t) dt = t Jf (t,y(t)) dt
y(ti) = y(ti-i) + e y(t0) = y0.
i-i i-i t
i-i
t t
J p(I)( t ) dt
i i
t t ti-i ti-i
J p II (t) dt;
i i
(iv) Substitua y(ti) e y(ti-i) pelos valores aproximados yi e yi-i. Nas regras de integração,
substitua G(ti-j) = f(ti-j, y(ti-j)) pelo valor aproximado f(ti-j, yi-j), para cada j, o £ j £ m + i.
i96
Cálculo Numérico
Observação: O erro local dos métodos de Adams coincide com o erro de integração
numérica:
it t i
ti ti
Em = J G(t,y(t)) dt - J p[I1 (t) dt. )
t
i-i t i- i
Observação: Os métodos que são construídos com a utilização do polinômio p(I) são
denominados métodos implícitos (Adams - Moulton) e os que utilizam o polinômio p(II)
são denominados métodos explícitos (Adams - Bashforth).
Considere o polinômio de Lagrange de grau i sobre os pontos: (I) xo,I = ti-i e xi,I = ti
e sobre os pontos: (II) xo,II = ti-2 e xi,II = ti-i. Estes polinômios serão representados por
p(J)(t) = G(xo,j)Lo,j(t) + G(xi,j)Li,j(t), onde Loj(t) = (X X^T; LJt) = ;
(x - X );
o,9 i, 9/
Li,j(t)
( - )
xi,9 xo,9
J = I ou J = II e G(t) = f(t, y(t)).
t
J p(I)(t ) dt
i
Porém este cálculo é exatamente o mesmo que foi realizado na obtenção da Regra do
Trapézio (Seção 5.i do Módulo 3). Portanto,
i i i
Rii = J P( 11 (ti
o
) -i + uh) hdu = G(ti-2) J-uhdu
o
+ G(t,-i) J (u + i) hdu
o
■ Rii = (h/2){- G(t-2) + 3G(ti-i)} — Rii = (h/2){- f(t-2, y(t-2)) + 3f(t-i, y(t-i))}.
i97
Cálculo Numérico
Observação: O primeiro método anterior é implícito porque a sua expressão é da forma
yi = FI(yi), onde FI(yi) = yi-1 + (h/2){f(ti-1, yi-1) + f(ti, yi)}. Portanto, yi está em função dele
mesmo, ou seja, yi está definido de modo implícito. O valor de yi, em geral, é calculado
através de um método apropriado para obter zero de função, tal como o Método do
Ponto Fixo (ou Método Iterativo Linear).
t e (ti-1, ti).
Supondo que a derivada segunda G(2) seja contínua então E(I) vai ter a mesma expressão
do erro da Regra do Trapézio (veja a Seção 5.1 do Módulo 3). Assim, E(I) =
h3G(2)(c)
-------12 ■ onde c e (ti-1, ti).
(II) t G 2 (t) ( )
J N(t) 2277 dt ■
i
Além disto, E(II) = t i-1 onde N(t) = (t - ti-2)(t - ti-1) > 0, " t e (ti-1, ti).
Considerando-se a mesma hipótese anterior sobre G(2) e usando o Teorema do Valor
Intermediário para integrais (veja as observações apresentadas na Seção 5.1 do Módulo
i-1
N(t) dt.
N (t) dt' Utilizando a troca de variáveis t = ti-1 + uh
obtém-se que
G(2)( c) 1
E(II) = 2 J Nuh)hdu = J(„ +1) Udu = 52^,
12
0
02 0
c e (ti-1, ti).
Observação: Como G(c) = f(c, y(c)) = y’(c) então G(2)(c) = f (2)(c, y(c)) = y(3)(c).
198
Cálculo Numérico
Método Previsor - Corretor de ordem 2
(i) Obtenha os valores iniciais do método previsor (método explícito de passo múltiplo -
Método de Adams-Bashforth), utilizando um método auto-iniciante que tenha a mesma
ordem que os métodos implícito e explícito.
(ii) Calcule o valor de yi pelo método previsor e denote este valor por yi(0).
(iii) Use o valor yi(0) no lado direito da expressão do método corretor (método implícito
- Método de Adams-Moulton). Mais especificamente, com a notação utilizada
anteriormente (veja a primeira observação da Seção 4.1 deste módulo), substitua FI(yi)
por FI(yi(0)).
(iv) Execute quantas correções forem necessárias para obter a aproximação desejada
para yi. Note que, para cada i, está sendo executado o Método do Ponto Fixo (análogo
ao estudado no tópico Zero de Função): yi(k) = Fi(yi(k-1)), k > 1.
Solução do Exercício 2:
(i) O método previsor tem expressão dada por yi = yi-1 + (h/2){- f(ti-2, yi-2) + 3f(ti-1, yi-1)},
logo precisa de dois valores inicias y0 e y1. De acordo com o PVI, y0 = 2. O valor de y1
deve ser ser calculado por um método de ordem 2, auto-iniciante (ou de passo 1).
Utilizando o Método de Runge-Kutta de ordem 2, considere y1 = 2.155.
199
Cálculo Numérico
y2(0) = y1 + (h/2){— /(tc, yc) + 3f(t1, y1)} = 2.155 + 0.025{- fa + yc) + 3(t1 + y1)} •
(iii e iv) A partir de y2(0) serão realizadas iterações (neste exercício, serão realizadas
apenas duas iterações) com o método corretor (método implícito): y2(k) = FI(y2(k-1)), k = 1
e k = 2. Como o método iterativo é dado por y2(k) = y1 + (h/2)f(t1, y1) + (h/2)f(t2, y2(k-1))
então durante as iterações o valor de y1 + (h/2)f(t1, y1) não se altera. Desta forma, o
método corretor fornecerá as seguintes aproximações:
valor constante:
y3(0) = y2 + (h/2){- /fa, y1) + 3/fa, y2)} = 2.320640859 + 0.025{- fa + y1) + 3(t2 + y2)} •
valor constante:
iterações:
y3(1) = 2.40615688 + (h/2)f(t3, y3(0)) = 2.40615688 + 0.025(t3 + y3(0)) •
200
Cálculo Numérico
( Previsor: yi = yi-1 + (h/2){- f(ti-2, y-2) + 3f(ti-1, yi-1)} )
y4(0) = y3 + (h/2){- fo, 72) + 3f(t3, y3)} = 2.497340217 + 0.025{- (t2 + y2) + 3(t3 + y3)} •
valor constante:
iterações:
y4(1) = 2.588523722 + (h/2)f(t4, y4(0)) = 2.587116135 + 0.025(t4 + y/0)) •
Considere o polinômio de Lagrange de grau 2 sobre os pontos: (I) x0,I = ti-2 , x1,I = ti-1
e x2,I = ti e sobre os pontos: (II) x0,II = ti-3 , x1,II = ti-2 e x1,II = ti-1. Usando a mesma
notação da Seção 4.1, estes polinômios serão representados por p(J)(t) = G(x0,J)L0,J(t) +
(t - X1, s)(t - X 2,9)
G(x1,J)L1,J(t) + G(x2,J)L2,J(t), onde L0,J(t) -x ) ; L1,J(t)
(X0,9-X1,9)( X,0,9 X2,9)
) )
(t X0,9 (t X2,9 , L (t) = (t - X 0,9)(t - X 1,9) .
J = I ou J = II e G(t) =
( - )( - )
X1,9 X0,9 X1,9 X2,9
; L2,J(t)
( - )( -
X2,9 X0,9 X2,9 X1, 9) ’
f(t, y(t)).
201
Cálculo Numérico
Utilizando a troca usual de variáveis, t = t-i + uh, obtém-se que:
ti 1 1
uh(u-1)h
Ri = j p( \ t) dt = j p I ( ti
j -11
i- + uh) hdu = Gfa) j -h(-2h) h du +
ti-1 0 0
1 (u+1)h(u-1)h
1 (u +1) h uh h
G(M j h(-h) hdu + G(t0 Jo 2h (h) h du
t
i 11
(u+1) h uh
Rii = j p^11 \t) dt = j (t + uh ) hdu
) -11
ii- = G(ti-3) j -h (-2h) h du +
t
i-1
1 (u+2)h uh 1 (u+2)h(u+1)h
Gt«» r-h-hThdu + G(tH) j 2h(h) hdu
tijN
-1
i(t )
3! dt’ onde Ni(t) = (t - ti-2)(t - tf-1)(t - ti) < 0, " t e (ti-1, ti);
3!
202
Cálculo Numérico
(II)
Em =
tJ Nn(t) G 33 !(t ) dt,
i ( )
onde Nii(t) = (t - ti-3)(t - ti-3)(t - ti-i) > 0, " t e (t-i, ti).
ti-i 3!
Supondo que a derivada terceira G(3) seja contínua; usando o Teorema do Valor
Intermediário para integrais (veja as observações apresentadas na Seção 5.i do Módulo
3) e a troca de variáveis t = ti-i + uh, tem-se que:
G(3)(c) ti
-h4 G(3)(c)
E(I) J N (t) dt I c e (ti-i, ti).
6
t i-i
24
G( 3)(C) t i
9 h4G(3\C)
E(II) = J N (t) dt II C e (ti-i, ti).
6
t i -i
24
Observação: Como G(c) = f(c, y(c)) = y'(c) então G(3)(c) = f (3)(c, y(c)) = y(4)(c).
Já deu para perceber que a resolução numérica de um PVI através dos métodos de
Adams de passo múltiplo, baseados em integração numérica, vai demandar muito
esforço computacional. Por esta razão, não é conveniente ficar fazendo os vários
cálculos exigidos nas iterações do corretor e nas sucessivas avaliações da função f,
exigidas tanto no método previsor quanto no corretor, apenas com o auxílio de uma
calculadora. O ideal é elaborar um programa computacional que faça todos estes
cálculos. Este programa computacional será exibido na Seção 6.
5. Atividades do Módulo 4
Enunciado da atividade
Em alguns exercícios desta lista você precisará lidar com o desenvolvimento de Taylor
de funções de uma ou duas variáveis; portanto, é fundamental que você recorde a teoria
vista sobre este assunto na disciplina Cálculo III.
i) Integrando-se a EDO de um PVI no intervalo [xi-1 xi], obtém-se que y(xi) = y(xi-1) +
xi
J f(x,y(x))dx . Seja G(x) = f(x,y(x)). A integral de G(x) pode ser aproximada pelos
xi-i
polinômios interpoladores sobre os pontos x0 = xi-2, x1 = xi-1 e x2 = xi ou sobre os
2o3
Cálculo Numérico
pontos: x0 = xi-3, x1 = xi-2 e x2 = xi-1. A notação fi denotará f(xi, yi). O procedimento
anterior dará origem aos seguintes métodos:
I) yk = yk-1 + (h/12) [-fk-2 + 8 fk-1+ 5fk], com erro local OI(h4) = (-1/24).h4.y(4)(h);
II) yk = yk-1 + (h/12) [5fk-3 - 16fk-2 + 23fk-1], com erro local OII(h4) = (3/8).h4.y(4)(m);
iii) Ambos os métodos são de passo múltiplo. Diga qual é a multiplicidade do passo de
cada um deles. Justifique.
iv) Comente a seguinte afirmação: “Se o PVI a ser resolvido tiver equação y' = x + y
então os valores iniciais dos métodos I e II poderiam ser calculados pelo método de
Taylor de ordem 3, sem comprometer o esforço computacional. Porém, se o PVI tiver
equação y' = (2/x) y + x2ex, então o método de Runge-Kutta de ordem 3 seria mais
adequado para o cálculo dos valores inicias”.
2) Considere o PVI y' = yx2 - y; y(0) = 1, com x e I = [0, 2]. Seja h = 0.25 o
comprimento dos subintevalos de I. O método de Euler tem equação yi = yi-1 + h fi-1,
onde fi-1 = f(xi-1, yi-1); o método do ponto médio tem equação dada por yi = yi-2 + 2h fi-1, e
possui erro local da forma O(h3). O método de Runge-Kutta explícito de dois estágios e
ordem dois, denominado Euler Modificado, tem equação da forma: yi = yi-1 + hf(xi-1 +
h/2, yi-1 + [h/2]fi-1). O método de Taylor de ordem dois tem equação yi = yi-1 + hfi-1 +
[h2/2] { fx(xi-1, yi-1) + fi-1 fy(xi-1, yi-1) }. Os métodos baseados na regra do trapézio
possuem erro de truncamento do tipo O(h3) e têm equações dadas por: yi = yi-1 + (h/2)
[fi-i + fi] ° F(yi) e yi = y^ + (h/2){- fa + 3fi-i}.
i) Considerando-se o valor de h dado acima, qual deve ser o valor de n para se obter yn »
y(2) ?
204
Cálculo Numérico
iv) Dos métodos exibidos acima, quais são de passo 2? Seria adequado usar o método de
Euler para se obter o valor inicial y1 dos métodos de passo 2?
vi) Use um dos métodos anteriores para obter o valor de y1 que seja adequado para ser
usado nos métodos de passo 2 dados anteriormente.
vii) Obtenha (y2)(0), y2 e (y3)(0) usando o par previsor-corretor dado pelos métodos explícito e
implícito do trapézio. Faça apenas uma iteração com o corretor (método implícito).
(i) Um código calcula a aproximação de y' = f(x,y), no ponto x = 2.3, partindo do valor
inicial y(2) = 0.5 e usando h = 0.015. Alterando-se o valor inicial para y(1) = 2, quantos
passos são necessários para se obter a aproximação do problema modificado, no mesmo
ponto x = 2.3, considerando subintervalos de comprimento h £ 0.015 ?
h
(ii) Obtido yp, calculado pelo método previsor: yi =yi-1 + ( 55 f-i - 59 fi.2 + 37 fi-3 -
24
h
9 fi-4 ), o método corretor, yi = yi-1 +(9 fi + 19 fi-i - 5 fi-2 + 1fi-3 ), em que fi = f(Xi, yi),
24
é empregado de modo eficiente, com esforço mínimo, da seguinte forma:
for k=i:i:i0
205
Cálculo Numérico
y=yc + 24func(5);
end
i) Para se obter uma estimativa para y(1.5), usando h = 0.1, quantos passos devem ser
executados?
Da regra do trapézio obtém-se a fórmula: yk = yk-1 + (h/2) [fk-1 + fk] ° F(yk), que é um
método implícito de passo simples: necessita de apenas um valor inicial, porém yk está
em função dele mesmo (yk = F(yk)). Para resolver um PVI utilizando tal método
necessita-se de um processo previsor-corretor. Este processo consiste em obter uma
estimativa para yk (denotada por yk(p)) através de um método explícito de mesma ordem
que o método dado. Em seguida, resolvendo-se yk = F(yk(p)), corrige-se esta estimativa.
ii) Considere o PVI apresentado anteriormente; faça um passo do previsor-corretor, com
uma única correção. Para o previsor, escolha o mais adequado dos seguintes métodos:
Euler ou Runge-Kutta de 2a ordem, justifique a escolha.
206
Cálculo Numérico
i) O método é de passo múltiplo. Quais são os valores iniciais necessários, além de yo?
Justifique. Os valores iniciais devem ser calculados por um método de qual ordem?
ii) Dado o PVI: y' - x2 + y2 = 0; y(1) = 1, obtenha uma aproximação para y(1.8), com o
método dado; use h = 0.2 e os valores iniciais y(1.2) = 0.96, y(1.4) = 0.89 e y(1.6) =
0.79.
vi) Sabendo que a solução analítica do PVI é y(x) = e-20x e que lim y( x) = o,
x -> +w
explique porquê h < 0.1 é uma escolha adequada para se obter aproximações com este
k
método. Lembre-se de que lim a = o, se |a| < i.
k -> +w
2o7
Cálculo Numérico
Atividade 2 - Método do Ponto Médio
Enunciado da atividade
(I) Leia atentamente um dos seguintes materiais didáticos sobre Métodos Baseados em
série de Taylor: (i) apostila do curso; (2) Apostila do professor Castilho e slides (Aula -
Unidade 6), ambos localizados em www.portal.famat.ufu.br/node/278 e (3) livro de
Cálculo Numérico da professora Neide Maria Bertoldi Franco.
i
(II) A equação diferencial y'(t) = f(t, y(t)) = , com y(t) > o, pode ser resolvida
ln( y(t))
analiticamente utilizando o método das variáveis separáveis, visto em Cálculo 3. A
função incógnita não tem uma forma explícita, ou seja, ela é dada implicitamente por
meio da seguinte equação: y(t)[ln(y(t)) - i] = t + K, onde K é uma constante. Por
exemplo, se considerarmos a condição inicial y(i) = e > i, a constante K será igual a -i.
Neste caso, podemos assumir que a função y(t) é crescente em uma vizinhança de t = i.
(a) Obtenha uma aproximação para y(2) usando o método do ponto médio:
Utilize um método de mesma ordem para obter o valor inicial yi. Observe que a função
f(t, y) = i/(ln(y)) não depende diretamente da variável t. Neste caso a equação é dita
autônoma.
(b) Encontre y(2) utilizando o método de Newton - Raphson. Para isto, resolva o
problema de zero de função: F(y(t)) = y(t).[ln(y(t)) - i] - t - K = o, com t = 2 e K = -i.
Mostre que a função F(y) = y.[ln(y) - i] - i muda de sinal no intervalo [3, 4] e que
F'(y) > o. Portanto, neste intervalo existe uma única raiz da equação F(y) = o.
2o8
Cálculo Numérico
O valor inicial do PVI é dado no ponto t0 = 1 e o valor final é dado no ponto T = 2. De
acordo com o enunciado do exercício, o intervalo [t0 , T] = [1, 2] será particionado em
n = 4 subintervalos. Neste caso, o valor do comprimento dos subintervalos é dado por
T-t 0 2-1
h= = 0.25.
n 4
Como o Método do Ponto Médio tem ordem 2 então o mais adequado é que o valor
inicial y1 seja calculado por um método auto-iniciante de ordem 2. Vamos utilizar o
Método de Euler Modificado:
1
Note que a função do PVI é dada por f(t, y) = assim
ln (y)
1
f(t0, y0) = f(0, e) = 7-7-T = 1.
ln(e)
0.25 0.25
Portanto, y1 = y0 + ----------------------------- ---e +---------------------- = 2.9575 25674.
ln (y0 + 0.125f (t 0, y,))-----------ln (e + 0.125)
209
Cálculo Numérico
Observe que a função F(y) = y[ ln(y) - 1 ] - 1 satisfaz as hipóteses do TVI no intervalo
[3, 4]: F é contínua neste intervalo e F(3).F(4) < 0, pois F(3) < 0 e F(4) > 0.
F (y)
y(n) = j(y(n-1)) , onde j(y) = y - e y(0) é dado.
F' (y)
j(y) = y+1
ln (y)
Vamos utilizar y(0) = 3.5, que é o ponto médio do intervalo que contém a raiz da
equação F(y) = 0. Desta forma, obtemos: y(1) » 3.592060201; y(2) » 3.591121573; y(3) »
3.591121477. Observe que F(y(3)) » 0.42 x 10(-9); portanto, y(3) é uma aproximação de
y(2) com precisão de 9 casas decimais.
Prezado(a) aluno(a),
Vimos que o Método do Ponto Médio, yi = yi-2 + 2h.f(xi-1, yi-1), precisa de 2 valores
iniciais, y0 e y1, para ser inicializado e, portanto, é um método de passo múltiplo (passo
2). Outros métodos de passo múltiplo podem ser deduzidos considerando-se integração
numérica. Um esquema numérico deste tipo é obtido como segue. Integrando-se a EDO
xi
de um PVI no intervalo [xi-1 xi], obtém-se que y(xi) = y(xi-1) + J
f-x,y-x))dx . Seja
xi-1
G(x) = f(x,y(x)). A integral de G(x) pode ser aproximada pelos polinômios
interpoladores sobre os pontos x0 = xi-2, x1 = xi-1 e x2 = xi ou sobre os pontos: x0 = xi-3,
x1 = xi-2 e x2 = xi-1. A notação fi denotará f(xi, yi). O procedimento anterior dará origem
aos seguintes métodos:
I) yi = yi-1 + (h/12) [-fi-2 + 8 fi-1+ 5fi] = F(yi), com erro local OI(h4) = (-1/24).h4.y(4)(h);
II) yi = yi-1 + (h/12) [5fi-3 - 16fi-2 + 23fi-1], com erro local OII(h4) = (3/8).h4.y(4)(m).
O primeiro método tem passo 2 (precisa de dois valores iniciais: y0 e y1) e é implícito
(yi aparece tanto no lado esquerdo como no lado direito da equação I) . O segundo
método é explícito e tem passo 3, isto é, dados os valores inicias y0, y1 e y2, pode-se
encontrar explicitamente o valor de y3.
210
Cálculo Numérico
O esquema previsor - corretor é utilizado da seguinte forma: (i) obtenha os valores
iniciais do método previsor (explícito); (ii) calcule o valor de yi pelo método previsor e
denote este valor por yi(0); (iii) use o valor yi(0) no lado direito do método corretor
(implícito), mais especificamente, no lado direito de I, substitua fi por f(xi, yi(0)); (iv)
execute quantas correções forem necessárias para obter a aproximação desejada para yi.
Note que, para cada i, está sendo executado o Método do Ponto Fixo (análogo ao
estudado no tópico Zero de Função): yi(n) = F(yi(n - * i)) = yi-1 + (h/12).[-fi-2 + 8.fi-1] +
(5h/i2).f(xi, yi(n-i)). Sob certas condições (convergência do Método do Ponto Fixo:
d )
5h f (xi,y < , ) (n) á ( é . ã d ( )
< i ), yi(n) convergira para y. (que é a aproximaçao de y(xi).
i2 dy
Enunciado da atividade
(I) Leia atentamente um dos seguintes materiais didaticos sobre métodos de passo
múltiplo: (i) apostila do curso; (2) Apostila do professor Castilho e slides (Aula -
Unidade 6), ambos localizados na pagina da FAMAT:
http://www.portal.famat.ufu.br/node/278 e (3) livro de Cálculo Numérico da professora
Neide Maria Bertoldi Franco.
d -R— 2
y ’ yo = y(to) = y(0) = 0.
sen2( t )
(ii) Supondo-se que v'(t) seja contínua em t = 0, mostre que v'(0) = . Para isto,
3
use o item anterior para concluir que y ’ (0) — lim dy =
t + o dt
J2 — 2(y ’(0))2 .
2ii
Calculo Numérico
anteriormente (I: corretor e II: previsor), com duas iterações do corretor, para calcular y3
(que será aproximadamente 0.243477727).
()
y' o =lim d- =
t+ o dt
V lim
Vt+ o
[ 2.(1—senM (t^)]
)
t= 2
i
2 — 2i-
2lim
y2(t)
21.
t+o sen (t)
y' (o ) = ^ 2 — 2lim
t+ o sen (t)
= V 2 — 2 (y' (o ))2.
(3) O método previsor é dado por yi = yi-1 + (h/12) [5fi-3 - 16fi-2 + 23fi-1]. Utilizando os valores
inicias: yo = o, y1 = o.o81619463 e y2 = o.162886278; a função do PVI, f(t, y) =
212
Cálculo Numérico
y1 = 0.081619463 ; y2 = 0.162886278; y3(0) = 0.243511561, então
6. Atividade suplementar
sã
Atividades
Suplementares
Atividade 1
L0,J(t) =
(t x 1, a t)( ) )(
x2,a t x3,a ;
( x -x x -x x -X
0,9 1, J( 0,9 2, J( 0,9 3, J ’
(t x )(t x )(t x )
o,a 2, a 3, a ;
L1,J(t) =
( x -x ( x -X X -x
1,9 0,J 1,9 2, J( 1, 9 3,J ’
( X -X ( X -X X -X
2,9 0,J 2,9 1, J( 2,9 3, J’
L3,J(t) = (t - X (t - X (t - X
0,J 1,J 2,J .
( X -X X -X X -X
3,9 0, J( 3,9 1, J( 3, 9 2, J ’
213
Cálculo Numérico
Desta forma, será preciso calcular as integrais dos polinômios de grau 3, p(J)(t), J = I e
J = II, no intervalo [ti-1, ti-1]. Não se esqueça de utilizar a troca de variáveis: t = ti-1 + uh.
Adams - Bashforth:
E« = J N(t)^4^ dt, onde Ni(t) = (t - ti-3)(t - tf_2)(t - tn)(t - ti) < 0, " t e (tw, ti);
t
i-1
e
t
i
G( 4\t)
E(II) = J N (t) II dt, onde NII(t) = (t - ti-4)(t - ti-3)(t - ti-2)(t - ti-i) > 0, "t e (ti-i, ti).
t
i- i
4!
Suponha que a derivada quarta G(4) seja contínua; use o Teorema do Valor Intermediário
para integrais (veja as observações apresentadas na Seção 5.i do Módulo 3) e a troca de
variáveis t = ti-i + uh.
G( 4)( C) t i
214
Cálculo Numérico
2
dy = 2.(i- y- ) , yo = y(to) = y(o) = o.
dt V sen (t)
Este PVI está associado a um problema de engenharia mecânica e representa a resposta
(positiva) de uma certa válvula hidráulica sujeita a uma entrada de variação senoidal
( referência 6 do Módulo i: Neide Bertoldi Franco - Cálculo Numérico).
O código computacional apresentado a seguir é a implementação do método previsor
corretor de Adams - Moulton de ordem 4. Os valores inicias são calculados pelo
método de Runge-Kutta de ordem 4.
Entenda o código computacional e desenvolva o seu próprio código para resolver outros
Problemas de Valor Inicial.
Observação: Como foi mostrado na atividade 3 deste módulo (Seção 5), a função do
PVI anterior no ponto t = o é dado por f(o,o) =
%Entrada de dados.
% Entre com um valor para xo associado ao PVI y'= f(x,y); y(xo) = yo;
xo = o;
% Entre com um valor para yo, valor inicial do PVI y'= f(x,y); y(xo) = yo;
yo = o;
x = i.o;
n = ioo;
max=9;
2i5
Cálculo Numérico
% {Runge-Kutta de quarta ordem}
func(1)=0;
func(2)=0;
func(3)=0;
func(4)=0;
func(5)=0;
func(1)=f_pc(x0,y0);
for i=2:1:4
% Cálculo dos 4 Estágios do método de R-K
k1 = h*f_pc(x0,y0);
k2 = h*f_pc(x0+h/2,y0+k1/2);
k3 = h*f_pc(x0+h/2,(y0+(k2/2)));
k4 = h*f_pc(x0+h,(y0+k3));
y0 = y;
x0 = x0 + h;
func(i) = f_pc(x0,y0);
end
216
Cálculo Numérico
for j=5:1:n+1
%{Adams-Bashforth: PREVISOR}
xx=x0+h;
func(5) = f_pc(xx,yp);
for k=1:1:max
%{Adams-Mouton: CORRETOR}
y = yc+(((h*9.0)/24)*func(5));
func(5) = f_pc(xx,y);
end
func(1) = func(2);
func(2) = func(3);
func(3) = func(4);
func(4) = func(5);
x0 = x0 + h;
end
fprintf('Para ');
%Fim do Código
217
Cálculo Numérico
Observação: No código anterior, a função do PVI foi definida no arquivo f_pc.m, o
qual tem o seguinte conteúdo:
function g = f_pc(x,y)
if(x == 0 && y == 0)
g = sqrt(2/3);
else
g =y/sin(x);
g = g*g;
g = sqrt(2*(1 - g));
end
%Fim da Rotina
Atividade 2
218
Cálculo Numérico
Referências Bibliográficas
CHAPRA, S.C., CANALE, R.P., Métodos Numéricos para Engenharia, São Paulo,
McGraw-Hill, 8o9 p., 2oo8.
FRANCO, Neide Bertoldi, Cálculo Numérico, São Paulo: Pearson Prentice Hall, 2oo6.
ISSACSON, E. and KELLER, H. B., Analysis of numerical methods, John Wiley and
Sons, New York, i982.
LIMA, E. L. Curso de análise. Volume i. Projeto Euclides, SBM, Rio de Janeiro, 2ooo.
LIMA, Elon Lages, Curso de Análise Volume 2 (Projeto Euclides). Rio de Janeiro,
Instituto de Matemática Pura e Aplicada, CNPq, 2ooo.
ORTEGA, J. M., Numerical analysis; a second course, Academic Press, New York,
i972.
2i9
Cálculo Numérico