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 - the number of nonzeros
cols - the columns of the nonzeros
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 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#
Level#
advanced
Location#
Examples#
src/mat/tutorials/ex12.c
src/mat/tutorials/ex16.c
src/ksp/ksp/tutorials/ex59.c
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_ConstantDiagonal() in src/mat/impls/cdiagonal/cdiagonal.c
MatRestoreRow_MPIDense() in src/mat/impls/dense/mpi/mpidense.c
MatRestoreRow_SeqDense() in src/mat/impls/dense/seq/dense.c
MatRestoreRow_Diagonal() in src/mat/impls/diagonal/diagonal.c
MatRestoreRow_Htool() in src/mat/impls/htool/htool.cxx
MatRestoreRow_HYPRE() in src/mat/impls/hypre/mhypre.c
MatRestoreRow_SeqKAIJ() in src/mat/impls/kaij/kaij.c
MatRestoreRow_MPIKAIJ() in src/mat/impls/kaij/kaij.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