Categories
Matemáticas Matlab

Llamar funciones de C desde Matlab

En el siguiente post vamos a profundizar de forma breve en algunos aspectos de como poder llamar funciones de C desde el entorno Matlba recurriendo para ello a http://mat21.etsii.upm.es/ayudainf/aprendainf/Matlab70/matlab70primero.pdf, según la cual

Es posible llamar desde MATLAB a funciones programadas en C y en Fortran como si fueran funciones propias de MATLAB. De este modo, una función *.m de MATLAB puede ser sustituida poruna función programada en C o en Fortran que se llama exactamente en la misma forma.

Para que esto sea posible las funciones programadas en C y Fortran han de cumplir una serie de requisitos que se explican más adelante. Estas funciones se compilan y se generan librerías compartidas que son las denominadas funciones MEX. Las funciones MEX son funciones ejecutables “*.dll” ó”*.so” que pueden ser cargadas y ejecutadas por MATLAB de forma automática.

Las funciones MEX tienen varias aplicaciones:

  • Evitan tener que reescribir en MATLAB funciones que ya han sido escritas en C o Fortran.
  • Por motivos de eficiencia puede ser interesante reescribir en C o Fortran las funciones críticaso que consumen más CPU del programa.
  • Las funciones MEX tienen una extensión diferente en función de los sistemas operativos en que
  • hayan sido generadas.