Deprecated: $wgMWOAuthSharedUserIDs=false is deprecated, set $wgMWOAuthSharedUserIDs=true, $wgMWOAuthSharedUserSource='local' instead [Called from MediaWiki\HookContainer\HookContainer::run in /var/www/html/w/includes/HookContainer/HookContainer.php at line 135] in /var/www/html/w/includes/Debug/MWDebug.php on line 372
Numerical computing with modern Fortran - MaRDI portal

Numerical computing with modern Fortran (Q2872958)

From MaRDI portal





scientific article; zbMATH DE number 6247022
Language Label Description Also known as
English
Numerical computing with modern Fortran
scientific article; zbMATH DE number 6247022

    Statements

    0 references
    0 references
    17 January 2014
    0 references
    Fortran programming
    0 references
    numerical computing
    0 references
    textbook
    0 references
    Airy function
    0 references
    sparse matrix
    0 references
    object-oriented programming
    0 references
    numerical quadrature
    0 references
    least squares method
    0 references
    parallel computing
    0 references
    Newton method
    0 references
    Numerical computing with modern Fortran (English)
    0 references
    This book is a reference text intended for Fortran programmers who are already acquainted with Fortran 2003. The book presents a set of problems and their solutions that are common to programmers who maintain or interface to existing Fortran software by using the new features of the language. There are twenty chapters. Chapter 1 selects and briefly describes ten basic changes occurred in the language since the Fortran 77 standard. Chapter 2 describes the subprograms in Fortran 66, modules in Fortran 90, and the include line in Fortran 2003. Chapter 3 illustrates the technique of developing a user-defined generic interface for a set of routines that compute the Airy functions. Chapter 4 uses the user-defined data types, overloaded assignments and user-defined operations to produce a set of functions for manipulating sparse matrices. Chapter 5 uses an example of a calendar date class to demonstrate how object-oriented programming software may be constructed using Fortran 2003. Chapter 6 gives an implementation of Quicksort by using Fortran recursion with abstract classes and interfaces. Chapter 7 is a case study on converting the routine qag from the numerical quadrature package QUADPACK of Fortran 77 to modern style programming. Chapter 8 uses the example of the numerical quadrature routine qag2003 to show how to produce documentation for user-callable routines. Chapter 9 illustrates the usage of several of the available IEEE arithmetic facilities in Fortran 2003. Chapter 10 illustrates some practical aspects of mixing C and Fortran code. Chapter 11 combines the defined types and overloaded assignment with C interoperability to create defined operators for solving sparse linear systems of equations. Chapter 12 implements an example in the solution of two problems based on the least squares methods by using defined operators and overloaded assignments. Chapter 13 uses two examples to illustrate how multiple processors may be used to improve the execution time of a problem through Fortran interface to MPI. Chapter 14 looks briefly at some of the parallel computing feature of coarrays in Fortran 2008. Chapter 15 describes some aspects of the open multi-processing methodology for programming multiple CPUs that share memory in Fortran software. Chapter 16 provides suggestions for modifying source code to replace obsolescent and deleted features by new standard code. A simple Newton method code is used to illustrate the effects. Chapter 17 discusses the construction of suites of tests of numerical software. Chapter 18 describes some available options in compiling codes so as to assist programmers to uncover potential problems and achieve code optimization. Chapter 19 mentions some specific software tools to save code development time and improve the software quality. Chapter 20 summaries the complete listings of the source code referenced in the book that are available for downloading from the SIAM website.
    0 references
    0 references

    Identifiers

    0 references
    0 references
    0 references
    0 references
    0 references
    0 references
    0 references
    0 references
    0 references
    0 references
    0 references
    0 references