Matlab轉換
MATLAB提供了處理轉換的命令,如拉普拉斯和傅里葉變換。轉換在科學和工程中被用作簡化分析和從另一個角度看待數據的工具。
例如,傅里葉(Fourier)轉換允許我們將表示爲時間的函數的信號轉換爲頻率的函數。 拉普拉斯變換允許我們將微分方程轉換爲代數方程。
MATLAB提供了laplace
,fourier
和fft
命令來處理拉普拉斯,傅立葉和快速傅里葉轉換。
拉普拉斯變換
時間f(t)
函數的拉普拉斯轉換由以下積分 -
拉普拉斯變換也表示爲f(t)
到F(s)
的變換。 可以看到此變換或集成過程將f(t)
,符號變量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))
MATLAB運行文件代碼時,得到以下結果 -
Trial>> 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))
MATLAB執行上述代碼語句得到以下結果 -
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表示的新函數,其參數是以週期/ s(赫茲)或每秒弧度爲單位的頻率。新功能被稱爲傅立葉變換和/或函數f
的頻譜。
示例
創建腳本文件並在其中鍵入以下代碼 -
syms x
f = exp(-2*x^2); %our function
ezplot(f,[-2,2]) % plot of our function
FT = fourier(f) % Fourier transform
MATLAB執行上述代碼語句得到以下結果 -
同時也會輸出以下結果 -
Trial>> syms x
f = exp(-2*x^2); %our function
ezplot(f,[-2,2]) % plot of our function
FT = fourier(f) % Fourier transform
FT =
(2^(1/2)*pi^(1/2)*exp(-w^2/8))/2
繪製傅里葉變換爲 -
syms x
f = exp(-2*x^2); %our function
% ezplot(f,[-2,2]) % plot of our function
FT = fourier(f) % Fourier transform
ezplot(FT)
MATLAB執行上述代碼語句得到以下結果 -
逆傅里葉變換
MATLAB提供了用於計算函數的逆傅里葉變換的ifourier
命令。 例如,
f = ifourier(-2*exp(-abs(w)))
MATLAB將執行上述語句並顯示結果 -
f =
-2/(pi*(x^2 + 1))