erros visão geral - ufsj.edu.br · À media que n aumenta, mais o valor da série se aproxima do...

Post on 16-Nov-2018

215 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Prof. Erivelton Geraldo Nepomuceno

2017

Erros – Visão Geral

PROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA ELÉTRICA

UNIVERSIDADE DE JOÃO DEL-REI

PRÓ-REITORIA DE PESQUISA

CENTRO FEDERAL DE EDUCAÇÃO

TECNOLÓGICA DE MINAS GERAIS

DIRETORIA DE PESQUISA E PÓS-GRADUAÇÃO

étodos

uméricos

Erros – Visão Geral

Durante as etapas de solução de um problema, surgem várias fontes de erros que podem

alterar profundamente os resultados obtidos. É de importância fundamental conhecer as causas

desses erros para minimizar as suas consequências.

Erros – Visão Geral

1. Fontes de erros.2. Erros absolutos e relativos.3. Erros de arredondamento e truncamento nas

operações aritméticas de ponto flutuante.

Definição

Erro é a diferença entre o valor real e o valor aproximado (calculado, medido, estimado, etc.) de

uma grandeza ou parâmetro.

A introdução de erros num determinado processo decálculo pode ter várias causas. Deve-se analisar quais sãoessas causas e estudar mecanismos que permitamdeterminar limites superiores para os erros obtidos nofinal do processo de cálculo.

Fontes de Erros

▪ Erros de truncamento ou discretização São, por definição, os erros que surgem quando se passa de

um processo infinito para um processo finito ou quando sesubstitui um processo contínuo por um discreto. Porexemplo, f(x) = sen (x)

À media que n aumenta, mais o valor da série se aproxima dovalor real.

É importante lembrar que os computadores realizamsomente as 4 operações básicas.

4

0...,50401206!12

