Tap, drag, or press arrow keys to steer the tensile load so the sample's strain lands inside incoming inspection windows. Each pass translates the modulus relationship into a quick reflex challenge with score boosts for tight tolerances.
Controls: drag the force yoke, click/tap the canvas, or use ↑ / ↓ to nudge stress, space to freeze, and P to pause.
Click to begin balancing strain targets.
Tip: Within elastic limits, halving strain halves stress for a fixed modulus.
Stretch a steel rod or compress a ceramic bar and each resists deformation in proportion to its stiffness. That proportionality constant is Young's modulus . Traditional calculators immediately divide stress by strain and stop there. Yet the act of loading a material is dynamic: forces accelerate masses, energy sloshes between kinetic and elastic forms, and damping bleeds some of it away. The simulator on this page keeps the familiar modulus computation but adds an interactive mass–spring model so you can watch those transients unfold. By adjusting force, geometry, mass, and damping, you witness how the bar would respond if the load were suddenly applied in a laboratory test frame.
Young's modulus connects microscopic bond stiffness to macroscopic engineering behavior. Metals like steel owe their high modulus to strong metallic bonding, whereas polymers stretch easily because weak van der Waals forces permit large molecular rearrangements. The parameter informs everything from skyscraper sway to the twang of a guitar string. Seeing a virtual specimen oscillate in response to a step load turns the scalar modulus into a visceral concept.
The form above gathers the applied force , cross-sectional area , original length , and observed change in length . Young's modulus follows directly from . For the dynamic model we treat the specimen as an ideal spring of constant . A test mass hangs from the spring; a dashpot with damping coefficient simulates internal friction or a viscous medium. Gravity is neglected because the force input represents the net tensile load already applied. All quantities use SI units and input validation rejects negative or non-finite entries. Time stepping uses a fixed step clamped between 0.0001 and 0.1 s, and the simulation runs for total time .
When the load is suddenly applied at , the mass obeys the second-order differential equation
.
Defining displacement relative to the static equilibrium
e
An explicit fourth-order Runge–Kutta method advances the state from time step to . If and , each step computes four evaluations and combines them as . For stability the time step should remain less than roughly one tenth of the natural period ; the interface warns but allows larger values. Energy totals let you monitor numerical damping or growth. A striped blue bar represents kinetic energy while the gold bar tracks elastic energy. Their combined length scales to the maximum encountered, providing a color-independent cue.
Consider a polymer filament 0.5 m long with cross-sectional area 1×10⁻⁴ m². Applying a 50 N tensile force elongates it by 2 mm. Enter these values and choose a 0.2 kg test mass with 0.1 N·s/m damping. The modulus evaluates to and the spring constant becomes . Press Play: the block leaps from rest, overshoots the equilibrium extension of 2 mm, and oscillates before settling. The caption reports the current time, displacement, and energy partition; downloading the CSV reveals that energy peaks near 0.005 J. Doubling the damping to 0.2 N·s/m shows a slower, monotonic approach to equilibrium—exactly what viscoelastic materials exhibit.
The table summarizes three scenarios integrated with identical numerical settings.
Scenario | E (MPa) | c (N·s/m) | Peak x (mm) | Energy at t=1 s (mJ) |
---|---|---|---|---|
Baseline | 125 | 0.1 | 2.8 | 4.7 |
Higher damping | 125 | 0.3 | 2.1 | 1.6 |
Stiffer sample | 250 | 0.1 | 1.4 | 8.9 |
Increasing damping cuts overshoot and dissipates energy, while doubling the modulus halves the peak displacement yet stores more elastic energy. Typing these numbers into the form reproduces the rows exactly, reinforcing the link between parameters and dynamic response.
The canvas depicts the specimen as a horizontal spring attached to a movable block. The left anchor is fixed at the origin. When the load is applied, the block slides to the right; its position represents extension . The blue kinetic-energy bar grows with velocity magnitude, the gold bar with elastic energy relative to equilibrium. The caption and hidden text summary announce time, displacement, and energy so that screen-reader users receive the same information. Keyboard users can focus the canvas and press the space bar to toggle play and pause.
The simulator assumes linear elasticity, lumped mass, and constant damping. Real specimens may exhibit plastic deformation, creep, strain-rate dependence, or distributed mass. If the applied force changes with time or if the load is removed, the model would need modification. Numerical errors accumulate for large time steps or stiff systems, so always test multiple values and monitor energy drift. Despite these caveats, the model captures the essence of uniaxial tensile tests and helps explain why even simple experiments can ring like a tuning fork.
Possible expansions include modeling nonlinear springs, adding gravity to study hanging rods, or coupling several masses to represent higher vibration modes. Another direction is to allow user-specified loading histories—ramps, sine waves, or arbitrary CSV imports—and plot stress versus strain in phase space. Because the code is pure HTML, CSS, and JavaScript, such enhancements remain accessible to students.
Further reading: J. Gere, Mechanics of Materials, 9th ed., Cengage, 2013. Timoshenko and Goodier's Theory of Elasticity offers classic derivations. Explore allied phenomena with the Mass–Spring Oscillation Calculator, compute work via the Work Done by Force Calculator, or relate strain energy to motion using the Rotational Kinetic Energy Calculator.