Main Content

phon2sone

Convert from phon to sone

Since R2020a

Description

sone = phon2sone(phon) converts phon to sone, according to ISO 532-1:2017(E).

example

sone = phon2sone(phon,standard) specifies the standard used to convert phon to sone.

example

Examples

collapse all

Plot the relationship between loudness level (phon) and loudness (sone), as specified in ISO 532-1.

p = 0:120;

s1 = phon2sone(p);

semilogy(p,s1)
xlabel('Loudness Level (phon)')
ylabel('Loudness (sone)')
title('Relation Between Phon and Sone (ISO 532-1)')
grid on
axis([0 120 0 500])

Figure contains an axes object. The axes object with title Relation Between Phon and Sone (ISO 532-1), xlabel Loudness Level (phon), ylabel Loudness (sone) contains an object of type line.

Plot the relationship between loudness level (phon) and loudness (sone), as specified in ISO 532-2.

s2 = phon2sone(p,'ISO 532-2');

semilogy(p,s2)
xlabel('Loudness Level (phon)')
ylabel('Loudness (sone)')
title('Relation Between Phon and Sone (ISO 532-2)')
grid on
axis([0 120 0 500])

Figure contains an axes object. The axes object with title Relation Between Phon and Sone (ISO 532-2), xlabel Loudness Level (phon), ylabel Loudness (sone) contains an object of type line.

Input Arguments

collapse all

Input loudness level in phon, specified as a scalar, vector, matrix, or multidimensional array of nonnegative values.

Data Types: single | double

Reference standard for unit conversion, specified as 'ISO 532-1' or 'ISO 532-2'.

Data Types: char | string

Output Arguments

collapse all

Output loudness in sone, returned as a scalar, vector, matrix, or multidimensional array the same size as phon.

Data Types: single | double

Algorithms

collapse all

ISO 532-1: Zwicker Method

The Zwicker method of conversion from phon to sone is given by [1]:

sone={(phon40)10.35ifphon<12(phon4010)otherwise

ISO 532-2: Moore-Glasberg Method

In the Moore-Glasberg method, conversion from phon to sone is prescribed according to this table (table 5 in [2]).

Loudness Level (phon)

Calculated Loudness (sone)

0.00.001
2.20.004
4.00.008
5.00.010
7.50.019
10.00.031
15.00.073
20.00.146
25.00.26
30.00.43
35.00.67
40.01.00
45.01.46
50.02.09
55.02.96
60.04.14
65.05.77
70.08.04
75.011.2
80.015.8
85.022.7
90.032.9
95.047.7
100.069.6
105.0102.0
110.0151.0
115.0225.0
120.0337.6

The phon2sone function uses interpolation for values not specified in the table.

References

[1] ISO 532-1:2017(E). "Acoustics – Methods for calculating loudness – Part 1: Zwicker method." International Organization for Standardization.

[2] ISO 532-2:2017(E). "Acoustics – Methods for calculating loudness – Part 2: Moore-Glasberg method." International Organization for Standardization.

Extended Capabilities

C/C++ Code Generation
Generate C and C++ code using MATLAB® Coder™.

Version History

Introduced in R2020a