我有一些编程语言的经验,如 C/C++、Fortran、Python 等,但最近,我对 Julia 产生了兴趣。
但是,我想知道 Julia 是否可用于创建一些大型 CFD 软件,例如 OpenFOAM(用 C++ 编写):网格实用程序、求解器、并行计算等。
所以我的问题是,对于这样的规模,朱莉娅真的能胜任这项任务吗?
我有一些编程语言的经验,如 C/C++、Fortran、Python 等,但最近,我对 Julia 产生了兴趣。
但是,我想知道 Julia 是否可用于创建一些大型 CFD 软件,例如 OpenFOAM(用 C++ 编写):网格实用程序、求解器、并行计算等。
所以我的问题是,对于这样的规模,朱莉娅真的能胜任这项任务吗?
我认为这个问题太主观了,无法回答。最后,几乎所有与 PDE 解决方案有关的 C++ 库都提供了出色的 C++ 库,而 Julia 环境中则基本上没有这些库。
想到的例子是用于线性代数的 PETSc/Trilinos,用于离散化的 deal.II/libmesh/FEniCS 等。如果你想在 Julia 中完成所有这些工作,你将不得不重复很多很多年的工作。可能吗?当然是。值得吗——不,一点也不。
为了让您了解所需的工作水平:我最好的猜测是,每个完成研究生的基于 deal.II 的软件项目可能会在 deal.II 中运行 200,000 行 C++ 代码,如果它使用任何有趣的线性求解器,求解器包中的另外 100,000 行代码。但是经验丰富的全职程序员每年只编写 20,000 行代码——换句话说,如果没有现有的软件库,这些学生的程序将需要 15 年的时间来编写。