Software Engineering Tools for Scientific Models

Status: Completed

Start Date: 2011-02-18

End Date: 2011-09-29

Description: We design and demonstrate the feasibility of extending the open source Eclipse integrated development environment (IDE) to support the full range of capabilities now available to Java developers but for Fortran. We have experience in this process from having done analogous SBIR work for the Ada language with the Navy and Missile Defense Agency. As was the case for Ada, there is an existing but insufficient plug in for Fortran now available for Eclipse, namely Photran. We will leverage Harmonia's past work on Rise plug-in for Ada, c, C++ to create product that builds on Eclipse Photran as well as pFUnit and FUnit. Facilities we will implement include annotating source code as an overlay to the existing code, so that developers learning about the code are free to mark it up without affecting the original code, and creating various views tracing execution, showing potential concurrency, etc. We also integrate unit testing, graphical editing of workflows to create scripts that are used with Fortran, support the analysis and porting of Fortran code to different target architectures, and provide a web service link to accommodate cases where the Fortran compiler runs on a different machine from the IDE. Our goal is a 25% productivity improvement.
Benefits: Harmonia will deliver Rise as part of the CodeBook project that we are building under SBIR funding from the Department of Energy (DOE). CodeBook provides a customized software development environment for computational scientists based on existing software packages, and Rise can be featured in this environment and delivered to the CodeBook audience to reach scientists using any of the DOE supercomputer facilities or who are funded by DOE. In addition, any commercial organization that does Fortran-based modeling and simulation will benefit from Rise, including those in the aerospace, automotive, and petroleum industries.

Our approach has direct benefit for a wide range of NASA programs that continue to work with Fortran codes. These include the High-End Computing Program and the Modeling, Analysis and Prediction Program. One example is the NASA's Goddard Earth Observing System Model, Version 5 (GEOS-5) atmospheric model in Cell Fortran on the Cell Broadband Engine. Another is the Modeling, Analysis, and Prediction Program's Earth System Modeling Framework (ESMF), which provides interfaces for use in both Fortran 90 and C++. A third is Entry, Descent, Landing simulations for Mars and future missions. Rise is especially useful to mission areas where there are a shortage of qualified developers that are experts on Fortran, due to our ability to allow non-Fortran programmers to view Fortran code in a different programming language.

Lead Organization: Harmonia Holdings Group LLC