livvkit

Land Ice Verification & Validation Toolkit

https://github.com/livvkit/livvkit

Science Score: 36.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
  • Academic publication links
  • Committers with academic emails
    10 of 15 committers (66.7%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (16.7%) to scientific vocabulary

Keywords

ice-sheet-models testing validation verification

Keywords from Contributors

climate-model glacier climate-analysis e3sm mpas mpas-analysis
Last synced: 6 months ago · JSON representation

Repository

Land Ice Verification & Validation Toolkit

Basic Info
  • Host: GitHub
  • Owner: LIVVkit
  • License: bsd-3-clause
  • Language: Python
  • Default Branch: master
  • Size: 22.5 MB
Statistics
  • Stars: 9
  • Watchers: 8
  • Forks: 5
  • Open Issues: 14
  • Releases: 13
Topics
ice-sheet-models testing validation verification
Created over 10 years ago · Last pushed 10 months ago
Metadata Files
Readme Contributing License Code of conduct

README.md

The land ice verification and validation toolkit

LIVVkit is a python-based toolkit for verification and validation of ice sheet models. It aims to provide the following capabilities:

Model V&V * Numerical verification -- "Are we solving the equations correctly?" * Physical validation -- "Are we using the right physics?"

Software V&V * Code verification -- "did we build what we intended?" * Performance validation -- "did we build what the users wanted?"

Within LIVVkit, these capabilities are broken into four components:

Model V&V * Numerics * Validation

Software V&V * Verification * Performance

Currently, LIVVkit is being used and developed in conjunction with E3SM (Energy Exascale Earth System Model) and CISM (Community Ice Sheet Model), but is designed to be extensible to other models. For further documentation view the full documentation.

Users and contributors are welcome! We’ll help you out – open an issue on github to contact us for any reason.

Installation

The latest LIVVkit release can be installed via pip:

sh pip install livvkit

Additionally, LIVVkit is released on github, and you can clone the source code:

sh git clone https://github.com/LIVVkit/LIVVkit.git

If you are having any troubles with installation or dependencies, open an issue on the issue tracker or contact us!

Usage

LIVVkit is primarily controlled via options specified at the command line. To see the full list of options, run:

sh livv -h

Verification

In verification mode, LIVVkit analyzes and compares a regression testing dataset to a reference dataset. For example, LIVVkit may analyze the dataset produced from a proposed CISM 2.0.6 release (~400MB; download here) and compare it to the dataset produced from the CISM 2.0.0 release (~400MB; download here). To run this example, first download the two aforementioned datasets to a directory, open a terminal, and navigate to your download directory. Then, un-tar the datasets:

sh tar -zxvf cism-2.0.0-tests.20160728.tgz tar -zxvf cism-2.0.6-tests.20160728.tgz

For ease, export the path to the two dataset directories:

sh export REF=$PWD/cism-2.0.0-tests/titan-gnu/CISM_glissade export TEST=$PWD/cism-2.0.6-tests/titan-gnu/CISM_glissade

To run the suite, use:

sh livv -v $TEST $REF -o cism206v200 -s

LIVVkit will run the verification suite, report a summary of the results on the command line, produce an output website in the created cism206v200 directory specified by the -o/--out-dir option, and launch an http server (the -s/--serve option) to easily view the output in your favorite web browser. LIVVkit will tell you the address to view the website at on the command line, which will typically look like http://0.0.0.0:8000/ver_test/index.html.

Validation, Extensions

LIVVkit is extensible to more in-depth or larger validation analyses. However, because these validation analyses are particularly data intensive, many of the observational and example model output files are much too large to distribute in the LIVVkit package. Therefore, we've developed a LIVVkit Extensions repository (LEX) which uses git-lfs (Git Large File Support) in order to distribute the required data. git-lfs can be installed either before or after cloning this repository, but it will be needed before downloading the required data. You can determine if you have git-lfs installed on your system by running this command:

sh command -v git-lfs

If git-lfs is not installed, you can install it by following the instructions here:

https://git-lfs.github.com

Once git-lfs is installed, clone and enter this repository:

sh git lfs clone https://code.ornl.gov/LIVVkit/lex.git cd lex

Each extension will have an associated JSON configuration file which will describe the extension's analysis code, data locations, and options. To see a list of available extensions, you can run this command:

sh find . -iname "*.json"

To execute any of these extensions, point livv to any of these extensions config file via the -e/--extension option (or the -V/--validate option). For example, to run the minimal example extension, place the output website in the val_test directory, and serve the output website you'd run this command:

sh livv -e example/example.json -o vv_test -s

Note: All the extension configurations files assume you are working from the top level lex directory. You can run any of these extensions from any directory, but you will need to edit the paths in the JSON configuration files so that livv can find the required files.

Likewise, you can also apply these analyses to any new model run by adjusting the paths to point to your model run.

More

For more information about using LIVVkit see the documentation.

Contact

If you would like to suggest features, request tests, discuss contributions, report bugs, ask questions, or contact us for any reason, use the Issue Tracker.

Want to send us a private message?

Joseph H. Kennedy * github: @jhkennedy * email: kennedyjh [at] ornl.gov

Katherine J. Evans * github: @kevans32 * email: evanskj [at] ornl.gov

If you're emailing us, we recommend CC-ing all of us.

Owner

  • Name: Land Ice Verification and Validation toolkit
  • Login: LIVVkit
  • Kind: organization

GitHub Events

Total
  • Create event: 1
Last Year
  • Create event: 1

Committers

Last synced: 6 months ago

All Time
  • Total Commits: 823
  • Total Committers: 15
  • Avg Commits per committer: 54.867
  • Development Distribution Score (DDS): 0.642
Past Year
  • Commits: 9
  • Committers: 2
  • Avg Commits per committer: 4.5
  • Development Distribution Score (DDS): 0.222
Top Committers
Name Email Commits
Joseph H Kennedy k****h@o****v 295
arbennett b****r@o****v 179
arbennett b****r@g****m 120
boghozianaj b****j@o****v 77
Joseph H Kennedy me@j****g 66
evanskj e****j@o****v 31
Michael Kelleher k****e@g****m 18
sprice s****e@l****v 13
ranken r****n@l****v 9
imn n****r@o****v 7
Jeremy Fyke f****e@l****v 3
matthewsne m****e 2
juelfsea j****a 1
lipscomb l****b@l****v 1
mhoffman m****n@l****v 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 35
  • Total pull requests: 22
  • Average time to close issues: 11 months
  • Average time to close pull requests: 4 days
  • Total issue authors: 3
  • Total pull request authors: 3
  • Average comments per issue: 0.89
  • Average comments per pull request: 0.14
  • Merged pull requests: 21
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • jhkennedy (33)
  • kevans32 (1)
  • arbennett (1)
Pull Request Authors
  • jhkennedy (18)
  • mkstratos (3)
  • TrellixVulnTeam (1)
Top Labels
Issue Labels
enhancement (23) bug (9) wontfix (1) invalid (1) help wanted (1) wiki (1) question (1)
Pull Request Labels
bug (3) enhancement (3)

Packages

  • Total packages: 4
  • Total downloads:
    • pypi 526 last-month
  • Total dependent packages: 2
    (may contain duplicates)
  • Total dependent repositories: 5
    (may contain duplicates)
  • Total versions: 41
  • Total maintainers: 2
proxy.golang.org: github.com/LIVVkit/LIVVkit
  • Versions: 14
  • 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
proxy.golang.org: github.com/livvkit/livvkit
  • Versions: 14
  • 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: livvkit

The land ice verification and validation toolkit

  • Versions: 10
  • Dependent Packages: 1
  • Dependent Repositories: 5
  • Downloads: 526 Last month
Rankings
Dependent packages count: 3.2%
Dependent repos count: 6.7%
Forks count: 15.4%
Average: 16.1%
Stargazers count: 19.4%
Downloads: 35.5%
Maintainers (2)
Last synced: 6 months ago
conda-forge.org: livvkit

LIVVkit is a python-based toolkit for verification and validation of ice sheet models. It aims to provide both model V&V (numerical verification, physical validation) and software V&V (code verification and performance validation).

  • Versions: 3
  • Dependent Packages: 1
  • Dependent Repositories: 0
Rankings
Dependent packages count: 28.8%
Dependent repos count: 34.0%
Average: 42.0%
Forks count: 51.6%
Stargazers count: 53.5%
Last synced: 6 months ago

Dependencies

setup.py pypi
  • jinja2 *
  • json_tricks ==3.11.0
  • matplotlib *
  • netCDF4 *
  • numpy *
  • pandas *
  • pybtex *
  • scipy *