Does matlab have a function that says "If zero is near?

24 次查看(过去 30 天)
I need a command that checks that the number is near zero.
  1 个评论
Jan
Jan 2017-8-12
编辑:Jan 2017-8-12
Note that "near zero" is not well defined. Is 0.00001 near zeros or only 1e-100?

请先登录,再进行评论。

回答(1 个)

Star Strider
Star Strider 2017-8-12
There is not built-in MATLAB function for that.
It is possible to create one easily enough:
nearZero = @(x,tol) abs(x) < tol; % Test If ‘x’ Is Within ‘tol’ OF Zero
tol = 0.5;
x = rand(1,6) .* (-2:3);
Test = [x; nearZero(x,tol)]
Test =
-0.87571 -0.057386 0 0.090743 1.0487 0.082315
0 1 1 1 0 1
  2 个评论
John D'Errico
John D'Errico 2017-8-12
+1. Or you can make it an m-file, if this is something you wish to keep around forever because you use it often. To be honest, I think most of us don't bother, just writing the test like (abs(x)<tol) in our sleep as we need it. That is why there is no function to do this explicitly in MATLAB.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Testing Frameworks 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by