Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/EdiGlacUQ/fenics_ice
https://github.com/EdiGlacUQ/fenics_ice
Last synced: about 1 month ago
JSON representation
- Host: GitHub
- URL: https://github.com/EdiGlacUQ/fenics_ice
- Owner: EdiGlacUQ
- License: lgpl-3.0
- Created: 2017-08-26T20:24:36.000Z (over 7 years ago)
- Default Branch: main
- Last Pushed: 2024-07-09T09:04:25.000Z (6 months ago)
- Last Synced: 2024-08-03T16:08:16.907Z (5 months ago)
- Language: Python
- Size: 76.2 MB
- Stars: 4
- Watchers: 4
- Forks: 7
- Open Issues: 14
-
Metadata Files:
- Readme: README.rst
- License: COPYING
- Authors: AUTHORS
Awesome Lists containing this project
- cryosphere-links - Fenics Ice - Ice Sheet model with Bayesian Uncertainty Quantification ([p](https://doi.org/10.5194/gmd-2021-90)). (Ice Sheets and Glaciers / ISG Software)
README
FEniCS_ice
----------**FEniCS_ice is a finite element model framework,
that quantifies the initialization uncertainty
for time-dependent ice sheet models.**FEniCS_ice is a Python code intended for Bayesian quantification of uncertainty
of large-scale parameter sets within an ice-sheet flow model.
The implementation consist of a combination of data assimilation and bayesian inference.
This involves 1) inferring unobserved model parameters from data; 2) determining
the uncertainty of the inferred model parameters; 3) running the forward model to make a
prediction about a quantity of interest (e.g. ice mass loss); 4) Propagating the uncertainty
in the inferred parameters to the model prediction.The code contains a dynamic solver for ice-sheet flow which implements the
Shallow-Shelf Approximation (`MacAyeal et al, 1989.`_)
and approximates parameter covariance using a low-rank approximation to
the inverse of the cost-function Hessian. The code uses Algorithmic Differentiation
to find sensitivity of time-evolving Quantities of Interest to parameter sets,
allowing projections of parameter uncertainty forward in time... _MacAyeal et al, 1989.: https://doi.org/10.1029/JB094iB04p04071
Installation, documentation
---------------------------The documentation website is currently in construction,
but there is a `User guide`_ and a basic installation info below... _User guide: https://github.com/EdiGlacUQ/fenics_ice/tree/main/user_guide
Conda installation:
------------------1. Clone the repository::
git clone https://github.com/EdiGlacUQ/fenics_ice.git
2. To install via `Conda`_ use `install.sh`_, this script will install and test FEniCS_ice.
Be sure to set **CONDA_HOME** before installing, and add the line below to your .bashrc::export FENICS_ICE_BASE_DIR="/path/to/fenics_ice/repo"
3. Run install.sh.
4. Run all serial tests::
pytest -v --order-scope=module --color=yes
5. Run all parallel tests::
mpirun -n 2 pytest -v --order-scope=module --color=yes
Install via Mamba:
------------------1. Clone the repository and create `Mamba`_ environment::
cd fenics_ice
mamba env create -f environment.yml
pip install -e .Make sure the environment "fenics_ice" is activated.
2. Install `tlm_adjoint`_::
git clone https://github.com/EdiGlacUQ/tlm_adjoint.git
cd tlm_adjoint
pip install -e .3. Run all serial tests::
pytest -v --order-scope=module --color=yes
4. Run all parallel tests::
mpirun -n 2 pytest -v --order-scope=module --color=yes
Code source
------------- View the source code `on GitHub`_.
- Report bugs or share your ideas on the `issue tracker`_.
- Improve the model by submitting a `pull request`_... _on GitHub: https://github.com/EdiGlacUQ/fenics_ice
.. _issue tracker: https://github.com/EdiGlacUQ/fenics_ice/issues
.. _pull request: https://github.com/EdiGlacUQ/fenics_ice/pulls.. _Conda: https://docs.conda.io/en/latest/miniconda.html
.. _install.sh: https://github.com/EdiGlacUQ/fenics_ice/blob/main/install.sh
.. _Mamba: https://mamba.readthedocs.io/en/latest/installation.html#micromamba
.. _tlm_adjoint: https://github.com/EdiGlacUQ/tlm_adjointAbout
-----
:Version:
.. image:: https://img.shields.io/badge/python-3.8%2B-blue
:target: https://www.python.org/
:alt: Pypi version
:Citation:
.. image:: https://img.shields.io/badge/Citation-GMD%20paper-orange.svg
:target: https://doi.org/10.5194/gmd-14-5843-2021
:alt: GMD Paper.. image:: https://zenodo.org/badge/DOI/10.5281/zenodo.5153231.svg
:target: https://zenodo.org/record/5153231
:alt: Zenodo:Tests:
.. image:: https://img.shields.io/badge/test-passing-green
:target: https://github.com/EdiGlacUQ/fenics_ice/actions/workflows/test-fice.yml
:alt: Linux build status.. image::
:target:
:alt: Documentation in construction:License:
.. image:: https://img.shields.io/badge/license-GNU--LGPL--v3-green
:target: https://github.com/EdiGlacUQ/fenics_ice/blob/main/COPYING
:alt: GNU LGPL version 3:Authors:
See the `link`_ for a list of all contributors.
.. _link: https://github.com/EdiGlacUQ/fenics_ice/people