用于符号数学的 Python 库——sympy(二):常用信号的Laplace变换

这篇具有很好参考价值的文章主要介绍了用于符号数学的 Python 库——sympy(二):常用信号的Laplace变换。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

关于拉普拉斯变换的作用,可参考知乎
总的来说,拉普拉斯变换就是迫使函数满足绝对可积条件的傅里叶变换。

常用信号的Laplace变换

参考信号与系统/陈后金, 胡健, 薛健. ——2版.——北京:清华大学出版社;北京交通大学出版社, 2005.7(2017.3重印)第218-219页。

序号       单边信号(f(t))       Laplace变换( F ( s ) F(s) F(s))       收敛域      
1 e − λ t u ( t ) e^{-\lambda t}u(t) eλtu(t) 1 s + λ \frac{1}{s+\lambda} s+λ1 R e ( s ) > − λ Re(s)>-\lambda Re(s)>λ
2 e j ω 0 t u ( t ) e^{j\omega_0 t}u(t) ejω0tu(t) 1 s − j ω 0 \frac{1}{s-j\omega_0} sjω01 R e ( s ) > 0 Re(s)>0 Re(s)>0
3 c o s ( ω 0 t ) u ( t ) cos(\omega_0 t)u(t) cos(ω0t)u(t) s s 2 + ω 0 2 \frac{s}{s^2+\omega_0^2} s2+ω02s R e ( s ) > 0 Re(s)>0 Re(s)>0
4 s i n ( ω 0 T ) u ( t ) sin(\omega_0 T)u(t) sin(ω0T)u(t) ω 0 s 2 + ω 0 2 \frac{\omega_0}{s^2+\omega_0^2} s2+ω02ω0 R e ( s ) > 0 Re(s)>0 Re(s)>0
5 e − σ 0 t c o s ( ω t ) u ( t ) e^{-\sigma_0 t}cos(\omega t)u(t) eσ0tcos(ωt)u(t) s + σ 0 ( s + σ 0 ) 2 + ω 0 \frac{s+\sigma_0}{(s+\sigma_0)^2+\omega_0} (s+σ0)2+ω0s+σ0 R e ( s ) > − σ 0 Re(s)>-\sigma_0 Re(s)>σ0
6 e − σ 0 t s i n ( ω t ) u ( t ) e^{-\sigma_0 t}sin(\omega t)u(t) eσ0tsin(ωt)u(t) ω 0 ( s + σ 0 ) 2 + ω 0 \frac{\omega_0}{(s+\sigma_0)^2+\omega_0} (s+σ0)2+ω0ω0 R e ( s ) > − σ 0 Re(s)>-\sigma_0 Re(s)>σ0
7 δ ( t ) \delta(t) δ(t) 1 R e ( s ) > − ∞ Re(s)>-\infty Re(s)>
8 δ ( n ) ( t ) \delta^{(n)}(t) δ(n)(t) s n ( 1 , 2 , …   ) s^n(1,2,\dots) sn(1,2,) R e ( s ) > − ∞ Re(s)>-\infty Re(s)>
9 u ( t ) u(t) u(t) 1 s \frac{1}{s} s1 R e ( s ) > 0 Re(s)>0 Re(s)>0
10 t u ( t ) tu(t) tu(t) 1 s 2 \frac{1}{s^2} s21 R e ( s ) > 0 Re(s)>0 Re(s)>0
11 t n u ( t ) t^n u(t) tnu(t) n ! s n + 1 \frac{n!}{s^{n+1}} sn+1n! R e ( s ) > 0 Re(s)>0 Re(s)>0
12 t e − λ t u ( t ) te^{-\lambda t}u(t) teλtu(t) 1 ( s + λ ) 2 \frac{1}{(s+\lambda)^2} (s+λ)21 R e ( s ) > − λ Re(s)>-\lambda Re(s)>λ

1. e − λ t u ( t ) e^{-\lambda t}u(t) e−λtu(t)

from sympy import *
from sympy.integrals import laplace_transform,inverse_laplace_transform

lamb = symbols('\lambda')
F1 = laplace_transform(exp(-lamb*t)*Heaviside(t),t,s)

F1[0]

1 λ + s \displaystyle \frac{1}{\lambda + s} λ+s1

