转换匿名函数的输入
问题描述:
我有一个匿名函数A
带两个参数。我需要转换这个函数,所以它需要一个参数,通过改变另一个参数为常量。转换匿名函数的输入
例如具有如下功能: A = @(X, Y) X + Y;
现在,我想有: B = @(Y) 3 + Y;
这似乎是在数学做一个正常的事情,所以我想有一种方法做这样的事情MATLAB。虽然我找不到解决方案。
的原因,我需要做这样的事情是,我有做对A
一些计算功能,还需要解决问题时的A
的论据之一是恒定的。例如,找到X = 3
的最小A
。
答
您可以使用相同的匿名函数,并把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
这解释了为什么没有内置功能。我喜欢它,非常聪明 –