[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[obm-l] Cálculo Numérico - Ponto Flutuante



Olá!

Estou estudando cálculo numérico pela obra "Cálculo Numérico - Aspectos Teóricos e Computacionais" e logo no primeiro exercício do primeiro capítulo estou em dúvida na obtenção da resposta. Irei colocar vários conceitos retirados do livro para que o exercício faça sentido no contexto do livro.

Exercício:
Seja um sistema de aritmética de ponto flutuante de quatro dígitos, base decimal e com acumulador de precisão dupla. Dados os números:
x = 0.7237*10^4 ; y = 0.2145*10^(-3) ; z = 0.2585*10^1
efetue as seguintes operações e obtenha o erro relativo no resultado, supondo que x, y e z estão exatamente representados:
a) x + y + z
b) x - y - z
c) x/y
d) (xy)/z
e) x(y/z)

Irei detalhar apenas a) pois os outros irei tentar resolver assim que sanar minha dúvida.

Solução:
Já que o problema diz que x, y e z estão exatamente representados podemos efetuar as operações com a quantidade de casas decimais que quisermos (existe até um exemplo no livro em que a operação é efetuada com a quantidade de casas necessárias, sem limitação). Dessa forma, seguindo a seqüência de operações e efetuando x + y primeiro, temos que passar a potência da base 10 de y para ser igual a 4 (no livro é citado que se passe o valor da menor potência para a maior antes dos cálculos). Assim:
x + y = 0.7237*10^4 + 0.00000002145*10^4 = 0.72370002145*10^4
x + y + z = 0.72370002145*10^4 + 0.0002585*10^4 = 0.72395852145*10^4

Como a resposta deve ser dada com quatro dígitos:
Truncamento: x + y + z = 0.7239*10^4
Arredondamento: x + y + z = 0.7240*10^4 (já que o quinto dígito é 5, essa é a resposta encontrada no final do livro)

Qual seria a importância de informar um acumulador de precisão dupla??? Seria considerar os resultados intermediários com 8 dígitos decimais??? Qual a influência disso na resposta??? O livro cita que geralmente é efetuado truncamento ao invés de arredondamento porque o último necessita de mais tempo de execução.



Erro Relativo após Truncamento: ER(x+y+z) < 10^(-3)
Erro Relativo após Arredondamento: ER(x+y+z) < 0.5*10^(-3)

O erro relativo que está como resposta no livro é ER(x+y+z) < 10^(-3), mas isso contraria a demonstração dada no próprio livro dos valores limite dos erros absoluto e relativo sendo que para o erro relativo seriam:

Erro Relativo após Truncamento: ER < 10^(-t+1)
Erro Relativo após Arredondamento: ER < 0.5*10^(-t+1)

onde t é a quantidade de dígitos na representação da mantissa do número, que no caso deste exercício é 4.

A demonstração dos erros é bem clara e realmente não entendi porque a resposta da operação é arredondada e o erro relativo encontrado é para uma operação de truncamento.

Colocarei abaixo as respostas das outras letras.

b) x - y - z = 0.7234*10^4 e ER < 1.0002*10(-3) (de onde surgiu esse 1.0002 ???)
c) x/y = 0.3374*10^8 e ER < 0.5*10^(-3)
d) (xy)/z = 0.6004 e ER < 10^(-3)
e) x(y/z) = 0.6005 e ER < 10^(-3)

Me desculpem se estou parecendo "folgado" por pedir a resolução destes problemas.

Muito obrigado!

--
Henrique