Skip to content

building.prediction.panel_transmission

Predicted airborne sound reduction index of panels (Bies, Hansen & Howard 2017, Engineering Noise Control 5e, Section 7.2; Sharp 1973).

Where EN 12354-1 (phonometry.building.prediction.simplified_model) takes the element sound reduction index R as a measured input, this module predicts R(f) from the physical properties of the construction: the mass per unit area, bending stiffness (through the coincidence frequency) and loss factor. The prediction feeds the same ISO 717-1 weighting (phonometry.weighted_rating) as the measured quantities, closing the chain from panel physics to the single-number Rw.

Mass law (Bies Eq. 7.40/7.42). A non-stiff panel transmits by forced motion; the transmission coefficient of an infinite limp panel gives the normal- and field-incidence transmission loss:

with m'' the mass per unit area, the characteristic impedance of air and the field-incidence correction dB for one-third-octave or 4.0 dB for octave bands (Eq. 7.42). The mass law rises 6 dB per octave and 6 dB per doubling of mass.

Single panel, Sharp’s method (Bies 7.2.4.1). Below the coincidence region the field-incidence mass law holds; from the coincidence frequency fc upwards the loss factor eta controls the transmission (Eq. 7.44):

and between and the curve is a straight line on versus . The coincidence dip at sits below the extrapolated mass law (Bies design-chart point B, ).

Double wall (Bies 7.2.6, Eq. 7.62-7.64). Two leaves m1, m2 separated by a gap d behave as a mass-spring-mass system. Below the resonance the pair follows the mass law of the combined mass ; above it the two mass laws add, boosted by the cavity (Eq. 7.64):

The cavity stiffness s'' is for an empty (adiabatic) air gap; a porous fill (a PorousMediumResult from phonometry.materials.absorbers.porous) lowers the resonance through its softer, near-isothermal effective bulk modulus and damps the cavity so the mid-band slope is realised without standing-wave dips.

Orthotropic panels (Bies 7.2.4.5; Vigran, Building Acoustics, 3.7.3 and 6.5.3). Ribbed and corrugated cladding is stiff along the corrugations and limp across them, so a single coincidence frequency no longer exists: the panel has a range bounded by the stiffest and the least stiff direction (Vigran Eq. 6.107). The bending-wave impedance then depends on the azimuth theta as well as the incidence angle phi (Heckl 1960; Hansen 1993; Vigran Eq. 6.108 = Bies Eq. 7.30), and the diffuse-field average is a double integral (Vigran Eq. 6.111 = Bies Eq. 7.38). The consequence is the whole point of the model: over one to two decades the resonant transmission dominates and R flattens far below the mass law of a flat plate of the same mass. See orthotropic_transmission_loss, orthotropic_critical_frequencies, corrugated_plate_stiffness and orthotropic_plate_resonance.

Auto-generated from the source docstrings by scripts/generate_api_docs.py (make api-docs). Do not edit by hand.

corrugated_plate_mass_factor(
corrugation_amplitude: float,
corrugation_wavelength: float,
) -> float

Surface-density increase of a sine-corrugated plate.

Corrugating a sheet does not change its thickness, so its mass per unit area grows in proportion to the developed length of the profile. For a sinusoid of amplitude H and wavelength L the developed length per period, divided by the period, is the closed form

with E the complete elliptic integral of the second kind. Vigran, in the worked example following his Eq. (3.115) (printed p. 96), warns that “we have to take into account the fact that the mass per unit area will increase when making the corrugations”, and it is exactly this factor that reproduces his published eigenfrequencies.

Parameters

NameDescription
corrugation_amplitudeCorrugation amplitude H, in m (> 0); the total peak-to-trough depth of the profile is .
corrugation_wavelengthCorrugation wavelength L, in m (> 0).

Returns: The factor (>= 1) multiplying the flat-sheet surface density.

Raises

ExceptionWhen
ValueErrorfor a non-positive input.
corrugated_plate_stiffness(
thickness: float,
corrugation_amplitude: float,
corrugation_wavelength: float,
*,
youngs_modulus: float,
poisson_ratio: float = 0.3,
) -> tuple[float, float, float]

Equivalent orthotropic stiffnesses of a “wavy” corrugated plate.

Timoshenko & Woinowsky-Krieger’s (1959) equivalent bending stiffnesses of a plate of thickness h whose profile is a sinusoid of amplitude H and wavelength L, as transcribed by Vigran Eq. (3.115) (printed p. 96):

