Skip to content

Predicting Panel Sound Insulation

Key references: Bies et al. 2017Hopkins 2007Cremer et al. 2005

A laboratory test measures the sound reduction index of a finished element; this page instead predicts from the physical properties of the construction, so a partition can be designed before it is built. It covers the airborne insulation of a single panel (the mass law and the coincidence dip), the double wall (its mass-spring-mass resonance), the transmission through slits and apertures that caps any real construction, the radiation efficiency of a bending plate, and the point mobilities that set the vibrational power a structure absorbs. The measured counterparts these predictions feed live in Predicting Sound Insulation (EN 12354) and Field Insulation Measurement and Ratings.

Four panels: the single-panel mass law with its coincidence dip, the double wall with the mass-spring-mass resonance and cavity gain, the plate radiation efficiency rising to unity above the critical frequency, and a composite wall whose 1 % open slit caps R at the open-area limitFour panels: the single-panel mass law with its coincidence dip, the double wall with the mass-spring-mass resonance and cavity gain, the plate radiation efficiency rising to unity above the critical frequency, and a composite wall whose 1 % open slit caps R at the open-area limit

Single panel: the mass law and coincidence (Bies 7.2)

Section titled “Single panel: the mass law and coincidence (Bies 7.2)”

A limp, non-stiff panel transmits sound by being driven bodily by the incident pressure; the heavier it is and the higher the frequency, the more it resists. The normal-incidence mass law (Bies Eq. 7.40) and its diffuse-field form (Eq. 7.42) are

with the mass per unit area and dB (one-third octave) or dB (octave). Above the argument’s knee the mass law rises 6 dB per octave and 6 dB per doubling of mass, the two facts every insulation calculation rests on.

A real panel is also stiff, so at the coincidence (critical) frequency (Bies Eq. 7.3)

the free bending wavelength matches the trace wavelength of the incident sound and the panel goes transparent: the coincidence dip. Sharp’s method holds the field-incidence mass law up to , drops through a straight line in , and from upward follows (Eq. 7.44) with the loss factor . The dip sits at Bies design-chart point B, .

import numpy as np
from phonometry import (
coincidence_frequency, plate_bending_stiffness,
single_panel_transmission_loss,
)
# 6 mm float glass: E = 62 GPa, rho = 2500 kg/m3, nu = 0.24, eta = 0.024.
bands = np.array([100, 125, 160, 200, 250, 315, 400, 500, 630, 800,
1000, 1250, 1600, 2000, 2500, 3150], dtype=float)
mass = 2500.0 * 0.006 # 15 kg/m2
bp = plate_bending_stiffness(6.2e10, 0.006, 0.24) # B' [N.m]
fc = coincidence_frequency(mass, bp)
print(round(fc)) # 2107 Hz (Hopkins declares ~2079)
res = single_panel_transmission_loss(bands, mass, critical_frequency=fc,
loss_factor=0.024)
print(round(res.rating().rating)) # 32 -> Rw = 32 dB (catalogue 6 mm glass)
res.plot() # predicted R(f) with the critical frequency marked (needs matplotlib)

The predicted spectrum plugs straight into the ISO 717-1 rating through res.rating(), and into EN 12354 as the “predicted” element where the standard would otherwise demand a laboratory measurement.

Predicted sound reduction index of a 6 mm float glass pane per one-third-octave band against the shifted ISO 717-1 reference curve, with the coincidence dip at about 2100 Hz marked, the unfavourable deviations shaded and the Rw rating annotatedPredicted sound reduction index of a 6 mm float glass pane per one-third-octave band against the shifted ISO 717-1 reference curve, with the coincidence dip at about 2100 Hz marked, the unfavourable deviations shaded and the Rw rating annotated

The predicted Sharp spectrum rated exactly like a measurement: the coincidence dip at kHz collects most of the unfavourable deviations, and the shifted reference read at 500 Hz gives the catalogue dB of 6 mm glass.

