Skip to content

matta-research-group/SwiftPol

Repository files navigation

title

status Zenodo PyTest Documentation License GitHub last commit GitHub stars

SwiftPol

Tools for building polydisperse polymer systems for molecular dynamics.

Installation

git clone https://github.com/matta-research-group/SwiftPol

cd SwiftPol
# install requirements into new environment
conda env create --file Dev_tools/swiftpol.yml

conda activate swiftpol

pip install -e .

Contributing to SwiftPol

Features should be developed on branches. To create and switch to a branch, use the command

git checkout -b < new_branch_name >

To switch to an existing branch, use

git checkout < new_branch_name >

To submit your feature to be incorporated to the main branch, you should submit a Pull Request. The repository maintainers will review your pull request before accepting your changes.

Example Notebooks

Examples of using SwiftPol code to build different polymers can be found at Example Notebooks

Dependencies

YAML environment file listing all required packages to use SwiftPol

To use SwiftPol please download the following packages:

  • RDKit
  • openff-interchange
  • openff-toolkit
  • openff-nagl
  • openeye-toolkits
  • openff-units
  • dgl==2.0.0

optional dependencies:

  • espaloma charge

for quick dependency and swiftpol install using conda, run the following commands in bash

conda create -n swiftpol python=3.10 rdkit openff-interchange openff-toolkit openff-nagl dgl=2.0.0 openeye-toolkits nglview openff-units -c conda-forge -c dglteam -c openeye
conda activate swiftpol
git clone https://github.com/matta-research-group/SwiftPol
cd SwiftPol
pip install -e .

Installing With a Docker Container

To install SwiftPol as a docker container, install docker desktop and run the following command in the terminal

docker build --no-cache --platform=linux/amd64 -f Dockerfile -t my-image -t setup/swiftpol:latest .

to open a jupyter notebook run

docker run --rm -it -p 8888:8888 setup/swiftpol:latest

Reporting Issues and Seeking Support

If you encounter issues or erroneous behaviour when using SwiftPol, or would like support with using the software tools please raise an issue.

OpenEye License Guidance

Instructions for implementing an OpenEye License (not essential but speeds up conformation determination)

Citation for OpenEye OMEGA:

Hawkins, P. C. D.; Skillman, A. G.; Warren, G. L.; Ellingson, B. A.; Stahl, M. T. Conformer Generation with OMEGA: Algorithm and Validation Using High Quality Structures from the Protein Databank and Cambridge Structural Database. J. Chem. Inf. Model. 2010, 50 (4), 572–584. https://doi.org/10.1021/ci100031x.

We acknowledge the use of a free academic license provided by OpenEye, Candence Molecular Sciences, Santa Fe, NM https://www.eyesopen.com/

File Tree

.
├── CODE_OF_CONDUCT.md
├── Dev_tools
│   ├── docker.yml
│   └── swiftpol.yml
├── Dockerfile
├── docs
├── Example_Notebooks
│   ├── Chitin.ipynb
│   ├── Crosslinking_demo.ipynb
│   ├── PLGA_demo.ipynb
│   ├── Rubber_Vulcanization.ipynb
│   ├── PDMS_build.ipynb
│   ├── Polyply_integration.ipynb
│   └── rxn_smarts.ipynb
├── LICENSE
├── pyproject.toml
├── README.md
├── Repo
│   ├── crosslinking_flow.png
│   ├── logo.jpg
│   └── SwiftPol.png
├── setup.py
├── swiftpol
│   ├── build.py
│   ├── crosslink.py
│   ├── demo.py
│   ├── utils.py
│   ├── __init__.py
│   ├── meta.yaml
│   ├── parameterize.py
│   └── __version__.py
└── tests
    ├── build_tests.py
    ├── crosslink_tests.py
    ├── demo_tests.py
    ├── utils_tests.py
    └── parameterize_tests.py

Citing SwiftPol

If you have used SwiftPol please cite our paper

Code of Conduct

All repository contributors should follow our code of conduct

Acknowledgements

Project based on the Computational Molecular Science Python Cookiecutter version 1.1.

Copyright (c) 2024, Hannah Turney, Matta Research Group

About

Tools for polymer molecular dynamics simulations

Resources

License

Code of conduct

Stars

14 stars

Watchers

1 watching

Forks

Packages

 
 
 

Contributors