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.
Las tablas siguientes contienen listas de archivos de código fuente para crear funciones MEX de ejemplo. Utilice estos ejemplos como punto de partida para crear sus propias funciones MEX. Las tablas contienen la siguiente información.
Nombre de ejemplo: un vínculo que abre el archivo de origen en el editor para su conveniencia.MATLAB® Puede usar cualquier editor de desarrollo de código para crear archivos MEX de origen.
Subcarpeta de ejemplo: la subcarpeta de
matlabroot
que contiene el ejemplo./extern/examples
Utilice este nombre de subcarpeta al copiar el archivo en una carpeta de escritura.
Description: describe el ejemplo.
Más información: un vínculo a un tema que describe o usa el ejemplo, o a la función de API utilizada en el ejemplo.
Utilice el comando para compilar los ejemplos.mex
Asegúrese de que tiene instalado un compilador compatible.MATLAB Para comprobar el compilador seleccionado para el lenguaje de código fuente lang
Tipo:
mex -setup lang
Copie el archivo en una carpeta de escritura en la ruta de acceso con la siguiente sintaxis de comando. filename
es el nombre del ejemplo y
foldername
es el nombre de la subcarpeta.
copyfile(fullfile(matlabroot,'extern','examples','foldername','filename'),'.','f')
Por ejemplo, para copiar, escriba:arrayProduct.c
copyfile(fullfile(matlabroot,'extern','examples','mex','arrayProduct.c'),'.','f')
Para crear un ejemplo de función MEX en o en el símbolo del sistema operativo, utilice esta sintaxis de comando.MATLAB
filename
es el nombre del ejemplo y
release-option
Especifica la API utilizada por el ejemplo. Para obtener información acerca de las API, consulte.MATLABAplicaciones MEX
mex -v -release-option filename
Nombre de ejemplo | Subcarpeta de ejemplo | Descripción | Más información |
---|---|---|---|
arrayFillGetPr.c
| refbook
| Rellene con. | Rellene mxArray |
arrayFillSetData.c
| refbook | Rellene con valores no dobles. | Rellene mxArray |
arrayFillSetPr.c
| refbook | Rellene utilizando para asignar memoria dinámicamente. | Rellene mxArray |
arrayFillSetPrComplex.c | refbook | Rellene utilizando para asignar memoria dinámicamente. | Rellene mxArray |
arrayProduct.c | mex | Multiplique una matriz de 1xN de tiempos escalares. | Crear archivo MEX fuente C |
arrayProduct.cpp | cpp_mex | Igual que, usando el. | Funciones MEX de C++ |
arraySize.c
| mex | Ilustrar los requisitos de memoria de gran tamaño. | Manipulación de grandesmxArrays |
complexAdd.F | refbook | Agregue dos matrices dobles complejas. | |
convec.c convec.F
| refbook | Pasar datos complejos. | Manejar datos complejos |
dblmat.F compute.F
| refbook | Uso de Fortran.%VAL | |
doubleelement.c | refbook | Utilice enteros de 16 bits sin signo. | Maneje datos de 8, 16, 32 y 64 bits |
explore.c | mex | Identifique el tipo de datos de la variable de entrada. | Trabaje con mxArrays |
findnz.c
| refbook | Utilice matrices N-dimensionales. | Manipular matrices numéricas multidimensionales |
fulltosparseIC.c fulltosparse.c fulltosparse.F , loadsparse.F
| refbook | Rellene una matriz dispersa. | Controlar matrices dispersas |
matsq.F | refbook | Pase matrices en Fortran. | |
matsqint8.F | refbook | Pase matrices no dobles en Fortran. | |
mexatexit.c mexatexit.cpp | mex | Registre una función Exit para cerrar un archivo de datos. | Controlar archivos con C++ |
mexcallmatlab.c | mex | Llame a la función incorporada.MATLAB | |
mexcallmatlabwithtrap.c
| mex | Cómo capturar información de errores. | |
mexcpp.cpp | mex | Ilustrar algunas características del lenguaje C++ en un archivo MEX construido con la API de matriz de C. | Utilice la clase de C++ en el archivo de C MEX |
mexevalstring.c
| mex | Se utiliza para asignar variables.mexEvalString MATLAB | mexEvalString |
mexfunction.c | mex | Cómo usar.mexFunction | mexFunction |
mxgetproperty.c | mex | Utilice y para cambiar la propiedad de un objeto gráfico.mxGetProperty mxSetProperty Color | YmxGetProperty mxSetProperty |
mexgetarray.c | mex | Utilice y para rastrear los contadores en el archivo MEX y en el espacio de trabajo global.mexGetVariable mexPutVariable MATLAB | YmexGetVariable mexPutVariable |
mexgetarray.cpp | Igual que, usandomexgetarray.c matlab::engine::getVariable Y matlab::engine::setVariable En.API de datos de MATLAB | Establecer y obtener variables de MEXMATLAB | |
mexlock.c mexlockf.F | mex | Cómo bloquear y desbloquear un archivo MEX. | mexLock |
mxcalcsinglesubscript.c | mx | Demuestre la indexación de matrices basada en 1 en comparación con la indexación basada en C 0.MATLAB | mxCalcSingleSubscript |
mxcreatecellmatrix.c mxcreatecellmatrixf.F | mx | Cree una matriz de celdas 2-D. | Crear matriz de celdas 2-D |
mxcreatecharmatrixfromstr.c | mx | Cree una matriz de caracteres 2-D. | mxCreateCharMatrixFromStrings |
mxcreatestructarray.c | mx | Crear estructura a partir de estructura C.MATLAB | mxCreateStructArray |
mxcreateuninitnumericmatrix.c | mx | Crear un sin inicializar, rellenar con datos locales y devolver. | mxCreateUninitNumericMatrix |
mxgeteps.c mxgetepsf.F
| mx | Valor de lectura.MATLAB | mxGetEps |
mxgetinf.c | mx | Valor de lectura. | mxGetInf |
mxgetnzmax.c
| mx | Mostrar el número de elementos distintos de cero en una matriz dispersa y el número máximo de elementos distintos de cero que puede almacenar. | mxGetNzmax |
mxisclass.c | mx | Compruebe si array es miembro de la clase especificada. | mxIsClass |
mxisfinite.c | mx | Compruebe si hay valores infinitos.NaN | mxIsFinite |
mxislogical.c | mx | Compruebe si la variable de espacio de trabajo es lógica o global. | mxIsLogical |
mxisscalar.c | mx | Compruebe si la variable de entrada es escalar. | mxIsScalar |
mxmalloc.c | mx | Asigne memoria para copiar una matriz a una cadena de estilo C.MATLAB | mxMalloc |
mxsetdimensions.c mxsetdimensionsf.F
| mx | Remodele una matriz. | mxSetDimensions |
mxsetnzmax.c | mx | Reasignar memoria para la matriz dispersa y valores de restablecimiento de,,, y.pr pi ir nzmax | mxSetNzmax |
passstr.F
| refbook | Pase la matriz de caracteres C de Fortran a.MATLAB | |
phonebook.c | refbook | Manipular estructuras y matrices de celdas. | Pasar estructuras y matrices de celdas en C archivos MEX |
phonebook.cpp | cpp_mex | Igual que, usando el.phonebook.c API de datos de MATLAB | Funciones MEX de C++ |
revord.c revord.F | refbook | Copie la matriz a y desde la cadena de estilo C.MATLAB | Cadenas de paso |
sincall.c sincall.F , fill.F | refbook | Crear y pasar a y funciones. | |
timestwo.c timestwo.F | refbook | Demostrar flujo de trabajo común de archivo MEX. | Pasar valores escalares |
xtimesy.c xtimesy.F | refbook | Pase varios parámetros. | |
yprime.c yprimef.F , yprimefg.F | mex | Resuelve el problema simple de tres órbita corporal. | |
yprime.cpp | cpp_mex | Igual que, usando el.yprime.c API de datos de MATLAB | Funciones MEX de C++ |
Los ejemplos de la siguiente tabla llaman a una función LAPACK o BLAS utilizando una función MEX C. Estos ejemplos enlazan con una o ambas bibliotecas de Fortran y.mwlapack
mwblas
Para compilar la función MEX, siga las instrucciones de los temas enumerados en la columna más información.
Nombre de ejemplo | Subcarpeta de ejemplo | Descripción | Más información |
---|---|---|---|
dotProductComplex.c | refbook | Controle el tipo de valor devuelto complejo Fortran para la función llamada desde un archivo MEX C. | Manejar el tipo de retorno complejo Fortran —dotProductComplex |
matrixDivide.c | refbook | Llame a una función LAPACK. | Conservar valores de entrada de modificación |
matrixDivideComplex.c | refbook | Llame a una función LAPACK con números complejos. | Pasar variables complejas —matrixDivideComplex |
matrixMultiply.c | refbook | Llame a una función BLAS. | Pasar argumentos a funciones de Fortran desde programas de C/C++ |
utdu_slv.c | refbook | Utilice LAPACK para la factorización indefinida simétrica. | Factorización indefinida simétrica usando LAPACK —utdu_slv |