pspectrumにてデフォルトで使われている式を変える方法
3 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Tomo
el 6 de Mzo. de 2022
Comentada: Tomo
el 7 de Mzo. de 2022
表題の件について,解決策をご存じの方がいらっしゃいましたら,ご回答いただけましたら幸いでございます.
以下,質問の詳細について述べさせていただきます.
現在,pspectrum関数を用いて,power spectrum densityを示そうと考えております.
MATLABのヘルプセンターには「出力引数を設定せずに pspectrum(___) を使用すると、現在の Figure ウィンドウにスペクトル推定がプロットされます。プロットでは、この関数が 10 log10(p) を使用して p を dB に変換します。」と書かれております.
ご存じの方がいらっしゃいましたら,ご教授いただければ幸いです.よろしくお願いいたします.
0 comentarios
Respuesta aceptada
Hernia Baby
el 6 de Mzo. de 2022
ちょっと懸念点合わせて回答させてください
■懸念事項
pは平均パワーなので振幅をAとすると となっています
なので の状態です
ここで は望んでいない数字かもしれません
■質問の回答
■例
まずは準備
Fs = 1e3;
t = (0:1/Fs:1)';
% 振幅5 周波数10[Hz] の信号
A = 5;
f1 = 10;
x = A*sin(2*pi*f1*t);
plot(t,x)
[p,f] = pspectrum(x,Fs);
figure
plot(f,p)
xlim([0 50])
xlabel('周波数[Hz]')
text(f(p==max(p)),p(p==max(p))+.5,sprintf('%g',round(max(p),1)));
ここでだいたい振幅の二乗の半分で表記されていることがわかります
このあとは回答になります
SP = 20*log10(p/20);
figure
plot(f,SP)
xlim([0 50])
xlabel('周波数[Hz]')
4 comentarios
Hernia Baby
el 7 de Mzo. de 2022
なるほど、単位をそろえていたのですね。
それでしたらsp=10*log10(p/20^2)であっていると思います。
となっているので消えますね。
Más respuestas (0)
Ver también
Categorías
Más información sobre スペクトル推定 en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!