Fundamentals
How structural analysis works: nodes, members and stiffness
Learn how structural analysis software turns a model of nodes, members and plates into forces and deflections, with a worked beam example and the stiffness method explained.
Structural analysis answers one question: when loads act on a structure, how does it move, and what forces flow through each part? Every design check that follows — is this beam strong enough, is that column stable, does the slab deflect too much — starts from those forces and movements. This tutorial explains what happens inside a structural analysis program such as Struxt3D, without heavy mathematics, and works through a small example by hand so you can check the computer.
A structure as nodes and members
Real structures are continuous, but analysis software describes them with a small number of pieces:
- Nodes (joints) are points in space. Each node in a 3D model can move in six ways, its degrees of freedom: three translations (along X, Y and Z) and three rotations (about X, Y and Z).
- Members (beams, columns, braces) are lines between two nodes. A member has a cross-section (area A, second moments of area I, torsion constant J) and a material (Young's modulus E, shear modulus G).
- Plates (slabs, walls) are surfaces. The program cuts them into small four-node shell elements that bend and stretch in their plane.
- Supports stop some degrees of freedom of some nodes: a fixed base stops all six, a pin stops the three translations.
Stiffness: force needed per unit movement
The key idea of almost all structural software is stiffness: how much force it takes to move something by one unit. A spring of stiffness k moved by u pushes back with F = k u. Every member behaves like a set of springs between its two end nodes:
| Action | Stiffness of a member of length L | What it means |
|---|---|---|
| Stretch or squash | EA / L | Axial springs: a column shortening under load. |
| Twist | GJ / L | Torsion: an edge beam twisted by a cantilever slab. |
| Move one end sideways (other end held, no rotation) | 12 EI / L³ | A column swaying in a frame. |
| Rotate one end (other end fixed) | 4 EI / L | A beam end turning at a rigid joint. |
Notice the powers of L: doubling a column's height makes it eight times less stiff sideways. This is why tall storeys sway so much more, and why bracing (which works axially, EA/L) is so effective.
Stiffness decides where load goes. When two parts share a load, the stiffer part takes more of it. A concrete core next to slender steel columns takes nearly all the wind, because it is far stiffer.
The stiffness method in three steps
- Assemble. The program writes each member's springs as a small matrix (12 × 12 for a 3D beam: 6 degrees of freedom at each end) and adds them into one big global stiffness matrix K, one row and column per degree of freedom in the model.
- Solve. The loads become a vector F. The unknown movements u of every node follow from K u = F — a set of simultaneous linear equations, thousands of them for a building. Supported degrees of freedom are removed first, because their movement is known (zero).
- Recover. With the node movements known, each member's end forces come from its own stiffness: f = k u. Along the member, the program adds the effect of the loads on it to get axial force, shear and bending moment at every point. Support reactions are the forces the supports must supply to hold their nodes.
This is called linear static analysis: the loads are applied slowly (no inertia), the material stays elastic, and movements are small enough that the geometry does not change. Double the load and every result doubles. That is why load cases can be analysed once and then added together with factors to form combinations — see loads and load combinations.
Worked example: a simply supported steel beam
Take a 6 m steel beam, pinned at one end and on a roller at the other, carrying a uniform load w = 10 kN/m (self-weight included). Classical beam theory gives:
For an IPE 300 (I = 8356 cm⁴) in steel with E = 210 GPa, the bending stiffness is EI = 210 × 10⁶ kN/m² × 8.356 × 10⁻⁵ m⁴ ≈ 17 550 kN·m², and the midspan deflection is
A program gets exactly these numbers. Run this beam in any stiffness-method software and check: reactions 30 kN, moment 45 kN·m, deflection about 9.6 mm. Checking a simple case by hand is the best habit you can build — it catches wrong units, wrong supports and missing loads.
Plates and the finite element method
A slab is not a line, so it cannot be one member. The finite element method divides it into many small elements (Struxt3D uses four-node quadrilateral shells), each with its own stiffness matrix built from the plate equations. They are assembled into K exactly like members. The results are forces per metre width — moments mx, my, twisting moment mxy and membrane forces — which the design turns into reinforcement. Finer elements give more accurate peaks; see slabs and walls as plates.
What Struxt3D's solver does
Struxt3D runs its analysis on your own computer, inside the browser, using a compiled (WebAssembly) solver in a background thread so the page stays responsive. It models:
- Beams and columns as 3D frame members with six degrees of freedom per node, with optional end releases.
- Pin-jointed members — bracing, truss webs and cables — that carry axial force only.
- Slabs, decks, walls and plates as four-node shells that both bend and stretch in their plane.
- Supports: fixed, pinned, roller (vertical only), line supports along wall bases, and soil springs under rafts.
It runs a linear static analysis for each load case (dead, live, wind in four directions, earth pressure and others the template adds) and, when earthquake is switched on, a modal analysis and response spectrum analysis. Members stay one piece in the model; the mesh cuts them where other members frame in or where shells attach.
A linear analysis does not capture buckling of the whole frame, cracking of concrete, yielding, or cables going slack. Design checks cover member buckling with code formulas, but large deflections and second-order sway need judgement. See accuracy and limitations.
Try it in Struxt3D
- Open the app and choose the Continuous beam template (Elements). Set one span in the How big is it? step if you want to compare with the example above.
- In What is it made of? pick your design code and material. Sections are filled in for you.
- In How is it held and loaded?, look at the generated load cases under Show on the model, then press Run analysis (or F5).
- In the results, pick Moment and Shear under Show, and a load case or combination under Load case. Compare the peaks with wL²/8 and wL/2.
- Choose Displacement and press Animate to see how the structure moves.
Summary
- A model is nodes, members, plates and supports; each node has six degrees of freedom.
- Stiffness (EA/L, 12EI/L³, 4EI/L) decides how load is shared.
- The program assembles K, solves K u = F, and recovers member forces and reactions.
- Linear analysis lets you combine load cases with factors; always check a simple case by hand.