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



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

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

Cálculo Numérico. ECA / 4 créditos / 60 h Introdução, Erros e Matlab. Ricardo Antonello.

2. Representação Numérica

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

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

Erros. Cálculo Numérico

Organização e Arquitetura de Computadores I

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

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

CAP. I ERROS EM CÁLCULO NUMÉRICO

Notas de Cálculo Numérico

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

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

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

Aula 2 - Cálculo Numérico

Estudaremos métodos numéricos para resolução de sistemas lineares com n equações e n incógnitas. Estes podem ser:

Análise de Arredondamento em Ponto Flutuante

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

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

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

Í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...

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

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

Representação de Dados

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

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

A FÓRMULA DE CONVERSÃO ENTRE AS UNIDADES É: F = 1.8 C

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

Capítulo 1 - Erros e Aritmética Computacional

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

Capítulo 1 Erros e representação numérica

Tópico 2. Conversão de Unidades e Notação Científica

CI202 - Métodos Numéricos

Faculdade de Engenharia Optimização. Prof. Doutor Engº Jorge Nhambiu

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

Uma lei que associa mais de um valor y a um valor x é uma relação, mas não uma função. O contrário é verdadeiro (isto é, toda função é uma relação).

Matemática - UEL Compilada em 18 de Março de Prof. Ulysses Sodré Matemática Essencial:

Exemplo de Subtração Binária

Unidade 5: Sistemas de Representação

Organização de Computadores. Cálculos Binários e Conversão entre Bases Aritmética Binária

a 1 x a n x n = b,

Aula 6 Aritmética Computacional

Unidade 3: Sistemas de Numeração Conversões Entre Quaisquer Bases e Aritmética em Bases Alternativas Prof. Daniel Caetano

A equação do 2º grau

Conversão de Bases e Aritmética Binária

Por que o quadrado de terminados em 5 e ta o fa cil? Ex.: 15²=225, 75²=5625,...

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

COMPUTAÇÕES NUMÉRICAS. 1.0 Representação

1. Introdução ao uso da calculadora

Tópico 11. Aula Teórica/Prática: O Método dos Mínimos Quadrados e Linearização de Funções

AMBIENTE PARA AUXILIAR O DESENVOLVIMENTO DE PROGRAMAS MONOLÍTICOS

CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES

Organização e Arquitetura de Computadores. Aula 10 Ponto Flutuante Parte I Juliana F. Camapum Wanderley

Material Teórico - Módulo de Divisibilidade. MDC e MMC - Parte 1. Sexto Ano. Prof. Angelo Papa Neto

Aula 3 - Sistemas de Numeração

13 Números Reais - Tipo float

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

Dadas a base e a altura de um triangulo, determinar sua área.

CÁLCULO DE ZEROS DE FUNÇÕES REAIS

ULA- Unidade Lógica Aritmética. Prof. Rômulo Calado Pantaleão Camara. Carga Horária: 60h

Algarismos Significativos

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

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À ORGANIZAÇÃO DE COMPUTADORES

Sistemas de Numerações.

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

A lógica de programação ajuda a facilitar o desenvolvimento dos futuros programas que você desenvolverá.

Escola Secundária c/3º CEB José Macedo Fragateiro. Curso Profissional de Nível Secundário. Componente Técnica. Disciplina de

Programação para Computação

Capítulo 1. x > y ou x < y ou x = y

Capítulo 13. VARIÁVEIS DO TIPO REAL DUPLA

Vamos exemplificar o conceito de sistema posicional. Seja o número 1303, representado na base 10, escrito da seguinte forma:

Método de Eliminação de Gauss. Eduardo Camponogara

x0 = 1 x n = 3x n 1 x k x k 1 Quantas são as sequências com n letras, cada uma igual a a, b ou c, de modo que não há duas letras a seguidas?

APLICAÇÕES DA DERIVADA

Bases Matemáticas. Aula 2 Métodos de Demonstração. Rodrigo Hausen. v /15

