Main Content

sone2phon

Convert from sone to phon

Since R2020a

Description

example

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

example

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

Examples

collapse all

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

s = (0.51:0.01:1.8).^10;

p1 = sone2phon(s);

semilogx(s,p1)
xlabel('Loudness (sone)')
ylabel('Loudness Level (phon)')
title('Relation Between Sone and Phon (ISO 532-1)')
grid on
axis([0 s(end) 0 130])

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

p2 = sone2phon(s,'ISO 532-2');

semilogx(s,p2)
xlabel('Loudness (sone)')
ylabel('Loudness Level (phon)')
title('Relation Between Sone and Phon (ISO 532-2)')
grid on
axis([0 s(end) 0 130])

Input Arguments

collapse all

Input loudness in sone, 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 level in phon, returned as a scalar, vector, matrix, or multidimensional array the same size as sone.

Data Types: single | double

Algorithms

collapse all

ISO 532-1: Zwicker Method

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

phon={40(sone)0.3540+10log2(sone)ifsone<1otherwise

ISO 532-2: Moore-Glasberg Method

In the Moore-Glasberg method, conversion from sone to phon 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 sone2phon 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