Actual source code: petscdm.h

petsc-master 2020-10-26
Report Typos and Errors

  2: !
  3: !  Include file for Fortran use of the DM package in PETSc
  4: !
  5: #if !defined (PETSCDMDEF_H)
  6: #define PETSCDMDEF_H

  8: #include "petsc/finclude/petscis.h"
  9: #include "petsc/finclude/petscvec.h"
 10: #include "petsc/finclude/petscmat.h"

 12: #define DMType character*(80)
 13: #define DMBoundaryType       PetscEnum
 14: #define DMPointLocationType  PetscEnum
 15: #define DMAdaptationType     PetscEnum
 16: #define DMAdaptFlag          PetscEnum
 17: #define PetscUnit            PetscEnum
 18: #define DMAdaptationStrategy PetscEnum
 19: #define DMDirection          PetscEnum
 20: #define DMEnclosureType      PetscEnum
 21: #define DMPolytopeType       PetscEnum

 23: #define DM               type(tDM)

 25: #define DMAdaptor        PetscFortranAddr
 26: #define PetscQuadrature  PetscFortranAddr
 27: #define PetscDS          PetscFortranAddr
 28: #define PetscFE          PetscFortranAddr
 29: #define PetscSpace       PetscFortranAddr
 30: #define PetscDualSpace   PetscFortranAddr
 31: #define PetscFV          PetscFortranAddr
 32: #define PetscLimiter     PetscFortranAddr
 33: #define PetscPartitioner PetscFortranAddr
 34: #define DMField          PetscFortranAddr


 37: #define DMDA        'da'
 38: #define DMCOMPOSITE 'composite'
 39: #define DMSLICED    'sliced'
 40: #define DMSHELL     'shell'
 41: #define DMPLEX      'plex'
 42: #define DMREDUNDANT 'redundant'
 43: #define DMPATCH     'patch'
 44: #define DMMOAB      'moab'
 45: #define DMNETWORK   'network'
 46: #define DMFOREST    'forest'
 47: #define DMP4EST     'p4est'
 48: #define DMP8EST     'p8est'
 49: #define DMSWARM     'swarm'

 51: #define DMPlexCellRefiner type(tDMPlexCellRefiner)

 53: #endif