2-D frame analysis

A plane frame of any shape (portal frames, multi-bay frames, gable frames, braced frames, trusses) analysed by the direct stiffness method for each ASCE 7-22 load combination: nodal displacements, support reactions, member end forces and the axial force, shear and moment along every member.

Analysis is an input, and the default is first-order. Saved calculations do not change: a calculation with no choice of analysis runs the first-order path with exactly its old numbers. The other choices add second-order analysis (P-Δ and P-δ), the three stability methods of AISC 360-22 (direct analysis, effective length, first-order analysis) and, with a stability method, the design of steel members to Chapters E, F, G and H. Off, the calculation reads "Calculated"; with every member designed it reads "Adequate" or "Not adequate".

Inputs of the frame analysis

  • Sections: up to three AISC shapes (Shapes Database v16.0); a member uses its area A and strong-axis Ix. A member can instead use an A and I entered in its row (any material).
  • Nodes: numbered 1, 2, ... in table order, at (x, y) with x to the right and y up. A node's support is free, fixed, pin, a roller holding Y (on a horizontal surface) or a roller holding X (on a vertical surface).
  • Members: from node i to node j, the section, E (29,000 ksi for steel, AISC 360-22 B4, prefilled; enter the modulus of your material) and the end conditions: rigid, pinned at i, pinned at j or pinned both ends (a truss member). A node where every member is pinned is a pin joint; it cannot carry a nodal moment.
  • Nodal loads: Fx (right positive), Fy (up positive) and Mz (counter-clockwise positive) per load type.
  • Member loads: a uniform load over the whole member or a point load at a distance a from end i, acting by gravity (downward; per unit length of the member for an inclined member), along global X, or perpendicular to the member along its local y axis (90° counter-clockwise from the direction i to j).
  • Load combinations: the ASCE 7-22 2.3.1 (LRFD) or 2.4.1 (ASD) combinations of the load types present, chosen by the method switch (W and E in both directions), or one load set: the unfactored sum of the loads.
  • Analysis:
    • First-order (no stability method): the default, as above. Second-order effects are not included, and the calculation says so.
    • Second-order, nominal stiffness: P-Δ and P-δ, no imperfections, no stiffness reduction. The forces are second-order but this is not a stability method: AISC 360-22 C1 asks for imperfections and stiffness reductions too.
    • Direct analysis method (C2): second-order with 0.8 on all stiffnesses, τb in addition on flexural stiffness, and initial imperfections. K = 1 in member design.
    • Effective length method (Appendix 7.2): second-order at nominal stiffness with notional loads; permitted where Δ2nd/Δ1st ≤ 1.5.
    • First-order analysis method (Appendix 7.3): first-order at nominal stiffness with the additional lateral load Ni = 2.1α(Δ/L)Yi ≥ 0.0042Yi and B1 on the total member moments; K = 1.
  • Segments per member (2 to 10, prefilled 4): each member is divided and each segment has its geometric stiffness. Four segments reproduce the Commentary benchmarks. Moments and deflections between segment ends are approximate.
  • Include shear deformation (on; C2.1(a) and 7.3.2 ask for it): Av = d tw for I-shapes, channels and tees, 2 h t for rectangular HSS, A/2 for round HSS and pipe; for an entered section from Av in the member design inputs (blank: none in that member). Off reproduces the bracketed values of the Commentary.
  • Initial imperfections: notional loads (C2.2b) or a modelled lean (C2.2a), at the out-of-plumbness ratio (0.002 = 1/500, the Code of Standard Practice tolerance, C2.2b(c)). A notional load acts wherever a D, L, Lr, S or R load acts, and in the same way along the member: Yi is at the analysis level, so αYi holds for LRFD and ASD. Both directions run in a combination with no lateral load; with one, the notional load takes the direction of its resultant (C2.2b(b)). A combination counted twice shows as "… + Nx" and "… − Nx". Imperfections applied in: all combinations (C2.2b(a)), or gravity-only (C2.2b(d), C2.2a), which is checked against Δ2nd/Δ1st ≤ 1.7.
  • Stiffness parameter τb (direct analysis): iterated per member and per combination from αPr/Pns (Eq. C2-2), or 1.0 with an additional notional load of 0.001 Yi in all combinations (C2.3(c)). An entered section has no Pns, so its τb stays 1.0 and the check says so.
  • Member design (with a stability method): the steel of each section (A992 for W shapes, A500 or A1085 for HSS, A53 for pipe), and the member design inputs: your decisions, one row per member, and a member without a row takes the defaults. Lb (blank = member length), Lcx and Lcy (blank = member length, C3; under the effective length method a blank Lcx uses K from the story stiffness), Cb (1.0 is conservative; Eq. F1-1 for your own diagram). Lcz = Lcy. The bracing that defines these lengths is not checked. E must be 29,000 ksi for a designed member.

