v3.1.2
The highlights of this release are a new SR-based data assimilation module, a major overhaul of the data assimilation framework with support for both iceflow backends, and new optimization solvers (MUON, SOAP, improved CG-Newton and Trust Region).
Improvements and Updates
Modules
-
data_assimilation:- Compatibility: new dispatch layer for use with both emulated and unified iceflow
- Fix: early stop with patience for the optimization loop
-
data_assimilation_SR(new):- SR-based inversion with flexible misfit terms (Huber, L²) and regularization (L2, Laplacian-squared)
- Normalization: cost terms normalized by domain area (ice mask)
- Fix: boundary effects in mask-based regularization
-
iceflow:- New:
no_inflowboundary condition - New: NiceNet and CNO emulator architectures
- Schema v3 for pretrained model artifacts with improved loading and validation
- Improved double-precision support
- Sliding: new
u_ref/tau_refconvention for Weertman (more interpretable); Budd and Coulombslidingcodefinitions aligned with Weertman; newuse_mask_grflag to force zero friction on floating areas
- New:
-
pretraining:- Overhaul: warmup phase, cleaner normalization layer, model save/load
- Checkpoint resumption
-
optimizers:- New: MUON and SOAP optimizers
- Improved CG-Newton and Trust Region solvers
- L-BFGS-B: improved bound constraints and memory updates
-
live_dashboard(new):- Real-time monitoring during runs
Code maintenance
- Optuna is now an optional dependency (
pip install igm-model[optuna]) - Early stop with patience for training loops
- Profiler option added
Contributors: @shrrosier, @brfi3983, @tgregov, @jouvetg, @gillian-smith, @tancredeleger.