在阅读数值方法时,减法消除通常是一个主题。
取消的简单示例:
a = 1;
b = 1e-16;
a-(a+b) = 0
因此,我们丢失了b的所有信息。
但是,我很少读到有关如何检查此问题的信息。我们不能使用简单的函数减去数字,这也会警告我们一些问题?示例:
function c = subtract(a,b)
c = a-b;
if abs(c) < 1e-14*a
disp('Warning: Low precision on subtraction');
end
end
此简单功能可能有一些不足之处-这只是我的第一个想法。无论如何,这样的事情会起作用吗?为什么不这样做呢? (即我以前从未见过/听说过这种检查)。