UNIVERSIDADE FEDERAL DO ESPÍRITO SANTO PROGRAMA DE EDUCAÇÃO TUTORIAL - MATEMÁTICA PROJETO FUNDAMENTOS DE MATEMÁTICA ELEMENTAR

Aula 4 Pseudocódigo Tipos de Dados, Expressões e Variáveis

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia.

Calcular o montante de um capital de $1.000,00, aplicado à taxa de 4 % ao mês, durante 5 meses.

Aritmética de Ponto Flutuante

4 Avaliação Econômica

Noções Básicas de Erros

Lógica Matemática e Computacional 5 FUNÇÃO

Modelagem no Domínio do Tempo. Carlos Alexandre Mello. Carlos Alexandre Mello 1

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

IBM1018 Física Básica II FFCLRP USP Prof. Antônio Roque Aula 6. O trabalho feito pela força para deslocar o corpo de a para b é dado por: = =

¹CPTL/UFMS, Três Lagoas, MS,Brasil, ²CPTL/UFMS, Três Lagoas, MS, Brasil.

Capítulo 3. Avaliação de Desempenho. 3.1 Definição de Desempenho


Sistemas de Numeração

CAPÍTULO 6 ARITMÉTICA DIGITAL

Sistemas de Numeração. Professor: Rogério R. de Vargas INFORMÁTICA 2014/2

Fundamentos em Informática (Sistemas de Numeração e Representação de Dados)

