stiffness
Imagine a chemical reaction where one species vanishes in a microsecond while another drifts over an hour, both governed by the same system of equations. The fast process settles almost instantly and then just sits there, irrelevant — yet an explicit method is forced to keep tiptoeing with microsecond steps for the whole hour, terrified of the fast mode it can no longer even see. That maddening situation — where vastly different time scales coexist and the fastest one dictates a punishingly small step long after it has died out — is stiffness.
Precisely, a problem is stiff when it has solution components that decay on wildly different time scales — mathematically, when the eigenvalues of the system (or the Jacobian, locally) span a huge range of magnitudes, with some strongly negative. The trouble is purely numerical: an explicit method's small region of absolute stability requires h*lambda to stay inside it, so the most negative lambda (the fastest-decaying mode) forces a tiny step, EVEN ON the slow, smooth part of the solution where accuracy would be perfectly happy with big steps. Stability, not accuracy, becomes the binding constraint.
Stiffness is one of the most important practical facts in scientific computing, and the reason implicit methods exist. Use RK4 on a stiff problem and it either takes millions of needless tiny steps or, if you push h up, explodes into oscillating garbage. The cure is an implicit method — backward Euler or the BDF family — whose enormous stability region lets you step over the dead fast modes and follow the slow solution with large, stable steps. Stiffness is not about the equation being hard to write or its solution being wild; it is specifically about that clash of time scales crippling explicit methods.
y' = -1000(y - cos t) - sin t has a true solution that quickly settles onto the gentle curve cos t, but the -1000 factor makes explicit Euler unstable unless h < 0.002 — even though cos t itself is perfectly smooth and would be fine with h = 0.1. Backward Euler handles it stably at h = 0.1.
Fast dead modes force tiny explicit steps — that clash of time scales is stiffness.
Stiffness is not the same as the solution being fast-changing or hard. A perfectly smooth, slowly varying solution can sit on a stiff equation; stiffness is about the stability constraint, not the visible behaviour of the answer.