Public demo snapshot of an in-house pyRevit extension for precast concrete shop-ticket QC (37 checks / 46 checklist rows) and a standalone panel handling solver (PCI Chapter 8). - No client, job, plant or product data: knowledge layers ship as structural templates only. - Ticket QC's model-read escalation targets a LAN model server endpoint (configurable), not a cloud provider. - Built from the private development repo via tools/make_dist.py.
26 KiB
Eriksson Wall — method & structure spec, and the gap to our code
What Eriksson Wall actually computes, reverse-engineered from six real
output packages, so that tools/panelanalysis.py + the panelanalysis/1 deck
schema can replace it. Part A is the spec; Part B is the concrete punch-list of
what our code must add to reach parity, ordered by importance for a wall panel.
Scrub note. The packages carry a client, a developer, an engineering
office, its address, job numbers, designer initials and per-run model
(.ewf) filenames. None of those appear here. The samples are named only
by their piece-mark / sheet labels, which are generic precast nomenclature:
| label | what it is (type, not identity) |
|---|---|
| WPA1.0 | 12" solid wall, non-prestressed, in-place only |
| WPA2.0 | 16" horizontal wall, prestressed, handling + in-place |
| WPA3.0 | 8" horizontal wall, non-prestressed, in-place only |
| WPA4.0 | 8" vertical (spanning) wall, prestressed, one unified handling + in-place run |
| SWA1.0 | 12" shear wall, non-prestressed |
| MWH1.0 | 8" prestressed wall, one file carrying several analysis units |
Page cites are PDF page numbers written WPA4.0 p.10. Software on every
run is Eriksson Wall v4.3.2, spec ACI 318-14, losses PCI Design
Handbook 8th Ed. (The richer insulated-sandwich package studied earlier —
call it WPB (v4.13.2) — is knowledge/library/notes/E1-wpb10-eriksson-package.md;
this note reconciles against it and does not repeat its arithmetic proofs.)
Read: 2026-09-02, text layer via PyMuPDF, all six extract cleanly. Numbers below are transcribed as printed; anything image-only is flagged in §A.8, not guessed.
Part A — the Eriksson method & structure
A.1 The invariant section order, and the two-model split
Every Eriksson Wall run prints the same input blocks in the same order, then a results half whose sections depend on which stages were enabled. Confirmed identical across all six samples and WPB:
Project Information materials (f'ci/f'c, Eci/Ec, unit wt, type; rebar fy/Es,
strand fpu/Ep), prestress-loss method + humidity + release/
erection times, exterior/interior soil, LOAD COMBINATIONS
Settings deflection limit, 2nd-order + βd, R-value, stress options,
in-place stress limits, handling stress limits, flexure
options, resistance factors, development multipliers,
shear options, axial options ← this page IS the method
Concrete Extents panel geometry (top/bottom elevation, height, section
type, "top in form", miters, width, thickness), openings/
reveals/solid zones, then SECTION PROPERTIES (Area, Cx, Cy,
Izz, Iyy, Izy, Sb, St)
Structural Model restraints (foundation + floor ties, each an elevation +
type + gravity/thermal restraint + stiffness), releases,
concentrated loads, load options, WIND loads, SEISMIC
loads, TEMPERATURE loads, SOIL loads, additional self
weight, structural sections
[handling runs] Handling panel weight + CG, face lifters, edge lifters, then
per-stage Stripping / Transportation / Erection blocks
Reinforcement strands / rebar / mesh / interrupts tables, plus a Strand
summary box (Aps, cgx, cgy, ex, ey) and a Mild box (As...)
------ results ------
[handling] Stripping (and Transportation/Erection if run):
Reactions (+ Tilt Potential) → Stresses table → Flexure
table → Shear table
[in-place] In-Place Strength Summary:
Reaction Forces → Flexure table → Shear table → Axial table
In-Place Service Summary:
Tension table → Total Compression table → Deflection graph
Every page carries the header (Eriksson Wall v4.3.2 / Licensee: / timestamp)
and footer (<file>.ewf / copyright / pg. n / N).
Handling and In-Place are two separate models of the same panel, and the two
are NOT always in the same run. WPB ran them as separate .ewf files (one
mild-only, one strand-only, each deliberately blind to the other's steel).
WPA4.0 instead runs both in one file (§A.3/A.4) — strand credited in both.
Which pattern you get is a per-job modelling choice, not an Eriksson rule. What
IS invariant: the block order above, and that a handling result section only
appears when that stage is enabled.
A per-file run can also contain several analysis units. MWH1.0 prints
2.1 In-Place Strength Summary and 4.1 In-Place Strength Summary
(MWH1.0 p.1763, p.3260) — one document, multiple numbered runs. Our schema must
tolerate a package that is a list of runs, not assume one.
Reconciliation with WPB's per-run order: identical. WPB additionally had
Sandwich Panel Properties, Design Parameters (composite/non-composite
section interpolation) and Horizontal Shear Analysis — those appear only for
insulated sandwich panels. None of the six solid walls here print them (§A.7).
A.2 The checks Eriksson runs, with the method as printed
| check | where | method / criterion as printed |
|---|---|---|
| Flexure | handling + in-place | `Util = |
| Shear | handling + in-place | ACI 318 detailed method: both Vci and Vcw printed side by side, Vc = min(Vci, Vcw), ϕVn = 0.75·Vc (verified: WPA4.0 p.11 Loc 5.51 → 154.5/206.1 = 0.75). bwd printed as one product (in²). ∞ printed for Vci at a zero-moment station. Settings: Shear Options: Treat as column, Use ACI 22.5.8.2. |
| Axial | in-place only | Columns Pu, ΦPn (C), ΦPn (T), ΦPcrit, Ag. ΦPcrit is the critical buckling load (∞ where slenderness does not bind). Settings: Axial Options: Ignore tensile strength failures, Ignore buckling failures (both defeat-able switches, both ON here). |
| P-M interaction | in-place | ΦMn is read off the interaction diagram at the station's Pu. The one-page summary prints an Interaction Diagram (Controlling Section @ 0.95L) (WPA4.0 p.9). |
| Service tension / cracking | in-place | extreme-fibre tension vs a Cracking limit = 7.5√f'c (= 580.9 psi at 6000, WPA4.0 p.15). Prestressed: Class U 7.5√f'c / Class T transition 12√f'c (WPA4.0 p.15 section view). Non-prestressed: a single Modulus of Rupture 7.5√f'c (SWA1.0 p.10). |
| Service compression | in-place | total compression vs Limit = 0.6 f'c (= 3600 psi at 6000, WPA4.0 p.16 / SWA1.0 p.17). |
| Handling stresses | handling | extreme-fibre tension vs 5√f'ci or 7.5√f'ci (per job, §A.6) and compression vs 0.6 f'ci (= 2100 at 3500), with an fci req column = the f'ci the station would need. This is the check that usually governs stripping (§A.3). |
| Deflection | in-place | vs L / 150 (or L/120, L/240 per job, §A.6). Graph only, no table. |
| Torsion | — | Eriksson Wall does not run torsion for a wall. No torsion table in any of the six. (WPB's torsion table came from Eriksson Beam, a different program, for a lintel.) Not needed for wall parity. |
A.2.1 The Φ ramp (flexure) — development, not strain
Φ in every flexure table runs 0.75 → 0.90 with distance from the piece end
(WPA4.0 p.10: 0.75 at 1.84 ft, 0.90 by mid-panel). It is ACI 318-19 §21.2.3:
Φ = 0.75 from the end through the transfer length, linear 0.75→0.90 to the
end of the development length, then 0.90 — not the c/dₜ strain transition.
The transfer/development lengths are scaled by the Development Multipliers
setting. WPB proved the mechanism (its own §4.1); these six confirm the ramp and
pin the multiplier at 1.0 for all v4.3.2 runs (§A.6), where WPB used 1.3.
A.3 Handling stages
Two stages are ever enabled on these walls; a third exists and is off:
| Stripping | Transportation | Erection (Primary/Secondary) | |
|---|---|---|---|
| Load Multiplier | 1.4 | 1.5 (WPB) | — (never run in any of the six) |
| Concrete strength | Initial (f'ci) | In-Place (f'c) | — |
| Stress limits | Handling (§A.6) | In-Place | — |
| Lift Type | Static Lift | Static Lift | — |
| Sling Angle | 60° | — | — |
Confirmed WPA4.0 p.7 (Stripping, mult 1.4, Initial, Handling limits, Static,
60°; Transportation/Erection "not being performed") and WPA2.0 p.853 (Stripping,
mult 1.4). The multiplier is the equipment/dynamic factor; no strength-design
load factor stacks on top of it (WPB §6: handling Mu = self-weight × the
stage multiplier, nothing else).
PCI basis & rigging idealisation. The panel is idealised as a beam whose supports are the lifter lines, not dunnage. Lifters are entered as Face Lifters and Top-Edge Lifters, each a number of columns and lateral locations given as a fraction of panel width (WPA4.0 p.7: 2 columns at 0.207 from each side). The run prints:
Panel weighs X kips and its center of gravity is …(WPA4.0 p.7),- Reactions as
Location | Vertical | Horizontal (k)per lifter line, with a Tilt Potential (deg) value (WPA4.0 p.10), - reactions are printed unfactored per lifter while the Stresses/Flexure moments are factored — the run says which is which.
The Stripping Stresses table (WPA4.0 p.10) is the governing handling check:
Loc | Tension | Limit | Comp. | Limit | fci req | Mg | Aps | Losses | Pi | Mzi | Myi.
Pi is the prestress force (negative = compression), Mzi/Myi the prestress
moments about the two axes, Mg the stage moment.
A.4 The In-Place model
The panel is analysed as a member spanning between its restraints (a foundation connection + floor ties — WPA4.0 p.6 lists 5 restrained elevations) under lateral + gravity + axial demand.
Load cases applied (Structural Model, WPA4.0 p.6 / SWA1.0 p.12):
| case | how applied |
|---|---|
| Dead + Self weight | self weight distributed; self-weight eccentricity from panel CG |
| Live, Roof | as part of concentrated loads / tributary |
| Wind | out-of-plane distributed, a W1…W4 table of Pressure and Suction magnitudes (psf), varying start→end over height (WPA4.0 p.6: 68/82 psf then 212/212 psf zones) |
| Seismic | zone(s) over x/L, Cs as % of dead, applied to Deadload + Self weight |
| Earth / soil | interior & exterior soil, elevation + surcharge; lateral pressure coefficient set in Project Information |
| Temperature | exterior/interior °F + thermal-elasticity multiplier (out-of-plane thermal bow) |
| Concentrated axial | P1/P2 … at an elevation with an eccentricity, split Dead/Live/Roof/Pres/Suct/Seis (SWA1.0 p.12: 139.6k D + 44.6k L each) |
Load combinations (Project Information): the ACI 318-14 set with columns
D L R W E T H, printed as Strength (8 combinations: 1.4D; 1.2D+1.6L+0.5R;
… 0.9D+1.0W; 0.9D+1.0E — each with T at 1.0 and soil H at 1.6, Include=1)
and Service (5–10 combinations, WPA4.0 p.4 shows 10; SWA1.0 p.10 shows 5).
The result tables are headed All Combinations and each controlling section
names its governing LC (e.g. WPA4.0 p.9 Flexure LC: LC 7 - 0.9D + 1.0W + 1.0T + 1.6H).
Second-order / slenderness. Settings 2nd Order Effects: P-Delta,
Analysis βd: Non-Sway (all six). The restraints define the unbraced spans; the
axial table's ΦPcrit is the buckling capacity; the summary prints a controlling
P-M interaction section at 0.95L. (WPB additionally printed a Second Order Effects block with kL/r, 1st-order vs 2nd-order moment, % Increase.)
A.5 Service checks
- Tension:
Location | Tension (psi) | Cracking (psi) | M (k-ft) | P (k)(+ prestressAps/Losses/Pi/Mzi/Myi). Cracking = 7.5√f'c. Prestressed runs classify each section Class U (≤7.5√f'c) / Class T (≤12√f'c) (WPA4.0 p.15). Non-prestressed use a single Modulus-of-Rupture 7.5√f'c. - Total Compression:
Location | Comp. (psi) | Limit (psi) | M | P. Limit = 0.6 f'c = 3600 (WPA4.0 p.16, SWA1.0 p.17). - Deflection: graph vs allowable = the deflection limit (§A.6). A
ΔlimandΔmaxalso print in the one-page summary. - The controlling section for each prints a Section View block (section properties Ag/Cx/Cy/Izz/Iyy, θ, strand Aps/%Loss/ex/ey, the stress vs limit).
A.6 Settings / parameters Eriksson exposes (and the per-job variation)
The Settings page is the method statement. Verbatim-equivalent across the six, with the per-job values called out:
Deflection Limit L/150 (WPA3, WPA4) | L/120 (WPA1) | L/240 (WPA2, SWA, MWH)
2nd Order Effects P-Delta | Analysis βd: Non-Sway
Stress Options Failure if cracked | Ignore Lateral Strand Eccentricity
| Use Principal Axis
In-Place Stress Limits Tension 7.5 √fc (Uncracked / Class U) / 12 √fc (Transition
/ Class T) | Compression 0.6 fc | Allowable Δfps 36 ksi
(non-prestressed prints one "Modulus of Rupture 7.5 √fc")
Handling Stress Limits Tension 5 √fc (WPA1, MWH, WPB) OR 7.5 √fc (WPA2, WPA3,
WPA4) | Compression 0.6 fc ← PER-JOB, both occur
Flexure Options Method: Whitney Stress Block | Cracking Check: None
Resistance Factors Developed: Tension 0.90, Compression 0.65, Shear 0.75
Transferring: Tension 0.75
(values verified against the shear tables; the printed
grid's column order is ambiguous — see §A.8)
Development Multipliers Strand Normal 1.0 | Debonded 2.0 | Cut 1.0 | Mild 1.0
(ALL v4.3.2 runs here; WPB v4.13.2 used 1.3 — PER-JOB)
Shear Options Treat as column | Use ACI 22.5.8.2
Axial Options Ignore tensile strength failures | Ignore buckling failures
Prestress Losses PCI Design Handbook | Humidity 70 | Release ~8 hrs |
Erection 30 days
Materials f'ci 2.5–3.5 ksi, f'c 6.0 ksi, 150 pcf normalweight;
strand fpu 270, Ep 28500; mild fy 60, Es 29000
A.7 Result presentation
- Per-check tables, each preceded by a
Legend, aMax/Minheader block, aSummary Graph(x-axis in inches, 11 ticks 0→L) and aSummary Table. Loc.always first, in feet, two decimals. Signs: sagging +, hogging −; a separateθ (deg)column carries the sense (0 sagging / 180 hogging).cprints an inch mark inside the cell.- Zero rows at the piece ends are printed, not suppressed (Φ, ΦMn, Aps all
0.00 there).
∞where a quantity is genuinely unbounded. No colour, no FAIL flag — the verdict lives in theMax Utilization:header and the engineer's margin. - Station spacing ≈ L/20 plus a straddling pair at every geometric discontinuity; Section Properties at L/10 (11 rows).
- A one-page summary (WPA4.0 p.9) collects, per stage: utilizations
(shear/flexure/axial), controlling LC,
Max Comp/Tension vs limit, and the P-M interaction diagram. This is the at-a-glance sheet an engineer reads first. - Column sets, exactly:
- Handling Stresses:
Loc | Tension | Limit | Comp | Limit | fci req | Mg | Aps | Losses | Pi | Mzi | Myi - Flexure (handling):
Loc | Util | Mu | Φ | ΦMn | c | θ | As | A's | Aps | Loss | d - Flexure (in-place) adds
Mcr | Pu | ΦPn(15 cols) - Shear:
Loc | Util | Vu | ϕVn | Vc | Vs Req | bwd | Av Min | Vci | Vcw(Vci/Vcw handling only; in-place drops them) - Axial:
Loc | Util | Pu | ΦPn(C) | ΦPn(T) | ΦPcrit | As | Aps | Loss | Ag - Service Tension:
Loc | Tension | Cracking | M | P | (Aps | Loss | Pi | Mzi | Myi) - Service Compression:
Loc | Comp | Limit | M | P | …
- Handling Stresses:
A.8 What Eriksson Wall does NOT do here (and what is image-only)
Not done for a solid wall — do not build to mimic:
- No torsion (§A.2). No horizontal-shear / percent-composite / C-GRID interpolation — those are sandwich-panel sections (WPB only), absent from all six solid walls.
- No in-plane shear-wall / diaphragm design. SWA1.0's in-plane shear
(
Vc1/Vc2, ACI 11.5.4/11.6,Vcmax = 10√f'c·h·d), overturning/uplift story-by-story spreadsheet, horizontal-joint shear-friction and corbel (PCI 5.3.1) are all hand Mathcad/spreadsheet sheets by the engineer (SWA1.0 p.4–8, p.18). Eriksson Wall itself only did SWA's out-of-plane bending + axial + service. Our tool replaces the Eriksson part, not these. - No minimum-reinforcement / Mcr floor (
Cracking Check: None);Mcris an informational column.
Image-only — flagged, NOT transcribed, needs image verification before any number is trusted:
- Resistance-factor grid (WPA4.0 p.4): the Developed/Transferring × Tension/
Compression/Shear cell placement extracts jumbled (
0.9 / 0.75 / 0.65). The values 0.90/0.65/0.75 are verified against the shear tables and WPB p.71, but confirm the exact cell layout from the rendered page. - Interaction (P-M) diagrams (WPA4.0 p.9, and each service Section View): plotted curves, axis values partially OCR'd — read from image if a numeric PM point is ever needed.
- Summary Graphs on every results section: the curve is an image; only the Summary Table beneath it is text. We rely on the table.
- Cover-sheet strand/reinforcing patterns and stripping-pick geometry
(each p.1): dimensioned drawings — pick fractions (
.104L / .291L) read as text but the layout is an image.
Part B — GAP analysis vs our current code
Scope of what exists today (tools/panelanalysis.py, panelanalysis_schema.py,
schema panelanalysis/1, engine panellift): a self-weight handling beam
solved on structural_model.supports (continuous beam, rigid supports),
strand-only capacity (ΦMn, Mcr informational, ΦVn, f_se) at L/20
stations, section properties at L/10, a demand-vs-capacity table with
M/ΦMn and V/ΦVn ratios, and every In-Place section rendered as an explicit
NOT-BUILT placeholder. Legend of status: (a) covered · (b) partial/different ·
(c) missing.
Ordered by importance for a wall panel: flexure / shear / handling → in-place wind → service → the rest.
Tier 1 — handling & the capacity primitives (build first)
-
(c) Handling STRESS check — the governing stripping check is not computed. Eriksson's Stripping Stresses table (extreme-fibre tension vs
5/7.5√f'ci, compression vs0.6 f'ci, andfci req) is what governs stripping — and we computeΦMnstrength but never the service stress that actually controls. The settings block already carriestension_limit_sqrt_fc/compression_limit_ratio; nothing reads them. Add: extreme-fibre stress from(Pi/A ± Pi·e·y/I ± Mg·y/I)at each station, compared to the two limits, plus thefci reqback-solve. Highest handling priority. -
(b) Handling is one self-weight stage; Eriksson runs staged multipliers. We have a single stage at
loading.self_weight.load_factor. Eriksson runs Stripping ×1.4 @ f'ci with Handling limits and Transportation ×1.5 @ f'c with In-Place limits (and an Erection stage, off here). Add ahandling.stages[]list, each with{multiplier, concrete: initial|in_place, stress_limits: handling|in_place}, and solve/report each. The engine already takes a per-stagefc_psiandmultiplier. -
(b) Handling idealisation is dunnage, not lifters. Eriksson idealises stripping as a beam on lifter lines (Face + Top-Edge lifters at width fractions, sling angle, Tilt Potential, per-lifter Vertical/Horizontal reactions). We solve a beam on generic
supports.panelliftalready models lifters/rigging — wirestructural_modelto carry lifter columns + lateral fractions and let the handling solve use the lift path, reporting reactions per lifter (unfactored) with moments factored, matching Eriksson's split. -
(c) Φ development ramp + development multiplier. Our Φ is a constant 0.90; Eriksson ramps 0.75→0.90 across the transfer→development length (ACI 21.2.3), scaled by the Development Multiplier (1.0 here, 1.3 on WPB). Our
pci.development_length_inapplies no multiplier. Add the ramp to Φ and to the effectiveAps(x); exposedevelopment_length_multiplierin settings (already a field, currently unused). Materially changes near-end capacity. -
(c) Non-prestressed / mild-steel capacity path.
panellift.capacityis strand-only — so WPA1.0, WPA3.0 and SWA1.0 (mild-reinforced walls) cannot be analysed at all today; the tool renders a "no prestress → not computed" box. Eriksson runs full flexure/shear/axial on mildAs(withA's). Add a mild-steel flexural/axial capacity path. Unlocks whole panel classes. -
(b) Shear method. Confirm our
ΦVnuses the Eriksson detailed Vci/Vcw method (Vc = min(Vci, Vcw),ΦVn = 0.75·Vc,bwdas a product,∞at zero-moment) and reports both columns for handling. WPB §4.6 found ourdand √f'c-coefficient handling differed from Eriksson's — re-check against these tables and align, or document the deviation.
Tier 2 — the In-Place engine (the large missing piece, Stage 3)
-
(c) Load-case engine. None of it exists. Build the cases of §A.4: self/dead, live, roof, wind (out-of-plane distributed Pressure + Suction, varying over height), seismic (Cs % of dead over x/L zones), soil (interior/exterior surcharge + lateral coefficient), temperature (thermal bow), and concentrated axial loads at an elevation + eccentricity. The
loading.wind/loading.combinationsfields are alreadyunreadplaceholders waiting for this. The owner has named awallanalysisProject Config module (wind speed, Kzt, ASCE edition, parameter table) as the input source — not built. -
(c) ACI 318-14 load combinations. The
D L R W E T H8 strength / N service matrix, envelopes per station, and the "controlling LC" naming. Prerequisite for everything in-place. -
(c) In-place flexure with axial (P-M interaction). In-place
ΦMnis evaluated at the actualPuon the interaction surface, withMcr,Pu,ΦPncolumns. Our flexure is pure bending, no axial. Add the P-M surface and evaluate demand(Mu, Pu)against it. -
(c) Axial check.
ΦPn(C),ΦPn(T), andΦPcrit(buckling) with utilization — entirely absent. Include the two "ignore tensile/buckling failure" switches from Axial Options. -
(c) Second-order / slenderness. P-Delta with non-sway βd,
kL/rper restrained span, moment magnification, 1st vs 2nd-order% increase. Depends on the restraint model (next). -
(c) Restraint / span model.
structural_model.restraintsis anunreadplaceholder. In-place needs the foundation + floor-tie restraints (elevation, type, gravity/thermal, stiffness) to set spans for both bending and slenderness.
Tier 3 — service, then presentation & settings
-
(c) Service checks. Tension vs cracking (
7.5√f'c; Class U/T12√f'cfor prestressed; Modulus of Rupture for mild), total compression vs0.6 f'c, and deflection vs the per-job limit (L/150etc.). None built. Reuse the extreme-fibre stress primitive from item 1 with in-place loads/limits. -
(b) Settings coverage. Expose the full Settings page: in-place stress limits (
7.5/12√f'c,Δfps 36 ksi), the resistance-factor matrix (developed 0.90/0.65/0.75 + transferring 0.75), stress options (Failure if cracked, Ignore Lateral Strand Eccentricity, Use Principal Axis), shear/axial options, cracking method. Oursettingsblock is thin. Per-job values (handling limit 5 vs 7.5√f'ci; dev multiplier 1 vs 1.3; deflection limit) must be inputs, not constants — both values occur across the six. -
(b) Result presentation parity. Move from our single combined demand-vs-capacity table toward Eriksson's separate Stresses / Flexure / Shear / Axial tables with the exact column sets in §A.7 (
θ,c,Loss,d,As,A's,Aps…), plus the one-page summary (per-stage utilizations, controlling LC, P-M diagram). Lower priority — arithmetic first, layout second. -
(c) Multi-run / multi-section packages. A deck must be able to carry several analysis runs (MWH1.0's
2.1/4.1) and Eriksson's optionalStructural Sections(analysing sub-strips of the cross-section). Our schema assumes one panel/one run.
Explicitly NOT on the punch-list (scope guards)
- Torsion — Eriksson Wall does not run it for a wall (§A.2). Do not add.
- Horizontal shear / percent-composite / C-GRID — sandwich-panel only (WPB), absent from every solid wall here. Needed only when insulated panels enter scope; our code already marks it N/A for a solid section, which is correct.
- In-plane shear-wall / diaphragm / corbel design — the engineer does this by hand (SWA1.0), Eriksson Wall does not, so neither must the replacement.
- 1.2 Mcr floor / minimum-steel check — Eriksson has
Cracking Check: None; keepMcrinformational (matches our current behaviour — do not "fix").
Reconciliation summary (this note vs WPB note)
| item | WPB (v4.13.2, sandwich) | these six (v4.3.2, solid walls) |
|---|---|---|
| section/page order | as §A.1 | identical |
| handling/in-place split | separate .ewf, mild-only vs strand-only |
either separate OR one unified run (WPA4.0); MWH multi-run |
| handling tension limit | 5√f'ci | 5√f'ci (WPA1,MWH) or 7.5√f'ci (WPA2/3/4) — per job |
| development multiplier | 1.3 | 1.0 (all v4.3.2) — per job, confirms WPB open-Q #4 |
| torsion | from Eriksson Beam (lintel) | none |
| horizontal shear / % composite | yes (C-GRID sandwich) | none (solid) |
| Φ ramp, Whitney block, Vci/Vcw, P-M, service limits, combos | as §A.2–A.6 | same method |