GNU General Public License v3.0

项目介绍

jag1g13/pycgtool 是一个托管在 GitHub 上的开源项目,主要使用 Python 编写,采用 GNU General Public License v3.0 许可证,目前获得 67 个 Star、15 次 Fork。

仓库全名
jag1g13/pycgtool
开源许可证
GNU General Public License v3.0
Star 数
67
Fork 数
15
未关闭 Issue
6

README 摘要

PyCGTOOL Generate coarse-grained molecular dynamics models from atomistic trajectories. PyCGTOOL is a tool to aid in parametrising coarse-grained (CG) molecular mechanics models of small molecules, for example for simulations using the popular MARTINI model. It generates coarse-grained model parameters from atomistic simulation trajectories using a user-provided mapping. Equilibrium values and force constants of…

完整内容见 GitHub 原始 README 或本页 。

常见问题

pycgtool 用什么语言开发?

主要使用 Python 编写,采用 GNU General Public License v3.0 许可证,目前有 67 个 Star。

pycgtool 可以免费商用吗?

仓库标注的许可证为 GNU General Public License v3.0,商用前请先阅读仓库 LICENSE 文件确认授权范围。

如何获取 pycgtool 的源码?

可以直接克隆仓库:git clone https://github.com/jag1g13/pycgtool.git;安装与运行步骤见仓库 README。

pycgtool 最近还在维护吗?

仓库最近一次更新为 2025年11月27日,当前有 6 个未关闭 Issue;Star 数为 67,可作为社区活跃度的参考。

关于

Generate coarse-grained molecular dynamics models from atomistic trajectories.

描述取自 GitHub 官方 API,中文内容由 GitRead 中文社区 编辑团队整理。

简要分析

热度分
164
价值分
51
活跃状态
活跃

README

PyCGTOOL

License Python package Documentation DOI PyPi Version conda-forge Version

Generate coarse-grained molecular dynamics models from atomistic trajectories.

PyCGTOOL is a tool to aid in parametrising coarse-grained (CG) molecular mechanics models of small molecules, for example for simulations using the popular MARTINI model. It generates coarse-grained model parameters from atomistic simulation trajectories using a user-provided mapping. Equilibrium values and force constants of bonded terms are calculated by Boltzmann Inversion of bond distributions collected from the input trajectory.

Alternatively map-only mode (behaving similarly to MARTINIZE) may be used to generate initial coordinates to use with existing CG topologies such as the MARTINI lipid models. For instance, a pre-equilibrated atomistic membrane may be used to create starting coordinates for a CG membrane simulation.

PyCGTOOL makes it quick and easy to test multiple variations in mapping and bond topology by making simple changes to the config files.

If you find PyCGTOOL useful, please cite our JCIM paper (https://doi.org/10.1021/acs.jcim.7b00096) and the code itself (https://doi.org/10.5281/zenodo.598143).

@article{Graham2017,
   author = {James A. Graham and Jonathan W. Essex and Syma Khalid},
   doi = {10.1021/acs.jcim.7b00096},
   issn = {1549-9596},
   issue = {4},
   journal = {Journal of Chemical Information and Modeling},
   month = {4},
   pages = {650-656},
   title = {PyCGTOOL: Automated Generation of Coarse-Grained Molecular Dynamics Models from Atomistic Trajectories},
   volume = {57},
   url = {https://pubs.acs.org/doi/10.1021/acs.jcim.7b00096},
   year = {2017},
}

Install

PyCGTOOL requires Python 3.6 or higher and may be installed using either pip or conda:

pip install pycgtool
conda install -c conda-forge pycgtool

Alternatively, you may download a pre-packaged version for your operating system from the releases page on GitHub. These pre-packaged versions include all dependencies and should be suitable in cases where you cannot install packages using one of the above methods. Warning: This installation method is not extensively tested - installing via pip or conda should be prefered in most cases.

MDTraj on macOS

On some versions macOS, with some versions of the Clang compiler, MDTraj may fail to load GROMACS XTC simulation trajectories. If you encounter this issue, please make sure you have the latest version of MDTraj installed.

For more information see MDTraj/#1572.

Usage

Input to PyCGTOOL is an atomistic simulation trajectory in the form of a topology (e.g. PDB, GRO, etc.) and a trajectory file (e.g. XTC, DCD, etc.), along with two custom files which describe the CG model to be generated: mapping (.map) and bonding (.bnd). These files provide the atomistic-to-CG mapping and bonded topology respectively and use a format similar to GROMACS .itp files. Topology and trajectory files are processed using MDTraj so most common formats are accepted.

Example mapping and bond files are present in the test/data directory. The format of these files is described fully in the documentation page on file formats.

For more information, see the tutorial. It is important to perform validation of any new parameter set - a brief example is present at the end of the tutorial.

For a full list of options, see the documentation or use:

pycgtool -h

Generate a Model

To generate a CG model from an atomistic simulation:

pycgtool <topology file> <trajectory file> -m <MAP file> -b <BND file>

Map Only

To use PyCGTOOL to convert a set of atomistic simulation coordinates to CG coordinates:

pycgtool <topology file> -m <MAP file>

Or to convert a complete simulation trajectory:

pycgtool <topology file> <trajectory file> -m <MAP file>

Maintainers

James Graham (@jag1g13)

Contributing

If you experience problems using PyCGTOOL or wish to see a new feature added please open an issue.

To help develop PyCGTOOL, you can create a fork of this repository, clone your fork and install PyCGTOOL in development mode using Poetry:

poetry install

This will result in an editable mode install (similar to pip install -e .) along with all the necessary runtime and development dependencies. Testing and linting is handled by Tox - use tox to run the full test suite and linter as they are configured in the Continuous Integration pipeline.

When you’re ready for your work to be merged, please submit a Pull Request.

License

GPL-3.0 © James Graham, University of Southampton

评论

暂无评论