To Do
The current release version of pDynamo, like the first two, should be considered a beta version and will undergo substantial changes in the near future.
Given below is a list of some of the current developmental priorities in pDynamo. It is only a provisional list as no doubt other things will be done as bugs are fixed and additional features are implemented.
Immediate Priorities (being done)
- Implement O(N) methods for pairlist generation (mentioned in chapter 3 of the Dynamo book).
- Make the merging and pruning of systems more robust. These do not yet work in the most general cases.
Short Term
- Clarification and rationalization of much of the code, in such areas as its class hierarchy, error handling, linear algebra classes (matrices, vectors, etc.), object attribute access and unit conversion.
- General improvements in the "chemoinformatics" parts of the program. These include the treatment of aromaticity and ring-perception.
- Increase the efficiency of the density functional theory QC model.
- Other things mentioned in the Dynamo book but not yet implemented. These include: correlation functions, NBModelEwald, and SystemVelocityTrajectory.
- Reimplementation of some time-consuming Python features in C, the most critical of which are currently the soft constraint classes.
Further Out
- Additional file formats, including CML (this was actually mentioned in chapter 2 of the Dynamo book but has not been done yet!).
- Analytic second derivatives of the energy (for MM potentials, at least).
- Constant pressure molecular dynamics and Monte Carlo simulations with non-orthorhombic periodic boundary conditions. Geometry optimization with these general box shapes is already implemented.
- Full embedded documentation once the code has settled down and it has been decided which markup language to use.
- Implementation of other MM models (e.g. CHARMM) and updating of the OPLS-AA parameter sets.
- Use of Python3. It is intended to go straight to Python 3 when a stable release is available. Versions of the program capable of running under Python 2 will no longer be supported.
- Version of the program that runs under Windows.