Skip to main content

htpolynet

High-Throughput Polymer Network Atomistic Simulations

tests PyPI conda-forge Python License: MIT Docs PyPI Downloads

htpolynet is a Python utility for generating atomistic models of cross-linked polymer networks together with appropriate topology and parameter files required for molecular dynamics simulations using Gromacs. It is intended as a fully automated system builder requiring as inputs only the molecular structures of any monomer species, a description of the polymerization chemistry, and a handful of options describing desired system size and composition. htpolynet uses the Generalized Amber Force Field for atom-typing and parameter generation.

Installation

From PyPI:

pip install htpolynet

From conda-forge:

conda install -c conda-forge htpolynet

From source:

git clone git@github.com:cameronabrams/htpolynet.git
cd htpolynet
pip install -e .

Once installed, the user has access to the main htpolynet command.

IMPORTANT NOTES: The programs antechamber, parmchk2 and tleap from AmberTools must be in your path. These can be installed using the ambertools package from conda-forge or compiled from source. You also need Gromacs installed so gmx is in your path. The examples show how to build input monomer structures using OpenBabel, so to use them you need obabel in your path as well.

Docker

As an alternative to a local installation, a prebuilt container image is published at ghcr.io/cameronabrams/htpolynet. It bundles htpolynet together with Gromacs, AmberTools, and OpenBabel, so no additional dependencies are required on the host beyond Docker (and, optionally, the NVIDIA Container Toolkit for GPU runs).

Run htpolynet against a configuration file in the current directory:

docker run --rm -v $(pwd):/work ghcr.io/cameronabrams/htpolynet run config.yaml

With GPU support:

docker run --rm --gpus all -v $(pwd):/work ghcr.io/cameronabrams/htpolynet run config.yaml

A Docker Compose file is also provided in docker/compose.yml for a shorter invocation (docker compose run --rm htpolynet run config.yaml). See docs/source/user-guide/container-usage.rst for the full story, including Singularity/Apptainer use on HPC systems.

Documentation

Please consult documentation at htpolynet.readthedocs.io.

Repository relocation

This repository formerly lived at AbramsGroup/HTPolyNet and now lives at cameronabrams/htpolynet. GitHub redirects the old URLs, so existing clones and forks continue to work; if you prefer, you can update your remote explicitly:

git remote set-url origin git@github.com:cameronabrams/htpolynet.git

Acknowledgments

htpolynet grew out of the original HTPolyNet prototype begun by Ming Huang in 2020. Ketan S. Khare contributed early LAMMPS-related utilities, and S. Alexis Paz contributed a bug fix. The current package is a full rewrite, but the project owes its origins and its published description to that earlier work. When using htpolynet in published work, please cite Huang and Abrams, SoftwareX 21, 101303 (2023), doi:10.1016/j.softx.2022.101303, along with the GAFF and Gromacs papers listed in the documentation.

Meta

Cameron F. Abrams – cfa22@drexel.edu

Distributed under the MIT license. See LICENSE for more information.

https://github.com/cameronabrams

Contributing

  1. Fork it (https://github.com/cameronabrams/htpolynet/fork)
  2. Create your feature branch (git checkout -b feature/fooBar)
  3. Commit your changes (git commit -am 'Add some fooBar')
  4. Push to the branch (git push origin feature/fooBar)
  5. Create a new Pull Request

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

htpolynet-2.2.0.tar.gz (12.3 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

htpolynet-2.2.0-py3-none-any.whl (324.8 kB view details)

Uploaded Python 3

File details

Details for the file htpolynet-2.2.0.tar.gz.

File metadata

  • Download URL: htpolynet-2.2.0.tar.gz
  • Upload date:
  • Size: 12.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for htpolynet-2.2.0.tar.gz
Algorithm Hash digest
SHA256 841b9376dda68b9dd3317854562b9b6ce25ca4a5f488e61555a5b1c6da6936ba
MD5 d7048ecfd23884a3cce9eb890ec07119
BLAKE2b-256 cb703bff7d2416cbe1a92c92461380a6069e452df339297e8446acaa9d07ed1d

See more details on using hashes here.

Provenance

The following attestation bundles were made for htpolynet-2.2.0.tar.gz:

Publisher: release.yaml on cameronabrams/htpolynet

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file htpolynet-2.2.0-py3-none-any.whl.

File metadata

  • Download URL: htpolynet-2.2.0-py3-none-any.whl
  • Upload date:
  • Size: 324.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for htpolynet-2.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e324bfd925d3525144ec9a18a1ae3b5df8dd7657c1656e9f74ba847a5bc1b900
MD5 1a52b9cc47c896410c4202756e381bff
BLAKE2b-256 c19e66b6a31e729ab9baa5f9660b092939ab6a625d65a440a0379f648827d05a

See more details on using hashes here.

Provenance

The following attestation bundles were made for htpolynet-2.2.0-py3-none-any.whl:

Publisher: release.yaml on cameronabrams/htpolynet

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

2.6.0

2 files

2.5.0

2 files

2.4.0

2 files

2.3.1

2 files

2.3.0

2 files

This release

2.2.0 This release

2 files

2.1.0

2 files

2.0.1

2 files

2.0.0

2 files

1.0.9

2 files

1.0.8

2 files

1.0.7.3

2 files

1.0.7.2

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page