ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

構文

  • fourier(f)
  • fourier(f,transVar)
  • fourier(f,var,transVar)

説明

fourier(f) は、既定の独立変数 x と既定の変換変数 w を使用して、fフーリエ変換を返します。fx が含まれない場合、fouriersymvar を使用します。

fourier(f,transVar) は、w の代わりに指定された変換変数 transVar を使用します。

fourier(f,var,transVar) は、x の代わりに指定された独立変数 var を、w の代わりに変換変数 transVar を使用します。

シンボリック式のフーリエ変換

次の式の、変換変数 y に対する変数 x についてのフーリエ変換を計算します。

syms x y
f = exp(-x^2);
fourier(f, x, y)
ans =
pi^(1/2)*exp(-y^2/4)

既定の独立変数および変換変数

引数を 1 つ指定して関数 fourier を呼び出し、次の式のフーリエ変換を計算します。独立変数を指定しない場合、fourier は変数 x を使用します。

syms x t y
f = exp(-x^2)*exp(-t^2);
fourier(f, y)
ans =
pi^(1/2)*exp(-t^2)*exp(-y^2/4)

変換関数も指定しない場合、fourier は変数 w を使用します。

fourier(f)
ans =
pi^(1/2)*exp(-t^2)*exp(-w^2/4)

ディラックおよびヘヴィサイドの関数を含むフーリエ変換

ディラック関数およびヘヴィサイド関数を含む、次のフーリエ変換を計算します。

syms t w
fourier(t^3, t, w)
ans =
-pi*dirac(3, w)*2i
syms t0
fourier(heaviside(t - t0), t, w)
ans =
exp(-t0*w*1i)*(pi*dirac(w) - 1i/w)

フーリエ変換のパラメーター

フーリエ変換のパラメーターを指定します。

フーリエ変換のパラメーターの既定値 c = 1s = -1 を使用して、次の式のフーリエ変換を計算します (詳細は、フーリエ変換を参照してください)。

syms t w
pretty(fourier(t*exp(-t^2), t, w))
                /    2 \
                |   w  |
  w sqrt(pi) exp| - -- | 1i
                \    4 /
- -------------------------
              2

sympref を使用して、フーリエ変換のパラメーターの値を c = 1s = 1 に変更します。その後、同じ式のフーリエ変換を再度計算します。

sympref('FourierParameters', [1, 1]);
pretty(fourier(t*exp(-t^2), t, w))
              /    2 \
              |   w  |
w sqrt(pi) exp| - -- | 1i
              \    4 /
-------------------------
            2

sympref を使用して、フーリエ変換のパラメーターの値を c = 1/2πs = 1 に変更します。これらの値を使用してフーリエ変換を計算します。

sympref('FourierParameters', [1/(2*sym(pi)), 1]);
pretty(fourier(t*exp(-t^2), t, w))
     /    2 \
     |   w  |
w exp| - -- | 1i
     \    4 /
----------------
   4 sqrt(pi)

sympref によって指定された設定は、これ以降の MATLAB® セッションを通じて維持されます。cs の設定を既定値に戻すには、sympref'default' に設定します。

sympref('FourierParameters','default');

関数のフーリエ変換およびその導関数

関数のフーリエ変換は、その導関数のフーリエ変換に関連しています。

syms f(t) w
fourier(diff(f(t), t), t, w)
ans =
w*fourier(f(t), t, w)*1i

行列のフーリエ変換

この行列のフーリエ変換を求めます。同じサイズの行列を使用して、独立変数と変換変数を指定します。

syms a b c d w x y z
fourier([exp(x), 1; sin(y), i*z],[w, x; y, z],[a, b; c, d])
ans =
[                2*pi*exp(x)*dirac(a),     2*pi*dirac(b)]
[ -pi*(dirac(c - 1) - dirac(c + 1))*1i, -2*pi*dirac(1, d)]

入力引数が非スカラーである場合、fourier は各要素に適用されます。fourier 関数がスカラーまたは非スカラー引数で呼び出される場合、fourier はスカラー引数を非スカラー引数と同じサイズの配列に拡張します。配列の要素はスカラーと同じです。

syms w x y z a b c d
fourier(x,[x, w; y, z],[a, b; c, d])
ans =
[ pi*dirac(1, a)*2i, 2*pi*x*dirac(b)]
[    2*pi*x*dirac(c), 2*pi*x*dirac(d)]

非スカラー入力引数は同じサイズでなければなりません。

シンボリック関数のベクトルのフーリエ変換

1 番目の引数がシンボリック関数の場合、2 番目の引数はスカラーでなければなりません。

syms f1(x) f2(x) a b
f1(x) = exp(x);
f2(x) = x;
fourier([f1, f2],x,[a, b])
ans =
[ fourier(exp(x), x, a), pi*dirac(1, b)*2i]

フーリエ変換が求まらない場合

fourier がフーリエ変換の明確な表現を見つけることができない場合は、未評価の呼び出しが返されます。

syms f(t) w
F = fourier(f, t, w)
F =
fourier(f(t), t, w)

ifourier は元の式を返します。

ifourier(F, w, t)
ans =
f(t)

入力引数

すべて折りたたむ

シンボリック式、シンボリック関数、あるいはシンボリック式、シンボリック関数からなるベクトルまたは行列で指定される入力の関数。

独立変数。シンボリック変数として指定します。この変数は、多くの場合 "時間変数" または "空間変数" と呼ばれます。

独立変数を指定しない場合、既定では、fourier は変数 x を使用します。fx が含まれない場合、symvar によって既定の変数が特定されます。

変換変数。シンボリックな変数、式、あるいはシンボリックな変数または式からなるベクトルまたは行列として指定します。これは、多くの場合 "周波数変数" と呼ばれます。

変換変数を指定しない場合、既定では、fourier は変数 w を使用します。wf の独立変数である場合、既定の変換変数は変数 v です。

詳細

すべて折りたたむ

フーリエ変換

点 w における変数 x の式 f = f(x) のフーリエ変換は、次のように定義されます。

F(w)=cf(x)eiswxdx.

ここで、c と s はフーリエ変換のパラメーターです。関数 fourier は c = 1, s = –1 を使用します。

ヒント

  • f が行列の場合、fourier は行列のすべての成分に対して要素単位で適用されます。

  • transVar が行列の場合、fourier は行列のすべての成分に対して要素単位で適用されます。

  • 逆フーリエ変換を計算するには、ifourier を使用します。

参照

[1] Oberhettinger F., “Tables of Fourier Transforms and Fourier Transforms of Distributions”, Springer, 1990.

R2006a より前に導入

この情報は役に立ちましたか?