# α-helix probability model (AGADIR)
An open-source, Python implementation of Munoz & Serrano's AGADIR model of α-helix formation. This model uses statistical mechanics and energy parameters trained on a database of over 400 peptides to predict the α-helical tendency (probability) per residue for a given peptide (see references).
## Install
This package has been uploaded to the Python Package Index (PyPI) and can be installed with:
```
pip install pyagadir
```
## Usage
The most simple way to use this package is to import and invoke `predict_alphahelix()` where `result.helical_propensity` is the probability that each residue is the α-helical conformation (list of floats) and `result.percent_helix` is the mean helical propensity (probability) for the full peptide (float):
```python
>>> from pyagadir import predict_alphahelix
>>> result = predict_alphahelix('ILKSLEEFLKVTLRSTRQT')
>>> print(f'Percent helix: {result.percent_helix}')
>>> print(f'Per-residue helical propensity: {result.helical_propensity}')
Percent helix: 0.092
Per-residue helical propensity: [0.00734307 0.01717528 0.03517554 0.13830898 0.16129371 0.17397703
0.17788564 0.17859396 0.17903603 0.17499225 0.14250647 0.12157049
0.10387933 0.07653458 0.02485916 0.01393712 0.00978755 0.00462415
0.00114698]
```
Advanced users may want to modify the partition function to an alternate approximation (e.g. residue, `'r'`) or inspect the detailed dG predicted values. The model class `AGADIR` can be directly imported and invoked. The result object is an instance of `ModelResult` (found in `pyagadir.models`) with more detailed free energy values saved during calculation (stored values are listed below). Example:
```python
>>> from pyagadir.models import AGADIR
>>> model = AGADIR(method='r')
>>> result = model.predict('ILKSLEEFLKVTLRSTRQT')
>>> print(f'dG_Int array (kcal/mol): {result.self.int_array}')
dG_Int array (kcal/mol): [0.96 0.8 0.76 1.13 0.8 0.95 0.95 1.08 0.8 0.76 1.12 1.18 0.8 0.67
1.13 1.18 0.67 0.93 1.18]
```
## Stored Data in ModelResult
```
> seq :: peptide sequence (str)
# for each residue/index position
> int_array :: dG_Int (np.array of shape(seq,1))
> i1_array :: dG_i,i+1 (np.array of shape(seq,1))
> i3_array :: dG_i,i+3 (np.array of shape(seq,1))
> i4_array :: dG_i,i+4 (np.array of shape(seq,1))
> N_array :: dG_Ncap (np.array of shape(seq,1))
> C_array :: dG_Ccap (np.array of shape(seq,1))
> dG_dict_mat :: dG_dict's in list of lists where indexing corresponds to [j][i] (see Muñoz, V., & Serrano, L. (1994)); dG_dict includes each term used in computing dG_Helix for a given helical segment of length j at position i (Python indexing).
# statistical weights and partition functions
> K_tot :: sum of statistical weights for AGADIR1s (one-sequence) (float)
> K_tot_array :: array of summed statistical weights for AGADIR (residue) (np.array of shape(seq,1))
> Z :: residue parition function for AGADIR1s (one-sequence) (float)
> Z_array :: residue parition function for AGADIR (residue) (np.array of shape(seq,1))
# final predicted values
> helical_propensity :: probability that each residue is in the alpha-helical conformation (np.array of shape(seq,1))
> percent_helix :: mean helical propensity, or probability of peptide is an alpha-helix (float)
```
## To Do
* Implement multiple-sequence approximation (Munoz, V., & Serrano, L. (1997))
* Cythonize the model
* pytests
## For developers
Build package with build (see https://github.com/pypa/build)
```
python -m build
```
## Citations
Muñoz, V., & Serrano, L. (1994). Elucidating the folding problem of helical peptides using empirical parameters. Nature structural biology, 1(6), 399-409. https://doi.org/10.1038/nsb0694-399
Munoz, V., & Serrano, L. (1995). Elucidating the folding problem of helical peptides using empirical parameters. II†. Helix macrodipole effects and rational modification of the helical content of natural peptides. Journal of molecular biology, 245(3), 275-296. https://doi.org/10.1006/jmbi.1994.0023
Muñoz, V., & Serrano, L. (1995). Elucidating the Folding Problem of Helical Peptides using Empirical Parameters. III> Temperature and pH Dependence. Journal of molecular biology, 245(3), 297-308. https://doi.org/10.1006/jmbi.1994.0024
Lacroix, E., Viguera, A. R., & Serrano, L. (1998). Elucidating the folding problem of α-helices: local motifs, long-range electrostatics, ionic-strength dependence and prediction of NMR parameters. Journal of molecular biology, 284(1), 173-191. https://doi.org/10.1006/jmbi.1998.2145
Munoz, V., & Serrano, L. (1997). Development of the multiple sequence approximation within the AGADIR model of α‐helix formation: Comparison with Zimm‐Bragg and Lifson‐Roig formalisms. Biopolymers: Original Research on Biomolecules, 41(5), 495-509. https://doi.org/10.1002/(SICI)1097-0282(19970415)41:5<495::AID-BIP2>3.0.CO;2-H
Raw data
{
"_id": null,
"home_page": "https://github.com/reisalex/AGADIR",
"name": "pyagadir",
"maintainer": "",
"docs_url": null,
"requires_python": "<4,>=3.10",
"maintainer_email": "",
"keywords": "alpha-helix,biophysics,statistical mechanics,agadir,model",
"author": "Alexander Reis",
"author_email": "alex.camp.reis@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/fa/23/b29f374918366518ac18cdd4741c91e35d464f4501dc100187db3293695e/pyagadir-1.0.0.tar.gz",
"platform": null,
"description": "# \u03b1-helix probability model (AGADIR)\n\nAn open-source, Python implementation of Munoz & Serrano's AGADIR model of \u03b1-helix formation. This model uses statistical mechanics and energy parameters trained on a database of over 400 peptides to predict the \u03b1-helical tendency (probability) per residue for a given peptide (see references).\n\n## Install\n\nThis package has been uploaded to the Python Package Index (PyPI) and can be installed with:\n```\npip install pyagadir\n```\n\n## Usage\n\nThe most simple way to use this package is to import and invoke `predict_alphahelix()` where `result.helical_propensity` is the probability that each residue is the \u03b1-helical conformation (list of floats) and `result.percent_helix` is the mean helical propensity (probability) for the full peptide (float):\n```python\n>>> from pyagadir import predict_alphahelix\n>>> result = predict_alphahelix('ILKSLEEFLKVTLRSTRQT')\n>>> print(f'Percent helix: {result.percent_helix}')\n>>> print(f'Per-residue helical propensity: {result.helical_propensity}')\nPercent helix: 0.092\nPer-residue helical propensity: [0.00734307 0.01717528 0.03517554 0.13830898 0.16129371 0.17397703\n 0.17788564 0.17859396 0.17903603 0.17499225 0.14250647 0.12157049\n 0.10387933 0.07653458 0.02485916 0.01393712 0.00978755 0.00462415\n 0.00114698]\n```\n\nAdvanced users may want to modify the partition function to an alternate approximation (e.g. residue, `'r'`) or inspect the detailed dG predicted values. The model class `AGADIR` can be directly imported and invoked. The result object is an instance of `ModelResult` (found in `pyagadir.models`) with more detailed free energy values saved during calculation (stored values are listed below). Example:\n```python\n>>> from pyagadir.models import AGADIR\n>>> model = AGADIR(method='r')\n>>> result = model.predict('ILKSLEEFLKVTLRSTRQT')\n>>> print(f'dG_Int array (kcal/mol): {result.self.int_array}')\ndG_Int array (kcal/mol): [0.96 0.8 0.76 1.13 0.8 0.95 0.95 1.08 0.8 0.76 1.12 1.18 0.8 0.67\n 1.13 1.18 0.67 0.93 1.18]\n```\n\n## Stored Data in ModelResult\n\n```\n> seq :: peptide sequence (str)\n\n# for each residue/index position\n> int_array :: dG_Int (np.array of shape(seq,1))\n> i1_array :: dG_i,i+1 (np.array of shape(seq,1))\n> i3_array :: dG_i,i+3 (np.array of shape(seq,1))\n> i4_array :: dG_i,i+4 (np.array of shape(seq,1))\n> N_array :: dG_Ncap (np.array of shape(seq,1))\n> C_array :: dG_Ccap (np.array of shape(seq,1))\n\n> dG_dict_mat :: dG_dict's in list of lists where indexing corresponds to [j][i] (see Mu\u00f1oz, V., & Serrano, L. (1994)); dG_dict includes each term used in computing dG_Helix for a given helical segment of length j at position i (Python indexing).\n\n# statistical weights and partition functions\n> K_tot :: sum of statistical weights for AGADIR1s (one-sequence) (float)\n> K_tot_array :: array of summed statistical weights for AGADIR (residue) (np.array of shape(seq,1))\n> Z :: residue parition function for AGADIR1s (one-sequence) (float)\n> Z_array :: residue parition function for AGADIR (residue) (np.array of shape(seq,1))\n\n# final predicted values\n> helical_propensity :: probability that each residue is in the alpha-helical conformation (np.array of shape(seq,1))\n> percent_helix :: mean helical propensity, or probability of peptide is an alpha-helix (float)\n```\n\n## To Do\n\n* Implement multiple-sequence approximation (Munoz, V., & Serrano, L. (1997))\n* Cythonize the model\n* pytests\n\n## For developers\n\nBuild package with build (see https://github.com/pypa/build)\n```\npython -m build\n```\n\n## Citations\n\nMu\u00f1oz, V., & Serrano, L. (1994). Elucidating the folding problem of helical peptides using empirical parameters. Nature structural biology, 1(6), 399-409. https://doi.org/10.1038/nsb0694-399\n\nMunoz, V., & Serrano, L. (1995). Elucidating the folding problem of helical peptides using empirical parameters. II\u2020. Helix macrodipole effects and rational modification of the helical content of natural peptides. Journal of molecular biology, 245(3), 275-296. https://doi.org/10.1006/jmbi.1994.0023\n\nMu\u00f1oz, V., & Serrano, L. (1995). Elucidating the Folding Problem of Helical Peptides using Empirical Parameters. III> Temperature and pH Dependence. Journal of molecular biology, 245(3), 297-308. https://doi.org/10.1006/jmbi.1994.0024\n\nLacroix, E., Viguera, A. R., & Serrano, L. (1998). Elucidating the folding problem of \u03b1-helices: local motifs, long-range electrostatics, ionic-strength dependence and prediction of NMR parameters. Journal of molecular biology, 284(1), 173-191. https://doi.org/10.1006/jmbi.1998.2145\n\nMunoz, V., & Serrano, L. (1997). Development of the multiple sequence approximation within the AGADIR model of \u03b1\u2010helix formation: Comparison with Zimm\u2010Bragg and Lifson\u2010Roig formalisms. Biopolymers: Original Research on Biomolecules, 41(5), 495-509. https://doi.org/10.1002/(SICI)1097-0282(19970415)41:5<495::AID-BIP2>3.0.CO;2-H\n\n",
"bugtrack_url": null,
"license": "\"MIT\"",
"summary": "A model of alpha-helical stability based on statistical mechanics.",
"version": "1.0.0",
"split_keywords": [
"alpha-helix",
"biophysics",
"statistical mechanics",
"agadir",
"model"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "17b3c02a429cfa5a832a598e692ff9372ab11ab4ca73ae1e6b8a7fcbc729afe9",
"md5": "f5e6ae70033db1ccf0c315b68838a7a2",
"sha256": "9564af04b9494529a2a1c4332b7d447bbbf1d38695f25317eaa7d07d5d24ee2c"
},
"downloads": -1,
"filename": "pyagadir-1.0.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "f5e6ae70033db1ccf0c315b68838a7a2",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4,>=3.10",
"size": 9148,
"upload_time": "2023-01-03T01:48:34",
"upload_time_iso_8601": "2023-01-03T01:48:34.658035Z",
"url": "https://files.pythonhosted.org/packages/17/b3/c02a429cfa5a832a598e692ff9372ab11ab4ca73ae1e6b8a7fcbc729afe9/pyagadir-1.0.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "fa23b29f374918366518ac18cdd4741c91e35d464f4501dc100187db3293695e",
"md5": "6ccdfb79384b0e9c3f9c037ca7d738ca",
"sha256": "71639d0f8b2e76a9c977aa4ec4bcc1a9e48bd45fb6ce3cb9aedbe288846de002"
},
"downloads": -1,
"filename": "pyagadir-1.0.0.tar.gz",
"has_sig": false,
"md5_digest": "6ccdfb79384b0e9c3f9c037ca7d738ca",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4,>=3.10",
"size": 10197,
"upload_time": "2023-01-03T01:48:36",
"upload_time_iso_8601": "2023-01-03T01:48:36.503762Z",
"url": "https://files.pythonhosted.org/packages/fa/23/b29f374918366518ac18cdd4741c91e35d464f4501dc100187db3293695e/pyagadir-1.0.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-01-03 01:48:36",
"github": true,
"gitlab": false,
"bitbucket": false,
"github_user": "reisalex",
"github_project": "AGADIR",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "pyagadir"
}