Capacity Design of CB Frames — Algorithm Flowcharts

Seismic Capacity Design Automation for Concentric Braced Frames  |  AISC 341-16  /  AISC 360-16

Supported Frame Types

  • Ordinary Concentric Braced Frame (OCBF)
  • Special Concentric Braced Frame (SCBF)

Code References

  • AISC 341-16 Chapter F2.3
  • AISC 360-16 Chapter E (E3-2, E3-3)
  • ASCE 7 (Rho redundancy factor)

Load Cases Created

  • Ordinary: _P, _N (2 cases / direction)
  • Special: _P1, _N1, _P2, _N2 (4 cases)
  • BiDir 100%+30%: C1_ to C4_
  • BiDir 100%+100%: C1_ to C16_

Key Constants

  • Ry = 1.5 (expected yield ratio)
  • φc = 0.9 (compression factor)
  • Post-buckling fraction = 0.3
  • Axial stiffness modifier = 0.001

Diagram A — Main Algorithm Workflow

Complete execution flow from user input through SAP2000 model modification to design-ready output.

Flowchart A

Top-Level Workflow — Ordinary & Special Frames

flowchart TD A([▶ Start]) --> B[/User Selects:\nFrame Type, Direction\nLoad Case Names, Omega0, Rho/] B --> C{Input\nValidation} C -->|Errors found| ERR([⚠ Show Error\nMessage]) C -->|Valid| D[Open SAP2000 File\nor Attach to Instance] D --> E[Run Structural Analysis\n+ Steel Design] E --> F[Set Omega₀ = 1.0\nin SAP2000 Preferences\nprevent double-amplification] F --> G{Rho Factor\nEnabled?} G -->|Yes| G1[Divide EQ Load Scale\nby Rho Factor] G -->|No| H G1 --> H[Get All Frame Members\nfrom SAP2000 Model] H --> I[Identify Diagonal Braces\nby Geometry] I --> I1["For each member:\nΔZ ≠ 0 AND\nX-dir: ΔX ≠ 0\nY-dir: ΔY ≠ 0"] I1 --> I2[Record BraceName,\ni-end, j-end, Length] I2 --> J[Extract Seismic Axial Forces\nfrom EQ Load Case] J --> J1["BraceE = Axial Force × Omega₀"] J1 --> J2["Classify: Tension T or\nCompression C"] J2 --> K{Frame\nType?} K -->|ORDINARY| OA[Query SAP2000:\nCompressive Capacity Pc·Comp] OA --> OB["Post-Buckling Capacity:\nCₚₛ = 0.3 × Pc·Comp / φc"] OB --> OC["Assign Loads\n2 Cases Per Brace:\n_P and _N"] OC --> OD["Create Load Patterns:\nEQ_P, EQ_N\nCreate Static Load Cases"] OD --> OE["Apply Point Loads\nat Brace End Joints\nEquilibrium pairs"] OE --> OF["Generate Load Combos:\nCP_ and CN_ prefixes"] K -->|SPECIAL| SA["Override Column Mn:\nMn,major = Mn,minor = 10³⁰\nAISC 341-16 F2.3 exception a"] SA --> SB["Get Section Properties:\nAg, r₂₂, r₃₃, Fy, E"] SB --> SC["Compute Expected Strength:\nT = Ry × Fy × Ag\nC = min C1, C2 see Diagram B\nCₚₛ = 0.3 × max C1, C2"] SC --> SD["Assign Loads\n4 Cases Per Brace:\n_P1, _N1, _P2, _N2"] SD --> SE["Create Load Patterns & Cases:\nEQ_P1, EQ_N1, EQ_P2, EQ_N2"] SE --> SF["Apply Point Loads\nat Brace End Joints"] SF --> SG["Generate Load Combos:\nCP1_, CN1_, CP2_, CN2_"] OF --> MOD SG --> MOD MOD["Set Brace Axial Stiffness\nModifier = 0.001\nIsolate from gravity loads\nAISC 341"] MOD --> DIS["Disable P-Delta Cases\nDisable Modal Cases\nDisable Response Spectrum Cases\nRemove Initial Conditions"] DIS --> SAVE["Save List of\nModified Cases\nfor Restoration"] SAVE --> DONE(["✓ Model Ready\nfor Capacity Design\nUser Runs SAP2000 Design"]) DONE -.->|User clicks\nReturn to Original| RET RET["Restore Rho & Omega₀\nRemove Capacity Loads\nReset Stiffness Modifiers\nRe-enable All Cases\nDelete Combos & Patterns"] RET --> ORIG(["✓ Model Restored\nto Original State"]) style A fill:#3dba7e,color:#000,stroke:none style ERR fill:#e05c5c,color:#fff,stroke:none style DONE fill:#3dba7e,color:#000,stroke:none style ORIG fill:#3dba7e,color:#000,stroke:none style K fill:#c9a84c,color:#000,stroke:none style G fill:#c9a84c,color:#000,stroke:none style C fill:#c9a84c,color:#000,stroke:none style OA fill:#1a3a5c,color:#e8eef5,stroke:#4a9eda style OB fill:#1a3a5c,color:#e8eef5,stroke:#4a9eda style OC fill:#1a3a5c,color:#e8eef5,stroke:#4a9eda style OD fill:#1a3a5c,color:#e8eef5,stroke:#4a9eda style OE fill:#1a3a5c,color:#e8eef5,stroke:#4a9eda style OF fill:#1a3a5c,color:#e8eef5,stroke:#4a9eda style SA fill:#2a1a5c,color:#e8eef5,stroke:#a78bfa style SB fill:#2a1a5c,color:#e8eef5,stroke:#a78bfa style SC fill:#2a1a5c,color:#e8eef5,stroke:#a78bfa style SD fill:#2a1a5c,color:#e8eef5,stroke:#a78bfa style SE fill:#2a1a5c,color:#e8eef5,stroke:#a78bfa style SF fill:#2a1a5c,color:#e8eef5,stroke:#a78bfa style SG fill:#2a1a5c,color:#e8eef5,stroke:#a78bfa style MOD fill:#162032,color:#e8eef5,stroke:#c9a84c style DIS fill:#162032,color:#e8eef5,stroke:#c9a84c style SAVE fill:#162032,color:#e8eef5,stroke:#c9a84c style RET fill:#3d2020,color:#e8eef5,stroke:#e05c5c
Ordinary Frame path
Special Frame path
Decision node
Start / Success
Error / Restore
Model modification (shared)

