Escolar Documentos
Profissional Documentos
Cultura Documentos
Notas de aula
RJ- 2016
A disciplina de Cálculo Numérico é muito extensa e rica para ser ministrada em 60 horas/aula,
portanto nestas notas de aula, tentamos colocar os tópicos básicos, acompanhados de exemplos e
aplicações quando possível.
Uma etapa importante na resolução numérica de modelos matemáticos é elaborar com antecipação
um algoritmo, o qual pode ser implementado em alguma linguagem de programação para gerar a
solução aproximada. Nestas notas de aula utilizamos o software Maple para gerar gráficos e
também para implementar alguns algoritmos.
Provavelmente contenha vários erros os quais devem corregidos, para isto esperamos contar com
suas sugestões para melhorá-la. Aguardo suas críticas e sugestões
rosagmarquez@yahoo.com.br ou rgmalillo@gmail.com
Capítulo 1 .......................................................................................................................................... 6
1. Sistemas de Numeração ......................................................................................................... 6
1.1. Representação de um número em diferentes bases ................................................................ 7
1.2. Métodos para conversão de um número decimal para binário ............................................... 8
1.3. Conversão de um numeral na base binaria para a base decimal ........................................... 10
1.4. Mudando de base com ajuda do Maple ................................................................................ 12
Exercícios ............................................................................................................................ 14
1.5. Aritmética de ponto flutuante .............................................................................................. 14
Exercícios ............................................................................................................................ 19
1.6. Erros...................................................................................................................................... 20
a) Erro Absoluto ....................................................................................................................... 21
b) Erro Relativo ............................................................................................................................ 22
c) Erro Percentual ........................................................................................................................ 22
Exercícios ............................................................................................................................ 23
Capítulo 2 ........................................................................................................................................ 25
2.1. Zeros de Funções Reais ............................................................................................................ 25
2.1.2. Estudo da Fase I.............................................................................................................. 26
2.1.2. Estudo da Fase II ................................................................................................................... 31
2.2. Método da Bisseção ou Dicotomia ........................................................................................... 32
2.2.1. Algoritmo do Método da Bisseção ........................................................................................ 34
2.3. Método da Secante............................................................................................................... 36
2.4. Método das Iterações Lineares (MIL) ..................................................................................... 40
Exercícios ............................................................................................................................... 45
2.5. Método de Newton ................................................................................................................... 45
2.5.2. Algoritmo (Mil e Newton) .................................................................................................... 49
Exercícios ............................................................................................................................ 49
Capítulo 3 ........................................................................................................................................ 53
Raízes de Polinômios de grau n ....................................................................................................... 53
Teorema Fundamental da Álgebra .............................................................................................. 53
3.1. Regra dos Sinais de Descartes .............................................................................................. 53
3.2.Teorema de Hua .................................................................................................................... 55
3.3. Cota de Laguerre-Thibault.................................................................................................... 57
Exercícios ............................................................................................................................ 63
Capítulo 4 ........................................................................................................................................ 64
Resolução de Sistemas Lineares ...................................................................................................... 64
4.1 Métodos Diretos ........................................................................................................................ 64
4.1.1. Método de Eliminação de Gauss ....................................................................................... 65
4.1.2. Método de Crout ............................................................................................................... 69
4.1.3. Método de Cholesky .......................................................................................................... 70
4.2 Métodos Iterativos ............................................................................................................. 72
Capítulo 5 ........................................................................................................................................ 86
Interpolação Polinomial ................................................................................................................... 86
5.1. Resolução do Sistema ............................................................................................................... 88
5.2. Forma de Lagrange ................................................................................................................... 89
5.3. Forma de Newton ................................................................................................................. 92
Exercícios ............................................................................................................................ 94
Capítulo 6 ........................................................................................................................................ 98
Integração Numérica........................................................................................................................ 98
6.1. Fórmulas de Newton-Cotes ...................................................................................................... 99
6.1.1 Fórmulas dos Trapézios ...................................................................................................... 99
6.1.2. Estimativa do Erro............................................................................................................ 100
6.1.3. Regra dos Trapézios Repetida ......................................................................................... 101
6.1.4. Regra de Simpson 1/3 ................................................................................................. 103
6.1.5. Estimativa do Erro............................................................................................................ 104
6.1.6. Regra de Simpson 1/3 Repetida ..................................................................................... 105
6.1.7. Estimativa do Erro Simpson Repetida ............................................................................. 106
Exercícios .......................................................................................................................... 108
Formulação do
Problema Modelo
Real Matemático
Solução Interpretação
Numérica: dos
Algoritmo Codificação Resultados
Processamento
Obtidos
1. Sistemas de Numeração
As antigas civilizações utilizaram sistemas de numeração em diversas bases. Há quatro mil anos,
os babilônicos e mesopotâmicos usavam a base sessenta (60) a qual não foi totalmente excluída
em nosso dia a dia, pois consideramos 1 hora com 60 minutos, e um minuto com 60 segundos.
Muitos mercadores europeus utilizavam a base 12, por ter mais divisores que o número 10. Os
maias, astecas e celtas usavam a base vinte (20), na língua francesa atual, por exemplo, detecta-se
vestígios de uma base vinte na denominação de alguns números, cuja base foi utilizada pelos
celtas, povo que viveu na Europa no início da era cristã. Os egípcios, gregos, chineses e incas
adotaram a base decimal, para maiores detalhes veja o livro “Um Enfoque Pedagógico da
Matemática para o Ensino Fundamental” de Zander et al. Os algarismos indo-arábico são os dez
dígitos 0, 1, 2, 3, 4, 5, 6, 7, 8 e 9, com estes algarismos qualquer número pode ser representado,
esta base decimal prevaleceu por sua praticidade.
A forma (1.1) de representação de um inteiro positivo N pode ser escrita de maneira abreviada
como
(am am1am2 ...a1a0 ) b (1.2)
onde 2 b 10 e 0 ai < b
Observação 1.1: Usamos a notação ( . )b para deixar claro que o número está sendo expresso na
base b. Quando não se usa nenhum índice subscrito, fica subentendido que o número está expresso
na base decimal.
Quanto maior for o número natural maior é a quantidade de algarismos da base b <10;
Todo número natural é expresso de modo único em qualquer base.
Considerando a tabela:
Exemplo 3: O número 25.17 não pode ser decomposto em um número finito de potências de 2,
neste caso, estipulamos um número de dígitos para a parte fracionaria
25.17 1 2 4 1 23 0 2 2 0 2 1 20 0 2 1 0 2 2 1 2 3 ...
Portanto o número 25.17 é representado por (11011.001...) 2
O processo descrito acima é o mesmo para qualquer base b (2 b 10), basta fazer sucessivas
divisões do número da base decimal por b até que o quociente seja menor que b.
O número binário é formado pela concatenação do último quociente com os restos das divisões
lidos em sentido inverso ao que foram obtidos, assim:
124 = (1111100)2
A parte fracionaria, multiplicamos por 2 e reservamos a parte inteira
0.1875 2 = 0.3750
0.3750 2 = 0.750
0.750 2 = 1.50
0.500 2 = 1.00
⁞
(0.1875)10 = ( 0.0011)2
Portanto 18.25=(10010.01)2
Para passar um número da base binária para a base decimal somamos o digito multiplicado pela
potência de 2 correspondente à posição relativa. Isto é dado o numeral
(am am1am2 ...a1a0 .a1a2 ...) 2 , escrito na forma (1.1)
Exemplo 1: Dado o numeral (10011)2 , vamos converter este numeral para a base decimal.
(10011)2 = 124 + 023+022 +12 + 120 = 16 + 0 + 0+ 2 + 1 = 19
Portanto (10011)2 = 19.
Exemplo 2: Dado o numeral 1011.011 na base binária, vamos descobrir o número que está
representando.
(1011.011)2 = 123+022 +12 + 120 + 02-1 + 12-2 +12-3 =
= 8 + 0 + 2 + 1 + 0 + 0.25 + 0.125 = 11.375
Portanto (1011.011)2 =11.375 (Onze unidade e trezentos setenta e cinco milésimos)
Observação 1.2: Caso sejam estipuladas 3 casas decimais, este numeral binário, também
representa outros números, como por exemplo: 11.376, 11.377, 11.380.
am am-1 ... a1 a0
2 2 am ... ... ...
am am-1 +2am ... am 2 m am 1 2 m 1 am 2 2 m 2 ... a1 2 N
1 0 0 1 1
2 2 4 8 18
1 2 4 9 19
A mudança de base é um processo mecânico, o software Maple tem várias opções para fazer
mudanças de base. Por exemplo, através do comando:
Exemplo 1:
[> convert([2,1,1], base, 3, 10);
tem como resultado [4,1] ou seja o numeral (112)3 = 14 na base decimal.
Exemplo 2:
Quando estamos com um número inicialmente na base decimal, podemos usar uma forma mais
simples do comando convert , que é “convert(número na base decimal, base, base para a qual
deseja converter)”, obtendo uma lista de algarismo de modo igual a forma anterior.
[> convert(numero-decimal , base, base-nova);
Exemplos
[> convert( “numero-decimal, binary, “nº de casas decimais depois do ponto (da virgula)” ); # ou
simplesmente
[> convert( “numero-decimal, binary)
Exemplos
Para converter um número fracionário na base 2 para base 10, utilizando o Maple use o
comando:
Exemplos:
a) 34 b) 24.5 c) 0.68
d) 56,43 e) 389.141
onde:
: base
t : número máximo de dígitos significativos da mantissa (determina a precisão do número).
(.d1d 2 d 3 ...d t ) : representa a fração na base (chamada mantissa), 0 dj -1, j=1,2,...,t.
: expoente que varia no intervalo [m, M], sendo que estes limites (inferior e superior)
dependem da máquina utilizada.
Exemplo 2: Se considerarmos o sistema binário (=2), e é reservado 1 bit para o sinal do número,
3 bits para o expoente e 5 bits (5 dígitos) para a mantissa.
±.
Exemplo 3: Dê a representação dos números dados na tabela a seguir, num sistema de aritmética
de ponto flutuante normalizado com 3 dígitos significativos na mantissa para
= 10, t =3, m = -5 e M = 5.
Solução
Observe o que ocorre na interação entre usuário e o computador: o usuário passa seus dados no
sistema decimal e toda esta informação é convertida em binário pelo computador. Os resultados
obtidos em binário são convertidos em decimal e transmitido ao usuário. Hoje em dia, a mantissa é
o suficientemente grande, de tal forma que os erros diminuíram consideravelmente.
b) Se N = 11.6
11.6 = 11 + 0.6
Observe que N na base decimal tem representação exata, porém na base 2 sofreu erro de
truncamento.
1 1 1 0 0 1 1 0 1 0 0 1 1 0
N1 = 2 3 4 5 6 7 8 22 = 2 1 2 3 4 5 6 =
2 2 2 2 2 2 2 2 2 2 2 2 2 2
N1 = 3.59375
1 1 1 0 0 1 1 1 1 0 0 1 1 1
N2 = 2 3 4 5 6 7 8 22 2 1 2 3 4 5 6
2 2 2 2 2 2 2 2 2 2 2 2 2 2
N2 = 3.609375
Os números reais podem ser representados por uma reta contínua. Entretanto, em
aritmética de ponto flutuante, são representados por pontos discretos da reta real.
Agora imagine se temos que realizar diversas operações aritméticas com vários números, percebe-
se claramente o acúmulo do erro, e isto é o que gera algumas diferenças quando realizamos
cálculos em máquinas que possuem sistemas distintos, como, por exemplo, se realizarmos esta
mesma operação só que supondo o sistema.
Alguns números reais necessitam de um número infinito de dígitos para representados
como é do caso dos números irracionais (ex. 2 , 3 ,...) números transcendentes (ex. , e, ,...) ou
No maple:
Podemos saber o intervalo de definição do expoente e o número de dígitos máximo da mantissa
para o computador em que o Maple está instalado através do comando “Maple_floats(expresão)”,
onde expressão pode ser:
MAX_EXP, para saber o expoente máximo;
No Maple 17 tem-se: 9223372036854775806
MIN_EXP, para saber o expoente mínimo;
No Maple 17 tem-se: - 9223372036854775806
MAX_DIGITS, para saber a quantidade máxima de dígitos da mantissa.
No Maple 17 usa: 38654705646 dígitos.
Com o comando “Digits:=n” podemos alterar a quantidade de dígitos da mantissa, que por padrão
é 10, onde n é a quantidade desejada. Digite “Digits:=3:” e realize a soma de dois números.
Depois digite “Digits:=5:” e realize a mesma operação aritmética.
EXERCÍCIOS
2) Calcule o valor das expressões que seguem, utilizando a.p.f. de três dígitos, normalizada.
a) 19.4 + 1.87 10.3
b) 27.5 11.3 -3465 0.000572
(12.1 4.052 6.7)
c)
14.1 7.004 (2.5) 3
1 2 5
d)
3 7 6
Respostas:
1) a) .31415 × 106 b) .5 × 10 c) .56237 × 10 d) .1336 × 103
2) a) .109 × 102 b) .309 × 103 c) .130 d) .145× 10
Erro nos dados: Em geral, os dados necessários são obtidos através de experiências, que
estão sujeitos a erros e cada medida é um intervalo e não um valor numérico.
1 1 1 1 1
2
k 0
k
1 2 3 ... n Rn 1 ,
2 2 2 2
Exemplo 3: Para calcular a área de um círculo de raio 200 m. Três pessoas resolvem o problema
da seguinte
1 1 1 1 1
Exemplo 4: Efetuar a somatória S 1
.... utilizando 5 dígitos
1! 2! 3! 4! 10!
significativos. No maple utilizamos os seguintes comandos:
1
Exemplo 5: O número 0.1428571428..., trabalhando com 4 dígitos significativos é
7
representado por
1
0.1429 se optamos pelo critério de arredondamento
7
1
0.1428 se optamos pelo critério de truncamento.
7
1001
Exemplo 6: O número = 0.025025 trabalhando com 4 dígitos significativos é representado
40000
por
1001
0.250310-1 se optamos pelo critério de arredondamento
40000
1001
0.250210-1 se optamos pelo critério de truncamento.
40000
a) Erro Absoluto
Denotamos por E abs ao Erro absoluto e é definido como o valor absoluto da diferença entre o
valor exato de um número x e de seu valor aproximado x
Eabs | x x | (1.7)
Por exemplo, quando subimos em uma balança, aparece um número x , do qual excluímos o
valor x (que corresponde ao peso aproximado da roupa, sapatos, líquidos bebidos em excesso,
etc.) e concluímos que nosso peso é x x x .
b) Erro Relativo
O erro relativo é denotado por Erel e é definido como o erro absoluto dividido pelo valor
aproximado
E
E rel abs (1.8)
x
c) Erro Percentual
É denotado por Eper e definido como
E per Erel 100% . (1.9)
Observações 1.4: Para um mesmo problema podemos ter modelos matemáticos diferentes,
dependendo do enfoque desejado. A escolha errada do método numérico, pode levar a resultados
absurdos ou ficam distantes da realidade.
Exemplo 1: Sabendo-se que e ]2.71, 2.72[ tomaremos para e um valor dentro desse intervalo,
por exemplo e = 2.715, teremos então, Eabs | e e | < 0.01.
Observações 1.5: Nos exemplos 1 e 2, os limitantes superiores para os erros absolutos são os
mesmos, mas não podemos dizer que x e e estão representados com a mesma precisão, é
necessário comparar a ordem de grandeza deles. Então, dependendo da grandeza dos números
envolvidos, o erro absoluto não é suficiente para descrever a precisão do cálculo, então calculando
os erros relativos:
Eabs | x x | 0.01
para x : Erel 2.21051 10 6
x x 4523.83
Portanto o número x do exemplo 2 é representado com maior precisão que o número e (número de
Napier) do exemplo 1. E ainda fica mais evidente, quando encontramos o erro percentual:
Confirmando uma vez mais que cometemos um erro maior na aproximação do número e.
EXERCÍCIOS
1) Calcule o valor das expressões que seguem, utilizando aritmética de ponto flutuante com cinco
algarismos significativos; [m, M]= [-9, 9] , na forma normalizada.
a) 0.3 +1.745 1/3
b) (0.34 31.55 8.1) / (4.1 + 80.29 1.22)
c) 76.2 2.6 658 2.546
d) 1/9 + 1/9 + 1/6
e) 10( 91 )8
2) Um computador hipotético armazena números reais na forma normalizada. Utiliza 1 bit para o
sinal do número, 3 bits para o expoente e 5 bits para a mantissa. Adotando o critério de
truncamento.
i) Como ficam armazenados os seguintes números decimais?
a) 105 b) 5 10-2 + e 10-8 c) 2 107 cos (770) d) 133976,04
ii) Qual o maior e o menor número positivo representável nesse computador?
iii) Qual é o menor e o maior número negativo representável nesse computador?
3) Considere um computador binário, cujo sistema de ponto flutuante tenha 1 bit para o sinal do
número, 4 bits para o expoente e 5 bits para a mantissa num total de 6 bits.
i) Como ficam armazenados os seguintes números binários?
a) 10111 10110 b) 1110011 1010 c) 1011001 101111 d) 1010.1 e) 1100.0011
ii) Qual o valor verdadeiramente representado em cada caso (Converta para a base decimal os
números representados na a.p.f e o número dado. Compare os valores)
iii) Qual o maior e o menor número positivo representável nesse computador?
Introdução ao Cálculo Numérico 23
iv) Qual é o menor e o maior número negativo representável nesse computador?
20
4) Dado x um número real e x 110.1010101seu valor aproximado na base binária.
3
Considerando o sistema decimal determine o erro absoluto, relativo e percentual.
Respostas
1)
2) ia) 0.1×10-99 menor número e 0.999×10999 é o maior número.
iia) -0.1×10-99 menor número e -0.999×10999 é o maior número negativo.
3) iii) 0.0001×10-111 é o menor número e 0.0001×101111 é o maior número
x1 x2 x3 x4 x5
Para as equações polinomiais de 1o e de 2o grau, existem expressões que nos fornecem as raízes do
polinômio e para certas funções podem ser determinadas as raízes analiticamente.
Exemplos:
5
1) g ( x) 2 x 5 , isolando x, temos x
2
2) h( x) ln x 9 , igualando a zero e isolando x, temos ln x 2 9 x 2 e 9 , portanto x e 9 / 2
2
3) p( x) x 5 9 x 4 1 , (não é simples)
4) f ( x) x cos x sinh x , (não é simples)
Para equações polinomiais de grau mais alto e para funções mais complicadas é praticamente
impossível achar os zeros exatos, como é o caso dos exemplos (3) e (4). Nestes casos precisamos
de um método numérico para encontrar a raiz aproximada.
Para determinar uma raiz de uma equação, adotamos as seguintes fases ou etapas:
Fase I: Localização ou isolamento da raiz, que consiste em determinar um intervalo que contenha
a raiz da função dada.
Fase II: Refinamento, que consiste em melhorar a aproximação determinada na fase I até obter
uma precisão desejada.
Para a localização das raízes isoladas, qualquer informação é útil, como por exemplo: analisar o
domínio, paridade, periocidade da função, fazer um esboço do gráfico da função, considerar os
pontos de máximo e de mínimo e as concavidades.
No caso que seja difícil esboçar o gráfico da função, então transforme a equação f ( x) 0
em uma equação equivalente da forma g ( x) h( x) e esboce os gráficos das funções g e h no
mesmo eixo cartesiano, os pontos de interseção dessas funções correspondem as raízes de f .
Para visualizar o gráfico destas funções com ajuda do maple, digitamos o comando
[> plot( [sqrt(x), 5exp(-x)], x=-2..8);
Figura 2.3: Gráfico das funções h(x) e g(x), se observa que se intersectam em um único ponto do intervalo [1,2]
Teorema de Bolzano: Seja f (x) uma função contínua num intervalo [a, b]. Se f (a ) f (b) 0 ,
então existe pelo menos uma raiz de f ( x) 0 entre a e b.
Graficamente temos:
a b a 1 2 3 b
Bernard Bolzano
(1781-1848)
Como o polinômio dado é de grau 3, então pelo T.F.A a função admite três raízes e pelo teorema
de Bolzano, existe pelo menos uma raiz nos intervalos: [-4,-3], [0,1] e [2,3]. Para verificar se a
raiz é única em cada intervalo, basta aplicar a observação anterior.
Neste exemplo em particular, é simples verificar que a raiz em cada intervalo é única, pois o
número de raízes de uma equação polinomial é igual ao grau do polinômio.
Outra forma: Como f ( x) 3 x 2 9 x 3x( x 3) , então a função tem pontos críticos em x=0 e
x=3, derivando novamente temos
f ( x) 6 x 9
como f (0) 9 , então a função é côncava para baixo e como f (3) 9 a função é côncava para
cima, portanto podemos concluir que f (0)=3 é um valor de máximo e f (3)=3 é um valor de
mínimo.
Observação 2.2: Se f (a) f (b) 0 , então não podemos garantir a existência de raízes no
intervalo [a, b]. Veja por exemplo os gráficos.
x
Figura 2.6: Gráfico das funções 2 cos x e e
x
Exemplo 5: Localize as raízes de f ( x) tan x
2
Solução
Figura 2.7: Gráfico das funções tan x e x , gerados com o comando [> plot ( {tan(x), -x/2}, x);
2
As raízes negativas encontram-se nos intervalos: [-k, (2k-1)/2[, k =1, 2, 3,... e as raízes
positivas encontram-se nos intervalos da forma: [ (2k-1)/2 , k[, k=1, 2, 3,....
EXERCÍCIOS
I. Diga quantas raízes admite cada uma das seguintes equações algébricas:
1) 2 cos x e 2 x 0 5) e x sin x 3
2) tan x 5 x 0 6) sin x x 0
3) 1 x ln x 0 7) x 3 3 x 1 0
4) 2 x 5 x 1 8) cosh x x 2 0
a) 2 x 3x 1 c) x log 5 x 1
b) x 2 .2
x2 d) x 3 0.4 x 1.4 0
x
c) x log1 / 5 x 1 e) senh 2 senx 0
Respostas (I):
1) Admite uma raiz negativa e infinitas raízes positivas.
2) Infinitas raízes
3) Existe uma única raiz no intervalo [1, 2]
4) Existe uma raiz no intervalo, x = [4, 5]
5) Existe uma única raiz no intervalo [1.2, 1.6]
Definição: Dizemos que um processo iterativo converge para (raiz de uma função), se a
sequência gerada x1, x2, ...,xn ,... converge para , se dado um > 0, existe um NIN tal que, para
qualquer n natural que seja n > N : |xn - | < ou equivalentemente lim xn .
n
Observação 2.3: Os processos que estudaremos não fornecem raízes exatas de uma função em um
número finito de passo, exceto em casos particulares. O que buscaremos então será um valor
aproximado da raiz, chamaremos este valor x ; | x | erro. Como não podemos determinar o
valor exato, então vamos delimita-lo, isto é, para um delta previamente escolhido, devemos ter
| x | .
Inicio
Dados Iniciais
k=0
Cálculos
Iniciais
k:=k+1
Cálculo da nova
Aproximação
Não
Sim
|xn+1 ‐xn |<erro
(Critério de
parada)
Cálculo Final
Fim
Figura 2.8: Fluxograma para os métodos iterativos
Introdução ao Cálculo Numérico 31
2.2. Método da Bisseção ou Dicotomia
Seja f uma função contínua definida no intervalo [a, b] e tal que f (a) f (b) 0 . Para simplificar,
vamos supor que existe uma única raiz no intervalo neste intervalo.
O objetivo de método da bisseção é dividir sucessivamente o intervalo [a, b] ao meio até
obter b-a < , onde >0 é uma precisão prefixada. Este método está baseado no teorema do valor
médio.
Graficamente temos:
f(x)
ao bo
0 a=ao b=bo
2
Temos que f (ao ) f ( xo ) 0 , então pelo teorema de Bolzano a raíz, [ao, xo], então fazemos
a1 : ao e b1 : xo
Como f(a1). f(x1) > 0 , significa que a raiz [x1,b1], fazemos a2=x1 , b2=b1
3a iteração:
a0 b0
xo 2.5
2
Temos
f (2) 0.3979 0
f (2.5) 0.00515 0
f (3) 0.4314 0
Portanto a raiz está no intervalo [ x0 , b0 ] .
Segunda Iteração:
a1 b1
k 1; a1 : x0 ; b1 b0 e x1 2.75
2
Como
f (a1 ) 0.0515 0
f ( x1 ) 0.2082 0
f (b1 ) 0.4314 0
Portanto a raiz está no intervalo [a1 , x1 ] .
E assim sucessivamente, tabelando estes resultados e realizando as seguintes iterações, temos:
Fase II:
Podemos considerar = 0.35 como a raiz aproximada. Foram necessárias 3 iterações para obter a
raiz aproximada com uma tolerância < 0.25.
Exemplo 3: Seja f ( x) 2 cos x e x . Encontre a raiz aproximada no intervalo [0, /2] com uma
tolerância < 0.25
Solução
Seja f uma função continua no intervalo [a, b] e tal que f (a) f (b) 0
Demonstração:
O comprimento de cada intervalo [a n , bn ] para n 1,2,.., k é dado por
b0 a0
n 1 : b1 a1
2
b a1 b0 a0
n 2 : b2 a 2 1
2 22
b a 2 b0 a0
n 3 : b3 a3 2
2 23
b a k 1 b0 a0
n k : bk a k k 1
2 2k
b0 a0
Se existe um k, tal que bk a k , então , para determinar o número de iteração
2k
isolamos k
log(b0 a0 ) log
log(b0 a0 ) log k log 2 , logo k .
log 2
Portanto o número mínimo de iterações é
Exemplo 3:
Determine o número mínimo de iterações para obter bk - ak < =10-3, do exemplo (1), isto é para
f ( x) x log x 1 0 e [a, b] = [2, 3]
Solução
Substituindo os valores de = 10-3 , a=2 e b=3 na equação anterior (3), temos:
log(3 2) log 10 3
k
log 2
k > 9.966
Portanto k =10 é o número mínimo de iterações necessárias.
Comentários:
O método da bisseção converge, isto é, sempre é possível obter uma raiz aproximada para
qualquer função desde que f ( x) seja contínua em [a, b] e f (a) f (b) 0 .
As iterações envolvem cálculos simples.
Dado o intervalo e a precisão , é possível determinar o número de iterações necessárias a prior
(antes de fazer as iterações).
A convergência é muito lenta quando b-a é grande quando comparado com . Por exemplo se b
- a = 3 e =10-7, então serão necessárias 25 iterações.
Se k = 0, temos
a0 f (b0 ) b0 f (a0 )
x0 , onde a0 : a e b0 : b .
f (b0 ) f (a0 )
De forma análoga ao método de bisseção, temos três possibilidades:
Se f ( x0 ) 0 , então x0 é a raiz procurada.
Se f ( x0 ) f (a0 ) 0 então, há um zero no novo intervalo é [ x0 , b0 ] , neste caso a1 : x0 .
Se f ( x0 ) f (a0 ) 0 então, a raiz está no intervalo [a0 , x0 ] , neste caso b1 : x0 .
Exemplo 1: Sabendo que a função f ( x) 2 cos x e x , tem uma raiz no intervalo [1,2]. Vamos a
determinar a raiz com uma precisão menor que 10-4
Solução
Iteração inicial: Neste exemplo temos a=1 e b=2.
1 f (2) 2 f (1)
xo 1.4151
f (2) f (1)
Temos
f (1) 0.712725 0
f (1.424152) 0.051526 0
f (2) 0.96763 0
Portanto a raiz está no intervalo [ x0 , b] .
Primeira Iteração:
(1.424152) f (2) 2 f (1.424152)
k 1; a1 : x0 ; b1 b o e x1 1.4532655
f (2) f (1.424152)
Como
f (a1 ) 0.051526 0
f ( x1 ) 0.00071525 0
f (b1 ) 0.96763 0
Portanto a raiz está no intervalo [ x1 , b1 ] .
Segunda Iteração:
(1.4532655) f (2) 2 f (1.4532655)
k 2; a2 : x1 ; b2 b1 e x2 1.453669370
f (2) f (1.4532655)
Como f ( x2 ) 0.0000075299 10 -4 , então a raiz aproximada é x 1.453669370 .
Solução
Neste exemplo denotemos por ao = 2 e bo = 3, assim
Iteração inicial:
2 f (3) 3 f (2)
xo 2.913232680
f (3) f (2)
Temos
f ( 2) -3.1137056 39 0
f ( 2.91323268 0) 0.02566135 2 0
f (3) 0.29583686 7 0
Comentários:
O método da secante converge mais rápido que o método da bisseção.
As iterações envolvem cálculos simples.
Dado o intervalo e a precisão , não é possível determinar o número de iterações necessárias
a priori.
EXERCÍCIOS
3) Nos exercícios 1 e 2, determine o número mínimo de iterações para obter bk - ak < , onde
<10-5 (utilizar o intervalo inicial de cada exercício)
Respostas:
1 a) 0.375 b)1.76322
2) a) 0,7141, b)3.11
3 ) 1a) 17 iterações b) 18 iterações
5) f (x) x 7 a raiz aprox. 2.645751311
2
De uma função f ( x) 0 , podemos obter diferentes funções de iteração. Porém nem todas geram
sequência convergente para a raiz , conforme pode ser observados nos seguintes gráficos:
2
Claramente podemos observar que as funções 2 ( x) 2 x e 4 ( x) ; geram sequencias
x 1
convergentes.
O seguinte teorema nos fornece condições suficientes para a convergência do MIL.
Teorema: Seja uma raiz da equação f ( x) =0, num intervalo I e centralizado em . Seja uma
função de iteração de f ( x) ,
se:
(a) e são contínuas em I;
(b) | ( x) | M < 1, M = max | ( x) | e
(c) x0 I,
então a sequência x1, x2,...,xn gerada pelo processo iterativo converge para .
Prova:
(fica como exercício, use o teorema do valor médio)
(I) 1(x) = 10 - x2
1( x) 2 x
(a) 1 e 1 estão definidas no intervalo [2, 3]
1
(II) 2 ( x) 10 x , derivando temos: ( x)
2 10 x
(a) 2 e 2 estão definidas no intervalo [2, 3]
(b) M =max | 2 (x)| = 0.1889 < 1, para todo x em [2, 3],
(c) seja x0 = 2.5 [2, 3],
então 2 satisfaz as condições do teorema, assim fica garantida a convergência para no processo
iterativo.
10 10
(III) Para x 0, seja 3 ( x) 1 , derivando: 3 ( x ) 2
x x
(a) 3 e 3 estão definidas no intervalo [2, 3]
(b) M = max | 3 (x)| = 2.5 > 1, para todo x em [2, 3], não podemos garantir a convergência para
no processo iterativo.
10 10
(IV) 4 ( x) , derivando temos 4 ( x)
x 1 ( x 1) 2
(a) 4 e 4 estão definidas no intervalo [2, 3]
(b) M =max | 4 ( x) | = 10/9 > 1, para todo x [2, 3], como existem valores neste intervalo tal que
| 4 ( x) | 1 , então podemos verificar se é possível refinar este intervalo tal que satisfaça o teorema
dado. Aplicando o método da bisseção:
Refinando o intervalo: Aplicando o método da bissecção no intervalo [2, 3] temos:
x= (3 +2)/2 = 2.5
f(3) = 2
f(2.5) = -1.25
f(2) = -4
logo, podemos afirmar que a raiz [2.5, 3]. Então
10
M = max | 4 ( x ) | 1,
12 .25
Para x0 [2.5, 3], podemos garantir a convergência da sequência para a raiz .
k xk 2 (x) = 10 x
0 2.5 2.7386127
1 2.7386127 2.6946961
2 2.6946961 2.7028325
3 2.7028325 2.7013269
Observe que a raiz está convergindo a = 2.701562118716, que é a raiz exata da equação
f ( x) = 0.
No exemplo anterior, para =0.003, aplicando o critério de parada na quarta iteração temos:
| f ( x4 ) | = 0.001506 < e | x4 x3 | 0.0015056
Observe que | f ( x3 ) |= 0.008136 > . Portanto, x4 é a raiz aproximada com erro < 0.002.
ex
Tendo e x 4 x 2 0 , então x 0.5e 0.5 x
4
Denotando por ( x) 0.5e 0.5 x , e derivando temos: ( x ) (0.5) 2 e 0.5 x
(a) , são contínuas no intervalo [0,1]
(b) M = max | ’(x)| = 0.4121803 < 1
(c) x0 = 0.5 [0,1]
Portanto satisfaz as condições do teorema. Gerando a sequência:
Teste de Parada : |x5 - x4| < . Não é necessário testar para | f ( x) | , pois basta satisfazer para
um dos critérios de parada. Logo a raiz é aproximada é 0.7116, com erro < 0.01.
Exercícios
(I) Aplicando o M.I.L., determine a raiz aproximada de f ( x) = 0 para = 10-3.
a) f ( x) = x2 + 0.5 x – 3.6 , e [1, 2]
b) f ( x) = 3x - cos x e [0,/4]
c) f ( x) = x2 - senh x
d) f ( x) = x3 - e2x
(II) A equação x2 + x - ¼ =0 possui uma raiz no intervalo [-0.5, -0.5]. A sequência produzida por
xn+1 = (xn) = - xn2 + ¼ será convergente para essa raiz?
Respostas:
I) 1) –2.03
4) não admite raízes
No método de Newton, se escolhe uma função (x) de tal forma que sua derivada se anule,
isto é |’()| = 0, podendo assim garantir e acelerar a convergência de MIL. Então vamos escolher
uma com tais condições, como x ( x) temos:
x ( x) x A( x) f ( x) ,
onde A é uma função contínua qualquer, tal que A() 0; vamos escolher a A(x) de forma que
() = 0. Derivando temos:
Introdução ao Cálculo Numérico 45
( x ) 1 A( x ) f ( x ) A( x ) f ( x )
Então, para x temos
() 1 A() f () A() f ()
0 1 A() 0 A() f ()
1
logo A( )
f ( )
f ( x)
( x ) x (2.7)
f ( x )
Assim, para um primeiro valor escolhido xo, podemos obter os outros xk através da relação:
f ( xk )
x k 1 ( x k ) x k para k=0, 1, 2,... (2.8)
f ( x k )
( x1 x0 ) f ( x0 ) f ( x0 )
Supondo que f ( x0 ) 0 , isolando x1 obtemos:
f ( x0 )
x1 x0
f ( x0 )
A cada iteração nos aproximamos da raiz da função f ( x) .
[> with(plots):
[> with(student):
[> showtangent(x^2-5, x=2); # mostra o gráfico da função e da reta tangente no ponto (2, f(2))
[> fsolve(x^2-5, x, 2..3); # determina a raiz no intervalo I=[2,3]
f ( x)
Sendo ( x) x , então substituindo os dados temos a função de interação
f ( x)
x 2 x 10
( x) x
2x 1
Considerado como a primeira aproximação inicial um valor x0[2, 3], por exemplo x0 = 2.5,
então:
Convergência:
Se numa determinada iteração k, f ( x) 0 , a convergência será muito lenta.
Teorema: Seja f uma função; f C 2(I) , onde I é um intervalo que contém a raiz de f ( x) .
Supondo f ‘() 0, então existe um intervalo I’ I, contendo a raiz de f ( x) , tal que, se x0 I’,
a sequência
Isaac Newton
Grande cientista britânico, a quem não cabe julgar senão como
um dos mais grandes gênios da história da ciência. Tanto na
matemática, astronomia, óptica e principalmente no campo da
física clássica e física newtoniana
O método de Newton foi descrito em 1669 no ensaio 'Sobre el
análises mediante equações com um número infinito de
Isaac Newton términos'. O atual método difere dos apontes de Newton
(1642-1727)
EXERCÍCIOS
(I) Determine a raiz das seguintes funções, cometendo um erro menor que 10-3
1) f ( x) x 2 0.98 x 3.35 e [1, 2]
2) f ( x) 2 x cos x e [0,/4]
3) f ( x) x 2 2 sin x e [1, 2]
4) f ( x) x 3 e 2 x e [0, 1]
i) Aplicando o método da secante
ii) Aplicando o método de Newton
ii) Através do método MIL.
iii) Compare os resultados obtidos. Qual método é mais eficiente?
(II) Faça um Programa em linguagem C ou Pascal, para determinar raízes de uma equação
algébrica através do método de Newton.
(III) Sabe-se que f (x) = x3 -x -1 =0 tem uma raiz no intervalo [0, 2]. Para = 10-5 aplique:
1) O MIL com (x) = (x+1)1/3 e x0= 0.5
2) Newton com x0= 0.5
3) Em geral, o método de Newton tem convergência mais rápida do que o MIL. Explique porque
no item (2) a convergência foi mais lenta.
4) Aplique o método da Bissecção no intervalo [0, 2] para determinar um valor inicial mais
apropriado e faça comentários.
( II )
1) Mil x =1.32344341
2) Newton x =1.32471800
4) Bissecção x =1.9922
Lista de Exercícios
2) a) Através do método da Bisseção determine uma raiz das equações da 1ª questão (para cada
item escolher um intervalo) para = 0.01.
b) Determine o número de iterações no item (a) se = 0.00002
c) Determine uma raiz de cada equação da 1ª questão, utilizando o MIL. Sendo =10-3
d) Determine uma raiz de cada eq. da 1ª questão, utilizando o método de Newton, com =10-3.
4) Seja f ( x) e x 4 x 2 e sua raiz no intervalo ]0, 1[. Tomado x0 =0.5, encontre o valor
aproximado de , com erro =10-3, usando o MIL com (x)= 0.5 ex/2
6) Sabe-se que f ( x) e 0.1x x 2 10 , tem uma raiz no intervalo [2.5, 3.5]. Para =10-5 determine
uma função de iteração (x) convergente para a raiz e encontre a raiz aproximada.
7) Sabe-se que f (x) = e x cos x 0 , tem uma raiz [1,2]. Através do método de Newton,
2
8) Uma bola é arremessada para cima com velocidade v0=30 m/s a partir de uma altura x0 =5 m,
em um local onde a aceleração da gravidade é g= -9.81 m/s2. Sabendo que :
h(t ) xo vo t 0.5 gt 2
10) Utilize o método de Newton para achar a raiz positiva mais pequena da equação tan( x) x ,
com erro menor que 0.0001
14) A equação x3 -x -1 = 0 tem uma raiz ]1,2[, determine-a, por qualquer método, com um
erro menor que 10-5.
Respostas:
1)
a) Arredondamento: 0.17117×101 b) Arredondamento: -0.213119×101
Truncamento: 0.17116×101 Truncamento: -0.213119×101
c) Arredondamento: -0.14771×104 d) Arredondamento: 0.3889×101
Truncamento: - 0.14771×104 Truncamento: 0,03888×101
e) Arredondamento: 0.36446×102
Truncamento: 0.36446×102
2)
a) x [1,1.5] b) x [4,5] c) x [-0.5,0] d) x [-0.6,1] e) x [2,3]
f) x [0,0.5] g) x [0,2] h) não tem raízes i) x [1,2] j) x [1,1.5]
reais
3) (a)
a) x =1.30859 b) x =0.6203125 c) x =-0.3398437 d) x =-0.5063 e) x =2.2266
f) x =0.3828 g) x =1.6641 h) não tem raízes reais i) x =1.5593 j) x =1.28516
(b)
a) k=15 b) k=15 c) k=15 d) k=15 e) k=16
f) k=15 g) k=17 h) não tem raízes i) k=17 j) k=15
(c)
a) x = 1.30979 b) x =0.63121914 c) x =-0.33696352 d) x =-0.499059 e) x =2.21911194
Introdução ao Cálculo Numérico 51
f) x =0.38983599 g) x =-0.249023 h) não tem raízes i) x =1.5598 j) x =1.2833
(d)
a) x =1.30979959 b) x =0.63144245 c) x =-0.33691966 d) x =-0.5 e)
x =2.21910715
f) x =0.389877 g) x =1.663251 h) não tem raiz i) x =1.5596 j) x =1.283531
4) x =0.71439308
5) 1 1
A função interação Q(x)= + , para ser usada no método MIL tem que ser:
x x2
i) Q(x) deve ser contínua ii) Q(x) deve ser derivável iii) |Q(x)|<=M<1
. Daí o iii) não é satisfeito. Então Q(x) não serve para achar a raiz.
1/ 2
1 10e 0.1x
6) Q1 ( x ) e x = 3.0434
e 0.1x
7) x =0.004392
8) x =6.2848 e t0 =6.28489 -> f’(t 0 )=0. Daí a bola demora esse tempo para chegar ao solo.
René Descartes
(1596-1650)
Exemplo 1: Através da regra de sinal de Descartes, determine o número de raízes reais e/ou
complexas do polinômio:
p ( x) x 4 7 x 3 10 x 2 16 x .
Solução
O polinômio dado é de grau 4. Como ao 0 , então 1 = 0 é raiz. Então podemos fatorar x no
polinômio p( x) x( x 3 7 x 2 10 x 16) e basta observemos a mudança de sinais no polinômio
p3 ( x) x 3 7 x 2 10 x 16 :
p3 ( x) x 3 7 x 2 10 x 16
Ocorrem 2 mudanças. Por tanto existem duas raízes ou nenhuma raiz real positiva.
Analisando o polinômio p3 ( x)
p3 ( x) x 3 7 x 2 10 x 16
Raízes positivas 2 0
Raízes nulas 1 1
Raízes negativas 1 1
Raízes complexas 0 2
TOTAL 4 4
As raízes deste polinômio podem ser determinadas utilizando o esquema de Horner ou esquema
prático de Briot-Ruffini, da seguinte forma, tentamos com os divisores de 16
Paolo Ruffini
(1765-1822)
3.2.Teorema de Hua
Se uma equação algébrica de grau n, com coeficientes reais e todas suas raízes são reais, então o
quadrado de cada coeficiente extremo da equação é maior que o produto dos coeficientes
adjacentes i.é.: ak2 ak 1 ak 1 para k= 1, 2 , ..., n-1.
Fazendo xk em (3.2) temos p ( k ) an k n an1k n1 an2 k n2 ... a1k a0 ; mas para
determinar este valor desta forma demora muito, então escrevemos
an an 1 an 2 ... a1 ao
x=k kbn kbn1 ... kb2 kb1
an an1 kbn an2 kbn1 ... a1 kb2 ao kb1
bn bn 1 bn 2 b1 bo
Exemplo:
Seja p( x) x 3 7 x 2 10 x 16 . Determine p(4) .
b3 1
b2 7 4 3
b1 10 12 22
bo 16 88 72
Portanto p(4) 72 ou
1 -7 -10 16
x=4 4 -12 -88
1 -3 -22 -72 = p(4)
Observe que o polinômio dado, pode ser escrito de forma equivalente como:
p ( x) x 3 7 x 2 10 x 16 ( x 4)( x 2 3x 22) 72 .
Para determinar um intervalo que contenha todas as raízes reais, usamos a seguinte
proposição:
p( x) p ( )
Coeficientes do polinômio q( x) . Observe que os coeficientes do polinômio q(x)
x
correspondem aos valores de bk , k=0,..n.
Q ( x) Q
() q~
( x)( x ) > 0 para todo x , então p( x) 0, para x
1 -7 - 10 16
8 8 8 -16
1 1 - 2 <0 0 0
Temos um coeficiente negativo, portanto tentamos com o consecutivo.
Ao fazer 9 temos
Para obter um limite inferior das raízes k, consideramos o polinômio p(-x), para este novo
polinômio, encontraremos um número ( >0) tal que todos os coeficientes no esquema de
Hörner sejam não negativos. Então seguindo o razoamento anterior, temos a desigualdade:
- k , k=1,2,...,m n e k raiz do polinômio Q(x)
em consequência k -, teremos obtido portanto o limite inferior - das raízes reais de p(x).
- 1 2 ... m
7 1 -10 -16
2 2 18 16
1 9 8 0 0
o último termo tem que ser positivo, como faltou pouco, vamos tentar com =2.1
1 7 -10 -16
2.1 2.1 19.11 19.131
1 9.1 9.11 3.131 > 0
Logo = 2.1
Portanto as raízes reais do polinômio p(x) = x4 -7x3 -10x2 +16x = 0, estão contidas no intervalo :
I= [-2.1, 9] = [ -, ].
Exemplo 3: Sendo p(x) = x4 - 2x3 + 3x2 + 4x -1. Determine o número de raízes reais positivas,
nulas, negativas e o intervalo que as contém.
Tendo:
ao 1
a1 4 4 2 ( 1)( 3 )
a 2 3 3 2 ( 4 )( 2 )
a3 2 ( 2 ) 2 ( 3 )( 1)
a4 1
Não existe nenhum k tal que satisfaça a regra de Hua. Portanto nada a afirmar!
O teorema de Hua nos dá uma condição necessária, mas não suficiente! Graficamente podemos
visualizar que p admite um par de raízes reais, portanto existem duas raízes complexas. Estamos
no caso 2.
1 2 3 -4 -1
1 1 3 6 2
1 3 6 2 1 >0
As raízes reais podem ser determinadas pelo método de Newton ou secante e são:
10 3 5x
Exercício: Sendo p5 ( x ) x 5 x x2 determine o número de raízes reais positivas,
9 8
nulas, negativas e o intervalo que as contém.
Existem 2 teoremas a mais, que nos ajudam a localizar os zeros e eles são:
Teorema 3.1: Se p(x) é um polinômio de grau n e de coeficientes reais, então p(x) tem pelo menos
um zero no interior do círculo centrado na origem e de raio igual ao valor min{1, n} onde:
ao ao
1 = n n = n (3.4)
a1 an
1
Ao substituir x no polinômio de ordem n, temos:
y
n n 1 n2
1 1 1 1 1
p a n a n 1 a n 2 ... a1 a 0 ; a n 0
y y y y y
Multiplicando por y n a expressão anterior
1
y n p a n a n 1 y 1 a n 2 y 2 ... a1 y n 1 a 0 y n ; a n 0
y
1 a
assim y k 1 max k , portanto
xk 1 k n a0
1
xk (3.7)
a
1 max k
1 k n a
0
| 1 | | 1 |
1 = 4 1 n = 4 1 , assim min {1 , 1} =1
|4 | |1|
O teorema 1 nos garante que pelo menos uma raiz no círculo de raio 1 e centro na origem.
Obs. O teorema 2 nos ajuda a localizar as raízes complexas, já que as raízes reais estão
localizadas.
Uma vez localizadas as raízes reais, o melhor método para encontrar a raiz aproximada é o
método de Newton ou das secantes.
Existem outros critérios para delimitar a região que contém as raízes, veja por exemplo a RPM 42
pg. 40 do prof. Lenimar Nunes.
EXERCÍCIOS
4) p 7 ( x ) x 7 3 x 6 12 x 4 x 2
Respostas:
a) Métodos Diretos: São aqueles que fornecem solução exata do sistema linear (com exceção
dos erros de arredondamento) após um número finito de operações, como por exemplo: o método
de eliminação de Gauss, Crout (LU), Cholesky (Khaletsky), Cramer, etc.
b) Métodos Iterativos: Permitem obter as raízes do sistema com uma precisão prefixada,
através de um processo convergente. Usados para sistemas lineares de grande porte, os que em
geral são esparsos (i.é. possuem uma grande porcentagem de elementos nulos). Estudaremos os
métodos iterativos de Jacobi, de Gauss-Seidel e S.O.R. (Successive Over Relaxation).
Ax b (4.2)
onde
a11 a12 . . a1n x1 b1
a 21 a 22 . . a2n x2 b2
A . . . . . x. e b .
. . . . . . .
a . . a nn x b
n1 an2 n n
Para a existência de uma única solução, vamos supor que A K nn e que o det(A) 0 e
que os elementos da diagonal sejam não nulos (aii 0, i=1,2,...,n), caso o sejam, permutamos
duas equações ou mais.
Se temos, por exemplo, uma matriz A1010, pelo método de Gauss realizamos 805 operações
e um software demora 0.8 milésimos de segundo para gerar a solução e no Cramer realiza
359.251.200 operações e gasta 1 minuto e 8 segundos. Se tivermos uma matriz A2020, por Gauss
realiza 5910 operações e no Cramer 970.727.901.262.479.360.000 operações. Muita diferença!
Esta aumenta mais ainda quando n é grande.
Uma desvantagem deste método é quando a matriz for esparsa, pois no processo de
triangularização extingue a espasidade.
Por motivos didáticos, vamos descrever o método para uma matriz 33. A33x = b31,
temos o sistema:
a11 a12 a13 x1 b1
a 21 a 22 a 23 x 2 b2
a
31 a 32 a 33 x 3 b3
Como vamos operar apenas sobre os coeficientes e termos independentes do sistema, este será
representado através da matriz aumentada associada ao sistema:
A segunda etapa consiste em eliminar a32’, o pivô é a22 ‘ e o multiplicador m32 = a32 / a22
L1 e L2 permaneceram inalteradas e L3 := L3 - m32L2.
Resolvendo o sistema equivalente da forma:
Observe que este sistema tem solução imediata. Da última equação temos :
~
b3
x3 ~
a33
Os valores das outras variáveis são obtidas pelo chamado processo retroativo
~
(b2 a~33 x3 )
x2
a~ 22
Então
2x1 - x2 + 3 x3 = 2
8.5x2 - 6.5 x3 = -6
9.1765x3 = 4.4706
Daí temos a solução : x3 = 0.48718, x2 = -0.33333 e x1= 0.10256
Observação: Nos casos que o pivô aii tenha valor muito próximo de zero, deve-se utilizar a
seguinte estratégia:
1) No início da etapa k do processo de eliminação, escolher para pivô o elemento de maior
módulo entre os coeficientes aik, i= k, k+1,...,n , isto é, o max{aik, ai+1k, ..., ank }
2) Trocar as linhas k e i se for necessário.
Esta estratégia é conhecida como condensação pivotal. Vejamos o seguinte exemplo:
Portanto a solução achada é incorreta, devido ao pivô a11 = 0.1 tem valor muito próximo a zero,
assim deu origem a multiplicadores altos, que por sua vez ampliaram erros de arredondamento.
Nestes casos é recomendável aplicar o método de eliminação de Gauss com condensação pivotal
temos:
Exercício 2: Supondo sempre que os coeficientes ajj 0, escreva um programa em Pascal que
determine a solução do sistema linear Ann x = bn1, considerando o algoritmo:
Algoritmo:
inicio:
Para k=1,2,...,n faça
para i = k+1,k+ 2,...,n faça
mik =aik /aii
para j = k+1,..., n faça
aij = aij - mik akj
bi = bi - mik bk
fim-para
fim-para
onde
2 0 0 1 12 12
L 3 12 0 e U = 0 1 1
4 1 2 0 0 1
Primeiramente resolvemos os sistema Ly=b, uma vez obtido y, resolvemos o sistema Ux=y.
Logo
y1 1 / 2
y2 5
y 1
3
1 1
2
1
x1 12
2
0 1 1 x 2 5
0
0 1 x3 1
De onde obtemos
x3 1
x 2 x3 5 , então x 2 5 1 6
Finalmente
x x 1 1 6 1
x1 2 3 , logo x1 3
2 2 2 2 2 2
L( Lt x) b
denotando por
Ly b (4.8)
Lxy
t
(4.9)
ficamos novamente com 2 sistemas, onde as matrizes são triangulares, o que torna fácil encontrar
a solução. Primeiro resolvemos o sistema Ly = b na eq.(4.8) e uma vez obtida a matriz y,
resolvemos o sistema Ltx= y (4.9).
1 2 3 1 0 0 1 2 3
A 2 5 7 2 1 0 0 1 1
3 7 26 3 1 4 0 0 4
L Lt
Resolvemos o sistema
1 0 0 y1 10
2 1 0 y 2 11 ,
3 1 4 y 12
3
y1 10
de onde obtemos pelo processo retroativo y 2 9 , logo resolvemos o sistema
y 9
3 4
x 9
3 16
Mx ( n1) Nx ( n ) b (4.10)
logo
x ( n 1) M 1 Nx ( n ) M 1b (4.11)
Para isto é necessário que det(M) 0, e que M seja “simples”, de tal forma que a resolução
seja “quase trivial”.
Precisamos impor condições para que a sequência x ( n ) convirja para x (solução exata do
sistema linear), assim
lim Mx ( n1) lim Nx ( n ) b Mx Nx b
n n
Observações:
Os métodos iterativos tem convergência assegurada baixo certas condições.
A vantagem destes métodos é que mantém a espasidade da matriz dos coeficientes.
Observação: Se para uma determinada norma matricial temos || C || 1 , então lim || C ||k 0 e o
k
|| e ( k ) || || C k e ( 0) || || C ||k || e ( 0) || .
Definição: Seja B K nn uma matriz quadrada, o raio espectral da matriz B é igual ao maior
autovalor de B. Denotemos por
Os métodos iterativos convergem, qualquer que seja o vector inicial x ( 0 ) se e somente se o raio
espectral da matriz C M 1 N dada na equação (4.15) é menor que um.
Portanto podemos concluir que o método é convergente se e somente se (C ) 1 , onde é o raio
espectral da matriz C. Este teorema nos fornece uma condição necessária e suficiente para
assegurar a convergência dos métodos de Jacobi e Gauss-Seidel.
Quando devemos parar? É fixado o número de iterações ou se aplica o seguinte teste de parada:
Denotemos por R (k ) a maior distância entre os elementos das matrizes colunas x(k) e x(k-1) , da
forma
R ( k ) max | xi( k ) xi( k 1) | . (4.19)
1i n
Assim, dada uma precisão prefixada , a solução aproximada do sistema da matriz será a matriz
x(k) desde que
R(k) < .
8
Considerando como ponto inicial a origem (0,0,0), temos
k x1( k ) x 2( k ) x 3( k ) R (k )
0 0 0 0 -
1 0.375002 -0.75002 0.37500 0.75
2 0.375003 -1.031253 0.75000 0.375
3 0.316414 -1.218754 0.82031 0.1875
4 0.322275 -1.239265 0.83789 0.02051
5 0.320436 -1.249516 0.84595 0.01025
6 0.319707 -1.253087 0.84760 0.00357
7 0319736 -1.25372 0.84812 0.000641<
0 0 . . 0 a11 0 . . 0
a121 0 0 . . 0 a22 0 . .
L a31 a32 0 . . e D . 0 . . . ; det D 0
. . . . 0 . . . . 0
a . . a nn 1 0 0 . . 0 ann
n1
Dx ( n1) ( A M ) x ( n ) Lx ( n1) b
x ( n1) D 1 ( A M ) x ( n ) Lx ( n1) b
Onde a i-ésima componente de x(n+1) é da forma:
Caso que algum elemento da diagonal akk se anule ou seja próximo de zero, então permutamos as
linhas antes de aplicar o método de Gauss-Seidel.
A ordem é muito importante, observe que este método usa o dado mais recente. As vantagens
deste método são a tolerância de erros operacionais e que a convergência é mais rápido que o
método de Jacobi em geral, existem casos em que isto não acontece.
Observe que a matriz dos coeficientes é (estritamente) diagonal dominante. Isolando cada variável
x j ; j 1,2,3 e colocando no esquema de Gauss Seidel, assim temos:
( k 1) 3 x 2( k ) 2 x3( k )
x 1
8
6 4 x3 2 x1( k 1)
(k )
x 2( k 1)
8
( k 1)
3 4 x 2 x 2( k 1)
x3( k 1) 1
8
Considerando como ponto de partida a origem (0,0,0), e tabelando os dados, segue
k x1( k ) x 2( k ) x 3( k ) R (k )
0 0 0 0 -
1 0.375002 -0.843752 0.77344 0.84375
2 0.287113 -1.208496 0.82068 0.36475
3 0.320894 -1.240562 0.84559 0.03378
4 0.318674 -1.252462 0.84745 0.01189
5 0.319695 -1.2536497 0.84826 0.001188
6 0.319641 -1.254040 0.84833 0.0004 <
Critério de Sassenfeld:
Sem perda de generalidade, vamos supor que A é uma matriz 44, então considere os valores reais
1
1 | a12 | | a13 | | a14 |
| a11 |
1
2 | a21 | 1 | a23 | | a24 | (4.23)
| a 22 |
1
3 | a31 | 1 | a32 | 2 | a34 |
| a33 |
1
4 | a41 | 1 | a42 | 2 | a43 | 3
| a 44 |
Exemplo 2: Dado o seguinte sistema, analise os testes de convergência para o método de Gauss-
Seidel e resolva o sistema com uma precisão <10-3, com a aproximação inicial x ( 0) (0, 1, 0)
2 x1 3x 2 6 x3 1
9 x1 3x 2 5 x3 6
x 6 x 3x 7
1 2 3
a) Vamos analisar o sistema (4.24) através dos critérios de convergência ao sistema (4.24) p:
a1) Critérios das linhas j:
| a11 | 9 | 3 | | 5 |
| a 22 | 6 | 1 | | 3 |
| a 33 | | 6 | | 4 | | 3 |
Portanto este critério não é satisfeito e nada podemos afirmar.
2
1
| a21 | 1 | a 23 | 1 8 3 35
| a 22 | 69 54
1 1 4 8 3 35 297 11
3 | a31 | 1 | a32 | 2
| a33 | 6 9 54 324 12
Portanto é satisfeito o Critério de Sassenfeld, observe que está muito próximo de um, o que
indica que a convergência será lenta.
Se neste método é maior que um, uma outra forma de verificar se a sequência converge é através
do através do raio espectral.
a3) Critério do raio espectral
No método de GS temos
9 0 0 0 3 5 0 1 5
3 9
M 1 6 0 N 0 0 3 , então C M 1 N 0 1
18
16
27
4 3 6 0 0 0 0 7 2
36 27
1
3
5
9
7 1
0 1
18 16
27 = 2 =0
54 9
0 7
36
2
27
Sabemos que este método é convergente se e somente se C 1 , portanto está garantida a
convergência.
x1 9 6 3x 2 5 x3
(k ) 1 ( k 1) ( k 1
x 2 7 x1 3x3
(k ) 1 (k ) ( k 1)
6
x 1 1 4 x ( k ) 3x ( k )
( k )
3 6
1 2
X i( k 1) (1 ) X i( k ) (4.25)
GS
Observe que se =1, então SOR = GS; se =0 não há chances de convergência.
Exemplo 1: Resolver o seguinte sistema pelo método SOR, considere =1.25 e =0.001
8 x1 x 2 2 x3 3
2 x1 8 x 2 4 x3 6
4 x 2 x 8 x 3
1 2 3
x2( k 1)
(1 ) x ( k )
8 2
3 4 x1( k 1) 2 x 2( k 1)
x3( k 1) (1 ) x3( k )
8
Considerando como ponto de partida a origem (0,0,0), se considerarmos =1.5, diverge
=0.75 demora em convergir, mas =1.022171629, temos a sequência convergente:
k x1( k ) x 2( k ) x 3( k ) R (k )
0 0 0 0 0
1 0.3833143609 0.8001586880 0.8645819880
2 0.2808096771 -1.228168207 0.8229410560 0.3635862190
3 0.3237164400 -1.242715171 0.8480823452 0.0429067629
4 0.3181991358 -1.253832090 0.8475459558 0.011116919
5 0.3198789588 -1.253740736 0.8483930371 0.0016798230
6 0.3196135764 -1.254107876 0.8483324429 0.000367 <
9 x1 3x 2 5 x3 6
x1 6 x 2 3x3 7
4 x 3x 6 x 1
1 2 3
x 2 7 x1 3x3 (1 ) x 2
(k ) (k ) ( k 1) ( k 1)
6
x 1 4 x ( k ) 3 x ( k ) (1 ) x ( k 1)
( k )
3 6
1 2 3
desde que 0 2 . Como vimos anteriormente, uma opção para a escolha de é dada por
2
1 1 2 (C )
C=
Os autovalores de C são:
então (C ) 0.60288 < 1 e 1.112454 2 , com este valor são necessárias 19 iterações para
obter a solução aproximada, mas considerando 0.75 são apenas necessárias 8 iterações. Com
0.5 são necessárias 12 iterações, conforme mostra a tabela.
k x1( k ) x 2( k ) x 3( k ) R (k )
0 0 1 0 -
1 0.5972222222 0.1770833334 0.4027777778
2 0.3682002314 0.1418185764 0.2290219908
3 0.2731888382 0.05769969798 0.1282009549
4 0.2514269741 0.06635635679
⁞ ⁞ ⁞ ⁞ ⁞
10 0.2847592104 0.00159026656
11 0.2843468476 0.05316722382 0.0007295111<
Observação:
Um critério para determinar o número mínimo de iterações é o seguinte:
Observações:
1. A convergência dos métodos iterativos depende fortemente da posição das equações.
2. Antes de realizar os testes de convergência, recomendasse reorganizar o sistema.
3. Quando os métodos iterativos convergem, independentemente da aproximação inicial.
4. Para garantir a convergência método de Jacobi, basta que seja satisfeito o critério das linhas
(colunas) ou o critério do raio espectral.
5. Para garantir a convergência método de de Gauss Seidel, deve ser satisfeito um dos critérios:
o critério das linhas (colunas) ou o critério do raio espectral ou de Sassenfeld.
6. No método de Gauus Seidel , o cálculo do raio espectral é mais trabalhoso que do Jacobi.
7. No método SOR a convergência pode ser mais rápida que GS ou não! Depende de w.
8. Quando se tem um sistema muito grande, estes métodos geram certa incerteza.
1) Determine a solução do sistema a seguir, com erro =0.05. Através dos métodos de Jacobi,
Gauss-Seidel e SOR.
3 x1 2 x2 x3 5
3 x1 8 x2 2 x3 3
4 x 2 x 9 x 10
1 2 3
2) Resolvendo o seguinte sistema pelo método de eliminação Gauss, obtemos a solução: X = (1, -
2, 3, -4)
6 x1 4 x 2 12 x3 11x 4 6
2 x x 3 x 5 x 7
1 2 3 4
4 x1 2 x 2 10 x3 8 x 4 6
2 x 8 x 10 x 60
2 3 4
Para este sistema é possível aplicar os métodos iterativos de Jacobi ou GS? Por quê?
Solução: No Jacobi os autovalores em valor absoluto são maiores que 1. Troque a ordem das equações. Ver o GS
3) Resolva o sistema
2 1 3 x1 2
5 6 1 x 2 1
1 3 8 x 3
3
pelos métodos iterativos de GS e SOR.
Solução: (0.08202, -0.31948, 0.484178) com erro menor que 0.05.
2 x1 x 2 x3 2
x1 4 x 2 mx3 3 .
3 x x mx 4
1 2 3
Interpolação Polinomial
Interpolar é uma forma de estimar um valor desconhecido a partir de um conjunto de pontos
tabelados. Em problemas reais precisamos fazer a interpolação de um novo valor x numa tabela
gerada por uma função conhecida ou gerada apenas por dados experimentais.
Existem várias formas de achar o polinômio interpolador, como por exemplo: a forma de
Lagrange, de Aitken/Neville, de Newton, de Hermite, entre outros. Vamos mostrar que este
polinômio existe e é único.
Seja x um ponto diferente dos pontos xi, i=0,1,...,n, tal que x [xi, xi+1], interpolar o ponto x
significa calcular o valor aproximado de p( x ) f ( x ) , assim podemos incluir o novo ponto
( x , f ( x )) à tabela.
Demonstração:
Seja p ( x ) a 0 a1 x a 2 x 2 ... a n x n um polinômio de grau menor ou igual a n, devemos
2
p ( x1 ) a0 a1 x1 a2 x1 ... an x1 y1
n
: (5.1)
:
2
p ( xn ) a0 a1 xn a2 xn ... an xn yn
n
Para provar que o sistema Xa y admite uma única solução, partiremos do absurdo, isto é, vamos
supor que ele admite duas soluções distintas a1 e a2 tal que :
Xa1 y e Xa2 y ,
Então
X ( a1 a2 ) y y 0
denotando por a a1 a2 temos o sistema Xa 0 como a 0, então det( X ) 0 , o que contradiz a
hipótese, pois det( X ) 0 , portanto a1 = a2.
Podemos resolver o sistema (5.1) ou aplicar um outro método de interpolação, nesta seção
veremos os métodos de Lagrange e de Newton.
Uma das formas de interpolar é resolver o sistema citado acima na proposição. Veja o exemplo a
seguir:
b) Observe que x=1, não é tabelado. Mas determinar f(1) é equivalente a determinar um valor
7 2 2
aproximado, calculando p2 (1) 1 0.6667 .
3 3 3
Sejam x0 , x1 ,, xn pontos distintos, tal que f ( xi ) yi , i=1,2,...,n e seja pn(x) um polinômio
( x xo )( x x1 )( x x2 )...( x xk 1 )( x xk 1 )...( x xn )
Lk ( x ) (5.4)
( xk xo )( xk x1 )( xk x2 )...( xk xk 1 )( xk xk 1 )...( xk xn )
( xk xo )( xk x1 )( xk x2 )...( xk xk 1 )( xk xk 1 )...( xk xn )
Lk ( xk ) 1
( xk xo )( xk x1 )( xk x2 )...( xk xk 1 )( xk xk 1 )...( xk xn )
Para j k, se anula, por exemplo se j = 1 k, então:
( x xo )( x1 x1 )( x1 x2 )...( x1 xk 1 )( x1 xk 1 )...( x1 xn )
Lk ( x1 ) 0.
( xk xo )( xk x1 )( xk x2 )...( xk xk 1 )( xk xk 1 )...( xk xn )
Exemplo 2: Determine o polinômio interpolador de f (x) pelo método de Lagrange, nos pontos
tabelados do exemplo anterior:
x -1 0 2
f (x) 4 1 -1
Solução:
Temos x0 = -1, x1=0, x2=2, y0=4, y1= 1 e y2= -1
Como são 3 pontos tabelados, o polinômio interpolador será de grau 2 e será da forma:
p2 ( x) L0 ( x) y0 L1 ( x) y1 L2 ( x) y2
onde,
( x x1 )( x x2 ) x ( x 2)
L0 ( x )
( x0 x1 )( x0 x2 ) 3
( x x0 )( x x2 ) ( x 1)( x 2)
L1 ( x)
( x1 x0 )( x1 x2 ) 2
( x x0 )( x x1 ) ( x 1) x
L2 ( x )
( x2 x0 )( x2 x1 ) 6
Substituindo estes polinômios em p2(x) temos:
x( x 2) ( x 1)( x 2) x( x 2)
p2 ( x ) .(4) .(1) .(1)
3 2 6
Simplificando
7x 2x2
p2 ( x) 1
3 3
Observe que este polinômio é idêntico ao obtido resolvendo o sistema, pois o polinômio
interpolador é único.
b) Para obter um polinômio interpolador de grau 1, precisamos de 2 pontos. Como o ponto 0.5 está
entre 0 e 1 na tabela, escolhemos x0=0 e x1=1, assim y0=1 , y1=0
p1(x) = L0(x)y0 + L1(x)y1
onde
( x x1 ) ( x 1)
L0(x) =
( x 0 x1 ) 1
( x x0 ) ( x )
L1 ( x ) x
( x1 x0 ) 1
Então p1(x) = -(x-1)1 + x.(0) = -x+1, logo p1(0.5) = 0.5
Este método é também conhecido pelo método das diferenças divididas em relação aos distintos
pontos x0 , x1 ,, xn , tal que f ( xk ) f k ; k 0, 1,..., n
O polinômio interpolador da função f (x) de grau n da forma:
pn ( x) a0 a1 ( x x0 ) a2 ( x x0 )( x x1 ) ... an ( x x0 )( x x1 )( x xn ) (5.5)
xk yi = f0 f1 f2 f3 f4
x0 y0 f [ x0 ]
f [ x0 , x1 ]
x1 y1 f [ x1 ] f [ x0 , x1 , x2 ]
f [ x1 , x2 ] f [ x0 , x1 , x2 , x3 ]
x2 y 2 f [ x2 ] f [ x1 , x2 , x3 ] f [ x0 , x1 , x2 , x3 , x4 ]
f [ x2 , x3 ] f [ x1 , x2 , x3 , x4 ]
x3 y3 f [ x3 ] f [ x2 , x3 , x4 ]
f [ x3 , x4 ]
x4 y 4 f [ x4 ]
x -1 0 1 2 3
f (x) 1 1 0 -1 -2
a) Determine o polinômio interpolador e calcule f(0.5)
b) Determine um polinômio interpolador de grau 1 e calcule f(0.5)
Solução:
xi yi = f0 f1 f2 f3 f4
x0 1 f [ x0 ] 1
f[x0,x1]=0
x1 =0 f [ x1 ] 1 f[x0,x1,x2]= -1/2
f[x1,x2]=-1 f[x0,x1,x2,x3]=1/6
x2 =1 f [ x2 ] 0 f[x1,x2,x3]=0 f[x0,x1,x2,x3,x4]=-1/24
f[x2,x3]=-1 f[x1,x2,x3,x4]=0
x3 =2 f [ x3 ] 1 f[x2,x3,x4]=0
f[x3,x4]=-1
x4 =3 f [ x 4 ] 2
portanto
p4 ( x ) f [ x0 ] ( x x0 ) f [ x0 , x1 ] ( x x0 )( x x1 ) f [ x0 , x1 , x2 ] ( x x0 )( x x1 )( x x2 ) f [ x0 , x1 , x2 , x3 ]
( x x0 )( x x1 )( x x2 )( x x3 ) f [ x0 , x1 , x2 , x3 , x4 ]
=-x4/24 +x3/4-11x2/24-3x/4+1
p4(0.5) = 69/128 =0.539063 (idem)
xi yi = f0 f1 f2 f3 f4 f5
x0 =-1 y0 =1
f[x0,x1]=0
x1 =0 y1 = 1 f[x0,x1,x]=-0.307
f[x1,x]=-0.461 f[x0,x1,x,x2]=-0.116
f[x2,x3]=-1 f[x1,x2,x3,x4]=0
x3 =2 y3 = -1 f[x2,x3,x4]=0
f[x3,x4]=-1
x4 =3 y4 = -2
Observação:
Na interpolação polinomial na forma de Lagrange requer 2n 3 3n 2 operações aritméticas (n é o
número de subintervalos)
3n 2 5n 10
Já na forma de Newton operações aritméticas. Portanto se n>2 na forma de
2
Lagrange se requer mais operações.
EXERCÍCIOS
temperatura (oC) 20 30 45 55
calor específico 0.99807 0.99826 0.99849 0.99919
4) Usar os valores de log2(1/4), log2(1/2), log2(1) e log2(2) para determinar o valor aproximado de
log2(1.5) e o erro máximo cometido.
5) Queremos construir a tabela que contenha os valores de cos(x), para os pontos igualmente
espaçados no intervalo I=[1, 2].
Qual deve ser o menor número de pontos desta tabela para se obter a partir dela, o cos(x),
usando interpolação linear com |E(x)| 10-6, para qualquer x I ?
6) Sabe-se que a equação x e x 0 admite uma raiz no intervalo [0,1], determine o valor desta
raiz usando um polinômio de interpolação sobre três pontos.
7) Com que grau de precisão podemos calcular 115 usando interpolação sobre os pontos
x0 =100, x1 = 121 e x2 =144 ?
1.6
cos 2 x
10) Calcule o valor aproximado de 0
8 x
dx , considerando 8 pontos igualmente espaçados.
3
Extraído de http://www.petbrazil.com.br/bicho/caes/490.htm
Respostas
5 Três pontos
6 x = 0.5671430904
7
8 x0 := 0; x1 := 0.5; x2 := 1.0; x3 := 1.5; x4 := 2.0; x5 := 2.5
Integração Numérica
Seja f : I IR; I [a, b] IR uma função integrável e seja F (x) sua primitiva. A integração por
métodos numéricos é utilizada nos casos em que a primitiva F (x) é de difícil obtenção ou quando
apenas são conhecidos os valores discretos de f (x) . A ideia básica é determinar um polinômio
interpolador de f (x) que passa pelos pontos ( xi , f ( xi )); i 0, 1,..., n , uma vez obtido este
polinômio integramos em relação a x o polinômio obtendo assim, o valor aproximado da integral
definida no intervalor [a, b] da função dada:
b b
f ( x)dx p ( x)dx
a a
n (6.1)
A fórmula que fornece o valor numérico aproximado da integral de uma função é chamada de
‘quadratura numérica’ ou ‘fórmula de integração numérica’. Existem dois tipos de fórmulas.
2) A segunda fórmula se aplica a funções com valores conhecidos em pontos predeterminados não
necessariamente equidistantes e são as chamadas fórmulas de Gauss ou quadratura de Gauss.
Então:
b
(b a)
a
f ( x)dx ( f (a) f (b))
2
Áreatrapézio (6.1)
A fórmula (6.1) também pode ser obtida integrando o polinômio interpolador de primeiro grau
que interpola os pontos (a, f (a )) e (b, f (b)) .
x x0 x1
f (x) f ( x0 ) f ( x1 )
f ( x)dx p ( x)dx 2 f ( x ) f ( x ) .
h
1 0 1
x0 x0
Portanto a integral da função f, pela regra dos trapézios simples (n=1) é dada por:
x1
f ( x)dx ( f ( x ) f ( x )) 2 .
h
0 1 (6.2)
x0
Substituindo por
t x x0 dt dx .
Os extremos de integração são:
se x x0 t 0 e se x x1 => t x1 x0 h
Substituindo estes resultados na expressão (6.4), e aplicando o teorema da média para integrais
(*), temos:
f () t 3 t 2 f ()(h 3 )
h h
1 f ()h 3
ET
20
f ( t )t (t h)dt
2 3 2 0
26
12
; ]x0, x1[
Como não podemos calcular exatamente o valor de f () , podemos determinar um erro máximo
cometido:
h3M 2
| ET | (6.5)
12
onde M 2 max | f ( x) | , para x [ x0 , x1 ] .
(*) Teorema da Média para Integrais: Sejam f e g funções reais, definidas e contínuas no
intervalo fechado [a, b]. Se a função g (x) não muda de sinal para x [a, b] , então para algum
[a, b] , tem-se
b b
2.3
x
dx
Exemplo 1: Determine o valor aproximado de I e calcule o erro cometido.
1.0
1
Denotando por f ( x) , h 2 .3 1 1 .3 , x0 1. e x1 2.3 e substituindo na equação (6.2)
x
tem-se:
x1
1 1 1.3
f ( x)dx ( f ( x ) f ( x )) 2 1 2.3 2
h
I= 0 1 0.9326087
x0
x = ln x
dx 2.3
I 1.0
ln 2.3 ln 1.0 0.8329091229
1.0
Na figura (6.1) podemos observar que se a função f (x) não é linear, então quanto maior seja o
comprimento do intervalo de integração, maior será o erro cometido na aproximação da integral.
Uma forma de melhorar o resultado é subdividir o intervalo [a, b] em n subintervalos de
ba
comprimento h, onde h .
n
f ( x)dx f ( x ) f ( x ) 2 ( f ( x ) f ( x )) 2 .... ( f ( x
h h h
0 1 1 2 n1 ) f ( xn ))
a
2
h2
f ( x0 ) 2 f ( x1 ) 2 f ( x2 ) ... 2 f ( xn1 ) f ( xn )
Portanto integral da função f é aproximada pela regra dos trapézios repetida da forma:
h
b n
a
f ( x)dx
2
f ( x0 ) f ( x n ) 2
k 1
f ( xk )
(6.6)
O erro é obtido na integração do intervalo [a, b] é obtido somando o erro de cada subintervalo.
Assim,
h3
ET f ( 0 ) f (1 ) f ( n1 ); onde i ]xi, xi+1[.
12
Desta forma, o erro máximo cometido na aproximação da integral pela regra dos trapézios repetida
é dada por:
n h 3 M 2 (b a ) 3 M 2
| ETR | (6.7)
12 12n 2
2.3
dx
Exemplo 2: Determine o valor aproximado de I , utilizando a regra dos trapézios repetida
1.0
x
com 4 subdivisões.
(b a ) 2.3 1
Sendo h 0.325 , então
4 4
2 2
Temos que M2 = max 3
[1, 2.3] x 1
Logo,
2.3
x 2 f ( x ) f ( x ) h f ( x ) f ( x )
dx h
I TR 0 4 1 2
1.0
0.325
= 1 0.43478261 0.325(0.8810573 0.6060606) =08399618518
2
O erro cometido:
n h 3 M 2 (b a ) 3 M 2
| ETR | 0.011442708
12 12n 2
Observe que o erro máximo cometido na regra dos trapézios repetida é menor quando que na regra
dos trapézios com um intervalo (exemplo (1))
1 1 1
Exemplo 3. (Provão 2001): Sejam p um inteiro maior que 2, A = 1 + ... e B é
2 3 p
p
dx
a aproximação de x pela regra dos trapézios com passo igual a 1. Então A-B é igual a :
1
Solução:
o gráfico da função 1/x é da forma
1 1 1 1 1
B= ...
2 2p 2 3 p 1
1 1 1
A= 1 ...
2 3 p
1 1 1
A-B= 1
2 p 2p
1 2 1 1 1
= =
2 2p 2 2p
Portanto a resposta correta é o item (a).
x a x0 ab b x2
x1
2
f (x) f ( x0 ) f ( x1 ) f ( x2 )
f ( x)dx p
x0 x0
2 ( x )dx
( x x1 )( x x 2 ) f ( x 0 ) ( x x 0 )( x x 2 ) f ( x1 ) ( x x 0 )( x x1 ) f ( x 2 )
x2 2 x 2 x
x0
( x 0 x1 )( x 0 x 2 )
dx
x
( x1 x 0 )( x1 x 2 )
dx
x0
( x 2 x 0 )( x 2 x1 )
dx
f ( x 0 )h f ( x1 ) f ( x 2 ) h
= 4 f ( x 0 ) 4 f ( x1 ) f ( x 2 )
3 3 3 3
Por tanto:
x2
f ( x)dx 3 f ( x ) 4 f ( x ) f ( x )
h
0 1 2 (6.5)
x0
Graficamente temos:
h5 M 4
| ES | (6.6)
90
Esta demonstração já é bem elaborada do que a regra dos trapézios. Veja nos livros citados na
bibliografia.
Introdução ao Cálculo Numérico 104
2.3
dx
Exemplo (3): Determine I utilizando a regra de Simpson.
1.0
x
b a 2 .3 1
Dividindo o intervalo [1.0, 2.3] em duas partes, h 0.65 , obtemos os três pontos:
2 2
3.6
dx 0.65
I
3.0
x
3
(1 0.43478261 4 0.6060606) 0.8361220903
1 24 24
sendo f ( x) , f (iv ) ( x) 5 , então M 4 5 24, logo
x x 1
5 5
h M 4 (0.65) (24)
| ES | 0.030941
90 90
Observe que este resultado é muito menor do que o do exemplo (1) obtido pela regra dos trapézios
simples.
Para obter melhor resultado, podemos dividir o intervalo [a, b] em m=2n subintervalos e aplicar a
regra de Simpson em cada subintervalo. Suponhamos que a=x0, x1,x2,...,x2n =b são os m+1 pontos
ba
igualmente espaçados com h xi 1 xi para i 0,1,2,..., m 2n.
2n
Observe que o número de subintervalos é par.
xm
h h h
f ( x)dx 3 f ( x
x0
0 ) 4 f ( x1 ) f ( x 2 )
3
f ( x2 ) 4 f ( x3 ) f ( x4 ) f ( x4 ) 4 f ( x5 ) f ( x6 )....
3
h
.... f ( x2n2 ) 4 f ( x2 n1 ) f ( x2 n )
3
h
f ( x0 ) 4 f ( x1 ) 2 f ( x2 ) 4 f ( x3 ) 2 f ( x4 ) .....2 f ( x2n2 ) 4 f ( x2 n1 ) f ( x2 n )
3
h
( f ( x 0 ) f ( x 2 n )) 4 f ( x1 ) f ( x 3 ) .... f ( x 2 n 1 ) 2 f ( x 2 ) f ( x 4 ) .... f ( x 2 n 2 )
3
Portanto:
h n
b n
a
f ( x)dx ( f ( x0 ) f ( x2 n )) 4
3
k 1
f ( x2 k 1 ) 2
k 2
f ( x2 k 2 )
(6.7)
h5 M 4
| ES | n (6.8)
90
ba
onde h e M 4 max | f (iv ) ( x) |
2n [ x0 , x2 n ]
dx
I , considere n = 4.
1.0
x
(como m= 2n , então teremos 8 subdivisões).
Determinado h:
b a 1.3
h 0.1625
2n 8
para facilitar os cálculos, montamos a tabela:
h
b n n
a
f ( x)dx ( f ( x0 ) f ( x2 n )) 4
3
k 1
f ( x2 k 1 ) 2
k 1
f ( x2 k 2 )
b 0.1625 1 0.434783 4[0.860215 0.672269 0.551724 0.467836]
f ( x)dx
a 3 2[0.754717 0.6060606 0.506329]
logo
b
f ( x ) dx 0.832930228
a
E o erro cometido
h 5 M 4 4(0.1625) 5 M 4
|ESR| n 0.5035 10 5 ;
90 90
onde
M4= max | f (iv ) ( x )| =24
[ x0 , x2 n ]
2.3
0
a) Pela regra dos trapézios repetida.
b) Pela regra de Simpson repetida.
sabendo que
n h 3 M 2 (b a ) 3 M 2 8.4365636
| ETR | 10 4 ,
12 12n 2 12n 2
então n 83.85, portanto serão necessárias n = 84 partições.
Exemplo 6: Determine o número de divisões e a regra que deve ser usada para obter erro menor
3
-3
que 10 com menor esforço computacional para determinar f ( x)dx
0
para:
3x 3 se 0 x 1
f ( x) x 2 2 se 1 x 2
x 5 26 se 2 x 3
A integral em cada subintervalo é
3 1 2 3
0 0 1 2
Para a primeira integra, aplica-se a regra dos trapézios com erro 0, pois a derivada de ordem 2
de 3x+3 é nula, e consideramos apenas 1 subintervalo (n=1), para x [0,1[.
Para a terceira integral, mesmo aplicando a regra de Simpson haverá erro, pois a derivada de
quarta ordem de x5-26 é diferente de zero, para x[2, 3]. Para obter o menor número possível
de divisões, vamos aplicar a regra de Simpson repetida. Sendo f ( x) x 5 26 , temos
f (iv ) ( x) 120 x e M4=máx|120x| = (120).(3)=360, para x [2,3]
h5 M 4 h 5 (360) 4n 1
|ESR| n n 5 5 4 10 3 ,
90 90 2 n 8n
então n 3.344 m 6.687 , como m tem que ser par, então m=8.
Exercícios
1) Dada a função f (x) definida a partir da tabela a seguir
xi 0.0 0.25 0.5 0.75 1.0
f ( xi ) 0.600 0.751 0.938 1.335 2.400
1
2) Calcule as integrais abaixo pela regra dos trapézios e pela regra de Simpson, usando 4 divisões
de [a, b]. Compare seus resultados.
2 4 4
dx
a) e b) 3
c)
x
dx xdx
1 1 2
x
3) Usando as integrais do exercício anterior, com quantas divisões do intervalo no mínimo, demos
esperar obter erros menores que 10-5 ?
6
dx
4) Calcule o valor aproximado de (1 x)
0
usando a regra dos trapézio (n=4) e a regra de
Simpson (m=2n=6).
8) Use a regra de Simpson para integrar a função abaixo entre 0 e 2 com menor esforço
computacional possível (menor número de divisões e maior precisão) Justifique sua resposta!.
2x se 0 x 1
f ( x)
( x 2) se 1 x 2
4
9) Faça um programa na linguagem Pascal para determinar a seguinte integral dupla, utilizando a
regra dos trapézios e de Simpson repetidas com 20 divisões para ambos métodos e ambos os
intervalos.
/2
0. 4 4
0
( y y ) cos x dy dx
0
10) Verifique o valor exato das seguintes integrais definidas e determine o valor aproximado
através da regra de Simpson 1/3 considerando n=10.
1
4
ln 2
1
ln x 2
1 x dx x
2
a) b) ln(1 tgx)dx c) 2
dx
0
4 0
8
0
1 8
[1] Demidovich, B.P. and Maron I.A. Computational Mathematics . Mir Publishers-Moscow.
1981
[3] Franco, Neide Maria Bertoldi. Cálculo Numérico. Editora Pearson. 2002.
[4] Humes, Melo, Yoshida e Martins. Noções de Cálculo Numérico. Mc Graw Hill. 1984.
[5] García Márquez, R. , Zander Vaiano e Gervazoni Silva de Mello, Elizabeth. Um Enfoque
Pedagógico da Matemática para o Ensino Fundamental. Ed. Clube de Autores. 2009.
https://www.clubedeautores.com.br/book/3081--
Um_Enfoque_Pedagogico_da_Matematica?topic=didaticos#.V‐aT_fArKUk
[6] Ruggiero Márcia A. Gomes e de Rocha Lopes Vera Lúcia. Cálculo Numérico. Aspectos
teóricos e computacionais. Mc Graw Hill. 1988.
sin x
iii. f ( x) tan x
cos x
Dom f ={ x IR / x (2k+1) /2, k = 0,1,2,...}
[> plot(tan(x), x=-10..10);
v. f ( x) e ax , onde e 2.718281828459
Dom f = lR
Para a > 0, por exemplo, a = 1, veja fig. (a)
(a) (b)
vi. f ( x) x a
Dom f = IR
4ª) Se a é um número ímpar, temos
[> plot ({x, x^3, x^5, x^7}, x= -2..2,y=-10..10); # para graficar vários gráficos juntos.
[> t[1]:=plot(x^2, x=-3..3, y=0..10): t[2]:=plot(x^4, x=-3..3, y=0..10): t[3]:=plot(x^6, x=-3..3,
y=0..10): display(t[i] $i=1..3);
Os gráficos também podem ser animados
[>animate(plot, [x^A, x=-4..4, y=-3..3], A=-4..4);
[>animate(plot,[sin(A*x, x=-4..4, y=-1..1], A=0..4);
EXERCÍCIOS