Actual source code: dmfieldimpl.h

petsc-3.14.6 2021-03-30
Report Typos and Errors
  2: #define      __DMFIELDIMPL_H

  4: #include <petscdmfield.h>
  5: #include <petsc/private/petscimpl.h>

  7: PETSC_EXTERN PetscBool      DMFieldRegisterAllCalled;
  8: PETSC_EXTERN PetscErrorCode DMFieldRegisterAll(void);

 10: typedef struct _DMFieldOps *DMFieldOps;
 11: struct _DMFieldOps {
 12:   PetscErrorCode (*create) (DMField);
 13:   PetscErrorCode (*destroy) (DMField);
 14:   PetscErrorCode (*setfromoptions) (PetscOptionItems*,DMField);
 15:   PetscErrorCode (*setup) (DMField);
 16:   PetscErrorCode (*view) (DMField,PetscViewer);
 17:   PetscErrorCode (*evaluate) (DMField,Vec,PetscDataType,void*,void*,void*);
 18:   PetscErrorCode (*evaluateFE) (DMField,IS,PetscQuadrature,PetscDataType,void*,void*,void*);
 19:   PetscErrorCode (*evaluateFV) (DMField,IS,PetscDataType,void*,void*,void*);
 20:   PetscErrorCode (*getDegree) (DMField,IS,PetscInt *,PetscInt *);
 21:   PetscErrorCode (*createDefaultQuadrature) (DMField,IS,PetscQuadrature*);
 22:   PetscErrorCode (*computeFaceData) (DMField,IS,PetscQuadrature,PetscFEGeom *);
 23: };
 24: struct _p_DMField {
 25:   PETSCHEADER(struct _DMFieldOps);
 26:   DM dm;
 27:   DMFieldContinuity continuity;
 28:   PetscInt numComponents;
 29:   void *data;
 30: };

 32: PETSC_INTERN PetscErrorCode DMFieldCreate(DM,PetscInt,DMFieldContinuity,DMField*);
 33: #endif