Diagram B — Special Frame Capacity Calculation

Per-brace calculation of expected tensile capacity (T), compressive capacity (C), and post-buckling capacity (CPB) per AISC 341-16 F2.3 and AISC 360-16 Chapter E.

Flowchart B

SCBF Capacity Formula — Per Brace

flowchart TD P1[/Brace Member/] --> P2["Get Section Properties from SAP2000:\nAg = gross area\nr₂₂, r₃₃ = radii of gyration\nFy = yield stress\nE = elastic modulus\nL = brace length"] P2 --> P3["Critical Slenderness:\nr = min r₂₂, r₃₃\nKL/r with K = 1"] P3 --> P4["Euler Critical Stress:\nFe = π² × E ÷ KL/r ²"] P4 --> P5["Expected Yield Stress:\nRyFy = 1.5 × Fy\nwhere Ry = 1.5 per AISC 341"] P5 --> P6{RyFy ÷ Fe ≤ 2.25?} P6 -->|Yes\nInelastic Buckling| P7["AISC 360-16 E3-2:\nFcre = 0.658^RyFy/Fe × RyFy"] P6 -->|No\nElastic Buckling| P8["AISC 360-16 E3-3:\nFcre = 0.877 × Fe"] P7 --> P9 P8 --> P9 P9["Dual Compression Criteria:\nC1 = RyFy × Ag yield governs\nC2 = Fcre ÷ 0.877 × Ag buckling governs"] P9 --> P10["Governing Capacities:\nT = RyFy × Ag\nC = min C1, C2\nCₚₛ = 0.3 × max C1, C2"] P10 --> P11{Brace\nClassification\nfrom seismic?} P11 -->|Compression\nBrace| PA["Load Assignments:\n_P1 = -C full compression\n_N1 = +T full tension\n_P2 = -Cₚₛ post-buckling\n_N2 = +T tension"] P11 -->|Tension\nBrace| PB["Load Assignments:\n_P1 = +T full tension\n_N1 = -C full compression\n_P2 = +T tension\n_N2 = -Cₚₛ post-buckling"] PA --> PC["Apply as Point Loads:\ni-end: Load value\nj-end: -Load value\nequilibrium maintained"] PB --> PC PC --> PD([Next Brace]) style P1 fill:#3dba7e,color:#000,stroke:none style P6 fill:#c9a84c,color:#000,stroke:none style P11 fill:#c9a84c,color:#000,stroke:none style P7 fill:#2a1a5c,color:#e8eef5,stroke:#a78bfa style P8 fill:#1a3a5c,color:#e8eef5,stroke:#4a9eda style PA fill:#1a2a3c,color:#e8eef5,stroke:#4a9eda style PB fill:#2a1a3c,color:#e8eef5,stroke:#a78bfa style PC fill:#162032,color:#e8eef5,stroke:#c9a84c style PD fill:#3dba7e,color:#000,stroke:none
Inelastic buckling branch (E3-2)
Elastic buckling branch (E3-3)
Decision node
Entry / Exit

