Vous êtes sur la page 1sur 14

CLCULO NUMRICO 2015

SISTEMA DE NUMERAO E ERROS


1. INTRODUO
A obteno de uma soluo numrica para um problema fsico por meio da aplicao de
mtodos numricos nem sempre fornece valores que se encaixam dentro de limites razoveis. Esta
afirmao verdadeira mesmo quando se aplica um mtodo adequado e os clculos so efetuados de
uma maneira correta.
Esta diferena chamada de erro e inerente ao processo, no podendo, em muitos casos, ser
evitada.
De uma forma geral, podemos representar o processo de soluo de um problema fsico de
acordo com o esquema abaixo:
PROBLEMA
FSICO

MODELAGEM

MODELO
MATEMTICO

RESOLUO

SOLUO

Modelagem a fase de obteno de um modelo matemtico que descreve o comportamento do


sistema fsico em questo.
Resoluo a fase de obteno da soluo do modelo matemtico atravs da aplicao de
mtodos numricos.
1.1 ERROS NA FASE DE MODELAGEM
Ao se tentar representar um fenmeno do mundo fsico por meio de um modelo matemtico,
raramente se tem uma descrio correta deste fenmeno. Normalmente, so necessrias vrias
simplificaes do mundo fsico para que se tenha um modelo matemtico com o qual se possa
trabalhar.
Deve-se ter sempre em mente que a preciso do resultado obtido no s funo do modelo
matemtico adotado, mas tambm da preciso dos dados de entrada.
1.2 ERROS NA FASE DE RESOLUO
Para a resoluo de modelos matemticos, muitas vezes torna-se necessria a utilizao de
instrumentos de clculo que necessitam, para seu funcionamento, que sejam feitas certas
aproximaes. Tais aproximaes podem gerar erros.
2. SISTEMAS DE NMEROS NO COMPUTADOR
2.1 REPRESENTAO DE UM NMERO INTEIRO
Dado um nmero inteiro n 0 , ele possui uma nica representao:
n n k n k 1...n1n0 n0 0 n1 1 ... n k k
,

onde os ni , i 0,1,..., k so inteiros satisfazendo 0 ni e nk 0 .


Exemplo 2.1.1

Na base 10 o nmero 1997 representado por:


199710 7 100 9 101 9 10 2 1 103
2.2 REPRESENTAO DE UM NMERO REAL EM PONTO FLUTUANTE
Dado um nmero real, x 0 , ele ser representado em ponto flutuante por
x d e ,

onde a base do sistema de numerao, d a mantissa e e o expoente. A mantissa um nmero


em ponto fixo, isto
n

d di i
ik

onde, freqentemente, nos grandes computadores, k 1 , tal que se x 0 , ento d1 0 ; 0 d i ,


1
i 1,2,..., t , com t a quantidade de dgitos significativos ou preciso do sistema, d i 1 e
meM .
Observaes:
a) d1 0 caracteriza o sistema de nmeros em ponto flutuante normalizado.
b) O nmero zero pertence a qualquer sistema e representado com mantissa igual a zero e
e m .
Exemplo 2.2.1
Escrever os nmeros:
x1 0,35 ; x2 5,172 ; x3 0,0123 ; x4 5391,3 e x5 0,0003
onde todos esto na base 10 , em ponto flutuante na forma normalizada.

x1 0,35 3 10 1 5 10 2 100 0,35 100


x2 5,172 5 101 1 10 2 7 103 2 104 101 0,5172 101
x3 0,0123 1 101 2 102 3 103 10 1 0,123 101

x4 5391,3 5 10 1 3 102 9 103 1 10 4 3 105 10 4 0,53913 10 4


x5 0,0003 3 101 103 0,3 103
Agora, para representarmos um sistema de nmeros em ponto flutuante normalizado, na base ,
com t dgitos significativos e com limites dos expoentes m e M , usaremos a notao: F , t , m, M .
Assim, um nmero em F , t , m, M ser representado por:
x 0, d1d 2 ...dt e

