Matlab函数和参数

Matlab函数和参数,matlab,Matlab,假设我们有一个函数定义为: 函数(f,df,x0) 其中f是函数,df是其导数,x0是初始点。我们如何在命令行上定义f?您使用内联定义吗?那么df和x0呢?如果df是一个梯度呢?另外,如果x0是一个有序对,您如何在命令行中定义它?要将函数作为变量传递,您需要使用函数句柄。演示这一点的一个简单方法是使用匿名函数的函数句柄。一个简单的匿名函数可以定义如下: handle = @(arglist)anonymous_function 因此,要创建一个添加两个数字的匿名函数,可以执行以下操作: f =

假设我们有一个函数定义为:

函数(f,df,x0)


其中f是函数,df是其导数,x0是初始点。我们如何在命令行上定义f?您使用内联定义吗?那么df和x0呢?如果df是一个梯度呢?另外,如果x0是一个有序对,您如何在命令行中定义它?

要将函数作为变量传递,您需要使用函数句柄。演示这一点的一个简单方法是使用匿名函数的函数句柄。一个简单的匿名函数可以定义如下:

handle = @(arglist)anonymous_function
因此,要创建一个添加两个数字的匿名函数,可以执行以下操作:

f = @(a,b)a+b;
您可以像使用任何其他函数一样使用它

>> f(1,2)

ans =

     3
如果df只是一个简单的数值,则可以按如下方式定义:

df = 0.4
要定义一对值,可以这样做:

X0=[1 2]
最后,您可以将其与这个示例函数放在一起(将其放在一个名为myfunc的文件中)

这是你想要的吗?我对“x0是有序对”有点困惑

function out = myfunc(f,df,x0)

out = df * f(x0(1), x0(end));