HOOMD-blue version 3.0 A Modern, Extensible, Flexible, Object-Oriented API for Molecular Simulations

HOOMD-blue version 3.0 A Modern, Extensible, Flexible, Object-Oriented API for Molecular Simulations
复制标题

DOI:
10.25080/majora-342d178e-004
复制
发表时间:
2020
期刊:
--
影响因子:
--
通讯作者:
Brandon Butler;Vyas Ramasubramani;Joshua A. Anderson;S. Glotzer
Brandon Butler;Vyas Ramasubramani;Joshua A. Anderson;S. Glotzer
中科院分区:
其他
文献类型:
--
作者:
Brandon Butler;Vyas Ramasubramani;Joshua A. Anderson;S. Glotzer

文献摘要

相似文献

HOOMD-blue是一个用于运行分子动力学和硬粒子蒙特卡罗模拟的库,它使用pybind 11为快速C++内部提供Python接口。该软件包旨在从单个CPU核心扩展到数千个NVIDIA或AMD GPU。在开发HOOMD-blue 3.0版的过程中,我们显著地改进了应用协议接口(API),使其更加灵活、可扩展和Python化。我们还努力为内部C++类和数据结构提供更简单、更高性能的入口点。通过这些更新,我们展示了HOOMD-blue用户如何能够编写完全自定义的Python类,这些类直接集成到模拟运行循环中,并分析以前无法访问的数据。在整个本文中,我们专注于如何实现这些目标,并通过新开发的API的例子解释设计决策。
HOOMD-blue is a library for running molecular dynamics and hard particle Monte Carlo simulations that uses pybind11 to provide a Python interface to fast C++ internals. The package is designed to scale from a single CPU core to thousands of NVIDIA or AMD GPUs. In developing HOOMD-blue version 3.0, we significantly improve the application protocol interface (API) by making it more flexible, extensible, and Pythonic. We have also striven to provide simpler and more performant entry points to the internal C++ classes and data structures. With these updates, we show how HOOMD-blue users will be able to write completely custom Python classes which integrate directly into the simulation run loop and analyze previously inaccessible data. Throughout this paper, we focus on how these goals have been achieved and explain design decisions through examples of the newly developed API.