1998-02-20 07:27:26 +08:00
|
|
|
/*BHEADER**********************************************************************
|
2008-07-18 09:34:48 +08:00
|
|
|
* Copyright (c) 2008, Lawrence Livermore National Security, LLC.
|
2006-07-28 07:26:57 +08:00
|
|
|
* Produced at the Lawrence Livermore National Laboratory.
|
2008-07-18 09:34:48 +08:00
|
|
|
* This file is part of HYPRE. See file COPYRIGHT for details.
|
1998-02-20 07:27:26 +08:00
|
|
|
*
|
2008-07-18 09:34:48 +08:00
|
|
|
* HYPRE is free software; you can redistribute it and/or modify it under the
|
|
|
|
|
* terms of the GNU Lesser General Public License (as published by the Free
|
|
|
|
|
* Software Foundation) version 2.1 dated February 1999.
|
1998-02-20 07:27:26 +08:00
|
|
|
*
|
|
|
|
|
* $Revision$
|
2006-07-28 07:26:57 +08:00
|
|
|
***********************************************************************EHEADER*/
|
|
|
|
|
|
2006-09-23 06:06:21 +08:00
|
|
|
|
|
|
|
|
|
2007-11-14 03:48:28 +08:00
|
|
|
|
1998-02-20 07:27:26 +08:00
|
|
|
/******************************************************************************
|
|
|
|
|
*
|
|
|
|
|
* HYPRE_MultiblockMatrix interface
|
|
|
|
|
*
|
|
|
|
|
*****************************************************************************/
|
|
|
|
|
|
2012-03-07 03:15:29 +08:00
|
|
|
#include "seq_mv.h"
|
1998-02-20 07:27:26 +08:00
|
|
|
|
|
|
|
|
/*--------------------------------------------------------------------------
|
1999-09-18 03:05:03 +08:00
|
|
|
* HYPRE_MultiblockMatrixCreate
|
1998-02-20 07:27:26 +08:00
|
|
|
*--------------------------------------------------------------------------*/
|
|
|
|
|
|
|
|
|
|
HYPRE_MultiblockMatrix
|
1999-09-18 03:05:03 +08:00
|
|
|
HYPRE_MultiblockMatrixCreate( )
|
1998-02-20 07:27:26 +08:00
|
|
|
{
|
|
|
|
|
return ( (HYPRE_MultiblockMatrix)
|
1999-09-18 03:05:03 +08:00
|
|
|
hypre_MultiblockMatrixCreate( ));
|
1998-02-20 07:27:26 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/*--------------------------------------------------------------------------
|
1999-09-18 03:05:03 +08:00
|
|
|
* HYPRE_MultiblockMatrixDestroy
|
1998-02-20 07:27:26 +08:00
|
|
|
*--------------------------------------------------------------------------*/
|
|
|
|
|
|
2010-12-21 03:27:44 +08:00
|
|
|
HYPRE_Int
|
1999-09-18 03:05:03 +08:00
|
|
|
HYPRE_MultiblockMatrixDestroy( HYPRE_MultiblockMatrix matrix )
|
1998-02-20 07:27:26 +08:00
|
|
|
{
|
1999-09-18 03:05:03 +08:00
|
|
|
return( hypre_MultiblockMatrixDestroy( (hypre_MultiblockMatrix *) matrix ) );
|
1998-02-20 07:27:26 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/*--------------------------------------------------------------------------
|
1999-09-18 03:05:03 +08:00
|
|
|
* HYPRE_MultiblockMatrixLimitedDestroy
|
1998-02-20 07:27:26 +08:00
|
|
|
*--------------------------------------------------------------------------*/
|
|
|
|
|
|
2010-12-21 03:27:44 +08:00
|
|
|
HYPRE_Int
|
1999-09-18 03:05:03 +08:00
|
|
|
HYPRE_MultiblockMatrixLimitedDestroy( HYPRE_MultiblockMatrix matrix )
|
1998-02-20 07:27:26 +08:00
|
|
|
{
|
1999-09-18 03:05:03 +08:00
|
|
|
return( hypre_MultiblockMatrixLimitedDestroy( (hypre_MultiblockMatrix *) matrix ) );
|
1998-02-20 07:27:26 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/*--------------------------------------------------------------------------
|
1999-09-18 03:05:03 +08:00
|
|
|
* HYPRE_MultiblockMatrixInitialize
|
1998-02-20 07:27:26 +08:00
|
|
|
*--------------------------------------------------------------------------*/
|
|
|
|
|
|
2010-12-21 03:27:44 +08:00
|
|
|
HYPRE_Int
|
1999-09-18 03:05:03 +08:00
|
|
|
HYPRE_MultiblockMatrixInitialize( HYPRE_MultiblockMatrix matrix )
|
1998-02-20 07:27:26 +08:00
|
|
|
{
|
1999-09-18 03:05:03 +08:00
|
|
|
return ( hypre_MultiblockMatrixInitialize( (hypre_MultiblockMatrix *) matrix ) );
|
1998-02-20 07:27:26 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/*--------------------------------------------------------------------------
|
1999-09-18 03:05:03 +08:00
|
|
|
* HYPRE_MultiblockMatrixAssemble
|
1998-02-20 07:27:26 +08:00
|
|
|
*--------------------------------------------------------------------------*/
|
|
|
|
|
|
2010-12-21 03:27:44 +08:00
|
|
|
HYPRE_Int
|
1999-09-18 03:05:03 +08:00
|
|
|
HYPRE_MultiblockMatrixAssemble( HYPRE_MultiblockMatrix matrix )
|
1998-02-20 07:27:26 +08:00
|
|
|
{
|
1999-09-18 03:05:03 +08:00
|
|
|
return( hypre_MultiblockMatrixAssemble( (hypre_MultiblockMatrix *) matrix ) );
|
1998-02-20 07:27:26 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/*--------------------------------------------------------------------------
|
1999-09-18 03:05:03 +08:00
|
|
|
* HYPRE_MultiblockMatrixPrint
|
1998-02-20 07:27:26 +08:00
|
|
|
*--------------------------------------------------------------------------*/
|
|
|
|
|
|
|
|
|
|
void
|
1999-09-18 03:05:03 +08:00
|
|
|
HYPRE_MultiblockMatrixPrint( HYPRE_MultiblockMatrix matrix )
|
1998-02-20 07:27:26 +08:00
|
|
|
{
|
1999-09-18 03:05:03 +08:00
|
|
|
hypre_MultiblockMatrixPrint( (hypre_MultiblockMatrix *) matrix );
|
1998-02-20 07:27:26 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/****************************************************************************
|
|
|
|
|
END OF ROUTINES THAT ARE ESSENTIALLY JUST CALLS THROUGH TO OTHER ROUTINES
|
|
|
|
|
AND THAT ARE INDEPENDENT OF THE PARTICULAR MATRIX TYPE (except for names)
|
|
|
|
|
***************************************************************************/
|
|
|
|
|
|
|
|
|
|
/*--------------------------------------------------------------------------
|
1999-09-18 03:05:03 +08:00
|
|
|
* HYPRE_MultiblockMatrixSetNumSubmatrices
|
1998-02-20 07:27:26 +08:00
|
|
|
*--------------------------------------------------------------------------*/
|
|
|
|
|
|
2010-12-21 03:27:44 +08:00
|
|
|
HYPRE_Int
|
|
|
|
|
HYPRE_MultiblockMatrixSetNumSubmatrices( HYPRE_MultiblockMatrix matrix, HYPRE_Int n )
|
1998-02-20 07:27:26 +08:00
|
|
|
{
|
1999-09-18 03:05:03 +08:00
|
|
|
return( hypre_MultiblockMatrixSetNumSubmatrices(
|
1998-02-20 07:27:26 +08:00
|
|
|
(hypre_MultiblockMatrix *) matrix, n ) );
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/*--------------------------------------------------------------------------
|
1999-09-18 03:05:03 +08:00
|
|
|
* HYPRE_MultiblockMatrixSetSubmatrixType
|
1998-02-20 07:27:26 +08:00
|
|
|
*--------------------------------------------------------------------------*/
|
|
|
|
|
|
2010-12-21 03:27:44 +08:00
|
|
|
HYPRE_Int
|
1999-09-18 03:05:03 +08:00
|
|
|
HYPRE_MultiblockMatrixSetSubmatrixType( HYPRE_MultiblockMatrix matrix,
|
2010-12-21 03:27:44 +08:00
|
|
|
HYPRE_Int j,
|
|
|
|
|
HYPRE_Int type )
|
1998-02-20 07:27:26 +08:00
|
|
|
{
|
1999-09-18 03:05:03 +08:00
|
|
|
return( hypre_MultiblockMatrixSetSubmatrixType(
|
1998-02-20 07:27:26 +08:00
|
|
|
(hypre_MultiblockMatrix *) matrix, j, type ) );
|
|
|
|
|
}
|