Molpher-lib: C++/Python Library For Chemical Space Exploration¶
This is the documentation of Molpher-lib, a computer library for exploration of chemical space with molecular morphing. It is essentially a fork of Molpher – a free open source software developed for the same purpose.
The original Molpher is mostly aimed at users. Therefore, it contains a rich graphical user interface with visualizations of chemical space and many facilities to directly affect the exploration process. However, it is not very friendly when it comes to developers who usually prefer access to the facilities of a computer program via an API or would even like to alter the implementation so that it suits their needs. We have become more and more aware of these shortcomings during our research where we would often like to implement new ways of filtering the generated morphs or evaluating their ‘fitness’, but the monolithic implementation in C++ would make it difficult and time-consuming.
Therefore, the goal of this project is to make Molpher more accessible to programmers, developers and scientists alike by providing a flexible and extensible programming interface including a Python package that exposes most of the features of Molpher-lib to the Python programming language as well.
Please, note that the project is in early stage of development and that a lot of the features mentioned in this documentation might change in the future and that there might still be a considerable amount of bugs and other issues.
Table of Contents¶
- Molpher-lib: C++/Python Library For Chemical Space Exploration
- Using the library
- 1. Installation
- 2. Tutorial
- 2.1. The Morphing Algorithm
- 2.2. Creating an Exploration Tree and Setting Morphing Parameters
- 2.3. Generating Morphs and Extending the Exploration Tree
- 2.4. Tree Operations
- 2.5. Tree Templates and Snapshots
- 2.6. Example Exploration Algorithm Implementations
- 2.7. Summary
- Source Code Documentation
- 1. Python
- 2. C++