cosmopharm 0.0.27__tar.gz → 0.0.29__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (180) hide show
  1. cosmopharm-0.0.29/.github/workflows/python-publish.yml +41 -0
  2. cosmopharm-0.0.29/.gitignore +189 -0
  3. cosmopharm-0.0.29/.gitmodules +3 -0
  4. cosmopharm-0.0.29/CITATION.cff +52 -0
  5. {cosmopharm-0.0.27/src/cosmopharm.egg-info → cosmopharm-0.0.29}/PKG-INFO +1 -1
  6. cosmopharm-0.0.29/TOC.png +0 -0
  7. cosmopharm-0.0.29/basic_usage.py +81 -0
  8. cosmopharm-0.0.29/data/lle/calculated/lle_results.xlsx +0 -0
  9. cosmopharm-0.0.29/data/lle/calculated/ucst_values.xlsx +0 -0
  10. cosmopharm-0.0.29/data/sle/README.md +18 -0
  11. cosmopharm-0.0.29/data/sle/calculated/sle_results_PVA_alternatives.xlsx +0 -0
  12. cosmopharm-0.0.29/data/sle/calculated/sle_results_PVP_alternatives.xlsx +0 -0
  13. cosmopharm-0.0.29/data/sle/calculated/sle_results_REF.xlsx +0 -0
  14. cosmopharm-0.0.29/data/sle/calculated/statistics/PVA_alternatives/calc_vs_exp.xlsx +0 -0
  15. cosmopharm-0.0.29/data/sle/calculated/statistics/PVA_alternatives/components.xlsx +0 -0
  16. cosmopharm-0.0.29/data/sle/calculated/statistics/PVA_alternatives/systems.xlsx +0 -0
  17. cosmopharm-0.0.29/data/sle/calculated/statistics/PVP_alternatives/calc_vs_exp.xlsx +0 -0
  18. cosmopharm-0.0.29/data/sle/calculated/statistics/PVP_alternatives/components.xlsx +0 -0
  19. cosmopharm-0.0.29/data/sle/calculated/statistics/PVP_alternatives/systems.xlsx +0 -0
  20. cosmopharm-0.0.29/data/sle/calculated/statistics/REF/calc_vs_exp.xlsx +0 -0
  21. cosmopharm-0.0.29/data/sle/calculated/statistics/REF/components.xlsx +0 -0
  22. cosmopharm-0.0.29/data/sle/calculated/statistics/REF/systems.xlsx +0 -0
  23. cosmopharm-0.0.29/data/sle/calculated/statistics/REF/total.xlsx +0 -0
  24. cosmopharm-0.0.29/data/sle/experimental/GSF_PVPK12.dat +5 -0
  25. cosmopharm-0.0.29/data/sle/experimental/GSF_PVPK25.dat +4 -0
  26. cosmopharm-0.0.29/data/sle/experimental/GSF_PVPK30.dat +4 -0
  27. cosmopharm-0.0.29/data/sle/experimental/GSF_PVPVAc64.dat +5 -0
  28. cosmopharm-0.0.29/data/sle/experimental/IBP_EUD.dat +9 -0
  29. cosmopharm-0.0.29/data/sle/experimental/IBP_PLGA50.dat +4 -0
  30. cosmopharm-0.0.29/data/sle/experimental/IBP_PLGA75.dat +5 -0
  31. cosmopharm-0.0.29/data/sle/experimental/IBP_PVA.dat +8 -0
  32. cosmopharm-0.0.29/data/sle/experimental/IBP_PVPK12.dat +9 -0
  33. cosmopharm-0.0.29/data/sle/experimental/IMC_EUD.dat +3 -0
  34. cosmopharm-0.0.29/data/sle/experimental/IMC_PLGA50.dat +7 -0
  35. cosmopharm-0.0.29/data/sle/experimental/IMC_PLGA75.dat +7 -0
  36. cosmopharm-0.0.29/data/sle/experimental/IMC_PVA.dat +11 -0
  37. cosmopharm-0.0.29/data/sle/experimental/IMC_PVPK12.dat +11 -0
  38. cosmopharm-0.0.29/data/sle/experimental/IMC_PVPVAc64.dat +14 -0
  39. cosmopharm-0.0.29/data/sle/experimental/NIF_PVPK12.dat +8 -0
  40. cosmopharm-0.0.29/data/sle/experimental/NIF_PVPK25.dat +7 -0
  41. cosmopharm-0.0.29/data/sle/experimental/NIF_PVPK30.dat +5 -0
  42. cosmopharm-0.0.29/data/sle/experimental/NIF_PVPVAc64.dat +7 -0
  43. cosmopharm-0.0.29/data/sle/experimental/NPX_EUD.dat +3 -0
  44. cosmopharm-0.0.29/data/sle/experimental/NPX_PLGA50.dat +7 -0
  45. cosmopharm-0.0.29/data/sle/experimental/NPX_PLGA75.dat +7 -0
  46. cosmopharm-0.0.29/data/sle/experimental/NPX_PVA.dat +10 -0
  47. cosmopharm-0.0.29/data/sle/experimental/NPX_PVPK12.dat +8 -0
  48. cosmopharm-0.0.29/data/sle/experimental/NPX_PVPK25.dat +8 -0
  49. cosmopharm-0.0.29/data/sle/experimental/NPX_PVPK30.dat +7 -0
  50. cosmopharm-0.0.29/data/sle/experimental/NPX_PVPVAc64.dat +8 -0
  51. cosmopharm-0.0.29/data/sle/experimental/PCM_EUD.dat +3 -0
  52. cosmopharm-0.0.29/data/sle/experimental/PCM_PLGA50.dat +7 -0
  53. cosmopharm-0.0.29/data/sle/experimental/PCM_PLGA75.dat +7 -0
  54. cosmopharm-0.0.29/data/sle/experimental/PCM_PVPK12.dat +6 -0
  55. cosmopharm-0.0.29/data/sle/experimental/PCM_PVPK30.dat +7 -0
  56. cosmopharm-0.0.29/data/sle/experimental/PCM_PVPVAc64.dat +7 -0
  57. cosmopharm-0.0.29/data/sle/experimental/SIM_PDL.dat +4 -0
  58. cosmopharm-0.0.29/data/sle/experimental/SIM_PLGA50.dat +4 -0
  59. cosmopharm-0.0.29/data/sle/table_params.xlsx +0 -0
  60. cosmopharm-0.0.29/docs/README_pypi.md +112 -0
  61. cosmopharm-0.0.29/example_usage.py +438 -0
  62. cosmopharm-0.0.29/profiles/Gaussian_input_cosmo.gjf +39 -0
  63. cosmopharm-0.0.29/profiles/Gaussian_input_optimization.gjf +39 -0
  64. cosmopharm-0.0.29/profiles/_import_methods/DirectImport/README.md +27 -0
  65. cosmopharm-0.0.29/profiles/_import_methods/DirectImport/import_profiles.py +75 -0
  66. cosmopharm-0.0.29/profiles/_import_methods/DirectImport/include/COSMO_SAC/COSMO.hpp +534 -0
  67. cosmopharm-0.0.29/profiles/_import_methods/DirectImport/include/COSMO_SAC/profile_db.hpp +430 -0
  68. cosmopharm-0.0.29/profiles/_import_methods/DirectImport/include/COSMO_SAC/util.hpp +91 -0
  69. cosmopharm-0.0.29/profiles/_import_methods/DirectImport/profiles/complist.txt +3 -0
  70. cosmopharm-0.0.29/profiles/_import_methods/DirectImport/profiles/pharmaceuticals/SIM.sigma +156 -0
  71. cosmopharm-0.0.29/profiles/_import_methods/DirectImport/profiles/polymers/PLGA50.sigma +156 -0
  72. cosmopharm-0.0.29/profiles/_import_methods/DirectImport/profiles/sigma3/PLGA50.sigma +156 -0
  73. cosmopharm-0.0.29/profiles/_import_methods/DirectImport/profiles/sigma3/SIM.sigma +156 -0
  74. cosmopharm-0.0.29/profiles/_import_methods/DirectImport/src/main.cpp +117 -0
  75. cosmopharm-0.0.29/profiles/_import_methods/DirectImport/src/pybind11_interface.cxx +118 -0
  76. cosmopharm-0.0.29/profiles/_import_methods/UD/complist.txt +21 -0
  77. cosmopharm-0.0.29/profiles/_import_methods/UD/complist.xlsx +0 -0
  78. cosmopharm-0.0.29/profiles/_import_methods/UD/sigma3/CBZ.sigma +156 -0
  79. cosmopharm-0.0.29/profiles/_import_methods/UD/sigma3/EUD.sigma +156 -0
  80. cosmopharm-0.0.29/profiles/_import_methods/UD/sigma3/GSF.sigma +156 -0
  81. cosmopharm-0.0.29/profiles/_import_methods/UD/sigma3/IBP.sigma +156 -0
  82. cosmopharm-0.0.29/profiles/_import_methods/UD/sigma3/IMC.sigma +156 -0
  83. cosmopharm-0.0.29/profiles/_import_methods/UD/sigma3/NIF.sigma +156 -0
  84. cosmopharm-0.0.29/profiles/_import_methods/UD/sigma3/NPX.sigma +156 -0
  85. cosmopharm-0.0.29/profiles/_import_methods/UD/sigma3/PCM.sigma +156 -0
  86. cosmopharm-0.0.29/profiles/_import_methods/UD/sigma3/PDL.sigma +156 -0
  87. cosmopharm-0.0.29/profiles/_import_methods/UD/sigma3/PLGA50.sigma +156 -0
  88. cosmopharm-0.0.29/profiles/_import_methods/UD/sigma3/PLGA75.sigma +156 -0
  89. cosmopharm-0.0.29/profiles/_import_methods/UD/sigma3/PVA.sigma +156 -0
  90. cosmopharm-0.0.29/profiles/_import_methods/UD/sigma3/PVPK12.sigma +156 -0
  91. cosmopharm-0.0.29/profiles/_import_methods/UD/sigma3/PVPK25.sigma +156 -0
  92. cosmopharm-0.0.29/profiles/_import_methods/UD/sigma3/PVPK30.sigma +156 -0
  93. cosmopharm-0.0.29/profiles/_import_methods/UD/sigma3/PVPVAc64.sigma +156 -0
  94. cosmopharm-0.0.29/profiles/_import_methods/UD/sigma3/RBV.sigma +156 -0
  95. cosmopharm-0.0.29/profiles/_import_methods/UD/sigma3/SIM.sigma +156 -0
  96. cosmopharm-0.0.29/profiles/_import_methods/UD/sigma3/TBA.sigma +156 -0
  97. cosmopharm-0.0.29/profiles/_import_methods/UD/sigma3/VST.sigma +156 -0
  98. cosmopharm-0.0.29/profiles/_import_methods/UD/xlsx_to_txt.py +4 -0
  99. cosmopharm-0.0.29/profiles/polymers/cosmo/EUD_st-4mer.cosmo +3751 -0
  100. cosmopharm-0.0.29/profiles/polymers/cosmo/PDL_st-3mer.cosmo +2420 -0
  101. cosmopharm-0.0.29/profiles/polymers/cosmo/PLGA_st-4mer.cosmo +2715 -0
  102. cosmopharm-0.0.29/profiles/polymers/cosmo/PVA_at-3mer.cosmo +1816 -0
  103. cosmopharm-0.0.29/profiles/polymers/cosmo/PVA_at-5mer-mmrr.cosmo +2589 -0
  104. cosmopharm-0.0.29/profiles/polymers/cosmo/PVA_at-5mer-rmrm.cosmo +2593 -0
  105. cosmopharm-0.0.29/profiles/polymers/cosmo/PVA_at-5mer-wo1OH.cosmo +2537 -0
  106. cosmopharm-0.0.29/profiles/polymers/cosmo/PVA_it-3mer.cosmo +1815 -0
  107. cosmopharm-0.0.29/profiles/polymers/cosmo/PVA_st-3mer.cosmo +1797 -0
  108. cosmopharm-0.0.29/profiles/polymers/cosmo/PVPVAc_st-4mer.cosmo +3998 -0
  109. cosmopharm-0.0.29/profiles/polymers/cosmo/PVP_it-3mer.cosmo +3493 -0
  110. cosmopharm-0.0.29/profiles/polymers/cosmo/PVP_st-3mer.cosmo +3490 -0
  111. cosmopharm-0.0.29/profiles/polymers/cosmo/PVP_st-5mer.cosmo +5423 -0
  112. cosmopharm-0.0.29/profiles/polymers/sigma/EUD.sigma +156 -0
  113. cosmopharm-0.0.29/profiles/polymers/sigma/PDL.sigma +156 -0
  114. cosmopharm-0.0.29/profiles/polymers/sigma/PLGA50.sigma +156 -0
  115. cosmopharm-0.0.29/profiles/polymers/sigma/PLGA75.sigma +156 -0
  116. cosmopharm-0.0.29/profiles/polymers/sigma/PVA.sigma +156 -0
  117. cosmopharm-0.0.29/profiles/polymers/sigma/PVA_alternatives/PVA_at-5mer-rmrm.sigma +156 -0
  118. cosmopharm-0.0.29/profiles/polymers/sigma/PVA_alternatives/PVA_at-5mer-wo1OH.sigma +156 -0
  119. cosmopharm-0.0.29/profiles/polymers/sigma/PVA_alternatives/PVA_at_5mer-mmrr.sigma +156 -0
  120. cosmopharm-0.0.29/profiles/polymers/sigma/PVA_alternatives/PVA_it-3mer.sigma +156 -0
  121. cosmopharm-0.0.29/profiles/polymers/sigma/PVA_alternatives/PVA_st-3mer.sigma +156 -0
  122. cosmopharm-0.0.29/profiles/polymers/sigma/PVPK12.sigma +156 -0
  123. cosmopharm-0.0.29/profiles/polymers/sigma/PVPK25.sigma +156 -0
  124. cosmopharm-0.0.29/profiles/polymers/sigma/PVPK30.sigma +156 -0
  125. cosmopharm-0.0.29/profiles/polymers/sigma/PVPVAc64.sigma +156 -0
  126. cosmopharm-0.0.29/profiles/polymers/sigma/PVP_alternatives/PVPK12_it-3mer.sigma +156 -0
  127. cosmopharm-0.0.29/profiles/polymers/sigma/PVP_alternatives/PVPK12_st-5mer.sigma +156 -0
  128. cosmopharm-0.0.29/profiles/polymers/sigma/PVP_alternatives/PVPK12_st-mol1.sigma +156 -0
  129. cosmopharm-0.0.29/profiles/polymers/sigma/PVP_alternatives/PVPK12_st-mol2.sigma +156 -0
  130. cosmopharm-0.0.29/profiles/polymers/sigma/PVP_alternatives/PVPK12_st-mol3.sigma +156 -0
  131. cosmopharm-0.0.29/profiles/polymers/sigma/PVP_alternatives/PVPK25_it-3mer.sigma +156 -0
  132. cosmopharm-0.0.29/profiles/polymers/sigma/PVP_alternatives/PVPK25_st-5mer.sigma +156 -0
  133. cosmopharm-0.0.29/profiles/polymers/sigma/PVP_alternatives/PVPK30_it-3mer.sigma +156 -0
  134. cosmopharm-0.0.29/profiles/polymers/sigma/PVP_alternatives/PVPK30_st-5mer.sigma +156 -0
  135. cosmopharm-0.0.29/profiles/polymers/to_sigma_poly.py +856 -0
  136. cosmopharm-0.0.29/profiles/polymers/to_sigma_validation_data.zip +0 -0
  137. cosmopharm-0.0.29/profiles/polymers/xyz/EUD_st-4mer.xyz +63 -0
  138. cosmopharm-0.0.29/profiles/polymers/xyz/PDL_st-3mer.xyz +37 -0
  139. cosmopharm-0.0.29/profiles/polymers/xyz/PLGA_st-4mer.xyz +40 -0
  140. cosmopharm-0.0.29/profiles/polymers/xyz/PVA_at-3mer.xyz +30 -0
  141. cosmopharm-0.0.29/profiles/polymers/xyz/PVA_at-5mer-mmrr.xyz +44 -0
  142. cosmopharm-0.0.29/profiles/polymers/xyz/PVA_at-5mer-rmrm.xyz +44 -0
  143. cosmopharm-0.0.29/profiles/polymers/xyz/PVA_at-5mer-wo1OH.xyz +43 -0
  144. cosmopharm-0.0.29/profiles/polymers/xyz/PVA_it-3mer.xyz +30 -0
  145. cosmopharm-0.0.29/profiles/polymers/xyz/PVA_st-3mer.xyz +30 -0
  146. cosmopharm-0.0.29/profiles/polymers/xyz/PVPK12_st-mol1.xyz +382 -0
  147. cosmopharm-0.0.29/profiles/polymers/xyz/PVPK12_st-mol2.xyz +382 -0
  148. cosmopharm-0.0.29/profiles/polymers/xyz/PVPK12_st-mol3.xyz +382 -0
  149. cosmopharm-0.0.29/profiles/polymers/xyz/PVPVAc_st-4mer.xyz +67 -0
  150. cosmopharm-0.0.29/profiles/polymers/xyz/PVP_it-3mer.xyz +60 -0
  151. cosmopharm-0.0.29/profiles/polymers/xyz/PVP_st-3mer.xyz +60 -0
  152. cosmopharm-0.0.29/profiles/polymers/xyz/PVP_st-5mer.xyz +94 -0
  153. cosmopharm-0.0.29/pyproject.toml +6 -0
  154. cosmopharm-0.0.29/requirements.txt +6 -0
  155. {cosmopharm-0.0.27 → cosmopharm-0.0.29}/setup.cfg +0 -1
  156. cosmopharm-0.0.29/setup.py +18 -0
  157. {cosmopharm-0.0.27 → cosmopharm-0.0.29}/src/cosmopharm/__init__.py +1 -0
  158. cosmopharm-0.0.29/src/cosmopharm/version.py +16 -0
  159. {cosmopharm-0.0.27 → cosmopharm-0.0.29/src/cosmopharm.egg-info}/PKG-INFO +1 -1
  160. cosmopharm-0.0.29/src/cosmopharm.egg-info/SOURCES.txt +177 -0
  161. cosmopharm-0.0.29/src/install_cosmosac.md +46 -0
  162. cosmopharm-0.0.27/setup.py +0 -17
  163. cosmopharm-0.0.27/src/cosmopharm.egg-info/SOURCES.txt +0 -22
  164. {cosmopharm-0.0.27 → cosmopharm-0.0.29}/LICENSE +0 -0
  165. {cosmopharm-0.0.27 → cosmopharm-0.0.29}/README.md +0 -0
  166. {cosmopharm-0.0.27 → cosmopharm-0.0.29}/src/cosmopharm/actmodels/__init__.py +0 -0
  167. {cosmopharm-0.0.27 → cosmopharm-0.0.29}/src/cosmopharm/actmodels/actmodel.py +0 -0
  168. {cosmopharm-0.0.27 → cosmopharm-0.0.29}/src/cosmopharm/actmodels/cosmo.py +0 -0
  169. {cosmopharm-0.0.27 → cosmopharm-0.0.29}/src/cosmopharm/components.py +0 -0
  170. {cosmopharm-0.0.27 → cosmopharm-0.0.29}/src/cosmopharm/equilibrium/__init__.py +0 -0
  171. {cosmopharm-0.0.27 → cosmopharm-0.0.29}/src/cosmopharm/equilibrium/lle.py +0 -0
  172. {cosmopharm-0.0.27 → cosmopharm-0.0.29}/src/cosmopharm/equilibrium/sle.py +0 -0
  173. {cosmopharm-0.0.27 → cosmopharm-0.0.29}/src/cosmopharm/utils/__init__.py +0 -0
  174. {cosmopharm-0.0.27 → cosmopharm-0.0.29}/src/cosmopharm/utils/convert.py +0 -0
  175. {cosmopharm-0.0.27 → cosmopharm-0.0.29}/src/cosmopharm/utils/helpers.py +0 -0
  176. {cosmopharm-0.0.27 → cosmopharm-0.0.29}/src/cosmopharm/utils/lle_scanner.py +0 -0
  177. {cosmopharm-0.0.27 → cosmopharm-0.0.29}/src/cosmopharm/utils/spacing.py +0 -0
  178. {cosmopharm-0.0.27 → cosmopharm-0.0.29}/src/cosmopharm.egg-info/dependency_links.txt +0 -0
  179. {cosmopharm-0.0.27 → cosmopharm-0.0.29}/src/cosmopharm.egg-info/requires.txt +0 -0
  180. {cosmopharm-0.0.27 → cosmopharm-0.0.29}/src/cosmopharm.egg-info/top_level.txt +0 -0
