Why do I get a wrong value?

1 view (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)

Categories

Find more on Performance and Memory in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!