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:         interface
 60: #include <../src/dm/f90-mod/ftn-auto-interfaces/petscdmlabel.h90>
 61:         end interface
 62:         end module

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

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

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

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