ChemCpp is a C++ toolbox for chemoinformatics focusing on the computation of kernel functions between chemical compounds.
- 1.0.2, November 2007
Its development was initiated during the SAKURA project, a collaboration program between the Bioinformatics Center of Kyoto University, Japan, and the Center for Computational Biology of Ecole des Mines de Paris, France.
People involved are:
ChemCpp consists of a C++ library, implementing on a set of classes designed to handle molecules (the Molecule class) and datasets of molecules (the MoleculeSet class), together with a set of binary executables -- or tools -- making use of this library for molecular manipulations and kernel functions computations.
- Jean-Luc Perret, initially postdoctoral fellow at Kyoto University, Japan, supported by the Swiss National Science Fundation. He is now a post-doctoral researcher at Novartis Animal Health, in Neuchatel, Switzerland.
- Pierre Mahé, intially PhD student at Ecole des Mines de Paris, currently post-doctoral researcher at Xerox Research Center Europe, in Grenoble, France.
- Jean-Philippe Vert, Ecole des Mines de Paris, France.
- Tatsuya Akutsu, Minoru Kanehisa and Nobuhisa Ueda, Kyoto University, Japan.
ChemCpp is essentially designed to handle molecules represented under the MDL file format (MOL and SDF files).
The tools included so far in ChemCpp can be split in two categories:
- utility tools, for the manipulation of MOL and SDF files
- kernels computation tools
The kernel functions that can be computed include:
- the marginalized graph kernel between labeled graphs (Kashima et al., 2004 - Kernels for graphs)
- extensions of the marginalized kernel (Mahé et al., 2005 - Graph kernels for molecular structure-activity relationship analysis with support vector machines)
- Tanimoto kernels (Ralaivola et al., 2005 - Graph kernels for chemical informatics), and fast approximations of the marginalized kernel
- graph kernels based on tree patterns (Mahé and Vert, 2006 - Graph kernels based on tree patterns for molecules)
- kernels based on pharmacophores for 3D structure of molecules (Mahé et al., 2006 - The pharmacophore kernel for virtual screening with support vector machines)
A detailed description of the different classes can be found in the present HTML documentation (see the Class Hierarchy or Class List above tabs).
Please refer to the ChemCpp User-Guide for more details about the different tools and precise references about the above kernel functions.
Please refer to the ChemCpp User-Guide, or to the INSTALL file.
- Version 1.0.2 - November 2007 :
- new tool "sd2gramSubtree" implementing graph kernels based on tree-patterns.
- new tool "sd2atomGram" computing kernel matrices between atom types based on physicochemical properties.
- modification of the "sd2gram3Dpharma" tool in order to simplify its use based on the "sd2atomGram" tool.
- fixed bug in the normalization of gram matrices used in the "sd2gramSpectrum" and "sd2gram3Dspectrum" tools.
- fixed bug in MoleculeSet::initializeSelfKernel().
- Version 1.0.1 - 9 May 2006 :
- Version 1.0 - 16 March 2006. First public release under the terms of the Lesser-GPL.
- Former history
This software is published under the terms of the GNU Lesser General Public License. See The GNU Lesser General Public License as a text file.
Authors of ChemCpp can be contacted at the following adresses:
SourceForge project homepage
- improve MoleculeSet::readPartialCharges() used by sd2gram3D* tools.
- (static) buffer too small for large molecules.
- back-up solution in case of a problem: manually increase the size of the buffer.
- clean up the "sd2gramSubtree" tool.
Generated on Wed Nov 28 12:12:51 2007 for ChemCpp by