Baixe o app para aproveitar ainda mais
Prévia do material em texto
CÁLCULO NUMÉRICO Aula 1 Prof. Luan de Campos Corrêa, M.Sc. 26/07/2016 2 Tópicos • Introdução • Critérios de arredondamento • Operações com algarismos significativos • Números no sistema decimal e binário • Conversão de números nos sistemas decimal e binário • Erros 26/07/2016 3 Introdução • O cálculo numérico tem por objetivo estudar esquemas numéricos (algoritmos numéricos) para resolução de problemas que podem ser representados por um modelo matemático. • Um esquema é eficiente quando este apresenta soluções de uma precisão desejada com custo computacional baixo: tempo de execução + memória • Os esquemas numéricos nos fornecem aproximações para o que seria a solução exata do problema. 26/07/2016 4 Introdução • Os erros cometidos na aproximação são decorrentes da discretização do problema: passar do modelo matemático para o esquema numérico e da forma como as máquinas representam os dados numéricos. • Sendo assim, a obtenção de uma solução numérica para um problema físico por meio da aplicação de métodos numéricos nem sempre fornece valores que se encaixam dentro de limites razoáveis. 26/07/2016 5 Introdução • Como exemplo de discretização, temos o cálculo de uma aproximação para a derivada de uma função 𝑓(𝑥) num ponto 𝑥. • O modelo matemático é dado por: • Um esquema numérico para aproximar a derivada é dado por tomar ℎ “pequeno” e calcular: • Neste caso quanto menor o valor de ℎ mais preciso será o resultado, mas em geral, este esquema não fornecerá a solução exata. 𝑓′ 𝑥 = lim ℎ→0 𝑓 𝑥 + ℎ − 𝑓 𝑥 ℎ 𝑓′ 𝑥 ≈ 𝑓 𝑥 + ℎ − 𝑓 𝑥 ℎ 26/07/2016 6 Introdução • A representação de números em máquinas digitais (calculadoras, computadores, etc.) é feita na forma de ponto flutuante com um número finito de dígito. • Logo, os números que tem representação infinita (ex: 1 3 , π, 2) são representados de forma truncada. • Em aritmética computacional é possível que para um dado A exista um 𝜀 ≠ 0 tal que A + 𝜀 = 𝐴 • Analiticamente a expressão anterior é verdadeira se e somente se 𝜀 = 0. 26/07/2016 7 Introdução • Outro fator que pode influenciar no resultado é o tipo de máquina em que estamos trabalhando. • Em uma calculadora que represente os números com 7 dígitos teríamos: 1 3 + 1 3 + 1 3 = 0,999999 • Enquanto que em outras calculadoras poderíamos ter como resposta um falso 1, pois, internamente estas calculadoras trabalham com mais dígitos do que é apresentado no visor e antes do resultado ser apresentado este é arredondado. 26/07/2016 8 Introdução • Os esquemas numéricos são classificados como esquemas diretos e esquemas iterativos. • Os esquemas diretos são aqueles que fornecem a solução após um número finito de passos. • Os esquemas iterativos são aqueles que repetem um número de passos até que um critério de parada seja satisfeito. • Outro fator que pode influenciar nos resultados é a linguagem de programação usada na implementação dos algoritmos Pascal, Fortran, C++, MATLAB... 26/07/2016 9 Introdução • Deve-se apresentar noções sobre fontes de erros, para que seja possível controlá-los ou, idealmente, evitá-los. • Para facilitar a apresentação das fontes de erros, o processo de solução de um problema físico por meio da aplicação de métodos numéricos pode ser resumido como: Problema ou fenômeno Modelo matemático Solução Modelagem Resolução 26/07/2016 10 Introdução • Duas fases podem ser identificadas no diagrama acima: - Modelagem: é a fase de obtenção de um modelo matemático que descreve o comportamento do problema que se quer estudar. - Resolução: é a fase de obtenção da solução do modelo matemático através da aplicação de métodos numéricos. Problema ou fenômeno Modelo matemático Solução Modelagem Resolução 26/07/2016 11 Introdução • Os resultados finais ainda podem estar distantes do que se esperaria obter, mesmo com todas as fases de resolução realizadas corretamente. • Os resultados obtidos dependem também: • da precisão dos dados de entrada • da forma como esses dados são representados • das operações numéricas efetuadas 26/07/2016 12 Critérios de arredondamento Norma ABNT NBR 5891 - Regras de arredondamento na numeração decimal 1. OBJETIVO Esta norma tem por fim estabelecer as regras de arredondamento na Numeração Decimal. 2. REGRAS DE ARREDONDAMENTO 2.1 Quando o algarismo imediatamente seguinte ao último algarismo a ser conservado for inferior a 5, o último algarismo a ser conservado permanecerá sem modificação. Exemplo: 1,3333 arredondado a primeira decimal: 1, 3 333 = 1,3 3,5144 arredondado a terceira decimal: 3,514 4 = 3,514 26/07/2016 13 Critérios de arredondamento Norma ABNT NBR 5891 2.2 Quando o algarismo imediatamente seguinte ao último algarismo a ser conservado for superior a 5, o último algarismo a ser conservado deverá ser aumentado de uma unidade. Exemplo: 1,6666 arredondados a segunda decimal: 1,66 66 = 1,67 2,710198 arredondado a quinta decimal: 2,71019 8 = 2,71020 26/07/2016 14 Critérios de arredondamento Norma ABNT NBR 5891 2.3 Quando o algarismo seguinte ao último algarismo a ser conservado for 5 seguido de zeros, dever-se-á arredondar o algarismo a ser conservado para o algarismo par mais próximo. Se o último a ser retirado for ímpar, aumentará uma unidade, Exemplo: 4,5500 arredondados a primeira decimal: 4, 5 500 = 4,6 Se for par o algarismo a ser conservado, ele permanecerá sem modificação. Exemplo: 4,8500 arredondados a primeira decimal: 4, 8 500 = 4,8 26/07/2016 15 Critérios de arredondamento Norma ABNT NBR 5891 2.2... ou, Quando o algarismo imediatamente seguinte ao último algarismo a ser conservado for 5 e seguido de no mínimo um algarismo diferente de zero, o último algarismo a ser conservado deverá ser aumentado de uma unidade. Exemplo: 4,8505 arredondados a primeira decimal: 4, 8 505 = 4,9 3,32501 arredondados a segunda decimal: 3,32 501 = 3,33 26/07/2016 16 Operações com algarismos significativos • A necessidade de fazer operações com algarismos significativos vem da necessidade de medir várias grandezas físicas (iguais ou diferentes) com aparelhos de precisão diferentes, e reuni-las através de uma equação matemática de forma a obter o valor da grandeza procurada. • Adição: O resultado da adição de várias medidas é obtido arredondando-se a soma da casa decimal da parcela mais pobre em decimais, após efetuar a operação. Exemplos: 27, 8 +, 1,326 + 0,06 = 29, 7 86 → 29,8 11,45 +, 93, 1 + 0,333 = 104, 8 83 → 104,9 26/07/2016 17 Operações com algarismos significativos • Subtração: A subtração é um caso particular da adição, adotando-se o mesmo critério apresentado. • Multiplicação: O produto de duas ou mais medidas deve possuir, em geral, o mesmo número de algarismos significativos da medida mais pobre em significativos. Exemplos: 18,2476− 16,72 = 1,52 76 → 1,53 127,36 − 68,297 = 59,06 3 → 59,06 Exemplos: 3,27251 ∗ 1,32 = 4,31 97132 → 4,32 0,452 ∗ 2671 = 1207 , 292 → 1,21𝑥103 = 12,1𝑥102 = 121𝑥10 26/07/2016 Operações com algarismos significativos • Divisão: A divisão é simplesmente um caso particular do produto, portanto, aplica-se a regra anterior. Exemplos: 63,72 23,1 = 2,75 8441558 → 2,76 0,451 2001 = 0,000225 3873 → 2,25𝑥10−4 = 0,225𝑥10−3 = 22,5𝑥10−5 952,003 2,1 = 45 3,334761905 → 4,5𝑥102 26/07/2016 19 Conversão de números nos sistemas decimal e binário • Com o objetivo de fornecer uma ideia do que ocorre no processo de mudança de base de um número, apresenta-se a conversão do sistema decimal para o binário e vice- versa, • Para depois abordar o sistema de aritmética de ponto flutuante que as máquinas utilizam para representar os números. 26/07/2016 20 Um número num sistema de bases • Em geral qualquer número pode ser decomposto numa soma dos dígitos que o constitui (𝑑) vezes potências da sua base (𝛽) (𝑁)𝐵= 𝑑𝑛 𝑑𝑛−1 𝑑𝑛−2…𝑑0 𝑑1 𝑑2 𝑑−𝑚 𝛽 (𝑁)𝐵= 𝑑𝑛𝛽 𝑛 + 𝑑𝑛−1𝛽 𝑛−1 + 𝑑𝑛−2𝛽 𝑛−2 +⋯𝑑0𝛽 0 + 𝑑−1𝛽 −1 + 𝑑−2𝛽 −2 ±𝑚𝛽−𝑚 Onde os dígitos 𝑑𝑗 pertencem ao números naturais e satisfazem a condição: 0 ≤ 𝑑𝑗 ≤ (𝛽 -1) 26/07/2016 21 Números na base 10 • Nesse caso todos os múltiplos e submúltiplos de um número são escritos com potências de 10. (1537)10= 1𝑥10 3 + 5𝑥102 + 3𝑥101 + 7𝑥100 (1537)10= 1𝑥1000 + 5𝑥100 + 3𝑥10 + 7𝑥1 (1537)10= 1537 (36,189)10= 3𝑥10 1 + 6𝑥100 + 1𝑥10−1 + 8𝑥10−2 + 9𝑥10−3 (36,189)10= 3𝑥10 + 6𝑥1 + 1𝑥0,1 + 8𝑥0,01 + 9𝑥0,001 (36,189)10= 36,189 (6,032𝑥1023)10= 6𝑥10 23 + 0𝑥1022 + 3𝑥1021 + 2𝑥1020 26/07/2016 22 Números na base 2 • Nesse caso todos os múltiplos e submúltiplos de um número são escritos com potências de 2. (10111)2= 1𝑥2 4 + 0𝑥23 + 1𝑥22 + 1𝑥21 + 1𝑥20 (10111)2= 1𝑥16 + 0𝑥8 + 1𝑥4 + 1𝑥2 + 1𝑥1 (10111)2= 23 (10,1)2= 1𝑥2 1 + 0𝑥20 + 1𝑥2−1 (10,1)2= 1𝑥2 + 0𝑥1 + 1𝑥 1 2 (10,1)2= 2,5 (10111)2= 1𝑥𝟏𝟎 1 + 6𝑥100 + 1𝑥10−1 + 8𝑥10−2 + 9𝑥10−3 (6,032𝑥1023)10= 6𝑥10 23 + 0𝑥1022 + 3𝑥1021 + 2𝑥1020 26/07/2016 23 Conversão de números nos sistemas decimal e binário • Para convertermos um número decimal para um número binário devemos aplicar: • um método para a parte inteira (divisões sucessivas) • e um método para a parte fracionária, se houver (multiplicações sucessivas). • Parte inteira • Divide-se sucessivamente a parte inteira do número de base 10 por 2, até que o último quociente seja igual a 1. 26/07/2016 24 Conversão de números nos sistemas decimal e binário • Parte fracionária • Utiliza-se o método das multiplicações sucessivas, que consiste em: a) multiplicar o número fracionário por 2; b) deste resultado, a parte inteira será o primeiro dígito do número na base 2 e a parte fracionária é novamente multiplicada por 2. 26/07/2016 25 Conversão de números nos sistemas decimal e binário • Parte fracionária • Um número real entre 0 e 1 pode ter representação finita no sistema decimal, mas representação infinita no sistema binário. • Isso pode acarretar a ocorrência de erros aparentemente inexplicáveis em cálculos efetuados em sistemas computacionais binários 26/07/2016 26 Exercício • Converta os seguintes números decimais para sua forma binária: a) 37 b) 0,217 (com cinco dígitos fracionários) 26/07/2016 27 Exercício • Converta os seguintes números binários para sua forma decimal: a) 101101 2 b) 0,1101 2 26/07/2016 28 Sistema de ponto flutuante normalizado • Muitas máquinas utilizam o sistema de aritmética de ponto flutuante para representar os números e executar as operações. • Um número real na base 𝛽 em aritmética de ponto flutuante de 𝑡 dígitos, tem a forma geral: • Onde: 𝑑𝑖′𝑠 dígitos da parte fracionária 𝑑1𝑑2𝑑3…𝑑𝑡 é a mantissa 𝑡 é o número de dígitos na mantissa; 𝛽 é a base em que a máquina opera (em geral, 2 ou 10); 𝑒 é o expoente no intervalo ±0, 𝑑1𝑑2𝑑3…𝑑𝑡 𝑥 𝛽 𝑒 26/07/2016 29 Sistema de ponto flutuante normalizado • O primeiro algarismo após a vírgula deve ser diferente de zero. • Um número não poderá ser representado na máquina com sistema de aritmética de ponto flutuante se o expoente 𝑒 estiver fora dos limites 𝑒𝑚í𝑛 e 𝑒𝑚á𝑥. • Ocorrerá “underflow” se resultar 𝑒 < 𝑒𝑚í𝑛 • E “overflow” se 𝑒 > 𝑒𝑚á𝑥. 26/07/2016 30 Sistema de ponto flutuante normalizado • Um sistema de ponto flutuante 𝐹 depende das variáveis: β, 𝑡, 𝑒𝑚í𝑛 e 𝑒𝑚á𝑥 • Pode ser representado pela função: 𝐹 = 𝐹(𝛽, 𝑡, 𝑒𝑚í𝑛, 𝑒𝑚á𝑥) • Onde a precisão da máquina com o sistema 𝐹 é definida pelo número de dígitos da mantissa 𝑡. 26/07/2016 31 Exercício • Considere uma aritmética de ponto flutuante 𝐹(10 , 2, −5 , 5) a) Sejam 𝑥 = 875 e 𝑦 = 3172. Calcular 𝑥 ∗ 𝑦 b) Sejam 𝑥 = 0,0064 e 𝑦 = 7312. Calcular 𝑥 ÷ 𝑦 c) Sejam 𝑥 = 4,32 e 𝑦 = 0,064. Calcular 𝑥 + 𝑦 d) Sejam 𝑥 = 372 e 𝑦 = 371. Calcular 𝑥 − 𝑦 e) Sejam 𝑥 = 691 e 𝑦 = 2,71. Calcular 𝑥 − 𝑦 26/07/2016 32 Erros na fase de modelagem • Ao se tentar representar um fenômeno do mundo físico por meio de um modelo matemático, raramente se tem uma descrição correta deste fenômeno. • Normalmente, são necessárias várias simplificações do mundo físico para que se tenha um modelo matemático com o qual se possa trabalhar. 26/07/2016 33 Erros na fase de resolução • Para a resolução de modelos matemáticos, muitas vezes torna-se necessária a utilização de instrumentos de cálculo que necessitam que sejam feitas certas aproximações. • Tais aproximações podem gerar erros e os principais estão relacionados aos erros de: • erro absoluto • erro relativo • erro de truncamento • erro de arredondamento 26/07/2016 34 Erros na fase de resolução – erro absoluto e erro relativo • A partir do momento em que se calcula um resultado por aproximação, é preciso saber como estimar ou delimitar o erro cometido na aproximação. • Para estimar o erro, recorre-se a dois conceitos: erro absoluto e erro relativo. • Seja 𝑥 um valor aproximado para uma quantidade cujo valor exato é 𝑥. • Erro absoluto 𝐸𝐴 = |𝑥 − 𝑥 | • Erro relativo 𝐸𝑅 = | 𝑥−𝑥 𝑥 | 26/07/2016 35 Erros na fase de resolução – erro absoluto e erro relativo • Então se define: • Erro absoluto 𝐸𝐴 = |𝑥 − 𝑥 | • Erro relativo 𝐸𝑅 = | 𝑥−𝑥 𝑥 | • O erro relativo é frequentemente dado como uma porcentagem. • O que se faz é obter um limitante superior ou uma estimativa para o módulo do erro. 26/07/2016 36 Exercício • Calcule os erros absoluto e relativo para os itens a seguir: a) 𝑥 = 7,6 e 𝑥 = 7,598 b) 𝑦 = 1532 e 𝑦 = 1537 c) 𝑧 = 0,000513 e 𝑧 = 0,00064526/07/2016 37 Erros na fase de resolução • Erro de arredondamento Um erro de arredondamento é a diferença entre a aproximação calculada de um número e o seu valor matemático exato. • Erro de truncamento É um erro inerente ao método numérico. Surge cada vez se substitui um processo matemático infinito por um processo finito ou discreto. • Sendo 200 3 = 66,666666… , deseja-se expressar o número com duas casas decimais após a vírgula. Arredondamento: 66,67 Truncamento: 66,66 26/07/2016 38 Erros na fase de resolução • Represente os números que seguem em ponto flutuante com cinco casas decimais usando a base 10 utilizando truncamento e utilizando arredondamento. Mostre também o valor obtido com uma calculadora (mais de cinco casas). a) 7 b) 200 3 c) 3 7000
Compartilhar