Nonlinear Vibration (Duffing) Calculator Back
JP EN ZH
Nonlinear Vibration

Nonlinear Vibration Calculator — Duffing Oscillator

Visualize frequency response curves (FRC), hardening/softening spring behavior, jump phenomenon, and backbone curve. Uses the harmonic balance method for nonlinear frequency-domain analysis.

Parameters
Natural frequency ω₀ [rad/s]
rad/s
Damping ratio ζ
Nonlinear coefficient ε
Excitation amplitude F
Freq ratio range Ω/ω₀
rad/s
Duffing equation:
$\ddot{x}+ 2\zeta\omega_0\dot{x} + \omega_0^2 x + \varepsilon x^3 = F\cos(\Omega t)$
Results
Peak amplitude X_max
Peak freq ratio Ω/ω₀
Jump freq ratio
Spring type
Frc
▲ Nonlinear Frequency Response Curve (FRC) and Backbone Curve
Potential
Theory & Key Formulas

First-order amplitude equation ($x \approx A\cos\Omega t$):

$$\left[(\omega_0^2 + \tfrac{3}{4}\varepsilon A^2 - \Omega^2)^2 + (2\zeta\omega_0\Omega)^2\right]A^2 = F^2$$

Backbone curve (undamped free vibration):

$$\Omega_{bb}= \omega_0\sqrt{1 + \frac{3\varepsilon A^2}{4\omega_0^2}}$$

Jump phenomenon occurs at fold bifurcation points of the three-valued response region.

▲ Nonlinear Potential V(x) = ½ω₀²x² + ¼εx⁴
CAE Note Geometric nonlinearity in FEM (large displacement) naturally produces Duffing-type stiffening. ANSYS uses Full Newton-Raphson + Newmark-β; LS-DYNA uses explicit integration. Nonlinear springs: COMBIN39 (ANSYS), MAT_SPRING_NONLINEAR_ELASTIC (LS-DYNA), SPRING1 with nonlinear force-displacement (ABAQUS).

What is the Duffing Oscillator?

🙋
What exactly is a "nonlinear" vibration? I thought springs just got stiffer linearly, like in Hooke's Law.
🎓
Basically, Hooke's Law ($F = -kx$) is a great simplification. In practice, many real springs don't obey it, especially under large displacements. The Duffing oscillator models this by adding a cubic term: $F_{spring}= -kx - \varepsilon k x^3$. Try moving the "Nonlinear coefficient ε" slider in the simulator above from zero to a positive value. You'll see the frequency response curve bend to the right—that's a "hardening" spring!
🙋
Wait, really? The curve bends and there are sometimes three possible amplitudes for one frequency? That seems weird. What's the "jump phenomenon" mentioned in the tool description?
🎓
Great observation! That multi-valued region is the key. Imagine slowly increasing the driving frequency Ω. The amplitude will follow the upper branch until it suddenly "jumps" down to the lower branch at a critical point. If you then decrease Ω, it jumps back up at a different point—creating a hysteresis loop. In the simulator, set ε to 0.5 and F to 2, then slowly drag the frequency ratio slider back and forth. Watch the red dot jump; that's the phenomenon in action.
🙋
Okay, I see the jump. What's the dotted "backbone curve" that goes through the peaks of all those bent curves?
🎓
That curve shows how the system's natural frequency itself changes with amplitude because of the nonlinearity. For a linear system, it's just a vertical line at $Ω = ω_0$. Here, as amplitude increases, the effective stiffness changes. The backbone curve is given by $Ω_{bb}= ω_0\sqrt{1 + \frac{3\varepsilon A^2}{4ω_0^2}}$. If you increase the excitation amplitude F in the simulator, the whole response curve gets bigger and follows that dotted backbone more closely.

Physical Model & Key Equations

The Duffing oscillator is governed by a second-order nonlinear differential equation that adds a cubic stiffness term to the classic damped, forced harmonic oscillator.

$$m\ddot{x}+ c\dot{x}+ kx + \varepsilon k x^3 = F_0 \cos(\Omega t)$$

Where $m$ is mass, $c$ is damping coefficient, $k$ is linear stiffness, $\varepsilon$ is the nonlinear coefficient, $F_0$ is excitation force amplitude, and $\Omega$ is excitation frequency. Often, we rewrite it using natural frequency $\omega_0 = \sqrt{k/m}$ and damping ratio $\zeta = c / (2 m \omega_0)$.

Since solving this exactly is tough, the Harmonic Balance Method assumes a periodic solution of the form $x(t) \approx A\cos(\Omega t)$. Substituting this and balancing the harmonics leads to the key amplitude-frequency relationship used in this simulator:

