Capítulo 1 - Erros e Aritmética Computacional

Documentos relacionados
Capítulo 1 - Erros e Aritmética Computacional

Capítulo 1 - Erros e Aritmética Computacional

Sistema de ponto flutuante

Problemas de Valor Inicial para Equações Diferenciais Ordinárias

Eduardo Camponogara. DAS-5103: Cálculo Numérico para Controle e Automação. Departamento de Automação e Sistemas Universidade Federal de Santa Catarina

Universidade Federal de São João Del Rei - UFSJ

ANÁLISE NUMÉRICA DEC /97

Aula 2 - Cálculo Numérico

Cálculo Numérico / Métodos Numéricos. Representação de números em computadores Mudança de base 14:05

CCI-22 CCI-22. 2) Erros de arredondamento. Matemática Computacional

Métodos Numéricos e Estatísticos Parte I-Métodos Numéricos Teoria de Erros

Métodos Numéricos. Turma CI-202-X. Josiney de Souza.

Análise de Arredondamento em Ponto Flutuante

Alguns apontamentos da história da Análise Numérica

Noções Básicas de Erros

As fases na resolução de um problema real podem, de modo geral, ser colocadas na seguinte ordem:

computador-cálculo numérico perfeita. As fases na resolução de um problema real podem, de modo geral, ser colocadas na seguinte ordem:

CAP. I ERROS EM CÁLCULO NUMÉRICO

Aritmética de Ponto Flutuante e Noções de Erro. Ana Paula

Cálculo Numérico Aula 1: Computação numérica. Tipos de Erros. Aritmética de ponto flutuante

Notas de Cálculo Numérico

Introdução. A Informação e sua Representação (Parte II) Universidade Federal de Campina Grande. Unidade Acadêmica de Sistemas e Computação

Aproximações e Erros de Arredondamento. introdução. exactidão e precisão. Aula 2 Métodos Numéricos Aplicados à Engenharia

Matemática Computacional - Exercícios

Representação de números em máquinas

Licenciatura em Engenharia Electrotécnica e de Computadores 1998/99. Erros

2. Representação Numérica

Aritmética de Ponto Flutuante

Sistemas de Numeração (Aula Extra)

PP 301 Engenharia de Reservatórios I 11/05/2011

Representando Instruções no Computador

Universidade Federal de São Carlos Departamento de Matemática Curso de Cálculo Numérico - Turma E Resolução da Primeira Prova - 16/04/2008

Noções Básicas Sobre Erros

Como aparecem os erros? Quais os seus efeitos? Como controlar esses efeitos?

Métodos Numéricos Engenharia Civil, Química e Gestão Industrial

Departamento de Informática

Erros. Cálculo Numérico

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES SISTEMAS DE NUMERAÇÃO: REPRESENTAÇÃO EM PONTO FLUTUANTE. Prof. Dr. Daniel Caetano

Primeiro roteiro de exercícios no Scilab Cálculo Numérico

Capítulo SETE Números em Ponto Fixo e Ponto Flutuante

Aula 1 Representação e Operações Aritméticas em Ponto Flutuante.

Métodos Numéricos. A. Ismael F. Vaz. Departamento de Produção e Sistemas Escola de Engenharia Universidade do Minho aivaz@dps.uminho.

Capítulo 5: Aplicações da Derivada

Linguagem C: variáveis, operadores, entrada/saída. Prof. Críston Algoritmos e Programação

Cálculo Numérico Faculdade de Engenharia, Arquiteturas e Urbanismo FEAU

Unidade 5: Sistemas de Representação

Cálculo Numérico Faculdade de Engenharia, Arquiteturas e Urbanismo FEAU

Verificação e Validação em CFD

Unidade 3 Função Logarítmica. Definição de logaritmos de um número Propriedades operatórias Mudança de base Logaritmos decimais Função Logarítmica

Representação de Dados

Capítulo 3 Modelos Estatísticos

Capítulo 1. Introdução. 1.1 Sistemas numéricos

