MATLAB - 变换
MATLAB 提供了用于处理变换的命令,例如拉普拉斯变换和傅里叶变换。转换在科学和工程中被用作简化分析和从另一个角度查看数据的工具。
例如,傅里叶变换允许我们将表示为时间函数的信号转换为频率函数。拉普拉斯变换允许我们将微分方程转换为代数方程。
MATLAB 提供了 laplace , 傅立叶 和 fft 用于处理拉普拉斯、傅里叶和快速傅里叶变换的命令。
拉普拉斯变换
时间函数 f(t) 的拉普拉斯变换由以下积分给出 -

拉普拉斯变换也表示为 f(t) 到 F(s) 的变换。可以看到这个变换或积分过程将符号变量 t 的函数 f(t) 转换成另一个函数 F(s) 和另一个变量 s。
拉普拉斯变换将微分方程转化为代数方程。要计算函数 f(t) 的拉普拉斯变换,请编写 -
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))
MATLAB