Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
Numerical linear approximation in C (Chapman & amp; Hall/CRC Numerical Analy & Scient Comp. Series)
Abdelmalek N., Malek W., Chapman & Hall/CRC, 2008. 968 pp. Type: Book (9781584889786)
Date Reviewed: Jan 30 2009

Overdetermined linear systems of simultaneous equations contain more equations than necessary to determine the value of all their variables. This work is a treatise on techniques to provide approximate solutions for overdetermined linear systems of simultaneous equations. Loosely speaking: if there are n equations in m unknowns, with n>m, what are the best values for the m unknowns that satisfy the problem? Many legitimate issues arise--for instance, what does “best” mean, exactly? This work proposes three meanings for “best,” and proceeds to explain how to “satisfy” the problem in several ways. C code is provided as part of the book, in both printed and machine-readable format.

Notwithstanding its mathematical nature, this book is written for an audience that looks at mathematics as a tool to compute answers, rather than as an internally coherent logical system suitable for theoretical exploration. The work is deliberately addressed to practitioners in the experimental sciences with a problem to solve: how can one reduce results from n experiments in m variables, n>m, to the most fitting values of the variables?

The three meanings of “best” provided are: least absolute value residuals; least square residuals; and Chebyshev residuals. The first two are well-known approaches to adjust for errors, respectively, from long-tailed and short-tailed probability distributions. Chebyshev residuals are chosen to fit the set of residuals all “close enough” in magnitude to each other: in the extreme, all identical residuals. There are only marginal notes with regard to the applicability of each of the three techniques to specific experimental problems; this part is delegated, as appropriate, to the judgment and expertise of the practitioner.

The authors claim inspiration from the popular “Numerical Recipes” series [1]. Yet, the style of “Numerical Recipes” is more captivating, and its printed presentation much cleaner. On the other hand, this work is more academic, without being overbearing: whereas “Numerical Recipes” is at times scanty in referencing literature, this work cites literature liberally. Also, contrary to “Numerical Recipes,” this book presents original work by the authors’ team.

The book begins with a refresher on applied matrix algebra that is abundantly short of a tutorial. It proceeds quickly to the heart of the matter, introducing derivations and techniques, sometimes with, and other times without, proofs. (It is often not clear why proofs may or may not be present.) The prose is generally readable, and even superficial readers will grasp many of the fundamental principles explained. However, careful reading is necessary to understand the details. Alternate solution paths are addressed systematically, each in a dedicated section. A superficial reader can return to a careful examination of a section of interest with relative ease.

The code provided includes all algorithms presented in the text, with 25 corresponding test drivers. It is designed for Microsoft Visual C++; almost all of it, however, compiles without problems with GNU C 4.1.2 after trivial corrections (missing headers). The exception is main.c (the comprehensive test driver), which includes MS Windows code and requires minor extra work. Code performance in the text is referenced at times to personal computer (PC) hardware so old that it is irrelevant. Execution on i86_64 hardware is successful for all but one of the test drivers, which terminates with a segmentation fault.

The code is unfortunately plagued by misguided good intentions. The author proudly documents and applies stratagems to provide to C some “fortranesque” properties, such as array indices offset from one rather than from zero. This makes otherwise easily readable and self-contained code less adaptable to the use of libraries such as Basic Linear Algebra Subprograms (BLAS) and Linear Algebra Package (LAPACK).

There is only modest attention paid in the text (and in the code) to the application of algorithms for sparse matrices. This complicates this truly unfortunate choice: overall, the code becomes only marginally applicable to large problems. Yet, one must acknowledge that solutions of truly large problems were never among the authors’ goals.

This book is a valuable contribution to solving problems relevant to overdetermined systems of simultaneous equations, common to experimental scientists: it handles the mathematical background with sufficient grace to make the underlying theory understandable, and provides computer code adequate for the numerical solutions of small- and medium-size problems. The book and code will be a good starting point for a numerical analyst inclined to produce code capable of handling truly large problems. The printed presentation of the book could be improved using typesetting better suited for math, and it is unfortunate that the C sources are polluted by inappropriate gimmickry. This notwithstanding, this work belongs on the shelves of any experimental laboratory for quantitative disciplines. Students and practitioners who work in such laboratories can do no wrong owning a copy.

Reviewer:  A. Squassabia Review #: CR136471 (0912-1129)
1) Press, W.H.; Teukolsky, S.A.; Vetterling, W.T.; Flannery, B.P.; , Numerical recipes: the art of scientific computing (3rd ed.)Numerical Recipes: Numerical Recipes. Cambridge University Press, New York, NY, 2007.
Bookmark and Share
  Reviewer Selected
Featured Reviewer
 
 
Linear Approximation (G.1.2 ... )
 
 
Algorithm Design And Analysis (G.4 ... )
 
 
C (D.3.2 ... )
 
 
Approximation (G.1.2 )
 
 
Language Classifications (D.3.2 )
 
 
Numerical Linear Algebra (G.1.3 )
 
  more  
Would you recommend this review?
yes
no
Other reviews under "Linear Approximation": Date
The maximum asymptotic bias of S-estimates for regression over the neighborhoods defined by certain special capacities
Ando M., Kimura M. Journal of Multivariate Analysis 90(2): 407-425, 2004. Type: Article
Nov 29 2004
Injection/withdrawal scheduling for natural gas storage facilities
Holland A.  Applied computing (Proceedings of the 2007 ACM Symposium on Applied Computing, Seoul, Korea, Mar 11-15, 2007)332-333, 2007. Type: Proceedings
Sep 6 2007
Numerical linear approximation in C (Chapman & amp; Hall/CRC Numerical Analy & Scient Comp. Series)
Abdelmalek N., Malek W., Chapman & Hall/CRC, 2008.  968, Type: Book (9781584889786), Reviews: (1 of 2)
Dec 27 2008
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy