Matlab:如何在matlabFunction中指定输入?

时间:2019-02-15 12:14:59

标签: matlab anonymous-function symbolic-math

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的列很长时,这可能非常有用。

1 个答案:

答案 0 :(得分:3)

您可以在第一个comma separated list之前将x的元素作为converting x to a cell arrayfunc的输入,来代替匿名功能。

xcell = num2cell(x);
func(xcell{:})