@@ -0,0 +1,41 @@
1
+ # This workflow will upload a Python Package using Twine when a release is created
2
+ # For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-python#publishing-to-package-registries
3
+
4
+ # This workflow uses actions that are not certified by GitHub.
5
+ # They are provided by a third-party and are governed by
6
+ # separate terms of service, privacy policy, and support
7
+ # documentation.
8
+
9
+ name: Upload Python Package
10
+
11
+ on:
12
+ release:
13
+ types: [published]
14
+
15
+ permissions:
16
+ contents: read
17
+
18
+ jobs:
19
+ deploy:
20
+
21
+ runs-on: ubuntu-latest
22
+
23
+ steps:
24
+ - uses: actions/checkout@v4
25
+ with:
26
+ fetch-depth: 0 # Fetch all history and tags
27
+ - name: Set up Python
28
+ uses: actions/setup-python@v3
29
+ with:
30
+ python-version: '3.x'
31
+ - name: Install dependencies
32
+ run: |
33
+ python -m pip install --upgrade pip
34
+ pip install build
35
+ - name: Build package
36
+ run: python -m build
37
+ - name: Publish package
38
+ uses: pypa/gh-action-pypi-publish@27b31702a0e7fc50959f5ad993c78deac1bdfc29
39
+ with:
40
+ user: __token__
41
+ password: ${{ secrets.PYPI_API_TOKEN }}
@@ -0,0 +1,189 @@
1
+ # Created by https://www.toptal.com/developers/gitignore/api/python
2
+ # Edit at https://www.toptal.com/developers/gitignore?templates=python
3
+
4
+ conda-recipe/
5
+ *.rst
6
+ docs/*
7
+ !docs/README_pypi.md
8
+ #README_pypi.md
9
+ figs
10
+ ~$*
11
+ releases
12
+ advanced_usage.py
13
+ minimal_working_example.py
14
+ COSMOSAC
15
+ figures
16
+
17
+ ### Python ###
18
+ # Byte-compiled / optimized / DLL files
19
+ __pycache__/
20
+ *.py[cod]
21
+ *$py.class
22
+
23
+ # C extensions
24
+ *.so
25
+
26
+ # Distribution / packaging
27
+ .Python
28
+ build/
29
+ develop-eggs/
30
+ dist/
31
+ downloads/
32
+ eggs/
33
+ .eggs/
34
+ lib/
35
+ lib64/
36
+ parts/
37
+ sdist/
38
+ var/
39
+ wheels/
40
+ share/python-wheels/
41
+ *.egg-info/
42
+ .installed.cfg
43
+ *.egg
44
+ MANIFEST
45
+
46
+ # PyInstaller
47
+ # Usually these files are written by a python script from a template
48
+ # before PyInstaller builds the exe, so as to inject date/other infos into it.
49
+ *.manifest
50
+ *.spec
51
+
52
+ # Installer logs
53
+ pip-log.txt
54
+ pip-delete-this-directory.txt
55
+
56
+ # Unit test / coverage reports
57
+ htmlcov/
58
+ .tox/
59
+ .nox/
60
+ .coverage
61
+ .coverage.*
62
+ .cache
63
+ nosetests.xml
64
+ coverage.xml
65
+ *.cover
66
+ *.py,cover
67
+ .hypothesis/
68
+ .pytest_cache/
69
+ cover/
70
+
71
+ # Translations
72
+ *.mo
73
+ *.pot
74
+
75
+ # Django stuff:
76
+ *.log
77
+ local_settings.py
78
+ db.sqlite3
79
+ db.sqlite3-journal
80
+
81
+ # Flask stuff:
82
+ instance/
83
+ .webassets-cache
84
+
85
+ # Scrapy stuff:
86
+ .scrapy
87
+
88
+ # Sphinx documentation
89
+ docs/_build/
90
+
91
+ # PyBuilder
92
+ .pybuilder/
93
+ target/
94
+
95
+ # Jupyter Notebook
96
+ .ipynb_checkpoints
97
+
98
+ # IPython
99
+ profile_default/
100
+ ipython_config.py
101
+
102
+ # pyenv
103
+ # For a library or package, you might want to ignore these files since the code is
104
+ # intended to run in multiple environments; otherwise, check them in:
105
+ # .python-version
106
+
107
+ # pipenv
108
+ # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
109
+ # However, in case of collaboration, if having platform-specific dependencies or dependencies
110
+ # having no cross-platform support, pipenv may install dependencies that don't work, or not
111
+ # install all needed dependencies.
112
+ #Pipfile.lock
113
+
114
+ # poetry
115
+ # Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control.
116
+ # This is especially recommended for binary packages to ensure reproducibility, and is more
117
+ # commonly ignored for libraries.
118
+ # https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control
119
+ #poetry.lock
120
+
121
+ # pdm
122
+ # Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control.
123
+ #pdm.lock
124
+ # pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it
125
+ # in version control.
126
+ # https://pdm.fming.dev/#use-with-ide
127
+ .pdm.toml
128
+
129
+ # PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm
130
+ __pypackages__/
131
+
132
+ # Celery stuff
133
+ celerybeat-schedule
134
+ celerybeat.pid
135
+
136
+ # SageMath parsed files
137
+ *.sage.py
138
+
139
+ # Environments
140
+ .env
141
+ .venv
142
+ env/
143
+ venv/
144
+ ENV/
145
+ env.bak/
146
+ venv.bak/
147
+
148
+ # Spyder project settings
149
+ .spyderproject
150
+ .spyproject
151
+
152
+ # Rope project settings
153
+ .ropeproject
154
+
155
+ # mkdocs documentation
156
+ /site
157
+
158
+ # mypy
159
+ .mypy_cache/
160
+ .dmypy.json
161
+ dmypy.json
162
+
163
+ # Pyre type checker
164
+ .pyre/
165
+
166
+ # pytype static type analyzer
167
+ .pytype/
168
+
169
+ # Cython debug symbols
170
+ cython_debug/
171
+
172
+ # PyCharm
173
+ # JetBrains specific template is maintained in a separate JetBrains.gitignore that can
174
+ # be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
175
+ # and can be added to the global gitignore or merged into this file. For a more nuclear
176
+ # option (not recommended) you can uncomment the following to ignore the entire idea folder.
177
+ #.idea/
178
+
179
+ ### Python Patch ###
180
+ # Poetry local configuration file - https://python-poetry.org/docs/configuration/#local-configuration
181
+ poetry.toml
182
+
183
+ # ruff
184
+ .ruff_cache/
185
+
186
+ # LSP config files
187
+ pyrightconfig.json
188
+
189
+ # End of https://www.toptal.com/developers/gitignore/api/python
@@ -0,0 +1,3 @@
1
+ [submodule "profiles/pharmaceuticals"]
2
+ path = profiles/pharmaceuticals
3
+ url = https://github.com/klajmonm/pharmaceuticals
@@ -0,0 +1,52 @@
1
+ cff-version: 1.2.0
2
+ message: "If you use COSMOPharm for your research, please cite the associated research article as follows."
3
+
4
+ # Preferred citation for the associated research article
5
+ preferred-citation:
6
+ type: article
7
+ authors:
8
+ - family-names: Antolovic
9
+ given-names: Ivan
10
+ - family-names: Vrabec
11
+ given-names: Jadran
12
+ - family-names: Klajmon
13
+ given-names: Martin
14
+ title: "COSMOPharm: Drug--Polymer Compatibility of Pharmaceutical Amorphous Solid Dispersions from COSMO-SAC"
15
+ journal: "Molecular Pharmaceutics"
16
+ doi: "10.1021/acs.molpharmaceut.3c12345"
17
+ year: 2024
18
+ month: 3
19
+ start: 1
20
+ end: 10
21
+ issue: 1
22
+ volume: 1
23
+
24
+ # Citation information for the COSMOPharm software
25
+ title: "COSMOPharm Tool: Computational Analysis of Drug-Polymer Compatibility"
26
+ version: "1.0.0"
27
+ doi: "10.5281/zenodo.10792203" # Replace with actual DOI if available
28
+ date-released: 2024-03-28
29
+ url: "https://github.com/ivanantolo/cosmopharm"
30
+ authors:
31
+ - family-names: Antolović
32
+ given-names: Ivan
33
+ affiliation: "Thermodynamics, Technische Universität Berlin, Ernst-Reuter-Platz 1, 10587 Berlin, Germany"
34
+ email: ivan.antolovic@tu-berlin.de
35
+ - family-names: Vrabec
36
+ given-names: Jadran
37
+ affiliation: "Thermodynamics, Technische Universität Berlin, Ernst-Reuter-Platz 1, 10587 Berlin, Germany"
38
+ - family-names: Klajmon
39
+ given-names: Martin
40
+ affiliation: "Department of Physical Chemistry, University of Chemistry and Technology, Prague, Technická 5, 166 28 Prague 6, Czechia"
41
+ email: martin.klajmon@vscht.cz
42
+ keywords:
43
+ - chemical-engineering
44
+ - phase-behavior
45
+ - cosmo-sac
46
+ - solubility-prediction
47
+ - pharmaceutical-science
48
+ - pharmaceutical-development
49
+ - drug-polymer-compatibility
50
+ - miscibility-analysis
51
+ - amorphous-solid-dispersions
52
+ - cosmopharm
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: cosmopharm
3
- Version: 0.0.27
3
+ Version: 0.0.29
4
4
  Summary: Predictive modeling for drug-polymer compatibility in pharmaceutical formulations using COSMO-SAC.
5
5
  Home-page: https://github.com/ivanantolo/cosmopharm,
6
6
  Author: Ivan Antolovic
Binary file
@@ -0,0 +1,81 @@
1
+ """
2
+ Solubility & Miscibility calculations CLI
3
+ """
4
+
5
+ import argparse
6
+ import cCOSMO
7
+ from cosmopharm import SLE, LLE, COSMOSAC
8
+ from cosmopharm.utils import create_components, read_params
9
+ try:
10
+ import matplotlib.pyplot as plt
11
+ except ImportError:
12
+ raise ImportError(
13
+ "This script requires matplotlib. Please install it with "
14
+ "'pip install matplotlib'."
15
+ )
16
+
17
+ def parse_args():
18
+ parser = argparse.ArgumentParser(description='Solubility & Miscibility Calculations CLI')
19
+ parser.add_argument('--names', nargs=2, default=['SIM', 'PLGA50'], help='Names of components e.g. SIM PLGA50')
20
+ parser.add_argument('--params_file', type=str, default="data/sle/table_params.xlsx", help='Path to parameters file')
21
+ parser.add_argument('--profile_path', type=str, default="./profiles/_import_methods/UD/", help='Path to COSMO profiles')
22
+ parser.add_argument('--fraction', type=str, default='w', choices=['w', 'x'], help='Fraction type for plotting (w = weight, x = mole)')
23
+ parser.add_argument('--output', type=str, default='basic_usage.png', help='Output file name for the plot')
24
+ return parser.parse_args()
25
+
26
+ def main():
27
+ args = parse_args()
28
+
29
+ # Create components and add parameters for SLE calculation
30
+ parameters = read_params(args.params_file)
31
+ components = create_components(args.names, parameters)
32
+ api, polymer = components[:2]
33
+
34
+ # Initialize COSMO-SAC model
35
+ db = cCOSMO.DelawareProfileDatabase(
36
+ f"{args.profile_path}/complist.txt",
37
+ f"{args.profile_path}/sigma3/")
38
+
39
+ for name in args.names:
40
+ iden = db.normalize_identifier(name)
41
+ db.add_profile(iden)
42
+ COSMO = cCOSMO.COSMO3(args.names, db)
43
+
44
+ # Add extended functionality to COSMO-SAC model (e.g. free volume, .. etc.)
45
+ actmodel = COSMOSAC(COSMO, mixture=components)
46
+ actmodel.combinatorial = 'FV' # Free-Volume (FV), Staverman-Guggenheim (SG)
47
+ actmodel.dispersion = True # Turn on/off the dispersion (optional)
48
+
49
+ # Calculate SLE (solubility)
50
+ sle = SLE(actmodel=actmodel)
51
+ ideal = sle.solubility(mix_type='ideal', show_progress=True) # ideal mixture (gamma=1)
52
+ real = sle.solubility(mix_type='real', show_progress=True) # real mixture (gamma=COSMO)
53
+
54
+ # Calculate LLE (miscibility)
55
+ lle = LLE(actmodel=actmodel)
56
+ options = dict(max_gap=0.1, dT=30, exponent=2.1, max_gap_type='weight')
57
+ miscibility = lle.miscibility(T=310, **options)
58
+
59
+ # =============================================================================
60
+ # Plot results
61
+ # =============================================================================
62
+ plt.figure()
63
+ plt.plot(*ideal[[args.fraction, 'T']].values.T, 'r.-', label='SLE (ideal)')
64
+ plt.plot(*real[[args.fraction, 'T']].values.T, 'k.-', label='SLE (real)')
65
+ plt.plot(miscibility[args.fraction+'L1'], miscibility['T'], 'k.--', mfc='w', label='LLE')
66
+ plt.plot(miscibility[args.fraction+'L2'], miscibility['T'], 'k.--', mfc='w')
67
+
68
+ plt.xlim(0, 1)
69
+ plt.ylim(300, 500)
70
+ plt.title(f"{api} + {polymer}")
71
+ plt.ylabel("T / K")
72
+ xlabel = {'w': 'Weight', 'x': 'Mole'}
73
+ plt.xlabel(f"{xlabel[args.fraction]} fraction {api}")
74
+ plt.legend()
75
+
76
+ # Save the figure to a file
77
+ plt.savefig(args.output)
78
+ plt.show()
79
+
80
+ if __name__ == "__main__":
81
+ main()
@@ -0,0 +1,18 @@
1
+ # COSMOPharm Data Sources
2
+
3
+ This document details the sources for the free-volume-related parameters (`v298`, `v_hc`) of APIs that are not covered in [our *Mol. Pharm.* paper](https://doi.org/10.1021/acs.molpharmaceut.4c00342). These specific parameters are included in the `table_params.xlsx` file. For the sources of other parameters, please refer to the above *Mol. Pharm.* paper or the publication by [Klajmon (2022)](https://doi.org/10.1021/acs.molpharmaceut.2c00573).
4
+
5
+ ## Sources for `v298`
6
+
7
+ - **CBZ (Carbamazepine)**
8
+ - Liquid densities from [molecular dynamics simulations](https://doi.org/10.1021/acs.molpharmaceut.2c00573) extrapolated to 298 K.
9
+
10
+ - **RBV (Ribavirin) and VST (Valsartan)**
11
+ - As in case of GSF and SIM, estimated using a quantitative structure–property relationship (QSPR) approach implemented in the [Amsterdam Modeling Suite](https://www.scm.com/), version 2022.101. Should be taken with caution.
12
+
13
+ ## Sources for `v_hc`
14
+
15
+ - **All APIs**
16
+ - `v_hc` based on Bondi atomic radii and calculated using the fast method proposed by [Zhao *et al.*](https://doi.org/10.1021/jo034808o)
17
+
18
+ Please make sure to refer to the `table_params.xlsx` for the detailed parameters and their respective values.
@@ -0,0 +1,5 @@
1
+ 463.15 0.378 1
2
+ 453.15 0.277 1
3
+ 443.15 0.219 1
4
+
5
+ # GSF / PVPK12
@@ -0,0 +1,4 @@
1
+ 478.15 0.463 1
2
+ 468.15 0.331 1
3
+
4
+ # GSF / PVPK25
@@ -0,0 +1,4 @@
1
+ 473.15 0.342 1
2
+ 463.15 0.224 1
3
+
4
+ # GSF / PVPK30
@@ -0,0 +1,5 @@
1
+ 473.15 0.316 1
2
+ 463.15 0.234 1
3
+ 453.15 0.149 1
4
+
5
+ # GSF / PVPVAc64
@@ -0,0 +1,9 @@
1
+ 348.25 0.9 1
2
+ 347.95 0.7 1
3
+ 347.65 0.5 1
4
+ 346.95 0.33 1
5
+ 346.55 0.25 1
6
+ 346.25 0.2 1
7
+ 345.55 0.1 1
8
+
9
+ # IBP / EUD
@@ -0,0 +1,4 @@
1
+ 348.55 0.5 1
2
+ 348.25 0.3 1
3
+
4
+ # IBP / PLGA50
@@ -0,0 +1,5 @@
1
+ 348.05 0.7 1
2
+ 347.95 0.5 1
3
+ 347.85 0.3 1
4
+
5
+ # IBP / PLGA75
@@ -0,0 +1,8 @@
1
+ 348.25 0.975 1
2
+ 348.05 0.95 1
3
+ 348.05 0.925 1
4
+ 347.65 0.9 1
5
+ 347.95 0.875 1
6
+ 347.45 0.85 1
7
+
8
+ # IBP / PVA
@@ -0,0 +1,9 @@
1
+ 347.15 0.9 1
2
+ 342.95 0.8 1
3
+ 340.65 0.702 1
4
+ 338.15 0.672 1
5
+ 333.15 0.647 1
6
+ 328.15 0.632 1
7
+ 323.15 0.611 1
8
+
9
+ # IBP / PVPK12
@@ -0,0 +1,3 @@
1
+ 433.35 0.8097 1
2
+
3
+ # IMC / EUD
@@ -0,0 +1,7 @@
1
+ 433.15 0.9 1
2
+ 432.45 0.8 1
3
+ 431.75 0.7 1
4
+ 431.05 0.6 1
5
+ 427.15 0.5 1
6
+
7
+ # IMC / PLGA50
@@ -0,0 +1,7 @@
1
+ 433.25 0.9 1
2
+ 432.25 0.8 1
3
+ 431.75 0.7 1
4
+ 429.75 0.6 1
5
+ 426.25 0.5 1
6
+
7
+ # IMC / PLGA75
@@ -0,0 +1,11 @@
1
+ 433.15 0.903 1
2
+ 432.65 0.806 1
3
+ 432.45 0.707 1
4
+ 431.65 0.609 1
5
+ 430.25 0.509 1
6
+ 429.35 0.409 1
7
+ 423.15 0.31 1
8
+ 413.15 0.204 1
9
+ 403.15 0.148 1
10
+
11
+ # IMC / PVA
@@ -0,0 +1,11 @@
1
+ 432.55 0.953 1
2
+ 431.15 0.9058 1
3
+ 427.15 0.8582 1
4
+ 421.55 0.8103 1
5
+ 413.15 0.7164 1
6
+ 408.15 0.6846 1
7
+ 403.15 0.6584 1
8
+ 398.15 0.6422 1
9
+ 393.15 0.6312 1
10
+
11
+ # IMC / PVPK12
@@ -0,0 +1,14 @@
1
+ 432.25 0.9 1
2
+ 425.85 0.8 1
3
+ 418.05 0.7 1
4
+ 423.15 0.737 1
5
+ 418.15 0.681 1
6
+ 413.15 0.639 1
7
+ 408.15 0.611 1
8
+ 403.15 0.579 1
9
+ 398.15 0.551 1
10
+ 393.15 0.54 1
11
+ 388.15 0.506 1
12
+ 383.15 0.472 1
13
+
14
+ # IMC / PVPVAc64
@@ -0,0 +1,8 @@
1
+ 433.15 0.659 1
2
+ 428.15 0.589 1
3
+ 423.15 0.542 1
4
+ 418.15 0.502 1
5
+ 413.15 0.468 1
6
+ 408.15 0.441 1
7
+
8
+ # NIF / PVPK12
@@ -0,0 +1,7 @@
1
+ 433.15 0.662 1
2
+ 428.15 0.591 1
3
+ 423.15 0.528 1
4
+ 418.15 0.479 1
5
+ 413.15 0.451 1
6
+
7
+ # NIF / PVPK25
@@ -0,0 +1,5 @@
1
+ 433.15 0.638 1
2
+ 428.15 0.584 1
3
+ 423.15 0.547 1
4
+
5
+ # NIF / PVPK30
@@ -0,0 +1,7 @@
1
+ 433.15 0.612 1
2
+ 428.15 0.561 1
3
+ 423.15 0.515 1
4
+ 418.15 0.484 1
5
+ 413.15 0.454 1
6
+
7
+ # NIF / PVPVAc64
@@ -0,0 +1,3 @@
1
+ 426.25 0.5154 1
2
+
3
+ # NPX / EUD
@@ -0,0 +1,7 @@
1
+ 429.05 0.9 1
2
+ 428.35 0.8 1
3
+ 427.15 0.7 1
4
+ 424.75 0.5 1
5
+ 411.95 0.3 1
6
+
7
+ # NPX / PLGA50
@@ -0,0 +1,7 @@
1
+ 428.65 0.9 1
2
+ 428.25 0.8 1
3
+ 427.95 0.7 1
4
+ 423.25 0.5 1
5
+ 414.85 0.3 1
6
+
7
+ # NPX / PLGA75
@@ -0,0 +1,10 @@
1
+ 428.45 0.806 1
2
+ 425.25 0.509 1
3
+ 422.15 0.409 1
4
+ 416.95 0.308 1
5
+ 413.15 0.228 1
6
+ 408.15 0.206 1
7
+ 403.15 0.164 1
8
+ 393.15 0.129 1
9
+
10
+ # NPX / PVA
@@ -0,0 +1,8 @@
1
+ 413.15 0.675 1
2
+ 403.15 0.626 1
3
+ 393.15 0.585 1
4
+ 388.15 0.566 1
5
+ 383.15 0.546 1
6
+ 378.15 0.532 1
7
+
8
+ # NPX / PVPK12
@@ -0,0 +1,8 @@
1
+ 408.15 0.698 1
2
+ 403.15 0.668 1
3
+ 398.15 0.644 1
4
+ 393.15 0.620 1
5
+ 388.15 0.602 1
6
+ 383.15 0.585 1
7
+
8
+ # NPX / PVPK25
@@ -0,0 +1,7 @@
1
+ 418.15 0.770 1
2
+ 413.15 0.726 1
3
+ 408.15 0.694 1
4
+ 403.15 0.664 1
5
+ 393.15 0.616 1
6
+
7
+ # NPX / PVPK30