Developers

The EPW team welcome any new development to the code.


How to become an EPW developer


Please follow the following steps:

This a git mirror in read-only of the QE SVN trunk. The mirror should be updated every hours

When this is done you can create your own EPW branch on the EPW project starting from the QE/EPW branch.


EPW good coding practice


Here are some good coding practice that we would like to implement in EPW (some might not be fully respected in the code yet):

  • Compile your code with -O0 -Wall flags. Make sure that you do not introduce unused variables etc...
  • Make your code ready for automatic documentation (Ford). Document the subroutine purpose and variables (also local variables) using !! below the variable name.
  • Do use INTENT (in/out) when you pass variables to a subroutine.
  • Make sure that your developments will not break the test-farm. You can run the tests in QE/test-suites.
  • Always use the ONLY keyword when you call a module with USE.
  • Do NOT use #ifdef __PARA except if truly required (e.g. if you directly call an MPI routine and you do not use the QE wrapper).