Small matrix values

14 views (last 30 days)
Nikolaos
Nikolaos on 5 Dec 2011
Answered: narendra kumar on 23 Jul 2016
Hallo,
for a given matrix is there an efficient way in matlab to make its small values (e.g. smaller than 0.001) set as zero?
Thanks in advance

Accepted Answer

Andrei Bobrov
Andrei Bobrov on 5 Dec 2011
e.g. A - your matrix
A(abs(A)<1e-3)=0
  2 Comments
Nikolaos
Nikolaos on 5 Dec 2011
thanx a lot, but what if i want to set zero to the matrix values which have either real part <0.001 and imaginary value <0.001
Walter Roberson
Walter Roberson on 5 Dec 2011
A(abs(real(A))<0.001 | abs(imag(A))<0.001) = 0;
Note though that if you had a number such as 12345+0i then this would be set to 0, because you asked for the value to be set to 0 if *either* the real or imaginary part were small. You might wish to change the | to &

Sign in to comment.

More Answers (1)

narendra  kumar
narendra kumar on 23 Jul 2016
A(abs(real(A))<0.001

Community Treasure Hunt

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

Start Hunting!