Bx is the stiffness across the corrugations (slightly below the flat-plate value), Bz the stiffness along them (larger by orders of magnitude: that is what corrugating buys) and Bxz the twisting term Eq. (3.113) needs. Vigran’s footnote records that the same equations appear in Blevins (1979) “unfortunately, with a misprint in the expression for Bz”.

Feed (Bx, Bz) to orthotropic_critical_frequencies for the coincidence range and all three to orthotropic_plate_resonance for the eigenfrequencies. Remember to scale the surface density by corrugated_plate_mass_factor.

Parameters

NameDescription
thicknessSheet thickness h, in m (> 0).
corrugation_amplitudeCorrugation amplitude H, in m (> 0).
corrugation_wavelengthCorrugation wavelength L, in m (> 0).
youngs_modulusYoung’s modulus E, in Pa (> 0).
poisson_ratioPoisson’s ratio nu (Default: 0.3).

Returns: The triple (Bx, Bz, Bxz) in N.m.

Raises

ExceptionWhen
ValueErrorfor a non-positive input or .
double_wall_transmission_loss(
frequency: ArrayLike,
mass1: float,
mass2: float,
gap: float,
*,
loss_factor: float = 0.1,
cavity_medium: PorousMediumResult | None = None,
tie_stiffness_per_area: float = 0.0,
band: str = 'third',
speed_of_sound: float = 343.0,
air_density: float = 1.205,
) -> SoundReductionResult

Sound reduction index of a double wall (Bies 7.2.6, Eq. 7.64).

Piecewise Sharp model: below the mass-spring-mass resonance f0 the pair behaves as the mass law of the combined mass; between f0 and the limiting frequency the two mass laws add plus ; above f_l they add plus 6 dB. The curve is continuous at f_l ( there).

Ties or mounts bridging the cavity stiffen it (Hopkins Eq. 4.89), pushing f0 up and extending the combined-mass branch; pass their stiffness per unit area as tie_stiffness_per_area (see phonometry.wall_tie_stiffness_per_area).

Parameters

NameDescription
frequencyBand centre frequencies f, in hertz (array, > 0).
mass1Surface density of leaf 1 m1, in kg/m^2 (> 0).
mass2Surface density of leaf 2 m2, in kg/m^2 (> 0).
gapCavity depth d, in m (> 0).
loss_factorLeaf loss factor eta (> 0, Default: 0.1); reserved for the coincidence extension and reported for reference.
cavity_mediumOptional porous fill; see mass_spring_mass_resonance.
tie_stiffness_per_areaStiffness per unit area of a connection array bridging the cavity, in N/m^3 (>= 0, Default: 0).
bandBand width for the field correction ("third"/"octave").
speed_of_soundSpeed of sound in air c0 (Default: 343 m/s).
air_densityAir density rho0 (Default: 1.205 kg/m^3).

Returns: A SoundReductionResult (model "double-wall").

Raises

ExceptionWhen
ValueErrorfor a non-positive input.
field_incidence_correction(band: str = 'third') -> float

Field-incidence mass-law correction dB (Bies Eq. 7.42).

Parameters

NameDescription
band"third" (5.5 dB) or "octave" (4.0 dB).

Returns: The correction subtracted from the normal-incidence mass law, dB.

Raises

ExceptionWhen
ValueErrorfor an unknown band width.
mass_law_transmission_loss(
frequency: ArrayLike,
mass_per_area: float,
*,
incidence: str = 'field',
band: str = 'third',
field_correction: float | None = None,
speed_of_sound: float = 343.0,
air_density: float = 1.205,
) -> np.ndarray

Mass-law transmission loss of a limp panel (Bies Eq. 7.40/7.42).

; the field-incidence value subtracts the band correction of field_incidence_correction, or the explicit field_correction when one is given (Norton & Karczub Eq. 3.106 uses a flat 5 dB, the line plateau_transmission_loss builds its estimate on).

Parameters

NameDescription
frequencyFrequency f, in hertz (scalar or array, > 0).
mass_per_areaMass per unit area m'', in kg/m^2 (> 0).
incidence"normal" or "field" (Default: "field").
bandBand width for the field correction ("third"/"octave").
field_correctionExplicit field-incidence correction, in dB (>= 0), overriding the band table (Default: None).
speed_of_soundSpeed of sound in air c0 (Default: 343 m/s).
air_densityAir density rho0 (Default: 1.205 kg/m^3).

Returns: The transmission loss TL, in dB.

Raises