F1[1]

− λ \displaystyle - \lambda λ

2. e j ω 0 t u ( t ) e^{j\omega_0 t}u(t) ejω0​tu(t)

from sympy import *
from sympy.integrals import laplace_transform,inverse_laplace_transform

w0 = symbols('\omega_0')
F1 = laplace_transform(exp(np.complex(0,1)*w0*t)*Heaviside(t),t,s)

F1[0]

1 − 1.0 i ω 0 + s \displaystyle \frac{1}{- 1.0 i \omega_{0} + s} 1.0iω0+s1

3. c o s ( ω 0 t ) u ( t ) cos(\omega_0 t)u(t) cos(ω0​t)u(t)

from sympy import *
from sympy.integrals import laplace_transform,inverse_laplace_transform

w0 = symbols('\omega_0')
F1 = laplace_transform(cos(w0*t)*Heaviside(t),t,s)

F1[0]

s ω 0 2 + s 2 \displaystyle \frac{s}{\omega_{0}^{2} + s^{2}} ω02+s2s

4. s i n ( ω 0 T ) u ( t ) sin(\omega_0 T)u(t) sin(ω0​T)u(t)

from sympy import *
from sympy.integrals import laplace_transform,inverse_laplace_transform

w0 = symbols('\omega_0')
F1 = laplace_transform(sin(w0*t)*Heaviside(t),t,s)

F1[0]

ω 0 ω 0 2 + s 2 \displaystyle \frac{\omega_{0}}{\omega_{0}^{2} + s^{2}} ω02+s2ω0

5. e − σ 0 t c o s ( ω t ) u ( t ) e^{-\sigma_0 t}cos(\omega t)u(t) e−σ0​tcos(ωt)u(t)

from sympy import *
from sympy.integrals import laplace_transform,inverse_laplace_transform

w0,sigma0 = symbols('\omega_0 \sigma_0')
F1 = laplace_transform(exp(-sigma0*t)*cos(w0*t)*Heaviside(t),t,s)

F1[0]

σ 0 + s ( − i ω 0 + σ 0 + s ) ( i ω 0 + σ 0 + s ) \displaystyle \frac{\sigma_{0} + s}{\left(- i \omega_{0} + \sigma_{0} + s\right) \left(i \omega_{0} + \sigma_{0} + s\right)} (iω0+σ0+s)(iω0+σ0+s)σ0+s

6. e − σ 0 t s i n ( ω t ) u ( t ) e^{-\sigma_0 t}sin(\omega t)u(t) e−σ0​tsin(ωt)u(t)

from sympy import *
from sympy.integrals import laplace_transform,inverse_laplace_transform

w0,sigma0 = symbols('\omega_0 \sigma_0')
F1 = laplace_transform(exp(-sigma0*t)*sin(w0*t)*Heaviside(t),t,s)

F1[0]

ω 0 ( − i ω 0 + σ 0 + s ) ( i ω 0 + σ 0 + s ) \displaystyle \frac{\omega_{0}}{\left(- i \omega_{0} + \sigma_{0} + s\right) \left(i \omega_{0} + \sigma_{0} + s\right)} (iω0+σ0+s)(iω0+σ0+s)ω0

7. δ ( t ) \delta(t) δ(t)

from sympy import *
from sympy.integrals import laplace_transform,inverse_laplace_transform

F1 = laplace_transform(DiracDelta(t),t,s)

F1[0]

1 \displaystyle 1 1

8. δ ( n ) ( t ) \delta^{(n)}(t) δ(n)(t)

n次求导无法计算,用多个数字代替,总结规律(不严谨) 结果看不懂

from sympy import *
from sympy.integrals import laplace_transform,inverse_laplace_transform

delta,n = symbols('\delta n')
F1 = laplace_transform(DiracDelta(t,2),t,s)

F1

L t [ δ ( 2 ) ( t ) ] ( s ) \displaystyle \mathcal{L}_{t}\left[\delta^{\left( 2 \right)}\left( t \right)\right]\left(s\right) Lt[δ(2)(t)](s)

9. u ( t ) u(t) u(t)

from sympy import *
from sympy.integrals import laplace_transform,inverse_laplace_transform

delta,n = symbols('\delta n')
F1 = laplace_transform(Heaviside(t),t,s)

