Cálculo Numérico Erros Prof. Jorge Cavalcanti jorge.cavalcanti@univasf.edu.br MATIAL ADAPTADO DOS SLIDES DA DISCIPLINA CÁLCULO NUMÉRICO DA UFCG - www.dsc.ufcg.edu.br/~cnum/
Erros - Roteiro Eistência Tipos Propagação 2
Erros - Eistência I Representação de números em um sistema computacional Todo esse processo de conversão é uma fonte de erros que pode afetar o resultado final dos cálculos. 3
Erros - Eistência I Erro Inerente Erro sempre presente nas soluções numéricas devido à incerteza sobre o valor real. E. 01: Representação intervalar de dados (50,3 ± 0,2) cm (1,57 ± 0,003) ml (110,276 ± 1,04) Kg Cada medida é um intervalo e não um número. 4
Erros - Eistência II Método Numérico Método adotado na resolução de um problema físico, mediante a eecução de uma sequência finita de operações aritméticas. Consequência Obtenção de um resultado aproimado, cuja diferença do resultado esperado (eato) denomina-se erro. 5
Erros - Eistência IV Natureza dos Erros I Erros inerentes ao processo de aquisição dos dados. Relativos à imprecisão no processo de aquisição/entrada, eternos ao processo numérico. 6
Erros - Eistência V Natureza dos Erros II Erros inerentes ao modelo matemático adotado: Relativos à impossibilidade de representação eata dos fenômenos reais a partir de modelos matemáticos. Necessidade de adotar condições que simplifiquem o problema, a fim de torná-lo numericamente solúvel. 7
Erros - Eistência VII Natureza dos Erros III Erros de truncamento Substituição de um processo infinito de operações por outro finito. Em muitos casos, o erro de truncamento é precisamente a diferença entre o modelo matemático e o modelo numérico. 8
Erros - Eistência II Erro de Truncamento Erro proveniente da limitação do número de iterações dos métodos numéricos durante a determinação de um valor de interesse. Número de iterações Teórico Infinito ou muito grande Prático Limitado por restrições associadas à capacidade de processamento/ armazenamento do sistema 9
Erros - Eistência III Erro de arredondamento Aproimação do valor de um número real para sua representação com um número finito de dígitos. Inerentes à estrutura da máquina e à utilização de uma aritmética de precisão finita. 10
Erros - Eistência III Erro de Representação Erro de truncamento Erro de Representação Associada à conversão numérica entre bases (representação humana e de máquina) ou à realização de operações aritméticas. Erro de Truncamento Associada à quantidade de informação que a máquina pode conter sob a forma de um número. 11
Erros - Eistência IV Representação dos números reais com um número finito de dígitos (aproimação). E. 02: Cálculo da área de uma circunferência de raio 100 m Possíveis resultados: (1) A = 31400 m 2 (2) A = 31416 m 2 Erro de (3) A = 31414,92654 m 2 Representação não tem representação finita - 3,14 (1), 3,1416 (2) e 3,141592654 (3) 12
Erros - Eistência V Representação dos números reais com um número finito de dígitos (aproimação). Dependência da representação numérica da máquina utilizada. (0,1) 10 = (0,00011001100110011...) 2 Erro de Representação Um número pode ter representação finita em uma base e não finita em outra Operações com dados imprecisos ou incertos acarretam a propagação do erro. 13
Erros - Eistência VI E. 03: Cálculo de S 3000 i i1 usando uma calculadora e um computador, para i = 0,5 e i = 0,1 i Calculadora Computador 0,5 S= 1500 S= 1500 0,1 S= 300 S=300,00909424 (precisão simples) S=299,999999999999720 (precisão dupla) 14
Erros - Eistência VII E. 04: Fazer a conversão de 0,1 de base 10 para a base 2 (0,1) 10 = (0,00011001100110011...) 2 (0,1) 10 não tem representação eata na base 2 A representação de um número depende da base em uso e do número máimo de dígitos usados em sua representação. 15
Erros - Eistência VIII E. 05: Programa simples que soma números reais: void main( ) { int i; float soma = 0; for (i=1;i<=10000;i++) soma = soma +.0001; printf ( Soma = %10.7f, soma); } A saída será o número 1.0000535, ao invés do número eato 1. O pequeno erro na representação do número decimal 0,0001 em binário se propagará pela soma, comprometendo o resultado final. 16
Erros - Eistência VIII Eatidão (Acurácia) Precisão I Uso incorreto como sinônimos na linguagem cotidiana (e mesmo em linguagem técnica). Eatidão Grau de concordância entre o resultado de uma medição e um valor verdadeiro do mensurando. Eatidão é um conceito qualitativo Precisão Grau de concordância entre resultados de medição obtidos sob as mesmas condições (repetitividade). Precisão é um conceito quantitativo 17
Eatidão (Acurácia) Erros - Eistência VIII Eatidão (Acurácia) Precisão II Precisão 18
Erros - Eistência VIII Inacurácia (ou Ineatidão) Desvio sistemático do valor real Imprecisão (ou Incerteza) Magnitude do espalhamento dos valores 19
Erros - Tipos I Absoluto Diferença entre o valor eato de um número e o seu valor aproimado. 20
Erros - Tipos II Relativo Razão entre o erro absoluto e o valor aproimado. ( ) Erro Percentual = 100% 21
Erros - Tipos III Erro Absoluto - Considerações I só poderá ser determinado se for conhecido com eatidão. Na prática, costuma-se trabalhar com um limitante superior para o erro, ao invés do próprio erro ( E < ε, onde ε é o limitante). E. 05: Para (3,14, 3,15) 0, 01 22
Erros - Tipos III Erro Absoluto - Considerações II E. 05: Sejam a = 3876,373 e b = 1,373 Considerando-se a parte inteira de a (a ) o erro absoluto será: a = a - a' = 0,373 e a parte inteira de b, b, o erro absoluto será: b = b - b' = 0,373 23
Erros - Tipos III Erro Absoluto - Considerações III Obviamente, o resultado do erro absoluto é o mesmo nos dois casos. Entretanto, o peso da aproimação em b é maior do que em a. 24
Erros - Tipos IV Erro Relativo - Consideração O erro relativo, entretanto, pode traduzir perfeitamente este fato, pois: 0,3 7 3 a 0,0 0 0 0 9 6 10 3 8 7 6 0,3 7 3 b 0,3 7 3 4 10 1 4-1 25
Erros - Tipos V E. 06: Cálculo do erro relativo considerando-se os números ā = 2112,9, ē = 5,3 e < 0,1 a = a - ā / ā = 0,1/2112,9 4,7 10-5 e = e - ē / ē = 0,1/5,3 0,02 Conclusão: a é representado com maior precisão do que e. 26
Erros - Tipos VIII Arredondamento Truncamento de dígitos Quanto menor for o erro, maior será a precisão do resultado da operação. 27
Erros - Tipos VI Arredondamento E. 07: Cálculo de digital: 2 utilizando uma calculadora Valor apresentado: 1,4142136 Valor real: 1,41421356... Ineistência de forma de representação de números irracionais com uma quantidade finita de algarismos. Apresentação de uma aproimação do número pela calculadora. Erro de arredondamento 28
Erros - Tipos VII Truncamento Associação ao método de aproimação empregado para o cálculo de uma função eata, a partir do uso de fórmulas aproimadas. E. 08: Cálculo do valor de e e partir da série e 1 2 2! 3 3! 4 4!... Impossibilidade de determinação do valor eato da função. 29
Relembrando... Representação em ponto flutuante - float Representação genérica ±(.d 1 d 2...d t ) (b) ep, t é o número de dígitos da mantissa; d 1 d 2...d t = mantissa, com 0 d i (b-1); d1 0; ep = epoente (inteiro com sinal), no intervalo [l,u] b = base do sistema 30
Arredondamento e Truncamento E. Representação de números em um sistema de três dígitos, b=10, l= -4 e u=4. Arredondamento Truncamento 1.25 0.125 10 0.125 10 10.053 0.101 10 2 0.100 10 2 2.71828 0.272 10 0.271 10 0,000007 Epoente < -4 idem 718235.82 Epoente > 4 idem 31
Arredondamento e Truncamento I Erros de Truncamento e Arredondamento - Demonstração Em um sistema que opera em ponto flutuante de t dígitos na base 10, e seja : = f.10 e + g.10 e-t (0,1 f 1 e 0,1 g 1) Para t = 4 e = 234,57, então: = 0,2345. 10 3 + 0,7. 10-1 f = 0,2345 g = 0,7 32 32
Erros - Truncamento No truncamento, g.10 e-t é desprezado e f. 10 e e t g.10 10 e t visto que g <1 g.10 et et 10 t1 10 e e f.10 0,1.10 pois 0,1 é o menor valor possível para f 33 33
Erros Arredondamento I No arredondamento simétrico (forma mais utilizada): f f.10.10 e e 10 et g 1 2, se (g é desprezado) g 1 2, se (soma 1 ao último dígito de f ) 34 34
Erros - Arredondamento II Se g 1 2, então: g.10 1 2 e t 10. e t g.10 et et 0,5.10 1.10 e e f.10 0,1.10 2 t1 35 35
Erros Arredondamento III Se e g 1 2, então: e e t e e t f.10 g.10 f.10 10 e t e t g 1.10. e t e t g.10 10 10 1 2 1/2. 10 1/2. 10 1/2. 10 et et et t1. 10 e et e e f f. 10 10. 10 0,1. 10 2 1 36 36
Arredondamento e Truncamento Erros de Truncamento e Arredondamento Sistema operando em ponto flutuante - Base 10, t dígitos. Erro de Truncamento 10 e Erro de Arredondamento e t 10 t 1 1 10 2 e t e 1 10 2 t 1 e - nº de dígitos inteiros t - nº de dígitos 37
Arredondamento e Truncamento II Sistema de aritmética de ponto flutuante de 4 dígitos, precisão dupla E. 09: Seja = 0,937.10 4 e = 0,1272.10 2. Calcular +. Alinhamento dos pontos decimais antes da soma = 0,937. 10 4 e = 0,001272. 10 4, + = 0,938272. 10 4 Resultado com 4 dígitos Arredondamento: + = 0,9383.10 4 Truncamento: + = 0,9382.10 4 38 38
Arredondamento e Truncamento III Sistema de aritmética de ponto flutuante de 4 dígitos, precisão dupla E. 10: Seja = 0,937.10 4 e = 0,1272.10 2. Calcular... = (0,937.10 4 ).(0,1272.10 2 ). = (0,937.0,1272).10 6. = 0,1191864.10 6 Resultado com 4 dígitos Arredondamento:. = 0,1192.10 6 Truncamento:. = 0,1191.10 6 39 39
Arredondamento e Truncamento Considerações Ainda que as parcelas ou fatores de uma operação possam ser representados eatamente no sistema, não se pode esperar que o resultado armazenado seja eato. e tinham representação eata, mas os resultados + e. tiveram representação aproimada. 40
Erros Propagação Propagação dos Erros: Durante as operações aritméticas de um método, os erros dos operandos produzem um erro no resultado da operação. Propagação ao longo do processo. Determinação do erro no resultado final obtido. 41
Erros Propagação E. 11: Suponha-se que as operações a seguir sejam processadas em uma máquina com 4 dígitos significativos e fazendo-se: 1 = 0,349110 4 e 2 = 0,234510 0, tem-se: (2 + 1) 1 = = (0,234510 0 + 0,349110 4 ) 0,349110 4 = 0,349110 4 0,349110 4 = 0,0000 2 + (1 1) = = 0,234510 0 + (0,349110 4 0,349110 4 ) = 0,2345 + 0,0000 = 0,2345 42
Erros Propagação Os dois resultados são diferentes, quando não deveriam ser, pois a adição é uma operação distributiva. (2 + 1) 1 = 0,0000 e 2 + (1 1) = 0,2345 Causa da diferença arredondamento feito na adição (2 + 1), cujo resultado tem 8 dígitos. A máquina só armazena 4 dígitos (desprezando os menos significativos). 43
Erros Propagação Resolução numérica de um problema Importância do conhecimento dos efeitos da propagação de erros: Determinação do erro final de uma operação numérica. Conhecimento da sensibilidade de um determinado problema ou método numérico. 44
Erros Propagação E. 12: Calcular o valor de 2 - e 3. 2 (erro de arredondamento) e 3 (erro de truncamento) Propagação dos erros nos valores de 2 e e 3 para o resultado de 2 - e 3 45
Erros Propagação E. 13: Dados a = 50 ± 3 e b = 21 ± 1, calcular a + b Variação de a 47 a 53 Variação de b 20 a 22 Menor valor da soma 47 + 20 = 67 Maior valor da soma 53 + 22 = 75 a + b = (50 + 21) ± 4 = 71 ± 4 67 a 75 46
Erros Propagação Análise dos Erros Absoluto e Relativo: Fórmulas para os erros nas operações aritméticas. Erros presentes nas parcelas ou fatores e no resultado da operação. Supondo um erro final arredondado, sendo e, tais que: e 47
Erros Propagação Adição Erro Absoluto Erro Relativo 48
Erros Propagação Subtração Erro Absoluto Erro Relativo 49
Erros Propagação Multiplicação Erro Absoluto.......... Erro Relativo... E A muito pequeno. 50
51 Erros Propagação Divisão Erro Absoluto Erro Relativo 1 1. Simplificação:... 1 1 1 3 2 (desprezam-se os termos de potência >1) 2 2. /
Erros Análise Nos erros anteriormente formulados, ainda não foi considerado o erro de arredondamento ou truncamento no resultado final. A análise completa da propagação do erro se faz considerando os erros nas parcelas ou fatores e no resultado de cada operação efetuada. 52
Erros Análise E. 14: Sejam e representados eatamente. Qual o erro relativo na operação +? RA RA = = 0, + =0 1 RA 10 2 t 1 Como e são representados eatamente, + se resume ao Erro Relativo de Arredondamento (RA) no resultado da soma. 53
Erros Análise Sistema de aritmética de ponto flutuante de 4 dígitos, precisão dupla. E. 15: Seja = 0,93710 4, = 0,127210 2 e z = 0,23110 1, calcular ++z e (++z), sabendo que, e z estão eatamente representados. Solução: Alinhando as vírgulas decimais = 0,93710 4 = 0,00127210 4 e z = 0,00023110 4 54
Erros Análise E. 15: Solução: A soma é feita por partes: (+)+z + = 0.9383 10 4 ++z = 0,9383 10 4 + 0,000231 10 4 ++z = 0,938531 10 4 ++z = 0,9385 10 4 (após o arredondamento) ++z= 0,9385 10 4 55
Erros Análise E. 15: s Solução: s s z z então RA s s sz s s RA s z z 0,938310 s z z RA s RA 4 = = 0, + =0 56
57 Erros Análise E. 15: Solução: z =0, z =0 1 t z 10 2 1 1 z 1 z RA RA z RA RA z RA z z z s z s z z s z 1 t 10 2 1 RA
58 Erros Análise E. 15: Solução: 1 t z 10 2 1 1 z 3 4 4 z 10 2 1 1 10 0,9385 10 0,9383 3 z 10 0, 9 9 9 8
Erros Análise E. 16: Supondo que é representado num computador por, que é obtido por arredondamento. Obter os limites superiores para os erros relativos de u 2 a) e w z 3 b) e 59
Erros Análise E. 16: Solução a): u 2 2. 2. 2 1 2. 2 10 u 10 t1 RA t 1 RA RA 2.RA 60
Erros Análise E. 16: w w w.. 2.RA. RA 2.RA 1 t1 w 2.RA 2. 10 10 2 RA t1 w u 10 t 1 61
Erros Sumário I 1. Erro relativo da soma Soma dos erros relativos de cada parcela, ponderados pela participação de cada parcela no total da soma. 2. Erro relativo da subtração Diferença dos erros relativos do minuendo e do subtraendo, ponderados pela participação de cada parcela no resultado da subtração. 62
Erros Sumário II 1. Erro relativo do produto Soma dos erros relativos dos fatores. 2. Erro relativo da divisão Diferença dos erros relativos do dividendo e do divisor. 63
Erros Eercícios 1. Seja um sistema de aritmética de ponto flutuante de 4 dígitos, base decimal e com acumulador de precisão dupla. Dados os números = 0,723710 4, = 0,214510-3 e z = 0,258510 1, efetuar as seguintes operações e obter o erro relativo nos resultados, supondo que,, e z estão eatamente representados. a) ++z b) / 64
Erros Eercícios 2. Considere uma máquina cujo sistema de representação de números é definido por b=10, t=5, l=-6 e u=6. Pede-se a) O maior e menor número em módulo, representados nesta máquina; b) Como será representado o número 392,856 nesta máquina, se for usado o arredondamento e o truncamento? c) Se a=356555 e b=2, qual o resultado da operação a+b? 65
Erros Eercícios 3. Sejam,, z e t representados eatamente. Qual o erro relativo total na operação u=(+ )z-t? 66
Erros - Bibliografia Ruggiero, M. A. Gomes & Lopes, V. L. da R. Cálculo Numérico: Aspectos teóricos e computacionais. MAKRON Books, 1996, 2ª ed. Asano, C. H. & Colli, E. Cálculo Numérico: Fundamentos e Aplicações. Departamento de Matemática Aplicada IME/USP, 2007. Sanches, I. J. & Furlan, D. C. Métodos Numéricos. DI/UFPR, 2006. 67