Skip to main content
`Ctrl`+`K`

# MatCreateHermitianTranspose

Creates a new matrix object of `MatType` `MATHERMITIANTRANSPOSEVIRTUAL` that behaves like A’*

## Synopsis

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

Collective

## Input Parameter

- A - the (possibly rectangular) matrix

## Output Parameter

- N - the matrix that represents A’*

## Note

The Hermitian transpose A’ is NOT actually formed! Rather the new matrix object performs the matrix-vector product, `MatMult()`, by using the `MatMultHermitianTranspose()` on the original matrix

## See Also

Matrices, `Mat`, `MatCreateNormal()`, `MatMult()`, `MatMultHermitianTranspose()`, `MatCreate()`, `MATTRANSPOSEVIRTUAL`, `MatCreateTranspose()`, `MatHermitianTransposeGetMat()`, `MATNORMAL`, `MATNORMALHERMITIAN`

## Level

intermediate

## Location

src/mat/impls/transpose/htransm.c

## Examples

src/ksp/ksp/tutorials/ex81.c
src/ksp/ksp/tutorials/ex81a.c
src/ksp/ksp/tutorials/ex27.c
src/ksp/ksp/tutorials/ex87.c

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