jacky19831102 发表于 2009-12-4 13:02

如何从声场PSD频谱图计算总声功率

想从声场PSD频谱图中计算总声功率AOSWL。可能还有些基本概念不是很清楚,下面有描述错误的恳请指出。

假设声场的PSD频谱图(1/3倍频图)如下:

我的计算过程是把各频带的声功率叠加得到总声功率
公式是:AOSWL=10*log10(∑10^(SWL(i)/10))
其中SWL(i)是各频带的纵坐标值,如上图,分别为55.2、61.4、58.5、56.1、46.5......30.5
用FORTRAN简单编程:
PARAMETER (N=30)
DIMENSION SWL(N)
DATA SWL/55.2,61.4,58.5,56.1,46.5,51.0,57.6,56.7,57.6,59.3,57.9,57.2,55.8,&
         53.7,54.4,53.1,52.1,51.5,48.7,46.7,44.0,41.0,37.3,34.8,32.9,31.5,&
   30.6,30.4,30.4,30.5/
sum=0.0
DO i=1,N
sum=sum+10**(0.1*SWL(i))
END DO
AOSWL=10*ALOG10(sum)
WRITE(*,*)AOSWL
END
程序计算结果为:AOSWL=69.12808(dB)
与上图中显示的70.5(dB)略有不同,所以不知道这个计算方法对不对?

Jeremiah 发表于 2012-4-5 21:58

你用的什么窗?

Jeremiah 发表于 2012-4-5 21:58

不过,我觉得你的计算结果没有问题。图中的结果反而有问题。
页: [1]
查看完整版本: 如何从声场PSD频谱图计算总声功率