MatSetValuesBatch#
Adds (ADD_VALUES
) many blocks of values into a matrix at once. The blocks must all be square and the same size. Currently, this can only be called once and creates the given matrix.
Synopsis#
#include "petscmat.h"
PetscErrorCode MatSetValuesBatch(Mat mat, PetscInt nb, PetscInt bs, PetscInt rows[], const PetscScalar v[])
Not Collective
Input Parameters#
mat - the matrix
nb - the number of blocks
bs - the number of rows (and columns) in each block
rows - a concatenation of the rows for each block
v - a concatenation of logically two-dimensional arrays of values
Notes#
MatSetPreallocationCOO()
and MatSetValuesCOO()
may be a better way to provide the values
In the future, we will extend this routine to handle rectangular blocks, and to allow multiple calls for a given matrix.
See Also#
Matrices, Mat
, MatSetOption()
, MatAssemblyBegin()
, MatAssemblyEnd()
, MatSetValuesBlocked()
, MatSetValuesLocal()
,
InsertMode
, INSERT_VALUES
, ADD_VALUES
, MatSetValues()
, MatSetPreallocationCOO()
, MatSetValuesCOO()
Level#
advanced
Location#
Index of all Mat routines
Table of Contents for all manual pages
Index of all manual pages