将多项式表达式转换为浮点系数
Convert polynomial expression to float coeffs
这似乎是一个愚蠢的问题,但我搜索了几个小时却没有真正找到我正在寻找的东西。
在 Maple 中,如果你有这样的多项式:
如何在 Maple 中将此表达式转换为具有浮点系数 (s^3 + 19s^2 + 89.13s + 71.13) 的表达式?
我认为这应该嵌入到 collect() 函数中(就像参数 'float')。现在我必须自己计算每个多项式(只使用 Maple 来简化物理学中一些冗长的计算class),这是彻头彻尾的弱智。
谢谢!
使用浮点近似计算结果的最简单方法是使用 evalf 命令:
evalf(collect((s+9+Pi)*(s+9+Pi)*(s+1),s));
returns
147.4182721+s^3+25.28318530*s^2+171.7014573*s
如果您真的只对浮点结果感兴趣,请注意如果原始表达式中的一个或多个项是浮点数,Maple 将以浮点数计算结果。例如:
collect((s+9.+Pi)*(s+9+Pi)*(s+1),s);
另请注意,我在上面的代码中将您使用的小写 pi(希腊字母)更改为 Pi(数学常数)。
不需要使用(或引入)任何明确编写的浮点系数来获得您想要的效果。事实上,您可能有充分的理由希望所有系数都是精确的,也许是为了一些早期的计算。
restart;
S := (s+9-Pi) * (s+9+Pi) * (s+1):
sort( evalf( expand(S) ), s, ascending );
2 3
71.13039560 + 89.13039560 s + 19. s + s
sort( evalf( expand(S) ), s, descending );
3 2
s + 19. s + 89.13039560 s + 71.13039560
以上内容可能对您有用,如果这还不够:
evalf( expand(S) );
3 2
s + 19. s + 89.13039560 s + 71.13039560
这似乎是一个愚蠢的问题,但我搜索了几个小时却没有真正找到我正在寻找的东西。
在 Maple 中,如果你有这样的多项式:
如何在 Maple 中将此表达式转换为具有浮点系数 (s^3 + 19s^2 + 89.13s + 71.13) 的表达式?
我认为这应该嵌入到 collect() 函数中(就像参数 'float')。现在我必须自己计算每个多项式(只使用 Maple 来简化物理学中一些冗长的计算class),这是彻头彻尾的弱智。
谢谢!
使用浮点近似计算结果的最简单方法是使用 evalf 命令:
evalf(collect((s+9+Pi)*(s+9+Pi)*(s+1),s));
returns
147.4182721+s^3+25.28318530*s^2+171.7014573*s
如果您真的只对浮点结果感兴趣,请注意如果原始表达式中的一个或多个项是浮点数,Maple 将以浮点数计算结果。例如:
collect((s+9.+Pi)*(s+9+Pi)*(s+1),s);
另请注意,我在上面的代码中将您使用的小写 pi(希腊字母)更改为 Pi(数学常数)。
不需要使用(或引入)任何明确编写的浮点系数来获得您想要的效果。事实上,您可能有充分的理由希望所有系数都是精确的,也许是为了一些早期的计算。
restart;
S := (s+9-Pi) * (s+9+Pi) * (s+1):
sort( evalf( expand(S) ), s, ascending );
2 3
71.13039560 + 89.13039560 s + 19. s + s
sort( evalf( expand(S) ), s, descending );
3 2
s + 19. s + 89.13039560 s + 71.13039560
以上内容可能对您有用,如果这还不够:
evalf( expand(S) );
3 2
s + 19. s + 89.13039560 s + 71.13039560