[a11 a12 a1n 4. SISTEMAS LINEARES 4.1. CONCEITO. Um sistema de equações lineares é um conjunto de equações do tipo

Sistemas de Numeração. Engenharia da Computação 3 Período Alex Vidigal Bastos

Medidas e Incertezas

Pesquisa Sequencial e Binária. Introdução à Programação SI2

O ESPAÇO NULO DE A: RESOLVENDO AX = 0 3.2

Lição 1 Introdução à programação de computadores

Transcrição:

1 As notas de aula que se seguem são uma compilação dos textos relacionados na bibliografia e não têm a intenção de substituir o livro-texto, nem qualquer outra bibliografia. Introdução O Cálculo Numérico é uma metodologia para resolver problemas matemáticos por meio de uma máquina calculadora ou um computador, sendo de grande importância pois, embora os métodos analíticos usualmente nos forneçam a resposta em termos de funções matemáticas, existem problemas que não possuem solução analítica e, mesmo nestes casos podemos obter uma solução numérica para o problema. Uma solução via Cálculo Numérico é um conjunto de dados numéricos que fornecem uma aproximação para a solução exata do problema, aproximação esta que pode ser obtida em grau crescente de exatidão. Para obtermos uma solução numérica precisamos utilizamos apenas as quatro operações aritméticas (soma, subtração, multiplicação e divisão) e operações lógicas, o que torna a combinação computador-cálculo numérico perfeita. As fases na resolução de um problema real podem, de modo geral, ser colocadas na seguinte ordem: Definição e coleta de dados do problema real Modelagem matemática Solução numérica Análise dos resultados Na modelagem matemática o problema real é transformado em um problema matemático através de uma formulação matemática. Geralmente o problema matemático tem mais soluções que o problema real. Ao final do processo de resolução deve-se escolher a solução que melhor se adapta ao que queremos. Quando partimos para a solução numérica, é feita a escolha do método numérico mais eficiente para resolver o problema oriundo da modelagem matemática. O método matemático é um conjunto de procedimentos utilizado para transformar um modelo matemático em um problema numérico ou um conjunto de procedimentos utilizados para resolver um problema numérico. A escolha do método mais eficiente deve envolver: precisão desejada para os resultados; capacidade do método em conduzir aos resultados desejados (velocidade de convergência); esforço computacional despendido (tempo de processamento, economia de memória necessária para a resolução).

2 A solução numérica envolve: (a) a elaboração de um algorítmo, que é a descrição seqüencial dos passos que caracterizam um método numérico, (b) a codificação do programa, quando implementamos o algorítmo numa linguagem de programação escolhida, e (c) o processamento do programa, quando o código antes obtido é editado em um arquivo para que possa ser executado pelo computador. Duas idéias são freqüentes em cálculo numérico, a de iteração ou aproximação sucessiva e a de aproximação local. Iteração. Em um sentido amplo, iteração significa a repetição sucessiva de um processo. Um método iterativo se caracteriza por envolver os seguintes elementos: Aproximação inicial: consiste em uma primeira aproximação para a solução do problema numérico. Equação de recorrência: equação por meio da qual, partindo da aproximação inicial, são realizadas as aproximações sucessivas para a solução desejada. Teste de parada: é o instrumento por meio do qual o procedimento iterativo é finalizado. Aproximação local. Aqui a idéia é aproximar uma função por outra que seja de manuzeio mais simples. Por exemplo, aproximar uma função não-linear por uma função linear em um determinado intervalo do domínio das funções. 1 Tipos de erros Durante as etapas de resolução de um problema surgem várias fontes de erros que podem alterar profundamente os resultados obtidos. É muito importante conhecer as causas desses erros para minimizar as suas consequências, ou do contrário, poderemos chegar a resultados distântes do que se esperaria ou até mesmo obter outros que não têm relação nenhuma como a solução do problema real. As principais fontes de erros são as seguintes: erros nos dados de entrada; erros no estabelecimento do modelo matemático; erros de arredondadamento durante a computação; erros de truncamento, e erros humanos e de máquinas. O erro inicial é a soma das incertezas introduzidas no equacionamento do problema, na medição dos parâmetros, nas condições iniciais etc. A influência dessas perturbações no resultado final vai depender da estabilidade do problema. Estabilidade é a condição que nos diz se pequenas perturbações nos dados de entrada provocam pequenas perturbações nos resultados, ou seja

3 soluções próximas. Se além de estável, o problema tiver uma única solução, dizemos que ele é bem-posto. O modelo matemático para o problema real deve representar bem o fenômeno que está ocorrendo no mundo físico, normalmente isso exige simplificações no modelo físico para que se possa obter um problema matemático viável de ser resolvido. O processo de simplificação é uma fonte de erros, o que pode, ao final da resolução do problema, implicar na necessidade de reconstruir o seu modelo. 1.1 Medida de erros Tendo em vista que, na aplicação dos métodos numéricos, trabalhamos com aproximações vamos estabelecer duas maneiras de se medir ou delimitar o erro cometido. Seja u o valor exato e v uma aproximação para u, definimos o erro absoluto como sendo E A = u v e o erro relativo como sendo E A u. O tamanho do erro absoluto é mais grave quando o valor verdadeiro é pequeno. É comum apresentar o erro relativo em forma de percentual, o que é obtido multiplicando esta expressão por 100. Exercício: Sejam: a) u = 10, 0010 e v = 10, 0009; b) u = 0, 0010 e v = 0, 0009, em anbos os casos calcule os erros absoluto e relativo. 1.2 Erro de truncamento Este tipo de erro surge toda vez que se substitui um procedimento matemático infinito por um processo finito ou discreto. Como um processo infinito não se conclui somos obrigados a adotar uma aproximação após um número finito de passos. Vejamos dois exemplos clássicos que ilustram fontes de erros de truncamento: o uso de séries no cálculo de funções e o uso de diferenças finitas para aproximar derivadas. Exemplo 1. Para calcular o valor de e 0,5 podemos lançar mão da série de Taylor da função exponencial e x = 1 + x + x2 2! + x3 3! +... + xn n! +... (1) portanto, no cálculo efetivo de e 0,5, precisamos truncar a série, usando apenas um número finito de termos dela. Por exemplo, usando os cinco primeiros termos como aproximação, teremos e 0,5 = 1, 6484375. Exercício: Calcule o erro absoluto entre o valor acima e o exato (obtido através de uma máquina calculadora). Aumentando o número de termos utilizados, verifique que esse erro diminui. Exemplo 2. A derivada de uma função f(x) pode ser calculada pela diferença centrada f (x 0 ) f(x 0 + h) f(x 0 h) 2h temos que o erro de truncamento (absoluto) da fórmula de diferenças centradas é h2 6 f (k), onde k é um número que depende de x 0 e h; e x 0 h k x 0 + h. Uma forma mais razoável de (2)

4 estimar esse erro vem a ser: E h2 6 max{ f (x) ; x 0 h x x 0 + h}. Por exemplo, seja f(x) = sen(x), tomando x 0 = π e h 1 = π 4, temos que f (π) = 1. Utitlizando a aproximação acima temos que f (π) 0, 90032. Exercícios: Calcule o erro de truncamento e compare-o com a estimativa doerro. Faça h 2 = π 8 e h 3 = π 16, em cada caso calcule as aproximações para f (π), os erros de truncamento e compare com as estimativas do erro. 1.3 Erro de arredondamento Os erros de arredondamento surgem devido ao fato de algumas propriedades básicas da aritmética real não valerem quando executadas no computador, pois, enquanto na matemática alguns números são representados por infinitos dígitos, na máquina isso não é possível já que uma palavra da memória e a própria memória da máquina são finitas. Dessa forma, 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 cálculos envolvendo números que não podem ser escrito de modo finito na base escolhida geram erros. Quanto maior for o número de dígitos significativos utilizados (dígitos após a vírgula) maior será a precisão. 2 Conversão de bases e aritmética de ponto flutuante Um número pode ter sua representação em ponto fixo, por exemplo 12, 43, ou em ponto flutuante 0, 1243 10 2. A forma de representação de um número em ponto flutuante na base β é a seguinte: ±, d 1 d 2 d 3... d p β e ; (3) onde os d i s, i = 1, 2,..., p são os dígitos da parte fracionária(mantissa), tais que 0 d i β 1, d 1 é não-nulo, β é o valor da base (geralmente 2, 8 ou 16) representada na base 10, p é o número de dígitos e e é um expoente inteiro que varia entre m e M, ambos números inteiros. As três partes de um número em ponto flutuante, sinal, mantissa e expoente, têm um comprimento total fixo que depende do computador e do tipo de número representado: se em precisão simples, dupla ou estendida. Um sistema de ponto flutuante F, que depende de β, p, m e M, será representado por F(β, p, m, M), onde a precisão da máquina com o sistema F é definida pelo número p de dígitos na mantissa. O zero é representado de maneira especial, todos os dígitos da mantissa são nulos e o expoente é tomado o menor possível para se evitar a perda de dígitos nas operações. Vale observar que, enquanto na reta real possuímos uma quantidade não-enumerável de números posicionados continuamente, em ponto flutuante os números são representados de forma finita e discreta. Entre dois números de ponto flutuante nem sempre existe um outro número de ponto flutuante.

