Actual source code: mpif.h

petsc-3.8.3 2017-12-09
Report Typos and Errors
  1: !
  2: !     Trying to provide as little support for fortran code in petsc as needed
  3: !
  4: #include "mpiunifdef.h"
  5: !
  6: !     External objects outside of MPI calls
  7:        integer MPI_COMM_WORLD
  8:        parameter (MPI_COMM_WORLD = 2)
  9:        integer MPI_COMM_SELF
 10:        parameter (MPI_COMM_SELF = 1)
 11:        integer  MPI_COMM_NULL
 12:        parameter (MPI_COMM_NULL = 0)
 13:        integer MPI_IDENT
 14:        parameter (MPI_IDENT = 0)
 15:        integer MPI_UNEQUAL
 16:        parameter (MPI_UNEQUAL = 3)
 17:        integer MPI_KEYVAL_INVALID
 18:        parameter (MPI_KEYVAL_INVALID = 0)
 19:        integer MPI_SUCCESS
 20:        parameter (MPI_SUCCESS = 0)
 21:        integer MPI_ERR_OTHER
 22:        parameter (MPI_ERR_OTHER = 17)
 23:        integer MPI_ERR_UNKNOWN
 24:        parameter (MPI_ERR_UNKNOWN = 18)
 25:        integer MPI_ERR_INTERN
 26:        parameter (MPI_ERR_INTERN = 21)

 28:        integer MPI_PACKED
 29:        parameter (MPI_PACKED=0)
 30:        integer MPI_ANY_SOURCE
 31:        parameter (MPI_ANY_SOURCE=2)
 32:        integer MPI_ANY_TAG
 33:        parameter (MPI_ANY_TAG=-1)
 34:        integer MPI_UNDEFINED
 35:        parameter (MPI_UNDEFINED=-32766)
 36:        INTEGER MPI_INFO_NULL
 37:        PARAMETER (MPI_INFO_NULL=0)


 40:        integer MPI_REQUEST_NULL
 41:        parameter (MPI_REQUEST_NULL=0)

 43:        integer MPI_STATUS_SIZE
 44:        parameter (MPI_STATUS_SIZE=3)
 45:        INTEGER MPI_SOURCE,MPI_TAG,MPI_ERROR
 46:        PARAMETER(MPI_SOURCE=1,MPI_TAG=2,MPI_ERROR=3)


 49: !     Data Types. Same Values used in mpi.c
 50:        integer MPI_INTEGER,MPI_LOGICAL
 51:        integer MPI_REAL,MPI_DOUBLE_PRECISION
 52:        integer MPI_COMPLEX, MPI_CHARACTER
 53:        integer MPI_2INTEGER
 54:        integer MPI_DOUBLE_COMPLEX
 55:        integer MPI_INTEGER4
 56:        integer MPI_INTEGER8
 57:        integer MPI_2DOUBLE_PRECISION
 58:        integer MPI_REAL4,MPI_REAL8

 60: !
 61: !  These should match the values in mpi.h many below are wrong
 62: !
 63:        parameter (MPI_INTEGER=x'400104')
 64:        parameter (MPI_LOGICAL=x'400104')
 65:        parameter (MPI_REAL=x'100104')
 66:        parameter (MPI_REAL4=x'100104')
 67:        parameter (MPI_DOUBLE_PRECISION=x'100108')
 68:        parameter (MPI_REAL8=x'100108')
 69:        parameter (MPI_COMPLEX=x'200108')
 70:        parameter (MPI_CHARACTER=x'300101')
 71:        parameter (MPI_2INTEGER=x'e00108')
 72:        parameter (MPI_DOUBLE_COMPLEX=x'200110')
 73:        parameter (MPI_INTEGER4=x'400104')
 74:        parameter (MPI_INTEGER8=x'400108')
 75:        parameter (MPI_2DOUBLE_PRECISION=x'100208')

 77:        integer MPI_SUM
 78:        parameter (MPI_SUM=1)
 79:        integer MPI_MAX
 80:        parameter (MPI_MAX=2)
 81:        integer MPI_MIN
 82:        parameter (MPI_MIN=3)
 83:        integer MPI_MAXLOC
 84:        parameter (MPI_MAXLOC=12)
 85:        integer MPI_MINLOC
 86:        parameter (MPI_MINLOC=13)

 88:        integer MPI_MAX_PROCESSOR_NAME
 89:        parameter (MPI_MAX_PROCESSOR_NAME=128-1)

 91: !
 92: !  some parameters require common blocks?
 93: !
 94:        integer MPI_IN_PLACE
 95:        common /MPIUNIPRIV/ MPI_IN_PLACE
 96:        save /MPIUNIPRIV/