# PE request package (v1, 12 Sep 2026)

For a Montana-licensed structural engineer to quote from and then to work from. Everything numeric traces to `public/config/wall.config.json` (keys in backticks), `docs/takeoff.json` (the house), `docs/showerhouse-takeoff.json` (the shower house), or a named doc section. Where the model assumes something, it says "assumption". Site loads are left blank for the engineer and the jurisdiction to fill.

Companion files: `docs/engineering/standards-register.md` (which standards govern what), `docs/engineering/test-matrix.md` (what we intend to test and when), `docs/engineering/thermal-evaluation.md` (thermal, written separately).

## (a) What the product is

1. A cast cellular-concrete wall panel on cold-formed steel studs, 4' wide, cast flat in a 4-slot bed with the interior finish face down (`docs/wall-contract.md`).
2. The cast layer is 2" of 35 pcf cellular concrete, then a 1-1/2" cold-rolled channel and basalt mesh zone, then 6" studs at 16"; the first pour is 5" deep so it locks 1-1/2" of the stud into the skin (`concrete.skinPourDepth`).
3. After 7 days the panels are stood, screwed together through the mating edge studs, anchored at the bottom track, wired and plumbed in the open cavity.
4. A 2" cellular-concrete cladding sheet (same mix, cast in the same bed) is screwed to the exterior stud flanges, then the remaining 4-1/2" cavity is pumped full of 30 pcf cellular concrete. Finished wall 11.5" (`docs/wall-contract.md` Stack).
5. The roof is the sister roof-panel system: 2" cover + 1-1/2" channel + 8" studs + 2" cap, cast as strips on the ground (6.5" pour), craned on, then topped (7") in place (`docs/wall-spec-v1.md` §3).
6. **Product 1, the house**: 40' x 29'-11" outside, 34 panels, 10' walls, one wall raised to 12'-6" under a shed roof rising 1"/ft to the view side; flat and 4:12 gable roof presets also exist (`designs.*`).
7. **Product 2, the shower house**: a 1- or 2-bath unit, 8' panels, 10' / 12' / 14' outside widths, 8' to 24' long, on a welded HSS steel skid with fork pockets and four corner lifting lugs, built in the yard and hauled as one piece (`docs/showerhouse.md`). Reference unit 12' x 20', 2 bath, one accessible, flat roof.
8. The shower house floor is a plant panel (the roof strip design cast finish-up, ground pour only) sitting on the skid; there is no slab.
9. The plant and the crew are Ken's; the panels are a manufactured product sold to the builder at a plant sell price (`docs/manufacturing-model.md`).
10. Nothing has been built yet. There are no cylinders, no cast panel, no test data. The animation and takeoffs are a model.

## (b) Design basis, DRAFT

### Materials as modelled

| Material | Model value | Source | Basis |
|---|---|---|---|
| Wall studs and track | 600S162-54 at 16" o.c.; 600T125-54 bottom, top and continuous top track | `studs.designation`, `studs.spacing`, `studs.track`, `connections.topTrack` | assumption (wall-spec §2: lighter than the roof's 68 mil because fill and cladding brace the stud) |
| House roof studs | 800S162-68 at 16" | `roof.studs` | assumption (wall-spec §4 item 7) |
| Gable preset roof studs | 1000S200-97 at 16" | `designs.gable.overrides` | assumption |
| Shower-house roof and floor studs | 600S162-54 at 16" | `products.showerhouse.overrides` `roof.studs` | assumption (`docs/showerhouse.md` "PE to confirm") |
| Steel yield | **Assumed Fy = 50 ksi for 54, 68 and 97 mil** (the SFIA convention for 54 mil and heavier; 33 mil and 43 mil are 33 ksi). Not in the config. The supplier's mill cert and ASTM A1003 designation will fix it | this document | assumption |
| Channel | 1-1/2" cold-rolled channel, 54 mil, rows at 48" starting 12" from the panel end, 2 screws per stud crossing | `channel.*` | model |
| Basalt mesh | 1" grid, one layer in the skin at the 3.5" level and one in the cladding | `mesh.*`, `docs/wall-contract.md` Stack | model; treated as crack control unless the PE says otherwise |
| Skin, cladding, roof concrete | 35 pcf cellular concrete | `concrete.densityPcf`, `roof.concrete.densityPcf` | model |
| Cavity fill | 30 pcf cellular concrete | `concrete.fillDensityPcf` | model |
| Concrete compressive strength | **UNKNOWN.** No C495 data exists. The PE should quote both a calculation-only route that needs no concrete strength and a value to be confirmed by the mix qualification in `test-matrix.md` | this document | open |
| Joint screws | 8 x #10-16 x 3/4" self-drilling per joint, edge stud to edge stud | `connections.jointScrewsPerJoint`, `connections.jointScrew` | assumption |
| Slab anchors | 2 per panel through the bottom track, 1/2" diameter, type not chosen | `connections.slabAnchorsPerPanel`, `connections.anchorDiameter` | assumption (wall-spec §4 item 3) |
| Skid steel | HSS 6x4x1/4 runners (14.53 lb/ft), HSS 4x4x1/4 cross members at 48" (12.21 lb/ft), HSS 8x6x1/4 fork pockets (22.37 lb/ft), 1/2" plate lugs 8" wide standing 6" above the skid top, 10,000 lb rated each; grade not set (A500 assumed) | `skid.*`, `src/geometry/skid.js` SKID_DEFAULTS | placeholder sizes |

