• 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