陆冰验证工具包
livvkit的Python项目详细描述
陆冰验证和确认工具包
livkit是一个基于python的冰盖验证工具包 模型。它旨在提供以下功能:
V&V型
- 数值验证——"我们解方程正确吗?"
- 物理验证——"我们用的物理对吗?"
软件V&V
- 代码验证--"我们构建了我们想要的吗?"
- 性能验证--"我们是否构建了用户所需的内容?"
在livkit中,这些功能分为四个部分:
V&V型
- 数字
- 验证
软件验证与确认
- 验证
- 性能
目前,livkit正在与e3sm一起使用和开发 (能量exascale地球系统模型)和CISM (社区冰原模型),但设计为 可扩展到其他模型。有关进一步的文档,请查看 完整文档
欢迎用户和贡献者!我们会帮助您- 在github上打开问题 以任何理由联系我们。
安装
最新的livkit版本可以通过pip安装
pip install livvkit
另外,livkit是在github上发布的,您可以克隆源代码:
git clone https://github.com/LIVVkit/LIVVkit.git
如果您在安装或依赖项方面遇到任何问题,请在 问题跟踪器或与我们联系!
用法
livkit主要通过命令行中指定的选项进行控制。 要查看选项的完整列表,请运行:
livv -h
验证
在验证模式下,livkit分析并比较回归测试 数据集到引用数据集。例如,livkit可以分析数据集 由建议的CIS2.0.6版本(约400MB;下载)生成 此处)和 将其与从CISM 2.0.0版本(约400MB; 在这里下载。 要运行此示例,请首先将上述两个数据集下载到 目录,打开终端,然后导航到下载目录。 然后,取消数据集的tar:
tar -zxvf cism-2.0.0-tests.20160728.tgz tar -zxvf cism-2.0.6-tests.20160728.tgz
为了方便起见,请将路径导出到两个数据集目录:
exportREF=$PWD/cism-2.0.0-tests/titan-gnu/CISM_glissade exportTEST=$PWD/cism-2.0.6-tests/titan-gnu/CISM_glissade
要运行套件,请使用:
livv -v $TEST$REF -o cism206v200 -s
livkit将运行验证套件,报告结果摘要
在命令行上,在创建的cism206v200中生成一个输出网站
由
-o/--out dir
选项指定的目录,并启动http服务器
(-s/--serve选项
)可以方便地在您喜爱的Web中查看输出
浏览器。livkit会告诉你在
命令行,通常看起来像
http://0.0.0.0:8000/veru test/index.html
验证,扩展
livkit可扩展到更深入或更大的验证分析。
然而,由于这些验证分析需要大量的数据,
许多观测和示例模型输出文件
大到可以在livkit包中分发。因此,我们开发了
Livkit伸展使用
git-lfs(git大文件支持),以便
分发所需的数据。git lfs
可以在或之前安装
在克隆此存储库之后,但在下载之前需要它
所需的数据。您可以确定是否在
通过运行此命令,您的系统:
command -v git-lfs
如果未安装git lfs,则可以按照以下说明安装:
一旦安装了git lfs,克隆并输入此存储库:
git lfs clone https://code.ornl.gov/LIVVkit/lex.git
cd lex
每个扩展名都有一个相关的json配置文件,该文件将描述 扩展的分析代码、数据位置和选项。查看列表 可用的扩展名,您可以运行此命令:
find . -iname "*.json"
要执行这些扩展,请指向livv
通过-e/--extension
选项(或
-v/--validate
选项)。例如,要运行最小的示例扩展,
将输出网站放在valu test
目录中,并为输出网站提供服务
您将运行此命令:
pip install livvkit0
注意:所有扩展配置文件都假定您正在 顶级目录。您可以从任何 目录,但您需要编辑json配置文件中的路径,以便 可以找到所需的文件。
同样,您也可以通过调整 指向模型运行的路径。
更多
有关使用livkit的更多信息,请参阅文档
联系人
如果你想推荐功能,请求测试,讨论贡献, 报告错误、提出问题或出于任何原因联系我们,使用 问题跟踪器
想给我们发个私人信息吗?
约瑟夫·肯尼迪
- github:@jhnednedy
- 电子邮件:kennedyjh[at]ornl.gov
凯瑟琳J.埃文斯
- Github:@kevans32
- 电子邮件:evanskj[at]ornl.gov
如果您发电子邮件给我们,我们建议抄送我们所有人。