当前位置: X-MOL 学术Comput. Phys. Commun. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
freud: A software suite for high throughput analysis of particle simulation data
Computer Physics Communications ( IF 7.2 ) Pub Date : 2020-09-01 , DOI: 10.1016/j.cpc.2020.107275
Vyas Ramasubramani , Bradley D. Dice , Eric S. Harper , Matthew P. Spellings , Joshua A. Anderson , Sharon C. Glotzer

Abstract The freud Python package is a library for analyzing simulation data. Written with modern simulation and data analysis workflows in mind, freud provides a Python interface to fast, parallelized C++ routines that run efficiently on laptops, workstations, and supercomputing clusters. The package provides the core tools for finding particle neighbors in periodic systems, and offers a uniform API to a wide variety of methods implemented using these tools. As such, freud users can access standard methods such as the radial distribution function as well as newer, more specialized methods such as the potential of mean force and torque and local crystal environment analysis with equal ease. Rather than providing its own trajectory data structure, freud operates either directly on NumPy arrays or on trajectory data structures provided by other Python packages. This design allows freud to transparently interface with many trajectory file formats by leveraging the file parsing abilities of other trajectory management tools. By remaining agnostic to its data source, freud is suitable for analyzing any particle simulation, regardless of the original data representation or simulation method. When used for on-the-fly analysis in conjunction with scriptable simulation software such as HOOMD-blue, freud enables smart simulations that adapt to the current state of the system, allowing users to study phenomena such as nucleation and growth. Program summary Program Title: freud Program Files doi: http://dx.doi.org/10.17632/v7wmv9xcct.1 Licensing provisions: BSD 3-Clause Programming language: Python, C++ Nature of problem: Simulations of coarse-grained, nano-scale, and colloidal particle systems typically require analyses specialized to a particular system. Certain more standardized techniques – including correlation functions, order parameters, and clustering – are computationally intensive tasks that must be carefully implemented to scale to the larger systems common in modern simulations. Solution method: freud performs a wide variety of particle system analyses, offering a Python API that interfaces with many other tools in computational molecular sciences via NumPy array inputs and outputs. The algorithms in freud leverage parallelized C++ to scale to large systems and enable real-time analysis. The library’s broad set of features encode few assumptions compared to other analysis packages, enabling analysis of a broader class of data ranging from biomolecular simulations to colloidal experiments. Additional comments including restrictions and unusual features: 1. freud provides very fast parallel implementations of standard analysis methods like RDFs and correlation functions. 2. freud includes the reference implementation for the potential of mean force and torque (PMFT). 3. freud provides various novel methods for characterizing particle environments, including the calculation of descriptors useful for machine learning. The source code is hosted on GitHub ( https://github.com/glotzerlab/freud ), and documentation is available online ( https://freud.readthedocs.io/ ). The package may be installed via pip install freud-analysis or conda install -c conda-forge freud .

中文翻译:

弗洛伊德:用于粒子模拟数据高通量分析的软件套件