ExceptionWhen
ValueErrorfor a non-positive input or unknown incidence/band.
mass_spring_mass_resonance(
mass1: float,
mass2: float,
gap: float,
*,
cavity_medium: PorousMediumResult | None = None,
tie_stiffness_per_area: float = 0.0,
speed_of_sound: float = 343.0,
air_density: float = 1.205,
) -> float

Mass-spring-mass resonance f0 of a double wall (Bies Eq. 7.62).

with the cavity stiffness per unit area s''. For an empty air gap (adiabatic, Hopkins Eq. 4.72); with a porous cavity_medium the fill’s effective (near-isothermal) bulk modulus at the lowest supplied frequency sets a softer , lowering f0.

An array of mechanical connections across the cavity (wall ties in a masonry cavity wall, resilient mounts under a floating floor) acts as a spring in parallel with the cavity, adding to s'' (Hopkins Eq. 4.89). Pass that term as tie_stiffness_per_area; the helper phonometry.wall_tie_stiffness_per_area builds it from a tie density and Hopkins’ Table A4.

Parameters

NameDescription
mass1Surface density of leaf 1 m1, in kg/m^2 (> 0).
mass2Surface density of leaf 2 m2, in kg/m^2 (> 0).
gapCavity depth d, in m (> 0).
cavity_mediumOptional porous fill (a PorousMediumResult) whose effective bulk modulus sets the cavity stiffness.
tie_stiffness_per_areaStiffness per unit area of a connection array bridging the cavity, in N/m^3 (>= 0, Default: 0).
speed_of_soundSpeed of sound in air c0 (Default: 343 m/s).
air_densityAir density rho0 (Default: 1.205 kg/m^3).

Returns: The mass-spring-mass resonance f0, in hertz.

Raises

ExceptionWhen
ValueErrorfor a non-positive input.
orthotropic_critical_frequencies(
mass_per_area: float,
bending_stiffness_1: float,
bending_stiffness_2: float,
*,
speed_of_sound: float = 343.0,
) -> tuple[float, float]

Coincidence range (fc1, fc2) of orthotropic panels (Vigran 6.107).

evaluated for both principal bending stiffnesses (Vigran Eq. (6.107), printed p. 252; the same closed form as the isotropic coincidence_frequency). The stiffest direction gives the lowest coincidence frequency, so the returned pair is sorted: fc1 from the larger stiffness, fc2 from the smaller. For a corrugated sheet fc1 can sit at a few hundred hertz while fc2 reaches 15 kHz to 30 kHz, and the resonant transmission then dominates over most of the useful frequency range.

Parameters

NameDescription
mass_per_areaMass per unit area m'', in kg/m^2 (> 0), including the developed-length increase of a corrugated sheet (see corrugated_plate_mass_factor).
bending_stiffness_1One principal bending stiffness, in N.m (> 0).
bending_stiffness_2The other principal bending stiffness, in N.m (> 0). The argument order does not matter.
speed_of_soundSpeed of sound in air c0 (Default: 343 m/s).

Returns: The pair (fc1, fc2) in hertz, with .

Raises

ExceptionWhen
ValueErrorfor a non-positive input.
orthotropic_plate_resonance(
mode_x: int,
mode_z: int,
*,
length_x: float,
length_z: float,
mass_per_area: float,
bending_stiffness_x: float,
bending_stiffness_z: float,
bending_stiffness_xz: float,
) -> float

Eigenfrequency of a simply supported orthotropic plate (Vigran 3.113).

(Vigran Eq. (3.113), printed p. 95; identical to Bies Eq. (7.27) after Hearmon 1959). It collapses to the isotropic Eq. (3.109) when and .

The lowest eigenfrequency matters to the transmission-loss prediction because the infinite-panel models of orthotropic_transmission_loss and single_panel_transmission_loss are only valid above about (Bies, Sect. 7.2.4).

Parameters

NameDescription
mode_xMode order i along a (integer >= 1).
mode_zMode order n along b (integer >= 1).
length_xPlate dimension a, in m (> 0), along the axis whose bending stiffness is bending_stiffness_x.
length_zPlate dimension b, in m (> 0).
mass_per_areaMass per unit area m'', in kg/m^2 (> 0).
bending_stiffness_xBx, in N.m (> 0).
bending_stiffness_zBz, in N.m (> 0).
bending_stiffness_xzBxz, in N.m (> 0).

Returns: The eigenfrequency, in hertz.

Raises

