petsc-3.7.7 2017-09-25
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
In the future, we will extend this routine to handle rectangular blocks, and to allow multiple calls for a given matrix.
See Also
MatSetOption(), MatAssemblyBegin(), MatAssemblyEnd(), MatSetValuesBlocked(), MatSetValuesLocal(),
InsertMode, INSERT_VALUES, ADD_VALUES, MatSetValues()
Level:advanced
Location:src/mat/interface/matrix.c
Index of all Mat routines
Table of Contents for all manual pages
Index of all manual pages
Examples
src/ksp/ksp/examples/tutorials/ex4.c.html