:orphan: # PCHYPRESetDiscreteCurl Set discrete curl matrx for `PCHYPRE` type of ads ## Synopsis ``` #include "petscpc.h" PetscErrorCode PCHYPRESetDiscreteCurl(PC pc, Mat C) ``` Collective ## Input Parameters - ***pc -*** the preconditioning context - ***C -*** the discrete curl ## Notes C should have as many rows as the number of faces and as many columns as the number of edges in the mesh Each row of G has as many nonzeros as the number of edges of a face, with column indexes being the global indexes of the corresponding edge: matrix entries are +1 and -1 depending on edge orientation with respect to the face orientation ## Developer Note This automatically converts the matrix to `MATHYPRE` if it is not already of that type If this is only for `PCHYPRE` type of ads it should be called `PCHYPREADSSetDiscreteCurl()` ## See Also `PCHYPRE`, `PCHYPRESetDiscreteGradient()` ## Level intermediate ## Location src/ksp/pc/impls/hypre/hypre.c ## Implementations PCHYPRESetDiscreteCurl_HYPRE in src/ksp/pc/impls/hypre/hypre.c
--- [Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/ksp/pc/impls/hypre/hypre.c) [Index of all PC routines](index.md) [Table of Contents for all manual pages](/manualpages/index.md) [Index of all manual pages](/manualpages/singleindex.md)