转换匿名函数的输入

时间:2017-11-25 13:24:35

标签: matlab function arguments anonymous-function

我有一个匿名函数A有两个参数。我需要转换这个函数,因此它需要一个参数,通过将另一个参数更改为常量。

例如有一个功能: A = @(X, Y) X + Y; 我想现在有: B = @(Y) 3 + Y;

这在数学中似乎是正常的事情,所以我想有一种方法可以在MATLAB中做这样的事情。我找不到解决办法。

我需要做这样的事情的原因是我有一个函数可以对A进行一些计算,但是当A的一个参数是常量时,还需要解决问题。例如,为A找到X = 3的最小值。

1 个答案:

答案 0 :(得分:2)

您可以使用相同的匿名函数并将X作为3添加到其中,但如果您想创建另一个匿名函数,请按以下步骤操作:

A = @(X, Y) X + Y;   
B = @(Y) A(3,Y);     %Here you have put X=3

验证:

>> A(3,4)

ans =

     7

>> B(4)

ans =

     7