petsc-3.9.4 2018-09-11
Report Typos and Errors

MatRestoreRow

Frees any temporary space allocated by MatGetRow().

Synopsis

#include "petscmat.h" 
PetscErrorCode MatRestoreRow(Mat mat,PetscInt row,PetscInt *ncols,const PetscInt *cols[],const PetscScalar *vals[])
Not Collective

Input Parameters

mat - the matrix
row - the row to get
ncols, cols - the number of nonzeros and their columns
vals - if nonzero the column values

Notes

This routine should be called after you have finished examining the entries.

This routine zeros out ncols, cols, and vals. This is to prevent accidental us of the array after it has been restored. If you pass NULL, it will not zero the pointers. Use of cols or vals after MatRestoreRow is invalid.

Fortran Notes

The calling sequence from Fortran is
   MatRestoreRow(matrix,row,ncols,cols,values,ierr)
      Mat     matrix (input)
      integer row    (input)
      integer ncols  (output)
      integer cols(maxcols) (output)
      double precision (or double complex) values(maxcols) output
Where maxcols >= maximum nonzeros in any row of the matrix.

In Fortran MatRestoreRow() MUST be called after MatGetRow() before another call to MatGetRow() can be made.

See Also

MatGetRow()

Level

advanced

Location

src/mat/interface/matrix.c

Examples

src/mat/examples/tutorials/ex12.c.html
src/mat/examples/tutorials/ex16.c.html

Implementations

MatRestoreRow_MPIAdj in src/mat/impls/adj/mpi/mpiadj.c
MatRestoreRow_MPIAIJ in src/mat/impls/aij/mpi/mpiaij.c
MatRestoreRow_SeqAIJ in src/mat/impls/aij/seq/aij.c
MatRestoreRow_MPIBAIJ in src/mat/impls/baij/mpi/mpibaij.c
MatRestoreRow_SeqBAIJ in src/mat/impls/baij/seq/baij.c
MatRestoreRow_MPIDense in src/mat/impls/dense/mpi/mpidense.c
MatRestoreRow_SeqDense in src/mat/impls/dense/seq/dense.c
MatRestoreRow_HYPRE in src/mat/impls/hypre/mhypre.c
MatRestoreRow_MPISBAIJ in src/mat/impls/sbaij/mpi/mpisbaij.c
MatRestoreRow_SeqSBAIJ in src/mat/impls/sbaij/seq/sbaij.c
MatRestoreRow_SeqSELL in src/mat/impls/sell/seq/sell.c

Index of all Mat routines
Table of Contents for all manual pages
Index of all manual pages