cosipy

Coupled snowpack and ice surface energy and mass balance model in Python

https://github.com/cryotools/cosipy

Science Score: 59.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 3 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Committers with academic emails
    9 of 22 committers (40.9%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (13.8%) to scientific vocabulary
Last synced: 6 months ago · JSON representation

Repository

Coupled snowpack and ice surface energy and mass balance model in Python

Basic Info
  • Host: GitHub
  • Owner: cryotools
  • License: gpl-3.0
  • Language: Python
  • Default Branch: master
  • Homepage:
  • Size: 251 MB
Statistics
  • Stars: 61
  • Watchers: 15
  • Forks: 36
  • Open Issues: 32
  • Releases: 8
Created over 8 years ago · Last pushed 8 months ago
Metadata Files
Readme License

README.rst

.. image:: https://cryo-tools.org/wp-content/uploads/2019/11/COSIPY-logo-2500px.png

The coupled snowpack and ice surface energy and mass balance model in Python COSIPY solves the energy balance at the surface and is coupled to an adaptive vertical multi-layer subsurface module.

Documentation
-------------
The documentation for COSIPY is available at the following link:
https://cosipy.readthedocs.io/en/latest/

**Confused about migrating to the new .toml configuration system?**
The documentation contains an in-depth tutorial and a guide on upgrading.

Convert your existing configuration files before merging the latest update:

.. code-block:: console

    pip install toml
    git fetch --all
    git checkout master -- convert_config.py
    python convert_config.py  # generate .toml files

This works on any branch regardless of local changes.
Alternatively you can copy and run ``convert_config.py`` into any older COSIPY source tree.

This will preserve your configuration for ``config.py``, ``constants.py``, ``aws2cosipyConfig.py`` and ``wrf2cosipyConfig.py``.
Parameters for ``create_static`` must still be added manually to the generated ``utilities_config.toml``.

Checkout a new branch with a clean version of COSIPY and merge your modifications.
This minimises the number of merge conflicts.
After updating to the latest version of COSIPY, run ``python COSIPY.py --help`` to see how to specify paths to configuration files.
COSIPY will default to ``./config.toml``, ``./constants.toml``, ``./slurm_config.toml``, ``./utilities_config.toml`` in the current working directory.

Installation
------------

Install GDAL:

.. code-block:: console

    sudo apt-get install gdal-bin libgdal-dev
    pip install --upgrade gdal==`gdal-config --version` pybind11  # with pip
    conda install gdal  # with conda

Install COSIPY with pip (for general use):

.. code-block:: console

    pip install cosipymodel
    cosipy-setup  # generate template configuration files
    cosipy-help   # view help

Install COSIPY as an editable (recommended for development):

.. code-block:: console

    git clone https://github.com/cryotools/cosipy.git
    cd cosipy    
    make install          # using conda/mamba
    make install-pip-dev  # using pip

    cosipy-help           # view help

Install COSIPY from source (for development):

.. code-block:: console

    git clone https://github.com/cryotools/cosipy.git
    cd cosipy
    make install-conda-envs                      # install using conda/mamba
    conda install --file conda_requirements.txt  # install with conda

    pip install -r requirements.txt              # install default environment
    pip install -r dev_requirements.txt          # install dev environment

    python3 COSIPY.py -h
    make commands

Communication and Support
-------------------------
We are using the groupware slack for communication (inform about new releases, bugs, features, ...) and support:
https://cosipy.slack.com

About
-----

:Tests:
    .. image:: https://github.com/cryotools/cosipy/actions/workflows/python-app.yml/badge.svg?branch=master
        :target: https://github.com/cryotools/cosipy/actions/workflows/python-app.yml

    .. image:: https://readthedocs.org/projects/cosipy/badge/?version=latest
        :target: https://cosipy.readthedocs.io/en/latest/

    .. image:: http://www.repostatus.org/badges/latest/active.svg
        :target: http://www.repostatus.org/#active

    .. image:: https://travis-ci.org/cryotools/cosipy.svg?branch=master
        :target: https://travis-ci.org/cryotools/cosipy

    .. image:: https://codecov.io/gh/cryotools/cosipy/branch/master/graph/badge.svg
        :target: https://codecov.io/gh/cryotools/cosipy

:Citation:
    .. image:: https://img.shields.io/badge/Citation-GMD%20paper-orange.svg
        :target: https://gmd.copernicus.org/articles/13/5645/2020/

    .. image:: https://zenodo.org/badge/DOI/10.5281/zenodo.3902191.svg
        :target: https://doi.org/10.5281/zenodo.2579668

:License:
    .. image:: https://img.shields.io/badge/License-GPLv3-blue.svg
        :target: http://www.gnu.org/licenses/gpl-3.0.en.html

Owner

  • Name: CryoTools
  • Login: cryotools
  • Kind: organization

Scientific software tools to investigate the cryosphere - community driven, free, open source

GitHub Events

Total
  • Create event: 9
  • Release event: 3
  • Issues event: 24
  • Watch event: 10
  • Delete event: 14
  • Member event: 1
  • Issue comment event: 29
  • Push event: 64
  • Pull request event: 23
  • Fork event: 7
Last Year
  • Create event: 9
  • Release event: 3
  • Issues event: 24
  • Watch event: 10
  • Delete event: 14
  • Member event: 1
  • Issue comment event: 29
  • Push event: 64
  • Pull request event: 23
  • Fork event: 7

Committers

Last synced: 6 months ago

All Time
  • Total Commits: 717
  • Total Committers: 22
  • Avg Commits per committer: 32.591
  • Development Distribution Score (DDS): 0.692
Past Year
  • Commits: 72
  • Committers: 4
  • Avg Commits per committer: 18.0
  • Development Distribution Score (DDS): 0.236
Top Committers
Name Email Commits
AnsArn a****t@g****e 221
gampnico 4****o@u****m 181
Tobias Sauter t****r@u****t 94
Emily Collier e****r@f****e 44
Anselm-Arndt 3****t@u****m 40
Anselm Arndt 3****n@u****m 33
apfelbuzza 3****a@u****m 22
Tobias Sauter g****1@m****e 15
AnsArn y****u@e****m 14
Björn Saß b****s@f****e 10
anz a****t@g****e 6
Marcus Gastaldello 1****o@u****m 6
5ling5h0t d****l@g****e 5
Benjamin Schmidt b****t@l****e 4
Emily Collier c****e@g****m 4
Tobias Sauter g****1@m****e 4
tobias sauter t****r@f****e 4
tobias sauter t****r@t****e 4
Franziska Temme ft@F****x 2
tobias sauter t****r@y****t 2
Niklas N****r@u****t 1
tobias sauter t****r@t****l 1

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 56
  • Total pull requests: 42
  • Average time to close issues: 9 months
  • Average time to close pull requests: about 1 month
  • Total issue authors: 24
  • Total pull request authors: 7
  • Average comments per issue: 1.16
  • Average comments per pull request: 0.38
  • Merged pull requests: 25
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 16
  • Pull requests: 14
  • Average time to close issues: 3 days
  • Average time to close pull requests: about 13 hours
  • Issue authors: 6
  • Pull request authors: 2
  • Average comments per issue: 1.5
  • Average comments per pull request: 0.57
  • Merged pull requests: 9
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • AnsArn (8)
  • benatouba (8)
  • emilycollier (6)
  • apfelbuzza (5)
  • gampnico (3)
  • fmaussion (3)
  • MarcusGastaldello (3)
  • MatteaE (2)
  • David-Loibl (2)
  • zhangte113 (2)
  • gkb999 (1)
  • atraxoo (1)
  • camilomarquez (1)
  • simsegoet (1)
  • Sar1hak (1)
Pull Request Authors
  • gampnico (18)
  • MarcusGastaldello (15)
  • benatouba (12)
  • AnsArn (9)
  • gayashiva (3)
  • Holmgren825 (1)
  • Richteny (1)
Top Labels
Issue Labels
enhancement (13) bug (7) featurerequest (3)
Pull Request Labels
bug (7) enhancement (6)

Packages

  • Total packages: 2
  • Total downloads:
    • pypi 26 last-month
  • Total dependent packages: 0
    (may contain duplicates)
  • Total dependent repositories: 0
    (may contain duplicates)
  • Total versions: 6
  • Total maintainers: 1
proxy.golang.org: github.com/cryotools/cosipy
  • Versions: 3
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent packages count: 5.4%
Average: 5.6%
Dependent repos count: 5.8%
Last synced: 6 months ago
pypi.org: cosipymodel

Coupled snowpack and ice surface energy and mass balance model in Python.

  • Versions: 3
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 26 Last month
Rankings
Dependent packages count: 10.0%
Average: 33.1%
Dependent repos count: 56.3%
Maintainers (1)
Last synced: 6 months ago

Dependencies

docs/requirements.txt pypi
  • distributed >=1.22.0
  • netcdf4 >=1.5.1.2
  • numpy >=1.17.3
  • scipy >=1.1.0
  • sphinx >=2.2.2
  • xarray >=0.14.0
requirements.txt pypi
  • coveralls *
  • dask_jobqueue *
  • distributed <=2.5.2
  • metpy *
  • netcdf4 *
  • numba *
  • numpy *
  • pandas *
  • scipy *
  • xarray <=0.18.2