Dynamic core overview
NeuralPOM retains two hydrostatic POM implementations for the Double-gyre hybrid AI--physics mainline.
| Core | Registry name | Barotropic integration | Mainline role |
|---|---|---|---|
| Implicit | implicit | Semi-implicit free surface with CG/PCG | Default training and long rollout |
| Explicit | explicit | Split-explicit external-mode subcycling | POM reference, gradient checks, CUDA fast path |
Both cores share the same Double-gyre state interface used by CorrectorNet, the trainer, CorePool, and inference runners. Core selection remains configuration driven:
from neuralpom.core_factory import resolve_core_class
ImplicitCore = resolve_core_class("implicit")
ExplicitCore = resolve_core_class("explicit")The core factory intentionally rejects every other family so that unsupported experiments cannot silently enter the production training path.
Shared state
Both implementations advance the same hydrostatic POM state on an Arakawa-C grid with sigma vertical coordinates, Mellor--Yamada turbulence, temperature and salinity tracers, and free-surface/barotropic velocity fields. The hybrid interface packs the prognostic state into 101 channels, applies a neural correction, and injects the corrected state back into the selected core.
See Implicit Core, Explicit Core, and Gradient Safety for implementation details.
