Você está na página 1de 16

Cálculo Numérico

Erros nas Operações Aritméticas de Ponto Flutuante


22/09/2020
Erros de Operações Aritméticas de Ponto
Flutuante
Erros de Operações Aritméticas de Ponto
Flutuante
Erros de Operações Aritméticas de Ponto
Flutuante
Erros de Operações Aritméticas de Ponto
Flutuante
Erros de Operações Aritméticas de Ponto
Flutuante
Erros de Operações Aritméticas de Ponto
Flutuante
Erros de Operações Aritméticas de Ponto
Flutuante
Erros de Operações Aritméticas de Ponto
Flutuante
• Exemplo: Determine a equação do erro operacional para a expressão
abaixo:
𝑡𝑡
𝑥𝑥 + 𝑦𝑦 × − 𝑤𝑤
𝑧𝑧
Por ordem de precedência operacional, resolvemos nesta sequência:
conteúdos de parênteses, potências, divisão, multiplicação, subtração e
soma. Portanto, teremos que:
Passo 1: Resolução do erro operacional da divisão
𝑥𝑥 + 𝑦𝑦 × 𝑎𝑎 − 𝑤𝑤
𝑡𝑡
Onde, 𝑎𝑎 = , então, 𝐸𝐸𝑂𝑂𝑎𝑎 = 𝐸𝐸𝑅𝑅𝑡𝑡 + 𝑅𝑅𝐴𝐴𝑎𝑎 = 𝐸𝐸𝑅𝑅𝑡𝑡 − 𝐸𝐸𝑅𝑅𝑧𝑧 + 𝑅𝑅𝐴𝐴𝑎𝑎
𝑧𝑧 𝑧𝑧
Erros de Operações Aritméticas de Ponto
Flutuante
• Passo 2: Resolução do erro operacional da multiplicação
𝑥𝑥 + 𝑏𝑏 − 𝑤𝑤
Onde, b = 𝑦𝑦 × 𝑎𝑎 , então, 𝐸𝐸𝑂𝑂𝑏𝑏 = 𝐸𝐸𝑅𝑅𝑦𝑦×𝑎𝑎 + 𝑅𝑅𝐴𝐴𝑏𝑏 = 𝐸𝐸𝑅𝑅𝑦𝑦 + 𝐸𝐸𝑅𝑅𝑎𝑎 + 𝑅𝑅𝐴𝐴𝑏𝑏 ,
Mas, 𝐸𝐸𝑅𝑅𝑎𝑎 = 𝐸𝐸𝑂𝑂𝑎𝑎 = 𝐸𝐸𝑅𝑅𝑡𝑡 − 𝐸𝐸𝑅𝑅𝑧𝑧 + 𝑅𝑅𝐴𝐴𝑎𝑎 , consequentemente,
𝐸𝐸𝑂𝑂𝑏𝑏 = 𝐸𝐸𝑅𝑅𝑦𝑦 + 𝐸𝐸𝑅𝑅𝑡𝑡 − 𝐸𝐸𝑅𝑅𝑧𝑧 + 𝑅𝑅𝐴𝐴𝑎𝑎 + 𝑅𝑅𝐴𝐴𝑏𝑏

• Passo 3: Resolução do erro operacional da subtração


𝑥𝑥 + 𝑐𝑐
Onde, c = 𝑏𝑏 − 𝑤𝑤 , então,
𝑏𝑏� �
𝑤𝑤
𝐸𝐸𝑂𝑂𝑐𝑐 = 𝐸𝐸𝑅𝑅𝑏𝑏−𝑤𝑤 + 𝑅𝑅𝐴𝐴𝑐𝑐 = 𝐸𝐸𝑅𝑅𝑏𝑏 � 𝑤𝑤�
− 𝐸𝐸𝑅𝑅𝑤𝑤 � 𝑤𝑤�
+ 𝑅𝑅𝐴𝐴𝑐𝑐
𝑏𝑏− 𝑏𝑏−
Erros de Operações Aritméticas de Ponto
Flutuante
𝑡𝑡
Mas, b = 𝑦𝑦 × 𝑎𝑎 = 𝑦𝑦 × 𝑧𝑧
e

