使用PythonSympy进行连续傅里叶变换(分析解决方案)

使用PythonSympy进行连续傅里叶变换(分析解决方案),第1张

概述我最近用Python替换了Matlab因为我是真的;因为Sympy而兴奋.但现在我有以下问题:我需要一种用Python可靠地计算连续傅里叶变换的方法. Sympy在解决方案方面存在问题,包括Diracs(Delta函数),因为它们例如出现在三角函数等处.例如,如果我尝试fourier_transform(cos(x),x,v) 输出为0,它应该基于Dirac

我最近用Python替换了Matlab因为我是真的;因为Sympy而兴奋.

但现在我有以下问题:

我需要一种用Python可靠地计算连续傅里叶变换的方法. Sympy在解决方案方面存在问题,包括Diracs(Delta函数),因为它们例如出现在三角函数等处.

例如,如果我尝试

fourIEr_transform(cos(x),x,v)

输出为0,它应该基于Dirac delta函数

有没有人知道,如果Sympy的这一部分有待改进,或者是否有其他方法可以通过Python分析性地找到傅立叶变换?

感谢您提前给出答案或任何建议!

最佳答案据我所知,目前没有人正在研究这个问题,尽管contributions are welcome.

我可以给出一些建议:

>如果在fourIEr_transform()中设置noconds = False,则包含0为True的条件:

In [26]: fourIEr_transform(cos(t),t,noconds=False)Out[26]:⎛   │                 ⎛ -ⅈ⋅π           2      ⎞│       │                 ⎛ ⅈ⋅π           2      ⎞│    ⎞⎝0,│periodic_argument⎝ℯ    ⋅polar_lift (x),∞⎠│ < π ∧ │periodic_argument⎝ℯ   ⋅polar_lift (x),∞⎠│ < π⎠

除非显示0并非完全错误,否则这些条件不是很有用.
>您可以使用FourIErtransform来表示未评估的傅里叶变换.您可以在其上调用doit()来评估它或重写(Integral)以获得整数形式:

In [28]: FourIErtransform(cos(t),x).rewrite(Integral)Out[28]:∞⌠⎮   -2⋅ⅈ⋅π⋅t⋅x⎮  ℯ          ⋅cos(t) dt⌡-∞

我现在最好的建议是通过 *** 作FourIErtransform对象或积分来进行SymPy目前无法手动完成的傅里叶变换.

总结

以上是内存溢出为你收集整理的使用Python / Sympy进行连续傅里叶变换(分析解决方案)全部内容,希望文章能够帮你解决使用Python / Sympy进行连续傅里叶变换(分析解决方案)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1207652.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-04
下一篇 2022-06-04

发表评论

登录后才能评论

评论列表(0条)

保存