Diagram C — Load Combination Generation Strategy

How existing SAP2000 response combinations are replaced with capacity-design combinations.

Flowchart C

Load Combination Replacement Logic

flowchart TD C1[Scan All Existing\nResponse Combinations] --> C2{Contains\nEQ Case?} C2 -->|No| C3[Skip — Leave Unchanged] C2 -->|Yes| C4{Direction\nMode?} C4 -->|Single Direction\nOrdinary| C5["Create:\nCP_<combo> using EQ_P case\nCN_<combo> using EQ_N case"] C4 -->|Single Direction\nSpecial| C6["Create:\nCP1_<combo> using EQ_P1\nCN1_<combo> using EQ_N1\nCP2_<combo> using EQ_P2\nCN2_<combo> using EQ_N2"] C4 -->|BiDir 100%+30%\nBoth X and Y| C7["Create 4 Combos:\nC1_ = X_P + Y_P\nC2_ = X_P + Y_N\nC3_ = X_N + Y_P\nC4_ = X_N + Y_N\nZero out 0.3EX, 0.3EY patterns"] C4 -->|BiDir 100%+100%\nFull Special| C8["Create 16 Combos:\nC1_ through C16_\nAll combinations of\nP1,N1,P2,N2 x P1,N1,P2,N2\nfor X and Y directions"] C5 --> C9 C6 --> C9 C7 --> C9 C8 --> C9 C9["Remove original combo\nfrom Steel Strength\nDesign List"] C9 --> C10["Add all new capacity combos\nto Steel Strength\nDesign List"] C10 --> C11([SAP2000 designs\nusing capacity combos]) style C1 fill:#162032,color:#e8eef5,stroke:#c9a84c style C2 fill:#c9a84c,color:#000,stroke:none style C4 fill:#c9a84c,color:#000,stroke:none style C3 fill:#2a2a2a,color:#9badc0,stroke:#444 style C5 fill:#1a3a5c,color:#e8eef5,stroke:#4a9eda style C6 fill:#2a1a5c,color:#e8eef5,stroke:#a78bfa style C7 fill:#1a3a40,color:#e8eef5,stroke:#3dba7e style C8 fill:#3a1a40,color:#e8eef5,stroke:#e05c5c style C9 fill:#162032,color:#e8eef5,stroke:#c9a84c style C10 fill:#162032,color:#e8eef5,stroke:#c9a84c style C11 fill:#3dba7e,color:#000,stroke:none
Ordinary single-direction (2 combos)
Special single-direction (4 combos)
BiDir 100%+30% (4 combos)
BiDir 100%+100% Special (16 combos)