onde d1 0 e m e M .

Exemplo 2.2.2
Considere o sistema F 10,3,2,2 . Represente neste sistema os nmeros do Exemplo 2.2.1.
e
Neste sistema, um nmero ser representado por x 0, d1d 2 d3 10 , onde 2 e 2 .
Assim:
x1 0,35 0,350 100
x2 5,172 0,517 101

x3 0,0123 0,123 101


Observe que os nmeros 5391,3 e 0,0003 no podem ser representados no sistema. De fato, o
4
nmero x4 5391,3 0,539 10 e, portanto, o expoente maior que 2, causando overflow; por outro
3
lado, x5 0,0003 0,300 10 e, assim, o expoente menor que -2, causando underflow.

2.3 MUDANA DE BASE


Um nmero pode ser representado em mais de uma base. Atravs de uma mudana de base,
possvel determinar a representao em uma nova base.
2.3.1 Base de um sistema de numerao
As bases mais utilizadas para sistemas de numerao so:
a) Binria (Base 2) - representada pelos numerais 0 e 1.
b) Octal (Base 8) - representada pelos numerais 0, 1, 2, 3, 4, 5, 6 e 7.
c) Decimal (Base 10) - representada pelos numerais 0, 1, 2, 3, 4, 5, 6, 7, 8 e 9.
d) Hexadecimal (Base 16) - representada pelos numerais 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E e F.
Uma relao entre elas pode ser visualizada na tabela abaixo:

Binria

Octal

Decimal

Hexadecimal

00000

00

00

00

00001

01

01

01

00010

02

02

02

00011

03

03

03

00100

04

04

04

00101

05

05

05

00110

06

06

06

00111

07

07

07

01000

10

08

08

01001

11

09

09

01010

12

10

0A

01011

13

11

0B

01100

14

12

0C

01101

15

13

0D

01110

16

14

0E

01111

17

15

0F

10000

20

16

10

10001

21

17

11

10010

22

18

12

10011

23

19

13

10100

24

20

14

2.3.2 Converso de base


a) Mudana de uma base para a base 10 - essa mudana feita com a aplicao imediata da
definio 2.1.

Exemplo 2.3.2.1
10112 1 23 0 22 1 21 1 20
8 0 2 1
1110
Exemplo 2.3.2.2
1247,2358 1 83 2 82 4 81 7 80 2 81 3 82 5 83
1 3
5
512 128 32 7

8 64 512
679,181640610

Exemplo 2.3.2.3
AFC 0,7 D16 10 163 15 162 12 161 0 160 7 16 1 13 16 2

44992,4882816
b) Mudana da base 10 para uma base - essa mudana feita com a aplicao de um processo
para a parte inteira e um outro para a parte fracionria.
Para transformar um nmero inteiro na base 10 para base utiliza-se o mtodo das divises

sucessivas, que consiste em dividir o nmero por , a seguir divide-se por o quociente encontrado
e assim o processo repetido at que o ltimo quociente seja igual a 1 . O nmero ser, ento,
formado pela concatenao do ltimo quociente com os restos das divises lidos em sentido inverso
ao que foram obtidos.
Exemplo 2.3.2.4

Exemplo 2.3.2.5

Para transformar um nmero fracionrio na base 10 para a base , utiliza-se o mtodo das
multiplicaes sucessivas, que consiste em:
a) multiplicar o nmero fracionrio por ;

b) deste resultado, a parte inteira ser o primeiro dgito do nmero na base e a parte
fracionria novamente multiplicada por . O processo repetido at que a parte fracionria do
ltimo produto seja igual a zero.
Exemplo 2.3.2.6

Exemplo 2.3.2.7

c) Mudana de uma base para uma base - essa mudana feita transformando o nmero
da base para a base 10 e da base 10 para a base .
Exemplo 2.3.2.8
Transforme para a base 8 o nmero 43125 .
1 Etapa: Vamos transformar 43125 para a base decimal.
43125 4 53 3 52 1 51 2 50 500 75 5 2 58210