Sistema de Numeração e Conversão entre Sistemas. Prof. Rômulo Calado Pantaleão Camara. Carga Horária: 60h

por séries de potências

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA DISCUSSÃO DOS EXERCÍCIOS E CONSTRUÇÃO DE PROGRAMAS SEQUENCIAIS. Prof. Dr. Daniel Caetano

Engenharia de Software

o semestre

MEDIÇÃO EM QUÍMICA ERROS E ALGARISMOS SIGNIFICATIVOS

Paralelismo a Nível de Instrução

Programação. Folha Prática 4. Lab. 4. Departamento de Informática Universidade da Beira Interior Portugal. Copyright 2010 All rights reserved.

Capítulo 5 - Funções Reais de Variável Real

Erros. Número Aproximado. Erros Absolutos erelativos. Erro Absoluto

Cálculo numérico. ln 1 = 0. Representação numérica. Exemplo. Exemplos. Professor Walter Cunha. ln 1. I s

Trabalho Computacional. A(h) = V h + 2 V π h, (1)

Organização e Arquitetura de Computadores I

1 Introdução. 2 Exemplo de aplicação

1. Introdução 2. Representação de números 2.1. Conversão Numérica 2.2. Aritmética de ponto flutuante 3. Erros 3.1 Erros Absolutos e Relativos

natureza do projeto e da aplicação métodos e ferramentas a serem usados controles e produtos que precisam ser entregues

A declaração de uma variável vel define o seu tipo. O tipo do dado define como ele será: Armazenado na memória. Manipulado pela ULA.

AMBIENTE DE PROGRAMAÇÃO PYTHON

Introdução. A Informação e sua Representação (Parte III) Universidade Federal de Campina Grande Departamento de Sistemas e Computação

I. Cálculo Diferencial em R n

O QUE É A ESCALA RICHTER? (OU COMO SE MEDE UM TERREMOTO)

Gráficos de funções em calculadoras e com lápis e papel (*)

Eduardo Camponogara Eugênio de Bona Castelan Neto

2 Estudo dos Acoplamentos

Aula 9. Introdução à Computação. ADS IFBA

ARITMÉTICA DE PONTO FLUTUANTE/ERROS EM OPERAÇÕES NUMÉRICAS

Um estudo sobre funções contínuas que não são diferenciáveis em nenhum ponto

Índice de conteúdos. Índice de conteúdos. Capítulo 2. Representação de Números e Erros Representação de números em diferentes bases...

Computação II Orientação a Objetos

Fração como porcentagem. Sexto Ano do Ensino Fundamental. Autor: Prof. Francisco Bruno Holanda Revisor: Prof. Antonio Caminha M.

EXAME NACIONAL DO ENSINO SECUNDÁRIO

COMPUTAÇÃO APLICADA. Porém, é necessário considerar que ninguém ensina ninguém a pensar, pois todas as pessoas normais tem este dom.

Karine Nayara F. Valle. Métodos Numéricos de Euler e Runge-Kutta

Aritmética com Maple:

UFCD 8 Controlo e armazenagem de mercadorias Carga horária 50 horas ARMAZENAGEM DAS MERCADORIAS

Faculdade de Computação

1. Converta para a base binária, usando o método das divisões sucessivas, os seguintes números inteiros: a) 13 b) 35. e) 347 f) 513.

Folha Prática - Representação de Números e Erros. 1. Representar os seguintes números decimais em binário com ponto fixo:

Álgebra. SeM MiSTéRio

Teorema de Taylor. Prof. Doherty Andrade. 1 Fórmula de Taylor com Resto de Lagrange. 2 Exemplos 2. 3 Exercícios 3. 4 A Fórmula de Taylor 4

1. Converta para a base binária, usando o método das divisões sucessivas, os seguintes números inteiros: a) 13 b) 35.

Classificação da imagem (ou reconhecimento de padrões): objectivos Métodos de reconhecimento de padrões

Software Livre e Engenharia Elétrica