Show the code for this figure
import matplotlib.pyplot as plt
import numpy as np
from phonometry import (
coincidence_frequency, plate_bending_stiffness,
single_panel_transmission_loss,
)
# 6 mm float glass: E = 62 GPa, rho = 2500 kg/m3, nu = 0.24, eta = 0.024.
bands = np.array([100, 125, 160, 200, 250, 315, 400, 500, 630, 800,
1000, 1250, 1600, 2000, 2500, 3150], dtype=float)
mass = 2500.0 * 0.006
bp = plate_bending_stiffness(6.2e10, 0.006, 0.24)
fc = coincidence_frequency(mass, bp)
res = single_panel_transmission_loss(bands, mass, critical_frequency=fc,
loss_factor=0.024)
w = res.rating()
# One line each — the predicted R(f), or the rated curve vs the reference:
res.plot()
w.plot()
plt.show()
# By hand, combining both on one axes:
fig, ax = plt.subplots()
ax.semilogx(bands, res.transmission_loss, "o-", label="predicted R (Sharp)")
ax.semilogx(w.band_centers, w.shifted_reference, "s--",
label="shifted reference")
ax.fill_between(w.band_centers, w.measured, w.shifted_reference,
where=w.measured < w.shifted_reference, interpolate=True,
alpha=0.3, label="unfavourable deviations")
ax.axvline(fc, ls=":", color="tab:green", label=f"fc = {fc:.0f} Hz")
ax.set_xlabel("Frequency [Hz]")
ax.set_ylabel("Sound reduction index R [dB]")
ax.set_title(f"Rw = {w.rating} dB (C={w.c:+d}; Ctr={w.ctr:+d})")
ax.legend()
plt.show()

Double wall: the mass-spring-mass resonance (Bies 7.2.6)

Section titled “Double wall: the mass-spring-mass resonance (Bies 7.2.6)”

Two leaves separated by a cavity behave as a mass-spring-mass system, with the cavity air (or fill) the spring. Below its resonance (Bies Eq. 7.62, Hopkins Eq. 4.73)

the pair moves as one and follows the mass law of the combined mass; above it the two mass laws add, boosted by the cavity, until the limiting frequency where the boost saturates at 6 dB (Eq. 7.64). A porous fill (any PorousMediumResult) softens the cavity and lowers .

from phonometry import double_wall_transmission_loss, mass_spring_mass_resonance
from phonometry import mass_law_transmission_loss, miki
# Two 12 kg/m2 leaves, 75 mm air gap.
f0 = mass_spring_mass_resonance(12.0, 12.0, 0.075)
print(round(f0)) # 89 Hz
# Below f0 the double wall equals the mass law of the total mass 24 kg/m2:
dw = double_wall_transmission_loss(bands, 12.0, 12.0, 0.075)
print(round(float(dw.transmission_loss[0]), 1),
round(float(mass_law_transmission_loss(bands[0], 24.0)), 1)) # equal
# A mineral-wool fill (a materials porous model) lowers the resonance:
fill = miki([f0], 7000.0)
print(round(mass_spring_mass_resonance(12.0, 12.0, 0.075, cavity_medium=fill))) # < 89 Hz
dw.plot() # double-wall R(f) with the mass-spring-mass resonance marked (needs matplotlib)

Slits, holes and apertures (Hopkins 4.3.10)

Section titled “Slits, holes and apertures (Hopkins 4.3.10)”

A small air path is the real limit on any heavy construction. The transmission coefficient of a straight slit (Gomperts, Hopkins Eq. 4.99) and of a circular hole (Wilson & Soroka, Eq. 4.102) are predicted directly, with the slit’s resonances at (Eq. 4.101). They combine with the wall in the area-weighted energy sum (Eq. 4.92)

so a bare opening of relative area caps the composite at ; a 1 % opening can never do better than 20 dB, whatever the wall.

from phonometry import (
composite_transmission_loss, slit_transmission_coefficient,
slit_resonance_frequencies,
)
# A 2 mm x 100 mm-deep slit: its transmission peaks at the half-wavelength
# resonances of the slit depth.
print(slit_resonance_frequencies(0.1, 0.002, orders=2).round().tolist()) # [~1500, ~3100]
# A wall of Rw = 50 dB with 1 % of its area left open as a slit is capped:
print(round(float(composite_transmission_loss([0.99, 0.01], [50.0, 0.0])), 1)) # 20.0

Radiation efficiency of a bending plate (Hopkins 2.9)

Section titled “Radiation efficiency of a bending plate (Hopkins 2.9)”

How much airborne power a vibrating plate actually radiates per unit mean-square velocity is its radiation efficiency , the radiation factor that Sound Power from Surface Vibration (ISO 7849) otherwise takes as a measured input. Below the critical frequency the plate radiates weakly (edge and corner modes); above it (Leppington/Maidanik, Hopkins Eqs 2.227-2.230):

