Sections and stress

The section calculation with no formula in it

Every ordinary section result is a closed form, and each was derived once for one arrangement of material. Slice the section instead, give each strip the strain a curvature puts it at, and move the neutral axis until the axial force balances — and the same twenty lines answer for a cracked section, a confined one, a prestressed one and a composite one, having been told nothing about any of them.

Assumes Plane sections stay plane, and what the assumption costs, A section made of two materials, one of them pretended away and The section that yields from the outside in.

There is a shelf of section formulas on this site. The transformed section for two elastic materials. The cracked section for concrete that has given up in tension. The plastic moment for a fully yielded steel shape. The stress block for concrete at its crushing strain. Each was derived once, for one arrangement of material, and each stops at the boundary of the case it was derived for.

They are all the same computation.

Slice the section into strips. Assume a curvature. Give every strip the strain that curvature and a trial neutral axis put it at. Look up each strip’s stress in whatever law belongs to its material. Sum the forces; if they do not balance the applied axial force, move the neutral axis and do it again. When they balance, take moments.

Eight slices is enough, and nobody would have guessed it. The error in a cracked section's moment capacity against the number of strips it was integrated with, for a 300 × 450 mm section with 1200 mm² of steel, measured against the same computation at 2048 strips. The point of the fibre method is that it contains no formula: slice the section, give every strip the strain the assumed curvature puts it at, move the neutral axis until the axial force balances, and sum. It handles a cracked section, a confined one, a prestressed one and a composite one with the same twenty lines. The discretisation costs 1.4% at 2 strips and 0.088% at 8 — and the convergence is not smooth, because what the error actually depends on is where the neutral axis falls relative to a strip boundary rather than on the strip count as such.
Fig. 1 The error in a cracked section’s moment capacity against the number of strips it was integrated with, against the same computation at two thousand strips. Eight strips are enough, and the convergence is not smooth.

That loop is twenty lines and it does not know what kind of section it has been handed. It has never heard of cracking, yielding, confinement or prestress. Hand it an elastic section with two materials and it reproduces the transformed-section answer. Hand it a concrete section with tension excluded and it finds the cracked neutral axis. Hand it a steel section at large curvature and it finds the plastic moment. It is not an alternative to those formulas; they are what it does under particular conditions.

Which free body produced the number

The cut face, taken as a set of strips. Two equations govern it, and they are the two equations every section calculation on this site has used:

∑iσiAi=N∑iσiAiyi=M\sum_i \sigma_i A_i = N \qquad\qquad \sum_i \sigma_i A_i y_i = M

with the strain in each strip fixed by the assumption that plane sections stay plane:

εi=κ(yi−yna)\varepsilon_i = \kappa (y_i - y_{na})

Two unknowns are hiding in there. The curvature κ\kappa is chosen — it is the independent variable, and the answer comes out as a moment for each curvature. The neutral axis position ynay_{na} is not chosen: it is whatever makes the first equation come out right, and there is no way to write it down in advance.

That is the whole reason the method is a loop rather than a formula. Axial equilibrium is one equation in one unknown and it is not linear, because the relationship between strain and stress in each strip is not. Bisection settles it in forty iterations to any precision anybody wants, and forty iterations of a twenty-line sum is nothing.

For a 300 by 450 section with 1,200 mm² of steel and a modular ratio of 7.5, the closed form puts the cracked neutral axis at 137.03 mm. The strip loop, told nothing about cracking and given only “concrete takes no tension”, puts it at 137.03 mm.

The neutral axis is wherever the first moment vanishes. A 300 by 500 section with 1200 mm² of steel at a depth of 450, carrying 150 kNm after the tension side has cracked. The neutral axis is no longer at mid-depth: it has risen to 137.0 mm from the top, which is where the first moment of the compression zone plus the transformed steel vanishes. The compression is 18.0 N/mm² at the top fibre and the steel carries 309 N/mm²; the resulting couple is 371 kN on a lever arm of 404 mm, which multiplies back to the 150 kNm applied. The uncracked section would have had 3422×10⁶ mm⁴ against the cracked 1139×10⁶ — a loss of 67% of the stiffness.
Fig. 2 The closed form for the same section: the neutral axis is where the first moment of the transformed area vanishes, which is a quadratic. The strip loop arrives at the same 137.0 mm having been given no quadratic and no notion of a transformed area.

How many strips, which turns out not to be the question

The obvious worry about a discretisation is how fine it has to be, and the obvious answer is “as fine as the machine allows”. Both are wrong here.

Two strips give 1.4% error. Eight give 0.088%. Two thousand give nothing worth having over eight, and the error between those points does not fall monotonically — it can be worse at sixteen than at eight.

