chirp
R2026bスイープ周波数の余弦信号
構文
説明
例
瞬時周波数偏差が線形に変化するチャープを生成します。チャープは 1 kHz で 2 秒間サンプリングされています。瞬時周波数は、t = 0 では 0 であり、t = 1 秒で 250 Hz になります。
t = 0:1/1e3:2; y = chirp(t,0,1,250);
チャープのスペクトログラムを計算し、プロットします。時間分解能が 0.1 秒になるように信号をセグメントに分割します。隣接するセグメント間の 99% のオーバーラップ、および 0.85 のスペクトル漏れを指定します。
pspectrum(y,1e3,"spectrogram",TimeResolution=0.1, ... OverlapPercent=99,Leakage=0.85)

瞬時周波数偏差が時間の 2 乗とともに変化するチャープを生成します。チャープは 1 kHz で 2 秒間サンプリングされています。瞬時周波数は、t = 0 では 100 Hz であり、t = 1 秒で 200 Hz になります。
t = 0:1/1e3:2;
y = chirp(t,100,1,200,"quadratic");チャープのスペクトログラムを計算し、プロットします。時間分解能が 0.1 秒になるように信号をセグメントに分割します。隣接するセグメント間の 99% のオーバーラップ、および 0.85 のスペクトル漏れを指定します。
pspectrum(y,1e3,"spectrogram",TimeResolution=0.1, ... OverlapPercent=99,Leakage=0.85)

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");
チャープのスペクトログラムを計算し、プロットします。時間分解能が 0.1 秒になるように信号をセグメントに分割します。隣接するセグメント間の 99% のオーバーラップ、および 0.85 のスペクトル漏れを指定します。
pspectrum(y,1e3,"spectrogram",TimeResolution=0.1, ... OverlapPercent=99,Leakage=0.85)

1 kHz で 4 秒間サンプリングされた凹の 2 次チャープを生成します。瞬時周波数が、最小周波数 100 Hz、最大周波数 500 Hz のサンプリング間隔の中間点で対称となるように時間ベクトルを指定します。
t = -2:1/1e3:2; fo = 100; t1 = max(t); f1 = 500; y = chirp(t,fo,t1,f1,"quadratic",[],"concave");
チャープのスペクトログラムを計算し、プロットします。時間分解能が 0.1 秒になるように信号をセグメントに分割します。隣接するセグメント間の 99% のオーバーラップ、および 0.85 のスペクトル漏れを指定します。
pspectrum(y,t,"spectrogram",TimeResolution=0.1, ... OverlapPercent=99,Leakage=0.85)

1 kHz で 10 秒間サンプリングされた対数チャープを生成します。瞬時周波数は、最初は 10 Hz で最後は 400 Hz になります。
t = 0:1/1e3:10;
fo = 10;
f1 = 400;
y = chirp(t,fo,10,f1,"logarithmic");チャープのスペクトログラムを計算し、プロットします。時間分解能が 0.2 秒になるように信号をセグメントに分割します。隣接するセグメント間の 99% のオーバーラップ、および 0.85 のスペクトル漏れを指定します。
pspectrum(y,t,"spectrogram",TimeResolution=0.2, ... OverlapPercent=99,Leakage=0.85)

周波数軸に対数スケールを使用します。スペクトログラムは低周波において高い不確実性をもつ直線になります。
ax = gca;
ax.YScale = "log";
単精度を使用して、1 kHz で 10 秒間サンプリングされた複素線形チャープを生成します。瞬時周波数は、最初は -200 Hz で最後は 300 Hz になります。初期位相はゼロです。
fs = 1e3; t = single(0:1/fs:10); fo = -200; f1 = 300; ph0 = 0; y = chirp(t,fo,t(end),f1,"linear",ph0,"complex");
チャープのスペクトログラムを計算し、プロットします。時間分解能が 0.2 秒になるように信号をセグメントに分割します。隣接するセグメント間の 99% のオーバーラップ、および 0.85 のスペクトル漏れを指定します。
pspectrum(y,t,"spectrogram",TimeResolution=0.2, ... OverlapPercent=99,Leakage=0.85)

複素チャープに、等しいが の位相差をもつ実数部と虚数部があることを確認します。
x = chirp(t,fo,t(end),f1,"linear",0)... + 1j*chirp(t,fo,t(end),f1,"linear",-90); pspectrum(x,t,"spectrogram",TimeResolution=0.2, ... OverlapPercent=99,Leakage=0.85)

入力引数
時間配列。ベクトル、行列、または N 次元配列として指定します。
tを行列または N 次元配列として指定した場合、chirp関数はtの各列を個別のチャネルとして扱い、tの各列で指定された時刻からyの各列にチャープ信号を生成します。単精度データを使用して
tを指定した場合、chirpは単精度でチャープ信号yを生成します。
データ型: single | double
時間 0 での初期瞬時周波数。実数スカラーとして Hz 単位で指定します。
データ型: single | double
参照時間。秒単位の正のスカラーとして指定します。
データ型: single | double
時間 t1 での瞬時周波数。実数スカラーとして Hz 単位で指定します。
データ型: single | double
スイープ手法。"linear"、"quadratic"、または "logarithmic" として指定します。
"linear"— 以下の式によって求められる瞬時周波数スイープ fi(t) が指定されます。ここで、
また、f0 の既定値は 0 です。係数 β により、時間 t1 における望ましい周波数ブレークポイント f1 の維持が確保されます。
"quadratic"— 以下の式によって求められる瞬時周波数スイープ fi(t) が指定されます。ここで、
また、f0 の既定値は 0 です。f0 > f1 (ダウンスイープ) の場合、既定の形状は凸になります。f0 < f1 (アップスイープ) の場合、既定の形状は凹になります。
"logarithmic"— 以下の式によって求められる瞬時周波数スイープ fi(t) が指定されます。ここで、
また、f0 の既定値は 10–6 です。
データ型: char | string
初期位相。正のスカラーとして度単位で指定します。
データ型: single | double
2 次チャープのスペクトログラム形状。"convex" または "concave" として指定します。shape は正の周波数軸での放物線の形状を記述します。shape を指定しなかった場合は、f0 > f1 のダウンスイープでは "convex" になり、f0 < f1 のアップスイープでは "concave" になります。
データ型: char | string
出力の実数/複素数。"real" または "complex" として指定します。
データ型: char | string
拡張機能
C/C++ コード生成
MATLAB® Coder™ を使用して C および C++ コードを生成します。
GPU コード生成
GPU Coder™ を使用して NVIDIA® GPU のための CUDA® コードを生成します。
chirp 関数は、スレッドベースの環境を完全にサポートします。詳細については、スレッドベースの環境での MATLAB 関数の実行を参照してください。
chirp 関数は、GPU 配列を完全にサポートします。GPU 上で関数を実行するには、入力データを gpuArray (Parallel Computing Toolbox) として指定します。詳細については、GPU での MATLAB 関数の実行 (Parallel Computing Toolbox)を参照してください。
バージョン履歴
R2006a より前に導入関数 chirp は gpuArray オブジェクトをサポートしています。この機能を使用するには、Parallel Computing Toolbox™ のライセンスを所有していなければなりません。
chirp 関数は単精度出力をサポートします。
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)