Direct stiffness method · Truss FEM · Member force heatmap
E = 200 GPa, A = 0.01 m²
Interactive 2D truss bridge simulation using the direct stiffness method (FEM). Apply loads, watch deformation, and see member forces colour-coded from tension (blue) to compression (red).
The direct stiffness method assembles individual member stiffness matrices into a global system [K]{u} = {F}. Solving for displacements {u} gives member forces by computing strain from deformation.
Click nodes to apply loads. Watch the bridge deform (exaggerated for visibility). Each member is colour-coded: blue for tension, red for compression. Adjust the load magnitude and observe stress redistribution.
The Warren truss (equilateral triangles) was patented in 1848 by James Warren. Triangulation is key — unlike rectangles, triangles cannot deform without changing member lengths, making trusses inherently rigid.
This simulation analyses a 2D truss bridge using the direct stiffness method, the matrix form of the finite element method for pin-jointed frames. Each member contributes a local stiffness term to a global matrix, and the system [K]{u} = {F} is solved for nodal displacements by Gaussian elimination with partial pivoting. From those displacements the model recovers axial member forces, the deformed shape and peak deflection, so you can watch how a moving load redistributes tension and compression through the structure in real time.
A six-panel, 60 m span by 10 m deep truss in Pratt, Howe or Warren configuration. The solver assembles a global stiffness matrix from each member's axial stiffness EA/L and orientation, applies pin and roller supports via a penalty term, and solves for displacements. Members are coloured blue for tension and red for compression, scaled to the largest force in the structure.
Pick a truss type (Pratt, Howe or Warren) and material (Steel E=200 GPa or Aluminium E=70 GPa). The Load slider sets the point load from 10 to 300 kN, Load position moves it along the bottom chord to the nearest joint, and Scale factor exaggerates the drawn deflection from 5x to 200x. Readouts report max tension, max compression, max deflection and support reactions.
In a Pratt truss the diagonal members carry tension under a central downward load, while in a Howe truss the same diagonals carry compression. Because steel is stronger in tension and long compression members can buckle, the Pratt arrangement was historically favoured for steel railway bridges.
It is the matrix form of the finite element method used for skeletal structures. Each member is given a 4x4 stiffness matrix based on its axial stiffness EA/L and its angle, and these are added into one global matrix K. Solving K times u equals F yields the nodal displacements, from which member forces follow.
A member in tension is being stretched and pulls its joints inward; one in compression is being squashed and pushes its joints apart. The simulation computes each member's axial force from its change in length and colours it blue for tension or red for compression, with intensity proportional to the largest force present.
They differ in how the diagonals are arranged. Pratt diagonals slope toward the centre and go into tension under load, Howe diagonals slope the other way and go into compression, and the Warren truss uses alternating diagonals forming triangles with no verticals. Switching type rebuilds the geometry and re-solves the model.
Real elastic deflections of a stiff steel truss are tiny relative to its span, often only millimetres, so they would be invisible at true scale. The Scale factor slider multiplies the drawn displacements by 5x to 200x so you can see the deformed shape clearly. The reported deflection value remains the true unscaled figure in millimetres.
It is a faithful linear-elastic truss model: pin-jointed members carrying only axial force, small displacements, and supports as one pin and one roller. It captures realistic force distributions and trends with load, material and geometry. It does not model member buckling, self-weight, joint stiffness or large deflections, so treat it as a teaching tool rather than a design code.