2 Etapa: Vamos transformar 58210 para a base 8.

Lendo o nmero de trs para frente, e considerando, apenas o ltimo quociente e os demais
restos, temos: 43125 58210 11068 .
2.4 ARMAZENAMENTO EM MQUINA
As mquinas (calculadoras digitais e computadores) armazenam e operam os nmeros em uma
notao especfica, denominada notao de ponto flutuante. A IEEE (Institute for Electral and
Eletronic Engineers) publicou normas de pontos flutuantes binrios que atualmente seguida pela
maioria dos fabricantes de computadores. Duas categorias foram intituladas: as de preciso simples
que trabalham com 32-bits e as de preciso dupla que trabalham com 64-bits.
2.4.1 Normas de preciso simples
Nesse sistema um nmero representado por uma seqncia de 32 bits binrios. O bit mais a
esquerda usado para indicar o sinal da mantissa (zero para positivo e 1 para negativo). Os oito bits
seguintes representam o expoente e os 23 restantes a mantissa.

Em ponto flutuante de base 2 o primeiro bit sempre 1 assim, todo nmero em ponto flutuante
de base 2 da forma
e
0,1a2 a3 ...at 2e
que equivalente a 1, a2 a3 ...at 2
e que corresponde ao nmero decimal
1 20 a2 21 a3 22 ... at 2t 1 2c 127
A caracterstica c a representao decimal de e 1 e s a parte da mantissa f a2 a3 ...at
representada na mquina como mostra o quadro abaixo:
sinal da
mantissa (1 bit)

mantissa (23 bits)

expoente (8 bits)

Portanto, um nmero de mquina dado pelo quadro acima corresponde ao nmero


1 s 1, f 2 2c 127
ou
s
0
1
1 1 2 a2 2 a3 22 ... a24 223 2c 127

Exemplo 2.4.1.1
Considere o nmero na mquina representado por:
1

10000100

01101110100000000000000

s 1
1, f 2 1,01101110100000000000000
1 20 1 22 1 23 1 25 1 26 1 27 1 29
1,431640625
c 100001002
1 27 1 22
132
O nmero de mquina corresponde ao nmero
11 1,431640625 2132127 45,8125 .

2.4.2 Normas de preciso dupla


O sistema de preciso dupla definido pela IEE anlogo ao de preciso simples, porm esse
sistema representado por uma seqncia de 64 bits binrios. O bit mais a esquerda usado para
indicar o sinal da mantissa (zero para positivo e 1 para negativo). Os onze bits seguintes representam o
expoente e os 52 restantes a mantissa, como mostra o quadro abaixo:
sinal da
mantissa (1 bit)
expoente (11 bits)

mantissa (52 bits)

Observe que nesse sistema, um nmero de mquina dado pelo quadro acima corresponde ao
nmero
1 s 1, f 2 2c 1023
ou
s
0
1
1 1 2 a2 2 a3 22 ... a53 252 2c 1023

2.4.3 Normas de preciso de k-bits


A ideia usada para preciso simples e dupla pode ser estendida para um caso geral de k-bits.
Alm de considerarmos k-bits, iremos considerar uma base qualquer.
e
Se 0, a1a2 ...at um nmero em ponto flutuante de base , sua representao no sistema kbits dada pelo quadro abaixo:

sinal da mantissa (1 bit)


mantissa (t bits)
expoente (n bits)

Observe que nesse sistema a1 deve ser considerado, pois a base no necessariamente 2. Alm
disso, precisamos conhecer n e t , isto , a quantidade de bits do expoente e da mantissa,
respectivamente.
Estendendo a ideia usada na formao da preciso simples e dupla para a preciso de k-bits,
podemos encontrar o nmero decimal correspondente ao nmero de mquina do quadro acima pela
expresso
1 s 0, f c
Onde:
c = a caracterstica, isto , a representao decimal do expoente e
= , em base 10, a parte inteira da metade do maior expoente representvel na mquina, ou
1 0 1 1 ... 1 n 1

