petsc-3.14.6 2021-03-30
Report Typos and Errors

MatCreateConstantDiagonal

Creates a matrix with a uniform value along the diagonal

Synopsis

#include "petscmat.h" 
PetscErrorCode  MatCreateConstantDiagonal(MPI_Comm comm,PetscInt m,PetscInt n,PetscInt M,PetscInt N,PetscScalar diag,Mat *J)
Collective

Input Parameters

comm - MPI communicator
m - number of local rows (or PETSC_DECIDE to have calculated if M is given) This value should be the same as the local size used in creating the y vector for the matrix-vector product y = Ax.
n - This value should be the same as the local size used in creating the x vector for the matrix-vector product y = Ax. (or PETSC_DECIDE to have calculated if N is given) For square matrices n is almost always m.
M - number of global rows (or PETSC_DETERMINE to have calculated if m is given)
N - number of global columns (or PETSC_DETERMINE to have calculated if n is given)
diag - the diagonal value

Output Parameter

J - the diagonal matrix

Notes

Only supports square matrices with the same number of local rows and columns

See Also

MatDestroy(), MATCONSTANTDIAGONAL, MatScale(), MatShift(), MatMult(), MatGetDiagonal(), MatGetFactor(), MatSolve()

Level

advanced

Location

src/mat/impls/cdiagonal/cdiagonal.c
Index of all Mat routines
Table of Contents for all manual pages
Index of all manual pages