ExceptionWhen
ValueErrorfor a non-positive input or a mode order below 1.
orthotropic_transmission_loss(
frequency: ArrayLike,
mass_per_area: float,
*,
critical_frequency_lower: float,
critical_frequency_upper: float,
loss_factor: float = 0.01,
method: str = 'integral',
area: float | None = None,
limiting_angle: float = 78.0,
band: str = 'third',
speed_of_sound: float = 343.0,
air_density: float = 1.205,
) -> SoundReductionResult

Orthotropic-panel sound reduction index (Vigran 6.5.3, Bies 7.2.4.5).

A ribbed or corrugated sheet is stiff along the corrugations and limp across them, so instead of one coincidence dip it has a whole coincidence range fc1 to fc2 (see orthotropic_critical_frequencies). Over that range the resonant transmission dominates and R flattens well below the mass law of a flat plate of the same surface density, which is the price paid for the strength-to-weight ratio.

Two prediction routes, both from the same wall impedance (Heckl 1960; Hansen 1993; Vigran Eq. (6.108) = Bies Eq. (7.30))

  • method="integral" (Default) averages the angular transmission coefficient (Vigran Eq. (6.109) = Bies Eq. (7.31)) over azimuth and incidence angle, (Vigran Eq. (6.111) = Bies Eq. (7.38)), numerically. The near-grazing angles are excluded by the limiting angle: pass area for the size-dependent limit of Bies Eq. (7.36) (the correction Vigran writes as Eq. (6.113)) or leave it out for the fixed limiting_angle. This is the only route that responds to the loss factor.
  • method="heckl" is Heckl’s closed-form approximation for , the design chart of Bies Figure 7.9(b): field-incidence mass law below , Eq. (7.59) (the first of Vigran Eq. (6.112)) from fc1 to , Eq. (7.60) (the second) above , and straight lines in across the two gaps. It is cheap and it needs no loss factor, but it cannot show the depth of the coincidence region and it requires for its four construction points to stay ordered.

The two routes are not interchangeable. Above they converge as the loss factor falls: with the integral lands within about 0.3 dB of Eq. (7.60), which is a useful independent check on both transcriptions. Across the coincidence range Eq. (7.59) is a much rougher approximation and stays a few decibels above the integral even at , as Vigran’s Figure 6.27 shows for its own worked case.

Both models are infinite-panel models, valid above roughly (orthotropic_plate_resonance). Bies also notes two systematic departures of the Heckl branch from measurement: below about it underestimates R on small panels, and real corrugated panels show a dip of up to 5 dB between 2 kHz and 4 kHz caused by resonances of the panel sections between the ribs, which no smooth model predicts.

Parameters

NameDescription
frequencyBand centre frequencies f, in hertz (array, > 0).
mass_per_areaMass per unit area m'', in kg/m^2 (> 0).
critical_frequency_lowerLower coincidence frequency fc1, in hertz (> 0), from the stiffest direction.
critical_frequency_upperUpper coincidence frequency fc2, in hertz (> fc1).
loss_factorTotal loss factor eta (> 0, Default: 0.01); used only by method="integral", but validated on both routes.
method"integral" (Default) or "heckl".
areaPanel area S, in m^2 (> 0), selecting the size-dependent limiting angle of Bies Eq. (7.36) (Default: None); used only by method="integral", but validated on both routes.
limiting_angleFixed limiting angle theta_L, in degrees (, Default: 78.0), used when area is None and only by method="integral", but validated on both routes.
bandBand width for the field correction of the Heckl mass-law branch ("third"/"octave").
speed_of_soundSpeed of sound in air c0 (Default: 343 m/s).
air_densityAir density rho0 (Default: 1.205 kg/m^3).

Returns: A SoundReductionResult (model "orthotropic-integral" or "orthotropic-heckl") carrying fc1 in critical_frequency and fc2 in critical_frequency_upper.

Raises

ExceptionWhen
ValueErrorfor a non-positive input, an unknown method, a coincidence range that is not increasing, or a Heckl construction whose points would be out of order.

Constant (dict).

PLATEAU_MATERIALS = {'aluminium': (2.66, 29.0, 11.0), 'brick': (2.1, 37.0, 4.5), 'concrete': (2.28, 38.0, 4.5), 'glass': (2.47, 27.0, 10.0), 'lead': (11.2, 56.0, 4.0), 'plaster': (1.71, 30.0, 8.0), 'plywood': (0.57, 19.0, 6.5), 'steel': (7.6, 40.0, 11.0)}
plateau_transmission_loss(
frequency: ArrayLike,
*,
material: str | None = None,
thickness_mm: float | None = None,
mass_per_area: float | None = None,
plateau_height: float | None = None,
frequency_ratio: float | None = None,
field_correction: float = 5.0,
speed_of_sound: float = 343.0,
air_density: float = 1.205,
) -> SoundReductionResult

