间断galerkin有限元库及其求解

pyblitzdg的Python项目详细描述


闪电战

BLITZDG是一个开放源码的库,它为Galerkin和DyPy作为一个Python 3库,使用BLITIZ+++为数组和张量操作提供普通偏微分方程系统的间断的Delphi(DG)求解器。

shallow water wave example

浅水波示例blitzdg输出

Build StatusCoverage Status

支持闪电战:Donate to blitzdg development

从源构建

构建和开发支持已经从仅限linux扩展到mac osx和windows系统。在linux/mingw64上使用gnu make(编写为跨平台)和g++,在mac osx sierra上使用clang++,在windows上使用msvc进行测试。我们的构建系统依赖于生成makefile的跨平台工具。

  1. git clone https://github.com/dsteinmo/blitzdg.git
  2. cd blitzdg && ./pull-deps.sh
  3. cmake . && make advec1d && ./bin/advec1d(这是一个一维平流方程解算器)。
  4. 使用make test运行单元测试。

与Docker一起运行

您还可以在Docker(Linux)容器中运行构建和测试。这个容器基于一个ubuntu 18.04图像。

  1. git clone https://github.com/dsteinmo/blitzdg.git && cd blitzdg
  2. docker build -t blitzdg .
  3. docker run -t blitzdg

依赖关系

  • cmake
  • blitz++
  • SuiteSparse (umfpack, cxsparse)
  • LAPACK
  • metis
  • boost
  • igloo用于bdd风格的测试。
  • vtk用于在副视图中进行可视化。
  • boost-python用于python绑定。

依赖项安装在pull-deps.sh(在ubuntu和mac osx上测试)中有概述。

窗口

为了更好地支持图形api,我们的windows发行版最近从mingw改为msvc,所以目前还缺乏支持。指示很快就会在这里提供。

贡献

我们接受来自公共fork的pull请求,并使用pull请求作为基本存储库中任何新代码的主要传递机制。

如果添加代码,请使用作为项目依赖项包含的igloo测试框架编写测试。您添加的代码将接受同行评审,并将通过我们的Travis CI持续集成过程运行。

感兴趣的开发人员应该在开始之前查阅Guidelines for Contributing

维护人员

首席开发人员

文档

我们使用doxygen主动维护一组交互式文档,供最终用户使用。

文档可以在github的https://wqcg.github.io/blitzdg页面上找到,并通过自动化与主分支保持同步。

许可证

这个项目是根据GNU Public License Version 3授权的。

我们选择许可证的原因是希望保持这个项目及其任何衍生作品的开源,供开发人员、数学家、科学家、工程师和其他可能对这个项目感兴趣的人使用。

联系人

有关该项目的任何问题都可以通过电子邮件发送到project maintainer

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java我的int值在SharedReferences中不被记住   java如何编辑Spring可分页对象?   java如何在gradle中单独调用任务   jvm以编程方式设置最大java堆大小   java如果满足多个条件,如何使用If语句计算数字?   如何在java中从json文件中获取特定值   如何在Sphinx4中为Java语音识别添加自定义语法?   java int[]copy=data;//当数据是数组时会发生什么?   java豪猪管理器。停下来。destroy()不起作用   安卓在API级别28中找不到画布变量   基于SOLID的java冗余   用于talend作业的java Liferay和portlet   从java到安卓的视频流   java获取在控件的类定义中添加自定义控件的场景大小   awt Java IndexOutOfBoundsException   java如何使用Spring JmsTemplate更改MQ头   java遍历数组并打印每个对象   java Google Map api v2标记在我旋转手机和地图“刷新”之前不会移动