Tuned Damper Models

An inerter is a passive vibration control device, where the force is proportional to relative acceleration, i.e., F = b(\ddot{u}_2-\ddot{u}_1). The inertance, b, has units of mass.

While working on inerter models in OpenSees, I found a paper by Lazar et al (2013) in which tuned inerter dampers (TID) were calibrated to give similar response to tuned mass dampers (TMD).

Whereas a TMD is a mass attached to one point on a structure by viscous dampers, a TID connects two points on a structure, e.g., adjacent floors, and is placed in series with a viscous damper. The inertance of a TID essentially acts like the suspended mass of a TMD.

The paper described simple SDF and MDF models of TMD and TID systems. This post will focus on SDF models, but the extension to MDF models is straightforward.

In the paper, three SDF models were subjected to sinusoidal ground acceleration. The first model is an undamped system with mass m=1 kN s2/m and stiffness k=5000 kN/m, giving a natural circular frequency of wn=70.71 rad/sec.

The second model adds to the system a TMD with mass md=0.1 kN s2/m, stiffness kd=413 kN/m, and viscous damping cd=2.37 kN s/m. Instead of a TMD, the third model uses a TID with inertance bd=0.1 kN s2/m, stiffness kd=434 kN/m, and viscous damping cd=2.5 kN s/m. The stiffness and damping of the viscous dampers were calibrated for the TMD and TID to have similar performance–see the paper for more details.

The definition of the three models is straightforward using zeroLength elements and an inerter element for the TID. Each model is defined in one dimension.

import openseespy.opensees as ops

ops.wipe()
ops.model('basic','-ndm',1,'-ndf',1)

m = 1
k = 5000

ops.node(0,0); ops.fix(0,1)
ops.node(2,0); ops.mass(2,m)

# Structural system
ops.uniaxialMaterial('Elastic',1,k)
ops.element('zeroLength',1,0,2,'-mat',1,'-dir',1)

system = 'TID' # or 'TMD' or 'Undamped'

if system in ['TMD','TID']:
    # Define additional node
    ops.node(1,0)

if system == 'TMD':
    kd = 413
    cd = 2.37
    md = 0.1
    # Suspended mass
    ops.mass(1,md)

if system == 'TID':
    kd = 434
    cd = 2.5
    bd = 0.1
    # Inerter
    ops.element('inerter',3,0,1,'-dir',1,'-inertance',bd)

if system in ['TMD','TID']:
    # Viscous damper
    ops.uniaxialMaterial('Elastic',2,kd,cd)
    ops.element('zeroLength',2,1,2,'-mat',2,'-dir',1)

The displacement response history of the structural mass is shown below for three excitation frequencies: slowly varying, resonant, and quickly varying.

As intended, both the TMD and TID prevent resonance and also mitigate the structural response at other excitation frequencies. The TMD and TID responses differ slightly for the slowly and quickly varying excitations because the damper parameters were calibrated for the resonance condition.

The full response spectrum for the TMD and TID models is shown below.

The response spectrum shown here differs from that shown in Lazar et al (2013). I took the easy route with uniform excitation and show maximum relative displacement while Lazar et al show maximum absolute displacement, i.e., including the ground displacement. I also did not normalize the maximum displacements.

One thought on “Tuned Damper Models

Leave a comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.