1)sin(0

75312

xxx

xn

xx

nn

Fontes de Erros

▪ Erro na modelagem Modelagem incorreta na qual a expressão matemática não

reflete perfeitamente o fenômeno físico.

Deve-se verificar o quanto os resultados finais sãosensíveis às alterações dos dados fornecidos. Mudançasgrandes devido a pequenas alterações nos dados sãosintomas de malcondicionamento do modelo.

▪ Simplificações (Idealizações) Desconsiderar ou desprezar um ou mais parâmetros ou

termos para simplificação do modelo.

Exemplos: Em um modelo que deseja saber o tempo de quedade um objeto, desconsiderar a força de resistência do ar.

▪ Erro nos dados Implica em erros nos parâmetros dos modelos (pouca

exatidão), ocasionando erros na saída.

Fontes de Erros

▪ Erro grosseiro Erros na elaboração do algoritmo (implementação e

digitação).

Executar o programa, cujo resultado seja conhecido, ajuda aremover erros, mas demonstra, apenas, que o programa estácorreto para aquela massa de dados.

▪ Erro de arredondamento Arredondamento (supressão de uma ou mais casas decimais)

de dados e constantes.

Número decimal qualquer não pode ser representadoexatamente em um computador, por que ele tem que serconvertido para a base 2 e armazenado em um número finitode bits.

Medida do Erro

O erro cometido no cálculo de um resultado pode sermedido de várias maneiras, dentre as quais se destacam:

nx xxEA x

xx

x

EAER nx

x

Erro Absoluto Erro Relativo

Sendo o valor obtido por uma técnica numérica xn e o real x.

1. Na pratica para os valores dos erros absoluto e relativo usa-se o módulopois, para a maioria dos problemas, não e relevante saber se o erro foicometido por falta ou por excesso.

2. O erro relativo, é adimensional e muitas vezes representado sob a formade percentagem. Note-se também que ele dá uma maior informaçãoquanto a precisão da aproximação que o erro absoluto.

Aritmética de Ponto FlutuanteNa representação dos números em um sistema computacional:

Existe um modo de armazená-los em uma forma padronizadapara que as operações possam ser efetuadas de maneira maisorganizada, dentro da estrutura de funcionamento da máquina.

Uma vez que a capacidade de armazenar dados de qualquerequipamento é limitada, isso faz com que calculadoras ecomputadores possuam um número finito de dígitos pararepresentar os números.

O sistema mais utilizado pelos computadores modernos é ochamado sistema de aritmética de ponto flutuante (APF), tantopara a representação dos números quanto para a execução dasoperações.

Aritmética de Ponto Flutuante▪ Representação com ponto fixo: 12,34.

▪ Com ponto flutuante: 0,1234x102.

▪ Forma geral de representação de um número:

di's são os dígitos da parte fracionária, tais que 0 di B -1; d1

0, B é o valor da base, p é o número de dígitos e e é umexpoente inteiro.

▪ Um número de ponto flutuante tem três partes: o sinal, a partefracionária chamada de significando ou mantissa e o expoente.

▪ As três partes tem um comprimento total fixo que depende docomputador e do tipo de número: precisão simples, dupla ouestendida.

Dado um número N, sua representação em APF é feita por truncamento ouarredondamento. Este número não pode ser representado neste sistema se o expoenteestiver fora dos limites. Nestes casos, os erros são chamados de undeflow e overflow .

Aritmética de Ponto Flutuante

▪ Computador hipotético

▪ Computador hipotético com dois dígitos (p = 2), base B = 2 eexpoente na faixa -1 e 2.

▪ Número é normalizado: d1 0

▪ Considerando a conversão de binário para decimal

▪ Únicos números positivos representáveis:

Aritmética de Ponto Flutuante

▪ Números discretos▪ O zero é representado de uma forma especial: todos os

dígitos di do significando e do expoente são nulos.

▪ Os números de ponto flutuante são discretos e não contínuoscomo um número real definido na matemática.

▪ O conceito de sempre existir um número real entre doisnúmeros reais quaisquer não é válido para os números deponto flutuante. A falha deste conceito tem consequênciadesastrosa, veja:

Os dois números são representados igualmentecomo :0.102x20. Tanto 0,610

quanto 0,710 são vistos como 0,510 pelo computador.Esta e uma grande causa de erro de arredondamentonos processos numéricos.

Aritmética de Ponto Flutuante

▪ Formato de ponto flutuante▪ A forma de representação de um número de ponto flutuante

depende do fabricante do computador.▪ Um mesmo programa implementado em computadores que

utilizam formatos diferentes podem fornecer resultadosdiferentes.

▪ Formato proposto pelo IEEE (Institute of Electrical andElectronics Engineers):

overflow e undeflow.

Assim, cuidado com a precisão utilizada na definição das variáveis !

Aritmética de Ponto Flutuante

▪ Precisão das operações numéricas

▪ Seja o computador hipotético com dois dígitos (p = 2), base B= 10, e expoente na faixa -5 e 5: .d1d2 x 10e.

▪ Quando dois números são somados ou subtraí-dos, os dígitosdo número de expoente menor devem ser deslocados de modoa alinhar as casas decimais.

▪ O resultado é arredondado para dois dígitos para caber namantissa de tamanho p = 2.

▪ O expoente é ajustado para normalizar a mantissa (d1 0).

Aritmética de Ponto Flutuante

▪ Exemplo: somar 4,32 e 0,064

▪ Os números são armazenados no formato especificado.▪ As casas decimais são alinhadas.▪ A operação de adição é efetuada.▪ O resultado é arrendondado para dois dígitos

▪ O resultado da adição foi 4,4 em vez de 4,384.

Aritmética de Ponto Flutuante

▪ Exemplo: subtrair 371 de 372

▪ Os números são armazenados no formato especificado.▪ Resulta em um mesmo valor.▪ A operação de subtração é efetuada.▪ O resultado é convertido para zero

▪ A subtração deu 0 em vez de 1.▪ A perda de precisão quando dois números aproximadamente

iguais são subtraídos é a maior fonte de erro nasoperações de ponto flutuante.

Aritmética de Ponto Flutuante

▪ Exemplo: multiplicar 1234 por 0,016

▪ Os números são armazenados no formato definido.▪ A operação de multiplicação é efetuada utilizando 2p = 4

dígitos na mantissa.▪ O resultado é arrendondado para dois dígitos e normalizado

▪ O resultado da multiplicação foi 19 em vez de 19,744.

Aritmética de Ponto Flutuante

▪ Exemplo: multiplicar 875 por 3172

▪ Os números são armazenados no formato indicado.▪ A operação de multiplicação é efetuada utilizando 2p = 4

dígitos.▪ O resultado é arrendondado, normalizado e como o expoente e

= 7 > 5 então ocorre um overflow

▪ A multiplicação resultou em um valor maior que essecomputador hipotético pode representar.

Aritmética de Ponto Flutuante

▪ Exemplo: dividir 0,00183 por 492

▪ Os números são armazenados no formato especificado.▪ A operação de divisão é efetuada utilizando 2p = 4 dígitos na

mantissa.▪ O resultado é arrendondado para dois dígitos e normalizado

▪ O correto é: 0.3719512195121951 x 10-5

Aritmética de Ponto Flutuante

▪ Exemplo: dividir 0,0064 por 7312

▪ Os números são armazenados no formato definido.▪ A divisão é efetuada utilizando 2p = 4 dígitos na mantissa.▪ O resultado é arrendondado, normalizado e sendo o expoente

e = -6 < -5 então ocorre um underflow

▪ O resultado da divisão foi um valor menor que essecomputador hipotético pode armazenar.

Aritmética de Ponto Flutuante

▪ Erro de conversão de base

▪ Um número é fornecido ao computador na base 10 earmazenado na base 2.

▪ Números inteiros têm representação binária exata 4410 =1011002.

▪ Número com decimais pode resultar em número binário cominfinitos dígitos (0,410 = 0,01100110...2).

▪ Os dígitos têm que ser arredondados para armazenamento emformato de ponto flutuante.

Efeitos Numéricos

Existem certos efeitos numéricos que contribuem para que oresultado obtido não seja preciso. Alguns dos mais frequentes são:

A normalização muda este resultado para: 0.5031420000x10−2. Assim os quatro zeros no final damantissa não têm significado e perde-se 4 casas decimais. É possívelobter um resultado mais preciso considerando a identidade:

Efeitos Numéricos

Efeitos Numéricos

▪ Os erros podem ir se acumulando durante o processo.

▪ Erros intermediários podem anular-se: Estabilidade.

▪ Instabilidade: os erros intermediários têm um influência muitogrande no resultado final.

▪ Instabilidade numérica

▪ Em um problema mal condicionado, uma leve variação nos dadosde entrada pode levar a soluções completamente diferentes.

▪ Isso é muito importante quando os dados são provenientes demedidas, observações, etc. e sujeitos a erros.

▪ Malcondicionamento

1. Aderito Luis Martins Araujo , Analise Numerica Engenharias Mecânica e de Materiais.

2. Frederico Ferreira Campos Filho, Algoritmos Numéricos.

Referencias Bibliográficas

top related