Auto-design does not run on this type: changing a section changes the stiffness and every force, and sections are shared between members. Size by hand with member design on, or take the forces to a member's own calculation.

Results and checks of the frame analysis

ItemBasis
Equilibrium of the frameΣFx, ΣFy and ΣM about the origin of the applied loads and the reactions, for every combination; the largest residual is reported and must be below 10⁻⁶ of the applied load
Analysis basisDirect stiffness method: 6 × 6 member stiffness with axial and bending deformation, member loads as fixed-end forces, end releases by static condensation
Second-order effectsFirst-order: a note that P-Δ and P-δ are not included (AISC 360-22 C1, C2, Appendix 8). Otherwise the analysis below
Second-order analysisEach member in equal segments, with an elastic and a consistent geometric stiffness (a Timoshenko stiffness when shear deformation is on); axial forces iterated for each combination, never superposed; ASD at 1.6 times the combination, the results divided by 1.6 (C1, C2.1(d))
A frame that buckles or does not convergeNOT FEASIBLE with the reason, and no forces. Buckled: the tangent stiffness is no longer positive definite, including a member between its ends. Not converged: 30 iterations. Also refused: a member chord rotating over 0.10 rad, where the small-displacement basis stops, and αPr ≥ Pns
AmplificationΔ2nd/Δ1st per story, the two runs at the same stiffness, the drift being the columns' average weighted by vertical load (Eq. A-8-7); the elastic critical load factor of the combination with the largest ratio; RM, Pe story and B2 by Eqs. A-8-6 to A-8-8 as a cross-check. A story is the nominally vertical members between two levels; a frame with no such members has no story ratio
LimitsDirect analysis: ≤ 1.7 when imperfections are in gravity-only combinations (C2.2b(d)), and the recommended ≤ 2.5 (Commentary C1, a flag, not a failure). Effective length: ≤ 1.5 (7.2.1(b)), K = 1 at ≤ 1.1 (7.2.3(b)). First-order method: B2 ≤ 1.5 (read from B2 as Example C.1C does), Eq. A-7-1 on beams with L the larger of span and story height, Eq. A-7-2
Effective length factor (Appendix 7.2)K of each story's moment-frame columns by the story stiffness approach (Commentary Eq. C-A-7-5), the larger of all combinations, at least 1.0; pinned-both-ends columns and members outside a story 1.0. Enter Lcx to use your own
Compression, per memberChapter E through the steel library: E3, E4, E7, with Lcx, Lcy and Lcz = Lcy
Tensile yielding, per memberD2(a). Rupture and block shear are not checked (below)
Flexure, strong axis, per memberChapter F with Lb, Cb: W, S, M, HP with compact webs; channels if compact; rectangular and round HSS, pipe; tees with the lesser strength (stem in compression), since the stem's direction is not an input
Shear, per memberChapter G, in the plane of the frame
Combined force, per memberH1-1a, H1-1b (H1.2 in tension) for every combination, with the largest axial force and moment along the member in that combination; the largest ratio is reported with its combination. First-order method: M includes B1
Member not designedAn entered A and I; E other than 29,000 ksi; a web or D/t the library's flexure does not cover. Said per member; nothing is checked for it, and the calculation stays "Calculated"
Reactions and member forcesLargest and smallest reaction components at each support, and the axial force, shear and moment of each member, over all combinations
Largest nodal displacementThe largest x or y displacement and its combination

The drawings (on screen, in the report and as a PDF / DXF drawing sheet) show the frame elevation on the member centre lines with node numbers, member marks (M1, M2, ...; the sections are listed by mark in the sheet notes), supports, moment releases (small circles), the nodal and member loads by load type with their values, and the bay and story dimensions; and, for the combination with the largest moment, the moment (on the tension side), shear and axial force (tension +) diagrams drawn on the frame with the largest and smallest value of each member labelled (the units are in the scale line). Uniform loads stacked on a sloping member share one label, listed from the outer band in. The largest displacement is in the design summary; the deformed shape is not drawn. Connections and bases are not part of the calculation. Notional loads are not drawn; the sheet notes state the analysis used. Member moments are positive with tension on the member's local −y side (the bottom of a member drawn left to right). Under ASD a second-order displacement is 1.6 times the combination divided by 1.6: not a service displacement. For serviceability use a first-order or one-load-set run.