Plateau-method estimate of a single panel’s TL (Norton 3.9.1).

The plateau (Watters) construction is the empirical shortcut practitioners draw by hand, and it approximates the whole curve from three numbers per material (Norton & Karczub Table 3.1, tabulated in PLATEAU_MATERIALS):

  1. the field-incidence mass law (Eqs. 3.104/3.106), rising 6 dB per octave;
  2. a horizontal coincidence plateau at the material’s plateau height; point A is where the mass-law line reaches it;
  3. point B at frequency_ratio x fA, above which the estimate recovers at 10 dB per octave.

Unlike the physical model of single_panel_transmission_loss it needs neither the bending stiffness nor the loss factor: the material’s tabulated plateau absorbs both. The price is that it is only an estimate, and it assumes a diffuse field on both sides of a panel whose length and width are at least twenty times its thickness.

Give a tabulated material with its thickness_mm (the surface density then follows from the table), or give mass_per_area together with plateau_height and frequency_ratio. An explicit mass_per_area, plateau_height or frequency_ratio always overrides the table.

Parameters

NameDescription
frequencyBand centre frequencies f, in hertz (array, > 0).
materialKey into PLATEAU_MATERIALS (Default: None).
thickness_mmPanel thickness, in millimetres (> 0), used with material to get the surface density.
mass_per_areaMass per unit area m'', in kg/m^2 (> 0).
plateau_heightCoincidence plateau height, in dB (> 0).
frequency_ratioRatio locating the 10 dB/octave recovery (> 1).
field_correctionField-incidence correction of the mass-law line, in dB (Default: 5.0, Norton Eq. 3.106).
speed_of_soundSpeed of sound in air c0 (Default: 343 m/s).
air_densityAir density rho0 (Default: 1.205 kg/m^3).

Returns: A SoundReductionResult (model "plateau") carrying plateau_height, plateau_start (point A) and plateau_end (point B).

Raises

ExceptionWhen
ValueErrorfor a non-positive input, an unknown material, or an under-specified panel.
plot_double_wall_geometry(
mass1: float,
mass2: float,
gap: float,
ax: Axes | None = None,
*,
resonance_frequency: float | None = None,
language: str = 'en',
**kwargs: Any,
) -> Axes

Draw the mass-spring-mass double wall to scale.

Two leaves separated by the gap; leaf thicknesses are drawn from the surface densities at a nominal board density, and the mass-spring-mass resonance is annotated when given.

Parameters

NameDescription
mass1Surface density of the first leaf, in kg/m2.
mass2Surface density of the second leaf, in kg/m2.
gapCavity depth, in metres.
axExisting axes, or None to create a figure.
resonance_frequencyOptional f0 to annotate, in Hz.
languageLabel language, "en" (default) or "es".
kwargsForwarded to the leaf rectangles.

Returns: The axes.

single_panel_transmission_loss(
frequency: ArrayLike,
mass_per_area: float,
*,
critical_frequency: float | None = None,
bending_stiffness: float | None = None,
loss_factor: float = 0.01,
band: str = 'third',
coincidence_model: str = 'sharp',
field_correction: float | None = None,
speed_of_sound: float = 343.0,
air_density: float = 1.205,
) -> SoundReductionResult

Sound reduction index of a single panel, Sharp’s method (Bies 7.2.4.1).

Field-incidence mass law up to , Eq. 7.44 from fc upwards, and a straight line in across the coincidence region between them.

With coincidence_model="cremer" the region above fc follows Cremer’s empirical relationship instead (Norton & Karczub Eq. 3.110),

which also rises at 10 dB per octave far above coincidence but starts from the singularity at fc itself rather than from a finite value. Norton pairs it with the field-incidence mass law below fc and treats the two as the whole model, so there is no interpolated bridge: the mass law runs all the way to fc.

The empirical line is floored at dB, which is where it lands at : Norton’s Eq. (3.109) has degrees there and the panel “offers no resistance to incident sound waves”, . It is also the hard bound of a passive panel, so without the floor a band centre landing on fc would report an arbitrarily large negative TL and a transmission coefficient above one.

Provide the coincidence frequency directly through critical_frequency, or let it be computed from bending_stiffness and mass_per_area through coincidence_frequency.

Parameters

