| name | fea-dynamics |
| description | FEA dynamics — modal analysis (Block Lanczos, DDAM), harmonic response, transient dynamics, random vibration (PSD), response spectrum, pre-stressed modal, fatigue from FEA. |
| metadata | {"priority":7,"promptSignals":{"phrases":["FEA modal","FEA dynamics","harmonic response","random vibration FEA","PSD analysis","response spectrum FEA","modal analysis FEA","transient FEA"],"minScore":4}} |
FEA Dynamics — Complete Skill
Modal Analysis
Governing Equation (Undamped, Free Vibration)
[M]{ẍ} + [K]{x} = {0}
Assume {x} = {φ}sin(ωt) → ([K] - ω²[M]){φ} = {0}
Eigenvalue problem: det([K] - ω²[M]) = 0 → eigenvalues ω_i², eigenvectors {φ_i}
Mass Matrix Options
Consistent mass: [M] = ∫[N]ᵀρ[N]dV (higher accuracy, full matrix)
Lumped mass: diagonal only, total mass concentrated at nodes (faster, lower accuracy for bending)
ANSYS: LUMPM,OFF (consistent default); Abaqus: ELEMENT TYPE, MASS = CONSISTENT
Eigensolvers
Block Lanczos (ANSYS): most robust for large models (>10,000 DOF, many modes)
PCG Lanczos: memory-efficient, very large models
QR Damped (ANSYS): includes damping in eigenvalue extraction
Subspace iteration: small models, few modes
Shift: extract modes near frequency f_shift (mass matrix shift)
Sturm sequence check: verify no missed modes (ANSYS: MODOPT with STURMCK)
Mode Shape Normalization
Mass-normalized: {φ_i}ᵀ[M]{φ_i} = 1
Maximum displacement normalized: max|φ_i| = 1 (ANSYS default)
Mass Participation Factor
MPF_i = ({φ_i}ᵀ[M]{ι})² / (M_total)
ι = unit vector in direction of excitation
Sum of MPF for all modes ≥ 80% → sufficient modes extracted (ASCE 7, IBC)
Critical: always verify cumulative MPF before trusting modal response results
Pre-Stressed Modal (Stress Stiffening)
Structures under tension: stiffness increases → frequencies increase
Under compression: stiffness decreases → frequencies decrease (approaching buckling)
Procedure: run static solution first → PSTRES,ON → modal analysis uses K + K_σ
Applications: strings under tension, centrifugal stiffening (turbine blades), pressurized membranes
Harmonic Response Analysis
Methods
Full method: solve full system (-ω²[M] + iω[C] + [K]){X(ω)} = {F₀} for each frequency
Expensive but exact (includes all modes, no truncation)
Mode superposition: project onto mode shapes → NDOF problems → n modal ODFs
Faster; requires modes from prior modal analysis
Accuracy: governed by modes included (need MPF > 90%)
MSUP method with residual: adds static correction for missing high-freq modes
Damping in Harmonic
Viscous damping ratio ζ_i per mode (modal damping, most common)
Rayleigh damping: c = α[M] + β[K] → ζ_i = α/(2ω_i) + β ω_i/2
Material damping loss factor η: equivalent ζ = η/2
ANSYS: DMPRAT (constant), MDAMP (per mode), ALPHAD/BETAD (Rayleigh)
Output
Complex displacement {X} = {X_R} + i{X_I}
Amplitude: |X| = √(X_R² + X_I²)
Phase: φ = arctan(X_I/X_R)
Response at resonance (ω = ω_n): X = F₀/(2ζk) ← limited by damping only
Peak frequency: ω_peak = ω_n√(1-2ζ²)
Transient Dynamic Analysis
Newmark-β Integration
{d}_{n+1} = {d}_n + Δt{v}n + Δt²[(0.5-β){a}n + β{a}{n+1}]
{v}{n+1} = {v}_n + Δt[(1-γ){a}n + γ{a}{n+1}]
Stability: γ=0.5, β=0.25 → unconditionally stable (constant average acceleration)
Numerical damping: γ > 0.5 → overdamped high frequencies (algorithm damping)
HHT-α method: better numerical damping control
Time step: Δt ≤ T_min_mode/20 where T_min = 1/f_max_of_interest
Mode superposition transient: faster, good for linear problems with many load histories
Initial Conditions
ANSYS: IC command for initial displacement/velocity at nodes
Abaqus: *INITIAL CONDITIONS, TYPE=VELOCITY
Random Vibration (PSD Analysis)
Power Spectral Density
S(f) [g²/Hz or (m/s²)²/Hz] = input base excitation spectrum
RMS acceleration: a_rms = √(∫S(f)df) over frequency range
FEA PSD Procedure (ANSYS, Abaqus)
- Modal analysis (extract modes up to 1.5× highest PSD frequency)
- Define PSD input spectrum (base excitation or force)
- Compute cross-power spectral density between modes (mode correlation)
- Output: RMS stress, displacement, acceleration at each node
σ_rms = √(Σσ_i_rms² + cross-correlation terms)
SRSS: σ_rms = √(Σσ_i²) [for well-separated modes, ignores correlation]
CQC: σ_rms = √(ΣΣρ_ij σ_i σ_j) [full correlation matrix]
Mil-Std-810H PSD profiles (common inputs)
Aircraft: 0.04 g²/Hz from 15-1000 Hz
Truck transport: higher at low frequencies (5-20 Hz peak)
3σ rule: peak response ≈ 3× RMS (for Gaussian, 99.73% of peaks below this)
Fatigue from PSD (Dirlik, Steinberg)
Steinberg 3-band: material below 1σ: 68.3%, 1σ-2σ: 27.1%, 2σ-3σ: 4.33%
N_1σ + N_2σ/0.1 + N_3σ/0.01... based on S-N curve
Dirlik: probability density of peaks → Miner's rule integral
More accurate than Steinberg for broadband PSD
Response Spectrum Analysis (Seismic)
Procedure
- Modal analysis → extract frequencies ω_i, mode shapes {φ_i}
- Modal participation: Γ_i = {φ_i}ᵀ[M]{ι} / {φ_i}ᵀ[M]{φ_i}
- Peak modal response: d_i = S_d(ω_i) × Γ_i × {φ_i}
- Combine modal peaks by CQC or SRSS
SRSS: D = √(ΣD_i²) [adequate for well-separated modes]
CQC: D = √(ΣΣρ_ij D_i D_j) [required when modes close]
Input: ASCE 7 design spectrum, IBC site-specific, IEEE 693, NRC (nuclear)
Buckling (Linear, Eigenvalue)
[K]{Φ} + λ_cr[K_g]{Φ} = {0}
λ_cr = buckling load factor (BLF); P_cr = λ_cr × P_applied
Limitations of linear buckling:
- Assumes perfect geometry
- Actual buckling load typically 50-80% of linear prediction (imperfection sensitivity)
- For design: P_allowable = P_cr/φ with φ = 2-5 (depends on imperfection sensitivity)
Nonlinear buckling (Riks): apply imperfections, trace load-displacement into post-buckling
Imperfection amplitude: typically 1/1000 to 1/100 of critical length dimension
Output
Provide: natural frequencies ω_i [Hz], cumulative MPF by direction [%], peak RMS stress from PSD [MPa], response spectrum modal combination method, time step Δt [s] for transient, BLF for buckling.