Limitations

  • First-order analysis (the default): second-order effects, geometric and material nonlinearity are out of scope, and no shear deformation. Choose another analysis for stability design.
  • Second-order analysis: elastic and in the plane of the frame only, on the undeformed geometry with a tangent stiffness. Member shortening by its own bending, large displacement and inelastic behaviour are out. Out-of-plane buckling of the frame is not analysed: member design takes Lcy and Lb as your inputs.
  • The Commentary recommends checking problems with design load to elastic buckling load near 0.6 to 0.7; AISC benchmark Cases 1 and 2 run up to about 0.4 and 0.65. Above that, Δ2nd/Δ1st passes 2.5 and the check flags it.
  • Appendix 8 B1 and B2 are not an analysis choice. The nt and lt split needs a choice of restraints that a general plane frame does not give, and the module has the rigorous answer anyway. B2 is reported as a cross-check, and B1 applies in the first-order analysis method, on the total moment as 7.3.2(b) says.
  • Member design covers strong-axis bending and axial force in the plane of the frame. Not checked: connections and bases; tensile rupture and block shear at member ends (D2(b), J4); biaxial bending and out-of-plane loads; bracing strength and stiffness (Appendix 6); concentrated-load limit states (J10); seismic provisions (AISC 341); the Chapter H alternatives H1.3 and H2. Cb under axial tension is not increased.
  • The columns of a braced frame with rigid ends get K from the story stiffness formula under the effective length method, which assumes they resist sway, and 7.2.3(a) allows K = 1 there: enter Lcx. RM treats every column with a rigid end as a moment-frame column (0.85 at the lowest), on the safe side.
  • A pinned link or leaning column buckles at its own Euler load: give it a real I, not a nearly zero one.
  • No rigid end zones, semi-rigid connections, springs, support settlement, temperature, inclined supports or partial uniform loads (use point loads or split the member).
  • No pattern live load: enter the live load arrangements as separate load cases or calculations if they govern.
  • Auto-design does not apply (see above).

Verification examples

Verification status: 188 values compared in 49 examples (40 published, 9 hand calculations from the cited equations): 164 within tolerance, 24 recorded deviations. Code basis: the provisions it uses were read in the target edition.

Closed-form solutions (hand calculation), one unfactored load set, E = 29,000 ksi. The portal frame is solved by slope-deflection with axially rigid members (A = 10,000 in² in the model); the derivation is in the test file (backend/tests/test_verify_frame_2d.py).

ExampleWhat it checksClosed formILX Calcs
FR-1Fixed-fixed beam, w = 1 kip/ft, 20 ftwL²/12 = 33.33, wL²/24 = 16.67 kip-ft33.33, 16.67
FR-2Propped cantileverwL²/8 = 50.0 kip-ft; 3wL/8 = 7.5 kips; 9wL²/128 = 28.13 kip-ft50.0; 7.5; 28.13
FR-3Two equal continuous spanswL²/8 = 50.0 kip-ft; 1.25wL = 25.0 kips; 0.375wL = 7.5 kips50.0; 25.0; 7.5
FR-4Fixed-base portal, h = L = 12 ft, H = 10 kipsbase 0.2857Hh = 34.29, top 0.2143Hh = 25.71 kip-ft; Δ = Hh³/(16.8EI) = 0.0613 in34.29, 25.71; 0.0613
FR-5Three-bar truss, P = 10 kips at the apexdiagonals −P/(2 sin α) = −8.33 kips; chord +6.67 kips−8.33; +6.67

Published examples (backend/tests/test_verify_frame_2d.py): F. Udoeyo, Structural Analysis (Temple University Press, 2020, open textbook), Chapters 11 (slope-deflection) and 12 (moment distribution), and AISC Steel Construction Manual, 16th Ed., Table 3-22 beam cases modelled as frames. End moments are compared as magnitudes.

ExampleWhat it checksPublishedILX Calcs
UD-11.5Fixed column with 2 kips/ft lateral load, fixed-end beam with 20 kips (Example 11.5)M = 17.09, 15.83, 14.58 kip-ft; Ax = 10.13, Ay = 10.20, Cy = 9.80, Cx = 9.87 kips17.08, 15.83, 14.58; 10.13, 10.21, 9.79, 9.88
UD-12.3Beam over a column with a propped end, moment distribution (Example 12.3)M = 12.48, 60.37, 75.31, 14.94, 7.47 kip-ft12.53, 60.27, 75.36, 15.09*, 7.55*
UD-12.5Column fixed at both ends with a pinned 65 kN/m beam, metric input (Example 12.5)M = 13.17, 26.33, 53.39 kN·m13.30, 26.59, 53.18
AISC-17FTable 3-22 case 17 (p. 3-220)M1 = −28.13, M2 = −9.38, Ma = 14.06 kip-ft; R1 = 8.44 kipssame
AISC-39FTable 3-22 case 39 (p. 3-229)R = 8.0 / 22.0 kips; MB = −40.0; M+ = 32.0 / 10.0 kip-ft8.0 / 22.0; −40.0; 31.94 / 10.0

