Introdução aos métodos numéricos 271/2017-II/slides/ERROS - MAT 27… · Representação...

Preview:

Citation preview

CÁLCULO NUMÉRICO

Cálculo NuméricoConjunto de métodos

utilizados para a obtençãode resultados de

problemas matemáticosatravés de aproximações

Problema Físico

Modelo Matemático SoluçãoProblema

FísicoModelo

Matemático Solução

Cálculo Numérico

Conjunto de métodosutilizados para resolverPROBLEMAS FÍSICOS

através de aproximações

Problema Físico

Modelo Matemático Solução

Modelagem Resolução

Problema Físico

Modelo Matemático Solução

PROBLEMA FÍSICO

MODELO MATEMÁTICO

SOLUÇÃO

Cálculo Numérico

Conjunto de métodosutilizados para resolverPROBLEMAS FÍSICOS

através de aproximações

Problema Físico

Modelo Matemático Solução

Modelagem

Resolução

ConversãoArredondamentoTruncamento...

Problema Físico

Modelo Matemático Solução

PROBLEMA FÍSICO

MODELO MATEMÁTICO

SOLUÇÃO

ERROS

Erros na Resolução

Fortemente influenciados pela precisão

Relacionados à Representação numérica

Máquinas com precisão diferente com mesmo software

Avaliando o Erro

Sendo x a solução real(exata) de um dado problema e x’ o valor aproximado desta solução, obtido por um dado método mumérico, temos:

Erro absoluto: |x – x’|.

Erro relativo: |x - x’|/ |x|.

Representação Numérica

Computadores possuem memória finita. O conjunto de números que os

computadores podem representar é finito. 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 Base

Divisões sucessivas (5)10 = (?)2

5/2 = 2 resto 1 2/2 = 1 resto 0

Logo (5)10 = (101)2

5 22 21

10

Mudança de Base

(17)10 = (?)2

17/2 = 8 resto 1 8/2 = 4 resto 0 4/2 = 2 resto 0 2/2 = 1 resto 0 Logo (17)10 = (10001)2

17 28 210 2

204

210

Mudança de Base

5,25 = 5 + 0,25

5 sabemos como resolver

Mas e a parte decimal?

Mudança de base

Multiplicações sucessivas

0,25 x 2 = 0,5 0,5 x 2 = 1,0

Logo (0,25)10 = (0,01)2

E (5,25)10 = (101,01)2

0,25x 2

0,50x 2

1,00

Mudança de Base

Conversão de base 2 para base 10:

(100)2 = 1x22 + 0x21 + 0x20 =4+0+0 = (4)10

(101)2 = 1x22 + 0x21 + 1x20 =4+0+1 = (5)10

(100,1)2 = 1x22 + 0x21 + 0x20+1x2-1 =

= 4+0+0+0,5 = (4,5)10

Representação Numérica

Computadores usam o Sistema de Ponto Flutuante Normalizado

±0,c1c2c3…cn x be

cn – dígitos entre 0 e b-1 (mantissa). c1 diferente de zero. 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) Valores e1 e e2 : expoentes menor e maior,

respectivamente, do sistema e1 < 0 e e2 > 0

SPF(b,n,e1,e2)

Representação Numérica

Menor número positivo: x1=(0,10...0)xbe1

Maior número: x2 = (0,[b-1][b-1]...[b-1])xbe2

Quantidade de números representáveis:

2x(b-1)xb(n-1)x(e2-e1+1)+1

NSPF(b,n,e1,e2)

Representação Numérica

x1 x2-x1-x2

Representação Numérica

x1 x2-x1-x2 overflowoverflow

underflow

Representação Binária

0 1 1 1 0 0 0 0 0 0 0 0 0 0 1 0

sinal mantissa Sinal do expoenteexpoente

Representação Binária

0 1 1 1 0 0 0 0 0 0 0 0 0 0 1 0

sinal mantissa Sinal do expoenteexpoente

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éricaConsiderando os seguintes parâmetros, por exemplo: b=2, n=3, e1=-1 e e2=2.

Representação Numérica

Resultados de operações aritméticas em sistemas de ponto flutuante nem sempre estão corretos

Representação NuméricaAinda com os parâmetros b=2, n=3, e1=-1 e e2=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 máquinas de precisão maior do que 7 dígitos com truncamento

Representação Numérica

Para somar x1 e x2 precisamos colocá-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

(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

Representação Numérica

Tipos de Erro de Precisão

Arredondamento.

Truncamento.

Para o Número de máquina mais próximo.

Erros de arredondamento

Os erros de arredondamento dependem de como os números são representados na máquina. A representação depende da base em que os números são escritos e da quantidade máxima de dígitos usados nessa representação. Logo, os cálculos envolvendo números que não podem ser escritos de modo finito na base escolhida geram erros.

Erros de arredondamento

Arredondar um número na casa é

desconsiderar as casas , j = 1, 2, 3, ..., de

tal forma que:

seja a última casa se .

+ 1 seja a última casa se .

id

i jd +

id

id

1 5id + <

1 5id + ³

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,1)10 = (0,0001100110011...)2

Calculadora do Windows – sqrt(2).

Conclusão:

Erros devem ser evitados quando possível.

Não sendo possível evitá-los:Não devem ser ignorados,Devem ser minimizados.