5 2.1 Aritmética de ponto flutunate Quando dois números são somados ou subtraídos, os dígitos do número de expoente menor devem ser deslocados a fim de alinhar as casa decimais, ou seja, devemos representar ambos os fatores com o maior expoente envolvido na operação. O resultado então é arredondado para o número de dígitos que a mantissa comporta, levando em conta uma mantissa normalizada (d 1 0). Na multiplicação, como na divisão, os números devem ser armazenados no formato definido e a operação ser efetuada como no caso de números decimais. O resultado, então, deve ser arredondado e normalizado. Se uma operação aritmética resultar em um número que seja maior em módulo que o maior número representável ocorrerá um overflow. Se, por outro lado, uma operação aritmética resultar em um número que seja menor em módulo que o menor número representável não-nulo ocorrerá um underflow. 2.2 Conversão de bases Além desses erros operacionais, uma outra causa de erros quando se usa computadores é devida à conversão de base. Geralmente fornecemos um número ao computador na base 10 e no entanto ele é armazenado e operado na base 2. Como números com representação finita numa base podem tem representação infinita em outra, converter do sistema decimal para o binário e vice-versa é outra fonte de erros. Exercícios: 1. Converta os seguintes números da forma decimal para a forma binária: x 1 = 37; x 2 = 2347; x 3 = 0, 75; x 4 =(sua matrícula)/10; x 5 = 0, 1217 2. Converta os seguintes números da forma binária para a forma decimal: y 1 = 101101; y 2 = 110101011; y 3 = 0, 1101; y 4 = 0, 111111101 3. Converta os seguintes números da forma decimal para sua forma na base quatro: z 1 = 5268; z 2 = 2, 5; z 3 = 159357; z 4 = 0, 1225 4. Seja o SPF dado por F (10, 4, 5, 5). Dados os números x = 7237; y = 0, 0002145; z = 2, 585, efetue as seguintes operações: w 1 = x + y + z; w 2 = x y z; w 3 = x y ; w 4 = xy z ; w 5 = x y z 5. Dê um argumento convincente para justificar que, se o número fracionário N tem representação finita na base 2 com k dígitos, então sua representação na base 10 também é finita com k dígitos. 6. Encontre o maior intervalo em que um número q deve se encontrar para aproximar x 4 com erro relativo no máximo de 10 4.

6 7. Seja o sistema de ponto flutuante dado por F (6, 6, 6, 6). Quantos números reais podem ser representados de forma exata? Verifique se sua matrícula, escrita de traz para frente, tem representação neste sistema. 3 Condicionamento de algorítmos Como antes definido, um problema é dito bem-posto quando tem uma única solução e é estável. Mas pode acontecer o caso do problema ser bem-posto e, no cálculo de soluções aproximadas, usarmos algorítmos instáveis. Neste caso podemos obter maus resultados. Como exemplo consideremos o cálculo de raízes de equações de segundo grau: Exemplo 3 As raízes da equação ax 2 + bx + c = 0, onde a e b são números positivos, podem ser calculads por x 1 = b + b 2 4ac 2a, x 2 = b b 2 4ac. (4) 2a Quando b 2 >> 4ac, o cálculo de x 2 envolverá a diferença de dois números próximos o que pode acarretar na perda de dígitos significativos. Uma forma de contornar o problema pode ser calcular x 1 como proposto anteriormente e usar a propriedades de raízes de equações do segundo grau: x 1 x 2 = c/a. Calculemos um exemplo prático, seja a equação x 2 100, 22x + 1, 2371 = 0, trabalhando com uma mantissa com 5 dígitos temos: b 2 = 10044 b 2 4ac = 10039 b 2 4ac = 100, 19. (5) Calculando as raízes pelas fórmulas apresentadas no primeiro procedimento temos x 1 = (100, 22 + 100, 19)/2 = 100, 20 x 2 = (100, 22 100, 19)/2 = 0, 015. (6) Agora, usando o valor de x 1 e o segundo procedimento temos x 2 = 1,2371 100,20 = 0, 012346. Substituindo na função f(x) = x 2 100, 22x + 1, 2371, verificamos que no primeiro procedimento f(x 2 ) = 0, 26597, enquanto que no segundo f(x 2 ) = 6, 3696 10 5. Dependendo da precisão desejada, poderíamos considerar a resposta do segundo procedimento como sendo exata. Referências [1] RUGGIERO, M.A.G. e ROCHA LOPES, V.L. Cálculo Numérico - Aspectos Teóricos e Computacionais. MAKRON Books,1996 [2] CUNHA, M.C.C. Métodos Numéricos. Campinas, Editora da Unicamp, 2000. [3] CAMPOS Filho,F.F. Algorítmos Numéricos. [4] SPERANTIO,D.,MENDES,J.T.,SILVA,L.H.M. Cálculo Numérico. São Paulo, Prentice Hall, 2003.