Skip to content

Transfer stiffness of resilient elements (ISO 10846)

Standards: ISO 10846Key references: Cremer et al. 2005

The vibro-acoustic transfer property of a resilient element (a vibration isolator, mount, bellows or hose) is its dynamic transfer stiffness , the frequency-dependent ratio of the blocking force on the output (receiver) side to the displacement on the input (source) side (ISO 10846-1, 3.7):

Because a vibration isolator is only effective between structures of large driving-point stiffness, the force it delivers to the receiver approximates this blocking force (ISO 10846-1, Eq. 7), so is the quantity that characterises the isolator’s transmission. feeds the structure-borne source and building prediction standards: ISO 9611, EN 15657 and EN 12354-5.

The whole series is written around one bench, and it is the bench that says what the quantity means: the element is sandwiched between a driven input mass and an output that is either rigidly blocked or loaded with a known mass, under a stated static preload, and the two directions it is loaded in during service are measured separately.

ISO 10846 transfer-stiffness rigs. Top, the direct method with the isolator between a driven excitation mass and a blocked output on a force transducer, and the indirect method with the same input mass over a blocking mass on soft supports, both carrying an accelerometer at the edge of the excitation mass for the fifteen-decibel unidirectionality check. Middle, the two ways of applying the static preload: gravity from the output-side mass, and a frame with an actuator loading the element to the permissible static load while auxiliary springs decouple the blocking mass from the frame. Bottom, the transverse arrangement, with roller-bearing guiding, a force-distribution plate as the excitation mass and the output shear force summed from two transducers.ISO 10846 transfer-stiffness rigs. Top, the direct method with the isolator between a driven excitation mass and a blocked output on a force transducer, and the indirect method with the same input mass over a blocking mass on soft supports, both carrying an accelerometer at the edge of the excitation mass for the fifteen-decibel unidirectionality check. Middle, the two ways of applying the static preload: gravity from the output-side mass, and a frame with an actuator loading the element to the permissible static load while auxiliary springs decouple the blocking mass from the frame. Bottom, the transverse arrangement, with roller-bearing guiding, a force-distribution plate as the excitation mass and the output shear force summed from two transducers.

1. The transfer-stiffness level and loss factor

Section titled “1. The transfer-stiffness level and loss factor”

Results are reported as a level re the reference stiffness (ISO 10846-2 and -3, 3.17), and in the low-frequency range where inertial forces in the element are negligible the loss factor is the tangent of the phase angle of (ISO 10846-1, 3.8):

from phonometry import vibration
# A resilient mount with |k2,1| = 1 MN/m and a 5 % loss factor:
k = 1e6 * (1.0 + 0.05j)
print(round(float(vibration.transfer_stiffness_level(k)), 2)) # 120.01 dB re 1 N/m
print(round(float(vibration.loss_factor(k)), 3)) # 0.05

Why a blocked force rather than, say, the isolator’s transmissibility? Because a transmissibility is a property of a whole assembly: it changes with whatever masses and stiffnesses the isolator happens to connect, so data measured on one rig would not transfer to another installation. The blocked force per unit input displacement is a property of the element alone, and it predicts the force the element delivers to any receiver that is much stiffer than the element itself, which is exactly the situation a vibration isolator is designed for. ISO 10846 therefore sandwiches the isolator between a driven input mass and an output that is either rigidly blocked or loaded with a known mass (the rig drawn at the top of this page).

A transfer stiffness without its preload and its temperature is not a result. ISO 10846-1 clause 6.1 opens by saying so: depends on frequency, and “in addition, it is also dependent on static preload and, in many cases, on temperature”, and may depend on relative humidity as well. The laboratory conditions of every part of the series include the application of a static preload, because a rubber or spring isolator characterised unloaded is working at a different point on its load-deflection curve from the same isolator carrying its service load.

  • Preload, applied and specified. ISO 10846-1 clause 6.3.3.1 gives the two rig topologies the diagram above draws. Gravity loading, where the output-side mass is the preload, is simple but unstable for large isolators at high preloads; a frame with an actuator (typically hydraulic) applies the load instead, with auxiliary springs decoupling the blocking mass from the frame — which is also what makes the indirect method less vulnerable to flanking transmission through the frame. Elements that are not resilient supports are loaded in the way their service demands: a static torque for a flexible coupling, a representative internal pressure for a bellows or hose (6.3.3.2).
  • Creep. ISO 10846-2 clause 7.1: elements containing rubber-type components change load or deflection through creep, so the preload shall be applied to 100 % of the permissible static load, and the change of load or deflection due to creep should be less than 10 % per day before measurements begin.
  • Temperature. ISO 10846-2 clause 7.6.1: measurements are made at one or more specified load conditions and temperatures covering the range met in practice; the temperature is monitored during the measurements; and the elements are exposed for at least 24 h to that temperature, within 3 °C, before testing.
  • Contact and configuration. Clause 7.1 again: the element contacts the flanges over their whole surface (grease or double-sided tape helps, and large flanges may need flattening), and any device that is not part of the element in service is removed or de-activated.

Those conditions belong on the fiche of section 6 with the result: ReportMetadata carries them in its test_room and notes fields.

The direct method (ISO 10846-2) measures the blocked output force and the input displacement, . The indirect method (ISO 10846-3) loads the output with a compact blocking mass and measures the vibration transmissibility ; the blocking force is then the inertia force of the mass (ISO 10846-3, Eq. 1):

with the mass of the output flange, which the flange_mass= keyword carries (it defaults to zero). It is not a refinement: ISO 10846-3 measures the vibration of the mass centre of the compact body formed by the blocking mass together with the output flange of the test element, so is whatever is weighed with it — the flange and any auxiliary fixture that moves as part of the test element. Left at zero it reports a stiffness low by . The approximation is valid well above the mass/spring resonance, where is small.

import numpy as np
from phonometry import vibration
# Indirect method: a 10 kg blocking mass, transmissibility 0.01 at 500 Hz,
# and the 1.2 kg output flange of the test element bolted on top of it.
k = vibration.transfer_stiffness_indirect(500.0, 0.01, blocking_mass=10.0,
flange_mass=1.2)
print(f"{abs(complex(k)):.3e}") # 1.105e+06 N/m
# flange_mass defaults to 0, which reports 9.870e+05 N/m: 12 % low here.
# Bundle a swept measurement into a result carrying its level and loss factor:
f = np.logspace(1.5, 3.3, 200)
t = vibration.base_transmissibility(f, mass=8.0, stiffness=1e6, damping=120.0)
res = vibration.indirect_transfer_stiffness_result(f, t, blocking_mass=8.0)
print(round(float(res.level[-1]), 1)) # 125.1 dB re 1 N/m (high-f)
res.plot() # the Lk(f) level spectrum, as in the figure above (needs matplotlib)

The TransferStiffnessResult carries the complex and exposes .level, .loss_factor, .magnitude, .to("impedance"/"apparent_mass") and .plot().

ISO 10846-1 clause 6.1 counts three methods, not two, “because they are complementary with respect to their strong and weak points”. The third is the driving-point method, which measures the input displacement and the input force and so yields the driving-point stiffness rather than . Only at low frequencies, below the element’s first internal resonance, where the driving-point and transfer stiffnesses are equal, can it be used to determine the transfer stiffness — which is why the series covers it at all: owners of expensive driving-point rigs can use them for the low-frequency transfer stiffness. That same identity is why the fiche of section 6 boxes the low-frequency plateau rather than a value at one frequency: below the internal resonances there is only one stiffness to report. Part 5 of the series, which specifies that method, is not implemented here.