### Panel build-up, dimensioned (wall panel, from the interior face outward)

| From interior face | Layer | Thickness | Source |
|---|---|---|---|
| 0" to 2" | Cast finish skin, 35 pcf, basalt mesh near the 2" line | 2" | `panel.skin`, `docs/wall-contract.md` Stack |
| 2" to 3.5" | Channel and mesh zone (1-1/2" cold-rolled channel rows, spacer blocks under each crossing), filled by the skin pour | 1.5" | `channel.depth` |
| 3.5" to 9.5" | 600S162-54 stud zone. The skin pour reaches 5" (1.5" into the stud). Cavity fill from 5" to 9.5" (4.5", 30 pcf) | 6" | `studs.depth`, `concrete.skinPourDepth`, takeoff `panel.stack` |
| 9.5" to 11.5" | Cladding sheet, 35 pcf, mesh, screwed to the exterior flanges | 2" | `panel.cladding` |
| total | | **11.5"** | takeoff `panel.thicknessIn` |

Panel width 48" with a 1/2" joint gap (`panel.jointGap`). Heights: 120" standard, 150" wall A of the shed design, 96" shower house (`panel.height`, `building.wallHeights.A`, `products.showerhouse.overrides`).

Roof strip (house, shed and flat): 2" bottom cover + 1.5" channel + 8" stud + 2" cap = 13.5"; ground pour 6.5" (cover + channel + 3" into the stud), top pour 7" in place (`roof.concrete.*`, takeoff `roof.stack`). Gable: same with 10" studs, 15.5". Shower-house roof and floor: same with 6" studs, 11.5"; the floor panel is the 6.5" ground pour only, cast finish-up (`src/geometry/skid.js` floorPanel).

### Spans and heights

| Item | Value | Source |
|---|---|---|
| Standard wall height | 10' (120"), 9' ceiling | `panel.height`, `site.ceilingHeight` |
| Wall A, shed design | 12'-6" (150"), with a 40" x 24" clerestory opening at sill 120" in every wall-A panel | `building.wallHeights.A`, `roof.clerestory` |
| Shower-house wall height | 8' (96") | `products.showerhouse.overrides` `panel.height` |
| House footprint | 480" x 359" outside (40' x 29'-11"), 34 panels: 21 solid, 1 door, 12 window, plus 10 clerestory bands on wall A | takeoff `building` |
| House roof strips (shed) | 3 strips 14' wide, 33' along the slope; plan 42' x 32'-11" with 24" front / 12" back / 12" side overhangs; 1,387 sf | takeoff `roof` (stripW 168", stripL 396.4", areaSf 1387) |
| **House roof spans** | **15.5' + 13.5' over an interior bearing wall** (the plan's bearing partition); the roof strip is continuous over it in the model | `docs/wall-spec-v1.md` §3 Roof strips |
| Shed rise | 1"/ft toward wall A; underside at 120" at wall C rising 29.9" to the front; overhang eave at 151.9" | `roof.slopePerFoot`, takeoff `roof.riseIn`, `roof.ridgeY` |
| Gable preset | ridge along X at z = 191.5" from the outside face of wall A over the bearing partition; 4:12 front pitch, back pitch derived at about 4.5:12; ridge 71.83" above the wall tops; ridge beam on posts in the bearing partition; 6 strips eave to ridge | `docs/gable-roof.md` Geometry and Result |
| Shower-house roof | flat, 2 strips 126" wide x 144" long, span 12' between the long walls, 6" side overhang only, no front/back overhang, 252 sf | showerhouse takeoff `roof` |
| Shower-house floor panel | 240" x 144" outside, spans across the skid runners at z = 2" and 142" with cross members every 48" | `src/geometry/skid.js` runnerStations, crossStations |
| Overall transport width | never over 168" including the roof edge (Ken's rule) | `docs/showerhouse.md` |

### The two routes and the one chosen

- **Route 1, calculation only.** The studs, track, screws and anchors carry every load; the skin, fill and cladding are non-structural weight and bracing is credited only where AISI S240 lets sheathing brace a stud, or not at all. No concrete strength is needed. Permit under IBC 104.11 / IRC R104.11 on a stamped design basis plus stamped typical details.
- **Route 2, composite, test-backed.** The 5" skin pour and the fill act with the studs; capacity comes from ASTM E72 / E330 assembly tests on production panels and a PE's interpretation. Lighter gauge, fewer screws, a marketing claim. Needs the mix qualified first.
- **Ken's choice: Route 1 first, Route 2 tests in parallel** as the first casts come out of the bed. The PE's first deliverable therefore sizes everything with the concrete as dead load only.

## (c) Load cases the PE must set

### Dead loads computed from the model

Method: layer thickness / 12 x density, plus the flat steel allowance the model uses for the transport weight (`WALL_STEEL_PSF` = 3 psf in `src/geometry/skid.js`; `roof.steelPsf` = 4 psf). The steel allowance is a model number, not a takeoff of the actual stud weight; the PE will replace it with the real section weights.

| Element | Layers | psf | Check |
|---|---|---|---|
| Wall, finished (per sf of wall face) | skin pour 5" x 35 pcf = 14.58; cladding 2" x 35 = 5.83; fill 4.5" x 30 = 11.25; steel 3.0 | **34.7 psf** | 10' wall = 347 plf; 12'-6" wall A = 433 plf; 8' shower house = 277 plf |
| Wall, at the pick (skin pour + steel only) | 14.58 + 3.0 | **17.6 psf** | x 40 sf = 703 lb (the wall-spec's "≈ 700 lb"); x 50 sf = 879 lb (the "≈ 880 lb" wall-A panel) |
| House roof strip, finished (shed/flat) | full 13.5" stack at 35 pcf = 39.38; steel 4.0 | **43.4 psf** | the takeoff treats the whole stack as concrete (57.8 yd³ over 1,387 sf = 13.5"); the stud volume is not deducted |
| House roof strip, at the pick (ground pour only) | 6.5" x 35 = 18.96; steel 4.0 | **23.0 psf** | x 462.4 sf per strip = 10,617 lb (takeoff `roof.pickLb`) |
| Gable roof strip, finished | 15.5" x 35 = 45.21; steel 4.0 | **49.2 psf** | |
| Shower-house roof, finished | 11.5" x 35 = 33.54; steel 4.0 | **37.5 psf** | x 252 sf = 9,736 lb (showerhouse takeoff `unitWeightLb.roof`) |
| Shower-house floor panel | 6.5" x 35 = 18.96; steel 4.0 | **23.0 psf** | x 240 sf = 5,510 lb (`facts.floorPanelPickLb`) |
| Rake infill (shed, walls B and D) | 2.48 yd³ of 35 pcf on the wall tops, 0 at the back to 29.9" at the front | line load on B and D | takeoff `roof.rakeYd3` |

Add: roof membrane, glazing (66.7 sf clerestory in the shed design, `roof.clerestorySf`), interior partitions (cast interior panels in the shower house, 5 in the reference unit), fixtures (the shower house carries a 1,200 lb allowance, `skid.fixturesAllowanceLb`), and the actual stud weight in place of the flat psf.

### Site parameters (the PE and the jurisdiction fill these; nothing here is in the model)

| Parameter | Value | Who supplies it |
|---|---|---|
| Jurisdiction and adopted codes (IBC / IRC / IECC edition, ASCE 7 edition) | ______ | building official |
| Risk category | ______ (II assumed for both products) | PE |
| Ground snow load, pg | ______ psf | jurisdiction; Montana values vary widely by county and elevation and must come from the county or the state snow load study, not from a map guess |
| Roof snow load, including drift against the raised wall A and sliding on the 1"/ft shed | ______ | PE from pg |
| Basic wind speed, exposure category, topographic factor | ______ mph, exposure ______ | PE from the adopted ASCE 7 maps |
| Seismic design category, site class, SDS / SD1 | ______ | PE; a geotech or the default site class |
| Frost depth (house slab and footings; none for the skid) | ______ in | jurisdiction |
| Floor live load | house per IRC / IBC Table 1607.1; shower house per IBC occupancy | PE |
| Roof live load | per IBC 1607 | PE |
| Soil bearing for the house slab | ______ psf | geotech or presumptive |

The shower house is a movable unit: the PE should say whether it is designed for one site's loads or for an envelope (a snow load and a wind speed it can be delivered anywhere under). Ken to decide the envelope with the PE.

## (d) Handling and erection loads

| Case | Facts | Source |
|---|---|---|
| Stripping a wall panel from the bed | panel lies flat on a plastic liner on a 4-slot bed, edge forms 8" tall; stripped after a 7-day cure; only the 5" skin pour and the steel are present, 17.6 psf | `form.*`, `concrete.cureDaysBeforeSet`, §c above |
| Wall panel pick | forklift boom, lift height 60"; ~703 lb for a solid 10' panel, ~879 lb for a 12'-6" wall-A panel; the pick points are not designed (the model shows a boom, no inserts on the wall panels) | `lifting.*`, wall-spec §2 and §4 item 10 |
| Standing and bracing | panels stand on the slab on 2 anchors each and 8 joint screws to the neighbour before the cladding, fill and top track exist; the roof comes after the top track and the fill; the 12'-6" wall A stands unbraced the longest. Temporary bracing is not in the model | wall-spec §4 item 10, `animation.phases` order |
| House roof strip pick | 3 strips at 10,617 lb each at the ground-pour stage, 24 lift inserts total (8 per strip, `roof.picks`), crane day, lift height 80"; strips fly from a yard bed 36" past the wall bed | takeoff `roof.pickLb`, `roof.inserts`, `roof.picks`, `roof.liftHeight`, `roof.yardGap` |
| Gable roof strips | 6 strips, two crane days, strips 227" (front) and 205" (back) long | `docs/gable-roof.md` Result |
| Shower-house roof pick | 2 strips at 2,893 lb, 16 inserts | showerhouse takeoff `roof.pickLb`, `roof.inserts` |
| Shower-house floor panel pick | 5,510 lb, set on the skid | `facts.floorPanelPickLb` |
| **Shower-house unit pick** | unit weight 33,366 lb = panels 14,387 + roof 9,736 + floor 5,510 + skid 2,533 + fixtures allowance 1,200; pick weight with rigging 35,034 lb (1.05 x); four-point pick on the corner lugs with a spreader bar, lugs rated 10,000 lb each; or the two pairs of fork pockets (36" c-c, at 1/4 and 3/4 of the length) | `facts.unitWeightLb`, `facts.transport.pickWeightLb`, `facts.transport.cranePick`, `src/geometry/skid.js` pocketStations |
| Shower-house transport | 144" wide over the roof (167" for the 14' unit; 168" max), 252" long, 113.5" tall skid bottom to roof top, 135.5" on a 22" deck (11'-3.5"); 4 tie-down rings on the outer runners; oversize permit, no pilot car per `docs/showerhouse.md` | `facts.transport` |
| Skid on the ground | two HSS 6x4 runners at the outside width (a third down the middle over 150" outside width), cross members at 48"; the unit sits on whatever the park gives it: gravel pad, blocks, or piers | `skid.wideRunnerOverIn`, `runnerStations` |

The PE should set the handling multipliers (PCI: stripping suction, dynamic factor for the crane and the forklift) and say which of the wall-panel picks needs a designed insert instead of a boom strap.

## (e) Questions for the PE

The ten open items from `docs/wall-spec-v1.md` §4, restated, then the skid and the floor.

| # | Question | What the model assumes today | What we need back |
|---|---|---|---|
| 1 | Stud gauge and spacing for a 10' wall with fill; the 12'-6" wall A with clerestory openings is the governing case | 600S162-54 at 16", 600T125-54 track, Fy 50 ksi assumed | a stud and track designation and spacing for the 10' wall, the 12'-6" wall and the 8' shower-house wall, Route 1 (fill non-structural) |
| 2 | Joint screw pattern between mating edge studs; is a strap or a cast-in weld plate wanted at the corners | 8 x #10-16 x 3/4" per joint, nothing at the corners | a screw size, count and pattern; yes/no on a corner strap or plate, with a detail |
| 3 | Slab anchor type and the base detail | 2 x 1/2" anchors per panel through the bottom track; 4" slab; recess vs track-on-slab vs curb undecided | anchor type (post-installed vs cast-in), size, embedment; one base detail |
| 4 | Fill density and strength; does the fill need mesh or ties to the cladding | 30 pcf, strength unknown, no ties | a density and a minimum strength to specify; yes/no on ties, with spacing if yes |
| 5 | Exterior finish over the cladding | none on the walls (Ken, 6 Sep 2026); roof membrane only | confirm the bare cladding is acceptable as the weather face, or name what it needs (this is durability, see the freeze-thaw and absorption rows of the test matrix) |
| 6 | Window and door frame anchoring to the jamb studs | jambs and headers are 600S162-54 pieces; no anchor detail | a typical jamb / head / sill anchoring detail |
| 7 | Roof studs for the 15.5' + 13.5' spans | 800S162-68 at 16"; shower-house roof 600S162-54 for the 12' span; gable 1000S200-97 | a stud designation per span, Route 1, with the strip continuous over the bearing wall or not |
| 8 | Rake casting detail on walls B and D | wedge cast in place on the sloped top track after the track is set | formed in place vs precast; how the strips bear on the sloped track |
| 9 | Clerestory frames | fixed glass in a 40" x 24" band at sill 120", jambs shared with the window below | frame type and anchoring; flashing under the eave |
| 10 | Taller panel handling | 12'-6" panel at ~879 lb on a forklift boom; bracing until the roof is on is not designed | pick points or a lifting insert for the tall panel; a temporary bracing scheme and the order the roof must go on |
| 11 | Skid member sizes | HSS 6x4x1/4 runners, HSS 4x4x1/4 cross members at 48", HSS 8x6x1/4 pockets; A500 assumed | sizes for the 10', 12' and 14' widths and 8' to 24' lengths, or one size that covers all |
| 12 | Lifting lug design | 1/2" plate, 8" wide, 6" above the skid top, 10,000 lb each, four-point pick at 35,034 lb | lug plate, hole, weld and the proof-load test value; the sling angle limit; whether a spreader bar is required |
| 13 | Fork-pocket reinforcement | HSS 8x6 through the runners, 8 pocket crossings welded | a reinforcement or sleeve detail where the pockets cut the runner webs; the rated forklift load |
| 14 | Floor panel | 6.5" ground pour on 600S162-54 at 16" over the runners, 240" x 144", 3 cast floor drains and sleeves | stud designation for the 12' span, bearing on the runners and cross members, the drain sleeve detail, and whether the 5" skin pour of the wall or the 6.5" roof pour is the right floor thickness |
| 15 | Shower-house tie-downs | 4 rings on the outer runners | the road-load case for the tie-downs and the lugs |

## (f) Deliverables and fee structure

What we want from the PE:

1. A **design basis report** (this document turned into the engineer's own statement of materials, loads, methods and standards) that a building official can accept under IBC 104.11 / IRC R104.11.
2. **Stamped typical details**: panel section, panel-to-panel joint, corner, base to slab, base to skid, top track and roof bearing, rake / sloped track, window and door jamb, clerestory band, roof strip section and bearing, lifting insert and pick, skid with lugs and pockets, floor panel on skid.
3. A **load table** per product: allowable wall height and roof span by stud designation for a stated snow and wind envelope, so a sale does not need a new calculation each time.
4. A **test plan review**: which rows of `docs/engineering/test-matrix.md` the engineer wants before signing, and the acceptance values.
5. Later, **per-project stamps** on the site-specific loads.

Suggested fee structure (for the PE to price, not a number from us):

- **Fixed fee**: the design basis, the typical details and the load table, both products, Route 1.
- **Hourly or fixed add-on**: the test plan review and the interpretation of the E72 / E330 results for Route 2.
- **Per project**: a site-specific stamp on the load table plus any non-typical detail.
- **Later**: support for an ICC-ES evaluation report if the volume justifies it.

What we hand the engineer:

- This file, `standards-register.md`, `test-matrix.md`, `thermal-evaluation.md` (when written).
- `docs/wall-spec-v1.md`, `docs/showerhouse.md`, `docs/gable-roof.md`, `docs/wall-contract.md`.
- `docs/takeoff.json` and `docs/showerhouse-takeoff.json` (every quantity, per panel).
- `public/config/wall.config.json` (the single source for every dimension).
- The animation and section views: https://wall-panel-animator.pages.dev (the house; `?design=flat` and `?design=gable` for the presets; `?product=showerhouse&design=flat` for the shower house), and the hub with plans, estimates and the roof system: https://panel-designs-hub.pages.dev.
- The floor plans `docs/floor-plan.html` / `.svg` and the estimate workbooks in `docs/estimate/`.

## Assumptions in this document that are ours, not the model's

- Fy = 50 ksi for all studs listed.
- Risk category II.
- The 1.05 rigging allowance on the shower-house pick is the model's (`src/pricing/showerhouse.js`), not a rigging standard.
- The 3 psf wall steel and 4 psf roof steel allowances are model constants (`src/geometry/skid.js`, `roof.steelPsf`).
- Steel and HSS grades (A1003, A500) are named by me as the usual products; the supplier decides.
