PETSc version 3.17.5
DMCreateInterpolationScale
Forms L = 1/(R*1) such that diag(L)*R preserves scale and is thus suitable for state (versus residual) restriction.
Synopsis
#include "petscdm.h"
#include "petscdmlabel.h"
#include "petscds.h"
PetscErrorCode DMCreateInterpolationScale(DM dac,DM daf,Mat mat,Vec *scale)
Input Parameters
| dac | - DM that defines a coarse mesh
|
| daf | - DM that defines a fine mesh
|
| mat | - the restriction (or interpolation operator) from fine to coarse
|
Output Parameter
| scale | - the scaled vector
|
Developer Notes
If the fine-scale DMDA has the -dm_bind_below option set to true, then DMCreateInterpolationScale() calls MatSetBindingPropagates()
on the restriction/interpolation operator to set the bindingpropagates flag to true.
See Also
DMCreateInterpolation()
Level
developer
Location
src/dm/interface/dm.c
Index of all DM routines
Table of Contents for all manual pages
Index of all manual pages