from phonometry import radiation_efficiency, sound_power_from_vibration
# The 6 mm glass pane (1.5 x 1.25 m) of the single-panel example above.
sig = radiation_efficiency(bands, 1.5, 1.25, fc)
print(sig.radiation_efficiency[bands == 2000].round(2)) # ~2.5 (peak at coincidence)
# Feed the prediction straight into ISO 7849 as the radiation factor:
lw = sound_power_from_vibration(velocity_level=80.0, area=1.875,
radiation_factor=sig.radiation_efficiency,
frequencies=bands)
sig.plot() # sigma(f) with the coincidence peak (needs matplotlib)

Point mobilities of infinite structures (Cremer Table 5.1)

Section titled “Point mobilities of infinite structures (Cremer Table 5.1)”

The vibrational power a point force injects is (Cremer Eq. 5.23), so the driving-point mobility (the reciprocal of the impedance) sets how much energy a structure absorbs. For infinite structures these are closed forms: an infinite thin plate is a pure resistance (real, frequency independent), while an infinite beam has (45 degrees, falling as ). They supply the receiver mobility EN 12354-5 needs when no measurement exists, and bundle as an ISO 7626 MobilityResult.

from phonometry import infinite_plate_impedance, infinite_beam_mobility, injected_power
z_plate = infinite_plate_impedance(bp, mass) # Z = 8 sqrt(B' m'') [N.s/m]
print(round(z_plate)) # real, frequency independent
w = injected_power(force=10.0, mobility=1.0 / z_plate)
print(round(float(w) * 1e3, 3), "mW") # W = |F|^2 / (16 sqrt(B' m''))
Show the code for the concept figure
import numpy as np
import matplotlib.pyplot as plt
from phonometry import (
coincidence_frequency, composite_transmission_loss,
double_wall_transmission_loss, mass_law_transmission_loss,
mass_spring_mass_resonance, plate_bending_stiffness,
radiation_efficiency, single_panel_transmission_loss,
)
bands = np.array([50, 63, 80, 100, 125, 160, 200, 250, 315, 400, 500, 630, 800,
1000, 1250, 1600, 2000, 2500, 3150, 4000, 5000], dtype=float)
fig, ax = plt.subplots(2, 2, figsize=(12, 9))
bp = plate_bending_stiffness(6.2e10, 0.006, 0.24)
fc = coincidence_frequency(15.0, bp)
ml = mass_law_transmission_loss(bands, 15.0, incidence="field")
sp = single_panel_transmission_loss(bands, 15.0, critical_frequency=fc, loss_factor=0.024)
ax[0, 0].semilogx(bands, ml, "--", label="field-incidence mass law")
ax[0, 0].semilogx(bands, sp.transmission_loss, "-o", ms=3, label="single panel R (Sharp)")
ax[0, 0].axvline(fc, ls=":", color="r"); ax[0, 0].set_title("Single panel")
dw = double_wall_transmission_loss(bands, 12.0, 12.0, 0.075)
ax[0, 1].semilogx(bands, mass_law_transmission_loss(bands, 24.0), "--", label="single leaf")
ax[0, 1].semilogx(bands, dw.transmission_loss, "-o", ms=3, label="double wall")
ax[0, 1].axvline(mass_spring_mass_resonance(12.0, 12.0, 0.075), ls=":", color="r")
ax[0, 1].set_title("Double wall")
sig = radiation_efficiency(bands, 1.5, 1.25, fc)
ax[1, 0].loglog(bands, sig.radiation_efficiency, "-o", ms=3, label=r"$\sigma(f)$")
ax[1, 0].axhline(1.0, ls=":"); ax[1, 0].set_title("Radiation efficiency")
wall = sp.transmission_loss
comp = [float(composite_transmission_loss([0.99, 0.01], [w, 0.0])) for w in wall]
ax[1, 1].semilogx(bands, wall, "-o", ms=3, label="solid wall")
ax[1, 1].semilogx(bands, comp, "-s", ms=3, label="wall + 1 % slit")
ax[1, 1].axhline(20.0, ls=":"); ax[1, 1].set_title("Composite with aperture")
for a in ax.flat:
a.set_xlabel("Frequency [Hz]"); a.legend(fontsize=8); a.grid(alpha=0.3)
fig.suptitle("Theoretical panel sound insulation")
fig.tight_layout(); plt.show()
ParameterTypeUnitsRange / defaultNotes
mass_per_areafloatkg/m²> 0Surface density
critical_frequency / bending_stiffnessfloatHz / N·mgive oneCoincidence , or to compute it
loss_factorfloat> 0, default 0.01Total loss factor
bandstr'third' (−5.5 dB) / 'octave' (−4.0 dB)Field-incidence correction width
mass1 / mass2floatkg/m²> 0Double-wall leaf surface densities
gapfloatm> 0Cavity depth
cavity_mediumPorousMediumResultdefault NonePorous fill; lowers
width / depth (slit)floatm> 0Slit width / depth
field / position (slit)str'diffuse'/'normal', 'mid'/'edge'Incident field and slit location
radius / depth (hole)floatm> 0Circular-aperture radius / depth
areas / reduction_indicesseqm² / dBlength Composite elements (1-D or (N, bands))
length_x / length_yfloatm> 0Plate dimensions (radiation efficiency)
boundary / bafflestr'simply_supported'/'clamped', 'infinite'/'perpendicular'Plate edge and baffle constants