Universidade Federal do Paraná. Setor de Ciências Exatas. Departamento de Matemática

Notas sobre a Fórmula de Taylor e o estudo de extremos

Aula 2 Sistemas de Numeração (Revisão)

PROVAS DE MATEMÁTICA DO VESTIBULAR-2012 DA MACKENZIE RESOLUÇÃO: Profa. Maria Antônia Gouveia. 14/12/2011

Transcrição:

Capítulo 1 - Erros e Carlos Balsa balsa@ipb.pt Departamento de Matemática Escola Superior de Tecnologia e Gestão de Bragança 2 o Ano - Eng. Civil, Electrotécnica e Mecânica Carlos Balsa Métodos Numéricos 1/ 22

Outline Métodos Numéricos 1 Métodos Numéricos Definição Aproximações 2 Tipos de Erros 3 Número de Condição Estabilidade e Exactidão 4 Notação de Virgula Flutuante Carlos Balsa Métodos Numéricos 2/ 22

Definição Aproximações Métodos Numéricos O que é a computação científica (tradicionalmente análise numérica)? Concepção e análise de algoritmos para a resolução numérica problemas matemáticos oriundos da ciência e da engenharia Lida com quantidades contínuas Tem em conta as aproximações Nos métodos numéricos concentramos a nossa atenção nos principais métodos de cálculo usados na computação científica Para que serve a computação científica? Simular fenómenos naturais Conceber protótipos virtuais concebidos pela engenharia Carlos Balsa Métodos Numéricos 3/ 22

Definição Aproximações Origem das aproximações Antes da computação Modelação Medições empíricas Computações anteriores Durante a computação Truncatura ou discretização Arredondamentos A exactidão dos resultados finais reflecte todas as aproximações A incerteza dos dados introduzidos (input) pode ser amplificada pelo problema Perturbações durante a computação podem ser amplificadas pelo algoritmo Carlos Balsa Métodos Numéricos 4/ 22

Definição Aproximações Exemplo 1: aproximações Calcular a superfície terrestre através da formula utilizando a formula A = 4πr 2 envolve várias aproximações A Terra é modelada como uma esfera, idealizando a sua forma ideal O valor do raio é baseado em medidas empíricas e em computações anteriores O valor de π requer a truncatura de processos infinitos O valor dos inputs assim como das operações aritméticas são arredondadas no computador Carlos Balsa Métodos Numéricos 5/ 22

Tipos de Erros Erro Absoluto e Erro Relativo Erro absoluto = valor aproximado - valor exacto Erro relativo = erro absoluto valor exacto Ou, valor aproximado = valor exacto (1+ erro rel.) Valor exacto, normalmente desconhecido, pelo que é estimado ou limitado através de um erro máximo Erro relativo é geralmente calculado com base no valor aproximado em vez do valor exacto (desconhecido) Carlos Balsa Métodos Numéricos 6/ 22

Tipos de Erros Erros de dados e erros de computação Problema típico: calcular o valor da função f : IR IRpara um dado argumento x valor exacto do argumento f (x) valor pretendido ˆx valor aproximado do input ˆf valor aproximado da função a calcular Erro total = ˆf (ˆx) f (x) = (ˆf (ˆx) f (ˆx)) + (f (ˆx) f (x)) = erro computacional + erro propagado O algoritmo não tem efeito no erro propagado Carlos Balsa Métodos Numéricos 7/ 22

Tipos de Erros Erro de truncatura e erro de arredondamento Erro de truncatura: diferença entre o resultado exacto (para o input actual) e o resultado produzido pelo algoritmo usando uma aritmética exacta Devido a aproximações tais como a truncatura de séries infinitas ou fins de processos iterativos antes de se verificar a convergência Erro de arredondamento: diferença entre o resultado produzido pelo algoritmo usando aritmética infinita e o resultado produzido pelo mesmo algoritmo usando uma aritmética de precisão limitada Devido a representação inexacta de números reais e às operações inexactas sobre esses números Os erros computacionais são a soma dos erros de truncatura e dos erros de arredondamento, normalmente, um destes é dominante Carlos Balsa Métodos Numéricos 8/ 22