Diagram D — Return to Original Workflow

Complete reversal of all model modifications to restore the SAP2000 model to its pre-capacity-design state.

Flowchart D

Model Restoration — Reverse Sequence

flowchart TD R1(["User Clicks\nReturn to Original"]) --> R2{Rho Factor\nWas Applied?} R2 -->|Yes| R3["Multiply EQ Load Scale\nby Rho Factor\nrestores original demand"] R2 -->|No| R4["Restore Omega₀ to\nUser-Specified Value\nin SAP2000 Preferences"] R3 --> R4 R4 --> R5["Delete All Capacity-Design\nPoint Loads from Joints\n_P, _N, _P1, _N1, _P2, _N2 patterns"] R5 --> R6["Reset All Brace\nProperty Modifiers to 1.0\nrestore full axial stiffness"] R6 --> R7["Re-enable P-Delta Cases\nwith Original Initial Conditions"] R7 --> R8["Re-enable Modal Cases\nRe-enable Response Spectrum Cases"] R8 --> R9["Delete Capacity-Design\nLoad Patterns:\nEQ_P, EQ_N, EQ_P1 ... EQ_N2"] R9 --> R10["Delete Capacity-Design\nLoad Cases:\nStatic Linear cases created"] R10 --> R11["Delete All Capacity-Design\nLoad Combinations:\nCP_, CN_, CP1_, CN1_, CP2_, CN2_, C#_"] R11 --> R12["Restore Original Combos\nto Steel Strength\nDesign List"] R12 --> R13(["✓ Model Fully\nRestored to\nOriginal State"]) style R1 fill:#c9a84c,color:#000,stroke:none style R13 fill:#3dba7e,color:#000,stroke:none style R2 fill:#c9a84c,color:#000,stroke:none style R3 fill:#3d2020,color:#e8eef5,stroke:#e05c5c style R5 fill:#3d2020,color:#e8eef5,stroke:#e05c5c style R6 fill:#3d2020,color:#e8eef5,stroke:#e05c5c style R9 fill:#3d2020,color:#e8eef5,stroke:#e05c5c style R10 fill:#3d2020,color:#e8eef5,stroke:#e05c5c style R11 fill:#3d2020,color:#e8eef5,stroke:#e05c5c
Deletion / reversal operations
Trigger / decision
Final state

Table E — Generated Combinations: Worked Example

Starting from a single original seismic combination, all capacity-design combinations produced by the tool are listed for every frame type and loading mode. Capacity-design load cases are colour-coded: blue = X direction, purple = Y direction.

Example Input

Original Seismic Combinations in the SAP2000 Model

The tables below trace what the tool generates from these two representative original combinations. All gravity terms are carried through unchanged into every new combo. EQX and EQY are the user-supplied seismic load cases; EX_03 and EY_03 are the 30% orthogonal load patterns.

Original Combo — Primary X Direction
DSEQX
1.2D + 1.0·EQX + 0.3·EY_03
Original Combo — Primary Y Direction
DSEQY
1.2D + 0.3·EX_03 + 1.0·EQY

★ In practice the model may have many seismic combos (1.2D, 0.9D, with live load, etc.). The tool processes all of them; the two above are shown as a representative pair.

Capacity Case Suffix Key

What each generated load case suffix means

Ordinary Frames (OCBF) — 2 cases per direction

SuffixMeaningLoad applied to brace i-end
_PPositive direction, full capacityT brace: +Ω₀·E  |  C brace: −CPB
_NNegative direction, full capacityT brace: −CPB  |  C brace: −Ω₀·E

Special Frames (SCBF) — 4 cases per direction

