Skip to main content

Predictive modeling for drug-polymer compatibility in pharmaceutical formulations using COSMO-SAC.

Project description

COSMOPharm

Welcome to the COSMOPharm package, accompanying our paper in Molecular Pharmaceutics. This project and its associated publication offer insights and a practical toolkit for researching drug-polymer and drug-solvent systems, aiming to provide the scientific community with the means to reproduce our findings and further the development of COSMO-SAC-based models.

TOC Figure

About

COSMOPharm is a Python package designed to streamline the predictive modeling of drug-polymer compatibility, crucial for the development of pharmaceutical amorphous solid dispersions. Apart from that, it can also be used for the miscibility/solubility of drugs with/in common solvents. Leveraging the COSMO-SAC (Conductor-like Screening Model Segment Activity Coefficient) model, COSMOPharm offers a robust platform for scientists and researchers to predict solubility, miscibility, and phase behavior in drug formulation processes.

Features

  • Compatibility Prediction: Utilize open-source COSMO-SAC model for prediction of drug-polymer compatibility.
  • Solubility Calculation: Calculate drug-polymer solubilities to guide the selection of suitable polymers for drug formulations.
  • Miscibility and Phase Behavior Analysis: Analyze the miscibility of drug-polymer pairs and understand their phase behavior under various conditions.
  • User-friendly Interface: Easy-to-use functions and comprehensive documentation to facilitate research and development in pharmaceutical sciences.

Installation

Install COSMOPharm with pip:

pip install cosmopharm

Ensure you have installed the cCOSMO library as per instructions on the COSMOSAC GitHub page.

Quick Start

Get started with COSMOPharm using the minimal example below, which demonstrates how to calculate the solubility of a drug in a polymer. This example succinctly showcases the use of COSMOPharm for solubility calculations:

import matplotlib.pyplot as plt
import cCOSMO
from cosmopharm import SLE, COSMOSAC
from cosmopharm.utils import create_components, read_params

# Define components
names = ['SIM','PLGA50']
params_file = "data/sle/table_params.xlsx"

# Load parameters and create components
parameters = read_params(params_file)
mixture = create_components(names, parameters)

# Initialize COSMO-SAC model - replace paths with your local paths to COSMO profiles
db = cCOSMO.DelawareProfileDatabase(
    "./profiles/_import_methods/UD/complist.txt",
    "./profiles/_import_methods/UD/sigma3/")

for name in names:
    iden = db.normalize_identifier(name)
    db.add_profile(iden)
COSMO = cCOSMO.COSMO3(names, db)

# Setup the COSMO-SAC model with components
actmodel = COSMOSAC(COSMO, mixture=mixture)

# Calculate solubility (SLE)
sle = SLE(actmodel=actmodel)
solubility = sle.solubility(mix='real')

# Output the solubility
print(solubility[['T', 'w', 'x']].to_string(index=False))

# Plot results
plt.plot(*solubility[['w','T']].values.T,'.-', label='Solubility (w)')

# Settings
plt.xlim(0,1)
plt.ylim(300,500)
# Adding title and labels
plt.title('Solubility vs. Temperature')
plt.ylabel("T / K")
xlabel = {'w':'Weight', 'x':'Mole'}
plt.xlabel(f"Weight fraction {mixture[0].name}")
plt.legend()
# Save the figure to a PNG or PDF file
plt.savefig('solubility_plot.png')  # Saves the plot as a PNG file
# plt.savefig('solubility_plot.pdf')  # Saves the plot as a PDF file
plt.show()

For a more comprehensive demonstration, including advanced functionalities and plotting results, please see the example_usage.py script in this repository. This detailed example walks through the process of setting up COSMOPharm, initializing models, and visualizing the results of solubility and miscibility calculations.

Contributing

Contributions are welcome! Please refer to our GitHub repository for more information.

Citation

We appreciate citations to our work as they help acknowledge and spread our research contributions. If you use COSMOPharm in your research, please cite the associated paper as follows:

@article{Antolovic2024COSMOPharm,
  title={COSMOPharm: Drug--Polymer Compatibility of Pharmaceutical Amorphous Solid Dispersions from COSMO-SAC},
  author={Antolovic, Ivan and Vrabec, Jadran and Klajmon, Martin},
  journal={Molecular Pharmaceutics},
  year={2024},
  volume={1}, # Will be adjusted accordingly
  issue={1}, # Will be adjusted accordingly
  month={3}, # Will be adjusted accordingly
  pages={1--10},  # Will be adjusted accordingly
  doi={10.1021/acs.molpharmaceut.3c12345} # Will be adjusted accordingly
}

License

COSMOPharm is released under the MIT License. For more details, see the LICENSE file.

Project details


Download files

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

Source Distribution

cosmopharm-0.0.29.tar.gz (2.9 MB view details)

Uploaded Source

Built Distribution

cosmopharm-0.0.29-py3-none-any.whl (23.7 kB view details)

Uploaded Python 3

File details

Details for the file cosmopharm-0.0.29.tar.gz.

File metadata

  • Download URL: cosmopharm-0.0.29.tar.gz
  • Upload date:
  • Size: 2.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.19

File hashes

Hashes for cosmopharm-0.0.29.tar.gz
Algorithm Hash digest
SHA256 1eef0bcbcb7b7efe98f81df84e44ec647a732b219706f6653fb2bc72e340d351
MD5 22f1a9de429df8a5662674e852cb014f
BLAKE2b-256 c337ba99bf44d580d2d28cab1c2513d8a012cb3378b5ed0db1c9c745164cecd2

See more details on using hashes here.

File details

Details for the file cosmopharm-0.0.29-py3-none-any.whl.

File metadata

  • Download URL: cosmopharm-0.0.29-py3-none-any.whl
  • Upload date:
  • Size: 23.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.19

File hashes

Hashes for cosmopharm-0.0.29-py3-none-any.whl
Algorithm Hash digest
SHA256 4300bb31fc3e58f66ffac78786ccbac8c0240dce4b2a0adc620669be531a3fce
MD5 16d920756c158fcf61038f6e6056502a
BLAKE2b-256 19d1fc35814804c5fd58ccd6565be8f54f7b1a55c02152f297823e300034165b

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page