\* Documented deviation UDOEYO-12.3-MD: the textbook stops the moment distribution after two cycles with distribution factors rounded to 0.01; the app gives the exact elastic solution (1 % apart). In Example 11.5 the textbook writes every slope-deflection equation with the same K = I/L for the 10 ft column and the 6 ft beam; the test gives the column I × 10/6 so both members have that K (with equal I the app gives 16.98 / 16.04 / 14.48 kip-ft). Examples 11.7 and 12.6 of the textbook are not used: their printed moments violate the zero column-top shear of a frame whose beam ends on a roller.

Second-order analysis and the stability methods (backend/tests/test_verify_frame_2d_stability.py, LRFD and ASD where the source has both). The solver has its own tests (backend/tests/test_frame_second_order.py): it finds the Euler load of a pinned column and a cantilever within 0.2 % and the closed-form amplification.

ExampleWhat it checksPublishedILX Calcs
Commentary C2 Case 1, Fig. C-C2.2W14X48, 28 ft, pinned, w = 0.2 kip/ft, P = 0, 150, 300, 450 kips, 4 segmentsMmid 235, 270, 316, 380 kip-in.; Δ 0.202, 0.230, 0.269, 0.322 in. (shear off: 235, 269, 313, 375; 0.197, 0.224, 0.261, 0.311)within 0.3 %
Commentary C2 Case 2, Fig. C-C2.3W14X48, 28 ft, cantilever, H = 1 kip, P = 0, 100, 150, 200 kipsMbase 336, 470, 601, 856 kip-in.; Δ 0.907, 1.34, 1.77, 2.60 in. (shear off: 336, 469, 598, 848; 0.901, 1.33, 1.75, 2.56)within 0.4 %
DG28 Fig. D-4W10X60, 15 ft, direct analysis, Pu = 440, H = 2.33 kipsΔ1st 0.580, Δ2nd 2.22 in.; Mu 1,394 kip-in.; H1-1a 1.000.583, 2.23; 1,400; 0.996
C.1A (Design Examples)Direct analysis, a frame with a leaning columnNi 0.576, 0.614; Δ1st 0.181, 0.193; M 109, 127 and 72.2, 84.8 kip-ft; H 5.52, 6.26 and 3.68, 4.18; P 71.4, 72.6 and 47.6, 48.4 kips; αPr/Pns 0.0760, 0.0811within 0.4 %
C.1BEffective lengthΔ1st 0.145, 0.155; M 110, 126 and 73.1, 84.1 kip-ft; RM 0.925; Kx 3.45, 3.46within 0.3 %; Kx within 0.3 %
C.1CFirst-order analysis methodNi 1.21, 0.806; Δ 0.304, 0.203; M 131 and 70.9, 87.1 kip-ft; B2 1.48, 1.54 (over 1.5: not permitted); 0.5 Pns 478; 0.08 Pe 108 kipswithin 1 %; reads NG under ASD, as the example says
E.1A, F.1-3, G.1A, D.1One member each through member designφPn 893, Pn/Ω 594; Cb φMn 289, 192; φVn 306, 204; φPn 277, 184within 0.4 %
DG28 Example 3.2Warehouse moment frame, direct analysis, Comb 7 to 16, drifts Comb 3 to 19, from our reconstruction of one line of the buildingPr 91.6, Mr 10,800 kip-in.; Δ2nd 0.890, 4.56 in.91.1, 10,550; 0.890, 4.52; some values outside 1 % (below)

Hand calculations, marked as such in the test file: the closed-form cantilever and pinned beam-column of DG28 Figs. D-2 and D-3, within 0.05 %; the H1 equations and B1 by hand.

Documented deviations: C1-DRIFT2: the second-order drifts printed in C.1A and C.1B are 2.5 to 4 % below ours, with the printed forces matching; the printed 1.41 is below what sway alone gives, and the same solver reproduces the Commentary benchmarks, so the difference seems to be in the printed figure. It is within the Commentary's 5 % for deflections and on the conservative side. C1C-108: Figure C.1C-3 prints 108 kip-ft with 5.32 kips over 20 ft, which is 106.4. C1C-875: the printed story buckling strength under ASD rounds the story shear. DG32-MODEL: the guide does not print its model, so a miss in the warehouse may be our reconstruction: the governing column moment is 2.3 % low, drifts under notional load alone 4 % high, and small moments up to 7 %.

Not verified against a worked example: H1 of a member under a full frame analysis (DG28 Fig. D-4 is the closest), tees and channels in member design, modelled imperfections (checked here against notional loads), Eq. C2-2b with τb below 1.0 in a frame (by hand only).