Structural Dynamics
Interactive tools
Every interactive in the course, in one place. Each one exists to teach a specific principle, which is stated beside it — none of them is decoration.
All 29 tools are built and working. Each is driven by the same tested calculation library that produces the numbers in the lessons, so a value read off a tool and a value quoted in a worked example come from the same place.
Every tool can be operated from the keyboard, every slider has a paired number field, every animation starts paused and can be scrubbed rather than watched, and every plot offers the numbers behind it as a table.
Stage A — Foundations of vibration
Dynamic load comparison
Module 01The same peak load applied five ways gives five different answers.
In context, in Module 1 →Dynamic model builder
Module 02What each modelling simplification buys, and what behaviour it discards.
In context, in Module 2 →Mass–spring–damper
Module 03Dynamic equilibrium of the four forces, at every instant.
In context, in Module 3 →Free-vibration explorer
Module 04The three damping regimes as one solution, not three.
In context, in Module 4 →Damping decay tool
Module 04Amplitude falls because energy is being dissipated, and energy goes as amplitude squared.
In context, in Module 4 →Logarithmic decrement tool
Module 04Measuring damping from a decay trace, and why one cycle is not enough.
In context, in Module 4 →Resonance explorer
Module 05Resonance is a ratio, and only damping limits it.
In context, in Module 5 →
Stage B — General dynamic response
Forcing-function builder
Module 06Pulse duration against natural period is what decides the response.
In context, in Module 6 →Impulse-response visualiser
Module 06An impulse changes momentum, not position.
In context, in Module 6 →Convolution explorer
Module 06The Duhamel integral is superposition of impulses, drawn.
In context, in Module 6 →Dynamic energy visualiser
Module 07The energy balance is the strongest check available on a dynamic analysis.
In context, in Module 7 →Newmark time stepper
Module 08What Newmark assumes, and the difference between stability and accuracy.
In context, in Module 8 →Time-step sensitivity tool
Module 08A step is adequate when halving it stops changing the answer.
In context, in Module 8 →Two-DOF mode explorer
Module 09In a coupled system nothing changes alone.
In context, in Module 9 →MDOF matrix builder
Module 10Every entry of M and K has a physical meaning.
In context, in Module 10 →Lumped and consistent mass
Module 10Two approximations that bracket the true frequency from opposite sides.
In context, in Module 10 →Rigid-diaphragm mass tool
Module 10A floor has three degrees of freedom, and the third is the one models forget.
In context, in Module 10 →
Stage C — Modal and earthquake response
Eigenmode explorer
Module 11Mode-shape magnitude is arbitrary; the ratios are not.
In context, in Module 11 →Modal superposition tool
Module 12What truncation costs, and where the cost appears.
In context, in Module 12 →Modal participation tool
Module 12Participation factor depends on scaling; effective mass does not.
In context, in Module 12 →Rayleigh damping explorer
Module 12Rayleigh damping is right at two frequencies and wrong at every other.
In context, in Module 12 →Ground-motion explorer
Module 13Relative displacement and absolute acceleration are different questions.
In context, in Module 13 →Response-spectrum generator
Module 14A spectrum is built by solving many oscillators, and it throws away time.
In context, in Module 14 →Linear time-history workspace
Module 15Every difference between two analyses comes from a choice you made.
In context, in Module 15 →
Stage D — Advanced response and control
Hysteresis explorer
Module 16Loop area is energy, and energy is what ductility buys.
In context, in Module 16 →Base-isolation comparison
Module 17Isolation buys force reduction with displacement.
In context, in Module 17 →Viscous-damper explorer
Module 18Damper force depends on velocity, so it peaks where displacement is zero.
In context, in Module 18 →Tuned-mass-damper simulator
Module 19One resonance becomes two, and mistuning undoes it.
In context, in Module 19 →Dynamic software audit
Module 20Software reports a wrong answer in the same format as a right one.
In context, in Module 20 →
The tools
Every tool, in syllabus order. These are the same components the lessons embed.
Module 01 · Dynamic load comparison
Try it
The same peak load, five different ways
Every case below applies the same peak force to the same structure. Only the way it arrives in time is different.
Show which cases
- Slowly applied
- Suddenly applied
- Harmonic at resonance
- Slowly applied
- Suddenly applied
- Harmonic at resonance
Show the numbers behind this plot
| Loading | Peak x | x / x_static |
|---|---|---|
| Slowly applied | 22.7 mm | 1.00 |
| Suddenly applied | 42.3 mm | 1.85 |
| Harmonic at resonance | 218 mm | 9.56 |
| Short impulse | 6.06 mm | 0.27 |
| Ground acceleration | 218 mm | 9.56 |
Static displacement is 22.8 mm. The worst case here — harmonic at resonance — reaches 9.6 times that. A static calculation would have reported the same number for all five.
What to look for
- The slowly applied load gives exactly the static answer. That is what 'static' means: applied slowly enough that inertia never enters.
- The suddenly applied load reaches almost exactly twice the static displacement, and nothing about that requires resonance or unusual loading.
- The harmonic load at resonance builds up over many cycles. Reduce the damping and watch how much further it goes and how much longer it takes.
- The short impulse produces a large velocity and a modest displacement. Shorten it further and the peak force stops mattering — only the area under the force curve does.
- Ground acceleration produces a response even though no force is applied to the structure at all.
What this shows: A load is not described by its magnitude alone. How quickly it arrives, relative to the structure's natural period, changes the response by more than a factor of ten.
Module 02 · Dynamic model builder
Try it
From a physical frame to a dynamic model
Choose what the model keeps. Every simplification buys size and costs behaviour, and both sides are reported.
Two orthogonal frame directions rather than one plane.
Only meaningful in a three-dimensional model.
- Joints in the physical model
- 9
- Degrees of freedom, unreduced
- 27
- Retained coordinates
- 3
- Reduction factor
- 9.0×
- Transformation
- u = T q
- Planes analysed
- 1
T is 27 × 3. The reduced mass is TᵀMT and the reduced stiffness is TᵀKT — the model does not lose the structure, it constrains it.
Retained
- Nothing has been simplified away.
No longer representable
- Joint rotations are no longer degrees of freedom, so no rotational inertia is carried and the local bending modes of individual beams cannot appear.
- Column axial deformation is ignored, so vertical modes and the vertical component of an earthquake cannot be represented at all.
- A rigid diaphragm ties every joint on a floor to one master coordinate. In-plane floor flexibility disappears — which matters for a long, narrow or heavily perforated floor plate. 9 coordinates became 3.
This is the classical shear-building model: one lateral coordinate per floor. It is the right first model for a regular building under horizontal excitation, and the wrong model for a floor-vibration problem, a vertical earthquake component or anything with a soft or perforated diaphragm.
What this shows: Model reduction is a series of explicit decisions, each removing a class of behaviour. The reduced coordinates are what you can see; the discarded ones are what you have agreed not to look for.
Module 03 · Mass–spring–damper
Try it
The mass, the spring, the damper and the four forces
Set the system moving and watch which force is doing the work at each part of the cycle.
Loading
Above 1 the response no longer oscillates.
- Displacement x (mm)
- Velocity x′ (mm/s ÷ 10)
- Acceleration x″ (mm/s² ÷ 100)
Show the numbers behind this plot
- ωn
- 6.28 rad/s
- fn
- 1 Hz
- Critical damping ccr
- 62.8 kN·s/m
- Regime
- underdamped
- Inertia force m x″
- -7.9 kN
- Damping force c x′
- -5.4e-18 kN
- Stiffness force k x
- 7.9 kN
- Applied force F(t)
- 0 kN
m x″ + c x′ + k x − F(t) = 0 kN — zero to within round-off. The four forces balance at this instant, as they do at every instant.
Things worth doing here
- Set ζ = 0 and release from rest. At the extremes the velocity is zero, so the damping force vanishes and the spring alone is balancing inertia. As it passes through zero the spring force vanishes instead.
- Raise ζ to 1 exactly. The mass returns to equilibrium in the shortest time possible without overshooting — that is what critical damping means, and it is not the same as 'heavily damped'.
- Raise ζ above 1. It returns more slowly, not faster. Extra damping past critical is a hindrance.
- Switch to harmonic forcing at β = 1 and watch the applied force stay in step with the DAMPING force, not the spring force. At resonance the load is doing nothing but feeding the damper.
What this shows: Dynamic equilibrium is not equilibrium of applied loads. Inertia, damping and stiffness forces sum to the applied force at every single instant — including instants when the applied force is zero.
Module 04 · Free-vibration explorer
Try it
Free vibration in every damping regime
Displace the mass, release it, and see what damping does to what follows.
- ζ = 0 (undamped)
- ζ = 0.05
- ζ = 1 (critical)
- ζ = 2 (overdamped)
Show the numbers behind this plot
- ζ = 0 (undamped)
- ζ = 0.05
- ζ = 1 (critical)
- ζ = 2 (overdamped)
- ωn
- 6.28 rad/s
- Tn
- 1 s
- Regime
- underdamped
- ωd
- 6.28 rad/s
- Td
- 1 s
- Cycles to half amplitude
- 2.2
0.13% below ωn
0.13% longer than Tn
At ζ = 0.05 the damped period is only 0.13% longer than the undamped one. Damping has an enormous effect on how long the vibration lasts and almost none on how fast it vibrates — which is why the distinction between ωn and ωd is nearly always ignorable in practice, and why it must not be forgotten in the derivation.
What this shows: The three damping regimes are not three phenomena. They are one solution whose character changes as ζ passes through 1, and at ζ = 1 the oscillation does not slow down — it stops existing.
Module 04 · Damping decay tool
Try it
Where the energy goes
Release the mass from rest and watch the amplitude fall — then watch the energy account that explains why.
- Displacement
- Envelope
- Kinetic
- Strain
- Dissipated (cumulative)
- Total mechanical
Show the numbers behind this plot
- Initial energy E₀
- 493 J
- Energy remaining now
- 100.0%
- Amplitude remaining now
- 100.0%
- Logarithmic decrement δ
- 0.315
- Cycles to half amplitude
- 2.2
- Cycles to 1% amplitude
- 14.6
Energy goes as amplitude squared, so when the amplitude has halved, three quarters of the energy has already gone. That is why a structure that still looks like it is moving may have almost nothing left in it — and why a damping estimate taken from the tail of a decay trace is the least reliable part of the record.
What this shows: Amplitude decays because the damper is converting mechanical energy into heat. Energy falls as the SQUARE of amplitude, so the energy is gone long before the motion looks small.
Module 04 · Logarithmic decrement tool
Try it
Estimating damping from a decay trace
This is the measurement an engineer actually makes on site. Choose two peaks and read the damping off them.
| Peak | Measured (mm) | Ratio to previous |
|---|---|---|
| 0 | 40.00 | — |
| 1 | 33.57 | 1.1914 |
| 2 | 26.89 | 1.2487 |
| 3 | 23.08 | 1.1650 |
| 4 | 18.75 | 1.2310 |
| 5 | 15.41 | 1.2164 |
| 6 | 13.15 | 1.1719 |
| 7 | 10.50 | 1.2531 |
- Cycles between the peaks, n
- 1
- Amplitude ratio
- 1.1914
- δ = (1/n) ln(ratio)
- 0.175
- ζ = δ/√(4π² + δ²)
- 0.0279
- ζ ≈ δ/2π (approximation)
- 0.0279
- True value
- 0.0300
- Error in the estimate
- -7.1%
Over one cycle the amplitude falls by only 17.2%. With a 2% reading error on each peak, that is why the estimate is 7% out. Increase the separation between the peaks.
What this measurement cannot tell you
- It measures the damping at the amplitude of the test. Real damping is amplitude-dependent, and a small-amplitude test on a building will report less damping than the same building shows in a storm.
- It assumes viscous damping. Friction in cladding, joints and finishes is not viscous, and fitting an exponential to it gives a number that works only over the range measured.
- The very late peaks are the least reliable, because the signal has fallen towards the noise floor of the instrument.
What this shows: The logarithmic decrement works because consecutive peaks fall by a constant RATIO. Using peaks many cycles apart is not a refinement — at realistic damping levels it is the difference between a usable estimate and noise.
Module 05 · Resonance explorer
Try it
Sweeping through resonance
Move the forcing frequency across the natural frequency and watch both the curve and the time history.
What fraction of the force reaches the supports.
- Rd at ζ = 0.05
- ζ = 0.02
- ζ = 0.05
- ζ = 0.1
- ζ = 0.2
- Response x (mm)
- Applied force (kN ÷ 5)
Show the numbers behind this plot
- Static displacement F₀/k
- 6.33 mm
- Magnification Rd
- 10
- Steady-state amplitude X
- 63.3 mm
- Phase lag φ
- 90.0°
- Peak magnification available
- 10
- Energy per cycle into the damper
- 3980 J
- Transmissibility
- 10
- Beat period
- —
At β = 1.00 the response is 10.0 times the static value, and the ONLY thing limiting it is the 5.0% damping. Halve the damping and the response doubles.
Things worth doing here
- Set β = 1 and reduce the damping in steps. The magnification is exactly 1/(2ζ) each time, and the time history takes proportionally longer to reach it.
- Notice the peak of the curve is NOT at β = 1 — it sits at β = √(1 − 2ζ²), just below. At small damping the difference is invisible; at ζ = 0.3 it is not.
- Raise ζ past 1/√2 ≈ 0.707. The peak disappears entirely and the response falls monotonically from its static value.
- Switch to transmissibility. Every curve crosses 1 at β = √2 whatever the damping — and above that point MORE damping makes the transmitted force worse, which is the one place in structural engineering where added damping is not an improvement.
What this shows: Resonance is not a property of a load or of a structure but of the RATIO between them, and at resonance nothing is holding the response down except damping.
Module 06 · Forcing-function builder
Try it
Build a force history and see what it does
Choose a shape and change how long it lasts, measured against the structure's own natural period.
Pulse shape
The single most important parameter on this panel.
- Response
- Static deflection F₀/k
Show the numbers behind this plot
- Static displacement
- 36.5 mm
- Peak displacement
- 57.4 mm
- Dynamic load factor
- 1.57
- Peak occurs at
- 0.24 s
- Total impulse ∫F dt
- 10.9 kN·s
- Impulsive estimate I/(mω)
- 69.1 mm
- Rectangular shock spectrum
- 1.62
after the pulse has ended — the structure is in free vibration
Not applicable — this pulse is not short compared with Tn
Around td ≈ Tn/2 the pulse and the structure are in step, and this is where the dynamic load factor is largest. It is 1.57 here.
What this shows: What decides the response to a pulse is not its magnitude or even its shape, but its DURATION measured against the natural period. Below about half a period only the area under the curve matters.
Module 06 · Impulse-response visualiser
Try it
What one sharp blow does
A very short force of known total impulse, and the free vibration it leaves behind.
- Response to the impulse
- Free vibration from x₀ = 0, x′₀ = I/m
Show the numbers behind this plot
- Velocity imparted, I/m
- 5000 mm/s
- Peak displacement
- 590 mm
- Predicted peak I/(mω_n)
- 637 mm
- h(0)
- 0
- Slope of h at t = 0
- 1/m = 1.0e-4 m per N·s²
- First peak at
- 0.2 s
Exact for an undamped system; slightly high once damping is present.
The mass has not moved yet.
A quarter of a damped period after the blow.
Doubling the mass halves the velocity the impulse imparts AND halves the resulting displacement, so a heavier structure is less affected by a blow — the opposite of the static intuition, where mass does nothing at all.
What this shows: An impulse changes momentum, not position. The struck structure starts exactly where it was, moving at I/m — so the impulse response is a free vibration with zero initial displacement.
Module 06 · Convolution explorer
Try it
Building an arbitrary response from impulses
Every slice of the force history is an impulse. Each one starts its own free vibration, and the total is the sum.
Force history
- Total response (convolution)
- Same problem, time-stepped
- Contribution of the impulse at t = 0.15 s
- Other individual impulses
Show the numbers behind this plot
- Slice width dt
- 0.0117 s
- Force in this slice
- 60.1 kN
- Impulse of this slice
- 0.702 kN·s
- Its peak contribution
- 4.82 mm
- Peak of the total
- 109 mm
- Convolution vs time-stepping
- 0.67%
Two completely different methods, same answer — which is the check that the implementation is right.
What the picture is telling you
- Each faint curve is one slice of the load acting alone. It is zero until its slice arrives, then it is a decaying free vibration, and it never notices what the other slices do.
- The heavy curve is their sum. Nothing else has been added: no new physics, only addition.
- Slices that arrive when the structure is already moving the same way add to the response; slices that arrive against it subtract. That is the whole mechanism behind resonance, seen at the level of individual impulses.
- Set the damping to zero and look at how long each contribution persists. With no damping, an impulse from the very start of the record is still contributing at the end.
What this shows: The convolution integral is not a new theory. It is linear superposition applied to a load history cut into slices, and the impulse response is the only thing you need to know about the structure.
Module 07 · Dynamic energy visualiser
Try it
The energy account
Every joule the load puts in must be stored, carried or dissipated. Watch the account, and watch whether it balances.
Case
Coarsen it and watch the balance stop closing.
- Kinetic
- Strain
- Dissipated
- Total mechanical
Show the numbers behind this plot
Where the energy is, right now
Kinetic 0 J · Strain 592 J · Dissipated 0 J
- Mechanical energy now
- 592 J
- Cumulative dissipation
- 0 J
- Cumulative input work
- 0 J
- Balance residual
- -592 J
- Worst residual, as a fraction
- 100.0000%
With no damping the total mechanical energy is a constant: it merely moves between kinetic and strain twice per cycle. The residual is 100.0000% — which is measuring the integration error, not any physics.
What this shows: Energy balance is the strongest available check on a dynamic analysis. If input energy does not equal kinetic plus strain plus dissipated, the analysis is wrong — and the size of the gap tells you how wrong.
Module 08 · Newmark time stepper
Try it
Newmark's method against an answer we already know
Free vibration has an exact solution, so the numerical error can be plotted rather than guessed at.
Scheme
Problem
The only parameter that decides whether the answer means anything.
- Newmark, average acceleration
- Exact solution
Show the numbers behind this plot
- Time step Δt
- 0.1 s
- Steps in the analysis
- 81
- Stability limit
- unconditionally stable
- Worst error
- 53.11%
- Period elongation
- 3.32%
- Amplitude decay per cycle
- 10.94%
Halving the step doubles the cost.
Should be zero for γ = 1/2.
53.1% out. The error is almost entirely PHASE — the numerical solution has the right amplitude at the wrong time. That is the signature of too coarse a step in an average-acceleration scheme.
Things worth doing here
- Choose central difference and raise Δt/Tn past 0.318. It does not become slightly wrong; it diverges to infinity within a few steps.
- Choose average acceleration and try Δt/Tn = 0.5. It stays bounded — unconditional stability means the answer will not explode — but a bounded answer is not a correct one, and the error is enormous.
- Compare linear acceleration and average acceleration at the same modest step. Linear acceleration is the more accurate, which is why it is worth having despite the stability limit.
- With γ = 0.7, watch the amplitude decay even though ζ is set to zero. That damping is entirely numerical and does not exist in the structure.
What this shows: Newmark makes one assumption — how acceleration varies within a step — and then enforces equilibrium at the end of the step. Everything about accuracy and stability follows from that assumption and from the size of the step relative to the period.
Module 08 · Time-step sensitivity tool
Try it
How small does the time step need to be?
Run the same problem at fourteen time steps and watch the answer stop changing.
Scheme
Quantity checked
Acceleration converges more slowly than displacement — always check the one you need.
- Relative error
- 5% line
| Δt / T_n | Steps | Peak | Error | Change from previous |
|---|---|---|---|---|
| 0.500 | 25 | 4.43 | 95.13% | — |
| 0.350 | 35 | 28.9 | 68.24% | 84.67% |
| 0.250 | 49 | 89.4 | 1.67% | 67.70% |
| 0.180 | 68 | 136 | 49.71% | 34.32% |
| 0.125 | 97 | 115 | 26.43% | 18.41% |
| 0.090 | 134 | 102 | 11.96% | 12.92% |
| 0.063 | 193 | 95.6 | 5.16% | 6.47% |
| 0.045 | 268 | 93.3 | 2.60% | 2.49% |
| 0.030 | 401 | 91.9 | 1.10% | 1.49% |
| 0.020 | 601 | 91.4 | 0.49% | 0.60% |
| 0.014 | 858 | 91.1 | 0.20% | 0.30% |
| 0.010 | 1201 | 91 | 0.11% | 0.08% |
| 0.007 | 1715 | 91 | 0.06% | 0.05% |
| 0.005 | 2401 | 91 | 0.02% | 0.04% |
- Exact steady-state amplitude
- 75.3 mm
- Within 5% at
- Δt/Tn = 0.25
- Within 1% at
- Δt/Tn = 0.02
- Cost of the 1% answer
- 601 steps
Available here only because the forcing is harmonic.
12.3× the cost of the 5% answer
The commonly quoted rule Δt ≤ T/10 gets you into the right region and no further. Notice how much the answer is still moving at that step, and how little it moves once you are at T/50.
What this shows: A time step is adequate when halving it stops changing the answer — not when a rule of thumb says so. The rule of thumb is where you START the convergence study.
Module 09 · Two-DOF mode explorer
Try it
Two storeys, two modes
Change one storey and watch BOTH frequencies and BOTH mode shapes move. Nothing in a coupled system changes alone.
Show
Animated
- Floor 1
- Floor 2
- Mode 1 contribution to floor 2
- Mode 2 contribution to floor 2
Show the numbers behind this plot
Mass matrix M(tonne)
| 400 | 0 |
| 0 | 300 |
Stiffness matrix K(MN/m)
| 1000 | -400 |
| -400 | 400 |
- T₁
- 0.252 s
- T₂
- 0.111 s
- f₁
- 3.97 Hz
- f₂
- 9.02 Hz
- Frequency separation ω₂/ω₁
- 2.27
- Closed form vs eigensolver
- 1.4e-14%
- Mode 1 effective mass
- 90.9%
- Mode 2 effective mass
- 9.1%
- Mode 1 shape (u₁ : u₂)
- 1 : 1.88
- Mode 2 shape (u₁ : u₂)
- 1 : -0.71
- Orthogonality φ₁ᵀMφ₂
- 0.0e+0
- Modal coordinates q₁, q₂ now
- 20.6, 2.16
Two independent routes to the same frequencies.
Zero to machine precision — this is what makes modal analysis possible.
Mode 1 has both floors moving the same way; mode 2 has them opposed. Change k₂ alone and watch T₁ AND T₂ both move — in a coupled system there is no such thing as "the stiffness of mode 2".
Things worth doing here
- Make the upper storey very light. The second mode becomes almost entirely the top floor moving on its own — a local mode with almost no effective mass, which is exactly what a code's 90% mass rule is designed to let you ignore.
- Make the upper storey very soft. The building becomes a mass on a long soft column, the first period lengthens sharply, and the mode shape shows almost all the deformation in the top storey — a soft-storey mechanism in embryo.
- Set the initial displacements to match mode 1's shape exactly. Only mode 1 is excited, and the building vibrates in a pure sinusoid. Any other starting shape excites both.
What this shows: A two-degree-of-freedom system has exactly two shapes in which it can vibrate freely without changing shape. Every other motion it can make is a combination of those two.
Module 10 · MDOF matrix builder
Try it
Assembling the matrices, entry by entry
Every number in these matrices has a physical meaning. Change a storey and watch which entries move.
Uncheck to taper mass and stiffness with height.
Reduces that storey's stiffness to 40%.
Mass matrix M(tonne)
| 400 | 0 | 0 |
| 0 | 400 | 0 |
| 0 | 0 | 400 |
Stiffness matrix K(MN/m)
| 1200 | -600 | 0 |
| -600 | 1200 | -600 |
| 0 | -600 | 600 |
Reading these matrices
- M is diagonal because the mass is lumped at the floors: accelerating floor 2 produces no inertia force on floor 3. That is an assumption, not a fact, and it is the shear-building assumption.
- K[i][i] is the sum of the storey stiffnesses above and below floor i, because moving that floor deforms both. Here K[0][0] = 600 + 600 = 1200 MN/m.
- K[i][i+1] is minus the storey stiffness between them. The minus sign says that pushing floor i towards floor i+1 pulls floor i+1 along.
- Every entry more than one floor away is zero, because floor 1 has no direct connection to floor 3 — only through floor 2. That is why the matrix is tridiagonal, and why a real frame with outriggers or bracing is not.
- K is symmetric. It must be: Betti's theorem guarantees it, and a stiffness matrix that is not symmetric has an assembly error in it.
| Mode | T (s) | f (Hz) | Γ | Effective mass | Cumulative |
|---|---|---|---|---|---|
| 1 | 0.365 | 2.74 | 1047.33 | 91.4% | 91.4% |
| 2 | 0.130 | 7.69 | 299.75 | 7.5% | 98.9% |
| 3 | 0.090 | 11.11 | -115.12 | 1.1% | 100.0% |
Total mass 1200 tonnes, all of it accounted for across 3 modes. The first mode alone carries 91% of it.
What this shows: The stiffness matrix entry K[i][j] is the force needed at i to hold every other floor still while floor j moves one unit. That definition, not a formula, is what makes the tridiagonal pattern obvious.
Module 10 · Lumped and consistent mass
Try it
Lumped mass or consistent mass?
Both are approximations. Compared against a member whose exact frequency is known, they miss from opposite sides.
Member
- Exact continuous solution
- 1350 rad/s (216 Hz)
- Consistent mass
- 1490 rad/s
- Lumped mass
- 1220 rad/s
- Gap between the two
- 20.23%
+10.27% — a consistent-mass model is stiff and light, so it reads high
-9.97% — lumping puts more mass at the moving end, so it reads low
A useful mesh-adequacy check that needs no exact solution: if the two disagree, the mesh is too coarse.
- Consistent mass
- Lumped mass
- Exact
Consistent mass matrix(kg)
| 157.0 |
Lumped mass matrix(kg)
| 235.5 |
Look at the off-diagonal entries. The consistent matrix has them and the lumped one does not — that is the whole difference. Physically, the consistent matrix says that accelerating one end of a member generates an inertia force at the other, because the material between them is being accelerated too.
Which to use
- For a lumped-mass building model where the mass really is at the floors, lumping is not an approximation at all — it is the correct description.
- For a member whose own distributed mass matters — a long-span floor beam, a chimney, a bridge deck — consistent mass converges faster and is the better choice per element.
- Lumped mass gives a diagonal matrix, which makes explicit integration cheap. That is why explicit codes for impact and blast use it.
- With enough elements both converge to the same answer, which is the real reassurance: neither is a different theory, only a different discretisation.
What this shows: Lumping discards the inertia coupling between the ends of a member. Consistent mass keeps it, at the price of a full matrix — and the two bracket the true answer, so the gap between them measures the mesh.
Module 10 · Rigid-diaphragm mass tool
Try it
A floor plate as three degrees of freedom
Translation in two directions and rotation about the vertical axis. The third one is the one models forget.
Offset of the centre of mass from the centre of stiffness.
Turn it off to see what a model with a missing I₀ reports.
Diaphragm mass matrix, no eccentricity(tonne / tonne·m²)
| 486 | 0 | 0 |
| 0 | 486 | 0 |
| 0 | 0 | 49572 |
- Floor mass m
- 486 tonne
- I₀ = m(a² + b²)/12
- 49600 tonne·m²
- Radius of gyration r = √(I₀/m)
- 10.1 m
- I about the offset axis
- 49600 tonne·m²
- Torsional stiffness Kθ
- 2.4e5 MN·m/rad
- Mode 1 period
- 0.155 s
- Mode 2 period
- 0.155 s
- Mode 3 period
- 0.0894 s
predominantly translation in x
predominantly translation in y
predominantly torsional
With no eccentricity the mass matrix is diagonal and the three modes are pure: two translations and one rotation, entirely independent. Add eccentricity and watch them mix.
What this shows: A rigid diaphragm has three degrees of freedom, not two. Leaving out its mass moment of inertia does not make the torsional period slightly wrong — it deletes the torsional mode.
Module 11 · Eigenmode explorer
Try it
Every mode this building has
Select a mode and watch it. Then change how it is normalised and watch every number move while the physics does not.
Normalisation
- Mode
- 1
- ωn
- 12.4 rad/s
- fn
- 1.98 Hz
- Tn
- 0.506 s
- Sign changes in the shape
- 0
- Shape as shown
- 0.253, 0.503, 0.728, 0.901, 1.000
- Modal mass with this scaling
- 8.8e5
- Worst orthogonality residual
- 5.6e-16
Mode n always has n − 1 of them for a shear building.
Change the normalisation. Every number in the shape row changes and the ratios between them do not — the roof still moves 3.96 times as far as the first floor whichever scaling you choose. That is why a mode-shape ORDINATE from software means nothing on its own, and why comparing two ordinates from the same mode means everything.
What this shows: A mode shape has an arbitrary magnitude and a meaningful shape. Any multiple of it satisfies the eigenproblem equally, so only the RATIOS between its entries carry information.
Module 12 · Modal superposition tool
Try it
How many modes do you actually need?
Add modes one at a time and watch where the missing response was hiding.
Ground motion
- All modes
- First 1 mode
Show the numbers behind this plot
- All modes
- First 1
| Mode | T (s) | Effective mass | Cumulative | Peak |q_n| |
|---|---|---|---|---|
| 1 | 0.590 | 83.1% | 83.1% | 33.3 |
| 2 | 0.221 | 11.2% | 94.4% | 3.19 |
| 3 | 0.139 | 3.5% | 97.9% | 0.623 |
| 4 | 0.106 | 1.4% | 99.3% | 0.261 |
| 5 | 0.090 | 0.5% | 99.8% | 0.0844 |
| 6 | 0.081 | 0.2% | 100.0% | 0.0486 |
- Peak roof displacement, all modes
- 35.1 mm
- Peak roof displacement, 1 mode
- 34 mm
- Error from truncation
- 3.09%
- Cumulative effective mass retained
- 83.1%
- Modes needed for 90%
- 2
- SRSS of the retained modal peaks
- 34 mm
- CQC of the same peaks
- 34 mm
Close to SRSS here, because the modes of a regular shear building are well separated.
Only 83.1% of the mass is represented. That is below the 90% a design code would normally require, and the missing mass would show as a base shear that is too small.
What this shows: Truncation error is not spread evenly. The first mode gets the roof displacement nearly right and the storey forces near the top badly wrong, because higher modes contribute little displacement and a great deal of acceleration.
Module 12 · Modal participation tool
Try it
Participation factor is not effective mass
Rescale every mode shape by the same factor and see which quantity moves.
Physically meaningless. Watch which column reacts.
- Effective mass fraction
- Cumulative
- 90% target
| Mode | T (s) | Γ (scale-dependent) | M_eff (tonne) | % of total | Cumulative |
|---|---|---|---|---|---|
| 1 | 0.753 | 1419.871 | 2016.0 | 79.75% | 79.75% |
| 2 | 0.292 | -557.551 | 310.9 | 12.30% | 92.05% |
| 3 | 0.182 | 327.340 | 107.2 | 4.24% | 96.28% |
| 4 | 0.135 | 219.452 | 48.2 | 1.91% | 98.19% |
| 5 | 0.110 | -154.438 | 23.9 | 0.94% | 99.13% |
| 6 | 0.096 | 109.667 | 12.0 | 0.48% | 99.61% |
| 7 | 0.087 | -78.953 | 6.2 | 0.25% | 99.85% |
| 8 | 0.081 | 60.660 | 3.7 | 0.15% | 100.00% |
- Total mass
- 2530 tonne
- Sum of effective masses
- 2530 tonne
- Modes to reach 90%
- 2
- Mode 1 Γ
- 1419.871
- Mode 1 effective mass
- 2016.0 tonne
Must equal the total. Every kilogram belongs to some mode.
Changed by the rescaling — it is now 1.0× smaller than at scale 1.
Unchanged by the rescaling, whatever you set the slider to.
Set the rescaling slider anywhere you like. The Γ column moves and the effective-mass column does not. Γ is only meaningful alongside the mode shape it was computed with; effective mass is meaningful on its own — and that is the entire reason codes are written in terms of it.
What a low effective mass means
- A mode with almost no effective mass contributes almost no base shear, however dramatic its shape looks in the software.
- It can still matter for local response — a slender element, a plant item, a parapet — because effective mass measures the contribution to GLOBAL inertia, not to local demand.
- Introduce a soft storey and watch the mass concentrate into the first mode. That is not a good sign; it means one storey is doing all the deforming.
What this shows: The participation factor depends on how the mode shapes happen to be scaled. The effective modal mass does not — which is why design codes accumulate effective mass and never participation factors.
Module 12 · Rayleigh damping explorer
Try it
What Rayleigh damping actually delivers
Choose two modes to anchor the damping at, then look at what every other mode gets.
- ζ delivered
- Mass-proportional part a₀/(2ω)
- Stiffness-proportional part a₁ω/2
- Target
| Mode | ω (rad/s) | ζ delivered | vs target | Effective mass |
|---|---|---|---|---|
| 1 ⚓ | 8.35 | 5.00% | 1.00× | 79.7% |
| 2 | 21.54 | 4.07% | 0.81× | 12.3% |
| 3 ⚓ | 34.56 | 5.00% | 1.00× | 4.2% |
| 4 | 46.51 | 6.14% | 1.23× | 1.9% |
| 5 | 56.91 | 7.22% | 1.44× | 0.9% |
| 6 | 65.40 | 8.14% | 1.63× | 0.5% |
| 7 | 71.97 | 8.85% | 1.77× | 0.2% |
| 8 | 77.49 | 9.46% | 1.89× | 0.1% |
- a₀ (mass-proportional)
- 0.672 1/s
- a₁ (stiffness-proportional)
- 0.00233 s
- Anchor frequencies
- 8.35 and 34.6 rad/s
- Lowest damping delivered
- 4.07%
- Highest damping delivered
- 9.46%
- Worst-damped mode
- mode 8 at 9.46%
The anchors have been placed so that every mode carrying meaningful mass is damped close to the target. That is the right way to choose them: bracket the modes that matter, not the first and the last.
How to choose the anchors
- Bracket the modes that carry the mass. Anchoring on mode 1 and the highest mode with meaningful effective mass is the usual advice.
- Never anchor on a very long-period mode. The mass-proportional term goes as 1/ω, so a near-rigid-body mode receives absurd damping — and a base-isolated structure is exactly where this bites.
- If the damping the model delivers in an important mode is wrong by a factor of two, so is that mode's contribution to the answer. Check the delivered values; do not assume the target was achieved.
- Where every mode's damping must be right, use a modal damping matrix instead. It is not physically realisable as dashpots, but neither is Rayleigh damping.
What this shows: Rayleigh damping is exactly right at two frequencies and wrong at every other. Where the anchors are placed decides which modes are over-damped and which are under-damped — and that is an analyst's choice, not a property of the structure.
Module 13 · Ground-motion explorer
Try it
A ground motion, and what it does to one structure
The ground moves; the structure is dragged along by its supports. What the structure feels depends entirely on its own period.
Record
0.24 g
Show the numbers behind this plot
- Relative displacement u (mm)
- Absolute acceleration (m/s²)
Show the numbers behind this plot
- Peak ground acceleration
- 2.4 m/s² (0.24 g)
- Peak ground velocity
- 0.237 m/s
- Peak ground displacement
- 109 mm
- 5–95% significant duration
- 9.01 s
- Total Arias intensity
- 0.808 m/s
- Peak RELATIVE displacement
- 42.8 mm
- Peak ABSOLUTE acceleration
- 2.65 m/s²
- Peak inertia force per tonne
- 2.65 kN/tonne
- Amplification over the ground
- 1.11×
Full record 20 s
This is what deforms the structure and generates member forces.
This is what the people and the equipment on the floor feel.
At T = 0.80 s the structure is amplifying the ground motion by 1.1×. Both quantities matter and they are different questions.
A note on these records
- Synthetic record generated for teaching. It is not a recorded earthquake and must not be used for design.
- Kanai–Tajimi filter with a ground period of 0.30 s and 60% ground damping.
- High-pass filtered at 0.15 Hz, then integrated to velocity and displacement with a linear trend removed from each.
- Linearly scaled by 1.00 to a peak ground acceleration of 2.40 m/s².
What this shows: An earthquake applies no force to a structure. It moves the ground, and the resulting inertia force −m·üg is what the structure has to resist — which is why mass is a liability in an earthquake and an asset under wind.
Module 14 · Response-spectrum generator
Try it
Building a response spectrum, one oscillator at a time
A spectrum is the peak response of every possible single-degree-of-freedom structure to one record. This tool computes exactly that, and lets you inspect any one of them.
Record
Plot
Compare another record
- ζ = 5%
- Smoothed
Show the numbers behind this plot
The oscillator at T = 0.60 s, solved in full — its peak is the single point marked on the spectrum above.
- Sd at this period
- 25.3 mm
- PS_v
- 0.264 m/s
- PS_a
- 2.76 m/s² (0.28 g)
- Peak elastic force per tonne
- 2.76 kN/tonne
- True peak absolute acceleration Sa
- 2.78 m/s²
- Peak occurred at
- 4.61 s
- Short-period check: PS_a → PGA
- 0.1% error
- Long-period trend: Sd → PGD
- 40.6% from PGD
f = m·PS_a — one multiplication, which is why codes tabulate spectral acceleration.
0.6% from PS_a — they coincide only at zero damping.
The spectrum does not record this. It is what a spectrum throws away.
A sharp check: PS_a must reach the PGA. Anything above a few per cent here is a units or integration error.
A weak check, and deliberately not scored. The asymptote is only approached when the period far exceeds the record's DURATION, so a large gap here is expected rather than wrong.
Both ends of the spectrum are fixed by physics. As T → 0 the structure is rigid, rides with the ground, and PS_a must approach the peak ground acceleration of 2.4 m/s². As T → ∞ the mass stays still and Sd must approach the peak ground displacement of 109 mm. A computed spectrum that misses either asymptote has a units or integration error in it.
A response spectrum is not a design spectrum
- This curve is jagged because a single earthquake happens to have more energy at some periods than others, by accident of that particular rupture and path.
- A design spectrum is smooth because it envelopes many records and includes a chosen probability of exceedance. It is a different kind of object and it is never the response of anything.
- Two structures whose periods differ by 10% can have spectral demands differing by a factor of two on a single-record spectrum. On a design spectrum they will not. That difference is the whole reason design spectra are smoothed.
- These records are synthetic and generated for teaching. Nothing here is a design value.
What this shows: A response spectrum is a summary of what one earthquake does to every possible SDOF structure. It contains no information about WHEN each peak occurred — which is precisely why modal peaks have to be combined statistically.
Module 15 · Linear time-history workspace
Try it
A linear time-history analysis, with the choices exposed
The same building and the same record, analysed the ways an engineer would actually choose between.
Record
Method
Δt = 0.010 s — that is T₁/60
Integration scheme
- This analysis
- Converged reference (direct, all modes, full step)
Show the numbers behind this plot
- First period T₁
- 0.598 s
- Δt used
- 0.01 s
- Steps in the analysis
- 2001
- Peak roof displacement
- 35.3 mm
- Error against the reference
- 0.00%
- Peak inter-storey drift
- 0.232%
- Peak base shear
- 1240 kN
- As a fraction of the weight
- 0.060
T₁/60
at storey 1
Direct integration at Δt = T₁/60 is converged to 0.00%.
Two things this workspace is designed to show
- Coarsen the time step and watch the roof displacement drift out of phase rather than change in amplitude. That is the signature of the average-acceleration scheme, and it is why a plot that 'looks right' can still be wrong.
- The time step must resolve the HIGHEST mode you care about, not the first. A step of T₁/50 sounds generous until you notice it is only T₆/5.
- Displacement converges long before drift does, and drift long before acceleration. Check convergence on the quantity you are going to use.
What this shows: Direct integration and modal superposition give the same answer when all modes are kept. Every difference you see comes from a choice you made — truncation, time step or integration scheme — not from the two methods disagreeing.
Module 16 · Hysteresis explorer
Try it
Yielding, hysteresis and what it buys
Cycle a yielding element and read the loop, then put the same element under an earthquake.
1.0 means the structure is designed to stay elastic.
0 gives elastic–perfectly plastic.
Record
- Inelastic response
- Elastic response
Show the numbers behind this plot
- Yield force fy
- 0.66 kN
- Yield displacement uy
- 10.7 mm
- Loop area, prescribed cycle
- 0.0821 kJ
- Compare 4fy(u₀ − uy)
- 0.0847 kJ
- Equivalent viscous damping at this ductility
- 48%
- Peak elastic force demand
- 2.64 kN
- Peak inelastic force
- 0.752 kN
- Ductility demand μ
- 5.66
- Residual displacement
- 24.3 mm
- Peak elastic displacement
- 42.8 mm
- Peak inelastic displacement
- 60.6 mm
- Effective period at peak ductility
- 1.78 s
- Newton iterations that failed
- 0
Approximate — hardening enlarges the loop.
Lengthened from 0.80 s as the structure softened.
Strength reduced to 25% of the elastic demand, and the displacement is 1.42× the elastic value — close to the equal-displacement rule, which predicts a ratio near 1 for structures of this period.
What the numbers behind the rules look like
- Equal-displacement rule: R = μ, so a ductility of 5.7 would justify a strength reduction of 5.7.
- Equal-energy rule: R = √(2μ − 1) = 3.21 — more demanding, and the one that applies at short period.
- Set α to zero and watch the residual displacement grow. Post-yield stiffness is what pulls a structure back towards its original position; without it, drifts accumulate in one direction.
- Neither rule is a derivation. Both are observations fitted to large numbers of analyses, and they are the reasoning behind the behaviour factors in seismic codes.
What this shows: A hysteresis loop's AREA is energy dissipated per cycle. That is the whole reason a ductile structure survives forces several times its own strength — it converts the earthquake's energy into plastic work instead of storing it.
Module 17 · Base-isolation comparison
Try it
Fixed base against base isolated
The same building, the same earthquake, with and without an isolation layer.
Record
- Fixed base, ζ = 5%
- Isolated, ζ = 15%
- Fixed base, ζ = 5%
- Isolated, ζ = 15%
| Fixed base | Isolated | Ratio | |
|---|---|---|---|
| First period | 0.494 s | 2.635 s | 5.34× |
| Spectral acceleration | 3.03 m/s² | 0.739 m/s² | 0.24× |
| Base shear | 7270 kN | 1770 kN | 0.24× |
| Base shear coefficient | 0.309 | 0.075 | — |
| Displacement | 18.7 mm | 130 mm | 6.94× |
- Isolator stiffness required
- 14 MN/m
- Isolated first-mode effective mass
- 100.0%
- Period separation T₁/T₂
- 9.8×
- Fixed-base first-mode effective mass
- 88.0%
- Isolator displacement to accommodate
- 130 mm
- Second isolated period
- 0.269 s
The moat, the services and the isolators themselves must all take this.
The superstructure's own mode, now largely uncoupled from the ground.
The isolated first mode carries 100.0% of the mass and is 10× longer than the second. That is what a working isolation system looks like: the building above moves essentially as a rigid block on the isolators, and the superstructure's own modes are barely excited.
What isolation does not do
- It does not help a structure whose fixed-base period is already long. There is no acceleration branch left to move down, and the displacement penalty applies anyway.
- It does not remove the need for the superstructure to be designed. It reduces the demand; it does not eliminate it.
- On soft soil the spectrum can still be rising at 2–3 s, so an isolation system tuned for a rock site may buy far less there. Change the record and watch what happens.
- The isolator displacement is a hard constraint on the building: a moat that is too narrow turns a working isolation system into an impact problem.
What this shows: Isolation lengthens the period. That moves the structure DOWN the acceleration branch of the spectrum and UP the displacement branch — so it buys force reduction with displacement, and the displacement must be accommodated somewhere.
Module 18 · Viscous-damper explorer
Try it
A manufactured viscous damper
Force from velocity, energy from the loop, and what the velocity exponent is really for.
1 is linear. 0.3–0.5 is typical for seismic dampers, and it caps the force in a rare event.
- α = 0.50
- α = 1 (linear)
- Displacement (mm)
- Damper force (kN ÷ 10)
- Peak relative velocity
- 0.188 m/s
- Peak damper force (axial)
- 868 kN
- Brace efficiency cos²θ
- 0.750
- Effective horizontal force
- 752 kN
- Damper stroke required
- 52 mm
- Energy dissipated per cycle
- 91.1 kJ
- Equivalent modal damping (linear damper)
- 2.7%
- Peak response without dampers
- 90 mm
- Peak response with dampers
- 46.2 mm
- Reduction
- 49%
Shown for α = 1; a nonlinear damper has no exact modal damping ratio.
With α = 0.50, doubling the velocity raises the force by only 41%. That is the point of a nonlinear damper: it delivers nearly full force at moderate velocity and refuses to deliver an enormous force in a rare, fast event — which protects the braces, the connections and the frame behind them.
Sizing and placement
- Added damping goes with the SQUARE of the relative modal displacement across the damper. A damper in a storey where the mode barely drifts does almost nothing, however large it is.
- Dampers add damping without adding stiffness, so they do not change the period and do not attract more force to the structure — unlike a brace, which does both.
- Damper force and structural force peak at different instants, because one depends on velocity and the other on displacement. Adding their peaks arithmetically over-designs the connection.
- The stroke is a hard limit. A damper that bottoms out becomes a rigid strut, and the force that follows is not a damping force at all.
What this shows: A viscous damper's force depends on VELOCITY, not displacement, so it peaks where the displacement is zero — which is why it adds damping without adding stiffness, and why it does not change the structure's period.
Module 19 · Tuned-mass-damper simulator
Try it
A tuned mass damper
Add a small secondary mass on its own spring, tuned near the structure's frequency, and one resonance becomes two.
3.0% of the structure's mass
- Without the damper
- With the damper
- Auxiliary mass
The structure and its auxiliary mass, driven at ω/ω₁ = 1.00. Watch the phase between them.
- Optimum f (Den Hartog)
- 0.9709
- Optimum ζ₂
- 0.1045
- In use: f
- 0.9709
- In use: ζ₂
- 0.1045
- Peak without the damper
- 50.0
- Peak with the damper
- 7.34
- Reduction
- 85%
- Auxiliary mass amplitude at ω₁
- 29.1× static
- Peak after a 10% tuning error
- 13.02
The damper moves far more than the structure does. Its stroke is a real design constraint.
77% worse than the tuned case
A mass ratio of 3.0% has taken the peak from 50 to 7.3 — a reduction of 85%. Notice what happened to the SHAPE: the single tall peak has split into two shorter ones, and the frequency the structure used to resonate at now sits in the trough between them. The auxiliary mass is moving 4.6 times as far as the structure, and that motion is where the energy is going.
Why the optimum tuning looks flat
- Den Hartog's optimum makes the two peaks equal in height rather than digging one deep notch. A deep narrow notch would give a lower minimum and would miss it entirely as soon as the structure's real frequency differed from the model's.
- A tuned mass damper is commissioned by measurement, not by calculation. The structure's real frequency is measured after construction and the damper is retuned to it.
- Turn off the optimum and set f well away from 1. The device stops working, and the structure's original resonance comes back.
- The optimum here is for harmonic forcing of an undamped structure. Under wind or earthquake, and with the structure's own damping present, the best tuning shifts — this is a starting point, not a final answer.
- The auxiliary mass has to travel. On a real building that means a stroke of the order of a metre, plus a stopper for the case where the design event is exceeded.
What this shows: A tuned mass damper does not absorb energy by being large. It works by moving out of phase with the structure so that its inertia opposes the motion — which is why a 3% mass ratio can halve the response, and why it stops working if the tuning is wrong.
Module 20 · Dynamic software audit
Try it
Audit the output
Six analyses that ran to completion without a single warning. Each one has something wrong with it.
Cases
A four-storey steel frame, braced in both directions, modelled in a general-purpose package. The modal analysis runs without error and reports the following.
Analysis output
- Model
- 4-storey braced steel frame, 3D
- Total mass
- 1 640 tonne
- Mode 1 period
- 47.2 s
- Mode 1 effective mass, X
- 0.1%
- Mode 2 period
- 0.61 s
- Mode 2 effective mass, X
- 71%
- Analysis status
- Completed. No warnings.
M_eff,X = 0.1%
M_eff,X = 71%
What is wrong with this analysis?
What this shows: Analysis software reports a mechanism, a missing mass, a wrong unit and an unresolved time step in exactly the same confident format it uses for a correct answer. The checks that catch them are performed by the engineer, not the program.