数值计算引擎:设计原则、关键组件
2026/7/17 12:23:17 网站建设 项目流程

在前面的博文中,已就大型CAE软件系统设计技术选型职责编排等内容进行了分析总结。数值仿真引擎(求解器)无疑是整个CAE仿真计算中最为关键的部分。因此,后续博文将对这一领域的相关内容做些研究,也希望大家批评指教。

按照现代化软件开发模型/方法,软件开发发首先要围绕需求业务技术等核心约束,结合已有的的实践经验推导出满足关切点设计原则,然后利用现有的、主流的技术给出技术原型。也就是说,此阶段工作主要关注于需求分析与系统设计,一般不涉及具体的技术实现细节。

具体到CAE领域内的数值计算引擎,可以尝试通过对部分知名的开源软件的研究,吸收它们在领域/行业认知技术/非技术约束技术选型关键组件设计等方面的一些经验,进而指导我们的研发工作,这是编写本文的主要出发点。

注1:限于研究水平,分析难免不当,欢迎批评指正。

注2:文章内容会不定期更新。

壹、架构设计

1. 研究素材

本部分以笔记的形式记录求解器开发相关的若干研究素材。

工欲善其事,必先利其器。 居是邦也,事其大夫之贤者,友其士之仁者。--- 《论语·卫灵公》

IOADIOS2
FEMMFEM
Kratos
Netgen/NGSolve
libMesh
Code-Aster
code_saturne
preCICE
Firedrake
FEniCS
MOOSE
DEAL.II
Elmer
Z88
CalculiX
MYSTRAN
FreeFEM
OOFEM
FVMOpenFOAM
MeshMETIS
Scotch
AlgebraPETSc
SLEPc
Intel oneAPI 
BLAS
LAPACK
Eigen
SuperLU

STRUMPACK

MUMPS
Trilinos
SuiteSparse
ScaLAPACK
HYPRE
Ceres Solver
SUNDIALS
Ginkgo

HiOp

ARPACK
LOBPCG
AMG
ParallelMPI

共享内存并行:指令级,线程级别

分布式内存并行:进程级别

The mapping between Data layout and Process layout

Boost.Compute
ViennaCL
Kokkos
ToolchainVS Code

Task Explorer

Output Colorizer

Git 

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询