【发布时间】:2017-11-08 06:41:09
【问题描述】:
在查看一些 MATLAB 代码时,我发现了这个(简化版)
is = 1.414 % just any floating point value
tol=1.e-4
s=sign(is); if(s==0), s=1; end;
is=s*abs(is)*tol/eps
但这对我来说没有意义。和下面的代码有什么区别?
tol=1.e-4
is=is*tol/eps
虽然我没有 MATLAB,但操作看起来很简单,不会有任何混淆。但是,我也确信作者的意思是。
你有什么想法吗?
【问题讨论】:
-
s是否在代码中的其他任何地方使用过? -
@ammportal - s 不在其他地方使用。
-
那我看不出有什么理由使用复杂的代码。您编写的代码应该可以正常工作
标签: matlab sign equivalent epsilon