2
seja,
Os expoentes representveis em uma mquina de preciso k-bits esto no intervalo , . Se a
mquina tenta armazenar um expoente menor que ou maior que , acontece uma sobrecarga de
memria denominada, respectivamente, underflow e overflow.
Exemplo 2.4.3.1
Considere um sistema de 12-bits, sendo a quantidade de bits do expoente igual a 4 e da mantissa
igual a 7, com 3 . Encontre o nmero que possui representao em mquina igual a:
0

2101

s0
n4
t7
0, f 0,10220013

1022001

1 31 2 33 2 34 1 37
0,432556012
c 21013
2 33 1 32 1 30
64
2 30 2 31 2 32 2 33 80

40
2
2
O nmero de mquina corresponde ao nmero
1 0 0,432556012 364 40 1,22166594 1011 .

2.5 ERROS
Ao efetuarmos operaes matemticas, mesmo que com nmeros naturais ou inteiros, devemos
considerar que nem sempre obtemos resultados exatos, assim temos de interpretar nmeros que so
1

finitos, mas que possuem representao infinita. Por exemplo, a diviso de 1 por 3 3 finita (est
entre 0 e 1), todavia possui representao no conjunto do nmeros reais com infinitas casas decimais
(0,3333...). Alm disso, lidamos tambm com nmeros que no podem ser expressos como a diviso
de dois nmeros inteiros, so os chamados nmeros irracionais, o que acarreta em chegarmos a apenas
uma representao aproximada do nmero em questo.
Com a evoluo das tecnologias para fins computacionais, os clculos complexos ficaram a
cargo de mquinas que esto sendo sempre aperfeioadas a fim de aumentar seus recursos. As
mquinas operam diversos clculos, dos mais simples aos mais complexos, porm por mais complexas
que sejam, trabalham com um nmero finito de recursos, o que no suficiente quando lidamos com
nmeros de infinitos dgitos.
Assim, qualquer clculo, seja realizado por mos humanas ou por mquinas, que envolva
nmeros que no possam ser expressos por um nmero finito de dgitos, no fornecer como resultado
um valor exato, mas sim um valor aproximado; e, quanto maior o nmero de dgitos utilizados, maior
ser a preciso obtida.
por isso que precisamos aprender a lidar com os erros, ou melhor, com a margem de erro.
Vejamos dois exemplos
Exemplo 1: A primeira grande crise matemtica de que se tem conhecimento foi quando os
pitagricos se depararam com o problema da diagonal de um quadrado. Sabemos que a diagonal de
um quadrado de lado L qualquer calculada pela expresso L 2 .
O nmero irracional 2 um nmero que no pode ser representado, em sua forma decimal,
com um nmero finito de dgitos. Assim, qualquer operao que o envolva estar sujeita a
aproximaes para sua representao, como por exemplo:
1,4142 ou 1,4142136 ou ainda 1,4142135623730950488016887242097.
2

Por exemplo, na trigonometria, o arco de valor 4 possui seno igual a 2 , o que nos permite
infinitas representaes, remetendo-nos a resultados prximos do exato, mas que no so
verdadeiramente exatos:
2
0,7
2
;
2
0,7071
2
;
2
0,7071067811865
2
.

Exemplo 2: A rea A de uma circunferncia, de raio r , obtida atravs do clculo da frmula


A r 2 . Neste caso, para uma circunferncia de raio igual a 10m poderemos obter como rea:
A 314m 2 ;