SuffixMeaningLoad applied to brace i-end
_P1Positive, full cap. (T or C governs)T brace: +T  |  C brace: −C
_N1Negative, full cap.T brace: −C  |  C brace: +T
_P2Positive, post-bucklingT brace: +T  |  C brace: −CPB
_N2Negative, post-bucklingT brace: −CPB  |  C brace: +T
Ordinary X Direction

Scenario 1 — Ordinary Frame, X Direction Only

2 combos per original

The tool scans combos containing EQX. For each, the seismic case is replaced by EQX_P and EQX_N. All other terms (gravity, orthogonal static) are copied unchanged.

From original combo: DSEQX = 1.2D + 1.0·EQX + 0.3·EY_03
#New Combo NameFull FormulaSeismic State
1CP_DSEQX1.2D + 1.0·EQX_P + 0.3·EY_03X capacity — positive direction
2CN_DSEQX1.2D + 1.0·EQX_N + 0.3·EY_03X capacity — negative direction
Ordinary Y Direction

Scenario 2 — Ordinary Frame, Y Direction Only

2 combos per original

Identical logic to Scenario 1 but the seismic case is EQY. The 0.3·EX_03 orthogonal static term is preserved unchanged.

From original combo: DSEQY = 1.2D + 0.3·EX_03 + 1.0·EQY
#New Combo NameFull FormulaSeismic State
1CP_DSEQY1.2D + 0.3·EX_03 + 1.0·EQY_PY capacity — positive direction
2CN_DSEQY1.2D + 0.3·EX_03 + 1.0·EQY_NY capacity — negative direction
Special X Direction

Scenario 3 — Special Frame, X Direction Only

4 combos per original

Four capacity cases are generated per original combo: full capacity positive & negative, then post-buckling positive & negative. All other terms copied unchanged.

From original combo: DSEQX = 1.2D + 1.0·EQX + 0.3·EY_03
#New Combo NameFull FormulaSeismic State
1CP1_DSEQX1.2D + 1.0·EQX_P1 + 0.3·EY_03X full capacity — positive dir.
2CN1_DSEQX1.2D + 1.0·EQX_N1 + 0.3·EY_03X full capacity — negative dir.
3CP2_DSEQX1.2D + 1.0·EQX_P2 + 0.3·EY_03X post-buckling — positive dir.
4CN2_DSEQX1.2D + 1.0·EQX_N2 + 0.3·EY_03X post-buckling — negative dir.
Special Y Direction

Scenario 4 — Special Frame, Y Direction Only

4 combos per original

Same four-case pattern as Scenario 3 applied to EQY. The 0.3·EX_03 orthogonal static term is preserved unchanged.

From original combo: DSEQY = 1.2D + 0.3·EX_03 + 1.0·EQY
#New Combo NameFull FormulaSeismic State
1CP1_DSEQY1.2D + 0.3·EX_03 + 1.0·EQY_P1Y full capacity — positive dir.
2CN1_DSEQY1.2D + 0.3·EX_03 + 1.0·EQY_N1Y full capacity — negative dir.
3CP2_DSEQY1.2D + 0.3·EX_03 + 1.0·EQY_P2Y post-buckling — positive dir.
4CN2_DSEQY1.2D + 0.3·EX_03 + 1.0·EQY_N2Y post-buckling — negative dir.
Ordinary Both Dir — 100% + 30%

Scenario 5 — Ordinary Frame, Both Directions (100% + 30%)

2+2 = 4 combos total

The tool runs two independent passes. X-pass: scans combos containing EQX → creates CP_/CN_ variants, preserving the 0.3·EY_03 static term. Y-pass: scans combos containing EQY → creates CP_/CN_ variants, preserving the 0.3·EX_03 static term. The 30% orthogonal component stays as a static load in each combo; it is not zeroed in this mode.

