View Single Post
Old 2015-07-07, 01:03   #13
ewmayer
2ω=0
 
ewmayer's Avatar
 
Sep 2002
Rep├║blica de California

979110 Posts
Default

IIRC most of the longstanding components - 'longstanding' implies HLL implementation, as opposed to architecture-targeted BLAS - of the Linpack and Eispack libraries were written in Algol ... yep, here is a snip from the top-of-file comment in my local copy of the 1983-dated Eispack comqr.f file, of which I made much use for my PhD work, along with a fair bit of custom code, e.g. a routine for high-accuracy reduction of the generalized linear eigenproblem
Ax = cBx to one of standard form A'x = cx with A' of full rank. (The rank deficiency is a near-ubiquitous result of the imposition of boundary conditions in numerical discretization of a continuous differential-operator eigenvalue problem.) The custom-reduction + Eispack-COMQR algorithm is far more accurate than the generalized-eigensystem routines in LAPACK package, or at least was as of the late 1990s, last time I used the code and compared to a free-trial copy of Lapack). But I digress:
Code:
C     THIS SUBROUTINE IS A TRANSLATION OF A UNITARY ANALOGUE OF THE
C     ALGOL PROCEDURE  COMLR, NUM. MATH. 12, 369-376(1968) BY MARTIN
C     AND WILKINSON.
C     HANDBOOK FOR AUTO. COMP., VOL.II-LINEAR ALGEBRA, 396-403(1971).
C     THE UNITARY ANALOGUE SUBSTITUTES THE QR ALGORITHM OF FRANCIS
C     (COMP. JOUR. 4, 332-345(1962)) FOR THE LR ALGORITHM.
C
C     THIS SUBROUTINE FINDS THE EIGENVALUES OF A COMPLEX
C     UPPER HESSENBERG MATRIX BY THE QR METHOD.
This is one of those things I wish I had time to play with, but alas my free coding time is fully occupied with code for real-world high-performance applications. But have fun, y'all!
ewmayer is offline   Reply With Quote