is it possible to call MATLAB code in a FORTRAN ?

11 views (last 30 days)
S.S.
S.S. on 5 May 2014
Answered: James Tursa on 6 May 2014
Hey all,
Is it possible to connect a MATLAB function with a FORTRAN code? In fact, I use FORTRAN for programming and not to re-schedule already existing functions in matlab, I try to find a solution to call these functions directly from FORTRAN. Any idea ?
best regards,
S.S.

Accepted Answer

Friedrich
Friedrich on 5 May 2014
Hi,
have a look at the MATLAB Engine
  2 Comments
Friedrich
Friedrich on 6 May 2014
Under the above link there is a subsection called "Call MATLAB Functions from Fortran Applications". Look at it and you will find an example:
"The program fengdemo.F, in the matlabroot/extern/examples/eng_mat folder, illustrates how to call the engine functions from a standalone Fortran program. To see the code, open this file."
Simply follow the doc and you will find what you need.

Sign in to comment.

More Answers (1)

James Tursa
James Tursa on 6 May 2014
For mex functions there is a routine called mexCallMATLAB that allows you to call a MATLAB function from your Fortran or C/C++ code. There is no official equivalent for Engine applications. However, there is an FEX submission called engCallMATLAB that mimics this functionality (actually there are two separate submissions, one for C and one for Fortran). It does the work of copying your inputs to the Engine, calling the function, retrieving the outputs, and cleaning the Engine workspace. You can find the submissions here:
There is a short test example supplied with the submissions. You, the programmer, still have to do the work of converting your Fortran arrays/scalars to/from mxArray variables.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!