Hyper.deal 是一个高效的,无矩阵的有限元库,用于使用高阶不连续 Galerkin 方法求解二维至六维偏微分方程。它建立在低维有限元库 deal.II 的基础上,以创建低维网格并对其进行单独操作。我们通过张量产品即时组合这些网格,并提供新的高度优化的特殊用途的无矩阵功能。
该库 Hyper.deal 可根据 LGPL 3.0 许可免费获得。如果您使用 Hyper.deal,请引用参考文献:
@article{munch2020hyperdeal,
title = {hyper.deal: An efficient, matrix-free finite-element library for
high-dimensional partial differential equations},
author = {Munch, Peter and Kormann, Katharina and Kronbichler, Martin},
year = {2020},
eprint = {2020.08110},
archivePrefix = {arXiv},
primaryClass = {cs.MS}
}
论文目前已经提交,可以参考预印本 arXiv.
主要开发人员:
主要贡献者:
Hyper.deal 库基于 deal.II 开发,如果尚未安装 deal.II,则可以使用以下命令进行安装:
git clone https://github.com/dealii/dealii.git
mkdir dealii-build
cd dealii-build/
cmake \
-D DEAL_II_WITH_64BIT_INDICES="ON" \
-D CMAKE_BUILD_TYPE="DebugRelease" \
-D CMAKE_CXX_COMPILER="mpic++" \
-D CMAKE_CXX_FLAGS="-march=native -Wno-array-bounds" \
-D DEAL_II_CXX_FLAGS_RELEASE="-O3" \
-D CMAKE_C_COMPILER="mpicc" \
-D CMAKE_INSTALL_PREFIX="../dealii-install" \
-D DEAL_II_WITH_MPI="ON" \
-D DEAL_II_WITH_P4EST="OFF" \
-D MPIEXEC_PREFLAGS="-bind-to none" \
-D DEAL_II_WITH_LAPACK="ON" \
-D DEAL_II_WITH_HDF5="OFF" \
-D DEAL_II_FORCE_BUNDLED_BOOST="OFF" \
-D DEAL_II_WITH_TRILINOS="OFF" \
-D DEAL_II_WITH_THREADS="OFF" \
-D DEAL_II_WITH_METIS:BOOL="OFF" \
../dealii
make -j20
cd ..
现在,可以构建 Hyper.deal,首先需要指定 deal.II 构建文件夹的路径,例如。./dealii-build:
git clone https://github.com/hyperdeal/hyperdeal.git mkdir hyperdeal-build cd hyperdeal-build/ cmake -D DEAL_II_DIR=../dealii-build ../hyperdeal make -j10 cd ..
您可以通过以下方法检查系统上构建的库的正确性:
cd hyperdeal-build ctest
Doxygen 文档可以通过以下方式构建:
cd hyperdeal-build make doxygen
首先需要了解 deal.II 的一些教程,教程的地址:Tutorial programs,特别是 Step-37 和 Step-67。
[版权声明] :本文文字、代码及图片版权归原作者所有,任何媒体、网站或个人未经本网协议授权不得采集、整理、转载或以其他方式复制发表。已经本站协议授权的媒体、网站,在使用时必须注明“稿件来源:学研谷”。