У меня проблема с оценкой.
У меня есть функция, которая зависит от значений неизвестного вектора V = [v1,…, v4].
У меня также есть вектор справочных данных YREF = [yref1,…, yrefn].
Я хотел бы написать функцию, которая возвращает вектор Y (чтобы сравнить его позже, скажем, используя lsqnonlin). Я знаю о «arrayfun», но, похоже, он не работает.
У меня есть подфункция, которая возвращает конкретное значение из диапазона [-100, 100],
%--------------------------------------------------------------------------
function y = SubFunction(Y, V)
y = fzero(@(x) v(1).*sinh(x./v(2)) + v(3).*x - Y, [-100 100]);
end
%--------------------------------------------------------------------------
затем я делаю некоторые операции с результатами:
%--------------------------------------------------------------------------
function y = SomeFunction(Y,V)
temp = SubFunction (Y,V);
y = temp + v(4).*Y;
end
%--------------------------------------------------------------------------
Эти функции хорошо работают для одного значения Y, но не для всего вектора. Как сохранить результаты в матрицу для будущего сравнения?
Заранее спасибо
Chris