MatInvertVariableBlockDiagonal#

Inverts the point block diagonal entries.

Synopsis#

#include "petscmat.h" 
PetscErrorCode MatInvertVariableBlockDiagonal(Mat mat, PetscInt nblocks, const PetscInt *bsizes, PetscScalar *values)

Collective; No Fortran Support

Input Parameters#

Output Parameter#

  • values - the block inverses in column major order (FORTRAN-like)

Notes#

Use MatInvertBlockDiagonal() if all blocks have the same size

The blocks never overlap between two MPI ranks, use MatInvertVariableBlockEnvelope() for that case

See Also#

Matrices, Mat, MatInvertBlockDiagonal(), MatSetVariableBlockSizes(), MatInvertVariableBlockEnvelope()

Level#

advanced

Location#

src/mat/interface/matrix.c

Implementations#

MatInvertVariableBlockDiagonal_MPIAIJ in src/mat/impls/aij/mpi/mpiaij.c
MatInvertVariableBlockDiagonal_SeqAIJ in src/mat/impls/aij/seq/aij.c


Edit on GitLab

Index of all Mat routines
Table of Contents for all manual pages
Index of all manual pages