I debugged my code based on Mathwork post https://www.mathworks.com/help/matlab/matlab_external/debugging-on-microsoft-windows-platforms.html and crashed MATLAB. This my code:
#include "fintrf.h" subroutine mexFunction(nlhs, plhs, nrhs, prhs) ! Interface IMPLICIT REAL*8(A-H,O-Z) mwpointer plhs(*), prhs(*) C integer nlhs, nrhs mwpointer mxCreateDoubleMatrix, mxGetPr double precision mxGetScalarC Pointers to input/output mxArrays: mwPointer TTC Get the size of the input array. m_in = 20 n_in = 1 size = m_in * n_inC Create Fortran array from the input argument.C IZ = mxGetScalar(prhs(1));C EEAR = mxGetScalar(prhs(2));C DDIA = mxGetScalar(prhs(3));C RRPM = mxGetScalar(prhs(4)); NN = mxGetScalar(prhs(1));C Create matrix for the return argument. plhs(1) = mxCreateDoubleMatrix(m_in, n_in, 0) TT = mxGetPr(plhs(1)) call LOOPS1(%VAL(TT),%VAL(NN)) ! call the computation
return end subroutine LOOPS1(TT, nn) IMPLICIT REAL*8(A-H,O-Z) n1 = nn+1 call LOOPS(TT, n1) return end
The error is in the line (n1 = nn+1). I don't know what the problem is. Please help me.
Best Answer