Why do I get a wrong value?

4 views (last 30 days)
Ani Asoyan
Ani Asoyan on 10 Jun 2020
Edited: Paresh yeole on 10 Jun 2020
Hi.. here's my code
x=[0.1, 0.5, 1]
x_e=[0.1, 0.5, 1]
g=x.^2+2*x_e
g(2)
x(find(g(2)))
I want to find which x value corresponds to g function's 2nd value, but it gives me wrong answer: x=0.1, but the right one is x=0.5. How can I fix it?
  1 Comment
Paresh yeole
Paresh yeole on 10 Jun 2020
Edited: Paresh yeole on 10 Jun 2020
find(g(2))
will return 1 as g(2) is greater than zero.
if you have to find corresponding x value then use
find(x == g(2))
But in your case it will return empty vector as there is no value in x which is equal to 2nd value in g.
Read more about find :

Sign in to comment.

Accepted Answer

madhan ravi
madhan ravi on 10 Jun 2020
Edited: madhan ravi on 10 Jun 2020
X = interp1(g,x,g(2))
%or
X = x(abs( g - g(2) ) < 1e-2)

More Answers (0)

Community Treasure Hunt

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

Start Hunting!