stft関数のexampleが正しく動作しない

stft で示されている下記のコードが実行できません。
hann(256)なら実行できるが、hann(256,'periodic')が実行できません。
fs = 10e3;
t = 0:1/fs:2;
x = vco(sin(2*pi*t),[0.1 0.4]*fs,fs);
[s,f,t] = stft(x,fs,Window=kaiser(256,5),OverlapLength=220,FFTLength=512);
次を使用中のエラー: hann
入力引数が多すぎます。
エラー: signal.internal.stft.stftParser (行 19)
defaultWin = hann(defaultNwin,'periodic');
エラー: stft (行 181)
[data,opts] = signal.internal.stft.stftParser('stft',x,varargin{:});

2 commentaires

Hernia Baby
Hernia Baby le 21 Fév 2025
MATLABのバージョンはいくつでしょうか?
立
le 21 Fév 2025
2024aです

Connectez-vous pour commenter.

 Réponse acceptée

takemoto
takemoto le 21 Fév 2025
Déplacé(e) : Kojiro Saito le 2 Mar 2025

1 vote

わりとよくあるケースとして、同名の自作関数がパス上に存在することはありませんか?自作のhann.mが、複数の入力引数を許さない場合にはその様なエラーが出そうです。コマンドウィンドウで、
>>which -all hann
と入力して、複数のhann.mが存在するか確認してみてはどうでしょうか。

1 commentaire

立
le 21 Fév 2025
Déplacé(e) : Kojiro Saito le 2 Mar 2025
正しくその通りでした!
Fieldtripの同名関数(hann)と競合していました。
ありがとうございます。

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

Produits

Version

R2024a

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!