Quantcast
Channel: Intel® oneAPI Math Kernel Library & Intel® Math Kernel Library
Viewing all articles
Browse latest Browse all 2652

Problem with Intel Fortran error #6633

$
0
0

I am trying to use the Pardiso matrix routines but I keep getting an error #6633 “The type of the actual argument differs from the type of the dummy” with the PT variable when I compile. The relevant segments of my code are as follows:

      IMPLICIT NONE

 

      INCLUDE 'mkl.fi'

 

      INTEGER*8  pt(64)
      INTEGER    maxfct,mnum,mtype,phase,n,nrhs,msglvl,error
      INTEGER    ia(1001),ja(1000000),perm(1000),iparm(64)
      REAL*8     a(1000000),b(1000),x(1000)

 

      call pardiso_d (pt, maxfct, mnum, mtype, phase, n, a, ia, ja, perm, nrhs, iparm, msglvl, b, x, error)

The mkl_pardiso.fi file (referred to from mkl.fi) in C:\Program Files (x86)\Intel\Composer XE 2013 SP1.139\mkl\include contains the following:

        TYPE MKL_PARDISO_HANDLE; INTEGER(KIND=8) DUMMY; END TYPE

 

        INTEGER, PARAMETER :: PARDISO_OOC_FILE_NAME = 1

 

        SUBROUTINE PARDISO_D( PT, MAXFCT, MNUM, MTYPE, PHASE, N, A, IA, &
     &  JA, PERM, NRHS, IPARM, MSGLVL, B, X, ERROR )
          IMPORT MKL_PARDISO_HANDLE
          TYPE(MKL_PARDISO_HANDLE), INTENT(INOUT) :: PT(*)
          INTEGER,          INTENT(IN)    :: MAXFCT
          INTEGER,          INTENT(IN)    :: MNUM
          INTEGER,          INTENT(IN)    :: MTYPE
          INTEGER,          INTENT(IN)    :: PHASE
          INTEGER,          INTENT(IN)    :: N
          INTEGER,          INTENT(IN)    :: IA(*)
          INTEGER,          INTENT(IN)    :: JA(*)
          INTEGER,          INTENT(INOUT) :: PERM(*)
          INTEGER,          INTENT(IN)    :: NRHS
          INTEGER,          INTENT(INOUT) :: IPARM(*)
          INTEGER,          INTENT(IN)    :: MSGLVL
          INTEGER,          INTENT(OUT)   :: ERROR

 

          REAL(KIND=8),     INTENT(IN)    :: A(*)
          REAL(KIND=8),     INTENT(INOUT) :: B(*)
          REAL(KIND=8),     INTENT(OUT)   :: X(*)
        END SUBROUTINE PARDISO_D

I have tried changing my INTEGER*8 pt(64) line to TYPE(MKL_PARDISO_HANDLE) :: pt(64) but still get the same error.

What am I doing wrong?


Viewing all articles
Browse latest Browse all 2652

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>