home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1993 #1 / NN_1993_1.iso / spool / comp / lang / fortran / 4963 < prev    next >
Encoding:
Internet Message Format  |  1993-01-11  |  4.5 KB

  1. Path: sparky!uunet!zaphod.mps.ohio-state.edu!wupost!psuvax1!psuvm!hdk
  2. Organization: Penn State University
  3. Date: Mon, 11 Jan 1993 10:15:11 EST
  4. From: H. D. Knoble <HDK@psuvm.psu.edu>
  5. Message-ID: <93011.101511HDK@psuvm.psu.edu>
  6. Newsgroups: comp.lang.fortran
  7. Subject: Re: inverse matrix
  8. References: <C0I49C.Jrr@athena.cs.uga.edu> <93008.125409HDK@psuvm.psu.edu>
  9. Lines: 74
  10.  
  11. The original poster asked:
  12. >I've often wondered about _Numerical Recipes_.  The physicists here
  13. >swear by it.  Could you recommend to me a good text or reference for
  14. >algorithms to do these common matrix operations?  Are there any
  15. >freely-available robust algorithms for matrix inversion...
  16.  
  17. The physicists there, with some exceptions, are like physicists most places -
  18. they know their answers to about three places and only use computer algorithms
  19. to get a few more places:-) Actually Numerical Recipes are not very good in
  20. general except for pedagogical purposes to study raw classical methods.
  21.  
  22. Following is the precaution I put in our (VM/CMS) "Help" display for
  23. Numerical Recipes when the book was published:
  24.  
  25.     "Precaution
  26.  
  27.     While these algorithms are especially useful for pedagogical
  28.     purposes, we disagree with the authors that numerical computations
  29.     can be "cookbooked" by even professional programmers not
  30.     thoroughly seasoned and extensively trained in the field of
  31.     numerical and seminumerical computations.  Commercial numerical
  32.     software such as IMSL and NAG libraries take into considerations
  33.     computational difficulties and singularities arising in use of
  34.     their individual algorithms; thus IMSL and NAG are called "robust"
  35.     algorithms because they have been designed, implemented, and
  36.     tested to give either correct answers or a "numerical
  37.     difficulties" warning.  Thus while it is possible to derive
  38.     numerically wrong answers from algebraically correct algorithms,
  39.     this possibility has been minimized in commercial packages such as
  40.     these by applying the theories of numerical computations that have
  41.     been developed by the community of experts over the years.
  42.  
  43.     Numerical Recipes algorithms are not robust in this sense.  While
  44.     a general caveat is given, there are several instances where the
  45.     authors of Numerical Recipes do not give the casual scientific
  46.     reader, who may have a need for a specific algorithm, specific
  47.     precautions cogent to algorithms in that particular arena.  The
  48.     authors of Numerical Recipes do give excellent robust numerical
  49.     software bibliographies.  As such we offer the mechanism below
  50.     pointing to availability of "Numerical Recipes" here as useful
  51.     teaching tools rather than "production" programs suitable for
  52.     general research computing.  ..."
  53.  
  54. To answer the question of where to look, excellent Reference works are:
  55.  
  56. 1) NUMERICAL METHODS, Software and Analysis by John Rice, McGraw-Hill,
  57.    ISBN 0-07-052208-1, 1983, 483 Pages. This is an 8.5" by 11" text which
  58.    groups numerical methods by purpose (e.g., Matrices and Linear Equations
  59.    is Chapter 6) and gives numerical methods, when to use each, precautions,
  60.    illconditioned and well-conditioned cases, etc., and and paragraphs of
  61.    annotated bibliography of code sources. This is one of the most, if not
  62.    the most, qualified works.
  63.  
  64. 2) COMPUTER SOLUTION OF LINEAR EQUATIONS, by George Forsythe and Cleve Moler,
  65.    Prentice-Hall, LCCCN: 67-18915, 1967, 148 pages. This is a good theory
  66.    text which shows (even 25 years ago) how computer implementations using
  67.    naive FORmula TRANslation can be break down numerically.
  68.  
  69. 3) COMPUTER METHODS FOR MATHEMATICAL COMPUTATIONS, by George Forsythe,
  70.    Michael Malcolm, and Cleve Moler, Prentice Hall, ISBN 0-13-165332-6, 1977,
  71.    259 Pages. Develops good Fortran code in a student environment. Source
  72.    code accompanying this text book is available on Netlib (see below).
  73.  
  74. As one poster (Dodson) pointed out, one hardly ever needs to compute a matrix
  75. inverse. The above reference and he are really saying to look into what you
  76. are doing a little closer.
  77.  
  78. As far as free code is concerned, I suggest that you look at Reference (1)
  79. above carefully (Even a good algorithm is only as good as it's input).  Then
  80. look at ACM Algorithm 408 and LINPACK and ITPACK, all of which are available
  81. on NETLIB.  To use NETLIB one sends email message(s) (subcommands) to a Netlib
  82. server.  If you've never used it send the one-line, one-word, email prose:
  83. HELP            to NETLIB at RESEARCH.ATT.COM  or  NETLIB at ORNL.GOV
  84. or NETLIB at NAC.NO (three sites with essentially the same source codes).
  85.