Tipos de Erros Erro anterior (backward error) e erro posterior (forward error) Supondo que queremos calcular y = f (x), com f : IR IR, mas obtemos o valor aproximado ŷ Erro posterior y = ŷ y Erro anterior x = ˆx x, com f (ˆx) = ŷ Carlos Balsa Métodos Numéricos 9/ 22

Tipos de Erros Exemplo 2: erro anterior e erro posterior Como aproximação a 2, ŷ = 1.4 tem como erro absoluto posterior y = ŷ y = 1.4 1.41421 0.0142 que corresponde a um erro relativo posterior de cerca de 1% Uma vez que 1.96 = 1.4, o erro absoluto anterior é x = ˆx x = 1.96 2 0.04 que corresponde a um erro relativo anterior de cerca de 2% Carlos Balsa Métodos Numéricos 10/ 22

Análise do erro anterior Tipos de Erros Ideia: solução aproximada é a solução exacta do problema modificado De quanto deve ser modificado o problema original para originar o resultado obtido? Quanto é que o os erros nos inputs podem explicar todos os erros nos resultados calculados? A solução aproximada é boa se for a solução exacta de um problema próximo do original O erro anterior é por vezes mais fácil de estimar do que o erro à posterior Carlos Balsa Métodos Numéricos 11/ 22

Tipos de Erros Exemplo 3: análise do erro anterior Vamos aproximar a função cosseno f (x) = cos(x) através da série de Taylor truncada a partir dos 3 primeiros termos O erro posterior é dado por ŷ = ˆf (x) = 1 x 2 /2 y = ŷ y = ˆf f = 1 x 2 /2 cos(x) Para determinar o erro anterior, necessitamos do valor ˆx tal que f (ˆx) = ˆf (x) Para a função cosseno, ˆx = arccos(ˆf (x)) = arccos(ŷ) Carlos Balsa Métodos Numéricos 12/ 22

Número de Condição Estabilidade e Exactidão Um problema é insensível ou bem condicionado se mudanças relativas no input provocam mudanças relativas semelhantes na solução Um problema é sensível ou mal condicionado se mudanças relativas no input provocam muito maiores mudanças relativas na solução Número de condição Mud. relativa na sol. Cond = Mud. relativa nos inputs [f (ˆx) f (x)] /f (x) = = y/y (ˆx x) /x x/x O problema é sensível ou mal condicionado se Cond 1 Carlos Balsa Métodos Numéricos 13/ 22

Número de Condição Número de Condição Estabilidade e Exactidão O número de condição é um factor de ampliação do erro anterior em relação ao erro posterior Erro relativo posterior = cond Erro relativo anterior Normalmente o numero de condição não é exactamente conhecido e pode variar com o input, pelo que se usa uma aproximação ou um limite máximo para o valor de Cond Erro relativo posterior cond Erro relativo anterior Carlos Balsa Métodos Numéricos 14/ 22

Número de Condição Estabilidade e Exactidão Exemplo 4: Número de Condição de uma função Calcular uma função para o input aproximado ˆx = x + x em vez de x Erro absoluto posterior: f (x + x) f (x) f (x) x Erro relativo posterior: Número de condição: cond f (x+ x) f (x) f (x) f (x) x f (x) f (x) x/f (x) x/x = xf (x) f (x) Erro relativo no valor da função pode ser muito menor ou muito maior do que o erro no input, dependendo de x e de f Carlos Balsa Métodos Numéricos 15/ 22

Exemplo 5: sensibilidade Número de Condição Estabilidade e Exactidão A função tangente é sensível para argumentos próximos de π/2 tan(1.57079) 1.58058 10 5 tan(1.57078) 6.12490 10 4 Mudança relativa no output é um quarto de milhão maior do que a mudança relativa no input Para x = 1.57079, cond 2.48275 10 5 Carlos Balsa Métodos Numéricos 16/ 22

