MatCreateVecs#
Get vector(s) compatible with the matrix, i.e. with the same parallel layout, PetscLayout
for rows and columns
Synopsis#
#include "petscmat.h"
PetscErrorCode MatCreateVecs(Mat mat, Vec *right, Vec *left)
Collective
Input Parameter#
mat - the matrix
Output Parameters#
right - (optional) vector that the matrix can be multiplied against
left - (optional) vector that the matrix vector product can be stored in
Notes#
The blocksize of the returned vectors is determined by the row and column block sizes set with MatSetBlockSizes()
or the single blocksize (same for both) set by MatSetBlockSize()
.
These are new vectors which are not owned by the mat, they should be destroyed in VecDestroy()
when no longer needed
See Also#
Matrices, Mat
, Vec
, VecCreate()
, VecDestroy()
, DMCreateGlobalVector()
Level#
advanced
Location#
Examples#
src/ts/tutorials/ex24.c
src/ts/tutorials/ex20td.c
src/ts/tutorials/ex20adj.c
src/ts/tutorials/ex44.c
src/ts/tutorials/ex16.c
src/ts/tutorials/ex20fwd.c
src/ts/tutorials/ex20.c
src/ts/tutorials/ex20opt_p.c
src/ts/tutorials/ex20opt_ic.c
src/ts/tutorials/ex36.c
Implementations#
MatCreateVecs_Nest() in src/mat/impls/nest/matnest.c
Index of all Mat routines
Table of Contents for all manual pages
Index of all manual pages