In this paper we propose ROManifolds, a Julia-based package geared towards the numerical approximation of parameterized partial differential equations (PDEs) with a rich set of linear reduced order models (ROMs). The library favors extendibility and productivity, thanks to an expressive high level API, and the efficiency attained by the Julia just-in-time compiler. The implementation of the package is PDE agnostic, meaning that the same code can be used to solve a wide range of equations, including linear, nonlinear, single-field, multi-field, steady and unsteady problems. We highlight the main innovations of ROManifolds, we detail its implementation principles, we introduce its building blocks by providing usage examples, and we solve a fluid dynamics problem described by the Navier-Stokes equations in a 3d geometry.
翻译:本文提出ROManiFolds,这是一个基于Julia语言的软件包,专注于参数化偏微分方程(PDEs)的数值逼近,并提供丰富的线性降阶模型(ROMs)集合。该库通过表达性强的高层API和Julia即时编译器实现的效率,兼顾了可扩展性与开发效率。该软件包的实现与具体PDE类型无关,意味着同一套代码可用于求解各类方程,包括线性、非线性、单场、多场、稳态与非稳态问题。我们重点阐述ROManiFolds的核心创新点,详述其实现原理,通过使用示例介绍其基本构建模块,并求解了三维几何中由Navier-Stokes方程描述的流体动力学问题。