X-pass — from DSEQX = 1.2D + 1.0·EQX + 0.3·EY_03
#New Combo NameFull FormulaSeismic State
1CP_DSEQX1.2D + 1.0·EQX_P + 0.3·EY_03X capacity pos. + static 30% Y
2CN_DSEQX1.2D + 1.0·EQX_N + 0.3·EY_03X capacity neg. + static 30% Y
Y-pass — from DSEQY = 1.2D + 0.3·EX_03 + 1.0·EQY
#New Combo NameFull FormulaSeismic State
3CP_DSEQY1.2D + 0.3·EX_03 + 1.0·EQY_PY capacity pos. + static 30% X
4CN_DSEQY1.2D + 0.3·EX_03 + 1.0·EQY_NY capacity neg. + static 30% X
Special Both Dir — 100% + 30%

Scenario 6 — Special Frame, Both Directions (100% + 30%)

4+4 = 8 combos total

Same two-pass approach as Scenario 5, but each pass generates four capacity cases (_P1/_N1/_P2/_N2). The 30% orthogonal static term is preserved unchanged in every combo.

X-pass — from DSEQX = 1.2D + 1.0·EQX + 0.3·EY_03
#New Combo NameFull FormulaSeismic State
1CP1_DSEQX1.2D + 1.0·EQX_P1 + 0.3·EY_03X full cap. pos. + static 30% Y
2CN1_DSEQX1.2D + 1.0·EQX_N1 + 0.3·EY_03X full cap. neg. + static 30% Y
3CP2_DSEQX1.2D + 1.0·EQX_P2 + 0.3·EY_03X post-buck. pos. + static 30% Y
4CN2_DSEQX1.2D + 1.0·EQX_N2 + 0.3·EY_03X post-buck. neg. + static 30% Y
Y-pass — from DSEQY = 1.2D + 0.3·EX_03 + 1.0·EQY
#New Combo NameFull FormulaSeismic State
5CP1_DSEQY1.2D + 0.3·EX_03 + 1.0·EQY_P1Y full cap. pos. + static 30% X
6CN1_DSEQY1.2D + 0.3·EX_03 + 1.0·EQY_N1Y full cap. neg. + static 30% X
7CP2_DSEQY1.2D + 0.3·EX_03 + 1.0·EQY_P2Y post-buck. pos. + static 30% X
8CN2_DSEQY1.2D + 0.3·EX_03 + 1.0·EQY_N2Y post-buck. neg. + static 30% X
Ordinary Both Dir — 100% + 100%

Scenario 7 — Ordinary Frame, Both Directions (100% + 100%)

4 combos per original (×2 originals = 8)

Each combo containing either EQX or EQY generates 4 new combos — all four combinations of X± and Y± capacity cases. The 30% orthogonal patterns (EX_03, EY_03) are zeroed (scale factor → 0) because full bidirectional capacity loading already covers orthogonal effects. An EQY capacity case is added to every combo derived from DSEQX, and vice-versa.

From DSEQX = 1.2D + 1.0·EQX + 0.3·EY_03  →  EQX slot replaced; EY_03 zeroed; EQY_P/N added
#New Combo NameFull FormulaX StateY State
1C1_DSEQX1.2D + 1.0·EQX_P + 0·EY_03 + 1.0·EQY_PX cap. pos.Y cap. pos.
2C2_DSEQX1.2D + 1.0·EQX_P + 0·EY_03 + 1.0·EQY_NX cap. pos.Y cap. neg.
3C3_DSEQX1.2D + 1.0·EQX_N + 0·EY_03 + 1.0·EQY_PX cap. neg.Y cap. pos.
4C4_DSEQX1.2D + 1.0·EQX_N + 0·EY_03 + 1.0·EQY_NX cap. neg.Y cap. neg.
From DSEQY = 1.2D + 0.3·EX_03 + 1.0·EQY  →  EQY slot replaced; EX_03 zeroed; EQX_P/N added
#New Combo NameFull FormulaX StateY State
5C1_DSEQY1.2D + 0·EX_03 + 1.0·EQX_P + 1.0·EQY_PX cap. pos.Y cap. pos.
6C2_DSEQY1.2D + 0·EX_03 + 1.0·EQX_P + 1.0·EQY_NX cap. pos.Y cap. neg.
7C3_DSEQY1.2D + 0·EX_03 + 1.0·EQX_N + 1.0·EQY_PX cap. neg.Y cap. pos.
8C4_DSEQY1.2D + 0·EX_03 + 1.0·EQX_N + 1.0·EQY_NX cap. neg.Y cap. neg.
Special Both Dir — 100% + 100%