$$\left[(\omega_0^2 + \tfrac{3}{4}\varepsilon A^2 - \Omega^2)^2 + (2\zeta\omega_0\Omega)^2\right]A^2 = F^2$$

Here, $A$ is the steady-state vibration amplitude. This equation determines the shape of the response curve. The term $\tfrac{3}{4}\varepsilon A^2$ is the nonlinear shift, which causes the bending. The backbone curve, where damping is zero ($\zeta=0$) and forcing is negligible, is found by setting the first squared term to zero: $\Omega_{bb}^2 = \omega_0^2 + \tfrac{3}{4}\varepsilon A^2$.

Frequently Asked Questions

This is a jump phenomenon caused by the nonlinearity (εx³ term) of the Duffing oscillator. For a hardening spring (ε>0), the curve tilts toward higher frequencies; for a softening spring (ε<0), it tilts toward lower frequencies, resulting in three amplitude solutions at the same frequency. The middle solution is unstable and not observed in practice; when sweeping the frequency, the amplitude jumps discontinuously.
The skeleton curve represents the relationship between amplitude and frequency in free vibration without damping or excitation (ζ=0, F=0). It shows how the natural frequency changes as the amplitude increases due to nonlinearity, bending toward higher frequencies for hardening and lower frequencies for softening. It coincides with the locus of the peaks of the frequency response curve.
It assumes that the vibration response can be approximated by a single cosine wave (x ≈ A cosΩt) with the same angular frequency Ω as the excitation. Higher harmonic components (3Ω, 5Ω, etc.) are neglected, which may cause errors when nonlinearity is strong or near resonance, but it is sufficiently practical for capturing basic jump phenomena and skeleton curve trends.
Increasing the damping ratio ζ lowers the resonance peak and makes the jump phenomenon less likely to occur. Increasing the absolute value of the nonlinear coefficient ε strengthens the curve's tilt and widens the frequency range of the jump. When ε=0, the curve reverts to a linear resonance curve. These parameters can be adjusted to reproduce the characteristics of actual vibration systems.

Real-World Applications

Micro-Electro-Mechanical Systems (MEMS): Tiny resonators and sensors often operate with large displacements relative to their size, making geometric nonlinearity (Duffing hardening) dominant. Engineers deliberately design them to jump into high-amplitude states for ultra-sensitive detection of mass or force changes.

Structural Dynamics & Aeroelasticity: Large deflections of aircraft wings, turbine blades, or tall buildings under wind loads introduce nonlinear stiffness. The jump phenomenon can lead to sudden, dangerous increases in vibration amplitude, a critical consideration in fatigue analysis and flutter prediction.

Vehicle Suspension Design: Shock absorbers and suspension springs are often intentionally nonlinear. A hardening characteristic (positive ε) prevents bottoming out on large bumps, while a softening characteristic (negative ε) can improve ride comfort on small road irregularities.

CAE/FEM Analysis: Any Finite Element Analysis with "large deflection" turned on solves geometric nonlinearities that produce Duffing-type behavior. Solvers like ANSYS use Newton-Raphson methods to handle this stiffness variation incrementally, while explicit codes like LS-DYNA integrate through the nonlinear response directly, crucial for simulating crash tests or metal forming.

Common Misconceptions and Points to Note

First, it is a misconception that a larger nonlinear coefficient ε always means greater danger. While it's true that a positive ε (hardening) can shift the resonance point to a higher frequency, potentially causing large vibrations at unexpected rotational speeds, this characteristic can also be leveraged. For instance, you can design a system to intentionally suppress vibration in a specific frequency band. For example, if you perform a frequency sweep with settings like ε=0.5 and F=0.3, you'll observe that the amplitude peak shifts to the right and its width narrows. In a sense, this can be viewed as expanding the "region where vibration is difficult to excite."

Next, the setting of the damping ratio ζ is often underestimated. In linear vibration, a small ζ simply results in a sharper, higher resonance peak. However, in nonlinear systems, it directly affects the occurrence range of the jump phenomenon and the frequency width where stable solutions exist. Even a slight increase in ζ from 0.01 to 0.05 can significantly alter the frequency range where jumps occur, or sometimes even eliminate the jump phenomenon altogether. In practice, since this damping value varies with materials and structures, it's crucial not to over-rely on simulation results and to consider safety margins.

Finally, avoid confusing the "backbone curve" with the "frequency response curve". The backbone curve (represented by $$ \omega_0^2 + \tfrac{3}{4}\varepsilon A^2 $$, tracing the peak's locus) merely indicates the ideal change in resonant frequency for zero damping. The actual response curve is centered around this backbone curve, gains width due to damping, and takes a "bent" shape because of the jump phenomenon. A useful two-step approach in design is to first grasp the trend of the backbone curve and then evaluate the actual response with damping included.