Find specific point in unknown "function"

1 回表示 (過去 30 日間)
Peter Uwsen
Peter Uwsen 2019 年 3 月 29 日
コメント済み: Peter Uwsen 2019 年 3 月 29 日
Hello,
I have the following problem:
I do know the "shape" of the relationship between two variables x and y, but I don't know the exact values and it takes a lot of time to calculate them.. (for each x I can find an y)
I'm interested in finding the point, where y=1. To get there I want to have to calculate as few values as possible.
Does anyone know an algorithm, that could help me do this and is more "efficient" than just increeasing gradualy x from x_start till I get the desired y?
Thanks in advance!
PS: here you can see the genmeral shape of the relationship:
function.jpg
  3 件のコメント
KSSV
KSSV 2019 年 3 月 29 日
interp1....
Jan
Jan 2019 年 3 月 29 日
@Torsten: I'd vote for your solution, if it is posted as answer.

サインインしてコメントする。

採用された回答

Alan Weiss
Alan Weiss 2019 年 3 月 29 日
編集済み: Alan Weiss 2019 年 3 月 29 日
The most efficient way is to use fzero as Torsten said. Your function is @(x)y(x)-1. For the most efficiency, set the initial point x0 to an interval [x1,x2] where the function changes sign between x1 and x2.
Alan Weiss
MATLAB mathematical toolbox documentation
P.S. If you have Optimization Toolbox, then fsolve can be even faster than fzero.
  1 件のコメント
Peter Uwsen
Peter Uwsen 2019 年 3 月 29 日
Ok cool!
Thanks for the quick answers :)

サインインしてコメントする。

その他の回答 (0 件)


Translated by