matlabFunction()
是一个可以将符号转换为匿名函数的函数。但是如何指定匿名函数上出现的输入参数?
例如,
x = sym('x', [3, 1])
func = matlabFunction(x)
它返回一个句柄:
func =
function_handle with value:
@(x1,x2,x3)[x1;x2;x3]
但是如何让它返回:?
@(x) [x(1); x(2); x(3)]
整个x
是输入参数,而不是它的每个元素。当x
有很长的colums时,这可能非常有用。
您可以通过第一个x
将comma separated list的元素作为func
输入到converting x
to a cell array,而不是制作匿名函数。
xcell = num2cell(x);
func(xcell{:})