Introduction To Fortran 90 For Engineers And Scientists
Post on 22-Sep-2016
Editor: Stratis Callopoulos, email@example.com Send announcements to firstname.lastname@example.org
INTRODUCTION TO FORTRAN 90 FOR ENGINEERS AND SCIENTISTS
Reviewed by Svetozar Margenov
Introduction to Fortran 90for Engineers and Scientists, by Larry R. Nyhoff and Sanford C. Leestma, Prentice Hall, Upper Saddle River, N.J., 1997, 359 pp., ISBNO-13-505215-7, $31.60.
new book from the best-selling A Prentice Hall Modular Series for Introductory Engineering is available, introducing Fortran 90. The authors demonstrate impressive skill in pre- senting Fortran 90s features with a strong emphasis on teaching the basic steps in program development: prob- lem analysis and specification, algo- rithm construction, program coding, and program testing and maintenance.
Since its creation in 1956, Fortran has remained one of the most com- monly used high-level computer lan- guages for writing programs to solve science and engineering problems. The present Fortran standard, called ANSI Fortran 90, is a successor of For- tran 77. The new features make For- tran 90 a truly modern language. The most important features follow:
a free form to replace the old fixed format for programs, new control constructs for selec- tive and repetitive execution, powerful new array-processing mechanisms, programmer-defined data types, dynamic memory allocation, and pointers for constructing com- plex data structures.
Larry Nyhoff and Sanford Leestma organize Introduction t o Fortran 90for Engineers and Scientists in 10 chapters.
Chapter 1 introduces computer or- ganization, programming, and problem solving. The authors briefly present ba- sic Fortran structures in Chapter 2. The next chapters deal with selective and repetitive execution, input and out- put, programming with functions and subroutines, array processing, parame- terized data types and derived types and structures, pointers, and linked struc- tures. Each chapter offers examples that illustrate the features of the discussed Fortran 90 programming structures. Thirteen of the examples are special applications that present the complete problem-solving process. These appli- cations include numerical integration, quality control, electrical networks, road construction, internet addresses, sorting, and searching.
The authors systematically emphasize the importance of good structure and style in the programming. Each of the examples is very carefully shaped and demonstrates good algorithm design as well as a perfect programming style.
The book is written clearly and on the appropriate level, being much more than a programming manual. It is in- tended to serve as a first course in com- puting and assumes no previous expe- rience with computers. Most of the material presented could be covered in a one-term course. The examples are properly selected from different fields of engineering and scientific comput-
ing. They start with a very pure algo- rithm for a radioactive-decay problem and end with a considerably more com- plicated problem for applying linked lists to internet addresses. The com- plexity of the examples varies widely. Nevertheless, all are presented in a self- contained form and do not require uni- versity-level knowledge. The authors use some examples in multiple sections and chapters to stress how recently in- troduced computer-language features could improve the problems already considered algorithmic and program solution.
The authors especially emphasize Fortran 90s new features, providing traditional Fortran users an opportunity to better evaluate the new powerful ar- ray-processing mechanisms as well as the dynamic memory allocation tools.
The books material strictly follows the ANSI Fortran 90 standard. Over past few years, new versions of Fortran 90 have appeared that incorporate tools for designing efficient programs for massively parallel computers. Unfortu- nately, Introduction to Fortran 90fir En- gineers and Scientists does not treat top- ics related to parallel programming with Fortran.
Svetozar Margenov is an associate pro- jissor at the Central Laboratoly on Paral- lel Processing, Bulgarian Academy of Sci- ences, Sofia, Bulgaria; margenov@cantor: bas. bg; http://kww.mad. bgBulRTD/mth/ margen2.html.
JULY-SEPTEMBER 1998 87