ForceBalance is a work in progress and is continually being improved and expanded! Here are some current and future project development ideas.
Some notes on updating the version:
The formalism for the version number goes something like this:
v1.2.1[ab][1-9]
where:
- 1.2.1 stands for major release (may break compatibility), medium-sized release (important features), minor release (improvements)
- a or b, if present, stands for alpha or beta release, with numbers standing for the n-th alpha or beta release
To manually specify a release, create a tag and push it to the remote repository: git tag -a v1.2.1 -m "version 1.2.1" git push –tags
The version number should then be automatically generated by "git describe" which is run by setup.py at installation.
Finally, remember to update the version number in the documentation generation scripts!
Most Recently Implemented (version 1.3.0):
- Engine class is a unified interface to MD simulation codes.
- Added Gromacs, OpenMM, and TINKER engines.
- Thermo target; simple support for general thermodynamic properties. (Erik)
- Lipid target; lipid bilayer properties. (Keri)
- ForceBalance –continue option continues an aborted run and loads as much data as possible from the latest iteration.
- Parameter filtering allows targets to skip over parameters that are known to be irrelevant, for efficiency of finite difference derivatives.
- (Optimizer / Liquid / Lipid) Increase simulation length as we get closer to convergence.
- (Gromacs) Now supports binding energies, interaction energies, multipole moments and vibrational frequencies.
- (OpenMM) Now supports binding energies, interaction energies, and multipole moments.
- (nifty.py) exec_() reads from stdout and stderr asynchronously, allowing us to split the streams and tail -f the output at the same time.
Current Development Goals, for version 1.3.1:
- More comprehensive tutorial to walk users through the initial process of setting up targets and preparing for a successful ForceBalance run
Longterm Development Ideas
- Visualization of running calculations