hypre/seq_matrix_vector/multiblock_matrix.h
cleary 2b6be777eb Additions of several sequential matrix classes, some of which aren't really
used (mapped matrix, multiblock matrix). CSR_matrix is just a fleshed out
version of the simple matrix.h we used to use.
1998-02-19 23:27:26 +00:00

45 lines
1.6 KiB
C

/*BHEADER**********************************************************************
* (c) 1996 The Regents of the University of California
*
* See the file COPYRIGHT_and_DISCLAIMER for a complete copyright
* notice, contact person, and disclaimer.
*
* $Revision$
*********************************************************************EHEADER*/
/******************************************************************************
*
* Header info for Multiblock Matrix data structures
*
*****************************************************************************/
#ifndef hypre_MULTIBLOCK_MATRIX_HEADER
#define hypre_MULTIBLOCK_MATRIX_HEADER
/*--------------------------------------------------------------------------
* Multiblock Matrix
*--------------------------------------------------------------------------*/
typedef struct
{
int num_submatrices;
int *submatrix_types;
void **submatrices;
} hypre_MultiblockMatrix;
/*--------------------------------------------------------------------------
* Accessor functions for the Multiblock Matrix structure
*--------------------------------------------------------------------------*/
#define hypre_MultiblockMatrixSubmatrices(matrix) ((matrix) -> submatrices)
#define hypre_MultiblockMatrixNumSubmatrices(matrix) ((matrix) -> num_submatrices)
#define hypre_MultiblockMatrixSubmatrixTypes(matrix) ((matrix) -> submatrix_types)
#define hypre_MultiblockMatrixSubmatrix(matrix,j) (hypre_MultiblockMatrixSubmatrices\
(matrix)[j])
#define hypre_MultiblockMatrixSubmatrixType(matrix,j) (hypre_MultiblockMatrixSubmatrixTypes\
(matrix)[j])
#endif