erros em processamento numéricos · •erro de absoluto •erro relativo •erro de truncamento...

37
Cálculo Numérico Erros em processamento Numéricos

Upload: phamlien

Post on 24-Dec-2018

244 views

Category:

Documents


0 download

TRANSCRIPT

Cálculo Numérico

Erros em processamento Numéricos

Agenda

• Introdução a Erros

• Mudança de Base

• Erros de representação

• Erro de arredondamento

• Erro de absoluto

• Erro relativo

• Erro de truncamento

• Propagação do Erro

prof. Daniel Oliveira

Erros

• Fase da modelagem do modelo matemático

• Fase de resolução do modelo matemático

– Modelo exato (erros inerentes dos equipamentos de cálculo)

– Modelo aproximado (além dos erros dos equipamentos, erro da aproximação do modelo)

prof. Daniel Oliveira

Erros

prof. Daniel Oliveira

Problema Real

Erros

Fase de Modelagem

Modelo Matemático

Erros

Fase de Resolução

Solução para o modelo

matemático

Mudança de base

• Mudança de base

– Representação interna de números pelos computadores

– Mudança de base pode gerar erros devido a limitação da representação numérica do equipamento

prof. Daniel Oliveira

Mudança de base

• Dados um número real N é sempre possível representá-lo em qualquer base b:

prof. Daniel Oliveira

mi

b i

i n

N a b

{0,1,2,3,..., ( 1)},

,

ia b

n m I

Mudança de base

• Base binária

prof. Daniel Oliveira

2 , {0,1}m

i

b i i

i n

N a a

Mudança de base

• Exemplo / Base Binária

prof. Daniel Oliveira

0 1 2 3

2 10

2 1 0 1 2

2 10

(1011) 1 2 1 2 0 2 1 2 (11)

(111.01) 1 2 0 2 1 2 1 2 1 2 (7,25)

Mudança de base

• Exemplo / Base Decimal

prof. Daniel Oliveira

0 1 2

10

2 1 0 1 2

2

(231) 1 10 3 10 2 10

(231.35) 5 10 3 10 1 10 3 10 2 10

Mudança de base

• Conversão de Decimal para binário

– Dividir o número na base decimal sucessivamente por 2

– Armazenar o algoritmo de resto (r), até que o quociente da divisão seja igual a 1

– O binário é formado pelo quociente 1 e pelos coeficientes do resto da divisão, a partir do mais significativo (rn-1) para o menos significativo (rn)

prof. Daniel Oliveira

Mudança de base

• Exemplo

prof. Daniel Oliveira

0 1 2 3 4

10 2(25) 1 2 0 2 0 2 1 2 1 2 (11001)

25/2 = 12 resto = 1

12/2 = 06 resto = 0

06/2 = 03 resto = 0

03/2 = 01 resto = 1

1/2 = 00 resto = 1

11001

Mudança de base

• Exemplo

prof. Daniel Oliveira

Qual seria a representação do número 11 em binário ?

Mudança de base

• Base decimal fracionário para binário

a) Multiplica-se o número fracionário por 2

b) Do resultado do passo a, a parte inteira é o primeiro digito binário

c) Do resultado do passo b, a parte fracionária é multiplicada novamente por 2

d) O processo continua até que a parte fracionária seja nula

prof. Daniel Oliveira

Mudança de base

• Exemplo

prof. Daniel Oliveira

1 2 3 4

10 2 103(0.1875) (0.0011) 0 2 0 2 1 2 1 2 ( )16

0.1875 x 2 = 0.375 → Parte Inteira = 0 e parte fracionária = 0.375

0.375 x 2 = 0.750 → Parte Inteira = 0 e parte fracionária = 0.75

0.75 x 2 = 1.5 → Parte Inteira = 1 e parte fracionária = 0.5

0.5 x 2 = 1.0 → Parte Inteira = 1 e parte fracionária = 0

0.0011

Mudança de base

• Exemplo

prof. Daniel Oliveira

10 10 10 2 2 2(13.25) (13) (0.25) (1101) (0.01) (1101.01)

10(0.2) 10 2(0.2) (0.001100110011...)

0.2 é uma dizima periódica de período (0.0011).Este número não pode ser representado de formaexata em binário. Apenas é possível umarepresentação aproximada, ou seja, temos ERRO

Erros de representação

• Os computadores armazenam os números com uma quantidade limitada de algarismos

• Os números são armazenados com um indicador de sinal e um número fixo e limitado de dígitos significativos.

prof. Daniel Oliveira

Erros de representaçãoSistema de Ponto Flutuante Normalizado

• Número nesse sistema é caracterizado por:

– Um número é caracterizado por um base b

– Um número de dígitos significativos n

– Um expoente exp

prof. Daniel Oliveira

expn m b

m é a mantissa do número, b ≥ 2 é base e exp é o expoente da base

Erros de representaçãoSistema de Ponto Flutuante Normalizado

• Condições para este sistema:

– m = ±0.d1,d2,d3,..,dn – n é o número máximo de dígitos da mantissa.

– d1,d2,d3,..,dn – são os dígitos significativos da mantissa

– 1≤d1 ≤(b-1)

– 1≤di ≤(b-1); i=2,3,...,n

– expmin ≤ exp ≤ expmax

