:orphan:
# DMPlexSetIsoperiodicFaceTransform
set geometric transform from donor to periodic points 
## Synopsis
```
#include "petscdmplex.h"   
PetscErrorCode DMPlexSetIsoperiodicFaceTransform(DM dm, const PetscScalar t[])
```
Logically Collective


## Input Arguments

- ***dm -*** `DMPLEX` that has been configured with `DMPlexSetIsoperiodicFaceSF()`
- ***t -*** 4x4 affine transformation basis.





## Notes
Affine transforms are 4x4 matrices in which the leading 3x3 block expresses a rotation (or identity for no rotation),
the last column contains a translation vector, and the bottom row is all zero except the last entry, which must always
be 1. This representation is common in geometric modeling and allows affine transformations to be composed using
simple matrix multiplication.

Although the interface accepts a general affine transform, only affine translation is supported at present.


## Developer Note
This interface should be replaced by making BasisTransform public, expanding it to support affine representations, and
adding GPU implementations to apply the G2L/L2G transforms.


## See Also
 [](ch_unstructured), `DMPLEX`, `DMGetGlobalSection()`, `DMPlexSetIsoperiodicFaceSF()`

## Level
advanced

## Location
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/dm/impls/plex/plexsfc.c.html#DMPlexSetIsoperiodicFaceTransform">src/dm/impls/plex/plexsfc.c</A>


---
[Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/dm/impls/plex/plexsfc.c)


[Index of all DMPlex routines](index.md)  
[Table of Contents for all manual pages](/manualpages/index.md)  
[Index of all manual pages](/manualpages/singleindex.md)  
