TR-2002-08

LLANO: Lazy evaluation, operator templates, and numerical linear algebra

Robert C. Kirby. 29 October, 2002.
Communicated by Robert Kirby.

Abstract

A new C++ matrix algebra package, LLANO, is presented. Operator templates for overloaded operators are used to produce highly efficient yet elegant code. The templates have the effect of deferring operations until assignment. However, care is taken in the interaction of addition with matrix products to avoid escalating operation counts and enable the use of optimized library routines. Numerical examples indicate excellent performance, both for nontrivial algebraic expressions and for a matrix factorization implemented through LLANO.

Original Document

The original document is available in Postscript (uploaded 29 October, 2002 by Robert Kirby).