Recent Releases of IGM

IGM - IGM v3.1.1

The highlight of this release is a refactor of the enthalpy module, as well as the addition of various horizontal discretizations for the ice-flow solver.

Improvements and Updates

Modules

  • enthalpy:
    • Refactoring: the componenets are now located in separate folders
    • Discretization: independent vertical discretization for enthalpy (Nz_E)
    • BC: option to force basal temperature at pressure melting point
    • Config: more detailed structure with numerics, solver, thermal, arrhenius, drainage, till sections
    • Tests: Kleiner et al. (2015) Exp A & B benchmarks, unit tests
  • iceflow:
    • Discretization: new horizontal discretization framework (basis_horizontal); with Q1 FE, P1 FE, central FD (legacy discretization, remains default)
    • Cost components: adapted to new horizontal discretization framework and new enthalpy grid
    • Renaming: vertical_discr to discr_v, vert_basis to basis_vertical, staggered_grid to basis_horizontal
  • vert_flow:
    • New version 3: based on precomputed discretization matrices

Code maintenance

  • Included missing __init__.py file in enthalpy utils folder to resolve PyPI installation
  • Fixed version for NetCDF compatibility

Contributors: @tgregov, @brfi3983.

Cryosphere - Glacier and Ice Sheets - Python
Published by tgregov 3 months ago

IGM - IGM v3.1.0

Disclaimer: This release is currently broken (with PyPI) due to import issues with the enthalpy module. Please use v3.1.1 or later.

The highlight of this release is a new unified framework for the ice-flow module, accessible via method=unified.

This framework consolidates the existing solver and emulation approaches under a single interface, using the mapping parameter to select the desired mode: identity corresponds to the legacy solver mode, while network corresponds to the legacy emulated mode. The unified framework provides greater flexibility and simplifies long-term maintenance. The legacy solver and emulated modes will eventually be deprecated and removed.

Improvements and Updates

Modules

  • iceflow:
    • Solver: unified framework allowing for more flexible and maintainable ice-flow solver
    • Networks: new neural architectures (FNO, MLP, CNN)
    • Inputs: defaults to normalization of inputs (within unified)
    • Discretization: new flexible vertical discretization for velocity
    • Optimizers: sequential option, halt/convergence criterion
    • BC: update frozen boundary condition for new vertical discretization
    • Performance: uses tf.function for forward pass of the ice-flow model
    • Memory: work in progress for single/double precision support
    • Display: cleaner visualization using rich
    • Renaming:sia to molho, w to theta, gradient to grad, warm_up_it to nbit_warmup
    • Tests: ISMIP-HOM suite, BCs, vertical discretization, data preparation
    • Documentation: update config files and website
  • data_assimilation:
    • Work in progress
  • instructed_oggm:
    • Adapted to IGM 3.0

Code maintenance

  • CI/CD: Added pandoc, mkdocs-bibtex dependencies for documentation

Contributors: @tgregov, @shrrosier, @brfi3983, @jouvetg.

Cryosphere - Glacier and Ice Sheets - Python
Published by tgregov 3 months ago

IGM - IGM v3.0.1

Improvements and Updates

Modules

  • iceflow:
    • Boundary conditions
    • Vertical discretization
    • Progress bar
    • ζ coordinate corrections
    • Tests for L-BFGS optimizer
  • write_vtp:
    • New VTK output module for particle visualization
  • data_assimilation:
    • Work in progress
    • Integration of Optuna features
  • oggm_shop:
    • Added EPSG attribute to output (J. Fürst)
    • Adapted to IGM 3.0 (#41)

Code maintenance

  • Installation:
    • Removed specific Python version requirement (#24)
  • CI/CD:
    • Fixed PyPI packaging with proper __init__.py files

Cryosphere - Glacier and Ice Sheets - Python
Published by brfi3983 3 months ago

IGM - IGM v3.0.0

IGM v3.0.0

Check at more detailed list of changes to transition from version 2 to 3 at : https://igm-model.org/latest/about/transition-IGM-2-to-3/

Improvements and Updates

  • IGM can now deploy multiple runs on a single GPU (if memory allows it)
  • Integration with hydra
  • Improved the code layout and structure
  • Added various modules
    • Damage
    • Stress
    • Improved lagrangian particle tracking

Breaking changes

  • argparse is now replaced with hydra
  • documentation is now moved from wiki to https://igm-model.org/latest/
  • json has been replaced with yaml

Bug fixes

Other changes

Cryosphere - Glacier and Ice Sheets - Python
Published by brfi3983 9 months ago

IGM - v2.2.3

IGM v2.2.3

Bug fixes and other changes

  • Final release before /feature/hydra branch is merged into main

Cryosphere - Glacier and Ice Sheets - Python
Published by brfi3983 9 months ago

IGM - v2.2.2

Cryosphere - Glacier and Ice Sheets - Python
Published by jouvetg almost 2 years ago

IGM - v2.2.1

Cryosphere - Glacier and Ice Sheets - Python
Published by brfi3983 over 2 years ago

IGM - v2.2.0

Cryosphere - Glacier and Ice Sheets - Python
Published by brfi3983 over 2 years ago

IGM - v2.1.0

Cryosphere - Glacier and Ice Sheets - Python
Published by jouvetg over 2 years ago

IGM - v2.0.4

This release includes renaming of parameter and module

Cryosphere - Glacier and Ice Sheets - Python
Published by jouvetg over 2 years ago

IGM - v2.0.0

Cryosphere - Glacier and Ice Sheets - Python
Published by jouvetg over 2 years ago