:orphan: # MatCreateTranspose Creates a new matrix `MATTRANSPOSEVIRTUAL` object that behaves like A' ## Synopsis ``` #include "petscmat.h" PetscErrorCode MatCreateTranspose(Mat A, Mat *N) ``` Collective ## Input Parameter - ***A -*** the (possibly rectangular) matrix ## Output Parameter - ***N -*** the matrix that represents A' ## Note The transpose A' is NOT actually formed! Rather the new matrix object performs the matrix-vector product by using the `MatMultTranspose()` on the original matrix ## See Also [](ch_matrices), `Mat`, `MATTRANSPOSEVIRTUAL`, `MatCreateNormal()`, `MatMult()`, `MatMultTranspose()`, `MatCreate()`, `MATNORMALHERMITIAN` ## Level intermediate ## Location src/mat/impls/transpose/transm.c --- [Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/mat/impls/transpose/transm.c) [Index of all Mat routines](index.md) [Table of Contents for all manual pages](/manualpages/index.md) [Index of all manual pages](/manualpages/singleindex.md)