Joint Moment Distribution Simulator — Hardy Cross Basics
From the member lengths at a rigid joint, compute the relative stiffness K=1/L and distribution factors DF, then watch how an applied moment M_0 is shared among the three members. The simulator checks Sigma DF=1 and Sigma M_i=M_0 in real time.
Parameters
Length of member 1, L_1
m
Length of member 2, L_2
m
Length of member 3, L_3
m
Applied moment M_0
kN·m
During sweeping, L_1 oscillates between 1 m and 10 m so you can see how the distribution factor DF changes with member length.
Results
—
Distributed moment to member 1, M_1
—
Distributed moment to member 2, M_2
—
Distributed moment to member 3, M_3
—
Distribution factor of member 1, DF_1
Joint Model — Member Lengths and Distributed Moments
Center = rigid joint, three radial lines = members. Line thickness scales with K_i=1/L_i; arrows at the joint end indicate M_i.
Distribution Factor DF_i Bar Chart
Each bar length = DF_i. The three bars always sum to 1.000 (joint moment equilibrium).
Theory & Key Formulas
When an external moment M_0 acts on a rigid joint, the members meeting there share it in proportion to their stiffness. With a common bending stiffness EI, the relative stiffness of a member fixed at its far end is K_i=1/L_i.
Relative stiffness of member i (common EI):
$$K_i = \frac{1}{L_i}$$
Distribution factor (stiffness share):
$$\mathrm{DF}_i = \frac{K_i}{\sum_j K_j}$$
Moment carried by member i:
$$M_i = \mathrm{DF}_i \cdot M_0$$
Joint moment equilibrium gives $\sum_i \mathrm{DF}_i = 1$ and $\sum_i M_i = M_0$ at all times. A longer (softer) member has a smaller DF; a shorter (stiffer) member carries more M_i.
What is the Joint Moment Distribution Simulator
🙋
Professor, when an external moment is applied at a rigid joint, how exactly does it split among the members meeting there?
🎓
Roughly, "the stiffest one carries the most". With a common bending stiffness EI, a member fixed at its far end is harder to rotate at the near end when its length L is short — that is, its relative stiffness is $K_i = 1/L_i$. Sum these up and divide to get the distribution factor $\mathrm{DF}_i = K_i/\sum K$. With the default values (4, 6, 5 m), L_1 is the shortest, so DF_1 should be the largest.
🙋
DF_1 is indeed 0.405, the largest. So with M_0 = 100 kN·m, member 1 takes 40.5 kN·m. Is that the right reading?
🎓
Exactly. With $M_i = \mathrm{DF}_i \cdot M_0$, member 1 takes 40.5, member 2 takes 27.0 and member 3 takes 32.4 kN·m. The three add up to 100 kN·m, so the joint is in moment equilibrium between the external moment and the internal reactions. The "Sum DF = 1.000" and "Sum M_i = 100.0" labels in the bar chart confirm this.
🙋
When I drag the L_1 slider toward larger values, DF_1 keeps shrinking.
🎓
Yes. A longer beam is softer, so when something tries to rotate the joint, it says "I can't push back hard, take the moment instead" and lets the others carry more. Push L_1 to 10 m and DF_1 drops, while DF_2 and DF_3 grow to make up the missing share. Press "Sweep L_1" and watch the three bars eat into each other as L_1 oscillates.
🙋
I think I read about a "Hardy Cross method". Is this related?
🎓
Very much. The Hardy Cross moment distribution method alternates exactly the "distribute" step you just did with a "carry-over" step that sends half of each distributed moment to the far end, and iterates this across all joints of a frame. This tool isolates the very first step — one distribution at one joint — so it is a perfect warm-up before tackling a full Hardy Cross table in a textbook.
Frequently Asked Questions
When you apply a unit rotation at the near end of a member fixed at the far end, the moment required is 4EI/L. If the bending stiffness EI is the same for every member at the joint, each member's resistance to joint rotation is proportional to 1/L. That is the meaning of the relative stiffness K=1/L, and the distribution factor DF_i = K_i / Sigma K_j is just that stiffness ratio reused as a sharing ratio. A longer member is softer, allows more rotation, and so carries less moment.
Sigma DF=1 is true by construction: the sum of K_i divided by Sigma K is always one. Sigma M_i=M_0 is moment equilibrium at the rigid joint. To balance an externally applied M_0 without rotating the joint, the members together must carry an equal and opposite moment of M_0. The simulator displays both Sigma DF and Sigma M live, so you can confirm these two identities hold to within rounding.
This simulator isolates the very first step of Hardy Cross: distributing an unbalanced moment at a single joint. In a real frame, half of each distributed moment is carried over to the far end, where it triggers a new imbalance at the next joint, which is distributed again, and so on until the corrections are negligible. This tool is the warm-up for that iterative procedure: a clean, visual look at one distribution at one joint.
Strictly, you replace the relative stiffness with K_i = E_i I_i / L_i. To keep things simple, this simulator assumes EI is common to all three members so that only length governs distribution. In practice you compute EI/L for each member and divide by the joint's Sigma K. The idea is the same: a stiffer member gets a larger DF and carries a larger share of the applied moment.
Real-World Applications
Hand calculations and sanity checks for frames: In steel and reinforced-concrete rigid frames, external moments must be split among the beams and columns meeting at each joint. The "one distribution at one joint" idea this tool focuses on is the common starting point of Hardy Cross, slope-deflection and matrix stiffness methods alike, and it is the right intuition to keep when sanity-checking the output of a finite element solver.
Bolt groups under eccentric load on a rigid plate: When a moment acts about the centroid of a bolt pattern, each bolt picks up a shear force in proportion to its distance from the centroid (its relative stiffness). The algebra differs, but the idea — normalize by Sigma K and have each element carry its own K-share — is exactly the same as joint moment distribution.
Parallel springs and parallel circuits: Force shared by parallel springs as F_i = (k_i / Sigma k_j) F, current sharing in parallel resistors, and similar "Sigma-normalize then split by stiffness ratio" patterns are everywhere in engineering. The intuition this simulator builds transfers far beyond structural mechanics.
Choosing between rigid and pinned joints: Making a joint rigid spreads moment among the members and lowers the peak stress in each, but creates large bending at the joint itself. Making it pinned eliminates joint moment but raises mid-span deflection. Watching the order of magnitude of M_i in the simulator helps you build a feel for "how much moment a rigid connection has to take", which makes structural-form choices easier.
Common Misconceptions and Cautions
The most common misconception is to think that "the longer member carries the larger moment". The intuition is "the long beam looks stronger", but it is exactly the opposite: a longer member is softer, the joint rotates more easily into it, and so it carries less moment. In the simulator, push L_1 from 4 m up to 10 m and watch DF_1 fall from about 0.4 to 0.2 while the share is donated to L_2 and L_3. Remember: the weight in the distribution is K=1/L, not L itself.
The next most common error is to compare the raw 1/L_i values directly instead of the normalized ratio. With three members the distribution factor is DF_i = K_i / Sigma K, which always uses the joint-wide Sigma K in the denominator. With the defaults (L = 4, 6, 5 m), K = (0.250, 0.167, 0.200), Sigma K = 0.617, and so DF = (0.405, 0.270, 0.324). The ratio DF_1/DF_2 = K_1/K_2 = L_2/L_1 = 6/4 = 1.5 still works because the common denominator cancels out.
Finally, do not mistake the result here for the full solution of a frame. In Hardy Cross, half of each moment distributed at one joint is carried over to the far end of the corresponding member, where it creates a new imbalance to be distributed at the next joint. The procedure iterates until the corrections fall below a chosen tolerance. This simulator extracts only the very first step, and is best treated as an entry-level visualization for joint moment distribution rather than a complete frame analysis.