0

使用符号数学,我通过以下方式使用 poly2sim 生成多项式:

nOrderA=input('Power of=')
A = sym('A', [1 nOrderA])
p = poly2sym(A,x)

这将返回一个多项式,其顺序取决于用户输入。在用户输入为 3 的情况下,p 的输出由下式给出

p = (sym)

       2
  A₁₁⋅x  + A₁₂⋅x + A₁₃

我打算将此输出用作函数并按如下方式执行此操作:

F = matlabFunction((p))

这个 F 返回的值是

@(A11, A12, A13, x) A11 .* x .^ 2 + A12 .* x + A13

在这里,我不想将系数 A11、A12、A13 作为函数的单独输入,而是将它们作为系数数组输入,即

F 返回的值应该是

 @(A, x) A11 .* x .^ 2 + A12 .* x + A13

在哪里A = [A11,A12,A13]

我该怎么做呢?

4

1 回答 1

0

使用coeffs功能:

C = coeffs(p)

返回多项式关于由p确定的所有变量的系数。psymvar

于 2016-08-25T11:52:39.530 回答