single_panel_transmission_loss and double_wall_transmission_loss return a SoundReductionResult (transmission_loss, transmission_coefficient, critical_frequency / resonance_frequency, .rating(), .plot()); the slit and hole functions return an ApertureTransmissionResult (transmission_coefficient, transmission_loss, .plot()); radiation_efficiency a RadiationEfficiencyResult (radiation_efficiency, radiation_index, .plot()). The predictions carry the modelling caveats of their sources (Sharp’s method above the first panel resonance; Gomperts’ inviscid slit valid for ; Leppington “method no. 1”).

Covered. The source formulae themselves: Bies’ §7.2 mass law and Sharp’s coincidence method (Eqs 7.40/7.42/7.44) for a single panel, the double-wall mass-spring-mass resonance and its saturating cavity boost (Eqs 7.62-7.64), Hopkins’ Gomperts slit and Wilson & Soroka circular-hole transmission coefficients with the area-weighted composite sum (Eq. 4.92), the Leppington/Maidanik plate radiation efficiency (Eqs 2.227-2.230), and the Cremer Table 5.1 point impedances and mobilities of infinite plates and beams with the injected-power relation, via single_panel_transmission_loss, double_wall_transmission_loss, slit_transmission_coefficient, composite_transmission_loss, radiation_efficiency, infinite_plate_impedance, infinite_beam_mobility and injected_power.

Not covered. Each prediction stays inside the validity range its source states, which the guide flags but does not extend past: Sharp’s method (and so single_panel_transmission_loss) is not valid below about the panel’s first resonance, where the panel’s own low-frequency modal behaviour, not the mass law, governs; Gomperts’ slit model holds only for a narrow slit, , so a wide aperture falls outside it; and only Leppington’s “method no. 1” for radiation efficiency is implemented, not his other published formulations.

  • Bies, D. A., Hansen, C. H., & Howard, C. Q. (2017). Engineering Noise Control (5th ed.). CRC Press. https://doi.org/10.1201/9781351228152Section 7.2: the mass law (Eq. 7.40/7.42), coincidence frequency (Eq. 7.3), Sharp's single-panel method (7.2.4.1) and the double-wall model (7.2.6, Eq. 7.62-7.64). ISBN 978-1-4987-2405-0.
  • Cremer, L., Heckl, M., & Petersson, B. A. T. (2005). Structure-Borne Sound (3rd ed.). Springer. https://doi.org/10.1007/b137728Chapter 5, Table 5.1: the compilation of point impedances and mobilities of infinite structures (plate Z = 8 sqrt(B' m''), beam, rod) and the injected-power relation W = 0.5 |F|^2 Re{Y} (Eq. 5.23). ISBN 978-3-540-22696-3.
  • Hopkins, C. (2007). Sound insulation. Butterworth-Heinemann. https://doi.org/10.4324/9780080550473Section 2.9 (plate radiation efficiency, Leppington/Maidanik Eqs 2.227-2.230) and Section 4.3.10 (slits, holes and apertures, Gomperts Eq. 4.99, Wilson & Soroka Eq. 4.102, composite Eq. 4.92). ISBN 978-0-7506-6526-1.
Created and maintained by· GitHub· PyPI· All projects