In Google Summer of Code 2018, I worked on Fast, Efficient Fragment-Based Coordinate Generation. My contribution was as follows:
- Implement fragment-based coordinate generation (Pull Request)
- Debug distance geometry method (Pull Request
I implemented a faster coordinate generation method in this task. In this method, molecules are separated into fragments by rotable bonds. If a fragment is in our database, the coordinates of atoms in the fragment are set according to the information from the database. 3D structure of the input molecule is obtained by connecting fragments and atoms.
This task is completed and already merged. By this new implementation, coordinate generation got about 5 times faster.
I debugged the implementantion of distance geometry method. Distance geometry method is used when fragment-based coordinate generation failed to generate a correct stereochemistry. In this method, atoms are moved so that they fulfill the distance bounds and volume bounds. Previous implementation did not work because of incorrect stereochemistry check. I found that distance geometry method may work by replacing stereochemistry check with different one.
This work is not completed but I made some progress.
- Write a scientific paper about fragment-based coordinate generation
- Implement better distance geometry method