F1[0]

1 s \displaystyle \frac{1}{s} s1

10. t u ( t ) tu(t) tu(t)

from sympy import *
from sympy.integrals import laplace_transform,inverse_laplace_transform

delta,n = symbols('\delta n')
F1 = laplace_transform(t*Heaviside(t),t,s)

F1[0]

1 s 2 \displaystyle \frac{1}{s^{2}} s21

11. t n u ( t ) t^n u(t) tnu(t)

from sympy import *
from sympy.integrals import laplace_transform,inverse_laplace_transform

delta,n = symbols('\delta n')
F1 = laplace_transform(t**n*Heaviside(t),t,s)

F1[0]

s − n Γ ( n + 1 ) s \displaystyle \frac{s^{- n} \Gamma\left(n + 1\right)}{s} ssnΓ(n+1)

12. t e − λ t u ( t ) te^{-\lambda t}u(t) te−λtu(t)

from sympy import *
from sympy.integrals import laplace_transform,inverse_laplace_transform

lamb,n = symbols('\lambda n')
F1 = laplace_transform(t*exp(-lamb*t)*Heaviside(t),t,s)

F1[0]

1 ( λ + s ) 2 \displaystyle \frac{1}{\left(\lambda + s\right)^{2}} (λ+s)21

至于 Γ \Gamma Γ函数
Γ ( x ) = ∫ 0 + ∞ t x − 1 e − t d t \Gamma(x)=\int_0^{+\infty}t^{x-1}e^{-t}dt Γ(x)=0+tx1etdt
x x x为正整数时,
Γ ( n ) = ( n − 1 ) ! \Gamma(n)=(n-1)! Γ(n)=(n1)!

逆Laplace变换

逆Laplace变换与Laplace变换函数用法大致一致,举一个简单例子,对于 e − λ t u ( t ) e^{-\lambda t}u(t) eλtu(t)的拉普拉斯变换,输出结果为
1 λ + s \frac{1}{\lambda+s} λ+s1,那么对于 1 λ + s \frac{1}{\lambda+s} λ+s1的逆拉普拉斯变换,代码为

from sympy import *
from sympy.integrals import laplace_transform,inverse_laplace_transform

lamb,s,t = symbols('\lambda s t')
F1 = inverse_laplace_transform(1/(lamb+s),s,t)

F1

e − t re ⁡ ( λ ) − i t im ⁡ ( λ ) θ ( t ) \displaystyle e^{- t \operatorname{re}{\left(\lambda\right)} - i t \operatorname{im}{\left(\lambda\right)}} \theta\left(t\right) etre(λ)itim(λ)θ(t)
结果的 θ ( t ) \theta(t) θ(t)就是 u ( t ) u(t) u(t)文章来源地址https://www.toymoban.com/news/detail-471419.html

