VernaStruct
VernaStruct
Verification Manual
Manual index vernastruct.com

VC-02 — Steel I-Beam: LRFD Bending, Shear, Deflection

Module: vernastruct.analysis.steel.check_steel_beam_lrfd Code basis: AISC 360 LRFD / SBC 306 — compact section, no lateral-torsional buckling (assumes continuous lateral restraint by the roof deck); web shear area simplified as 0.55 × A. Status: ✅ PASS — software matches hand calculation exactly.


1. Problem statement

A simply-supported IPE200 steel main beam (S355) carries a traditional roof build-up over a tributary width, plus its own self-weight.

Input Symbol Value
Section IPE200
Cross-section area A 28.5 cm² = 2.85e-3 m²
Moment of inertia Ix 1943 cm⁴ = 1.943e-5 m⁴
Elastic section modulus Wx 194.3 cm³ = 1.943e-4 m³
Linear mass 22.4 kg/m
Span L 5.00 m
Dead load (area) D 0.20 t/m²
Live load (area) L 0.15 t/m²
Tributary width s 1.50 m
Yield strength Fy 355 MPa (S355)
Modulus of elasticity E 200 GPa
Resistance factors φ_b, φ_v 0.90, 0.90
Load combination (ULS) 1.2D + 1.6L
Deflection limit (SLS, total service load) L / 360

Unit convention: 1 tonne-force = 9.80665 kN (matches core.units.TON_TO_KN).

2. Hand calculation

Line loads:

sw        = 22.4 / 1000                              = 0.02240 t/m
w_service = (D + L) s + sw = (0.20 + 0.15)(1.50) + 0.02240
                                                     = 0.54740 t/m = 5.36816 kN/m
wu        = (1.2D + 1.6L) s + 1.2 sw
          = (1.2×0.20 + 1.6×0.15)(1.50) + 1.2×0.02240
          = 0.72000 + 0.02688                        = 0.74688 t/m = 7.32439 kN/m

Factored actions (simply-supported beam, UDL):

Mu = wu L² / 8 = 7.32439 × 5.00² / 8 = 22.8887 kN·m  = 2.33400 t·m
Vu = wu L / 2  = 7.32439 × 5.00 / 2  = 18.3110 kN    = 1.86720 t

LRFD capacities:

φMn = φ_b Fy Wx = 0.90 × 355e6 × 1.943e-4          = 62 078.85 N·m = 62.0789 kN·m
Aw  = 0.55 A    = 0.55 × 2.85e-3                    = 1.5675e-3 m²
φVn = φ_v (0.6 Fy) Aw = 0.90 × 0.6 × 355e6 × 1.5675e-3
                                                    = 300 489.75 N = 300.490 kN

Deflection (unfactored service load):

δ = 5 w L⁴ / (384 E I)
  = 5 × 5368.16 N/m × 5.00⁴ / (384 × 200e9 Pa × 1.943e-5 m⁴)
  = 11.2419 mm

limit = L / 360 = 5000 mm / 360 = 13.8889 mm

Utilizations:

bending    : 22.8887 / 62.0789 = 0.36871
shear      : 18.3110 / 300.490 = 0.06094
deflection : 11.2419 / 13.8889 = 0.80942   ← governs

3. Results comparison

Check Hand calc Software (check_steel_beam_lrfd) Match Pass?
Service line load w 0.54740 t/m 0.54740 t/m ✅ exact
Factored line load wu 0.74688 t/m 0.74688 t/m ✅ exact
Factored moment Mu 2.33400 t·m 2.33400 t·m ✅ exact ≤ φMn → PASS
Factored shear Vu 1.86720 t 1.86720 t ✅ exact ≤ φVn → PASS
Moment capacity φMn 62.0789 kN·m 62.0789 kN·m ✅ exact
Shear capacity φVn 300.490 kN 300.490 kN ✅ exact
SLS deflection δ 11.2419 mm 11.2419 mm ✅ exact ≤ 13.8889 → PASS

All three limit-state checks pass. Deflection governs at 81% utilization — the expected behaviour for slender IPE sections at L/360, and a useful sanity check that serviceability, not strength, controls this configuration.

Documented limitation: the module assumes a compact, laterally restrained section — no lateral-torsional buckling check (roadmap task 1.5) and no web-slenderness classification. The report output states this assumption.

4. Reproducing this check

from vernastruct.core.sections import SteelSection
from vernastruct.analysis.steel import check_steel_beam_lrfd

ipe200 = SteelSection(
    id="IPE200", family="IPE",
    display_name_en="IPE200", display_name_ar="IPE200",
    A=0.00285, Ix=1.943e-5, Wx=1.943e-4,
    h_mm=200, b_mm=100, mass_kg_m=22.4,
)

result = check_steel_beam_lrfd(
    section=ipe200,
    span_m=5.0,
    D_ton_per_m2=0.20,
    L_ton_per_m2=0.15,
    tributary_width_m=1.5,
    Fy_MPa=355.0,
)
assert result.ok

This exact case is pinned as an automated regression test in tests/test_verification_cases.py::test_vc02_steel_lrfd_beam — if any future code change alters these numbers, the test suite will fail.


Every case in this manual is pinned as an automated regression test that runs on every build — no future change can silently break a verified result. © 2026 Hesham Salama.