NameDescription
frequencyBand centre frequencies f, in hertz (array, > 0).
mass_per_areaMass per unit area m'', in kg/m^2 (> 0).
critical_frequencyCoincidence frequency fc, in hertz (> 0).
bending_stiffnessBending stiffness per unit width B', in N.m, used to compute fc when critical_frequency is not given.
loss_factorTotal loss factor eta (> 0, Default: 0.01).
bandBand width for the field correction ("third"/"octave").
coincidence_model"sharp" (Default, Bies Eq. 7.44 above fc with the interpolated bridge from ) or "cremer" (Norton Eq. 3.110, mass law right up to fc).
field_correctionExplicit field-incidence correction of the mass-law region, in dB (>= 0), overriding the band table (Default: None; Norton’s Eq. 3.106 uses a flat 5 dB).
speed_of_soundSpeed of sound in air c0 (Default: 343 m/s).
air_densityAir density rho0 (Default: 1.205 kg/m^3).

Returns: A SoundReductionResult (model "sharp-single" or "cremer-single").

Raises

ExceptionWhen
ValueErrorfor a non-positive input, an unknown coincidence model, or if neither critical_frequency nor bending_stiffness is given.
SoundReductionResult(
frequencies: np.ndarray,
transmission_loss: np.ndarray,
model: str,
critical_frequency: float | None = None,
resonance_frequency: float | None = None,
mass1: float | None = None,
mass2: float | None = None,
gap: float | None = None,
plateau_height: float | None = None,
plateau_start: float | None = None,
plateau_end: float | None = None,
critical_frequency_upper: float | None = None,
)

Predicted airborne sound reduction index R(f) of a construction.

Attributes

NameDescription
frequenciesBand centre frequencies, in hertz.
transmission_lossSound reduction index R per band, in dB.
modelPrediction model (e.g. "sharp-single", "double-wall").
critical_frequencyCoincidence frequency fc, in hertz, or None (double wall reports the mass-spring-mass resonance instead).
resonance_frequencyMass-spring-mass resonance f0, in hertz, or None (single panel).
mass1First-leaf surface density, in kg/m2, retained (with mass2 and gap) by the double-wall constructor so plot_geometry can draw the section; None otherwise.
mass2Second-leaf surface density, in kg/m2, or None.
gapCavity depth, in metres, or None.
plateau_heightHeight of the coincidence plateau, in dB, or None (only the plateau model sets these three).
plateau_startFrequency of point A, where the mass-law line meets the plateau, in hertz, or None.
plateau_endFrequency of point B, where the 10 dB/octave recovery starts, in hertz, or None.
critical_frequency_upperUpper coincidence frequency fc2 of an orthotropic panel, in hertz, or None; critical_frequency then carries the lower bound fc1 and the pair spans the flattened coincidence range.
SoundReductionResult.plot(
ax: Axes | None = None,
*,
language: str = 'en',
**kwargs: Any,
) -> Axes

Plot the predicted sound reduction index R(f).

Requires matplotlib (pip install phonometry[plot]); returns the Axes.

SoundReductionResult.plot_geometry(
ax: Axes | None = None,
*,
language: str = 'en',
**kwargs: Any,
) -> Axes

Draw the mass-spring-mass cross-section to scale.

Requires matplotlib (pip install phonometry[plot]); returns the Axes.

Raises

ExceptionWhen
ValueErrorIf the result does not retain its geometry.
SoundReductionResult.rating(
bands: str | None = None,
) -> WeightedRatingResult

Single-number weighted rating Rw of the predicted R(f).

Delegates to phonometry.weighted_rating (ISO 717-1); requires the spectrum to be on the 16 one-third-octave bands (100 Hz to 3150 Hz) or the 5 octave bands (125 Hz to 2000 Hz).

Parameters

NameDescription
bandsBand set forwarded to phonometry.weighted_rating.

Returns: The WeightedRatingResult.

SoundReductionResult.report(path: str, **kwargs: Any) -> str

Render the ISO 717-1 Annex C rating fiche of R(f) to a PDF.

Convenience wrapper delegating to report on rating; requires the predicted spectrum to be on the 16 one-third-octave bands (100 Hz to 3150 Hz) or the 5 octave bands (125 Hz to 2000 Hz).

Parameters

NameDescription
pathDestination path of the PDF file.
kwargsForwarded to report (e.g. engine).

Returns: The written path as a str.

SoundReductionResult.transmission_coefficient

Section titled “SoundReductionResult.transmission_coefficient”

property

Transmission coefficient per band.