Skip to main content
`Ctrl`+`K`

# MatCreateNormalHermitian

Creates a new matrix object `MATNORMALHERMITIAN` that behaves like \(A^* A\).

## Synopsis

    #include "petscmat.h"
    PetscErrorCode MatCreateNormalHermitian(Mat A, Mat *N)

Collective

## Input Parameter

- A - the (possibly rectangular complex) matrix

## Output Parameter

- N - the matrix that represents \( A^* A\)

## Note

The product \( A^* A\) is NOT actually formed! Rather the new matrix object performs the matrix-vector product, `MatMult()`, by first multiplying by \(A\) and then \(A^*\)

If `MatGetFactor()` is called on this matrix with `MAT_FACTOR_QR` then the inner matrix `A` is used for the factorization

## See Also

Matrices, `Mat`, `MATNORMAL`, `MATNORMALHERMITIAN`, `MatNormalHermitianGetMat()`

## Level

intermediate

## Location

src/mat/impls/normal/normmh.c

## Examples

src/ksp/ksp/tutorials/ex27.c

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