The reason is worth understanding because it generalises. The error does not depend on the strip count; it depends on where the neutral axis falls relative to a strip boundary. A strip that straddles the neutral axis has part of it in compression and part in tension, and the method gives the whole strip one stress — the stress at its centre. If the neutral axis happens to land on a boundary, that error is zero at any strip count. If it lands at a strip centre, the error is at its worst.

So the convergence plot is not a smooth curve with a slope to be read off; it is a noisy descent whose envelope falls as 1/n21/n^2 and whose individual points bounce around inside it. The useful reading is the envelope, and the practical rule is that eight to sixteen strips across a compression zone is plenty for anything, which is far fewer than instinct suggests.

There is a cheap fix that removes the noise entirely, and it is the same one every quadrature scheme uses: put a strip boundary at every known discontinuity — the neutral axis after the first iteration, each material change, each layer of reinforcement — and integrate exactly within each region. It converts the noisy descent into an exact answer at very few strips.

Eight slices is enough, and nobody would have guessed it. The error in a cracked section's moment capacity against the number of strips it was integrated with, for a 300 × 450 mm section with 1200 mm² of steel, measured against the same computation at 2048 strips. The point of the fibre method is that it contains no formula: slice the section, give every strip the strain the assumed curvature puts it at, move the neutral axis until the axial force balances, and sum. It handles a cracked section, a confined one, a prestressed one and a composite one with the same twenty lines. The discretisation costs 1.4% at 2 strips and 0.088% at 8 — and the convergence is not smooth, because what the error actually depends on is where the neutral axis falls relative to a strip boundary rather than on the strip count as such.
Fig. 3 The same convergence read at more points. The bounce is visible: sixteen strips are worse than twelve, because the neutral axis has moved relative to a boundary rather than because anything about the section has changed.

What it buys, which is not accuracy

The strip loop is not more accurate than the closed forms. On every problem a closed form covers, the two agree to whatever precision the strips are taken to, and the closed form gets there instantly.

What it buys is generality without new derivations, and that is a different currency. Four examples, none of which has a closed form worth writing down:

A confined core inside an unconfined cover. Confinement raises the peak stress and multiplies the crushing strain, but only inside the hoops. So a column section has two concrete laws in it, on regions with a boundary that is not a straight line, and the cover spalls off at a strain the core is nowhere near. As a formula this is unpleasant. As strips it is a conditional inside the loop.

A prestressed section. The tendon has a strain in it before anything is applied, so its strain is the section’s strain plus a constant. One extra term, in one strip.

A composite section part way through construction. The steel carries the wet concrete alone and the composite section carries everything after. The strips have different strain origins depending on when they arrived, which as algebra means tracking two neutral axes and as strips means a per-strip offset.

A section that has been loaded and unloaded. Residual stresses and previous yielding mean each strip starts on a different point of its own hysteresis path. There is no closed form at all for this, and there does not need to be.

The output that a formula cannot give at all

There is something the fibre model produces as a by-product which no closed form does, and it is the reason the method is worth having even where a formula exists.

Run the loop over a range of curvatures rather than at one, and what comes out is the whole moment-curvature relationship — not a capacity but a curve, with the first-yield point on it, the plateau, the descending branch, and the curvature at which the extreme fibre crushes.

What it costs to reach the plastic moment, for two shapes. Moment against curvature for two cross-sections of identical area (3000 mm²) and identical depth (200 mm), in mild steel, each divided by its own first-yield moment and its own first-yield curvature. The rectangle has a shape factor of 1.50 and reaches 98% of its plastic moment at 4.3 times the curvature at first yield; The I-section has a shape factor of 1.09 and reaches 98% of its plastic moment at 1.2 times the curvature at first yield. The dashed lines are the rigid-plastic moments, computed from the equal-area axis rather than read off the curves, and no curve reaches its own.
Fig. 4 What the loop gives when it is run at every curvature rather than at one. The capacity is a single point on this; everything else on it is information a formula for the capacity does not contain.

That curve is what rotation capacity is read from, what a plastic hinge’s length is estimated from, and what a nonlinear frame analysis needs at every section it integrates. A capacity formula answers one question about the section; the curve answers the questions that come after the capacity has been reached, and those are the ones a collapse calculation is made of.

It also makes visible something a capacity hides. Two sections with identical moment capacities can have completely different curvatures at failure, and the difference is the whole of the difference between a ductile member and a brittle one. The number that is checked is the same; the number that decides what happens is not checked at all.

Two ways to drive the loop, and only one of them survives the peak

The description above fixes the curvature and solves for the neutral axis. There is an obvious alternative — fix the moment and solve for the curvature — and it is the one most people reach for first, because a moment is what a structure hands a section.

It fails, and it fails in exactly the place the analysis is being run for.

