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

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)

Categories

Asked:

on 25 Jun 2015

Commented:

on 25 Jun 2015

Community Treasure Hunt

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

Start Hunting!