# pylimer-tools
<!--[](https://github.com/GenieTim/pylimer-tools/actions/workflows/run-tests.yml)
[](https://github.com/GenieTim/pylimer-tools/actions/workflows/run-tests.yml)-->
[](https://codecov.io/gh/GenieTim/pylimer-tools)
[](https://github.com/GenieTim/pylimer-tools/actions/workflows/run-tests.yml)
[](https://github.com/GenieTim/pylimer-tools/actions/workflows/publish-documentation-html.yml)[](https://badge.fury.io/py/pylimer-tools)
[](https://pypi.python.org/pypi/pylimer-tools/)
[](https://pypi.python.org/pypi/pylimer-tools/)
pylimer-tools (with "pylimer" pronounced like "pü-limer", with the "py" as in the German word "müde", IPA: /ˈpyːlɪmɚ/) is a collection of utility Python functions for handling handling bead-spring polymers in Python.
This toolbox provides an Monte Carlo (MC) structure generator,
simulation methods for Dissipative Particle Dynamics (DPD) with slip-springs,
implementations of the Maximum Entropy Homogenization Procedure (MEHP), with and without slip-links,
and various means to read LAMMPS output: be it data, dump or thermodynamic data files.
Additionally, it provides various methods to calculate properties of the bead-spring networks, such as computing the radius of gyration, mean end to end distance, finding loops, or simply splitting a polymer network back up into its chains.
## Installation
Use pip:
`pip install pylimer-tools`
or refer to the [documentation](https://genietim.github.io/pylimer-tools) for instructions on how to compile the package yourself.
## Usage
See the [documentation](https://genietim.github.io/pylimer-tools) for a current list of all available functions.
Example usage can be found in the [documentation](https://genietim.github.io/pylimer-tools/auto_examples/index.html), the [tests](https://github.com/GenieTim/pylimer-tools/tree/main/tests), the [examples](https://github.com/GenieTim/pylimer-tools/tree/main/examples)
or the [CLI applications](https://github.com/GenieTim/pylimer-tools/tree/main//src/pylimer_tools/).
## Contributing
We welcome any contributions right here on [GitHub](https://github.com/GenieTim/pylimer-tools/).
If you have questions, open an [Issue](https://github.com/GenieTim/pylimer-tools/issues), and if you can contribute with code, open a [Pull Request](https://github.com/GenieTim/pylimer-tools/pulls).
If you add new methods or functionality, we kindly ask you to add appropriate [tests](./tests/).
If you change existing functionality, we require the existing tests to pass, or be modified accordingly if they turn out to have been wrong.
Be aware of the scripts provided in [`./bin`](./bin/) to improve your development experience; for example, run `./bin/format-code.sh` before submitting a PR.
## Acknowledgements
The authors gratefully acknowledge financial support from the
Swiss National Science Foundation (SNSF project 200021_204196).
Raw data
{
"_id": null,
"home_page": "https://github.com/GenieTim/pylimer-tools",
"name": "pylimer-tools",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": null,
"keywords": "Polymer, Chemistry, Network, LAMMPS, Science",
"author": "Tim Bernhard",
"author_email": "tim@bernhard.dev",
"download_url": "https://files.pythonhosted.org/packages/24/aa/16505cbe55e79ac273d6f237125b276c0f5526b92a323275e9da56db16e5/pylimer_tools-0.3.1.tar.gz",
"platform": null,
"description": "# pylimer-tools\n\n<!--[](https://github.com/GenieTim/pylimer-tools/actions/workflows/run-tests.yml)\n[](https://github.com/GenieTim/pylimer-tools/actions/workflows/run-tests.yml)-->\n\n[](https://codecov.io/gh/GenieTim/pylimer-tools)\n[](https://github.com/GenieTim/pylimer-tools/actions/workflows/run-tests.yml)\n[](https://github.com/GenieTim/pylimer-tools/actions/workflows/publish-documentation-html.yml)[](https://badge.fury.io/py/pylimer-tools)\n[](https://pypi.python.org/pypi/pylimer-tools/)\n[](https://pypi.python.org/pypi/pylimer-tools/)\n\npylimer-tools (with \"pylimer\" pronounced like \"p\u00fc-limer\", with the \"py\" as in the German word \"m\u00fcde\", IPA: /\u02c8py\u02d0l\u026am\u025a/) is a collection of utility Python functions for handling handling bead-spring polymers in Python.\n\nThis toolbox provides an Monte Carlo (MC) structure generator, \nsimulation methods for Dissipative Particle Dynamics (DPD) with slip-springs,\nimplementations of the Maximum Entropy Homogenization Procedure (MEHP), with and without slip-links,\nand various means to read LAMMPS output: be it data, dump or thermodynamic data files.\nAdditionally, it provides various methods to calculate properties of the bead-spring networks, such as computing the radius of gyration, mean end to end distance, finding loops, or simply splitting a polymer network back up into its chains.\n\n## Installation\n\nUse pip:\n\n`pip install pylimer-tools`\n\nor refer to the [documentation](https://genietim.github.io/pylimer-tools) for instructions on how to compile the package yourself.\n\n## Usage\n\nSee the [documentation](https://genietim.github.io/pylimer-tools) for a current list of all available functions.\n\nExample usage can be found in the [documentation](https://genietim.github.io/pylimer-tools/auto_examples/index.html), the [tests](https://github.com/GenieTim/pylimer-tools/tree/main/tests), the [examples](https://github.com/GenieTim/pylimer-tools/tree/main/examples)\nor the [CLI applications](https://github.com/GenieTim/pylimer-tools/tree/main//src/pylimer_tools/).\n\n## Contributing\n\nWe welcome any contributions right here on [GitHub](https://github.com/GenieTim/pylimer-tools/).\nIf you have questions, open an [Issue](https://github.com/GenieTim/pylimer-tools/issues), and if you can contribute with code, open a [Pull Request](https://github.com/GenieTim/pylimer-tools/pulls).\n\nIf you add new methods or functionality, we kindly ask you to add appropriate [tests](./tests/).\n\nIf you change existing functionality, we require the existing tests to pass, or be modified accordingly if they turn out to have been wrong.\n\nBe aware of the scripts provided in [`./bin`](./bin/) to improve your development experience; for example, run `./bin/format-code.sh` before submitting a PR.\n\n## Acknowledgements\n\nThe authors gratefully acknowledge financial support from the\nSwiss National Science Foundation (SNSF project 200021_204196).\n",
"bugtrack_url": null,
"license": "GPL-3.0-or-later",
"summary": "A toolkit for handling bead-spring polymers and LAMMPS output in Python",
"version": "0.3.1",
"project_urls": {
"Homepage": "https://github.com/GenieTim/pylimer-tools"
},
"split_keywords": [
"polymer",
" chemistry",
" network",
" lammps",
" science"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "0b511fc0be115af80b80d598d6b2359eceb1ed9fb90a34086e6fff8ebffc2ed8",
"md5": "7ff8067c3bae6efbfa37f579b4c67b27",
"sha256": "27b4f7ea3ad24ac76ba29869cad38620f424a00c5c973463202fd45ce59c0aac"
},
"downloads": -1,
"filename": "pylimer_tools-0.3.1-cp310-cp310-macosx_14_0_universal2.whl",
"has_sig": false,
"md5_digest": "7ff8067c3bae6efbfa37f579b4c67b27",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.9",
"size": 2709345,
"upload_time": "2025-07-31T10:27:14",
"upload_time_iso_8601": "2025-07-31T10:27:14.905242Z",
"url": "https://files.pythonhosted.org/packages/0b/51/1fc0be115af80b80d598d6b2359eceb1ed9fb90a34086e6fff8ebffc2ed8/pylimer_tools-0.3.1-cp310-cp310-macosx_14_0_universal2.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "d3c0cce9baa61c98d0a1684ce98c19288cb71ba7d7adb959e85f873109f49354",
"md5": "e32501d50f3fc24bb869ed89f7c0f583",
"sha256": "a4643450d34d6f3dd122aa46130cdd2a46b89a6351349b69a84a4ee1a1e7caef"
},
"downloads": -1,
"filename": "pylimer_tools-0.3.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl",
"has_sig": false,
"md5_digest": "e32501d50f3fc24bb869ed89f7c0f583",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.9",
"size": 63852624,
"upload_time": "2025-07-31T10:27:17",
"upload_time_iso_8601": "2025-07-31T10:27:17.628157Z",
"url": "https://files.pythonhosted.org/packages/d3/c0/cce9baa61c98d0a1684ce98c19288cb71ba7d7adb959e85f873109f49354/pylimer_tools-0.3.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "20e945051a4bf5ec0944cf72d9f95df065dff75de2d054bcdb2b4cbb77f8bcb8",
"md5": "b11492c268a65dbcb9de1dce2a9f6c27",
"sha256": "b74e883e3e4a4a5f88a6dcc8413bda5a772573897ae29e6b3bfa68dd3c97d91b"
},
"downloads": -1,
"filename": "pylimer_tools-0.3.1-cp310-cp310-win_amd64.whl",
"has_sig": false,
"md5_digest": "b11492c268a65dbcb9de1dce2a9f6c27",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.9",
"size": 35773220,
"upload_time": "2025-07-31T10:27:21",
"upload_time_iso_8601": "2025-07-31T10:27:21.551832Z",
"url": "https://files.pythonhosted.org/packages/20/e9/45051a4bf5ec0944cf72d9f95df065dff75de2d054bcdb2b4cbb77f8bcb8/pylimer_tools-0.3.1-cp310-cp310-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "1542c6405475da47475fac62bb651067b890efedecc4ddc018b9f7a91e743098",
"md5": "d6a69db20cd0c6d398a4d88356e9e12d",
"sha256": "3fa3de806b830c6cffb2d421fc5e50bb8d618ed6bc500346ebf291c6308a4435"
},
"downloads": -1,
"filename": "pylimer_tools-0.3.1-cp311-cp311-macosx_14_0_universal2.whl",
"has_sig": false,
"md5_digest": "d6a69db20cd0c6d398a4d88356e9e12d",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.9",
"size": 2711509,
"upload_time": "2025-07-31T10:27:24",
"upload_time_iso_8601": "2025-07-31T10:27:24.276916Z",
"url": "https://files.pythonhosted.org/packages/15/42/c6405475da47475fac62bb651067b890efedecc4ddc018b9f7a91e743098/pylimer_tools-0.3.1-cp311-cp311-macosx_14_0_universal2.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "6d30e620e1c188b6861f5d3b88a8b6560881d7de565b52f158569a4ffc09d31d",
"md5": "f6d5ef82affc6fdb0fec2119f59d3425",
"sha256": "d328e8c1619ab14df5e0fe10fc33d066f33272c1b7928fa907dd20dfbf7e2f6b"
},
"downloads": -1,
"filename": "pylimer_tools-0.3.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl",
"has_sig": false,
"md5_digest": "f6d5ef82affc6fdb0fec2119f59d3425",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.9",
"size": 63872795,
"upload_time": "2025-07-31T10:27:26",
"upload_time_iso_8601": "2025-07-31T10:27:26.625093Z",
"url": "https://files.pythonhosted.org/packages/6d/30/e620e1c188b6861f5d3b88a8b6560881d7de565b52f158569a4ffc09d31d/pylimer_tools-0.3.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "a888eb20d842f67dcfac8664c181735d66de6b88c720630f53d84ca45c0ce7bf",
"md5": "d328dee7088a09a7494695a6639ee825",
"sha256": "2e02709fce440eb55f1823c08b3cc4a71eed0b36c30cb4b2ede6d11ff9e4b7db"
},
"downloads": -1,
"filename": "pylimer_tools-0.3.1-cp311-cp311-win_amd64.whl",
"has_sig": false,
"md5_digest": "d328dee7088a09a7494695a6639ee825",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.9",
"size": 35830804,
"upload_time": "2025-07-31T10:27:30",
"upload_time_iso_8601": "2025-07-31T10:27:30.257303Z",
"url": "https://files.pythonhosted.org/packages/a8/88/eb20d842f67dcfac8664c181735d66de6b88c720630f53d84ca45c0ce7bf/pylimer_tools-0.3.1-cp311-cp311-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "88b296c9cc9fe1573866e33a6d71f4f3e832804a3acf66c7498f4aa2769adfb3",
"md5": "891c7a985f4ee26df7d45037fb22cb64",
"sha256": "a2f6d7719c8992f29f42df5e6c5cec8e9b5ac58e86980b086df4d9ea87296e58"
},
"downloads": -1,
"filename": "pylimer_tools-0.3.1-cp312-cp312-macosx_14_0_universal2.whl",
"has_sig": false,
"md5_digest": "891c7a985f4ee26df7d45037fb22cb64",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.9",
"size": 2716656,
"upload_time": "2025-07-31T10:27:33",
"upload_time_iso_8601": "2025-07-31T10:27:33.190418Z",
"url": "https://files.pythonhosted.org/packages/88/b2/96c9cc9fe1573866e33a6d71f4f3e832804a3acf66c7498f4aa2769adfb3/pylimer_tools-0.3.1-cp312-cp312-macosx_14_0_universal2.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "ffe34e522dab079b4dc61a833a3d427d2f6d6f70d4cd63b8ce5ad7f364871749",
"md5": "fa4e3c28ee1d6b4ef364eac4b98dbf10",
"sha256": "d742da84dc625f3accb07667ba73cfeaefbc349434d0190f9f0a146dc244b525"
},
"downloads": -1,
"filename": "pylimer_tools-0.3.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl",
"has_sig": false,
"md5_digest": "fa4e3c28ee1d6b4ef364eac4b98dbf10",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.9",
"size": 63910138,
"upload_time": "2025-07-31T10:27:35",
"upload_time_iso_8601": "2025-07-31T10:27:35.700330Z",
"url": "https://files.pythonhosted.org/packages/ff/e3/4e522dab079b4dc61a833a3d427d2f6d6f70d4cd63b8ce5ad7f364871749/pylimer_tools-0.3.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "0e5ca65ed613a7479152f01eb7b193218205d7011ed3976ca8a5a3bc3b4a04e7",
"md5": "881a4bbe9da9a8edf4474650639765ce",
"sha256": "1d83a88cb8ce59e19211e65dfb9616b7da4c58f01af32af34095a154b8677aac"
},
"downloads": -1,
"filename": "pylimer_tools-0.3.1-cp312-cp312-win_amd64.whl",
"has_sig": false,
"md5_digest": "881a4bbe9da9a8edf4474650639765ce",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.9",
"size": 35654564,
"upload_time": "2025-07-31T10:27:39",
"upload_time_iso_8601": "2025-07-31T10:27:39.585118Z",
"url": "https://files.pythonhosted.org/packages/0e/5c/a65ed613a7479152f01eb7b193218205d7011ed3976ca8a5a3bc3b4a04e7/pylimer_tools-0.3.1-cp312-cp312-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "cb1c66bfccf9d795d41b8c1ea31a6efbecd453812c85cbd1b73956be9d94b713",
"md5": "d8b1d7b8197239ad0e10ae03a24ae554",
"sha256": "e00072dfd35b4243b2547db2d5bc988f8fa12967398548bd5c8e7d97a7c41322"
},
"downloads": -1,
"filename": "pylimer_tools-0.3.1-cp39-cp39-macosx_14_0_universal2.whl",
"has_sig": false,
"md5_digest": "d8b1d7b8197239ad0e10ae03a24ae554",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.9",
"size": 2710008,
"upload_time": "2025-07-31T10:27:42",
"upload_time_iso_8601": "2025-07-31T10:27:42.186445Z",
"url": "https://files.pythonhosted.org/packages/cb/1c/66bfccf9d795d41b8c1ea31a6efbecd453812c85cbd1b73956be9d94b713/pylimer_tools-0.3.1-cp39-cp39-macosx_14_0_universal2.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "aa42d20fe8bc667e49831458adaa2f5e02f776e94204fbce18449e1241c2b5d2",
"md5": "41b2c84a12206537dfc004b937992dff",
"sha256": "5369acf83841ccce3ac228ca225b5fd67a58f6d0667caf3a9c222a924a130dc5"
},
"downloads": -1,
"filename": "pylimer_tools-0.3.1-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl",
"has_sig": false,
"md5_digest": "41b2c84a12206537dfc004b937992dff",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.9",
"size": 63845633,
"upload_time": "2025-07-31T10:27:44",
"upload_time_iso_8601": "2025-07-31T10:27:44.456801Z",
"url": "https://files.pythonhosted.org/packages/aa/42/d20fe8bc667e49831458adaa2f5e02f776e94204fbce18449e1241c2b5d2/pylimer_tools-0.3.1-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "24aa16505cbe55e79ac273d6f237125b276c0f5526b92a323275e9da56db16e5",
"md5": "753c60504bb8201775d7b133fba0df52",
"sha256": "75873af82bffb4cc671ab5831297548a81903ab840600d7dba28f98e8b95eb41"
},
"downloads": -1,
"filename": "pylimer_tools-0.3.1.tar.gz",
"has_sig": false,
"md5_digest": "753c60504bb8201775d7b133fba0df52",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9",
"size": 471670,
"upload_time": "2025-07-31T10:27:47",
"upload_time_iso_8601": "2025-07-31T10:27:47.618783Z",
"url": "https://files.pythonhosted.org/packages/24/aa/16505cbe55e79ac273d6f237125b276c0f5526b92a323275e9da56db16e5/pylimer_tools-0.3.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-07-31 10:27:47",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "GenieTim",
"github_project": "pylimer-tools",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "attrs",
"specs": [
[
">=",
"25.3.0"
]
]
},
{
"name": "click",
"specs": [
[
">=",
"8.1.4"
]
]
},
{
"name": "cmake",
"specs": [
[
">=",
"4.0.2"
]
]
},
{
"name": "coverage",
"specs": [
[
">=",
"7.9.0"
]
]
},
{
"name": "docutils",
"specs": [
[
">=",
"0.21.2"
]
]
},
{
"name": "fs",
"specs": [
[
">=",
"2.4.16"
]
]
},
{
"name": "furo",
"specs": [
[
">=",
"2024.8.6"
]
]
},
{
"name": "future",
"specs": [
[
">=",
"1.0.0"
]
]
},
{
"name": "igraph",
"specs": [
[
">=",
"0.11.9"
]
]
},
{
"name": "matplotlib",
"specs": [
[
">=",
"3.9.4"
]
]
},
{
"name": "mock",
"specs": [
[
">=",
"5.2.0"
]
]
},
{
"name": "mypy-extensions",
"specs": [
[
">=",
"1.1.0"
]
]
},
{
"name": "ninja",
"specs": [
[
">=",
"1.11.1.4"
]
]
},
{
"name": "numpy",
"specs": [
[
">=",
"2.0.2"
]
]
},
{
"name": "openpyxl",
"specs": [
[
">=",
"3.1.5"
]
]
},
{
"name": "packaging",
"specs": [
[
">=",
"25.0"
]
]
},
{
"name": "pandas",
"specs": [
[
">=",
"2.3.0"
]
]
},
{
"name": "pdoc",
"specs": [
[
">=",
"15.0.4"
]
]
},
{
"name": "sphinx-click",
"specs": [
[
">=",
"6.0.0"
]
]
},
{
"name": "pint",
"specs": [
[
">=",
"0.24.4"
]
]
},
{
"name": "pybind11-stubgen",
"specs": [
[
">=",
"2.5.4"
]
]
},
{
"name": "ruff",
"specs": [
[
">=",
"0.11.13"
]
]
},
{
"name": "scikit-build",
"specs": [
[
">=",
"0.18.1"
]
]
},
{
"name": "scikit-learn",
"specs": [
[
">=",
"1.6.1"
]
]
},
{
"name": "scipy",
"specs": [
[
">=",
"1.13.1"
]
]
},
{
"name": "sphinx-automodapi",
"specs": [
[
">=",
"0.20.0"
]
]
},
{
"name": "sphinx-copybutton",
"specs": [
[
">=",
"0.5.2"
]
]
},
{
"name": "sphinx",
"specs": [
[
">=",
"7.4.7"
]
]
},
{
"name": "sphinxext-opengraph",
"specs": [
[
">=",
"0.10.0"
]
]
},
{
"name": "twine",
"specs": [
[
">=",
"6.1.0"
]
]
},
{
"name": "unittest-xml-reporting",
"specs": [
[
">=",
"3.2.0"
]
]
},
{
"name": "wheel",
"specs": [
[
">=",
"0.45.1"
]
]
},
{
"name": "rstcheck",
"specs": [
[
">=",
"6.2.5"
]
]
},
{
"name": "sphinx-gallery",
"specs": [
[
">=",
"0.19.0"
]
]
},
{
"name": "psutil",
"specs": [
[
">=",
"7.0.0"
]
]
},
{
"name": "intersphinx_registry",
"specs": [
[
">=",
"0.2501.23"
]
]
},
{
"name": "sphinxcontrib-bibtex",
"specs": [
[
">=",
"2.6.5"
]
]
},
{
"name": "build",
"specs": [
[
">=",
"1.2.2"
]
]
}
],
"lcname": "pylimer-tools"
}