Markus Neteler wrote:
as your improvements and comments may be of further interest,
I cc it to grass5.
Hi all: Glynn is currently improving the "gmath" lib to add further
maxtrix/vector functionality:
I've also added src/libes/gmath/DEPEND, which lists programs which
depend upon the gmath library (and which functions).
The programs are:
i.cca
i.fft
i.pca
i.zc
r.surf.fractal
r.surf.gauss
r.surf.random
i.shape
At present, I haven't converted any of these programs to use the new
functions, as I don't know how to test them. Examples would be
appreciated.
The functions which haven't yet been replaced are:
fft copyright issues
jacobi use gmath matrix type
eigen use gmath matrix type
del2g needs to match new fft interface
rand1 copyright issues
gauss copyright issues
It's unclear as to whether fft should use the gmath matrix type. If it
should, there should probably be a function to initialise a matrix
from a raster map layer.
max_pow2 can remain as-is.
--
Glynn Clements <glynn.clements@virgin.net>
Markus Neteler wrote:
Glynn, please keep the modules above working, even if LAPACK is not present,
I hope that's possible not to have LAPACK being a strict dependency.
OK. The main issue is how to handle FFTW; either we make it a
dependency, or we bundle it. Note that FFTW is a lot more involved
than the existing FFT code; it contains multiple FFT algorithms, and
selects whichever one is likely to be fastest.
A couple more points about the gmath library generally:
1. G_matrix_{get,set}_element should probably be replaced by macros,
to enable a compiler to perform "loop induction" optimisation
(basically, eliminating the multiplication when accessing elements
within a loop with a fixed increment).
2. It may be worth also having an index array (an array of pointers to
the start of each row) to allow random access without the need for
multiplication.
Also, there seems to be a fair amount of matrix code in libgis, e.g.
G_tred2, G_tqli (used by gmath/eigen.c), G_ludcmp, alloc/free stuff in
gis/dalloc.c, maybe other stuff.
--
Glynn Clements <glynn.clements@virgin.net>
FYI
----- Original Message -----
From: "Brian Gough" <bjg@network-theory.co.uk>
To: <gsl-announce@sources.redhat.com>
Cc: <gsl-discuss@sources.redhat.com>
Sent: Wednesday, July 04, 2001 7:13 AM
Subject: GNU Scientific Library (GSL) 0.9 is released - First Beta Test Release
Dear GSL enthusiasts,
I have just placed a new release snapshot of GSL (0.9) up for
anonymous ftp access.
This is the first beta-test release, after eight development releases.
We will now be working towards a stable and fully-tested 1.0 release.
We would like people to try out the code and examine the results for
errors. Additions to the existing test-suite are especially welcome.
The project home page is at
http://sources.redhat.com/gsl/
and the source code is at
ftp://sources.redhat.com/pub/gsl/
which should soon also be available at the mirror sites.
Installation: GSL uses the standard GNU installation procedure. The
release tarball (gsl-0.9.tar.gz) comes with an INSTALL file.
There is a zip file (gsl-0_9.zip) which includes project files for
compiling GSL with Microsoft Visual C++ (see the file msvc/README.txt
for details).
Packaging: There is an RPM file for gsl-0.9 on the ftp site. Debian
also provides GSL packages.
Documentation: GSL has an extensive 400 page texinfo manual. The info
files are installed in the usual way. The ftp site has the reference
manual in postscript format, and the web site has the reference manual
in HTML format.
Here are the recent entries in the NEWS file.
* What is new in gsl-0.9:
** There is a new system of vector and matrix views. Any code using
vector and matrix views will need to be updated.
** The order of arguments of the view functions involving strides have
been changed to be consistent with the rest of the library.
** The ode solvers have been reorganized.
** There are new eigensystem routines for real symmetric and complex
hermitian matrices.
** The linear algebra directory now includes functions for computing
symmetric tridiagonal decompositions and bidiagonal decompositions.
** The svd routines now include the Golub-Reinsch and Modified
Golub-Reinsch algorithms in addition to the Jacobi algorithm.
** The interpolation directory has been reorganized and a higher-level
"spline" interface has been added which simplifies the handling of
interpolation arguments.
** IEEE support is now available on OpenBSD.