Introdução aos
métodos numéricos
Representação Numérica e
Erros
Motivação
Foguete Ariane 5 explode segundos
depois de seu lançamento em 1996
O foguete transportava um satélite
de comunicações
A causa do acidente foi um erro
numérico (overflow) no cálculo da
velocidade horizontal do foguete
Motivação

Qual foi o prejuízo?

500 milhões de Dólares (preço do satélite)

7 bilhões de Dólares foram gastos no
projeto do foguete
Soluções numéricas para
problemas físicos
Problema Físico
Modelagem
Modelo
Matemático
Resolução
Solução
Erros na Modelagem

Suponha uma queda livre de um prédio
d = d0 +vot +1/2at2
Suponha os dados:
d= 0 + 0x3 + 1/2x9.8x9
d = 44,1
 Este resultado é coerente?

Representação Numérica

Computadores possuem memória finita

O conjunto de números que os
computadores podem representar é finito
Erros na Resolução

Fortemente influenciados pela precisão

Relacionados à Representação numérica

Erro do Foguete (máquinas com precisão
diferente com mesmo software)
Representação numérica

Cada computador possui uma precisão
numérica diferente

Esta precisão é dependente do hardware,
sistema operacional, compilador, etc
Representação Numérica

O sistema convencional é o de base 10
(dígitos de 0 a 9)

Computadores modernos usam a base
numérica 2 (dígitos 0 e 1)
Mudança de Bases

510 = 1012
5/2 = 2 resto 1
 2/2 = 1 resto 0


510 = 1012
Mudança de Base

5,25 = 5 + 0,25

5 sabemos como resolver

Mas e a parte decimal?
Mudança de base

Método das multiplicações sucessivas

0,25 x 2 = 0,5

0,5 x 2 = 1,0

Logo 0,2510 = 0,012
Mudança de Base
Conversão de base 2 para base 10
 1002 = 410
 1002 = 1x22 + 0x21 + 0x20 =4+0+0 = 410
 1012 = 1x22 + 0x21 + 1x20 =4+0+1 = 510
 100,12 = 1x22 + 0x21 + 0x20+1x2-1 =
 = 4+0+0+0,5 = 4,510

Representação Numérica

Computadores usam o Sistema de Ponto
Flutuante Normalizado
±0,c1c2c3…cn x be
cn – digito entre 0 e b-1 (mantissa)
 b – número natural (base)
 e – número Inteiro (expoente)

Representação Numérica
Devido à questão da memória finita, os
sistemas de ponto flutuante normalizados
possuem parâmetros bem definidos
durante o projeto
 Número de caracteres da mantissa (n)
 Valor da base (b)
 Valor e1 menor e e2 maior expoentes do
sistema
 e1 < 0 e e2 > 0

Representação Numérica

Menor número positivo: x1=+0,10...0xbe1

Maior número: x2 = +0,c1c2...cnxbe2

Quantidade de números:
2x(b-1)x b(n-1)x (e2-e1+1)+1
Representação Numérica
-x2
-x1
x1
x2
Representação Numérica
underflow
overflow
-x2
-x1
x1
x2
overflow
Representação Binárias
0
sinal
1
1
1
0
0
mantissa
0
0
0
0
0
0
0
0
1
0
Sinal do expoente
expoente
Representação Binárias
0
sinal
1
1
1
0
0
mantissa
0
0
0
0
0
0
0
0
1
0
Sinal do expoente
expoente
Sinal
0 = positivo,
1 = negativo
Representação Numérica

A distribuição dos números na reta real
não é uniforme

Há concentração de números em trechos
da reta
Representação
Numérica
B=2, n=3, e =-1 e e =2
1
2
Representação Numérica

Resultados de operações aritméticas em
sistemas de ponto flutuante nem sempre
estão corretos
Representação
Numérica
B=2, n=3, e =-1 e e =2
1
2
Representação Numérica

Propriedades aritméticas nem sempre são
verificadas

Suponha x1=0,3491x104, x2=0,2345x100

(x2+x1)-x1 = x2 + (x1-x1)

A propriedade só se mantém com maquinas de
precisão maior do que 7 digitos com
truncamento
Representação Numérica
Para somar x1 e x2 precisamos coloca-los
na mesma base decimal
 x1=0,3491x104
 x2=0,2345x100=0,00002345x104
 Máquinas com precisão 7 ou menos não
são capazes de representar x2

Representação Numérica
(x2+x1)-x1 =(0,0000234x104+0,3491x104) 0,3491x104 = (0,3491234x104) 0,3491x104 = (0,0000234x104) = 0,234x10
 x2+(x1-x1)=0,2345x10+(0,3491x104 0,3491x104) = 0,2345x10 + 0 = 0,2345x10

Tipos de Erro por Precisão

Arredondamento - para Cima

Truncamento – para baixo

Para o Número de máquina mais próximo
Erro por Truncamento

São erros decorridos de processos que
deveriam ser infinitos

Calculo de séries infinitas

Sen(x) =x - x3/3! + x5/5! – x7/7!...
Erro por truncamento

Dizimas periódicas binárias

0,110 = 0,0001100110011...2

Calculadora do Windows - sqrt(2)
Erros

Sendo x o valor real e x’ o valor
representado

Absoluto: |x – x’|

Relativos: |x - x’|/ |x’|
Revisão

Consequências dos erros

Sistema de Ponto Flutuante

Representação numérica em computadores

Erros
Conclusão

Erros devem ser evitados quando possível

Quando não for possível evita-los:
 Não
devem ser ignorados
 Devem ser reduzidos
Download

Aula 1 - Instituto de Computação