README -- BlockSolve95 v3.0
---------------------------------------------------------------

The BlockSolve95 package contains routines for solving large
sparse symmetric systems of linear equations on massively
parallel distributed memory systems and networks of workstations.

BlockSolve95.tar.Z
---------------------------------------------------------------

The compressed tar file includes five directories under the
main BlockSolve95 directory:
examples -- contains example programs that call BlockSolve95
src -- the source for BlockSolve95
doc -- contains subdirectories with the manual (in tex, dvi and postscript)
       as well as UNIX man pages for the important BlockSolve95 routines
include -- the include files for BlockSolve95
bmake -- the makefile stuff from PETSc
lib -- the directory for the BlockSolve95 libraries

Also included in the main BlockSolve95 directory are four files:
README -- this file.
MACHINES -- information on each of the machines on which BlockSolve95
       has been tested.  You should see if there are any potential
       problems on the machine you intend to install BlockSolve95.
MPI -- information some problems and version differences w.r.t. MPI
COPYRIGHT -- information about the BlockSolve95 copyright

Instructions for installing BlockSolve95
---------------------------------------------------------------

First you must unbundle BlockSolve95.tar.Z.
This file was created with command:
   tar cf - BlockSolve95 | compress > BlockSolve95.tar.Z
and the file can be unbundled with the command
   zcat BlockSolve95.tar.Z | tar xvf - 

Instructions for making BlockSolve95
---------------------------------------------------------------

The makefiles are set up using the PETSc bmake facility.  One can
build the BlockSolve95 library, make the example programs, delete libs,
and run the example programs all from the root BlockSolve95 directory.

You need to have the environmental variable PETSC_ARCH set to the
correct architecture (eg, setenv PETSC_ARCH rs6000).  You could also
include this argument (eg, PETSC_ARCH=rs6000) on the command line 
when calling make.

For more details on specific machines, please read the MACHINES file.

To make the (optimized) libraries one does:
make ACTION=lib BOPT=O tree

To make the (optimized) libraries faster one can do:
make ACTION=libfast BOPT=O tree
make ACTION=ranlib BOPT=O tree

To make the example programs one does:
make ACTION=examples BOPT=O tree

To delete the libs one does:
make ACTION=deletelibs BOPT=O tree

To run the BlockSolve95 example programs one does:
make ACTION=bsrunexamples tree

All the site dependent definitions are in the files
bmake/$(PETSC_ARCH)/$(PETSC_ARCH).site For example,
#
#  Fortran libraries the C linker needs
#
FC_LIB         = /usr/lang/SC1.0.1/libF77.a -lm /usr/lang/SC1.0.1/libm.a
#
#  Blas and Lapack libraries
#
BLAS_LIB       =  /usr/local/lapack/lib/blas.a $(FC_LIB)
LAPACK_LIB     =  /usr/local/lapack/lib/lapack.a
#
#  MPI libraries and include files and mpirun
#
MPI_LIB        = /usr/local/mpi/lib/sun4/ch_p4/libmpi.a
MPI_INCLUDE    = -Dmpi -I/usr/local/mpi/include
MPIRUN         = mpirun
#
#  Where the BlockSolve95 include files are, and the BlockSolve95 library
#
BS_INCLUDE = -I/home/plassman/BlockSolve95/include
BS_LIB     = /home/plassman/BlockSolve95/lib/lib$(BOPT)/$(PETSC_ARCH)/libBS95.a

Instructions for UNIX man pages
---------------------------------------------------------------
BlockSolve95 includes UNIX man pages for all its routines. 
These may be accessed by including $BSHOME/BlockSolve95/doc/man
in your MANPATH environmental variable with setenv (where $BSHOME
is your local directory path to the BlockSolve95 directory.
We recommend using "xman" to view the man pages; the routine
pages may be found under "BlockSolve95 routines" (section 3) 
and the include files in "BlockSolve95 include files (section h).

The BlockSolve95 users manual
---------------------------------------------------------------
A postscript (manual.ps) and dvi (manual.dvi) version of the
user's manual may be found in the directory doc/manual.

Problems with BlockSolve95
---------------------------------------------------------------
Email any problems with BlockSolve95 to either
jones@cs.utk.edu or plassman@mcs.anl.gov.  
Please include the version number as found in the
file include/BSsparse.h.

