Следующие таблицы содержат списки файлов исходного кода для создания MEX-функций в качестве примера. Используйте эти примеры в качестве начальной точки для создания ваших собственных MEX-функций. Таблицы содержат следующую информацию.
Имя в качестве примера - ссылка, которая открывает исходный файл в Редакторе MATLAB® для вашего удобства. Можно использовать любой редактор разработки кода, чтобы создать исходные файлы MEX.
Подпапка в качестве примера - подпапка matlabroot
/extern/examples
содержа пример. Используйте это подымя папки при копировании файла в перезаписываемую папку.
Описание - описывает пример.
Больше информации - ссылка на тему, описывающую или использующую пример, или на API-функцию, используется в примере.
Используйте mex
команда, чтобы создать примеры. Убедитесь, что вам установили поддерживаемый MATLAB компилятор. Проверять компилятор выбрало для языка исходного кода lang
Ввод:
mex -setup lang
Скопируйте файл в перезаписываемую папку на вашем пути с помощью следующего синтаксиса команд. filename
имя примера и foldername
подымя папки.
copyfile(fullfile(matlabroot,'extern','examples','foldername','filename'),'.','f')
Например, чтобы скопировать arrayProduct.c
Ввод:
copyfile(fullfile(matlabroot,'extern','examples','mex','arrayProduct.c'),'.','f')
Чтобы создать MEX-функцию в качестве примера в MATLAB или в вашей подсказке операционной системы, используйте этот синтаксис команд. filename
имя в качестве примера и release-option
задает API, используемый примером. Для получения информации о API MATLAB смотрите MEX Applications Выбора.
mex -v -release-option filename
Имя в качестве примера | Подпапка в качестве примера | Описание | Больше информации |
---|---|---|---|
arrayFillGetPr.c
| refbook
|
| Заполните mxArray в Файле MEX на C |
arrayFillSetData.c
| refbook |
| Заполните mxArray в Файле MEX на C |
arrayFillSetPr.c
| refbook |
| Заполните mxArray в Файле MEX на C |
arrayFillSetPrComplex.c | refbook |
| Заполните mxArray в Файле MEX на C |
arrayProduct.c | mex | Умножьте скалярные времена 1xN матрица. | Создание исходного файла MEX на C |
arrayProduct.cpp | cpp_mex | То же самое как | MEX-функции C++ |
arraySize.c
| mex | Проиллюстрируйте требования к памяти большого | Обработка Большого mxArrays в Файлах MEX на C |
complexAdd.F | refbook | Добавьте два комплексных двойных массива. | |
convec.c convec.F
| refbook | Передайте комплексные данные. | Обработайте комплексные данные в Файле MEX на C |
dblmat.F compute.F
| refbook | Использование Фортрана %VAL . | |
doubleelement.c | refbook | Используйте 16-битные целые числа без знака. | Обработайте 8-, 16-, 32-, и 64-битные данные в Файле MEX на C |
explore.c | mex | Идентифицируйте тип данных входной переменной. | Работа с mxArrays |
findnz.c
| refbook | Используйте N-мерные массивы. | Управляйте многомерными числовыми массивами в Файлах MEX на C |
fulltosparseIC.c fulltosparse.c fulltosparse.F , loadsparse.F
| refbook | Заполните разреженную матрицу. | Обработайте разреженные массивы в Файле MEX на C |
matsq.F | refbook | Передайте матрицы на Фортране. | |
matsqint8.F | refbook | Передайте недвойные матрицы на Фортране. | |
mexatexit.c mexatexit.cpp | mex | Зарегистрируйте выходную функцию, чтобы закрыть файл данных. | Пример обработки файла C++ |
mexcallmatlab.c | mex | Вызовите встроенный MATLAB | |
mexcallmatlabwithtrap.c
| mex | Как получить информацию об ошибке. | |
mexcpp.cpp | mex | Проиллюстрируйте некоторые функции языка C++ в файле MEX, созданном с Матричным API C. | Пример класса C++ |
mexevalstring.c
| mex | Используйте mexEvalString присваивать переменные в MATLAB. | mexEvalString |
mexfunction.c | mex | Как использовать mexFunction . | mexFunction |
mxgetproperty.c | mex | Используйте mxGetProperty и mxSetProperty изменить Color свойство графического объекта. | mxGetProperty и mxSetProperty |
mexgetarray.c | mex | Используйте mexGetVariable и mexPutVariable отслеживать счетчики в файле MEX и в глобальной рабочей области MATLAB. | mexGetVariable и mexPutVariable |
mexgetarray.cpp | То же самое как mexgetarray.c , использование matlab::engine::getVariable и matlab::engine::setVariable в MATLAB Data API. | Установите и получите переменные MATLAB от MEX | |
mexlock.c mexlockf.F | mex | Как заблокировать и разблокировать файл MEX. | mexLock |
mxcalcsinglesubscript.c | mx | Продемонстрируйте индексирование матриц на основе MATLAB 1 по сравнению с индексацией на основе 0 C. | mxCalcSingleSubscript |
mxcreatecellmatrix.c mxcreatecellmatrixf.F | mx | Создание 2D массива ячеек. | Создайте 2D массив ячеек в Файле MEX на C |
mxcreatecharmatrixfromstr.c | mx | Создайте 2D символьный массив. | mxCreateCharMatrixFromStrings |
mxcreatestructarray.c | mx | Создайте структуру MATLAB из структуры C. | mxCreateStructArray |
mxcreateuninitnumericmatrix.c | mx | Создайте неинициализированный | mxCreateUninitNumericMatrix |
mxgeteps.c mxgetepsf.F
| mx | Считайте MATLAB | mxGetEps |
mxgetinf.c | mx | Считайте | mxGetInf |
mxgetnzmax.c
| mx | Отобразите количество ненулевых элементов в разреженной матрице и максимальном количестве ненулевых элементов, которые это может сохранить. | mxGetNzmax |
mxisclass.c | mx | Проверяйте, является ли массив членом заданного класса. | mxIsClass |
mxisfinite.c | mx | Проверяйте на NaN и бесконечные значения. | mxIsFinite |
mxislogical.c | mx | Проверяйте, является ли переменная рабочей области логической или глобальной. | mxIsLogical |
mxisscalar.c | mx | Проверяйте, является ли входная переменная скаляром. | mxIsScalar |
mxmalloc.c | mx | Выделите память, чтобы скопировать | mxMalloc |
mxsetdimensions.c mxsetdimensionsf.F
| mx | Измените размерность массива. | mxSetDimensions |
mxsetnzmax.c | mx | Перераспределите память для разреженной матрицы и сбросьте значения pr \Pi , ir , и nzmax . | mxSetNzmax |
passstr.F
| refbook | Передайте символьную матрицу C от Фортрана до MATLAB. | |
phonebook.c | refbook | Управляйте структурами и массивами ячеек. | Передача структур и Массивы ячеек в Файле MEX на C |
phonebook.cpp | cpp_mex | То же самое как phonebook.c , использование MATLAB Data API. | MEX-функции C++ |
revord.c revord.F | refbook | Скопируйте MATLAB | Передача строк в Файле MEX на C |
sincall.c sincall.F , fill.F | refbook | Создайте | |
timestwo.c timestwo.F | refbook | Продемонстрируйте общий рабочий процесс файла MEX. | Передача скалярных величин в Файле MEX на C |
xtimesy.c xtimesy.F | refbook | Передайте несколько параметров. | |
yprime.c yprimef.F , yprimefg.F | mex | Решите простые три задачи орбиты тела. | |
yprime.cpp | cpp_mex | То же самое как yprime.c , использование MATLAB Data API. | MEX-функции C++ |
Примеры в следующей таблице вызывают LAPACK или функцию BLAS использование MEX-функции C. Эти примеры соединяют с одним или обеими из библиотек Fortran mwlapack
и mwblas
. Чтобы создать MEX-функцию, следуйте инструкциям в темах, перечисленных в Большем количестве информационного столбца.
Имя в качестве примера | Подпапка в качестве примера | Описание | Больше информации |
---|---|---|---|
dotProductComplex.c | refbook | Обработайте Фортран комплексный тип возврата для функции, вызванной из файла MEX на C. | Обработайте Фортран Комплексный Тип Возврата — dotProductComplex |
matrixDivide.c | refbook | Вызовите функцию LAPACK. | Сохраните входные значения от модификации |
matrixDivideComplex.c | refbook | Вызовите функцию LAPACK с комплексными числами. | Передайте Комплексные переменные — matrixDivideComplex |
matrixMultiply.c | refbook | Вызовите функцию BLAS. | Передайте аргументы функциям Фортрана из программ C/C++ |
utdu_slv.c | refbook | Используйте LAPACK в симметричной неопределенной факторизации. | Симметричная Неопределенная Факторизация Используя LAPACK — utdu_slv |