The methods split the frequency axis between them, and the two limits of the indirect method have names. It is valid between and , “typically 20 Hz 50 Hz and 2 kHz 5 kHz” (ISO 10846-3, clause 1), and the two are moved by opposite things:

  • is where Inequality 2 starts to hold. Below it the rig’s own resonances — the element, the load-distribution plate, the blocking mass and the auxiliary springs together — break the impedance mismatch. It sits at roughly three times the highest natural frequency of that assembly, and a heavier blocking mass lowers it.
  • is where the blocking mass stops moving as a rigid body. It is raised by making the block compact and of a dense, high-wave-speed material, steel being the usual choice. It follows from the block’s dimension or mass through the standard’s own curves, or is found experimentally from the effective mass (clause 6.2.3): support the block alone on soft springs with a mass-spring resonance below 10 Hz, drive it through its mass centre and read two accelerometers placed symmetrically inside the contact area at a spacing , then take as the lowest frequency at which departs from by more than 1 dB.

The two requirements pull against each other — heavy for a low , compact for a high — which is why a wide range sometimes needs more than one blocking mass, and why a full isolator dataset is usually the direct and indirect methods spliced together. The direct method covers the bottom, from 1 Hz (the lower bound of the ISO 10846-2 scope; in practice the floor is set by the rig and its instrumentation) up to where the rig’s own resonances intrude, typically a few hundred hertz for large elements.

Excitation and averaging (ISO 10846-2, 7.5). The source may be a discretely stepped sine, a swept sine, a periodically swept sine or band-limited noise. It shall be applied long enough that doubling the averaging time changes the result by no more than 0,1 dB; and for stepped or periodically swept sine the source frequencies shall be spaced so that every one-third-octave band for which stiffness is reported contains at least five of them.

The other directions. A mount under a machine is loaded in shear as well as in compression, and its transverse stiffness is usually the smaller of the two. ISO 10846-2 clause 5.2 and ISO 10846-3 clause 5.2 standardise separate arrangements for the transverse translations, drawn in the lower panel of the rig figure: the difficulty there is suppressing unwanted input motion, done with low-friction roller-bearing guiding on the input or with two symmetrically placed nominally equal elements, an input force-distribution plate acting as the excitation mass, and an output shear force summed from two transducers, . transfer_stiffness_direct and transfer_stiffness_indirect are scalar FRF relations and therefore direction-agnostic: the library does not stop you reporting per direction, and the standard expects you to.

ISO 10846-3 (clause 6) requires the approximation to be accurate within 1 dB (12 % of the stiffness magnitude), which bounds the usable frequency range on both sides:

  • Impedance mismatch (Inequality 2). Valid only where , i.e. , the constant TRANSMISSIBILITY_LIMIT. transfer_stiffness_indirect computes the per-band and emits a PhonometryWarning when any band exceeds it (routine near or below the mass/spring resonance, as in the figure above).
  • Rigid blocking mass (Inequality 3). Above an upper frequency the blocking mass no longer moves as a rigid body; results are valid only while its measured effective mass (Eq. 4) stays within 1 dB of the rigid mass: .
  • Linearity (clause 7.6). Two input spectra 10 dB apart must give transfer-stiffness levels within 1.5 dB. The number is not arbitrary and it is the one criterion here that is really about the material: ISO 10846-1 Annex D collects the physics. Dynamic properties depend on preload, vibration amplitude, frequency and temperature; for filled rubber the in-phase modulus and the phase angle are essentially amplitude-independent below shear strain amplitudes of order and fall significantly above about , the more so the higher the carbon-black content. So the elements that fail are the highly filled rubbers and anything with a designed amplitude dependence — a hydraulic mount is strongly amplitude-dependent by design, and cannot be described by a single spectrum at all. That makes the criterion actionable rather than pass/fail: the strain amplitudes occurring in service dictate the test amplitudes, and clause 7.6 says what the result then means, namely that the data may only be claimed valid for input amplitudes equal to or lower than the higher of the two tested. The upper bound of validated input level goes in the test report.

What the rig and the instrumentation must do

Section titled “What the rig and the instrumentation must do”

