CDPL Python Tutorial
Welcome to the “Getting Started with Python” tutorial! If you’re familiar with cheminformatics libraries like RDKit, you’ll find that CDPKit offers a unique set of tools and a feature-rich software development library that can take your computational drug design projects to new heights.
The Chemical Data Processing Library (CDPL) serves as the basis for CDPKit’s own applications and provides powerful basic functionality for the development of advanced drug discovery applications. Whether you’re a researcher, a student, or an industry professional, this tutorial aims to introduce the basic concepts and functionalities of CDPKit, enabling you to harness its full potential.
In the subsequent sections, we’ll walk you through the foundational concepts and dive into practical applications with hands-on examples. By the end, you’ll be well-equipped to incorporate CDPKit into your workflow and start crafting effective drug design solutions using Python.
Tip
For a detailed description of a particular function, method or class please visit the CDPL Python API Documentation pages. There is also a a powerful search tool on the top right corner of the page that you can use to find particular functions or modules within the documentation.
The following tutorial is based on a Jupyter notebook which can be downloaded
and then executed on your own computer.
- 1. Installing the CDPL Python Bindings
- 2. CDPL Package Overview
- 3. Basic Concepts
- 4. Working with Molecules
- 4.1. In-memory Representation of Molecular Structures
- 4.2. Representation of Molecule Substructures
- 4.3. Basic Operations on Molecule Objects
- 4.3.1. Creation
- 4.3.2. Querying Atom and Bond Counts
- 4.3.3. Creating Atoms and Bonds
- 4.3.4. Copying Atoms and Bonds
- 4.3.5. Accessing Atoms and Bonds
- 4.3.6. Removing all Atoms and Bonds
- 4.3.7. Removing single Atoms and Bonds
- 4.3.8. Removing multiple Atoms and Bonds
- 4.3.9. Testing Atom and Bond Ownership
- 4.3.10. Retrieving Atom and Bond Indices
- 4.3.11. Processing Bonds
- 4.3.12. Processing Atom Connections
- 4.4. Basic Operations on Fragment Objects
- 4.5. Reading Molecule Data
- 4.6. Essential Properties
- 4.7. Writing Molecule Data