到了这里,关于用于符号数学的 Python 库——sympy(二):常用信号的Laplace变换的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 「SymPy」符号运算(6) 矩阵Matrix及基础运算

    在前几篇文章中,我们学习了 SymPy 基础/高级用法、方程求解、微积分以及向量运算等内容,本节我们学习 SymPy 核心内容之一 Matrix 矩阵计算(基础)。 传送链接: 「SymPy」符号运算(1) 简介/符号/变量/函数/表达式/等式/不等式/运算符 「SymPy」符号运算(2) 各种形式输出、表达

    2024年02月14日
    浏览(21)
  • 【高数+复变函数】Laplace变换

    上一节:【高数+复变函数】傅里叶积分 回顾之前我们讲的傅里叶变换要满足的条件有(也就是傅里叶积分要满足的条件) 1 ∘ f ( t ) 1^{circ} f(t) 1 ∘ f ( t ) 在任一有限区间上满足 Dirichlet 条件 2 ∘ f ( t ) 2^{circ} f(t) 2 ∘ f ( t ) 在无限区间 ( − ∞ , + ∞ ) (-infty,+infty) ( − ∞

    2024年02月07日
    浏览(35)
  • latex 常用数学符号(积分、大型运算符、上下标)

    符号 latex ∫ 1 3 e 3 / x x 2   d x intlimits_{1}^{3}frac{e^3/x}{x^2} dx 1 ∫ 3 ​ x 2 e 3 / x ​   d x intlimits_{1}^{3}frac{e^3/x}{x^2} dx ∫ 1 3 e 3 / x x 2   d x int_{1}^{3}frac{e^3/x}{x^2} dx ∫ 1 3 ​ x 2 e 3 / x ​   d x int_{1}^{3}frac{e^3/x}{x^2}, dx ∫ − N N e x d x textstyle intlimits_{-N}^{N} e^x dx − N ∫ N ​

    2024年02月14日
    浏览(28)
  • latex 常用数学符号( 二项式系数、矩阵、数组、方程与方程组、条件定义、括号、括号尺寸、字体)

    类型 符号 LaTeX 二项式系数 ( n k ) binom{n}{k} ( k n ​ ) binom{n}{k} 小型二项式系数 ( n k ) tbinom{n}{k} ( k n ​ ) tbinom{n}{k} 大型二项式系数 ( n k ) dbinom{n}{k} ( k n ​ ) dbinom{n}{k} x y z v begin{matrix}x y \\\\z vend{matrix} x z ​ y v ​ ∣ x y z v ∣ begin{vmatrix}x y \\\\z vend{vmatrix} ​ x z ​ y v ​ ​ ∥

    2024年02月06日
    浏览(29)
  • Python数值和符号算法计算及3D视图物理数学波形方程

    Python数值和符号计算及3D可视化以下物理方程: 物理数学方程分析:二分算法和牛顿-拉夫森算法解方程根。最小二乘法拟合方程和数据。短期傅里叶变换和小波分析非平稳信号。使用主成分分析复杂和大型数据集,提取时空相关性,分形维数测定。 非线性震动常微分方程:

    2024年04月14日
    浏览(39)
  • Python Sympy:解方程利器

    用程序来解决数学问题是非常普遍的,将数学的定理或公式封装成程序中的函数, 只要传入相应的参数,就能让计算机帮我们计算出最终的结果。 不过,今天介绍的这个库:Sympy,它的最大特点是让我们可以用做数学题的思考方式来写程序。 用程序实现数学的算法,会根据

    2024年01月16日
    浏览(24)
  • 《论文阅读》用于情感分析的融合预训练表情符号特征增强

    前言 你是否也对于理解论文存在困惑? 你是否也像我之前搜索论文解读,得到只是中文翻译的解读后感到失望? 小白如何从零读懂论文?和我一起来探索吧! 今天为大家带来的是《Fusion Pre-trained Emoji Feature Enhancement for Sentiment Analysis》 出版:2023 Association for Computing Machiner

    2024年02月09日
    浏览(41)
  • 9.利用matlab完成 泰勒级数展开 和 符号表达式傅里叶变换和反变换 (matlab程序)

    1. 简述        首先生成一个方波(或者其他组合波形),然后对这个信号做傅里叶变换,拆解到频域,可以看到这个信号是由哪些频率的信号叠加而来。 然后把频域信号,用傅里叶逆变换恢复到时域。这里的逆变换不是用matlab自带的ifft函数,而是依据原理,用很多正弦波

    2024年02月13日
    浏览(34)
  • CSDN打出各种数学符号和数学公式

    我们在用CSDN打出各种数学符号和数学公式时,需要学习一些关于LaTex的语法,在此做一个记录: $a+b$ 显示效果是 a + b a+b a + b $a-b$ 显示效果是 a − b a-b a − b $a*b$ 显示效果是 a ∗ b a*b a ∗ b $frac{a}{b}$ 显示效果是 a b frac{a}{b} b a ​ $x^n$ 显示效果为 x n x^n x n $e^n$ 显示效果为 e

    2024年02月07日
    浏览(31)
  • Python边缘检测之prewitt, sobel, laplace算子

    ndimage 中提供了卷积算法,并且建立在卷积之上,提供了三种边缘检测的滤波方案: prewitt , sobel 以及 laplace 。 在convolve中列举了一个用于边缘检测的滤波算子,统一维度后,其 x x x 和 y y y 向的梯度算子分别写为 [ − 1 0 1 − 1 0 1 − 1 0 1 ] , [ − 1 − 1 − 1 0 0 0 1 1 1 ] begin{bma

    2024年02月03日
    浏览(31)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包