摘要 弗洛伊德 Python 包是一个用于分析仿真数据的库。考虑到现代模拟和数据分析工作流程,弗洛伊德提供了一个 Python 接口,用于在笔记本电脑、工作站和超级计算集群上高效运行的快速并行 C++ 例程。该软件包提供了在周期系统中寻找粒子邻居的核心工具,并为使用这些工具实现的各种方法提供了统一的 API。因此,弗洛伊德用户可以同样轻松地访问标准方法,例如径向分布函数以及更新、更专业的方法,例如平均力和扭矩的潜力以及局部晶体环境分析。而不是提供自己的轨迹数据结构,freud 直接在 NumPy 数组或其他 Python 包提供的轨迹数据结构上运行。这种设计允许弗洛伊德通过利用其他轨迹管理工具的文件解析能力与许多轨迹文件格式透明地交互。通过对其数据源保持不可知,弗洛伊德适用于分析任何粒子模拟,无论原始数据表示或模拟方法如何。当与 HOOMD-blue 等可编写脚本的模拟软件结合用于实时分析时,弗洛伊德可以实现适应系统当前状态的智能模拟,从而允许用户研究成核和生长等现象。程序摘要程序名称:弗洛伊德程序文件 doi:http://dx.doi.org/10.17632/v7wmv9xcct.1 许可条款:BSD 3-Clause 编程语言:Python,C++ 问题性质:粗粒度、纳米级和胶体粒子系统的模拟通常需要专门针对特定系统的分析。某些更标准化的技术——包括相关函数、顺序参数和聚类——是计算密集型任务,必须仔细实施才能扩展到现代模拟中常见的更大系统。解决方法:弗洛伊德执行各种粒子系统分析,提供 Python API,通过 NumPy 数组输入和输出与计算分子科学中的许多其他工具接口。弗洛伊德中的算法利用并行化的 C++ 来扩展到大型系统并实现实时分析。与其他分析包相比,该库的广泛功能集编码很少的假设,能够分析更广泛的数据,从生物分子模拟到胶体实验。包括限制和异常特征在内的其他评论: 1. 弗洛伊德提供了标准分析方法(如 RDF 和相关函数)的非常快速的并行实现。2. 弗洛伊德包括平均力和扭矩潜力 (PMFT) 的参考实现。3. 弗洛伊德提供了各种表征粒子环境的新方法,包括计算对机器学习有用的描述符。源代码托管在 GitHub ( https://github.com/glotzerlab/freud ) 上,文档可在线获取 ( https://freud.readthedocs.io/ )。该软件包可以通过 pip install freud-analysis 或 conda install -c conda-forge freud 安装。包括限制和异常特征在内的其他评论: 1. 弗洛伊德提供了标准分析方法(如 RDF 和相关函数)的非常快速的并行实现。2. 弗洛伊德包括平均力和扭矩潜力 (PMFT) 的参考实现。3. 弗洛伊德提供了各种表征粒子环境的新方法,包括计算对机器学习有用的描述符。源代码托管在 GitHub ( https://github.com/glotzerlab/freud ) 上,文档可在线获取 ( https://freud.readthedocs.io/ )。该软件包可以通过 pip install freud-analysis 或 conda install -c conda-forge freud 安装。包括限制和异常特征在内的其他评论: 1. 弗洛伊德提供了标准分析方法(如 RDF 和相关函数)的非常快速的并行实现。2. 弗洛伊德包括平均力和扭矩潜力 (PMFT) 的参考实现。3. 弗洛伊德提供了各种表征粒子环境的新方法,包括计算对机器学习有用的描述符。源代码托管在 GitHub ( https://github.com/glotzerlab/freud ) 上,文档可在线获取 ( https://freud.readthedocs.io/ )。该软件包可以通过 pip install freud-analysis 或 conda install -c conda-forge freud 安装。2. 弗洛伊德包括平均力和扭矩潜力 (PMFT) 的参考实现。3. 弗洛伊德提供了各种表征粒子环境的新方法,包括计算对机器学习有用的描述符。源代码托管在 GitHub ( https://github.com/glotzerlab/freud ) 上,文档可在线获取 ( https://freud.readthedocs.io/ )。该软件包可以通过 pip install freud-analysis 或 conda install -c conda-forge freud 安装。2. 弗洛伊德包括平均力和扭矩潜力 (PMFT) 的参考实现。3. 弗洛伊德提供了各种表征粒子环境的新方法,包括计算对机器学习有用的描述符。源代码托管在 GitHub ( https://github.com/glotzerlab/freud ) 上,文档可在线获取 ( https://freud.readthedocs.io/ )。该软件包可以通过 pip install freud-analysis 或 conda install -c conda-forge freud 安装。和文档可在线获取(https://freud.readthedocs.io/)。该软件包可以通过 pip install freud-analysis 或 conda install -c conda-forge freud 安装。和文档可在线获取(https://freud.readthedocs.io/)。该软件包可以通过 pip install freud-analysis 或 conda install -c conda-forge freud 安装。
更新日期:2020-09-01
down
wechat
bug