README
NetSolve/src/Testing/matlab subdirectory

This README describes how to test the Matlab scripts in
this directory.

We assume that the user has typed

UNIX> make matlab

in the $NETSOLVE_ROOT directory to create the Matlab
client interface, and then to make these mex-files 
accessible to Matlab:

UNIX> setenv MATLABPATH $(NETSOLVE_ROOT)/bin/$(NETSOLVE_ARCH)

and make sure that the user has also set an agent name

UNIX> setenv NETSOLVE_AGENT <machine_name>

where NETSOLVE_ROOT and NETSOLVE_ARCH are as defined
in NetSolve/conf/Makefile.inc.

There are four NetSolve functions available from Matlab:

   netsolve()
   netsolve_nb()
   netsolve_err()
   netsolve_errmsg()

For complete details, please refer to the NetSolve Users'
Guide.

NetSolve-Matlab test scripts that are available in the
$NETSOLVE_ROOT/src/Testing/matlab/ subdirectory.

For example, a NetSolve-Matlab BLAS test suite
is available:

>> blas_test

The following NetSolve-Matlab LAPACK test scripts 
are available:

>> lapack_test

>> dgesv

>> dgesv_nonblocking

>> eigen_compare

and other individual testing files for LAPACK routines (dgbsv,
dgeev, dgels, dgelsd, dgelss, dgelsy, dgesdd, dgesv, dgesvd,
dggev, dggglm, dgtsv, dpbsv, dposv, dptsv, dsbev, dsbevd, dsbevx,
dsbgv, dsbgvd, dsbgvx, dstev, dstevd, dstevr, dstevx, dsyev,
dsyevd, dsyevr, dsyevx, dsygv, dsygvd, dsygvx, dsysv).

The following NetSolve-Matlab ScaLAPACK test scripts
are available:

>> scalapack_test
>> pdgesv
>> pdposv 

The following NetSolve-Matlab 'sparse_iterative_solve' test scripts
are available:

>> petsc_test
>> aztec_test
>> itpack_test

Alternatively the user can generate a series of Harwell
Boeing matrix types (1-5) using the generate.m script.

>> generate(0);

And then call the functions petsc.m, aztec.m, and/or
itpack.m by typing 

>> [A,rhs] = generate(1);
>> [x1,its1] = petsc(A,rhs);
>> [x2,its2] = aztec(A,rhs);
>> [x3,its3] = itpack(A,rhs);

The following NetSolve-Matlab 'sparse_direct_solve' test scripts
are available:

>> ma28_test
>> superlu_test

Alternatively the user can generate a series of Harwell
Boeing matrix types (1-5) using the generate.m script.

>> generate(0);

And then call the functions ma28.m or superlu.m
by typing 

>> [A,rhs] = generate(1);
>> [x1] = ma28(A,rhs);
>> [x2] = superlu(A,rhs);
