DocumentCode
1425432
Title
Making the Fortran-to-C transition: how painful is it really?
Author
Theurich, Gerhard ; Anson, Bryce ; Hill, Nicola A. ; Hill, Adrian
Author_Institution
California Univ., Santa Barbara, CA, USA
Volume
3
Issue
1
fYear
2001
Firstpage
21
Lastpage
27
Abstract
For over a decade, the Fortran/C controversy has split the scientific computing community into two groups. The article does not give a long list of technical pros and cons for either programming language, but provides a “real-world” case study of the Fortran-to-C transition the authors recently made. They describe their experiences in converting a 20000-line Fortran program (which for typical runs, executes in approximately two hours on a 400-MHz Pentium) into C. The program that was “translated” is a plane-wave pseudopotential implementation of density functional theory within the local spin density approximation. The program´s primary task is to calculate the ground state electron distribution in bulk solids by minimizing the total energy with a conjugate gradient algorithm. This is a real program that uses all the usual operations, conditionals, and loops and has a particular emphasis on the use of fast Fourier transforms (FFTs). Simulating systems with large numbers of atoms requires considerable amounts of memory, which leads to reading and writing large arrays to disk during computations
Keywords
C language; FORTRAN; conjugate gradient methods; density functional theory; physics computing; programming; 20000-line Fortran program; Fortran-to-C transition; Fortran/C controversy; bulk solids; conjugate gradient algorithm; density functional theory; fast Fourier transforms; ground state electron distribution; local spin density approximation; plane-wave pseudopotential implementation; programming language; real program; real-world case study; scientific computing community; Computational modeling; Computer languages; Density functional theory; Electrons; Fast Fourier transforms; Flexible printed circuits; Read-write memory; Scientific computing; Solids; Stationary state;
fLanguage
English
Journal_Title
Computing in Science & Engineering
Publisher
ieee
ISSN
1521-9615
Type
jour
DOI
10.1109/5992.895184
Filename
895184
Link To Document