Scenario 8 — Special Frame, Both Directions (100% + 100%)

16 combos per original (×2 originals = 32)

Every combination of the four X-direction cases and four Y-direction cases is generated: 4 × 4 = 16 per original seismic combo. X-case order: P1, P2, N1, N2 (outer loop). Y-case order: P1, P2, N1, N2 (inner loop). Orthogonal 30% patterns are zeroed. Only DSEQX is shown below; DSEQY generates an analogous set with identical seismic terms and its own gravity (1.2D + 0·EX_03 + …).

From DSEQX = 1.2D + 1.0·EQX + 0.3·EY_03  →  16 capacity combos
#New Combo NameFull FormulaX StateY State
1 C1_DSEQX 1.2D + 1.0·EQX_P1 + 0·EY_03 + 1.0·EQY_P1Full pos.Full pos.
2 C2_DSEQX 1.2D + 1.0·EQX_P1 + 0·EY_03 + 1.0·EQY_P2Full pos.Post-buck. pos.
3 C3_DSEQX 1.2D + 1.0·EQX_P1 + 0·EY_03 + 1.0·EQY_N1Full pos.Full neg.
4 C4_DSEQX 1.2D + 1.0·EQX_P1 + 0·EY_03 + 1.0·EQY_N2Full pos.Post-buck. neg.
5 C5_DSEQX 1.2D + 1.0·EQX_P2 + 0·EY_03 + 1.0·EQY_P1Post-buck. pos.Full pos.
6 C6_DSEQX 1.2D + 1.0·EQX_P2 + 0·EY_03 + 1.0·EQY_P2Post-buck. pos.Post-buck. pos.
7 C7_DSEQX 1.2D + 1.0·EQX_P2 + 0·EY_03 + 1.0·EQY_N1Post-buck. pos.Full neg.
8 C8_DSEQX 1.2D + 1.0·EQX_P2 + 0·EY_03 + 1.0·EQY_N2Post-buck. pos.Post-buck. neg.
9 C9_DSEQX 1.2D + 1.0·EQX_N1 + 0·EY_03 + 1.0·EQY_P1Full neg.Full pos.
10C10_DSEQX1.2D + 1.0·EQX_N1 + 0·EY_03 + 1.0·EQY_P2Full neg.Post-buck. pos.
11C11_DSEQX1.2D + 1.0·EQX_N1 + 0·EY_03 + 1.0·EQY_N1Full neg.Full neg.
12C12_DSEQX1.2D + 1.0·EQX_N1 + 0·EY_03 + 1.0·EQY_N2Full neg.Post-buck. neg.
13C13_DSEQX1.2D + 1.0·EQX_N2 + 0·EY_03 + 1.0·EQY_P1Post-buck. neg.Full pos.
14C14_DSEQX1.2D + 1.0·EQX_N2 + 0·EY_03 + 1.0·EQY_P2Post-buck. neg.Post-buck. pos.
15C15_DSEQX1.2D + 1.0·EQX_N2 + 0·EY_03 + 1.0·EQY_N1Post-buck. neg.Full neg.
16C16_DSEQX1.2D + 1.0·EQX_N2 + 0·EY_03 + 1.0·EQY_N2Post-buck. neg.Post-buck. neg.
P1 / N1 Full capacity (T or C governs), positive / negative direction P2 / N2 Post-buckling capacity (CPB = 0.3 × max(C₁,C₂)), positive / negative direction 0·EY_03 Term present in combo but scale factor set to zero