Skip to main content

Object-Oriented Redesign of a Real-World Fortran 77 Solver

  • Chapter
Modern Software Tools for Scientific Computing

Abstract

This chapter describes the ongoing work of applying modern software development techniques to a real-world computational fluid dynamics software package in the interdisciplinary project sEMPA. First results are given on a C++ implementation of the Fortran 77 algebraic multigrid solver of this package. The resulting benefits for this first prototype are the improved readability and increased flexibility of the code, but this first design and implementation also shows a significant increase in execution time. Efficiency improvements are discussed at the end of the chapter.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 109.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Ian G. Angus and W. Dan Curtis. From Fortran to Object Orientation: Experiences with a Production Flutter Analysis Code. In Proceedings of the Second Annual Object-Oriented Numerics Conference (OON-SKI’94),pages 174–180, April 24–27, 1994.

    Google Scholar 

  2. Peter Beckman, Dennis Gannon, and Elizabeth Johnson. Portable Parallel Programming in HPC++. In WWW, http://www.extreme.indiana.edu./hpc++/docs/ppphpc++/icpp.html

  3. Grady Booch. Object Oriented Design With Applications. AddisonWesley, 2. edition, 1994.

    Google Scholar 

  4. Patrick Bridges, Nathan Doss, William Gropp, Edward Karrels, Ewing Lusk, and Anthony Skjellum. Users’ Guide to mpich, a Portable Implementation of MPI. Argonne National Laboratory, 9700 South Cass Avenue, Argonne, IL 60439–4801, July 1995.

    Google Scholar 

  5. Gregory D. Burns, Raja B. Daoud, and James R. Vaigl. LAM: An Open Cluster Environment for MPI. In Proceedings of the Supercomputing Symposium ‘84, Toronto, Canada, June 1994.

    Google Scholar 

  6. Lois Curfman, McInnes, and Barry F. Smith. PETSc 2.0: A case study of using MPI to develop numerical software libraries. In MPI Developers Conference, June, 1995.

    Google Scholar 

  7. Jack Dongarra, Ed D’Azevedo, and Jim Demmel. ScaLAPACK Project. In WWW, http://www.netlib.org/scalapack/index.html.

    Google Scholar 

  8. Jack Dongarra, Andrew Lumsdaine, Xinhui Niu, Roldan Pozo, and Karin Remington. Sparse Matrix Libraries in C++ for High Performance Architectures. In Proceedings of the Second Annual Object-Oriented Numerics Conference (90N-SKI’94), pages 122–138, April 24–27, 1994.

    Google Scholar 

  9. Al Geist, Adam Beguelin, Jack Dongarra, Weicheng Jiang, Robert Manchek, and Vaidy Sunderam. PVM: Parallel Virtual Machine — A Users’ Guide and Tutorial for Networked Parallel Computing. Scientific and Engineering Computation. The MIT Press, Cambridge, MA, 1994.

    Google Scholar 

  10. F. Guidec and J.-M. Jézéquel. Design of a Parallel Object-Oriented Linear Algebra Library. In K. M. Decker and R. M. Rehmann, editors, Programming Environments for Massively Parallel Distributed Systems,pages 359 — 364. Birkhäuser Verlag, 1994.

    Google Scholar 

  11. Werner Krötz. Entwurf und Implementierung einer objektorientierten Gleichungslösung in C++ zum Einsatz im industriellen Strömungssimulationsprogramm TASCflow. Diplomarbeit, Technische Universität München, August 1996.

    Google Scholar 

  12. P. Luksch, U. Maier, S. Rathmayer, F. Unger, and M. Weidmann. Parallelization of a State-of-the-Art Industrial CFD Package for Execution on Networks of Workstations and Massively Parallel Processors. In Third European PVM Users’ Group Meeting, EuroPVM 96, München, October 1996.

    Google Scholar 

  13. Peter Luksch, Ursula Maier, Sabine Rathmayer, and Matthias Weidmann. Software Engineering Methods for Parallel and Distributed Scientific Computing. In HPCN Europe 1996, Lecture Notes in Computer Science. Springer-Verlag, April 1996.

    Google Scholar 

  14. Ursula Maier. Verteilte Ressourcenverwaltung in einem Netzwerk von Workstations. Technical report, Technische Universität München, Institut fair Informatik, Lehrstuhl für Rechnertechnik und Rechneror-ganisation, August 1996.

    Google Scholar 

  15. Rebecca Parsons and Daniel Quinlan. A++/P++ Array Classes for Architecture Independent Finite Difference Computations. In Proceedings of the Second Annual Object-Oriented Numerics Conference (OON-SKI’94), pages 408–418, April 24–27, 1994.

    Google Scholar 

  16. Michael J. Raw. A Coupled Algebraic Multigrid Method for the 3D Navier-Stokes Equations. In Fast Solvers for Flow Problems, Proceedings of the 10th GAMM-Seminar, Notes on Numerical Fluid Mechanics Vol. 49. Vieweg-Verlag, Braunschweig, Wiesbaden, 1995.

    Google Scholar 

  17. Gregory V. Wilson and Paul Lu, editors. Parallel Pro-gramming Using C++. Scientific and Engineering Computa-tion. The MIT Press, http://www-mitpress.mit.edu:80/mitp/recentbooks/comp/wilrp.html, July 1996.

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1997 Springer Science+Business Media New York

About this chapter

Cite this chapter

Weidmann, M. (1997). Object-Oriented Redesign of a Real-World Fortran 77 Solver. In: Arge, E., Bruaset, A.M., Langtangen, H.P. (eds) Modern Software Tools for Scientific Computing. Birkhäuser, Boston, MA. https://doi.org/10.1007/978-1-4612-1986-6_15

Download citation

  • DOI: https://doi.org/10.1007/978-1-4612-1986-6_15

  • Publisher Name: Birkhäuser, Boston, MA

  • Print ISBN: 978-1-4612-7368-4

  • Online ISBN: 978-1-4612-1986-6

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics