Verification
5/5 calculation tests · Production surface contract 1/1
- Golden tests 0 / 0
- Boundary tests 0 / 0
- Property tests 5 / 5
- Production surface contract 1 / 1
}
- Engine tested Yes
- Source checked Yes
- Artifact integrity PASS
- Production attestation Embedded snapshot: STALE · Last attested schema matched 1.0.0 snapshot / local build · Semantic contract ✓ · Last attestation PASS · current evidence changed · re-attestation required · Public/cache ✓ · Origin ✓ · Live production status PASS (0 stale; 164 CURRENT) @ 2026-09-18T21:41:56.329Z
- Semantic contract PASS
- Evidence attested at 2026-09-18T21:41:55.460Z
- Last production check 2026-09-18T21:41:55.460Z
- Public / cache PASS
- Origin PASS
- Supplemental domain review Not performed
- Named expert review Not performed
- release artifacts aligned PASS
Fingerprint sha256:92aa004d123df3577218d7021b3154fc10a36af1c3f99d6d327c39e21e3a97bb
Input schema sha256:91df578b8aa1f542f2416839c85d2cfa72ef9bd350ef72b306a5e7377280fdad · Output schema sha256:554ab49b1c781c7aeebf92608cebfd8efd697329cd155b9ad573e8d7a64e25df · Build-time SHA-256 digests prove published artifacts agree with each other (release_integrity.scope=workspace). Production attestation GETs canonical URLs twice (public/cached view and origin), including Capability HTML, via npm run attest:production --write
(published at /.well-known/calculatorx-production-attestation.json) and fails if the public Capability page advertises a different calculation_version. This is artifact consistency, not an independent immutable release log.
Engine identity and declared limitations.
- Tool
- specific-force
- Engine
- specific-force
- Engine build
- 2026-09-18
- Evidence core
- 2026-09-18T20:39:47.149Z
- Rendered
- 2026-09-18T23:14:09.773Z
- Last reviewed
- —
Assumptions
- Rectangular specific force: M = Q²/(gA) + A ȳ with A=b y and ȳ=y/2; SI; default g=9.80665; M is m²
- Unknown is M (force mode) or y (depth invert, subcritical y>yc by default); conjugate y_alt is reported; Fr is reported not an input
- Not hydraulic jump y2 from Fr₁>1; not specific energy E=y+v²/(2g); not Froude as the product; not Manning n; not Q=Av; not critical slope Sc
Limitations
- Rectangular specific force: M = Q²/(gA) + A ȳ with A=b y and ȳ=y/2; SI; default g=9.80665; M is m²
- Unknown is M (force mode) or y (depth invert, subcritical y>yc by default); conjugate y_alt is reported; Fr is reported not an input
- Not hydraulic jump y2 from Fr₁>1; not specific energy E=y+v²/(2g); not Froude as the product; not Manning n; not Q=Av; not critical slope Sc
Sources
Standards and references supporting this tool specification. Methods are listed separately — they are algorithms, not bibliographic sources.
- ISO 80000-4 — Mechanics — Volume flow rate and force
Supports: Q is volume flow; specific force M is force per unit weight per unit width (m²)
- Chow, V.T. Open-Channel Hydraulics — Specific force and sequent depths
Supports: M = Q²/(gA) + A ȳ. Jump sequent y2 from Fr₁>1 is a different product. Specific energy E is a different product.
Published checks
Golden, boundary, and property cases included in this evidence build.
| ID | Kind | Status | Detail |
|---|
property-spf-M | property | pass | M=Q²/(gA)+A y/2 |
property-spf-not-jump | property | pass | Fr<1 not a jump |
property-spf-not-E | property | pass | M≠E |
property-spf-roundtrip-y | property | pass | y roundtrip |
property-spf-model | property | pass | specific_force_rectangular |