MatIsSymmetricKnown#
Checks if a matrix knows if it is symmetric or not and its symmetric state
Synopsis#
#include "petscmat.h" 
PetscErrorCode MatIsSymmetricKnown(Mat A, PetscBool *set, PetscBool *flg)
Not Collective
Input Parameter#
- A - the matrix to check 
Output Parameters#
- set - - PETSC_TRUEif the matrix knows its symmetry state (this tells you if the next flag is valid)
- flg - the result (only valid if set is - PETSC_TRUE)
Notes#
Does not check the matrix values directly, so this may return unknown (set = PETSC_FALSE). Use MatIsSymmetric()
if you want it explicitly checked
One can declare that a matrix is symmetric with MatSetOption(mat,MAT_SYMMETRIC,PETSC_TRUE) and if it is known to remain symmetric
after changes to the matrices values one can call MatSetOption(mat,MAT_SYMMETRY_ETERNAL,PETSC_TRUE)
See Also#
Matrices, Mat, MAT_SYMMETRY_ETERNAL, MatTranspose(), MatIsTranspose(), MatIsHermitian(), MatIsStructurallySymmetric(), MatSetOption(), MatIsSymmetric(), MatIsHermitianKnown()
Level#
advanced
Location#
Index of all Mat routines
Table of Contents for all manual pages
Index of all manual pages