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。
[版权声明] :本文文字、代码及图片版权归原作者所有,任何媒体、网站或个人未经本网协议授权不得采集、整理、转载或以其他方式复制发表。已经本站协议授权的媒体、网站,在使用时必须注明“稿件来源:学研谷”。