finding x of y

4 views (last 30 days)
soloby
soloby on 25 Jun 2015
Commented: soloby on 25 Jun 2015
x = -10:0.1:10;
f1 = trapmf(x,[-2 0 0 2]);
index = find(f1 ==.05);
Xidx = x(index)
Why would Xidx give me an empty matrix 1-by-0?
I know for a fact that f1 has 0.05 at the 82nd iteration

Accepted Answer

Azzi Abdelmalek
Azzi Abdelmalek on 25 Jun 2015
Edited: Azzi Abdelmalek on 25 Jun 2015
Try this
x = -10:0.1:10;
f1 = trapmf(x,[-2 0 0 2])
index=find(abs(f1-0.5)<10^(-10))
Xidx=x(index)
And read this
  1 Comment
soloby
soloby on 25 Jun 2015
this works perfectly, thanks.
One more question, if i wanted to do this for all values of f1, would a for loop be sufficient?
something like
x = -10:0.1:10;
f1 = trapmf(x,[-2 0 0 2]);
for x = -10:0.1:10;
f1 = trapmf(x,[-2 0 0 2])
index=find(abs(f1-0.5)<10^(-10))
Xidx=x(index)
end
I'm curious how you got the f1-0.5 < 10^-10 part.,
thanks

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!