ドキュメンテーション

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

chirp

スイープ周波数の余弦信号

構文

y = chirp(t,f0,t1,f1)
y = chirp(t,f0,t1,f1,'method')
y = chirp(t,f0,t1,f1,'method',phi)
y = chirp(t,f0,t1,f1,'quadratic',phi,'shape')

説明

y = chirp(t,f0,t1,f1) では、配列 t で定義された時間におけるスイープ周波数の線形余弦信号が生成されます。ここで、f0 は時間 0 での瞬間周波数、f1 は時間 t1 での瞬間周波数です。f0f1 はともに Hz です。指定しない場合、f0 は、対数 chirp に対しては  e-6 で、それ以外の場合は 0 です。t1 は  1f1 は  100 となります。

y = chirp(t,f0,t1,f1,'method') では、代替のスイープ手法オプションを指定します。ここで、method は以下のいずれかとなります。

  • linear: 以下の式によって与えられる瞬間周波数スイープ fi(t) を指定します。

    fi(t)=f0+βt

    ここで、

    β=(f1f0)/t1

    また、f0 の既定値は 0 です。β により、時間 t1 における望ましい周波数ブレークポイント f1 の維持が確保されます。

  • quadratic: 以下の式によって与えられる瞬間周波数スイープ fi(t) が指定されます。

    fi(t)=f0+βt2

    ここで、

    β=(f1f0)/t12

    また、f0 の既定値は 0 です。f0 > f1 (ダウンスイープ) の場合、既定の形状は凸になります。f< f1 (アップスイープ) の場合、既定の形状は凹になります。

  • logarithmic: 以下の式によって求められる瞬間周波数スイープ fi(t) が指定されます。

    fi(t)=f0×βt

    ここで、

    β=(f1f0)1t1

    また、f0 の既定値は 1e-6 です。周波数のアップスイープ (f> f0) とダウンスイープ f0 > f1) の両方が可能です。

上記の各手法は、それぞれ 'li''q'、および 'lo' として入力できます。

y = chirp(t,f0,t1,f1,'method',phi) では、初期位相 phi が度単位で設定できるようになります。指定しなかった場合、phi は 0 です。後続の入力引数が空行列か省略された場合は、既定値が代用されます。

y = chirp(t,f0,t1,f1,'quadratic',phi,'shape') では、2 次スイープ周波数信号のスペクトログラムの shape が指定されます。shapeconcave または convex で、正の周波数軸での放物線の形状を記述します。shape を省略した場合は既定の設定が使用され、ダウンスイープ (f0 > f1) の場合は凸、アップスイープ (f< f1) の場合は凹になります。

すべて折りたたむ

瞬間周波数偏差が線形に変化するチャープを生成します。チャープは 1 kHz で 2 秒間サンプリングされています。瞬間周波数は、t = 0 では 0 であり、t = 1 秒で 250 Hz になります。

t = 0:1/1e3:2;
y = chirp(t,0,1,250);

チャープのスペクトログラムを計算し、プロットします。256 DFT 点、それと同じ長さのハミング ウィンドウ、オーバーラップのサンプル 250 個を指定します。

spectrogram(y,256,250,256,1e3,'yaxis')

瞬間周波数偏差が時間の 2 乗とともに変化するチャープを生成します。チャープは 1 kHz で 2 秒間サンプリングされています。瞬間周波数は、t = 0 では 100 Hz であり、t = 1 秒で 200 Hz になります。

t = 0:1/1e3:2;
y = chirp(t,100,1,200,'quadratic');

チャープのスペクトログラムを計算し、プロットします。128 DFT 点、それと同じ長さのハミング ウィンドウ、オーバーラップのサンプル 120 個を指定します。

spectrogram(y,128,120,128,1e3,'yaxis')

1 kHz で 2 秒間サンプリングされた凸の 2 次チャープを生成します。瞬間周波数は、t = 0 では 400 Hz であり、t = 1 秒で 300 Hz になります。

t = 0:1/1e3:2;
fo = 400;
f1 = 300;
y = chirp(t,fo,1,f1,'quadratic',[],'convex');

チャープのスペクトログラムを計算し、プロットします。256 DFT 点、それと同じ長さのハミング ウィンドウ、オーバーラップのサンプル 200 個を指定します。

spectrogram(y,256,200,256,1e3,'yaxis')

1 kHz で 4 秒間サンプリングされた凹の 2 次チャープを生成します。瞬間周波数が、最小周波数 100 Hz、最大周波数 500 Hz のサンプリング間隔の中間点で対称となるように時間ベクトルを指定します。

t = -2:1/1e3:2;
fo = 100;
f1 = 200;
y = chirp(t,fo,1,f1,'quadratic',[],'concave');

チャープのスペクトログラムを計算し、プロットします。128 DFT 点、それと同じ長さのハン ウィンドウ、オーバーラップのサンプル 120 個を指定します。関数 spectrogram は、t = 0 を開始点として時間を測定することに注意してください。

spectrogram(y,hann(128),120,128,1e3,'yaxis')

1 kHz で 10 秒間サンプリングされた対数チャープを生成します。瞬間周波数は、最初は 10 Hz で最後は 400 Hz になります。

t = 0:1/1e3:10;
fo = 10;
f1 = 400;
y = chirp(t,fo,10,f1,'logarithmic');

チャープのスペクトログラムを計算し、プロットします。256 DFT 点、それと同じ長さのハミング ウィンドウ、オーバーラップのサンプル 200 個を指定します。

spectrogram(y,256,200,256,1e3,'yaxis')

R2006a より前に導入

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