A 314,1592653m 2 ;
A 314,159265358979323846m 2 .
Como um nmero irracional no teremos um valor exato para o clculo da rea, mas sim
valores aproximados. No primeiro clculo utilizamos 3,14 (trs algarismos significativos para ) e no
segundo clculo, utilizamos 3,141592653 (dez algarismos significativos) e no terceiro
3,1415926535897932384 (vinte algarismos significativos).
Nenhum dos resultados est incorreto, porm o terceiro est mais preciso que o segundo, por sua
vez est mais preciso que o primeiro, assim quanto maior o nmero de dgitos utilizados nos clculos,
maior a preciso do nmero, ou seja, mais prximo estamos da representao real do nmero.
As diferenas entre resultados para uma mesma operao podem ser consequncia da preciso
dos dados de entrada da operao (como nos casos ilustrados acima), ou ainda da forma como estes
nmeros so representados nos computadores ou calculadoras, pois devemos levar tambm em
considerao que estes trabalham com o sistema de representao binrio. Assim, ao inserirmos um
nmero no computador, normalmente o representamos na base decimal, este o converte para binrio,
realiza operaes matemticas nessa base e converte o resultado novamente para a base decimal para
que possamos observ-lo.
Por isso ao analisarmos um resultado, devemos levar em considerao que este resultado
limitado em funo dos nmeros de dgitos que a mquina dispe para trabalhar e tambm na
converso, pois podemos ter alguns desvios do resultado real, j que um nmero possui uma
representao finita decimal e pode no ter representao finita no sistema binrio ou vice-versa.
Nesse caso, a mquina far aproximaes do nmero, o que implica avaliarmos a preciso do
resultado.
2.5.1 Arredondamento e Truncamento
Arredondamento o processo mediante o qual se eliminam algarismos de menor significncia a
um nmero real.
As regras de arredondamento aplicam-se aos algarismos decimais situados na posio seguinte
ao nmero de algarismos decimais que se queira transformar, ou seja, se tivermos um nmero de 3
algarismos decimais e quisermos arredondar para 2, aplicar-se-o estas regras de arredondamento:
a) Se o algarismo decimal seguinte for menor que 5, o anterior no se modifica.
b) Se o algarismo decimal seguinte for maior que 5, o anterior incrementa-se em uma unidade.
c) Se o algarismo decimal seguinte for igual a 5:
- se o algarismo a ser conservado for mpar, soma-se uma unidade ao algarismo a ser
conservado e retira-se os posteriores;
- se o algarismo a ser conservado for par e ao algarismo 5 subsequente seguir-se pelo menos
um algarismo diferente de zero, soma-se uma unidade ao algarismo a ser conservado e retira-se os
posteriores;
- se o algarismo a ser conservado for par e ao algarismo 5 subsequente seguir-se somente
algarismos zero, no haver modificao, somente retira-se os algarismos posteriores.
Exemplo 2.5.1.1
Arredondar a 2 algarismos decimais:

No processo de truncamento de um nmero simplesmente consideramos os dgitos contidos pelo


nmero de algarismos significativos e desprezamos os demais dgitos. Ao truncarmos o nmero
0,12784 103 teremos 0,127 103 .
2.5.2 Definies de erro
Os erros numricos so causados pelo uso de aproximaes para representar operaes e
quantidades matemticas exatas. Para tais erros, a relao entre o resultado exato, ou verdadeiro, e a
aproximao pode ser formulada como
Et valor verdadeiro aproximao
onde Et usado para designar o valor exato do erro. O erro verdadeiro geralmente expresso como
um valor absoluto e referido como o erro absoluto.
Um defeito dessa definio que ela no leva em conta a ordem de grandeza do valor que est
sendo examinado. Uma forma de considerar o valor das quantidades que esto sendo calculadas
normalizar o erro com o valor verdadeiro, como em
valor verdadeiro aproximao
t
100%
valor verdadeiro

