Matlab-transforms
MATLAB-変換
MATLABは、ラプラス変換やフーリエ変換などの変換を操作するためのコマンドを提供します。 変換は、分析を簡素化し、別の角度からデータを見るためのツールとして、科学および工学で使用されます。
たとえば、フーリエ変換を使用すると、時間の関数として表される信号を周波数の関数に変換できます。 ラプラス変換により、微分方程式を代数方程式に変換できます。
MATLABは、ラプラス、フーリエ、および高速フーリエ変換で動作する laplace 、 fourier 、および fft コマンドを提供します。
ラプラス変換
時間f(t)の関数のラプラス変換は、次の積分によって与えられます-
ラプラス変換は、f(t)からF(s)への変換とも呼ばれます。 この変換または統合プロセスは、シンボリック変数tの関数f(t)を、別の変数sを持つ別の関数F(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))