In this article, we outline the development of a general-purpose Python-based data analysis tool for OpenFOAM 8. Our implementation relies on the construction of OpenFOAM applications that have bindings to data analysis libraries in Python. Double precision data in OpenFOAM is cast to a NumPy array using the NumPy C-API and Python modules may then be used for arbitrary data analysis and manipulation on flow-field information. This document highlights how the proposed framework may be used for an in-situ online singular value decomposition (SVD) implemented in Python and accessed from the OpenFOAM solver PimpleFOAM. Here, `in-situ' refers to a programming paradigm that allows for a concurrent computation of the data analysis on the same computational resources utilized for the partial differential equation solver. In addition, to demonstrate data-parallel analyses, we deploy a distributed SVD, which collects snapshot data across the ranks of a distributed simulation to compute the global left singular vectors. Crucially, both OpenFOAM and Python share the same message passing interface (MPI) communicator for this deployment which allows Python objects and functions to exchange NumPy arrays across ranks. Our experiments also demonstrate how customized data science libraries such as TensorFlow may be leveraged through these bindings. Subsequently, we provide scaling assessments of our framework and the selected algorithms on multiple nodes of Intel Broadwell and KNL architectures for canonical test cases such as the large eddy simulations of a backward facing step and a channel flow at friction Reynolds number of 395.


翻译:在此文章中, 我们为 OpenFOAM 8. 我们的执行依赖于 OpenFoAM 应用程序的构建, 该应用程序对 Python 的数据分析库具有约束力。 OpenFoAM 的双精度数据被投放到 NumPy 阵列中, 使用 NumPy C- API 和 Python 模块进行任意的数据分析和对流场信息进行操作。 此文件突出显示拟议框架如何用于在 Python 中实施并访问 OpenFoAM 的 OpenFoAM 应用程序。 OpenFoAM 应用程序对 PoprofoAM 的数据分析库。 OpenFoAM 的“ 状态” 指的是一个编程模式, 用于同时计算用于部分差异方程式解析的相同计算资源。 此外, 为了演示数据定位器分析, 我们部署的分布式 SVDD, 收集分布式模拟系列的简单数据数据, 以解析全球左向大矢量 。 至关重要, OpenPAM 和 Pyson 的多盘解算器 解算器 的多盘中, 解算式系统 的系统解算法, 和 解算式的系统解算式 的系统解算器的系统解算器的系统解算法 。

0
下载
关闭预览

相关内容

奇异值分解(Singular Value Decomposition)是线性代数中一种重要的矩阵分解,奇异值分解则是特征分解在任意矩阵上的推广。在信号处理、统计学等领域有重要应用。
经济学中的数据科学,Data Science in Economics,附22页pdf
专知会员服务
36+阅读 · 2020年4月1日
Stabilizing Transformers for Reinforcement Learning
专知会员服务
60+阅读 · 2019年10月17日
机器学习入门的经验与建议
专知会员服务
94+阅读 · 2019年10月10日
【电子书推荐】Data Science with Python and Dask
专知会员服务
44+阅读 · 2019年6月1日
分布式并行架构Ray介绍
CreateAMind
10+阅读 · 2019年8月9日
Hierarchically Structured Meta-learning
CreateAMind
27+阅读 · 2019年5月22日
Unsupervised Learning via Meta-Learning
CreateAMind
43+阅读 · 2019年1月3日
分布式TensorFlow入门指南
机器学习研究会
4+阅读 · 2017年11月28日
Arxiv
0+阅读 · 2021年5月11日
Arxiv
0+阅读 · 2021年5月10日
VIP会员
相关VIP内容
经济学中的数据科学,Data Science in Economics,附22页pdf
专知会员服务
36+阅读 · 2020年4月1日
Stabilizing Transformers for Reinforcement Learning
专知会员服务
60+阅读 · 2019年10月17日
机器学习入门的经验与建议
专知会员服务
94+阅读 · 2019年10月10日
【电子书推荐】Data Science with Python and Dask
专知会员服务
44+阅读 · 2019年6月1日
相关资讯
分布式并行架构Ray介绍
CreateAMind
10+阅读 · 2019年8月9日
Hierarchically Structured Meta-learning
CreateAMind
27+阅读 · 2019年5月22日
Unsupervised Learning via Meta-Learning
CreateAMind
43+阅读 · 2019年1月3日
分布式TensorFlow入门指南
机器学习研究会
4+阅读 · 2017年11月28日
相关论文
Top
微信扫码咨询专知VIP会员