Past the peak of the moment-curvature curve there are two curvatures at every moment, and past the end of the curve there are none. A solver hunting for the curvature that produces a given moment will find the wrong root, oscillate between the two, or diverge — and it will do all three within a few per cent of the capacity, which is the region a collapse calculation lives in. Fixing the curvature instead makes the moment a single-valued output at every step, and the descending branch is traced as easily as the rising one.

That is a general property of nonlinear analysis rather than a quirk of sections: drive the calculation with the quantity that stays monotonic. The same choice appears one level up, where an arch or a shallow frame that snaps through has two loads at some displacements, and the analysis has to be displacement-controlled for the same reason.

A load with a maximum in it, and nothing bifurcates. Load against apex movement for a two-bar frame of half-span 1000 mm and rise 150 mm. The load rises to 133.4 kN at a movement of 64 mm — well short of the 150 mm that would bring the apex level — and then falls. Past that point the frame can only be held by taking load away, so under a dead weight it goes: 260 mm of movement at constant load, arriving inverted and in tension. The minimum on the path is -133.4 kN, the exact negative of the maximum, because the geometry is symmetric about the flat position and the arithmetic knows it.
Fig. 5 Why the driving variable matters. Where the response curve turns back on itself, the load is not a function of the displacement and a load-controlled solver has nothing to converge to — while a displacement-controlled one walks round the corner without noticing.

What the axial force does to all of this

Everything so far has had N=0N = 0 on the right of the first equation. Put a real number there and the loop is unchanged — the neutral axis simply settles somewhere else — but two things about the answer change, and both are worth naming.

The first is that the moment capacity becomes a function of the axial force, which is the interaction curve every column is designed on. Running the loop at a series of axial forces and recording the peak moment at each traces that curve out directly, including the balance point and the reversal in slope near it. There is no closed form for the interaction curve of a real reinforced section, and there does not need to be.

The second is that the section may have no tension zone at all, in which case there is no neutral axis inside the section and the bisection has to be allowed to look outside it. That is not a numerical detail: it is the whole difference between a member that cracks and one that does not, and a bisection bounded to the section’s own depth will silently report the wrong answer for every section in that state.

The same idea, one level up

The pattern here — replace an integration that has no closed form by a sum over pieces, and iterate the one unknown that equilibrium fixes — is not confined to sections.

It is exactly what the stiffness method does to a structure: replace the continuum by elements, write equilibrium at the nodes, and solve. It is what a numerical integration does to a deflection. It is what the yield-line search does to a slab. In each case the invention is bookkeeping rather than mechanics, and in each case what it replaced was a shelf of special cases.

The fibre model is the smallest instance of it, which is why it is a good one to learn from. There is one integral, one unknown, and one loop, and the whole apparatus fits on a screen.

Every strip can have a different material

The feature that makes the method worth having is not that it integrates a curve. It is that each strip carries its own stress-strain law, and nothing in the two equations cares whether they are all the same.

That is what a closed form cannot do at any price, and it is where most of the method’s real work happens. The simplest case has only two laws in it and is old enough to have its own closed form, which makes it the one place the claim can be checked against something.

The same strain, two moduli, and a width multiplied to say so. A timber section with a steel plate in it, carrying 20.0 kNm. Plane sections stay plane, so the strain at a height is the same in both materials; Hooke's law then puts the stresses in the ratio of the moduli, which here is 19.09. Multiplying the stiffer material's WIDTH by that ratio gives a fictitious section of one material with the same neutral axis and the same forces — 595.2×10⁶ mm⁴ of it, against 351.0 for the same shape with the moduli ignored. The steel plate is 3.8% of the area and carries 43% of the moment, at 96 N/mm² against the timber's 5.0. The transform is not an approximation: it is compatibility and Hooke's law written down.
Fig. 6 A timber section with a steel plate in it, carrying 20.0 kNm. Plane sections stay plane, so the strain at a given height is the same in both materials, and Hooke’s law then puts the two stresses in the ratio of the moduli — 19.09 here. Multiplying the stiffer material’s width by that ratio gives a fictitious section of one material with the same neutral axis and the same forces: 595.2×10⁶ mm⁴ against 351.0 for the same shape with the moduli ignored. The plate is 3.8% of the area and carries 43% of the moment, at 96 N/mm² against the timber’s 5.0.

That figure is also the honest answer to the charge that the method assumes nothing. It assumes three things, and they are visible in it: plane sections stay plane, which is what makes one strain profile serve both materials; each strip is at a single stress, which is what lets a width be multiplied; and the law measured on a specimen is the law the member obeys. The strip loop removes the algebra and none of the modelling — the transformed section is that same pair of assumptions solved by hand for the one case where the hand can reach.

The share of the work that follows from them is not intuitive, and it is worth seeing swept rather than stated once.

