Meschach is a C-language library of routines for performing matrix computations. It has a collection of data structures which are self-contained, can be created, destroyed and resized at will which includes permutations, vectors, matrices, integer vectors, complex vectors and matrices and sparse matrices.
Meschach code looks like this:
main() { MAT *A, *Acopy; VEC *b, *x; PERM *pivot; A = m_input(MNULL); /* read in matrix from stdin */ Acopy = m_copy(A,MNULL); /* create & copy matrix */ b = v_input(VNULL); /* read in vector from stdin */ pivot = px_get(A->m); /* get pivot permutation -- size = # rows of A */ LUfactor(A,pivot); /* LU factorisation */ x = LUsolve(A,pivot,b,VNULL); /* ... and solve A.x = b; result is in x */ /* .... and print out solution with a comment */ printf("# x =\n"); v_output(x); }
For information on the manual, see the bottom of this page.
The files in this directory include:
FAQ.meschach: Meschach's Frequently Asked Questions (with answers)
mesch12a.announce: Announcement notice for version 1.2
mesch12b.index: Netlib index entry for new version
mesch12b.tar.Z: tar file containing complete library (compress'd)
mesch12b.tar.gz ....(gzip'd)
mesch12b.zip ....(zip'd)
BinHex4.0'd Mac setup file for Think C courtesy of Brent Boyer (boyer@jumpjibe.stanford.edu)
meschach0.shar.Z: shar file containing core routines (compress'd)
meschach0.shar.gz ....(gzip'd)
meschach1.shar.Z: shar file containing basic matrix operations (compress'd)
meschach1.shar.gz ....(gzip'd)
meschach2.shar.Z: shar file containing matrix factorisations (compress'd)
meschach2.shar.gz ....(gzip'd)
meschach3.shar.Z: shar file containing sparse and iterative methods (compress'd)
meschach3.shar.gz ....(gzip'd)
meschach4.shar.Z: shar file containing complex operations (compress'd)
meschach4.shar.gz ....(gzip'd)
oldmeschach.shar.Z: shar file containing old iterative routines (compress'd)
oldmeschach.shar.gz ....(gzip'd)
rcs_logs: Change log a la RCS
version1.1b: Directory for version 1.1b
version1.2a: Directory for version 1.2a
For more information about Meschach, email david.stewart@anu.edu.au or zbigniew.leyk@anu.edu.au
The Meschach 1.2 manual (Meschach: Matrix Computations in C)is published by the Centre for Mathematics and its Applications, School of Mathematical Sciences, Australian National University, Canberra, ACT 0200, Australia. To order your copy send a message to the above address by paper mail, or send an order over email to jillian.smith@anu.edu.au with your paper mail address. Cost: about A$30 (that's roughly US$22) + postage and handling. You can pay on delivery by international money order, credit/charge card etc. on delivery.
Note: There is also the tutorial chapter of the manual in ASCII form distributed with Meschach.
David Stewart, Department of Mathematics, University of Iowa. dstewart@math.uiowa.edu http://www.math.uiowa.edu/~dstewart/