Main Content

Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.

Archivos MEX de fuente Fortran

Escribir subrutinas de Fortran usando bibliotecas de API de MATLAB®

Un archivo MEX permite llamar a una subrutina de Fortran desde MATLAB. Para crear un archivo MEX, se necesita lo siguiente:

Para obtener ejemplos, consulte Tablas de la función MEX ejemplos de código fuente.

Para obtener información acerca de cómo escribir funciones S mediante el uso de código Fortran, consulte la documentación de Simulink®.

Los archivos MEX no son apropiados para todas las aplicaciones. MATLAB es un entorno de alta productividad que se especializa en eliminar programación de bajo nivel que requiere mucho tiempo en lenguajes compilados, como Fortran. En general, haga la programación en MATLAB. No utilice archivos MEX a menos que su aplicación lo requiera.

Temas

Crear archivo Fortran Source MEX

Este ejemplo muestra cómo escribir un archivo MEX para llamar a una subrutina Fortran, en el uso de una matriz.timestwoMATLABMATLAB Puede ver el archivo de código fuente completo.Aquí En este ejemplo se utiliza el editor para escribir el código fuente y el comando para crear la función MEX.MATLABMATLABmex

Manejar los datos complejos de Fortran

Este ejemplo muestra cómo pasar los datos complejos a un archivo MEX usando el complejo intercalado Fortran Matrix API.

Pase números complejos separados a funciones de Fortran

Escriba funciones MEX en MATLAB versión r2017b y versiones anteriores para llamar a funciones LAPACK o BLAS.

Mensajes de usuario

Para imprimir texto en la ventana de comandos, utilice la función.MATLABmexPrintf Para imprimir información de error y advertencia en la ventana de comandos, utilice las funciones y.mexErrMsgIdAndTxtmexWarnMsgIdAndTxt

Error Handling

La función imprime información de error y finaliza el archivo MEX binario.mexErrMsgIdAndTxt Para obtener un ejemplo, vea el código siguiente en matlabroot/extern/examples/mx/mxcreatecellmatrixf.F.

Componentes de Fortran MEX File

El es el punto de entrada al archivo MEX.rutina de pasarela Es a través de esta rutina que accede al resto de las rutinas en sus archivos MEX.MATLAB El nombre de la rutina de pasarela es.mexFunction Toma el lugar del programa principal en el código fuente.

Las bibliotecas API de FortranMATLAB

La biblioteca Matrix y la biblioteca MEX describen funciones que puede utilizar en su Gateway y rutinas computacionales que interactúan con los programas y los datos en el espacio de trabajo.MATLABMATLAB Estas bibliotecas forman parte de la biblioteca de referencia de API de Fortran y C/C++.MATLAB

Flujo de datos en archivos MEX Fortran

Supongamos que el archivo MEX tiene dos argumentos de entrada y un argumento de salida.myFunction La sintaxis es.MATLAB[X] = myFunction(Y, Z) Para llamar desde, escriba:myFunctionMATLAB

Administración de memoria

Cuando una función MEX devuelve el control a, devuelve los resultados de sus cálculos en los argumentos de salida, la s contenida en los argumentos del lado izquierdo.MATLABmxArrayplhs[] Estas matrices deben tener un ámbito temporal, por lo que no pase matrices creadas con la función en.

Manipulación de s grandesmxArray

Los archivos MEX binarios construidos en plataformas de 64 bits pueden manejar 64-bit s.mxArray Estas grandes matrices de datos pueden tener hasta 248– 1 elementos.

Pasos adicionales para actualizar el código fuente de Fortran

Los pasos que se indican se aplican a los archivos de origen de Fortran y C/C++.Actualice los archivos MEX para usar la API de 64 bits Fortran utiliza firmas de API similares, idénticos/tipos, y compiladores de archivos similares y depuradores.mwSizemwIndex