Making for HYPRE_ParCSRMatrixMatvec and HYPRE_ParCSRMatrixMatvecT calls from Fortran

This commit is contained in:
lambda 2000-03-22 17:54:47 +00:00
parent 9f3d642d24
commit 64025924af
4 changed files with 98 additions and 8 deletions

View File

@ -204,3 +204,42 @@ hypre_F90_IFACE(hypre_parcsrmatrixrestorerow)( long int *matrix,
*values_ptr = (long int) values;
}
/*--------------------------------------------------------------------------
* HYPRE_ParCSRMatrixMatvec
*--------------------------------------------------------------------------*/
void
hypre_F90_IFACE(hypre_parcsrmatrixmatvec( double *alpha,
long int *A,
long int *x,
double *beta,
long int *y )
{
*ierr = (int) ( HYPRE_ParCSRMatrixMatvec( (double) *alpha,
(HYPRE_ParCSRMatrix) *A,
(HYPRE_ParVector) *x,
(double) *beta,
(HYPRE_ParVector) *y ) );
}
/*--------------------------------------------------------------------------
* HYPRE_ParCSRMatrixMatvecT
*--------------------------------------------------------------------------*/
void
hypre_F90_IFACE(hypre_parcsrmatrixmatvect( double *alpha,
long int *A,
long int *x,
double *beta,
long int *y )
{
*ierr = (int) ( HYPRE_ParCSRMatrixMatvecT( (double) *alpha,
(HYPRE_ParCSRMatrix) *A,
(HYPRE_ParVector) *x,
(double) *beta,
(HYPRE_ParVector) *y ) );
}

View File

@ -255,8 +255,11 @@ HYPRE_CSRMatrixToParCSRMatrix( MPI_Comm comm,
*--------------------------------------------------------------------------*/
int
HYPRE_ParCSRMatrixMatvec( double alpha, HYPRE_ParCSRMatrix A, HYPRE_ParVector x,
double beta, HYPRE_ParVector y)
HYPRE_ParCSRMatrixMatvec( double alpha,
HYPRE_ParCSRMatrix A,
HYPRE_ParVector x,
double beta,
HYPRE_ParVector y )
{
return ( hypre_ParCSRMatrixMatvec( alpha, (hypre_ParCSRMatrix *) A,
(hypre_ParVector *) x, beta, (hypre_ParVector *) y) );
@ -267,8 +270,11 @@ HYPRE_ParCSRMatrixMatvec( double alpha, HYPRE_ParCSRMatrix A, HYPRE_ParVector x,
*--------------------------------------------------------------------------*/
int
HYPRE_ParCSRMatrixMatvecT( double alpha, HYPRE_ParCSRMatrix A, HYPRE_ParVector x,
double beta, HYPRE_ParVector y)
HYPRE_ParCSRMatrixMatvecT( double alpha,
HYPRE_ParCSRMatrix A,
HYPRE_ParVector x,
double beta,
HYPRE_ParVector y )
{
return ( hypre_ParCSRMatrixMatvecT( alpha, (hypre_ParCSRMatrix *) A,
(hypre_ParVector *) x, beta, (hypre_ParVector *) y) );

View File

@ -204,3 +204,42 @@ hypre_F90_IFACE(hypre_parcsrmatrixrestorerow)( long int *matrix,
*values_ptr = (long int) values;
}
/*--------------------------------------------------------------------------
* HYPRE_ParCSRMatrixMatvec
*--------------------------------------------------------------------------*/
void
hypre_F90_IFACE(hypre_parcsrmatrixmatvec( double *alpha,
long int *A,
long int *x,
double *beta,
long int *y )
{
*ierr = (int) ( HYPRE_ParCSRMatrixMatvec( (double) *alpha,
(HYPRE_ParCSRMatrix) *A,
(HYPRE_ParVector) *x,
(double) *beta,
(HYPRE_ParVector) *y ) );
}
/*--------------------------------------------------------------------------
* HYPRE_ParCSRMatrixMatvecT
*--------------------------------------------------------------------------*/
void
hypre_F90_IFACE(hypre_parcsrmatrixmatvect( double *alpha,
long int *A,
long int *x,
double *beta,
long int *y )
{
*ierr = (int) ( HYPRE_ParCSRMatrixMatvecT( (double) *alpha,
(HYPRE_ParCSRMatrix) *A,
(HYPRE_ParVector) *x,
(double) *beta,
(HYPRE_ParVector) *y ) );
}

View File

@ -255,8 +255,11 @@ HYPRE_CSRMatrixToParCSRMatrix( MPI_Comm comm,
*--------------------------------------------------------------------------*/
int
HYPRE_ParCSRMatrixMatvec( double alpha, HYPRE_ParCSRMatrix A, HYPRE_ParVector x,
double beta, HYPRE_ParVector y)
HYPRE_ParCSRMatrixMatvec( double alpha,
HYPRE_ParCSRMatrix A,
HYPRE_ParVector x,
double beta,
HYPRE_ParVector y )
{
return ( hypre_ParCSRMatrixMatvec( alpha, (hypre_ParCSRMatrix *) A,
(hypre_ParVector *) x, beta, (hypre_ParVector *) y) );
@ -267,8 +270,11 @@ HYPRE_ParCSRMatrixMatvec( double alpha, HYPRE_ParCSRMatrix A, HYPRE_ParVector x,
*--------------------------------------------------------------------------*/
int
HYPRE_ParCSRMatrixMatvecT( double alpha, HYPRE_ParCSRMatrix A, HYPRE_ParVector x,
double beta, HYPRE_ParVector y)
HYPRE_ParCSRMatrixMatvecT( double alpha,
HYPRE_ParCSRMatrix A,
HYPRE_ParVector x,
double beta,
HYPRE_ParVector y )
{
return ( hypre_ParCSRMatrixMatvecT( alpha, (hypre_ParCSRMatrix *) A,
(hypre_ParVector *) x, beta, (hypre_ParVector *) y) );