필터 지우기
필터 지우기

How to compute Sound Pressure Level?

조회 수: 72 (최근 30일)
sangwoo ha
sangwoo ha 2022년 6월 7일
답변: Sarthak 2023년 9월 15일
I have to Plot SPL(Sound Pressure Level)
SPL = 20log10(P1/P_ref), where P_ref = 2upa.
the outcome is scalar.
i want to plot SPL Gragh in frequency domain. SPL = 20log10(abs(P1)/abs(P_ref))
when i have P1 FFT data, that is the value of P_ref ??
Thank you

답변 (1개)

Sarthak
Sarthak 2023년 9월 15일
Hi Sangwoo,
I understand you want to plot the SPL Graph in frequency domain and want to know the value of “P_ref”.
In the formula for Sound Pressure Level (SPL), “P_ref” is the reference pressure level. It is a fixed reference value used to calculate the SPL in decibels (dB). The commonly used reference pressure level in acoustics is 20 micropascals (uPa), which corresponds to the threshold of hearing for the average human ear at a frequency of 1 kHz.
So, when you have FFT data for P1 and want to calculate SPL in the frequency domain, you should use “P_ref” as 20 uPa for all frequency components. This is because the reference level for SPL remains constant across different frequencies.
Here's how you can calculate SPL in the frequency domain using FFT data:
1. Compute the FFT of the sound signal to obtain the frequency domain representation of P1.
2. For each frequency component in the FFT data, calculate the magnitude (absolute value) of P1 at that frequency.
3. Use the formula for SPL:
SPL(f) = 20 * log10(|P1(f)| / P_ref)
Where:
- “SPL(f)” is the SPL at frequency “f”.
- “|P1(f)|” is the magnitude of P1 at frequency “f”.
- “P_ref” is the reference pressure level (20 uPa).
4. Plot the calculated SPL values against the corresponding frequency components.
You can try writing the code using the above steps. Hope this solves your query.

카테고리

Help CenterFile Exchange에서 Audio I/O and Waveform Generation에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by