Conclusions

The original project was unable to deliver the working parallel code described in the work plan. Several issues resulted in the project suffering multiple delays, and changes to the work plan. The short-term nature of the project meant there was no time for contingency action to recover the project within the timescale and this was a very disappointing outcome. However, significant progress had been made to developing the code and with additional effort from the Edikt mini-project, a working parallel MicroMag code was achieved.

To summarise, the original code has been significantly refactored. This code was greatly simplified, with much obsolete functionality removed from the starting code. The serial version now uses the modern CVODE library from the SUNDIALs software suite. This has resulted in 64% speed up of the code in the test case of a 100K vertex sphere. The parallel MicroMag code has had extensive modifications made from the serial version. This code now uses the PETSc library and has had its major data structures implemented using the PETSc data parallel layer. Significant progress has been made to developing the parallel code. By using modern coding techniques in Fortran 90, such as modules to abstract and re-use independent functional units, and by employing a modern high-performance scientific library the future development, portability and sustainabilty of the code base has been dramatically increased.

Chris Maynard 2011-06-08