prof. Daniel Oliveira

Erros de representaçãoSistema de Ponto Flutuante Normalizado

• A união de todos os números de pontos flutuante, juntamente com a representação do zero constitui o sistema de ponto flutuante normalizado – SPF(b,n,expmin,expmax)

• Representação do zero:

prof. Daniel Oliveira

minexp: 0.000...0zero b

N vezes

Erros de representaçãoSistema de Ponto Flutuante Normalizado

• O menor número positivo representado

prof. Daniel Oliveira

minexp(0.100...0)menor bN-1 vezes

Erros de representaçãoSistema de Ponto Flutuante Normalizado

• O número máximo de mantissas possíveis:

prof. Daniel Oliveira

1( 1) nmantissas b b

Erros de representaçãoSistema de Ponto Flutuante Normalizado

• O número máximo de expoentes possíveis:

prof. Daniel Oliveira

max minexp exp exp 1possiveis

Erros de representaçãoSistema de Ponto Flutuante Normalizado

• O número de elementos positivos representáveis:

prof. Daniel Oliveira

exppossiveisNR mantissas

Erros de representaçãoSistema de Ponto Flutuante Normalizado

• O número de elementos representáveis:

prof. Daniel Oliveira

2 1tNR NR

Erros de representaçãoSistema de Ponto Flutuante Normalizado

• Exemplo – seja o sistema de ponto flutuante SPF(3,2,-1,2):

prof. Daniel Oliveira

1 10.10 39

Menor inteiro representado

20.22 3 8 Maior inteiro representado

2 1(3 1)3 6 Máximo de mantissas positivas possíveis

2 ( 1) 1 4 Máximo de expoentes possíveis

6 4 24 Número máximo de reais positivos representados

Erros de representaçãoSistema de Ponto Flutuante Normalizado

• Se x pertence a um SPF então (-x) também pertencerá

• Considerando o zero é tem sua própria representação em um SPF, então:

prof. Daniel Oliveira

1 1; [ ,8] [ 8, ] {0}

9 9R x x

Qualquer número real que não pertence a R não poderá ser representado nesse SPF

Erros de representaçãoSistema de Ponto Flutuante Normalizado

• Erro de underflow ocorre quando tentamos representar um número muito pequeno para o SPF

• Erro de overflow ocorre quando tentamos representar um número muito grande para o SPF

prof. Daniel Oliveira

1 1; [ ,0] [0, ]

9 9Under x x

; [ , 8] [8, ]Over x x

Erro de arredondamento

• Quando não for possível representar de forma exata um número em um SPF o mesmo é aproximado (nra)

• Esta aproximação é o arredondamento do real nr

prof. Daniel Oliveira

Erro de arredondamento

• Um número real é arredondado na posição k se todos os dígitos de ordem maior do k do forem descartados de acordo com os critérios:

– O dígito k é somado com um se o de ordem (k+1) for maior que a metade da base. Caso contrário, o número nr é representado com os k dígitos iniciais.

– Se o dígito de ordem (k+1) for igual a metade da base e o de ordem k é par, então o número nr é representado com k dígitos, e se o dígito de ordem k é impar, então o de ordem k é acrescido de uma unidade.

– O arredondamento por corte considera que, para obter um número com k dígitos, simplesmente trunca-se na posição k. prof. Daniel Oliveira

Erro absoluto

• Definido como:

prof. Daniel Oliveira

abs ex aproxE a a

Sendo aex o valor exato da grandeza e aaprox o valor aproximado da grandeza.

Erro absoluto

• O valor exato da grandeza muitas vezes é desconhecidos

• Assim, trabalha-se com limitante para o erro :

prof. Daniel Oliveira

abs ex aprox

ex aprox

E a a

a a

Erro Relativo

• Definido como:

prof. Daniel Oliveira

ex aprox

rel

ex ex

a aEE

a a

Sendo aex o valor exato da grandeza e aaprox o valor aproximado da grandeza.

Erro relativo

• Como na maioria das vezes não temos o valor exato, utilizamos um limitante superior para o erro relativo

prof. Daniel Oliveira

aproxa

Aonde δ é um limitante conhecido

Erro relativo

• No erro absoluto não é levado em conta a grandeza dos números envolvidos

• No erro relativo a grandeza do número é considerada

prof. Daniel Oliveira

Erro relativo

• Qual valor é mais preciso?

– Seja o valor exato aex = 2345.713 e o valor aproximado aaprox = 2345.000 então temos:Eabs = 0.713 e Erel = 0.00030396

– Seja o valor exato aex = 1.713 e o valor aproximado aaprox = 1.000 então temos:Eabs = 0.713 e Erel = 0.416229

prof. Daniel Oliveira

Erro de truncamento

• Como foi visto, os sistema computacionais tem uma limitação para a representação de números.

• Se considerarmos apenas um número finito de termos, dizemos que estamos cometendo um erro de truncamento

prof. Daniel Oliveira

Erro de truncamento

• Seja a representação de ex:

prof. Daniel Oliveira

2 3

12! 3! !

nx x x x

e xn

Supondo que podemos representar apenas os 4 primeiros termos:

2 33 2

4

11 ( 3 6 6)

2! 3! 6

!

x

n

n

x xe x x x x

xerro

n