2017-11-25 234 views
0

我有一个匿名函数A带两个参数。我需要转换这个函数,所以它需要一个参数,通过改变另一个参数为常量。转换匿名函数的输入

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

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

的原因,我需要做这样的事情是,我有做对A一些计算功能,还需要解决问题时的A的论据之一是恒定的。例如,找到X = 3的最小A

回答

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 
+0

这解释了为什么没有内置功能。我喜欢它,非常聪明 –