CVP reproduce
Independent re-run pack: fixed input vectors, O3 expected values, oracle version, commands, and the last result summary. This is how a reader moves from “CalculatorX says it passed” to “I can reproduce why it passed.”
Calculation version, protocol version, and evidence revision are distinct.
O3 PASS is a tabulated-vector claim, not a whole-domain proof.
O2: delta vs a separate-module identity (≤2 ULP). Not a cantilever, not a concentrated load, and not a station curve. ≤2 ULP vs O3 applies only to the published tabulated beam-end-moments vectors.
Regenerate the table from the public generator. Independent REST check needs only this page's reproduce.json plus stdlib Python — no repo clone and no mpmath. The CVP runner remains a maintainer command.
Re-running the generator without changing seed or inputs should reproduce table SHA-256 9639a71c443d90a3bd3036a4b93c08de949533e42a5826a70b160bd13b2bd0df. Compare each expected_f64 to the production result within the declared ULP threshold.
Every O3 vector used for the ≤2 ULP claim. Expected values come from the published mpmath table, not from the implementation under test.
| ID | Kind | Inputs | Expected (f64) | Actual | ULP | Status |
|---|---|---|---|---|---|---|
o3-check | check | {"M":"8","L":"2","E":"1","I":"1"} | {"oracle_layer":"analytic","delta":4,"M":8,"L":2,"E":1,"I":1} | {"model":"beam_end_moments_deflection","M":8,"L":2,"E":1,"I":1,"delta":4,"solver":"simply supported equal end moments","convention":"Simply supported span with equal end moments that both sag the span. Midspan δ = M L²/(8 E I). Positive M is the positive deflection direction. I is an input. One end moment is its own page. A point load and a uniform load are their own pages."} | 0 | PASS |
o3-SI | SI | {"M":"1000","L":"2","E":"200e9","I":"1e-5"} | {"oracle_layer":"analytic","delta":0.00025,"M":1000,"L":2,"E":200000000000,"I":0.00001} | {"model":"beam_end_moments_deflection","M":1000,"L":2,"E":200000000000,"I":0.00001,"delta":0.00024999999999999995,"solver":"simply supported equal end moments","convention":"Simply supported span with equal end moments that both sag the span. Midspan δ = M L²/(8 E I). Positive M is the positive deflection direction. I is an input. One end moment is its own page. A point load and a uniform load are their own pages."} | 1 | PASS |
o3-alias | alias | {"moment":"16","span":"2","modulus":"1","Ix":"1"} | {"oracle_layer":"analytic","delta":8,"M":16,"L":2,"E":1,"I":1} | {"model":"beam_end_moments_deflection","M":16,"L":2,"E":1,"I":1,"delta":8,"solver":"simply supported equal end moments","convention":"Simply supported span with equal end moments that both sag the span. Midspan δ = M L²/(8 E I). Positive M is the positive deflection direction. I is an input. One end moment is its own page. A point load and a uniform load are their own pages."} | 0 | PASS |
o3-awkward | awkward | {"M":"13.7","L":"3.5","E":"210000","I":"0.83"} | {"oracle_layer":"analytic","delta":0.00012035642570281124,"M":13.7,"L":3.5,"E":210000,"I":0.83} | {"model":"beam_end_moments_deflection","M":13.7,"L":3.5,"E":210000,"I":0.83,"delta":0.00012035642570281124,"solver":"simply supported equal end moments","convention":"Simply supported span with equal end moments that both sag the span. Midspan δ = M L²/(8 E I). Positive M is the positive deflection direction. I is an input. One end moment is its own page. A point load and a uniform load are their own pages."} | 0 | PASS |
o3-neg | signed | {"M":"-8","L":"2","E":"1","I":"1"} | {"oracle_layer":"analytic","delta":-4,"M":-8,"L":2,"E":1,"I":1} | {"model":"beam_end_moments_deflection","M":-8,"L":2,"E":1,"I":1,"delta":-4,"solver":"simply supported equal end moments","convention":"Simply supported span with equal end moments that both sag the span. Midspan δ = M L²/(8 E I). Positive M is the positive deflection direction. I is an input. One end moment is its own page. A point load and a uniform load are their own pages."} | 0 | PASS |
o3-small | small | {"M":"10","L":"1","E":"1000","I":"0.01"} | {"oracle_layer":"analytic","delta":0.125,"M":10,"L":1,"E":1000,"I":0.01} | {"model":"beam_end_moments_deflection","M":10,"L":1,"E":1000,"I":0.01,"delta":0.125,"solver":"simply supported equal end moments","convention":"Simply supported span with equal end moments that both sag the span. Midspan δ = M L²/(8 E I). Positive M is the positive deflection direction. I is an input. One end moment is its own page. A point load and a uniform load are their own pages."} | 0 | PASS |
o3-stiff | stiff | {"M":"500","L":"1.5","E":"210e9","I":"2e-4"} | {"oracle_layer":"analytic","delta":0.0000033482142857142855,"M":500,"L":1.5,"E":210000000000,"I":0.0002} | {"model":"beam_end_moments_deflection","M":500,"L":1.5,"E":210000000000,"I":0.0002,"delta":0.0000033482142857142855,"solver":"simply supported equal end moments","convention":"Simply supported span with equal end moments that both sag the span. Midspan δ = M L²/(8 E I). Positive M is the positive deflection direction. I is an input. One end moment is its own page. A point load and a uniform load are their own pages."} | 0 | PASS |
o3-long | long | {"M":"200","L":"4","E":"70e9","I":"5e-5"} | {"oracle_layer":"analytic","delta":0.00011428571428571428,"M":200,"L":4,"E":70000000000,"I":0.00005} | {"model":"beam_end_moments_deflection","M":200,"L":4,"E":70000000000,"I":0.00005,"delta":0.00011428571428571428,"solver":"simply supported equal end moments","convention":"Simply supported span with equal end moments that both sag the span. Midspan δ = M L²/(8 E I). Positive M is the positive deflection direction. I is an input. One end moment is its own page. A point load and a uniform load are their own pages."} | 0 | PASS |