Mechanical Engineering Calculator

Section Modulus Calculator

Calculate the elastic section modulus (S = I/c) for rectangular, circular, hollow circular and custom cross-sections.

Cross-Section Type

Select a shape or enter custom I and c values

Input Dimensions

All dimensions in millimeters (mm).

mm

Width of the rectangular section.

mm

Height (depth) of the rectangular section.

Engineering Tip

Required section modulus is simply S_req = M_max / σ_allow. Choose a section that provides at least this value after applying code safety factors.

Elastic Section Modulus

666,667mm³

S = b h² / 6

Moment of Inertia (I)

66,666,667 mm⁴

Distance c

100.00 mm

Governing Relations

S = I / c
σ = M / S   or   σ = M c / I
Smm³

Elastic section modulus

Imm⁴

Area moment of inertia

cmm

Distance to extreme fiber

MN·mm

Bending moment

σMPa

Bending stress

Notes & Assumptions

  • Elastic (not plastic) section modulus
  • Homogeneous cross-section
  • Neutral axis at centroid
  • Bending about the axis corresponding to I

Engineering Code

Reuse the section modulus calculation in your own engineering workflow.

Python
import math

def section_modulus(shape, **dims):
    """
    Calculate elastic section modulus S = I/c.

    shape: 'rectangle', 'circle', 'hollow', 'custom'
    dims: corresponding dimensions in mm
    """

    if shape == 'rectangle':
        b, h = dims['b'], dims['h']
        I = (b * h**3) / 12
        c = h / 2
    elif shape == 'circle':
        d = dims['d']
        I = (math.pi * d**4) / 64
        c = d / 2
    elif shape == 'hollow':
        D, d = dims['D'], dims['d']
        I = (math.pi / 64) * (D**4 - d**4)
        c = D / 2
    elif shape == 'custom':
        I, c = dims['I'], dims['c']
    else:
        raise ValueError("Unknown shape")

    S = I / c
    return {"I_mm4": I, "c_mm": c, "S_mm3": S}


# Example (rectangle)
results = section_modulus('rectangle', b=100, h=200)
print(results)
MATLAB
function results = section_modulus(shape, dims)
    % Calculate elastic section modulus S = I/c
    % shape: 'rectangle', 'circle', 'hollow', 'custom'

    if strcmp(shape, 'rectangle')
        b = dims.b; h = dims.h;
        I = (b * h^3) / 12;
        c = h / 2;
    elseif strcmp(shape, 'circle')
        d = dims.d;
        I = (pi * d^4) / 64;
        c = d / 2;
    elseif strcmp(shape, 'hollow')
        D = dims.D; d = dims.d;
        I = (pi / 64) * (D^4 - d^4);
        c = D / 2;
    elseif strcmp(shape, 'custom')
        I = dims.I; c = dims.c;
    else
        error('Unknown shape');
    end

    results.I = I;
    results.c = c;
    results.S = I / c;
end

% Example
dims.b = 100; dims.h = 200;
r = section_modulus('rectangle', dims);
disp(r);
Excel Formulas
I = (b*h^3)/12
c = h/2
S = I/c   or   S = (b*h^2)/6

Example Calculation

Rectangular section: width b = 100 mm, height h = 200 mm:

I = b h³ / 12 = 66,666,667 mm⁴
c = h / 2 = 100 mm
S = I / c = b h² / 6 = 666,667 mm³

Technical Explanation: Elastic Section Modulus

The elastic section modulus S is a geometric property of a cross-section that directly relates the maximum bending moment carried by the section to the maximum bending stress it develops. It is defined as S = I / c, where I is the second moment of area about the bending axis and c is the perpendicular distance from the neutral axis to the extreme fibre. The corresponding stress equation is σ = M / S, which is simply the flexure formula rearranged. Because the section modulus combines both the amount of material and how far it sits from the neutral axis, it is the standard quantity used when sizing beams, joists, shafts, and other members subjected to bending.

This calculator returns the elastic section modulus for rectangular, solid circular, hollow circular, and custom cross-sections, together with the underlying values of I and c. All linear dimensions are entered in millimetres, so I is returned in mm⁴ and S in mm³.

Governing Formula

S = I / c     σmax = M / S

The value of c must be the largest distance from the neutral axis to the outermost fibre. For a section that is not symmetric about the bending axis, two different values of c exist — one above and one below the neutral axis — and the larger of the two governs the maximum stress and therefore the section modulus used for strength checks.

Common Section Formulas

  • Solid rectangle (bending about the strong axis): S = b h² / 6
  • Solid circle (diameter d): S = π d³ / 32
  • Hollow circle (outer D, inner d): S = π (D⁴ − d⁴) / (32 D)
  • General section: S = I / c

Derivation

