Glynn Clements f9b826d8f5 Fix #include directives: 15 роки тому
..
test 49b8066c8f Added a new library to grass called ccmath (LGPL license) to replace the 16 роки тому
ATLAS_wrapper_blas_level_1.c 49b8066c8f Added a new library to grass called ccmath (LGPL license) to replace the 16 роки тому
DEPEND db49180dd7 welcome to GRASS 7.0.svn 17 роки тому
Makefile 002bbe23df Keep all library dependencies in Grass.make 16 роки тому
README db49180dd7 welcome to GRASS 7.0.svn 17 роки тому
TODO 49b8066c8f Added a new library to grass called ccmath (LGPL license) to replace the 16 роки тому
blas_level_1.c 49b8066c8f Added a new library to grass called ccmath (LGPL license) to replace the 16 роки тому
blas_level_2.c 49b8066c8f Added a new library to grass called ccmath (LGPL license) to replace the 16 роки тому
blas_level_3.c f9b826d8f5 Fix #include directives: 15 роки тому
brent.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 роки тому
ccmath_grass_wrapper.c 49b8066c8f Added a new library to grass called ccmath (LGPL license) to replace the 16 роки тому
dalloc.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 роки тому
del2g.c 49b8066c8f Added a new library to grass called ccmath (LGPL license) to replace the 16 роки тому
eigen_tools.c 49b8066c8f Added a new library to grass called ccmath (LGPL license) to replace the 16 роки тому
fft.c cbb63d89e4 Correct order of rows, cols arguments to fftw_plan_dft_2d 16 роки тому
findzc.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 роки тому
gauss.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 роки тому
getg.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 роки тому
gmathlib.dox bc2c15ac5c Doxygen cleanup: changed references from old itc.it web page/mailing lists to osgeo.org ones; 17 роки тому
ialloc.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 роки тому
la.c 49b8066c8f Added a new library to grass called ccmath (LGPL license) to replace the 16 роки тому
lu.c 9cdef39111 Various files have moved from lib/gis to lib/gmath: 16 роки тому
max_pow2.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 роки тому
mult.c 49b8066c8f Added a new library to grass called ccmath (LGPL license) to replace the 16 роки тому
rand1.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 роки тому
solvers_classic_iter.c 49b8066c8f Added a new library to grass called ccmath (LGPL license) to replace the 16 роки тому
solvers_direct.c f9b826d8f5 Fix #include directives: 15 роки тому
solvers_krylov.c 49b8066c8f Added a new library to grass called ccmath (LGPL license) to replace the 16 роки тому
sparse_matrix.c 49b8066c8f Added a new library to grass called ccmath (LGPL license) to replace the 16 роки тому

README

Date: Wed, 27 Sep 2000 15:41:24 +0000
From: David D Gray

I have checked in the gmath stuff to CVS. This directory might later
contain other kinds of generic routine (fft is one that comes to mind in
view of the investigations into NR). But for now there is only the
BLAS/LAPACK wrappers and supporting structure in la.c.

I thought to follow the libc in separating maths stuff to a separate
directory, even though they are G_*() functions.

I believe it is fairly intuitive to use - developers should use
G_matrix_init() to create a matrix. A vector can be built with setting
cols (or rows as appropriate) to 1. A G_vector_init() might be useful,
but it would have to distinguish between a row and column vector, (is it
needed?). Then use G_[set,get]_matrix_element() to set or retrieve
elements. No-one should need to ever worry about Fortran peculiarities
(like declaring doublereal variables, or calling a foo_() ).

Currently there are: add matrices A+B (doesn't use BLAS), multiply A.B,
invert A^-1, solve simple linear system A.X=B for X given B. Others are
easy to add as required.

David
-----------------------------------

Getting BLAS/LAPACK (one package):

http://netlib.bell-labs.com/netlib/master/readme.html
http://www.netlib.org

http://www.netlib.org/lapack/

Compiling of LAPACK (be sure to have "." in PATH):

Linux:
cd LAPACK
cp INSTALL/make.inc.LINUX make.inc
#now edit Makefile and
#comment line 11 and uncomment line 12 (to include "blaslib" compilation)
#compile with
make

Solaris:
cd LAPACK
cp INSTALL/make.inc.SUN4SOL2 make.inc
#now edit Makefile and
#comment line 11 and uncomment line 12 (to include "blaslib" compilation)
#compile with
make

etc.

See INSTALL/ for further platforms.

--------------------------------------------------------------------
Usage:

Sample Makefile:

MODULE_TOPDIR = /path/to/grass

PGM = test

LIBES = $(GMATHLIB) $(GISLIB)
DEPENDENCIES = $(GMATHLIB) $(GISLIB)

include $(MODULE_TOPDIR)/include/Make/Module.make


Sample module source:

#include
#include
#include

int main (int argc, char *argv[])
{
mat_struct *matrix;

matrix = G_matrix_init (3, 3, 1);
G_matrix_free (matrix);

return 0;
}