PETSc version 3.15.5
Fix/Edit manual page

# DMPlexRemapGeometry

This function maps the original DM coordinates to new coordinates.

### Synopsis

    #include "petscdmplex.h"
    #include "petscfe.h"
    PetscErrorCode DMPlexRemapGeometry(DM dm, PetscReal time,
                                       void (*func)(PetscInt, PetscInt, PetscInt,
                                                    const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
                                                    const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
                                                    PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]))

Not collective

### Input Parameters

| dm | - The DM
| time | - The time
| func | - The function transforming current coordinates to new coordaintes

### Calling sequence of func

       func(PetscInt dim, PetscInt Nf, PetscInt NfAux,

            const PetscInt uOff[], const PetscInt uOff_x[], const PetscScalar u[], const PetscScalar u_t[], const PetscScalar u_x[],

            const PetscInt aOff[], const PetscInt aOff_x[], const PetscScalar a[], const PetscScalar a_t[], const PetscScalar a_x[],

            PetscReal t, const PetscReal x[], PetscInt numConstants, const PetscScalar constants[], PetscScalar f[]);

| dim | - The spatial dimension
| Nf | - The number of input fields (here 1)
| NfAux | - The number of input auxiliary fields
| uOff | - The offset of the coordinates in u[] (here 0)
| uOff_x | - The offset of the coordinates in u_x[] (here 0)
| u | - The coordinate values at this point in space
| u_t | - The coordinate time derivative at this point in space (here NULL)
| u_x | - The coordinate derivatives at this point in space
| aOff | - The offset of each auxiliary field in u[]
| aOff_x | - The offset of each auxiliary field in u_x[]
| a | - The auxiliary field values at this point in space
| a_t | - The auxiliary field time derivative at this point in space (or NULL)
| a_x | - The auxiliary field derivatives at this point in space
| t | - The current time
| x | - The coordinates of this point (here not used)
| numConstants | - The number of constants
| constants | - The value of each constant
| f | - The new coordinates at this point in space

### See Also

DMGetCoordinates(), DMGetCoordinatesLocal(), DMGetCoordinateDM(), DMProjectFieldLocal(), DMProjectFieldLabelLocal()

### Level

intermediate

### Location

src/dm/impls/plex/plexgeometry.c
Index of all DMPLEX routines
Table of Contents for all manual pages
Index of all manual pages