A stiff material takes what its modulus asks for, not what its area does. A steel plate of growing thickness beside a 150 × 300 timber joist, with the plate's share of the area and its share of the moment plotted against each other. The two curves are nowhere near one another: at 6.5 mm the plate is 4.2% of the section's area and carries 45% of its moment, because stress follows strain times modulus and the strains are equal by assumption. The gap is the modular ratio and nothing else. It is also why a stiff repair attracts the very load it was added to relieve.
Fig. 7 A steel plate of growing thickness beside a 150 by 300 timber joist: its share of the section’s area against its share of the section’s moment. The two are nowhere near each other — at 6.5 mm the plate is 4.2% of the area and carries 45% of the moment. The gap is the modular ratio and nothing else, because the strains are equal by assumption and stress is strain times modulus.

Which is also the warning that comes with the method. A stiff element attracts the load it was added to relieve, and a strip loop will report that faithfully whether or not anybody expected it — the arithmetic has no opinion about which material was supposed to be doing the work.

A confined section. The core is confined by hoops and the cover is not, so the strips inside the links follow one curve — higher peak, much longer tail — and the strips outside them follow another that ends at 0.0035 and stops. The section’s moment-curvature curve then has a step in it where the cover leaves, which is a real feature of a real column and appears in no formula anywhere.

A section in a fire. The temperature varies through the depth, so every strip is at a different temperature, and every temperature implies a different reduced yield stress and a different reduced modulus. Feed each strip its own pair and the same two equations return the section’s capacity — and, as a by-product, the position of the neutral axis, which has migrated toward the cool face because the hot strips have lost their stiffness. The hour that is really a temperature supplies the retention factors; this supplies everything downstream of them, and there is no closed form for any of it.

A member that has corroded. Reduced bar areas at some levels and not others, a changed curve for a pitted bar, cover that has spalled and is no longer there. Three separate changes, each expressible as a different strip, none of them expressible as a modified ZZ.

And a material known only as points. A heritage cast iron, a fibre composite, a timber with different curves in tension and compression: the method takes a table of measured values as readily as an equation, because it never differentiates the curve and never inverts it. It only ever asks what stress goes with this strain, which is the one question a set of measurements can answer directly.

Where the model stops

Three assumptions, and they are precisely the ones the closed forms make, which is the point of the third refutation above.

Plane sections stay plane. Every strip’s strain comes from one linear profile. Near a support, a load or a hole that is not true, and no amount of refinement in the strip direction fixes it, because the error is in the strain assumption rather than in the integration.

Each strip is at one stress. True in the limit and the source of the discretisation error discussed above. It also quietly assumes the stress varies only across the depth, which is wrong for a section under biaxial bending — that needs a two-dimensional mesh and a neutral line whose angle is a second unknown.

The material’s law is the member’s law. The stress-strain curve came from a specimen. Applying it strip by strip assumes a region of the member behaves like a small specimen, which is the assumption the size effect says is not generally safe, and which is why the method is trustworthy for a confined compression zone and not for a plain concrete one.

There is a fourth, less often stated: the method finds an equilibrium state, not necessarily a stable one. On the descending branch of a moment-curvature curve the section is shedding load as it deforms, and whether the member can follow that path depends on what is around it — which is a question about the structure and not about the section.

What the picture cannot show

The convergence plot shows an error against a strip count, which makes the discretisation look like the accuracy question. In practice it is nowhere near the largest one.

The concrete strength is known to about 15%. The steel’s yield stress is a characteristic value with a real distribution behind it. The modular ratio depends on a creep coefficient quoted to one significant figure. Against any of those, the difference between eight strips and eight hundred is invisible — which is the honest reading of the figure, and is why the practical answer to “how many strips” is “far fewer than instinct suggests, and it is not the number to worry about”.

The generalisation

The habit worth carrying is a question to ask of any closed form: what did it assume, and what does the calculation look like if that assumption is removed?

For section formulas the answer is almost always the same. Every one of them is a case where the integral over the section happened to be doable — a rectangle with a linear stress, a rectangle with a constant stress, two rectangles with a step between them. The formula is not a theory of the section; it is a theory of that integral being tractable.

Remove the tractability and nothing about the mechanics changes at all. The two equations are the same equations, the plane-sections assumption is the same assumption, and what has gone is only the possibility of writing the answer down. That is worth knowing before reaching for a formula, because it says exactly which of its features are physics and which are convenience — and it is nearly always fewer of the first than the printed version suggests.

Named alongside this one

Essays reaching for the same objects. Nobody chose these; they are what the concept index makes visible.

The objects this essay names

Each one links to every other essay that touches it.

Composite actionConfinementCracked sectionCurvatureDiscretisationEquilibriumFibre modelIterationMoment-curvatureNeutral axisPlane sectionsPrestressSectionStress-strainTransformed section