Я только начинаю изучать Matlab и много раз искал решение.
По сути, мне просто нужно построить функцию и затем манипулировать ею больше для последующих вопросов.
fplot(@(x) myfunc);
function y = myfunc(x)
y = (x^3) - (4 .* x^2) - 1
end
выдает эту ошибку
Warning: Function behaves unexpectedly on array inputs. To improve performance,
properly vectorize your function to return an output with the same size and shape as
the input arguments.
> In matlab.graphics.function.FunctionLine>getFunction
In matlab.graphics.function.FunctionLine/updateFunction
In matlab.graphics.function.FunctionLine/set.Function_I
In matlab.graphics.function.FunctionLine/set.Function
In matlab.graphics.function.FunctionLine
In fplot>singleFplot (line 234)
In fplot>@(f)singleFplot(cax,{f},limits,extraOpts,args) (line 193)
In fplot>vectorizeFplot (line 193)
In fplot (line 163)
In HWA1_2 (line 1)
Warning: Error updating FunctionLine.
The following error was reported evaluating the function in FunctionLine update: Not
enough input arguments.
Это работает, когда я просто использую fplot самостоятельно.
fplot((x^3)-(4*x^2)-1)
Если бы кто-нибудь мог указать, что я делаю неправильно, я был бы очень благодарен. Причина, по которой мне нужно, чтобы она была определена как функция, заключается в том, что мне нужно сделать больше манипуляций с ней позже.