Skip to main content
`Ctrl`+`K`

# DMAdaptorAdapt

Creates a new `DM` that is adapted to the problem

## Synopsis

    #include "petscdmadaptor.h"
    PetscErrorCode DMAdaptorAdapt(DMAdaptor adaptor, Vec x, DMAdaptationStrategy strategy, DM *adm, Vec *ax)

Not Collective

## Input Parameters

- adaptor - The `DMAdaptor` object

- x - The global approximate solution

- strategy - The adaptation strategy, see `DMAdaptationStrategy`

## Output Parameters

- adm - The adapted `DM`

- ax - The adapted solution

## Options Database Keys

- -snes_adapt (initial|sequential|multigrid) - adaption strategy, see `DMAdaptationStrategy`

- -adapt_gradient_view - View the Clement interpolant of the solution gradient

- -adapt_hessian_view - View the Clement interpolant of the solution Hessian

- -adapt_metric_view - View the metric tensor for adaptive mesh refinement

## See Also

DM Basics, `DMAdaptor`, `DMAdaptationStrategy`, `DMAdaptorSetSolver()`, `DMAdaptorCreate()`

## Level

intermediate

## Location

src/snes/utils/dm/dmadapt.c

Index of all DM routines
Table of Contents for all manual pages
Index of all manual pages