标签: matlab
我有一个定义的数学函数:f =Inline('x1^2+x2^2+2*x1*x2','x1','x2')
f =Inline('x1^2+x2^2+2*x1*x2','x1','x2')
我有一个数组,表示x1和x2的数字值。 (例如,数组是A=[1 2])
A=[1 2]
我想自动完成获取f(x1,x2)的过程,但我无法找到Matlab可以接受数组并将值分配给x1和x2的正确方法
f(x1,x2)
x1
x2
如何将数组值传递给数学模型并获取函数值?
答案 0 :(得分:2)
您应该使用anonymous函数而不是inline,因为在将来的MATLAB版本中将删除inline。
inline
示例(来自docs):
sqr = @(x) x.^2; a = sqr(5) a = 25
在你的情况下:
f = @(x) x(1)^2+x(2)^2+2*x(1)*x(2);
现在它期望x是两个(或更多)值数组。
A = [1 2]; f(A) = 9
注意:强>
我的家用电脑上没有MATLAB,所以我实际上没有对它进行测试,但它应该让你朝着正确的方向前进。看看文档,你会没事的。