:html_theme.sidebar_secondary.remove: true
# Dual Spaces (PetscDualSpace)

The `PetscDualSpace` class encapsulates a function space that is the dual (<a href="https://en.wikipedia.org/wiki/Dual_space" target=_blank>https://en.wikipedia.org/wiki/Dual_space</a>) of a `PetscSpace` class.



## Manual Pages by Level

### Beginner - Basic usage
```{hlist}
---
columns: 3
---
- [](PetscDualSpace.md)
- [](PetscDualSpaceApply.md)
- [](PetscDualSpaceCreate.md)
- [](PetscDualSpaceDestroy.md)
- [](PetscDualSpaceDuplicate.md)
- [](PetscDualSpaceReferenceCell.md)
- [](PetscDualSpaceType.md)
- [](PetscDualSpaceView.md)
```



### Intermediate - Setting options for algorithms and data structures
```{hlist}
---
columns: 3
---
- [](PETSCDUALSPACEBDM.md)
- [](PETSCDUALSPACELAGRANGE.md)
- [](PETSCDUALSPACEREFINED.md)
- [](PETSCDUALSPACESIMPLE.md)
- [](PetscDualSpaceGetDM.md)
- [](PetscDualSpaceGetDimension.md)
- [](PetscDualSpaceGetFunctional.md)
- [](PetscDualSpaceGetInteriorDimension.md)
- [](PetscDualSpaceGetNumComponents.md)
- [](PetscDualSpaceGetNumDof.md)
- [](PetscDualSpaceGetOrder.md)
- [](PetscDualSpaceGetType.md)
- [](PetscDualSpaceLagrangeGetContinuity.md)
- [](PetscDualSpaceLagrangeGetTensor.md)
- [](PetscDualSpaceLagrangeGetTrimmed.md)
- [](PetscDualSpaceLagrangeSetContinuity.md)
- [](PetscDualSpaceLagrangeSetTensor.md)
- [](PetscDualSpaceLagrangeSetTrimmed.md)
- [](PetscDualSpaceRefinedSetCellSpaces.md)
- [](PetscDualSpaceSetDM.md)
- [](PetscDualSpaceSetFromOptions.md)
- [](PetscDualSpaceSetNumComponents.md)
- [](PetscDualSpaceSetOrder.md)
- [](PetscDualSpaceSetType.md)
- [](PetscDualSpaceSetUp.md)
- [](PetscDualSpaceSimpleSetDimension.md)
- [](PetscDualSpaceSimpleSetFunctional.md)
- [](PetscDualSpaceTransform.md)
- [](PetscDualSpaceTransformGradient.md)
- [](PetscDualSpaceTransformHessian.md)
- [](PetscDualSpaceTransformType.md)
- [](PetscDualSpaceViewFromOptions.md)
```



### Advanced - Setting more advanced options and customization
```{hlist}
---
columns: 3
---
- [](PetscDualSpaceApplyAll.md)
- [](PetscDualSpaceApplyAllDefault.md)
- [](PetscDualSpaceApplyDefault.md)
- [](PetscDualSpaceApplyFVM.md)
- [](PetscDualSpaceApplyInterior.md)
- [](PetscDualSpaceApplyInteriorDefault.md)
- [](PetscDualSpaceCreateAllDataDefault.md)
- [](PetscDualSpaceCreateInteriorDataDefault.md)
- [](PetscDualSpaceEqual.md)
- [](PetscDualSpaceGetAllData.md)
- [](PetscDualSpaceGetHeightSubspace.md)
- [](PetscDualSpaceGetInteriorData.md)
- [](PetscDualSpaceGetPointSubspace.md)
- [](PetscDualSpaceGetSection.md)
- [](PetscDualSpaceGetUniform.md)
- [](PetscDualSpaceLagrangeGetMomentOrder.md)
- [](PetscDualSpaceLagrangeGetNodeType.md)
- [](PetscDualSpaceLagrangeGetUseMoments.md)
- [](PetscDualSpaceLagrangeSetMomentOrder.md)
- [](PetscDualSpaceLagrangeSetNodeType.md)
- [](PetscDualSpaceLagrangeSetUseMoments.md)
- [](PetscDualSpacePullback.md)
- [](PetscDualSpacePushforward.md)
- [](PetscDualSpacePushforwardGradient.md)
- [](PetscDualSpacePushforwardHessian.md)
- [](PetscDualSpaceRegister.md)
```



### Developer - Interfaces rarely needed by applications programmers
```{hlist}
---
columns: 3
---
- [](PetscDualSpaceGetDeRahm.md)
- [](PetscDualSpaceGetFormDegree.md)
- [](PetscDualSpaceGetSymmetries.md)
- [](PetscDualSpaceSetFormDegree.md)
```



## Single list of manual pages
```{hlist}
---
columns: 3
---
- [](PETSCDUALSPACEBDM.md)
- [](PETSCDUALSPACELAGRANGE.md)
- [](PETSCDUALSPACEREFINED.md)
- [](PETSCDUALSPACESIMPLE.md)
- [](PetscDualSpace.md)
- [](PetscDualSpaceApply.md)
- [](PetscDualSpaceApplyAll.md)
- [](PetscDualSpaceApplyAllDefault.md)
- [](PetscDualSpaceApplyDefault.md)
- [](PetscDualSpaceApplyFVM.md)
- [](PetscDualSpaceApplyInterior.md)
- [](PetscDualSpaceApplyInteriorDefault.md)
- [](PetscDualSpaceCreate.md)
- [](PetscDualSpaceCreateAllDataDefault.md)
- [](PetscDualSpaceCreateInteriorDataDefault.md)
- [](PetscDualSpaceDestroy.md)
- [](PetscDualSpaceDuplicate.md)
- [](PetscDualSpaceEqual.md)
- [](PetscDualSpaceGetAllData.md)
- [](PetscDualSpaceGetDM.md)
- [](PetscDualSpaceGetDeRahm.md)
- [](PetscDualSpaceGetDimension.md)
- [](PetscDualSpaceGetFormDegree.md)
- [](PetscDualSpaceGetFunctional.md)
- [](PetscDualSpaceGetHeightSubspace.md)
- [](PetscDualSpaceGetInteriorData.md)
- [](PetscDualSpaceGetInteriorDimension.md)
- [](PetscDualSpaceGetNumComponents.md)
- [](PetscDualSpaceGetNumDof.md)
- [](PetscDualSpaceGetOrder.md)
- [](PetscDualSpaceGetPointSubspace.md)
- [](PetscDualSpaceGetSection.md)
- [](PetscDualSpaceGetSymmetries.md)
- [](PetscDualSpaceGetType.md)
- [](PetscDualSpaceGetUniform.md)
- [](PetscDualSpaceLagrangeGetContinuity.md)
- [](PetscDualSpaceLagrangeGetMomentOrder.md)
- [](PetscDualSpaceLagrangeGetNodeType.md)
- [](PetscDualSpaceLagrangeGetTensor.md)
- [](PetscDualSpaceLagrangeGetTrimmed.md)
- [](PetscDualSpaceLagrangeGetUseMoments.md)
- [](PetscDualSpaceLagrangeSetContinuity.md)
- [](PetscDualSpaceLagrangeSetMomentOrder.md)
- [](PetscDualSpaceLagrangeSetNodeType.md)
- [](PetscDualSpaceLagrangeSetTensor.md)
- [](PetscDualSpaceLagrangeSetTrimmed.md)
- [](PetscDualSpaceLagrangeSetUseMoments.md)
- [](PetscDualSpacePullback.md)
- [](PetscDualSpacePushforward.md)
- [](PetscDualSpacePushforwardGradient.md)
- [](PetscDualSpacePushforwardHessian.md)
- [](PetscDualSpaceReferenceCell.md)
- [](PetscDualSpaceRefinedSetCellSpaces.md)
- [](PetscDualSpaceRegister.md)
- [](PetscDualSpaceSetDM.md)
- [](PetscDualSpaceSetFormDegree.md)
- [](PetscDualSpaceSetFromOptions.md)
- [](PetscDualSpaceSetNumComponents.md)
- [](PetscDualSpaceSetOrder.md)
- [](PetscDualSpaceSetType.md)
- [](PetscDualSpaceSetUp.md)
- [](PetscDualSpaceSimpleSetDimension.md)
- [](PetscDualSpaceSimpleSetFunctional.md)
- [](PetscDualSpaceTransform.md)
- [](PetscDualSpaceTransformGradient.md)
- [](PetscDualSpaceTransformHessian.md)
- [](PetscDualSpaceTransformType.md)
- [](PetscDualSpaceType.md)
- [](PetscDualSpaceView.md)
- [](PetscDualSpaceViewFromOptions.md)
```


