ISO 226:2003 Normal equal-loudness-level contours
NOTE: this function is now available from the IoSR Matlab Toolbox as iosr.auditory.iso226.
-------------------------
ISO 226:2003 Normal equal-loudness-level contours
[spl,f] = iso226(phon)
[spl,f] = iso226(phon,fq)
... = iso226(phon,fq,sq)
... = iso226(phon,[],sq)
[SPL,F] = ISO226(PHON) returns the sound pressure level
(SPL) (dB) of pure tone frequencies F (Hz) at the
loudness level(s) PHON. The values are calculated
according to ISO 226:2003 using the reference
frequencies specified in the standard. According to the
standard, PHON is only valid at all frequencies if
20<=PHON<80 (although the function will return SPL
values outside of this range).
PHON may be an array of any size; SPL and F will be of
size [1,29,M,N,P,...] where M,N,P,... are the dimensions
of PHON.
[SPL,F] = ISO226(PHON,FQ) returns the SPL of the pure
tone frequencies in FQ at the specified loudness
level(s). According to the standard, FQ is only valid
below 12.5 kHz (although the function will extrapolate
SPL values outside of this range).
FQ may be an array of any size; SPL and F will be of
size [Q,R,S,...,M,N,P,...] where Q,R,S,... are the
dimensions of FQ.
... = iso226(phon,fq,sq) specifies whether singleton
dimensions will be removed from the output. With
sq=false, singleton dimensions will be retained
(default), else they will be removed.
... = iso226(phon,[],sq) uses the standard reference
frequencies for SPL calculations.
Example
% Plot equal-loudness contours between 20 and 80 phon
% Calculate SPLs
phons = 20:10:80;
[spl,f] = iso226(phons,[],true);
% plot
figure; semilogx(f,spl)
set(gca,'xlim',[min(f(:)) max(f(:))])
legend(num2str(phons'),'location','southwest');
title('Equal loudness contours for different loudness levels (in phons)')
xlabel('Frequency [Hz]')
ylabel('SPL [dB]')
Cite As
Christopher Hummersone (2024). ISO 226:2003 Normal equal-loudness-level contours (https://github.com/IoSR-Surrey/MatlabToolbox), GitHub. Retrieved .
MATLAB Release Compatibility
Platform Compatibility
Windows macOS LinuxCategories
Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.