Cálculo Numérico
Universidade Federal do Pará
O computador representa apenas um subconjunto finito dos números reais. Toda simulação de Engenharia carrega erro — a questão é quantificá-lo e controlá-lo.
Note
O objetivo não é eliminar o erro, mas garantir que ele permaneça abaixo da tolerância exigida pela aplicação.
| Fonte | Origem |
|---|---|
| Modelagem | simplificações físicas do problema |
| Dados | medições e parâmetros de entrada |
| Truncamento | substituir um processo infinito por um finito |
| Arredondamento | representação finita dos números |
O cálculo numérico atua sobre os erros de truncamento e arredondamento.
Seja \(\hat{x}\) uma aproximação do valor exato \(x\):
\[E_{\text{abs}} = |x - \hat{x}|, \qquad E_{\text{rel}} = \frac{|x - \hat{x}|}{|x|}\]
O erro relativo é adimensional e mais informativo, pois independe da escala da grandeza.
Tip
Diz-se que \(\hat{x}\) tem \(d\) dígitos significativos corretos quando \(E_{\text{rel}} \lesssim 0{,}5 \times 10^{-d}\).
Um número é armazenado como \(\;\pm\, (1.f) \times 2^{e}\):
\[\underbrace{s}_{1\text{ bit}} \;\; \underbrace{e}_{11\text{ bits}} \;\; \underbrace{f}_{52\text{ bits}} \qquad (\text{precisão dupla})\]
O épsilon de máquina \(\varepsilon_m\) é a distância de \(1\) ao próximo número representável:
\[\varepsilon_m = 2^{-52} \approx 2{,}22 \times 10^{-16}\]
Important
\(0{,}1\) não tem representação exata em binário: 0.1 + 0.2 == 0.3 resulta False.
A subtração de dois números próximos destrói dígitos significativos:
\[\frac{1 - \cos x}{x^2}, \qquad x \to 0\]
Para \(x = 10^{-8}\), o numerador perde precisão: \(\cos x \approx 1\).
A reformulação algébrica evita a subtração crítica.
A fórmula clássica sofre cancelamento quando \(b^2 \gg 4ac\) e \(b>0\) (em \(-b + \sqrt{\Delta}\)):
A forma estável calcula uma raiz com sinal seguro e a outra por \(x_1 x_2 = c/a\).
O número de condição mede a sensibilidade da saída a perturbações na entrada:
\[\kappa = \left| \frac{x\, f'(x)}{f(x)} \right|\]
0.1 + 0.2 != 0.3 e quantifique o erro absoluto.