Under linear-elastic bending, the normal stress varies linearly with distance y from the neutral axis: σ = M y / I. The maximum stress occurs at the fibre farthest from the neutral axis, y = c, giving σmax = M c / I. Grouping the geometric terms as S = I / c yields σmax = M / S. For a rectangle of width b and height h, I = b h³ / 12 and c = h / 2, so S = (b h³ / 12) / (h / 2) = b h² / 6. For a solid circle, I = π d⁴ / 64 and c = d / 2, so S = π d³ / 32.

Input Parameters

  • Section shape: Selects the closed-form expression used. Choosing the wrong shape misrepresents the section property entirely.
  • Width b and height h (rectangle): Because h enters the formula squared, increasing the depth is a far more efficient way to raise S than increasing the width.
  • Diameter (circle): Section modulus scales with the cube of diameter, so small diameter changes have a large effect.
  • Outer and inner diameter (hollow circle): The wall thickness controls how much material is placed away from the neutral axis; a thin-walled tube can have a similar S to a solid bar of the same outer diameter while weighing far less.

Engineering Interpretation

The section modulus is used to size a member against bending strength: the required value is Sreq = Mmax / σallow, and the chosen section must provide at least that value after the applicable safety factors are applied. Note that satisfying the strength check does not guarantee acceptable performance: deflection limits, shear capacity, local and lateral-torsional buckling, fatigue, and connection design all require separate checks. The section modulus also says nothing about stiffness in the sense of deflection, which depends on E I rather than S.

Units and Conversion

  • 1 mm³ = 10⁻⁹ m³
  • 1 cm³ = 1,000 mm³
  • 1 in³ ≈ 16,387 mm³
  • 1 N·m = 1,000 N·mm, 1 kN·m = 1,000,000 N·mm

Elastic vs Plastic Section Modulus

The value returned by this calculator is the elastic section modulus S, valid for linear stress distribution up to first yield. The plastic section modulus Z assumes a fully plastic stress block and is always larger than S; it is used in plastic design methods where redistribution of moment is permitted. The two quantities are not interchangeable, and this calculator does not compute Z.

Assumptions and Limitations

  • Bending occurs about a principal centroidal axis.
  • Linear-elastic material behaviour up to the stress being evaluated.
  • Plane sections remain plane (Euler–Bernoulli bending).
  • Cross-section is uniform and homogeneous.
  • No local buckling, shear lag, or warping effects are considered.
  • For asymmetric sections the larger value of c governs.

Practical Engineering Use

Section modulus values appear in the selection of structural steel shapes, timber joists, aluminium extrusions, reinforced and prestressed concrete sections (using the transformed area), and rotating machinery such as shafts and axles. Because the section modulus depends on the square or cube of the section depth, standard rolled profiles are optimised to place material far from the neutral axis, giving high S at minimum weight. When substituting one member for another, S must be checked and compared, since two sections of equal depth can have very different section moduli.

Real-World Engineering Cases

Under-sized Floor Beams in Residential Construction

Several houses experienced excessive floor deflection and cracking because the selected timber joists had insufficient section modulus for the actual span and load. The designer had used a rough rule-of-thumb instead of calculating the required S = M / σ_allow.

Engineering Lesson

Always calculate the required section modulus from the maximum moment and allowable stress, then select a section that provides at least that value (with appropriate safety factors).

Steel Beam Substitution Errors

During a renovation a W-shape beam was replaced with a lighter section of similar depth. The new section had a significantly lower section modulus, leading to higher stresses and eventual yielding under the original design loads.

Engineering Lesson

Depth alone does not determine bending strength. Section modulus (and therefore the distribution of material about the neutral axis) must be verified whenever a member is substituted.

Frequently Asked Questions

What is section modulus?

Section modulus S is defined as I/c, where I is the area moment of inertia and c is the distance from the neutral axis to the extreme fiber. It is used in the bending stress formula σ = M / S.

What units does this calculator use?

All linear dimensions are in millimeters (mm). Moment of inertia is returned in mm⁴ and section modulus in mm³.

What is the difference between elastic and plastic section modulus?

The elastic section modulus (S) assumes linear stress distribution and is used with elastic design. The plastic section modulus (Z) assumes a fully plastic stress distribution and is larger than S. This calculator provides the elastic value only.

Which value of c should I use?

Use the maximum distance from the neutral axis to the outermost fiber. For symmetric sections this is simply half the overall depth.

How is section modulus used in design?

Required section modulus is calculated as S_req = M_max / σ_allow. The chosen cross-section must provide a section modulus at least equal to S_req (after applying any code safety factors).

Engineering calculations provided by this tool are for educational and preliminary design purposes. Always verify section properties against manufacturer data or official tables and apply appropriate safety factors and design codes before use in final engineering design.