onde t designa o erro relativo percentual verdadeiro (tambm referido como erro relativo).
Nas aplicaes do mundo real, entretanto, no se conhecer a priori a resposta verdadeira. Para
tais situaes, uma alternativa normalizar o erro usando a melhor estimativa disponvel do valor
verdadeiro, isto , a aproximao propriamente dita, como em
aproximao atual aproximao prvia
a
100%
aproximao atual
onde a significa que o erro foi normalizado por um valor aproximado.
Ao se realizar clculos normalmente no h preocupaes com o sinal do erro, mas interesse em
saber se o valor absoluto percentual menor que uma tolerncia percentual pr-especificada s .
Portanto, em geral, til usar o valor absoluto do erro normalizado por um valor aproximado; para
tais casos, os clculos so repetidos at que
a s
.
Essa relao chamada de critrio de parada e se ela for satisfeita, supe-se que o resultado
esteja dentro do nvel aceitvel pr-especificado s .
Tambm conveniente relacionar esses erros ao nmero de algarismos significativos na
aproximao. Segundo Scarborought (1996), se o seguinte critrio for satisfeito, possvel ter certeza
de que o resultado correto at pelo menos n algarismos significativos.

s 0,5 102 n %

Exemplo 2.5.2.1
Em matemtica, as funes geralmente podem ser representadas por sries infinitas. Por
exemplo, a funo exponencial pode ser calculada usando-se
x 2 x3
xn
ex 1 x
...
2 3!
n! .
Portanto, conforme mais termos forem adicionados sequncia, a estimativa se tornar cada vez mais
x
prxima do valor verdadeiro de e . Esta equao chamada de expanso em srie de Maclaurin.
x
0 ,5
Comeando com a verso mais simples, e 1 , some um termo de cada vez para estimar e .
Depois que cada termo for adicionado, calcule o erro verdadeiro e o erro relativo percentual
0,5
aproximado e observe que o valor verdadeiro e 1,648721271 . Adicione termos at que o valor

absoluto do erro estimado aproximado a esteja dentro do critrio de erro pr-especificado s que
garanta trs algarismos significativos.
Inicialmente, calculemos o critrio de erro pr-especificado que garante o resultado correto at
pelo menos trs algarismos significativos:

s 0,5 102 n % para n 3

s 0,5 102 3 % 0,05%

Calculemos agora as estimativas:


x
0,5
1 estimativa: e 1 e 1

valor verdadeiro aproximao


1,648721271 1
100%
100% 39,34693403%
valor verdadeiro
1,648721271

a no tem como ser calculado na 1 estimativa


0,5
x
2 estimativa: e 1 x e 1 0,5 1,5
t

1,648721271 1,5
100% 9,020401043%
1,648721271

aproximao atual aproximao prvia


1,5 1
100%
100% 33,33333333%
aproximao atual
1,5

a s 33,33333333% 0,05%
condio no satisfeita!
2
2
x
0,5
ex 1 x
e 0,5 1 0,5
1,625
2
2
3 estimativa:
t

1,648721271 1,625
100% 1,438767797%
1,648721271

1,625 1,5
100% 7,692307692%
1,625

a s 7,692307692% 0,05%
condio no satisfeita!
2
3
x
x
0,52 0,53
ex 1 x

e 0,5 1 0,5

1,645833333
2 3!
2
3!
4 estimativa:
t

1,648721271 1,645833333
100% 0,175162275%
1,648721271

1,645833333 1,625
100% 1,265822765%
1,645833333

a s 1,265822765% 0,05%
condio no satisfeita!
2
3
4
x
x
x
0,52 0,53 0,54
ex 1 x

e 0,5 1 0,5

1,6484375
2 3! 4!
2
3!
4!
5 estimativa:
t

1,648721271 1,6484375
100% 0,017211583%
1,648721271

1,6484375 1,645833333
100% 0,157977903%
1,6484375

a s 0,157977903% 0,05%
condio no satisfeita!
0,52 0,53 0,54 0,55
x 2 x3 x 4 x5
e0,5 1 0,5

1,648697917

2 3! 4! 5!
2
3!
4!
5!
6 estimativa:
1,648721271 1,648697917
t
100% 0,001416494%
1,648721271
ex 1 x

1,648697917 1,6484375
100% 0,015750011%
1,648697917

a s 0,015750011% 0,05%
condio satisfeita!

Vous aimerez peut-être aussi