MATLAB 变换
MATLAB 提供了用于处理变换的命令,例如拉普拉斯变换和傅里叶变换。变换是科学和工程中用于简化分析和从另一个角度查看数据的工具。
例如,傅里叶变换允许我们将表示为时间函数的信号转换为频率函数。拉普拉斯变换允许我们将微分方程转换为代数方程。
MATLAB 提供了 laplace、fourier 和 fft 命令来处理拉普拉斯变换、傅里叶变换和快速傅里叶变换。
拉普拉斯变换
时间函数 f(t) 的拉普拉斯变换由以下积分给出 −
Laplace变换也被表示为f(t)到F(s)的变换。您可以看到这个变换或积分过程将t的函数f(t)转换为另一个具有变量s的函数F(s)。
Laplace变换将微分方程变为代数方程。要计算函数f(t)的Laplace变换,写成−
laplace(f(t))
示例
在这个示例中,我们将计算一些常用函数的拉普拉斯变换。
创建一个脚本文件并输入以下代码 –
syms s t a b w
laplace(a)
laplace(t^2)
laplace(t^9)
laplace(exp(-b*t))
laplace(sin(w*t))
laplace(cos(w*t))
当你运行该文件时,它会显示以下结果 –
ans =
1/s^2
ans =
2/s^3
ans =
362880/s^10
ans =
1/(b + s)
ans =
w/(s^2 + w^2)
ans =
s/(s^2 + w^2)
反拉普拉斯变换
MATLAB允许我们使用命令 ilaplace 计算反拉普拉斯变换。
例如:
ilaplace(1/s^3)
Matlab将执行上述语句并显示结果−
ans =
t^2/2
示例
创建一个脚本文件,并输入下面的代码:
syms s t a b w
ilaplace(1/s^7)
ilaplace(2/(w+s))
ilaplace(s/(s^2+4))
ilaplace(exp(-b*t))
ilaplace(w/(s^2 + w^2))
ilaplace(s/(s^2 + w^2))
当您运行文件时,它会显示以下结果−
ans =
t^6/720
ans =
2*exp(-t*w)
ans =
cos(2*t)
ans =
ilaplace(exp(-b*t), t, x)
ans =
sin(t*w)
ans =
cos(t*w)
傅立叶变换
傅立叶变换通常将一个时间函数f(t)转换成一个新的函数,通常表示为F或者,其参数为频率,单位为周期/秒(赫兹)或者弧度/秒。这个新的函数被称为傅立叶变换和/或者函数f的频谱。
示例
创建一个脚本文件,并键入以下代码−
syms x
f = exp(-2*x^2); %our function
ezplot(f,[-2,2]) % plot of our function
FT = fourier(f) % Fourier transform
当您运行文件时,MATLAB绘制以下图表−
FT =
(2^(1/2)*pi^(1/2)*exp(-w^2/8))/2
绘制傅里叶变换为:
ezplot(FT)
给出以下的图表 −
逆傅里叶变换
MATLAB提供了 ifourier 命令用于计算函数的逆傅里叶变换。例如,
f = ifourier(-2*exp(-abs(w)))
Matlab将执行上述语句并显示结果 –
f =
-2/(pi*(x^2 + 1))