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

24 views (last 30 days)
I need a command that checks that the number is near zero.
  1 Comment
Jan
Jan on 12 Aug 2017
Edited: Jan on 12 Aug 2017
Note that "near zero" is not well defined. Is 0.00001 near zeros or only 1e-100?

Sign in to comment.

Answers (1)

Star Strider
Star Strider on 12 Aug 2017
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 Comments
John D'Errico
John D'Errico on 12 Aug 2017
+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.

Sign in to comment.

Categories

Find more on Testing Frameworks in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!