Discussion of ASE development takes place on the AICCM developers mailing list. We welcome new developers who would like to help work on improving AICCM. If you want to join the AICCM development team, please send an e-mail to Michael (mpei) with a short description of the feature you want to implement and your programming experience.
The address of developers mailing list is developers at aiccm.de.
AICCM is developed by Michael F. Peintinger (mpei) at the Mulliken Center for Theoretical Chemistry at the University of Bonn with contributions (in alphabetic order) from
You can send e-mails to the developers by using the nickname in brackets at aiccm.de.
The documentation of the source code is automatically generated with epydoc using Python docstrings. It will be available online, located here shortly after the first release of the source code. Developers who already obtained the source code can generate the documentation directly from the source code. The version of epydoc shipped with some distribution might contain bugs, like in the latest version of Ubuntu. It is highly recommended, that you use the latest of version from svn.
Please take a look at the bugtracker!
Please use the camelCase notation with first letter lower case for local and method definitions. Class definitions start with upper case. In the case you have two upper case expression following, underscore is allowed.
Example: >>> writeWSC_BFNG
Underscore should be used with file names.
Example: >>> converger_diis.py
The rules for the Python code are identical with those used by the ASE.
There are two different kinds of imports. In scripts a wild import is recommended. For example to get all symbols from the ASE use:
>>> from ase import *
In classes of AICCM no wild imports must be used. To import exactly what is needed use:
>>> from diis import DIIS
Especially indentions! Use 4 spaces per indentation level. No hard tabs.
>>> git clone git@aiccm.de:aiccm.git
* Pull changes of branch "BRANCH" from the server using:
>>> git pull BRANCH
* Commit your changes to the repository on the server using the push command:
>>> git push BRANCH