:orphan:
# PetscMatlabEngine
Object used to communicate with MATLAB
## Synopsis
```
typedef struct _p_PetscMatlabEngine *PetscMatlabEngine;
```
## Notes
`Mat`s transferred between PETSc and MATLAB and vis versa are transposed in the other space
(this is because MATLAB uses compressed column format and PETSc uses compressed row format)
One must `./configure` PETSc with `--with-matlab [-with-matlab-dir=matlab_root_directory]` to
use this capability
## See Also
`PetscMatlabEngineCreate()`, `PetscMatlabEngineDestroy()`, `PetscMatlabEngineEvaluate()`,
`PetscMatlabEngineGetOutput()`, `PetscMatlabEnginePut()`, `PetscMatlabEngineGet()`,
`PetscMatlabEnginePrintOutput()`, `PetscMatlabEnginePutArray()`, `PetscMatlabEngineGetArray()`,
`PETSC_MATLAB_ENGINE_()`, `PETSC_MATLAB_ENGINE_SELF`, `PETSC_MATLAB_ENGINE_WORLD`
## Level
intermediate
## Location
include/petscmatlab.h
## Implementations
_p_PetscMatlabEngine in src/sys/classes/matlabengine/matlab.c
---
[Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/include/petscmatlab.h)
[Index of all Sys routines](index.md)
[Table of Contents for all manual pages](/manualpages/index.md)
[Index of all manual pages](/manualpages/singleindex.md)