:orphan:
# MatTransposeSymbolic
Computes the symbolic part of the transpose of a matrix.
## Synopsis
```
#include "petscmat.h"
PetscErrorCode MatTransposeSymbolic(Mat A, Mat *B)
```
Collective
## Input Parameter
- ***A -*** the matrix to transpose
## Output Parameter
- ***B -*** the transpose. This is a complete matrix but the numerical portion is invalid. One can call `MatTranspose`(A,`MAT_REUSE_MATRIX`,&B) to compute the
numerical portion.
## Note
This is not supported for many matrix types, use `MatTranspose()` in those cases
## See Also
[](ch_matrices), `Mat`, `MatTransposeSetPrecursor()`, `MatTranspose()`, `MatMultTranspose()`, `MatMultTransposeAdd()`, `MatIsTranspose()`, `MatReuse`, `MAT_INITIAL_MATRIX`, `MAT_REUSE_MATRIX`, `MAT_INPLACE_MATRIX`
## Level
intermediate
## Location
src/mat/interface/matrix.c
## Implementations
MatTransposeSymbolic_SeqAIJ in src/mat/impls/aij/seq/symtranspose.c
---
[Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/mat/interface/matrix.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)