Every criterion above is a property of the element and the model. ISO 10846-2 clauses 6 and 7 add a set of pre-runs and hardware requirements that decide whether a result exists at all, none of which is computed here.

  • A background pre-run (7.6.1). With the source switched off, measure and ; the source output shall be adjusted so that they exceed the background by at least 15 dB in every band of interest.
  • A unidirectionality pre-run (6.4, Inequality 3). The acceleration in the excitation direction shall exceed the unwanted perpendicular components by at least 15 dB, measured at the edge of the excitation mass in the plane of the input flange — the accelerometer drawn on the rig figure. Bands that fail are excluded from the result.
  • Transducers (6.5, 6.6). Accelerometers and force transducers shall have a sensitivity level that is frequency-independent within 0,5 dB, be calibrated at the laboratory temperature, and have a cross-axis sensitivity below 5 %. Where several transducer signals are summed, the resultant sensitivity function shall meet the same 0,5 dB requirement.
  • Analyser (6.8). The spectral resolution shall give at least five distinct frequencies in every one-third-octave band of interest, and the frequency-response difference between the input-acceleration and output-force channels shall be under 0,5 dB or else applied as a correction.
  • Coherence between the input and output signals is the recommended running indicator (7.6.2): it flags poor signal-to-noise and non-linearity, and it is read exactly as the mobility guide’s Annex A.1 list reads it.

Annex B of Part 2 says what each of these is worth. Its uncertainty budget assigns 0,3 dB to signal processing and background noise, 0,5 dB to instrumentation when only the minimum requirements above are met, 0,5 dB to the test rig (from the residual output motion the two inequalities bound), and 0,5 dB to linearity. The three are comparable, which is the argument for not skipping any of them: no one of them dominates, so no one of them is optional.

Three stacked panels sharing a logarithmic frequency axis for a Kelvin-Voigt isolator on an 8 kilogram blocking mass. The upper panel gives the true transfer-stiffness level and the indirect-method estimate: the estimate runs far above the truth below and around the mass-spring resonance and lies on it above. The middle panel gives the transmissibility magnitude, which peaks above ten at the resonance and crosses the 0.1 limit at 189 hertz, with the level error of the estimate on a second axis staying inside a shaded plus-or-minus one decibel band from that crossing onwards. The lower panel gives the loss factor, rising in proportion to frequency as the Kelvin-Voigt model demands. Every panel is shaded up to the 0.1 crossing, the frequencies at which no result exists.Three stacked panels sharing a logarithmic frequency axis for a Kelvin-Voigt isolator on an 8 kilogram blocking mass. The upper panel gives the true transfer-stiffness level and the indirect-method estimate: the estimate runs far above the truth below and around the mass-spring resonance and lies on it above. The middle panel gives the transmissibility magnitude, which peaks above ten at the resonance and crosses the 0.1 limit at 189 hertz, with the level error of the estimate on a second axis staying inside a shaded plus-or-minus one decibel band from that crossing onwards. The lower panel gives the loss factor, rising in proportion to frequency as the Kelvin-Voigt model demands. Every panel is shaded up to the 0.1 crossing, the frequencies at which no result exists.
Show the code for this figure
import matplotlib.pyplot as plt
import numpy as np
from phonometry import vibration
# Kelvin-Voigt isolator k + jwc loaded by an 8 kg blocking mass.
k, c, m2 = 1.0e6, 120.0, 8.0
f0 = np.sqrt(k / m2) / (2.0 * np.pi)
f = np.logspace(np.log10(f0 / 5.0), np.log10(f0 * 40.0), 600)
k_true = k + 1j * 2.0 * np.pi * f * c
t = vibration.base_transmissibility(f, m2, k, c)
k_indirect = vibration.transfer_stiffness_indirect(f, t, m2) # warns where T is not small
# One line — the indirect determination bundled as a result draws its own
# Lk(f) level spectrum:
res = vibration.indirect_transfer_stiffness_result(f, t, blocking_mass=m2)
res.plot()
plt.show()
# By hand, the true element stiffness against the indirect-method estimate:
fig, ax = plt.subplots()
ax.semilogx(f, vibration.transfer_stiffness_level(k_true),
label="true $L_k$ of $k+j\\omega c$")
ax.semilogx(f, vibration.transfer_stiffness_level(k_indirect), "--",
label="indirect method $-(2\\pi f)^2 m_2 T$") # no flange here
ax.axvline(f0, color="0.6", linestyle=":", label="resonance $f_0$")
ax.set(xlabel="Frequency [Hz]", ylabel="Transfer stiffness level $L_k$ [dB re 1 N/m]")
ax.grid(True, which="both", alpha=0.3)
ax.legend()
plt.show()