𝐸𝐸𝑅𝑅𝑏𝑏 = 𝐸𝐸𝑂𝑂𝑏𝑏 = 𝐸𝐸𝑅𝑅𝑦𝑦 + 𝐸𝐸𝑅𝑅𝑡𝑡 − 𝐸𝐸𝑅𝑅𝑧𝑧 + 𝑅𝑅𝐴𝐴𝑎𝑎 + 𝑅𝑅𝐴𝐴𝑏𝑏 , então,

𝑏𝑏� 𝑤𝑤

𝐸𝐸𝑂𝑂𝑐𝑐 = 𝐸𝐸𝑅𝑅𝑏𝑏 − 𝐸𝐸𝑅𝑅𝑤𝑤 + 𝑅𝑅𝐴𝐴𝑐𝑐 ∴

𝑏𝑏 − 𝑤𝑤� �
𝑏𝑏 − 𝑤𝑤

𝑡𝑡̅
𝑦𝑦� × 𝑧𝑧̅ 𝑤𝑤

𝐸𝐸𝑂𝑂𝑐𝑐 = [𝐸𝐸𝑅𝑅𝑦𝑦 + 𝐸𝐸𝑅𝑅𝑡𝑡 − 𝐸𝐸𝑅𝑅𝑧𝑧 + 𝑅𝑅𝐴𝐴𝑎𝑎 + 𝑅𝑅𝐴𝐴𝑏𝑏 ] − 𝐸𝐸𝑅𝑅𝑤𝑤 + 𝑅𝑅𝐴𝐴𝑐𝑐
̅𝑡𝑡 ̅𝑡𝑡
𝑦𝑦� × − 𝑤𝑤 � 𝑦𝑦� × 𝑧𝑧̅ − 𝑤𝑤

𝑧𝑧̅
Erros de Operações Aritméticas de Ponto
Flutuante
• Passo 3: Resolução do erro operacional da soma
𝑑𝑑
Onde, d = 𝑥𝑥 + 𝑐𝑐 , então, 𝐸𝐸𝑂𝑂𝑑𝑑 = 𝐸𝐸𝑅𝑅𝑥𝑥+𝑐𝑐 + 𝑅𝑅𝐴𝐴𝑑𝑑 ∴

𝑥𝑥̅ 𝑐𝑐 ̅
𝐸𝐸𝑂𝑂𝑑𝑑 = 𝐸𝐸𝑅𝑅𝑥𝑥 ̅ 𝑐𝑐 ̅
+ 𝐸𝐸𝑅𝑅𝑐𝑐 ̅ 𝑐𝑐 ̅
+ 𝑅𝑅𝐴𝐴𝑑𝑑 , mas,
𝑥𝑥+ 𝑥𝑥+

𝑡𝑡
𝑐𝑐 = 𝑏𝑏 − 𝑤𝑤 = 𝑦𝑦 × 𝑎𝑎 − 𝑤𝑤 = 𝑦𝑦 × 𝑧𝑧 − 𝑤𝑤 e

𝑡𝑡̅
𝑦𝑦� × 𝑤𝑤

𝐸𝐸𝑅𝑅𝑐𝑐 = 𝐸𝐸𝑂𝑂𝑐𝑐 = [𝐸𝐸𝑅𝑅𝑦𝑦 + 𝐸𝐸𝑅𝑅𝑡𝑡 − 𝐸𝐸𝑅𝑅𝑧𝑧 + 𝑅𝑅𝐴𝐴𝑎𝑎 + 𝑅𝑅𝐴𝐴𝑏𝑏 ] 𝑧𝑧 ̅ − 𝐸𝐸𝑅𝑅𝑤𝑤 + 𝑅𝑅𝐴𝐴𝑐𝑐
𝑡𝑡̅ 𝑡𝑡̅
𝑦𝑦� × 𝑧𝑧̅ − 𝑤𝑤 � 𝑦𝑦� × 𝑧𝑧̅ − 𝑤𝑤

Erros de Operações Aritméticas de Ponto
Flutuante
Então,
𝑡𝑡̅
𝑥𝑥̅ 𝑦𝑦� × − 𝑤𝑤 �
𝑧𝑧̅
𝐸𝐸𝑂𝑂𝑑𝑑 = 𝐸𝐸𝑅𝑅𝑥𝑥 + 𝐸𝐸𝑅𝑅𝑐𝑐 + 𝑅𝑅𝐴𝐴𝑑𝑑 ∴
𝑡𝑡̅ 𝑡𝑡̅
𝑥𝑥̅ + 𝑦𝑦� × 𝑧𝑧̅ − 𝑤𝑤
� 𝑥𝑥̅ + 𝑦𝑦� × 𝑧𝑧̅ − 𝑤𝑤�

𝑡𝑡̅ 𝑡𝑡̅
𝑦𝑦� × − 𝑤𝑤
𝑥𝑥̅ 𝑦𝑦� ×
𝑧𝑧̅ 𝑤𝑤
� 𝑧𝑧̅ �
𝐸𝐸𝑂𝑂𝑑𝑑 = 𝐸𝐸𝑅𝑅𝑥𝑥 + [𝐸𝐸𝑅𝑅𝑦𝑦 + 𝐸𝐸𝑅𝑅𝑡𝑡 − 𝐸𝐸𝑅𝑅𝑧𝑧 + 𝑅𝑅𝐴𝐴𝑎𝑎 + 𝑅𝑅𝐴𝐴𝑏𝑏 ] − 𝐸𝐸𝑅𝑅𝑤𝑤 + 𝑅𝑅𝐴𝐴𝑐𝑐 + 𝑅𝑅𝐴𝐴𝑑𝑑
𝑡𝑡̅ 𝑡𝑡̅ 𝑡𝑡̅ 𝑡𝑡̅
𝑥𝑥̅ + 𝑦𝑦� × 𝑧𝑧̅ − 𝑤𝑤
� 𝑦𝑦� × − 𝑤𝑤
𝑧𝑧̅ � 𝑦𝑦� × 𝑧𝑧̅ − 𝑤𝑤
� 𝑥𝑥̅ + 𝑦𝑦� × − 𝑤𝑤
𝑧𝑧̅ �

𝐸𝐸𝑂𝑂𝑑𝑑 = 𝐸𝐸𝑂𝑂 𝑡𝑡
𝑥𝑥+𝑦𝑦× −𝑤𝑤
𝑧𝑧
Erros de Operações Aritméticas de Ponto
Flutuante
• Exercícios
Determine os erros de operações aritméticas para as expressões abaixo.
a) 𝑥𝑥 3
b) 𝑥𝑥 × 𝑡𝑡 −1 × 𝑤𝑤
Erros de Operações Aritméticas de Ponto
Flutuante
Soluções:
a) 𝐸𝐸𝑅𝑅𝑥𝑥 3 = 3𝐸𝐸𝑅𝑅𝑥𝑥 + 𝑅𝑅𝐴𝐴𝑎𝑎 + 𝑅𝑅𝐴𝐴𝑏𝑏 = 3𝐸𝐸𝑅𝑅𝑥𝑥 + 2𝑅𝑅𝐴𝐴
b) 𝐸𝐸𝑅𝑅(𝑥𝑥×𝑡𝑡 −1 ×𝑤𝑤) = 𝐸𝐸𝑅𝑅𝑥𝑥 − 𝐸𝐸𝑅𝑅𝑡𝑡 + 𝑅𝑅𝐴𝐴𝑎𝑎 + 𝐸𝐸𝑅𝑅𝑤𝑤 + 𝑅𝑅𝐴𝐴𝑏𝑏 ∴
𝐸𝐸𝑅𝑅(𝑥𝑥×𝑡𝑡 −1 ×𝑤𝑤) = 𝐸𝐸𝑅𝑅𝑥𝑥 − 𝐸𝐸𝑅𝑅𝑡𝑡 + 𝐸𝐸𝑅𝑅𝑤𝑤 + 2𝑅𝑅𝑅𝑅
Erros de Operações Aritméticas de Ponto
Flutuante
• Seja uma máquina com mantissa t = 4 e os valores exatos das variáveis
abaixo:
• 𝑥𝑥 = 0,95716 × 10−3
• 𝑦𝑦 = 0,12470 × 10−2
• 𝑧𝑧 = 0,25416 × 100
• 𝑡𝑡 = 0,17449 × 103
Determine o valor do erro operacional de aritmética de ponto flutuante
para a expressão a seguir, admitindo a máquina descrita acima.
𝑦𝑦
𝑡𝑡 − 𝑧𝑧 +
𝑥𝑥

Você também pode gostar