One model.
The physics lives in the data.
NEMO is a geometry-native, physics-conditioned neural surrogate for multi-physics simulation, with MOOSE as the final judge. Every claim here carries a number and a source.
Not one network per physics.
One trunk that selects its operator.
The physics lives in the data
One trunk selects its operator from a discrete physics-mode id plus material and boundary conditions — not one network per physics. The architecture carries 15 modes; 42 MOOSE generators are proven on real solves.
Coupling by fixed point
52 coupling configurations are classified into C1/C2/C3 tiers. Multi-physics is solved by an in-core fixed-point loop whose stability is measured by a spectral-radius criterion — proven for a linear operator, an estimate for nonlinear couplings.
Escalation, not invention
The classical solver (MOOSE) is the final judge. A missing field is a refusal, never a fabricated value. If the bridge to the solver is unavailable, the code raises an error.
Material input
141,581 materials in the database, 41 in the engine, 4 deeply trained families.
174 formulas, three independent methods.
Every formula-bearing claim was extracted from the code, catalogued, and checked along three independent paths. The result includes what does not check out.
Wolfram Alpha Full Results API — 148 successful live queries
sympy / numpy — 35 checks, 35 PASS
pytest — rev15.0: 996 passed, 85 skipped · root tests/: 563 passed · 0 failed
Status of the 174 claims
| VERIFIED-3WAY | 31 |
| VERIFIED-2WAY | 62 |
| VERIFIED-SYMBOLIC-ONLY | 44 |
| VERIFIED-NUMERIC-ONLY | 16 |
| UNVERIFIABLE-CITED | 10 |
| GAP | 9 |
| NOT-A-CLAIM | 2 |
| Total | 174 |
The no-fake contract
A missing field is a refusal, never a fabricated zero. If the bridge to the solver is unavailable, the code raises an error instead of manufacturing a truth. Uncertainty from an untrained head is not served — a typed 409 comes back, not a number.
Checked against physics itself
A six-layer trust stack checks the prediction against physics, not against another prediction: true physics (∇·u = 2) returns 2.0000. The live MOOSE gate has already rejected a non-improving proposal.
∂physics / ∂shape.
The answer is an editable proposal, not a picture.
The gradient flows through the CutFEM solvers — 20 differentiable physics modes, 125/125 live tests. Geometry travels as a θ envelope of Gaussian surfels: the contract with NeuroCAD that lets the result be edited, not just viewed.
Where the machine meets manufacturing.
The data and the pipelines exist and are smoked end-to-end. The beachhead models are not trained yet — that is declared, not omitted.
PCB thermal
A 113-board corpus, pipeline proven 100/100. A KiCad ingest path takes a raw .kicad_pcb straight to predict(); the mechanism was smoked end-to-end on a real 100×140 mm board with 86 components.
LPBF additive manufacturing
A real MOOSE smoke shows the hot spot travelling through the part (ΔT → 266 K, 7 frames). Process parameters (power density, scan speed, spot radius) are written into material-vector slots 30–32: different (Q, v) gives 97.7 K vs 618 K.
Composites
Classical Lamination Theory (ABD matrices, reduced stiffness Q, transformation), equivalent homogenized constants, ply thermodynamic admissibility, the Tsai-Wu criterion, and pin-jointed draping — validated formulas in the stamp.
Batteries
An electrochemical model, live at 3.32 V; life 1500 cycles, CI [1157, 1945]. Declared limit: this is a simplified lumped surrogate, not a certified Doyle-Fuller-Newman solver.
The honest finding.
This list is part of the product. When one of the numbers below improves, we will change it — not before.
- →Stress sits at 0.3631 local-peak rel-L2 against our own gate of 0.15 — missing it by 2.4× on error and 3.8× on peak location. The model under-predicts the peak in 57–93% of cases.
- →The TRL5 gate for the stress vertical was accepted at ≈0.20 (0.208 ± 0.002, 820 shards, 2 seeds) on the 2048-point protocol. That same protocol understates full-mesh peak error by ~50–90% — the real wall is higher.
- →The UQ head is not trained. The server refuses to serve uncertainty (a typed 409 uq_unavailable), pinned by a test. Until 2026-07-12 this claim was false — the server served numbers from an untrained head; fixed and locked.
- →2-seed disagreement is a weak trust signal (corr 0.265, false-alarm 47–57%) — it is not claimed as calibrated escalation.
- →There is no trained thermal model evaluated on a geometry-disjoint holdout. An earlier 0.0085 figure has been withdrawn.
- →The beachhead surrogates (PCB / LPBF / batteries) have data and pipelines; the models are not trained.
- →Gate 1 — the 48-physics pump — is a separate, still-open claim.
- →Temporal dynamics are code, not a trained model.
- →Of the 174 formulas: 9 are GAP, 10 are UNVERIFIABLE-CITED. Declared, not hidden.
- →Today we train on procedural shapes — that is, on ~0.4% of the CAD corpus we hold (~1M ABC models, 621 GB, plus 27,068 licensed).
- →REV15 is in training. The acceptance gates have not been run. No number, no claim.
Sources: NEMO whitepaper REV14, CAPABILITIES REV14, the TRL5 evidence package and the mathematical validation stamp (2026-07-29).
Want these numbers on your part?
Pilots are arranged individually. Tell us which part and which physics.