Modelling crystals for pharmaceutical chemistry
In pharmaceutical chemistry, determining a drug's molecular crystal structure is critical, but this crystal structure prediction presents a huge computational challenge. Sally Price's Research Group at UCL has developed DMACRYS - software that simulates the likely crystal structures an organic molecule can adopt. We are helping to improve DMACRYS's sustainability by increasing its portability and upgrading its testing and development infrastructure.
Visit the CPOSS website - the developers of DMACRYS.
We have worked with Sally Price’s group to massively increase the scalability and reliability of their calculations by making use of the UCL Condor cluster. Condor allows idle computers from across the university to be used together as a single powerful computer. Thanks to this work, calculations that used to take a week to complete can now be conducted in a matter of hours.
The DMACRYS software is very successful. It has a well established and continually growing developer community that extends across academia and industry. Whilst it is important that people can further develop the software and contribute third-party enhancements, it is also necessary to protect the intellectual investment made by the DMACRYS team. The Software Sustainability Institute are working with the DMACRYS team to create a governance model that will allow the flexibility needed by developers and the protection of investment needed by the DMACRYS team.
The introduction of an internal, source-code versioning system will ensure that DMACRYS’s development will continue to evolve in a manageable and scalable way. In addition, working closely with the team, an SSI technical evaluation will guide improvements to the way in which the software is packaged and provided to the community. The evaluation will also help to identify any barriers preventing the use of DMACRYS on common computer systems. By developing automated software build processes and a verifiable software test suite, developers will be quickly assured that specific changes behave as they intended and do not negatively affect other functions of the software.