Чтобы передать функцию в качестве переменной, вам необходимо использовать функциональный дескриптор . Простой способ продемонстрировать это - использовать дескриптор функции для анонимной функции . Простая анонимная функция может быть определена следующим образом:
handle = @(arglist)anonymous_function
Таким образом, чтобы сделать анонимную функцию, которая добавляет 2 номера, вы могли бы сделать что-то вроде следующего:
f = @(a,b)a+b;
Вы можете использовать это, как и любой другая функция
>> f(1,2)
ans =
3
Если ФР только простое числовое значение, оно может быть определено следующим образом:
df = 0.4
Чтобы определить пару значений, вы можете сделать это следующим образом:
X0=[1 2]
Наконец, вы можете поместить все это вместе с этим примером функции (поместить это в файл под названием MyFunc). , ,
function out = myfunc(f,df,x0)
out = df * f(x0(1), x0(end));
Это то, что вы хотите? Меня слегка смутила «х0 - упорядоченная пара».