Info

This question is closed. Reopen it to edit or answer.

hi :) I need help , I have an array of float angles , I want to find the indexes of angles in the range -pi/M<theta<=pi/M thanks

1 view (last 30 days)
I try the following code:
(The problem is that this gives me also theta = -pi/M )
tolerance = 10^-4
M = 4;
thetaindxes_in_range = find(abs((abs(theta(:,1))-pi/M)<=tolerance));% theta

Answers (1)

Image Analyst
Image Analyst on 3 Jun 2017
Then don't use abs(). Do each comparison separately. Like this:
M = 4;
indexesInRange = (theta > -pi/M) & (theta <= pi/M)
theta_in_range = theta(indexesInRange)
  3 Comments
fatema hamodi
fatema hamodi on 3 Jun 2017
sorry it's not working well because the following two lines code give the same result but they shouldn't give the same result because the second range contain also theta=-pi/M while the first didn't contain it
indexesInRange =(theta +pi/M>tol) & (theta-pi/M <= tol)
and
indexesInRange =(theta +pi/M>=tol) & (theta-pi/M <= tol)

This question is closed.

Tags

Community Treasure Hunt

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

Start Hunting!