Actual source code: petscdmmod.F90

  1:         module petscdmdefdummy
  2:         use petscmatdef
  3: #include <../src/dm/f90-mod/petscdm.h>
  4:         end module petscdmdefdummy

  6:         module petscdmlabeldef
  7:         use petscmatdef
  8: #include <../src/dm/f90-mod/petscdmlabel.h>
  9:         end module petscdmlabeldef

 11:         module petscdmdef
 12:         use petscdmdefdummy
 13:         use petscdmlabeldef
 14:         interface operator(.ne.)
 15:           function dmnotequal(A,B)
 16:             import tDM
 17:             logical dmnotequal
 18:             type(tDM), intent(in) :: A,B
 19:           end function
 20:         end interface operator (.ne.)
 21:         interface operator(.eq.)
 22:           function dmequals(A,B)
 23:             import tDM
 24:             logical dmequals
 25:             type(tDM), intent(in) :: A,B
 26:           end function
 27:         end interface operator (.eq.)
 28:         end module

 30:         function dmnotequal(A,B)
 31:           use petscdmdefdummy, only: tDM
 32:           logical dmnotequal
 33:           type(tDM), intent(in) :: A,B
 34:           dmnotequal = (A%v .ne. B%v)
 35:         end function

 37:         function dmequals(A,B)
 38:           use petscdmdefdummy, only: tDM
 39:           logical dmequals
 40:           type(tDM), intent(in) :: A,B
 41:           dmequals = (A%v .eq. B%v)
 42:         end function

 44: #if defined(_WIN32) && defined(PETSC_USE_SHARED_LIBRARIES)
 45: !DEC$ ATTRIBUTES DLLEXPORT::dmnotequal
 46: !DEC$ ATTRIBUTES DLLEXPORT::dmequals
 47: #endif
 48:         module petscdmpatchdef
 49:         use petscdmdef
 50:         end module

 52:         module petscdmforestdef
 53:         use petscdmdef
 54:         end module

 56:         module petscdmlabel
 57:         use petscdmlabeldef
 58:         use petscdmdef
 59: #include <../src/dm/f90-mod/petscdmlabel.h90>
 60:         interface
 61: #include <../src/dm/f90-mod/ftn-auto-interfaces/petscdmlabel.h90>
 62:         end interface
 63:         end module

 65:         module petscdm
 66:         use petscdmdef
 67:         use petscmat
 68: #include <../src/dm/f90-mod/petscdm.h90>
 69:         interface
 70: #include <../src/dm/f90-mod/ftn-auto-interfaces/petscdm.h90>
 71:         end interface
 72:         end module

 74:         module petscdmpatch
 75:         use petscdmpatchdef
 76: #include <../src/dm/f90-mod/petscdmpatch.h90>
 77:         interface
 78: #include <../src/dm/f90-mod/ftn-auto-interfaces/petscdmpatch.h90>
 79:         end interface
 80:         end module

 82:         module petscdmforest
 83:         use petscdmforestdef
 84: #include <../src/dm/f90-mod/petscdmforest.h90>
 85:         interface
 86: #include <../src/dm/f90-mod/ftn-auto-interfaces/petscdmforest.h90>
 87:         end interface
 88:         end module

 90:         module petscdt
 91:         use petscdmdef
 92: #include <../src/dm/f90-mod/petscdt.h90>
 93:         interface
 94: #include <../src/dm/f90-mod/ftn-auto-interfaces/petscdt.h90>
 95:         end interface
 96:         end module