Table of Contents Author Guidelines Submit a Manuscript
Scientific Programming
Volume 15, Issue 1, Pages 27-44
http://dx.doi.org/10.1155/2007/146752

The Transition and Adoption to Modern Programming Concepts for Scientific Computing in Fortran

Charles D. Norton,1 Viktor K. Decyk,2 Boleslaw K. Szymanski,3 and Henry Gardner4

1Jet Propulsion Laboratory, California Institute of Technology, Pasadena, CA 91109-8099, USA
2Jet Propulsion Laboratory, California Institute of Technology, Pasadena, CA 91109-8099, USA and Department of Physics and Astronomy, University of California, Los Angeles, CA 90095-1547, USA
3Department of Computer Science, Rensselaer Polytechnic Institute, Troy, NY 12180-3590, USA
4Computer Science, FEIT, Australian National University, Canberra, ACT 0200, Australia

Received 22 May 2007; Accepted 22 May 2007

Copyright © 2007 Hindawi Publishing Corporation. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

Abstract

This paper describes our experiences in the early exploration of modern concepts introduced in Fortran90 for large-scale scientific programming. We review our early work in expressing object-oriented concepts based on the new Fortran90 constructs – foreign to most programmers at the time – our experimental work in applying them to various applications, the impact on the WG5/J3 standards committees to consider formalizing object-oriented constructs for later versions of Fortran, and work in exploring how other modern programming techniques such as Design Patterns can and have impacted our software development. Applications will be drawn from plasma particle simulation and finite element adaptive mesh refinement for solid earth crustal deformation modeling.