已经用过vpa函数为什么多项式最后一项还是分数形式呢 并且怎样plot这种情况呢
2条回答 默认 最新
关注
如果您已经使用了 vpa 函数将程序中的变量设置为符号变量(symbolic variable),并且已经使用了 poly2sym 函数将数值数组转换为多项式形式,则可以考虑使用 simplify 函数将多项式化简为合适的形式。可以使用" 'f' "参数作为 simplify 函数的输入,将多项式化简成小数形式。
例如:
syms x; a = [1 2 3]; p = poly2sym(a, x); p = vpa(p); % 将符号变量转换为数值,这里假设当前使用了一个精度为 50 位的计算精度 p = simplify(p, 'f'); % 将多项式化简成小数形式
通过这种方式即可得到最后一项是小数形式的多项式。
使用 MATLAB 中的 plot 函数可以将多项式绘制成函数曲线,例如:
syms x; a = [-3 5 2]; p = poly2sym(a, x); p = vpa(p); p = simplify(p, 'f'); fplot(p, [-10, 10]); % 将多项式 p 绘制在区间 [-10, 10] 上
运行上述代码将绘制出多项式 p 对应的函数曲线。
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报