The big idea
Every physical system has a hidden knob and things we can measure.
A pendulum’s knob is its angle θ. A battery’s knob is how much usable lithium is left (z: 1 = new, 0 = dead). We rarely see the knob directly. We see its effects: a position, a voltage, a resistance.
If I turn the hidden knob a tiny bit, how much do my measurements move?
The answer is one number, the metric G. General Relativity uses exactly this maths (Riemann’s geometry) to describe curved spacetime. MW borrows it for all physics, not just gravity.
Only three derivative rules needed
d/dθ sin θ = cos θd/dθ cos θ = −sin θd/dz ln z = 1/zd/dz zⁿ = n·zⁿ⁻¹And one matrix step: row × column = multiply the pairs, then add.
Example 1 · A pendulum
Knob = angle θ. Measurement = where the bob is.
With L = 2 m: G = 4 and √G = 2. Turn the knob 0.01 rad and the bob moves 0.02 m, at every angle.
Twist · measure only the height
Same pendulum, poorer sensor. Now G changes with angle.
Example 2 · A battery cell
Knob = z, the usable lithium left. Two measurements: open-circuit voltage x₁ and SEI film resistance x₂.
Volts and ohms are different units, so W gives each its own weight (wV, wR).
| Cell state | z | G |
|---|---|---|
| New | 0.9 | 0.0125 |
| Mid-life | 0.6 | 0.0282 |
| Near the knee | 0.3 | 0.1148 |
From new to the knee G grows 9.2×: the same 0.01 of lithium lost moves the readings about 3× more. The nearer the end, the louder the ageing.
MW does not solve these equations
The examples show the meaning. Here is what actually runs.
The real battery model reads 16 measurements with about 15 uncertain physics parameters: SEI growth, plating, swelling, cracking, temperature sensitivity. Ten values each gives 10¹⁵ combinations, and each would need its own solver run.
From one formula to an early warning
G(z) is flat and calm for a new cell, then climbs fast as the cell ages. The curve bends up before the cell falls off its capacity cliff (the knee). That bend is lead time: replace, re-rate or re-price the warranty before failure.
The recipe, for any physics
With more knobs, G becomes a small table (a matrix). The idea is the same.
Proven on public data
95 LFP cells, two open datasets, held-out testing.
| Sandia (Preger 2020) | HUST (Ma 2022) | |
|---|---|---|
| Cells | 18 | 77 |
| Temperature | 15, 25, 35 °C | 30 °C |
| Fade | steady, near-linear | slow, then a knee |
Task: from one measurement at 100 cycles, forecast the whole SoH path. Median RMSE of the SoH forecast on held-out HUST cells, in percentage points (lower is better):
Where the geometry earns its keep
The monotone model carries one strong prior: SoH can only fall. That keeps its forecast physically possible even on unfamiliar inputs (Sandia: 3.0 vs 20.4 unconstrained). Near the knee the unconstrained model dates end of life better, so the engine runs both and flags a pack when they disagree by more than about 5 points.
The COMSOL / Ansys bottleneck
Keep the solvers. Use them differently.
Each new question needs a full re-solve, on a workstation, HPC or GPU, with licence time every query. Real-time fleet use is impractical.
A few hundred validated runs teach the manifold once. Then any new data is scored on an ordinary CPU in real time, and off-manifold or faked data is flagged.
Go deeper
Differential geometry (O’Neill, do Carmo) and probabilistic programming (Pyro). The full framework is open source at github.com/RahulModak74/MW_Geometric_Intelligence.
Why a short log works (Kennedy–O’Hagan)
Open the original PDF (8 pages)
Use whatever little maths we know to democratise, not to build moats.