The two senior researchers at SimCon, Brian Farrimond and John Collins, are both Honorary Research Fellows
at the Department of Computing at Edge Hill
University (EHU). The current project, in collaboration with Dr. Mark Anderson at EHU and Dave Gill
at The University Corporation for Atmospheric Research,
Boulder, Colorado, is to re-engineer the weather and climate prediction program, WRF, in order to remove
systematic errors and to improve reliability. The project is funded by he United States Air Force.
This work includes:
The development of new compiler technologies which make possible the re-engineering of Fortran programs
written with cpp pre-processor macros and directives. The pre-processor macros are expanded within the
WinFPT internal represenataion, but the pre-processor code is reconstructed after analysis and
Analysis and systematic correction of mixed precision arithmetic, where the use of single precision
variables and constants degrades the precision of double precision results.
Analysis of INTENT declarations in the code, and automatic correction of incorrect declarations.
Analysis of the use of OPTIONAL arguments as these are passed through the call-trees. Some sub-program
arguments are declared to be OPTIONAL but are never used optionally. Some OPTIONAL arguments are
not protected from access by IF (PRESENT(... constructs. The code is corrected automatically and the
corrections are marked for inspection by the authors.
Detection and correction of race conditions in the multi-processor code.
Aspects of this work are described in the posters presented at the WRF workshops in Boulder Colorado,
and publication 4, and in the poster
presented at the 4th WGNE Workshop on Systematic Errors in Weather and Climate Models,
An important issue in the use of large computer programs such as WRF is the reproducibility of results.
Different parallel configurations, different compilers and different machines may legitimately produce
different results because of numerical drift. This is caused by the accumulation of small rounding errors due to
different orders of computation or differences in the precision of numbers. The results may also differ
because of differences in the consequences of coding errors and compiler bugs, but these effects are hidden amongst
those due to numerical drift. The run-time trace facility in WinFPT is used
to suppress numerical drift. Coding errors and compiler bugs are then exposed and may be trapped. This work
is described in publication 7.
Brian Farrimond and John Collins are Honorary Research Associates at the University of Cape Town (UCT).
We are working in collaboration with members of the
Radar Remote Sensing Group, and on projects connected with
The Centre for High Performance Computing (CHPC). The current
project, in collaboration with Jane Wyngaard and Prof. Mike Inggs at UCT, is the development of a new class of
fine-graiin parallel processor, based on the work described in
publication 2, below.
"Dimensional Inference Using Symbol Lives", Farrimond B.T and Collins J. 2007, Paper
presented at the 2007 International Conference: Software Engineering Theory and Practice, Orlando Florida
"APPRASE: Automatic parallelisation of Fortran to run on an FPGA"
Farrimond B.T., Collins J. and Sharma A. 2008, Paper presented at The Summer Conference of the Society for
Computer Simulation, Edinburgh, Scotland, June 2008.
"Automatic Detection of Softare Errors in WRF", Collins J, Farrimond B and Anderson M, 2011, Poster presented
at the 12th WRF Users Workshop, Boulder Colorado, June 2011.
"Q. A. Analysis of the WRF Program",
Collins J, Anderson M, Farrimond B and Gill D, 2012, Poster presented at the 13th WRF Users Workshop, Boulder, Colorado,
"Automated Quality Assurance Analysis: WRF – A Case Study",
Collins, J., Farrimond, B., Anderson, M., Owens, D., Bayliss, D. and Gill, D. 2013, ICCET 2013, 13-14 April 2013, Vancouver.
"Systematic Errors in Climate Models
Consequent on the Design of the Fortran Language", Collins J, Anderson M, Farrimond B, Bayliss D and Owens D, 2013,
Poster presented at the 4th WGNE Workshop on Systematic Errors in Weather and Climate Models, The Met Office,
Exeter, UK, April 2013.
"The Removal of Numerical Drift from Scientific Models", Collins J,
Farrimond B, Flower D, Anderson M and Gill D. 2013, arXiv:1304.3260 [cs.SE].
Wyngaard J, Inggs M, Collins J and Farrimond B, 2013,
"Towards a many-core architecture for HPC", 23rd International Conference on Field Programmable Logic and Applications (FPL)