Why do I get a wrong value?

2 Ansichten (letzte 30 Tage)
Ani Asoyan
Ani Asoyan am 10 Jun. 2020
Bearbeitet: Paresh yeole am 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 Kommentar
Paresh yeole
Paresh yeole am 10 Jun. 2020
Bearbeitet: Paresh yeole am 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 :

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

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

Weitere Antworten (0)

Community Treasure Hunt

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

Start Hunting!

Translated by