Estabilidade e Exactidão Número de Condição Estabilidade e Exactidão Um algoritmo é estável se o resultado produzido for relativamente insensível a perturbações durante a computação Estabilidade de um algoritmo é análoga ao condicionamento do problema original Exactidão: proximidade da solução calculada da solução exacta do problema Exactidão depende do condicionamento do problema assim como da estabilidade do algoritmo A inexactidão pode resultar de aplicar algoritmos estáveis a problemas mal condicionados ou algoritmos instáveis a problemas bem condicionados Carlos Balsa Métodos Numéricos 17/ 22

Notação de Virgula Flutuante Notação de Virgula Flutuante Nos computadores os números são representados por um sistema de números de vírgula (ou ponto) flutuante da forma x = ±f x b E em que f x : mantissa (fracção) b: base E: expoente Maior parte dos computadores modernos são concebidos de acordo o sistema de ponto flutuante do IEEE, em que a base é binária (b = 2) Os computadores convertem os inputs, na base decimal (b = 10), para a base binária antes de efectuar as operações pedidas, posteriormente convertem também os resultados para a base decimal antes de serem apresentados Carlos Balsa Métodos Numéricos 18/ 22

Notação de Virgula Flutuante Notação Científica e Notação Normalizada A forma padrão de representar um numero em computador é através da notação científica x = ±f x 10 E em que 1 f x < 10 (todos os dígitos de f x são significativos) Na notação científica normalizada tem-se 0.1 f x < 1 Em análise de erros esta notação é útil pois verifica a relação m = E t, em que m é o numero de posições décimas, t é o número de dígitos significativos e E é o expoente na base 10 quando x está representado nesta notação Por exemplo x = 0.0003450 x = 3.450 10 4 ou x = 3.450E 4: notação científica x = 0.3450 10 3 ou x = 0.3450E 3: not. normalizada Carlos Balsa Métodos Numéricos 19/ 22

Precisão Máquina Métodos Numéricos Notação de Virgula Flutuante A exactidão do sistema de ponto flutuante é caracterizado pela unidade de arredondamento (ou precisão máquina), representada por ɛ maq Corresponde ao número de dígitos de precisão com que um número real é representado no sistema de ponto flutuante É o erro relativo máximo que se comete ao representar um número real no sistema de ponto flutuante No sistema IEEE de precisão simples ɛ maq 10 7 e no sistema IEEE de precisão dupla ɛ maq 10 16 Carlos Balsa Métodos Numéricos 20/ 22

Underflow e Overflow Notação de Virgula Flutuante O valor mínimo (em valor absoluto) que é possível representar no sistema de ponto flutuante é designado por underflow O valor máximo (em valor absoluto) que é possível representar no sistema de ponto flutuante é designado por overflow No decorrer da execução de um algoritmo se o overflow ocorre verifica-se um erro fatal responsável pelo fim precipitado da execução Não confundir underflow com ɛ maq, embora ambos sejam pequenos, a precisão máquina depende do número de dígitos na mantissa (f x ) enquanto que o underflow é determinado pelo número de dígitos no campo do expoente (E) Num sistema de ponto flutuante temos 0 < underflow < ɛ maq < overflow Carlos Balsa Métodos Numéricos 21/ 22

Exercício Métodos Numéricos Notação de Virgula Flutuante I Considere x = 0.005471. 1 Quantas posições decimais tem x? 2 Quantos dígitos significativos tem x? 3 Arredonde x a três posições decimais e determine o erro absoluto cometido. 4 Arredonde x a três dígitos significativos e determine o relativo cometido. 5 Escreva x em notação científica e em notação científica normalizada. II Considere o número correctamente arredondo (obtido por arredondamento simétrico) â = 0.067. 1 Que números com 4 posições decimais poderiam ter originado â? 2 Estime um majorante para o erro absoluto? 3 Estime um majorante para o erro relativo? 4 Escreva â em notação científica normalizada. Carlos Balsa Métodos Numéricos 22/ 22