It is worth starting with what does exist: there is plenty of it, and it is good. Anyone teaching structures today has first-rate free tools available, and several of them do their job better than we do ours.
What the free tools actually cover
| Tool | Free | What it does very well | Conceptual side |
|---|---|---|---|
| Ftool | Yes | Modelling plane frames and reading diagrams and influence lines, with a fluency few match | Shows the behaviour, not the reasoning behind it |
| MASTAN2 | Yes (on MATLAB or its runtime) | Linear and non-linear matrix analysis, tied to McGuire, Gallagher and Ziemian | The theory is in the book; the program runs the analysis |
| SkyCiv | Free tier | Step-by-step hand calculations: free bodies, equilibrium equations before substitution, moment distribution for indeterminate beams | Numbers plugged into formulas, for basic statics |
| sectionproperties | Yes, open source | Warping, shear centre and the Saint-Venant constant by finite elements | A Python library: it returns numbers, with no interface and no explanation |
Of that list, SkyCiv comes closest to what we usually call "showing the working", and it should be said plainly: its hand calculations are good. It draws the free body, writes ΣM = 0 before any number goes in, and solves by moment distribution when the beam is indeterminate. Anyone who claims that no free program shows its steps can be proved wrong with SkyCiv in about a minute.
Showing the steps is not enough if the program does not tell you when the formula stops applying
Substituting numbers into a correct formula and explaining why that formula is the right one are different things. The first saves you the arithmetic. The second saves you from the error the arithmetic cannot catch, because the error sits one layer above it.
The torsion calculators you find online illustrate the point in reverse: you pick the section type (solid, closed tube, rectangle) and the program applies the matching formula. None of the ones we saw tells you that you picked wrong, what the other theory would have given, or which side of the error you are on.
A program that only computes will never warn you that you are computing the wrong thing.
Three features with no equivalent we could find
- Kinematic analysis, explained. We looked and found no free tool that does this: what turns up is lecture material in PDF. The "educational software for kinematic analysis" that we did find is for machine mechanisms (linkages and cranks), not for classifying structures.
- Rebar detailing. The only free option we found is AutoRebar, and it is an AutoCAD add-on, so using the free part requires an expensive licence. It also works from your drawing: you place the bars, it builds the schedule. Everything else is a seven-day trial or commercial software. We found no open-source option.
- Section analysis, worked through. Here there is a serious free option, sectionproperties, and on warping by finite elements it probably beats us. But it is a library with no interface: it gives you the shear centre without explaining why it sits where it does.
Among the tools we reviewed, none covers two of the three, and we did not find one that approaches even one of them from the conceptual side. That is the gap we see, and it is narrower and more precise than "we are the only ones who teach".
One screen where the whole difference shows
Below is a two-span beam on three supports. All three restrain vertical movement only. It is the textbook case, and also the one I have most often seen accepted as correct in an exam.
The formula for the degree of indeterminacy gives g = 3·m + r − 3·n = 3×2 + 3 − 3×3 = 0. Zero means statically determinate, and any program that stops at the formula will report exactly that. But nothing holds the beam horizontally: it is a mechanism, and it cannot be solved.
| Step | What it looks at | Result |
|---|---|---|
| 2 · Static indeterminacy | g = 3·m + r − 3·n | 0 |
| 3 · Stiffness matrix | Mechanism modes detected | 1 |
| 3 · Stiffness matrix | Unconstrained degrees of freedom | 1 |
| 4 · Suggestions | Verdict on screen | Cannot be solved |
The app does not just report the zero and wash its hands. It contradicts it in the same step 2 that produced it: "The formula gives g = 0 (necessary condition for isostatic), but NOT sufficient". Step 3 assembles the global stiffness matrix, 6×6 here, and flags "Detected 1 mechanism mode" in spite of g = 0 ≥ 0. It names node 3 and its horizontal displacement, points out that the step 2 equation counts constraints without checking where they sit, and closes with "✗ Mechanism — cannot be solved".
Why a department might care
A student who learns the degree formula and never watches the sufficient condition fail walks away with an incomplete rule and does not know it. It is hard to show on a blackboard, because the example that breaks it looks like a typo. Here it is on one screen, with the number and the contradiction side by side.
Nothing has to be installed or licensed, and the department does not have to buy anything. It opens in a browser, and the model is shared as a link.