petsc-3.7.1 2016-05-15
Report Typos and Errors

MatCreateSeqBAIJWithArrays

Creates an sequential BAIJ matrix using matrix elements provided by the user.

Synopsis

#include "petscmat.h"  
PetscErrorCode  MatCreateSeqBAIJWithArrays(MPI_Comm comm,PetscInt bs,PetscInt m,PetscInt n,PetscInt *i,PetscInt *j,PetscScalar *a,Mat *mat)
Collective on MPI_Comm Many br

Input Parameters

comm - must be an MPI communicator of size 1 Many br
bs - size of block Many br
m - number of rows Many br
n - number of columns Many br
i - row indices Many br
j - column indices Many br
a - matrix values Many br

Output Parameter

mat -the matrix Many br

Many br

Notes

The i, j, and a arrays are not copied by this routine, the user must free these arrays Many bronce the matrix is destroyed Many br

You cannot set new nonzero locations into this matrix, that will generate an error. Many br

The i and j indices are 0 based Many br

When block size is greater than 1 the matrix values must be stored using the BAIJ storage format (see the BAIJ code to determine this). Many br

The order of the entries in values is the same as the block compressed sparse row storage format; that is, it is Many brthe same as a three dimensional array in Fortran values(bs,bs,nnz) that contains the first column of the first Many brblock, followed by the second column of the first block etc etc. That is, the blocks are contiguous in memory Many brwith column-major ordering within blocks. Many br

See Also

MatCreate(), MatCreateBAIJ(), MatCreateSeqBAIJ()

Level:advanced
Location:
src/mat/impls/baij/seq/baij.c
Index of all Mat routines
Table of Contents for all manual pages
Index of all manual pages