The criterion, and the error it buys. The indirect method is valid from where falls below 0.1 — 189 Hz for this element, not the mass/spring resonance at 56 Hz and not the rule of thumb — and that limit is chosen because it is what holds the stiffness error inside the 1 dB the clause requires, as the middle panel’s second axis shows. The lower panel is the loss factor: for a Kelvin-Voigt element rises in proportion to frequency, which is the model’s main deficiency as a description of real rubber, whose loss factor is far flatter. The definition holds only in the low-frequency range where inertial forces inside the element are negligible.

The blocking-force idealisation itself is quantified by ISO 10846-1, Eq. (6): for an isolator of output driving-point stiffness on a termination of stiffness , the delivered force is , within 10 % of the blocking force for (Eq. 7):

import warnings
from phonometry import vibration
# |T| = 0.5 violates Inequality (2): the indirect result is flagged.
with warnings.catch_warnings(record=True) as caught:
warnings.simplefilter("always")
vibration.transfer_stiffness_indirect(50.0, 0.5, blocking_mass=10.0)
print(caught[0].category.__name__) # PhonometryWarning
# Blocking-force approximation at the 10 % limit (ISO 10846-1, Eq. 6):
print(round(abs(complex(vibration.blocking_force_ratio(1e5, 1e6))), 4)) # 0.9091

A level in dB re 1 N/m needs a scale before it means anything. Each decade of stiffness is 20 dB, so the working range spans roughly:

| Element | | | |---|---|---| | a soft rubber mount or a steel coil spring | N/m | 100 dB | | a general-purpose machine mount | N/m | 120 dB | | a stiff bonded pad or a hard elastomer | N/m | 140 dB | | a rigid connection (for comparison) | N/m and up | 160 dB and up |

Lower is better, and the shape matters more than the value: in the figure above the level rises with frequency, which is the isolator getting stiffer, and therefore less effective, exactly in the range where structure-borne noise matters. That rise is the single most useful thing an spectrum tells an engineer about a mount, and it is what a datasheet quoting one static stiffness cannot say.

On its own still predicts nothing, because the blocked force is only what the element delivers to a receiver much stiffer than itself. blocking_force_ratio prices that assumption against a real termination:

# The same 1 MN/m mount under a concrete floor and under a light timber one.
for k_t in (3e9, 2e6, 5e5):
ratio = abs(complex(vibration.blocking_force_ratio(1e6, k_t)))
print(f"{k_t:.0e}", round(ratio, 3)) # 1.0 / 0.667 / 0.333

On the concrete floor ( GN/m) the delivered force is the blocked force, Equation (7) is satisfied by three orders of magnitude, and the datasheet number is directly usable. On a lightweight floor of 2 MN/m it is not: only two thirds of the blocked force arrives (−3.5 dB), Equation (7) fails, and the mount’s characterisation no longer predicts what the installation does. That is not the isolator failing — a mobile receiver takes less force, so the real installation is quieter than the blocked-force estimate — it is the single-number description failing, and the route out is a prediction that carries both mobilities: installed structure-borne sound (EN 12354-5), fed by a source characterised through EN 15657. The rule behind both is the source/receiver mobility rule of the mobility guide.

The dynamic stiffness is a member of the frequency-response-function family (ISO 10846-1, Annex A / Table A.2): it is the reciprocal of the receptance and relates to the mechanical impedance and effective mass by . These conversions are the same as the mechanical mobility convert_frf pivot:

from phonometry import vibration
k = 1e6 + 5e4j # N/m, at 250 Hz
Z = vibration.convert_frf(k, 250.0, "dynamic_stiffness", "impedance")
print(round(abs(complex(vibration.convert_frf(
Z, 250.0, "impedance", "dynamic_stiffness"))), 1)) # 1001249.2

TransferStiffnessResult.report(path) renders a one-page dynamic-transfer-stiffness characterisation report for a resilient element (ISO 10846-1:2008 definition; determined by the direct method, ISO 10846-2:2008, or the indirect blocking-mass method, ISO 10846-3:2002). The transfer stiffness is a continuous frequency-response function, not an octave-band quantity, so the sheet presents it honestly as the level spectrum plus a compact table of characteristic points (the determination method, the blocking mass for the indirect method, the frequency range, and the low-frequency stiffness plateau , its level and the loss factor there), and a boxed low-frequency (the plateau that characterises the element below its internal resonances). It is a characterisation, so there is no pass/fail verdict; language="es" renders the Spanish fiche. The fiche always embeds the spectrum, so it needs both the report and plot extras (pip install "phonometry[report,plot]").

import numpy as np
from phonometry import ReportMetadata, TransferStiffnessResult, transfer_stiffness_direct
freqs = np.array([20, 31.5, 50, 80, 125, 200, 315, 500, 800, 1250, 2000], dtype=float)
k21 = 1e6 + 1j * (2 * np.pi * freqs) * 80.0 # Kelvin-Voigt element k + jwc
u1 = 1e-6 + 0j
k = transfer_stiffness_direct(k21 * u1, u1) # direct method: k2,1 = F2,b/u1
res = TransferStiffnessResult(frequencies=freqs, transfer_stiffness=k)
res.report(
"transfer_stiffness.pdf",
metadata=ReportMetadata(
specimen="Rubber vibration isolator",
measurement_standard="ISO 10846-2",
),
) # one-page fiche (needs phonometry[report,plot])
ISO 10846 dynamic-transfer-stiffness example report (PDF)

One-page dynamic-transfer-stiffness fiche: a metadata header, a table of the FRF characteristic points (the determination method, the frequency range and the low-frequency stiffness, level and loss factor) beside the transfer-stiffness level spectrum, and the boxed low-frequency level.

Download the report (PDF)

Dynamic-transfer-stiffness fiche (TransferStiffnessResult.report): the FRF characteristic points and the transfer-stiffness level spectrum.
  • Covered

    ISO 10846-1:2008’s definition, the level (ISO 10846-2 and -3, 3.17) and loss factor (ISO 10846-1, 3.8) (transfer_stiffness_level, loss_factor), the ISO 10846-2:2008 direct method (transfer_stiffness_direct), and the ISO 10846-3:2002 indirect method of Formula 1 (transfer_stiffness_indirect, including its flange_mass= term). The blocking-force approximation of Equations 6-7 (blocking_force_ratio) and the Annex A / Table A.2 FRF relations (convert_frf) are implemented too. TransferStiffnessResult bundles a swept determination, and .report() renders the characterisation fiche.

  • Not covered

    Parts 4 and 5 of the ISO 10846 series, covering elements other than resilient supports and the driving-point low-frequency method, are not implemented. transfer_stiffness_indirect only checks Inequality 2 (the transmissibility limit): Inequality 3, the rigid blocking-mass check of Formula 4, is described but not computed automatically. The clause 7.6 linearity criterion (two input spectra 10 dB apart within 1.5 dB) is likewise not checked in code, and neither are the conditioning and instrumentation requirements of section 3: the preload, creep and temperature conditioning, the two 15 dB pre-runs, the 0,5 dB transducer flatness and inter-channel matching and the five-lines-per-band resolution are described here and left to the operator. Hydraulic mounts are outside the single-spectrum description altogether: their stiffness is amplitude-dependent by design, so one does not characterise them.