Engineering Notes

Lesson learned Seismic N.º 08

Rayleigh with a fixed β: every model in your database gets different damping

Abstract. Copying the same damping coefficient into every model looks neutral, but it is not: a flexible structure ends up with 1.5% and a stiff one with 5%. I explain where that comes from and how to fix it.

Push a swing and let go. It goes back and forth a few times, each time with less energy, until it stops. What takes energy away on every swing is damping: friction in the chains, the air, your feet dragging. Structures have it too, and in structural dynamics we sum it up as a percentage, ξ\xi. For concrete we usually use between 2% and 5%.

That percentage matters a lot. Less damping means a stronger response to the earthquake. So if you want to compare many structures, they should all have the same ξ\xi. Otherwise, part of the difference is something you put into the model.

In this note we will see how OpenSees defines Rayleigh damping, why copying the same coefficient into every model breaks that comparison, and how to fix it. At the end I share an estimation mistake I made that taught me something else.

How Rayleigh works

Rayleigh damping builds the damping matrix by mixing the mass and stiffness matrices:

C=αMM+βKK\mathbf{C} = \alpha_M \mathbf{M} + \beta_K \mathbf{K}

With those two coefficients, each vibration mode gets:

ξn=αM2ωn+βK ωn2\xi_n = \frac{\alpha_M}{2\omega_n} + \frac{\beta_K\,\omega_n}{2}

A very common choice is stiffness-only (αM=0\alpha_M = 0). The formula then becomes:

ξn=βK ωn2=βK πfn\xi_n = \frac{\beta_K\,\omega_n}{2} = \beta_K\,\pi f_n

Read that slowly: damping grows with frequency. If two structures vibrate at different frequencies, the same βK\beta_K gives them different damping.

What happens in a study with many models

Say you study structures of different heights. Short ones are stiff and vibrate fast; tall ones are flexible and vibrate slowly. Paste the same rayleigh(0, 0, beta, 0) into every model, with βK≈0.0032\beta_K \approx 0.0032, and you get:

First-mode frequencyDamping it gets
1.5 Hz≈ 1.5%
2 Hz≈ 2%
3 Hz≈ 3%
4 Hz≈ 4%
5 Hz≈ 5%

Stiff structures end up three times more damped than flexible ones. If your conclusion is “tall structures get damaged more”, part of that effect may come from giving them less damping.

How to fix it

Choose the ξ\xi you want and compute βK\beta_K for each model from its own frequency:

βK=2 ξω1\beta_K = \frac{2\,\xi}{\omega_1}

In OpenSees:

import math
import openseespy.opensees as ops

w1 = math.sqrt(ops.eigen(1)[0])     # first-mode angular frequency
xi = 0.05                           # the damping you want
ops.rayleigh(0.0, 0.0, 0.0, 2 * xi / w1)   # β on committed stiffness

If more than one mode matters, use both coefficients and fix ξ\xi at two frequencies. For nonlinear analysis, apply β\beta to committed or tangent stiffness: with initial stiffness, yielding produces damping forces that do not exist in reality.

What I learned by estimating wrong

In a study of my own I wanted to know how much my results would move if I fixed the damping. First I measured how much drift changed with ξ\xi. The relationship was moderate: raise damping by 10% and drift drops a bit over 2%.

I used that to estimate how much my fragility curves would move, and I fell short by a factor of three. The reason: fragility was defined with a damage threshold (the structure cracked or it did not). In the most affected group, drift dropped only 8%, but the fragility median rose more than 40%. A small change in demand pushes many cases across the threshold at once.

A continuous demand and a threshold damage do not react the same way. If you change the model, rerun the database instead of extrapolating.

About the author

Yordan Rocio Maldonado

Structural engineer, seismic and bridge specialist. CIP 215845

Educational, reference-only content. Opinions are my own and do not represent any employer. On a real project, the engineer of record and the governing code decide.

← Back to notes