跳转到主要内容

未提供项目描述

项目描述

欢迎使用Ensembler

GitHub Actions Build Status codecov Language grade: Python Build package Documentation

描述

Ensembler是一个Python包,它允许快速轻松地访问一维和二维模型系统模拟。它允许使用小型测试系统进行方法开发,并加深对广泛分子动力学(MD)方法的理解,从基本技术到增强采样和自由能计算。它易于安装,快速,增加了科学代码开发的共享性、可比性和可重复性。在这里,我们提供了关于该包实现、使用和自由能计算应用示例的见解。

内容

完整文档可在此处找到: https://rinikerlab.github.io/Ensembler/

势能 - 势能函数

实现用于建模目的的数学函数,例如在化学中。实现新的势能函数很简单,只需覆盖几个函数即可。已实现的势能:谐振子、波函数等。此外,可以使用不同的维度,如1D、2D和ND。

采样器 - 采样方法

本模块提供了集成势函数的集成器。例如,蒙特卡罗、速度修正Verlet。

系统 - 用于模拟

本模块用于使用包含势能函数和采样方法的系统类设置模拟,并可选择其他参数。

系综 - 多副本方法

本模块包含ConveyorBelt的实现,并将包含未来的额外副本交换方法。

可视化

本模块包含预定义的可视化、动画和小部件函数。

分析

本模块目前包含自由能计算。

教程和示例

您可以通过以下binder链接在线尝试Ensembler,或使用我们提供的jupyter笔记本在您的机器上查看Ensembler的使用案例和可视化。binder链接可能需要一些时间来构建库;根据流量,构建时间可能长达10分钟。

教程

我们提供简短介绍,说明如何在Ensembler中使用jupyter笔记本中的示例文件夹中的笔记本对势能函数进行使用和采样。

在Ensembler中进行模拟

以下是一个简单模拟的小示例

代码

##Imports
from ensembler.potentials.OneD import fourWellPotential
from ensembler.samplers.stochastic import langevinIntegrator
from ensembler.system import system
from ensembler.visualisation.plotSimulations import oneD_simulation_analysis_plot

##Simulation Setup
V = fourWellPotential(Vmax=4, a=1.5, b=4.0, c=7.0, d=9.0,  ah=2., bh=0., ch=0.5, dh=1.)
sampler = langevinIntegrator(dt=0.1, gamma=10)
sys = system(potential=V, sampler=sampler, start_position=4, temperature=1)

##Simulate
sys.simulate(steps=1000)

##Visualize
positions = np.linspace(start=0, stop=10, num=1000) #phase space to be visualized
oneD_simulation_analysis_plot(system=sys, title="Langevin Simulation", limits_coordinate_space=positions)

输出

Not Visible with pip

在以下链接中您可以找到更多Ensembler的功能。

势能

Binder

模拟

Binder

示例

示例是高级jupyter笔记本,涵盖特定主题,深入探讨方法并具有漂亮的可视化。

增强采样

Binder

自由能计算

Binder

交互式ConveyorBelt

Binder

EDS-势能

Binder

如何安装

有许多方法可以获得Ensembler包。

  • 如果您想使用Ensembler(不要忘记下载示例)

    pip install ensembler-rinikerlab
  • 如果您想使用Ensembler,请参阅示例笔记本或开发Ensembler

    git clone https://github.com/rinikerlab/Ensembler.git
    cd Ensembler
    python setup.py install
  • 如果您想使用Ensembler,请参阅示例笔记本或开发Ensembler - 但不安装包:添加Ensembler存储库的路径;可以像以下示例一样使用包所需的依赖项

    • PIP

      git clone https://github.com/rinikerlab/Ensembler.git
      cd Ensembler
      export PYTHONPATH=${PYTHONPATH}:${PWD}
      pip install -r devtools/pip_requirements/requirements_unix.txt
    • Anaconda

      git clone https://github.com/rinikerlab/Ensembler.git
      cd Ensembler
      conda create -n Ensembler --file devtools/conda-envs/environment_unix.yml
      conda activate Ensembler

对于Windows,我们也在同一文件夹中提供所需的文件

  • devtools/pip_requirements/requirements_windows.txt

  • devtools/conda-envs/environment_windows.yml)。

贡献

如果您想为Ensembler做出贡献,我们将非常欢迎!只需提出一个问题或给我们发邮件即可。

作者

本杰明·里斯;斯蒂芬妮·M·林克;大卫·F·汉

项目详情


下载文件

下载您平台上的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源代码发行版

ensembler-rinikerlab-1.0.4.tar.gz (123.0 kB 查看哈希值)

上传时间 源代码

由...