Erros de Cálculo Numérico - Apostila
-
Upload
guilhermerodrigues -
Category
Documents
-
view
27 -
download
22
description
Transcript of Erros de Cálculo Numérico - Apostila
Universidade Federal do Pará
Instituto de Tecnologia
Programa de Pós-Graduação em Engenharia Mecânica - PPGEM
Métodos Numéricos
Prof. Dr. Jerson R. P. Vaz
Belém-PA
Brasil
1. Introdução
O estudo de métodos numéricos constitui-se como um grande passo para
o entendimento de novas ferramentas matemáticas passíveis de serem aplicadas
na solução de problemas de engenharia, que eventualmente podem parecer
insolúveis devido a complexidade analítica envolvida.
O uso dessas ferramentas foi acelerado com o surgimento de
equipamentos eletrônicos sofisticados como os PCs, que incentivou o
crescimento de métodos numéricos cada vez mais robustos, tornando o estudo
dos métodos numéricos, uma disciplina imprescindível em qualquer curso
científico.
Neste curso é desenvolvido um estudo sobre os métodos numéricos mais
comumente utilizados, onde alguns conceitos importantíssimos para a
compreensão e o entendimento de técnicas numéricas serão abordados,
objetivando suas aplicações na engenharia. Desta forma, os seguintes conceitos
serão estudados:
- Erro de arredondamento, truncamento, acurácia e precisão;
- Análise de condicionamento e aproximação de funções e derivadas
através da série de Taylor;
- Métodos para o cálculo de raízes de equações não lineares;
- Sistemas de equações lineares;
- Ajuste de curvas;
- Integração numérica;
- Soluções numéricas para equações diferenciais ordinárias e parciais.
Objetivo geral
Proporcionar ao aluno conhecimentos para utilizar métodos numéricos
como ferramenta na solução de problemas de engenharia.
Conteúdo
Introdução; Erros e incertezas; Solução numérica de sistemas de equações
lineares e não-lineares; Interpolação e aproximação de funções; Diferenciação e
integração numérica; Prática de cálculo numérico computacional.
2. Erros e Incertezas
2.1. Erro absoluto
É o módulo da diferença entre um valor exato x e sua aproximação x , o
qual denotamos por ae .
ae x x (2.1)
2.2. Erro relativo
É a razão entre o erro absoluto ae e o valor aproximado x . Denotado por
re :
a
x xe
x (2.2)
2.3. Erro de arredondamento e truncamento
2.3.1. Erro de arredondamento
Entende-se por erro de arredondamento, o erro resultante da associação
de um número real a um número de máquina do sistema numérico de uma
máquina digital.
Existem muitas formas de se determinar a associação de um número real
a um número aproximado estabelecido por uma máquina. Tais associações
definem os tipos de arredondamento. Entre os tipos de arredondamento mais
usados está o arredondamento por corte, em que, para se ter um número com n
dígitos, corta-se o número na posição do dígito n. Por exemplo, deseja-se o
número 1,2356123456 com apenas três casas decimais. Então cortamos o número
na posição que se encontra o dígito 5, resultando em 1,235.
Um outro tipo de arredondamento muito usado é o arredondamento
simétrico ou, como é conhecido, arredondamento para um número mais próximo
da máquina. Considera-se para se ter uma precisão de n dígitos, o dígito n+1,
caso este seja menor ou igual a 5, corta-se na posição do dígito n; caso contrário,
aplica-se o arredondamento para cima. Por exemplo, deseja-se, novamente, o
número 1,2356123456 com apenas três casas decimais. Então cortamos o número
na posição que se encontra o dígito 5, e somamos uma unidade a este mesmo
dígito, pois o dígito 6 é maior que quatro, resultando em 1,236.
A Tab. 1 mostra uma comparação entre os erros de arredondamento por
corte e simétrico em relação a um valor exato. Além de indicar um problema
que é comum nos processos iterativos – propagação dos erros.
Tab. 1: Erro de arredondamento – propagação.
2.3.2. Acurácia e precisão
A qualidade de um resultado é dita exatidão (“acurácia”). A exatidão
tem a responsabilidade de informar se um resultado emitido por uma máquina
digital é bom ou ruim. Já a precisão, em termos práticos, corresponde ao
número de dígitos significativos do sistema de representação de uma máquina
digital.
Esta distinção entre dois conceitos, que na linguagem coloquial são
sinônimos, é fundamental para a matemática computacional. É surpreendente
ver quanta confusão isso causa, mesmo para pessoas que deviam conhecê-los.
Um computador pode ter uma grande precisão, mas produzir resultados com
exatidão muito ruins. Essa confusão entre esses conceitos é revelada claramente
pelos fabricantes de computadores e aqueles usuários que pensam que uma
maior precisão é um passaporte automático para altas exatidões nos resultados.
Desta maneira é oferecido pelos fabricantes precisão simples, alta precisão e
algumas vezes precisão estendida, fazendo com que um usuário não satisfeito
com a exatidão dos resultados obtidos em precisão simples, os recalcule com
maior precisão. Isso nem sempre vai garantir uma melhor exatidão. Como
exemplo basta considerar a expressão:
40 40 45 4510 500 10 610 10 400 10 1510 ,
que terá como resposta zero em muitas máquinas disponíveis hoje em dia. O
usuário não sabe em geral quantos dígitos são necessários para garantir a
resposta correta e o problema de se conseguir uma aritmética computacional
com exatidão ótima, só foi conseguido a partir dos trabalhos do Prof. U. Kulish
e sua equipe na Universidade de Karlsruhe (Alemanha) a partir de 1979.
2.3.3. Erro de truncamento
São erros provenientes da utilização de processos que deveriam ser
infinitos ou muito grandes para a determinação de um valor e que, por razões
práticas, são truncados.
Estes processos infinitos são muito utilizados na avaliação de funções
matemáticas, tais como, exponenciação, logaritmos, funções trigonométricas e
várias outras que uma máquina pode ter.
No presente curso, estudaremos o erro de truncamento associado à
aplicação da série de Taylor, dada por:
2
0 0 0 0 00
' ''1! 2 ! ! !
n n
n n
n
h h h hf x f x f x f x f x f x
n n
onde
0x x h , em que Dfx e xh .
O erro cometido com o truncamento da série no termo de ordem n é dado por:
1
1
1 !
n
n
n
he x f
n onde
0x h .
Na série de Taylor calcula-se o desenvolvimento até um número finito de
termos, e despreza-se outro número infinito de termos, truncando, portanto, o
modelo real. Uma das principais dificuldades da computação científica é fazer
uma estimativa realística deste erro, isto é, por exemplo, determinar que número
de termos deve ser usado. Um modelo usual seria ir calculando até que o valor
representado fosse menor do que uma certa grandeza dada a priori (tolerância).
Exemplo:
Determine o polinômio de Taylor, com truncamento no termo de segunda
ordem, para a função xxf cos , para 00 x , e use esse polinômio para obter
o resultado aproximado de 01,0cos . Calcule, também, o erro de truncamento
do polinômio.
Passo 1
Para aplicar a série de Taylor precisamos conhecer a função no ponto
inicial 0x e as suas derivadas neste mesmo ponto. Desta forma, temos:
xxf cos 10coscos 00 xxf
senxxf ' 00' 00 sensenxxf
xxf cos'' 10coscos'' 00 xxf
Passo 2
Vamos agora, aplicar a série de Taylor para aproximar a função
xxf cos no ponto 0x .
00
2
00!
''!2
'!1
xfn
hxf
hxf
hxfxf n
n
.
Desta maneira, a série fica
0.32
0.1032 hh
hhf
Como 0xxxh , e truncando no termo de segunda ordem, temos:
2
1cos2x
xxf
Então 99995,02
01,0101,0cos
2
e o erro de truncamento
11
!1
n
n
n fn
hxe
sen
xsen
xxe
6!12
312
2
para 01,0x , fica
sensene 63
2 10.61,0.6
01,001,0 , em que 01,00
como 1sen e xex
xxf 2
2
21cos , então:
610.61,099995,001,0cos
Esta expressão indica que pelo menos os 5 primeiros algarismos significativos
são iguais aos algarismos do valor real de 01,0cos .
3. Aproximação de Funções
3.1. Série de Taylor e sua aplicação na aproximação de funções e derivadas
O desenvolvimento em série de Taylor constitui uma ferramenta bastante
eficaz para o cálculo de aproximação de funções e derivadas, pois, toda função
analítica pode ser representada por uma série de potências em x-x0, cuja
representação, neste caso, é a própria série de Taylor.
2
0 0 0 0' ''1! 2! !
nnh h h
f x f x f x f x f xn
Cuja forma em notação sigma é
2
0 0 0 0
0
' ''! 1! 2! !
k kk
ko o o o o
k
f x x x x x x x x xf x f x f x f x f x
k k
onde 0x x h , em que x Df .
O erro cometido com o truncamento da série no termo de ordem n é dado por:
1
1
1 !
kk
k
he x f
k
onde 0x h .
3.2.Série de Taylor na aproximação de funções
Neste item, vamos aplicar a série de Taylor para aproximar a solução de
algumas funções. Em seguida, faremos uma breve análise dos resultados quando
comparados com os valores da solução exata.
Antes de aplicar a série de Taylor, é necessário conhecer o critério de
convergência de D’Lembert, cuja aplicação é bastante comum nas séries de
potências.
Aplicação A
Vamos desenvolver a função 2f x x em série de Taylor e avaliar o
valor função em 0 0x .
Passo 1
Para aplicar a série de Taylor precisamos conhecer a função no ponto
inicial 0x e as suas derivadas neste mesmo ponto. Desta forma, temos:
2f x x 0 0f x
' 2f x x 0' 0f x
'' 2f x 0'' 2f x
''' 0f x 0''' 0f x
Observe que a partir do termo de terceira ordem na derivada, seus
valores são todos nulos. O desenvolvimento de Taylor em 0 0x é conhecido
como desenvolvimento de Maclaurin, e é
2
0
00 ' 0 '' 0 0
! 1! 2! !
k k kk
k
f x x x xf x f f f f
k k
Passo 2
Vamos agora, aplicar a série de Taylor para aproximar a função
2f x x no ponto 0x .
2
0 0 0 0' ''1! 2! !
nnh h h
f x f x f x f x f xn
.
Desta maneira, a série fica
2 3
0 .0 .2 .01! 2! 3!
h h hf x
que se reduz a 2f x x quando substituímos 0h x x x na equação
acima. Observe que a série se torna exatamente a própria função.
Neste caso, como a função é polinomial de grau dois, a série de Taylor
reconstitui a função 2f x x de forma exata, confirmando a importante
característica que a série de Taylor tem de representar qualquer função
analítica, seja de forma aproximada ou exata.
Aplicação B
Vamos executar o mesmo procedimento, feito na APLICAÇÃO 1, com a
função lnf x x para 0 1x .
Passo 1
Novamente, para aplicar a série de Taylor precisamos conhecer a função
no ponto inicial 0x e as suas derivadas neste mesmo ponto. Desta forma, temos:
lnf x x 0 0f x
1'f x
x 0' 1f x
2
1''f x
x 0'' 1f x
3
2'''f x
x 0''' 2f x
4
6IVf xx
0 6IVf x
1 !
1nn
n
nf x
x
1
0 1 1 !nn
f x n
Passo 2
Vamos agora, aplicar a série de Taylor para aproximar a função
lnf x x no ponto 0x .
2
0 0 0 0' ''1! 2! !
nnh h h
f x f x f x f x f xn
.
Desta maneira, a série fica
2 3 4
11 1
2 3 4
nnh h h h
f h hn
que é a função lnf x x em série de Taylor avaliada em 0x , ou seja:
2 3 4
1ln 1 1
2 3 4
nnh h h h
h hn
Utilizando a equação acima para calcular o valor de ln 2 , basta fazer
1h , o que resulta em:
11 1 1 1ln 1 1 1 1
2 3 4
n
n
A tabela abaixo mostra os resultados de ln 2 para diversos números de termos
n , e os respectivos erros absolutos quando comparados com os resultados exatos
de ln 2 .
n Valor Aproximado Valor Exato Erro Absoluto
1 1 0.6931 0.3069
2 0.5 0.6931 0.1931
3 0.8333 0.6931 0.1402
4 0.5833 0.6931 0.1098
5 0.7833 0.6931 0.0902
6 0.6167 0.6931 0.0765
7 0.7595 0.6931 0.0664
8 0.6345 0.6931 0.0586
9 0.7476 0.6931 0.0525
10 0.6456 0.6931 0.0475
5000 0.6930 0.6931 41 10
Observe que quanto maior é o número de termos menor é o erro absoluto
e conseqüentemente mais próximo está a solução aproximada da solução exata.
3.3.Série de Taylor na aproximação de derivadas
A série de Taylor, também, é uma poderosa ferramenta para aproximar
derivadas de qualquer ordem. Essa característica, forma a base para o
entendimento de um método bastante eficiente e rápido conhecido como o
método das diferenças finitas (DF), que é largamente utilizado para solucionar
inúmeros problemas físico-matemáticos, apesar de ser um método bastante
antigo. Sua utilização em grande escala é justificada pelo alto grau de
performance computacional que possui. Neste curso, concentraremos os nossos
estudos apenas na aproximação de derivadas de primeira e segunda ordens.
3.3.1.Aproximação de derivadas de primeira ordem
Para aproximar a derivada de primeira ordem pela série de Taylor, é
necessário executar o truncamento no termo de primeira ordem, o que resulta
em
0 0'f x f x hf x
Rearranjando tal equação, temos
0 0df x f x f x
dx h
, como 0x x h
0 0 0df x f x h f x
dx h
Na forma discreta
1i if fdf
dx h
, onde h x (chamado de passo)
Essa é a equação que aproxima uma derivada de primeira ordem
utilizando a série de Taylor. É fácil perceber que esta equação é um esquema de
diferenças finitas de primeira ordem.
Para determinar a derivada de uma função em um ponto, é necessário
conhecer dois pontos da função, de acordo com a o ilustrado na figura abaixo.
3.3.2.Aproximação de derivadas de segunda ordem
Neste item, para aproximar a derivada de segunda ordem, é necessário
expandir a série de Taylor de duas maneiras diferentes. A primeira consiste em
desenvolver a série executando passos positivos, ou seja, passos avançados h .
A segunda, desenvolver a série executando passos negativos, passos atrasados
h . Desta forma, os desenvolvimentos em série de Taylor, fica
2 3
0 0 0 0 0' '' '''1! 2! 3!
h h hf x h f x f x f x f x
e
2 3
0 0 0 0 0' '' '''1! 2! 3!
h h hf x h f x f x f x f x
Somando as duas parcelas e truncando no termo de segunda ordem, temos
2
0 0 0 02 2 ''2
hf x h f x h f x f x
Arrumando a expressão
2
000
2
0
2 2
h
hxfxfhxf
dx
xfd
Na forma discreta
2
11
2
2 2
h
fff
dx
fd iii , onde xh (chamado de passo)
Essa expressão aproxima uma derivada de segunda ordem, e é um
esquema de diferenças finitas de segunda ordem.
Neste caso, para determinar a segunda derivada de uma função em um
ponto, é necessário conhecer três pontos da função.
Aplicação A
Determinar 2'f , utilizando tanto a aproximação por série de Taylor
quanto a solução exata, a partir de xxf ln com 1.0h .
Passo 1
A solução exata é bastante simples de se calcular. Basta derivar uma vez
a função xxf ln e depois substituir o valor 2, ou seja, como x
xf1
' ,
então 5.02
12' f .
Passo 2
Para a solução aproximada, precisamos determinar o valor da função em
0x e em hx 0 . Desta forma, como 20 x e 1.21.020 hx , fazemos:
693.02lnln 00 xxf
742.01.02lnln 00 hxhxf
Aplicando a fórmula aproximada para a derivada de primeira ordem, temos:
49.0
1.0
693.0742.0
1.0
21.2000
ff
h
xfhxf
dx
xdf
Então o resultado aproximado de 2'f é 0.49. O erro absoluto é da ordem de
01.049.05.0 .
Aplicação B
Nesta aplicação vamos utilizar a mesma função da APLICAÇÂO A, com
a diferença de que agora vamos calcular 2''f , utilizando, da mesma maneira,
tanto a aproximação por série de Taylor quanto a solução exata, a partir de
xxf ln com 1.0h .
Passo 1
A solução exata, da mesma maneira que na aplicação A, é bastante
simples de se calcular. Basta derivar duas vezes a função xxf ln e depois
substituir o valor 2, ou seja, como 2
1''
xxf , então 25.0
4
12'' f .
Passo 2
Para a solução aproximada, precisamos determinar o valor da função em
0x , hx 0 e em hx 0 . Desta forma, como 20 x , 1.20 hx e 9.10 hx ,
fazemos:
693.02lnln 00 xxf
742.01.2lnln 00 hxhxf
642.09.1lnln 00 hxhxf
Aplicando a fórmula aproximada para a derivada de primeira ordem, temos:
2.0
01.0
642.0693.02742.0
1.0
9.1221.2222
000
2
0
2
fff
h
hxfxfhxf
dx
xfd
Então o resultado aproximado de 2''f é -0.2. O erro absoluto é da ordem de
05.02.025.0 .