繁体   English   中英

从matlabFunction返回多项式系数作为数组

[英]Returning polynomial coefficients from matlabFunction as an array

使用符号数学,我通过以下方式使用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]

我应该怎么做呢?

使用coeffs函数:

C = coeffs(p)

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM