SICOPOLIS-AD v2: tangent linear and adjoint modeling framework for ice sheet modeling enabled by automatic differentiation tool Tapenade

S. S. Gaikwad, L. Hascoet, S. H. K. Narayanan, L. C. Logan, R. Greve and P. Heimbach


We present a new framework for generating derivative code, i.e., tangent linear, adjoint, or Hessian models, of the open-source SImulation COde for POLythermal Ice Sheets (SICOPOLIS). These derivative operators are powerful computational engines to efficiently compute comprehensive gradients or sensitivities of scalar-valued model output, including least-squares model-data misfits or important quantities of interest, to high-dimensional model inputs (such as model initial conditions, parameter fields, or boundary conditions). The new version 2 (SICOPOLIS-AD v2) framework is based on the source-to-source automatic differentiation (AD) tool Tapenade which has recently been open-sourced. The switch from a previous AD tool (OpenAD) used in SICOPOLIS-AD version 1 to Tapenade overcomes several limitations outlined here. In addition, we provide several convenient support tools and workflows for code generation, validation, and data analysis. They include GitLab's Continuous Integration feature for code validation, python scripts that support model configuration, invoking AD, code compilation, and model execution. A new documentation and several tutorials help users to get started. The framework is integrated with the SICOPOLIS model's main trunk and is freely available along with Tapenade.

Journal of Open Source Software (submitted).

Last modified: 2023-01-05