sympy - 包含复指数的多项式的 factor_list 中的错误
问题描述
我想列出一个表达式,并在特殊情况下发现一个奇怪的行为,我不明白。一个例子是:
多项式包含 exp(-4 pi I/7)的前置因子,这个因子有时会产生问题。删除负号使其工作。当用于不同的表达式时,它也适用于负号。下面是一个包含三个表达式的示例
import sympy as sym q=sym.Symbol("q") # this example works y1=3*(sym.exp(4*sym.I*sym.pi/7)*q - 1)*sym.exp(2) print( sym.factor_list(y1,q) ) # this one not y2=3*(sym.exp(-4*sym.I*sym.pi/7)*q - 1)*sym.exp(2) print( sym.factor_list(y2,q) ) # this one works too y3=3*(sym.exp(-4*sym.I*sym.pi/7)*q - 1)**2*sym.exp(2) print( sym.factor_list(y3,q) )
对于第二个示例,我收到错误
sympy.polys.polyerrors.PolynomialError: a polynomial expected, got (3*q*exp(-4*I*pi/7) - 3)*exp(2)
对于我得到的第三个表达式
(3*exp(2), [(exp(6*I*pi/7), 1), (q - exp(4*I*pi/7), 2)])
但第一个条目 (exp(6 I pi/7), 1) 不包含变量 q
任何想法第二个示例有什么问题以及为什么第三个示例中的 exp(6 I pi/7) 出现不具有常数因子 3*exp(2) 谢谢
解决方案
推荐阅读
- c++ - 将具有相同基数的不同对象存储在单个队列中
- git - 如何删除不在文件夹列表中的文件夹?
- android - Kotlin Android 创建和共享 CSV 文件
- html - 谷歌浏览器:页面重新加载后页脚链接变为白色悬停
- fortran - Fortran 将 NaN 设置为零
- r - 有没有办法根据变量组在 dplyr 中应用不同的汇总函数?
- javascript - Chrome 的日期解析问题
- firebase - BigQuery 事件 user_engagement
- javascript - 无法在 vue js 组件中获取随机数据
- python - keras Concatenate 失败,形状不兼容