                     NVECTOR_PARHYPE
                 released as part of SUNDIALS
    SUite of Nonlinear and DIfferential/ALgebraic equation Solvers
                   Release 3.1.0, November 2017


The NVECTOR_PARHYP implementation of the nvector module provided with
SUNDIALS is a wrapper around hypre's ParVector class. 
Most of the vector kernels simply call hypre vector operations. 

NVECTOR_PARHYP defines the content field of N_Vector to 
be a structure containing the global and local lengths of the vector, a 
pointer to an object of type hypre_ParVector, an MPI communicator, 
and a boolean flag indicating ownership of the data array.

NVECTOR_PARHYP defines implementations of all vector operations defined
by the generic NVECTOR module in the table of operations, except for 
N_VSetArrayPointer and N_VGetArrayPointer, because accessing raw vector data should 
be handled by hypre functions.  As such, this vector is not available for use with 
SUNDIALS Fortran interfaces. When access to raw vector data is needed, one 
should extract the hypre vector first, and then use hypre methods to access the data. 
Usage examples of NVECTOR_PARHYP are provided in cvAdvDiff_non_ph.c example program 
for CVODE and the ark_diurnal_kry_ph.c example program for ARKODE.

A. Documentation
----------------

The NVECTOR_PARHYP implementation is fully described in the user documentation
for any of the SUNDIALS solvers. A PDF file for the user guide for a particular
solver is available in the solver's subdirectory under doc/.


B. Installation
---------------

For basic installation instructions see /sundials/INSTALL_GUIDE.pdf. 
For complete installation instructions see any of the user guides.



C. Releases
-----------

v. 3.1.0 - Nov. 2017
v. 3.0.0 - Sep. 2017
v. 2.7.0 - Sep. 2016


