mxCreateSparse (C and Fortran)

2D разреженный массив

Синтаксис C

#include "matrix.h"
mxArray *mxCreateSparse(mwSize m, mwSize n, mwSize nzmax, 
         mxComplexity ComplexFlag);

Синтаксис языка ФОРТРАН

#include "fintrf.h"
mwPointer mxCreateSparse(m, n, nzmax, ComplexFlag)
mwSize m, n, nzmax
integer*4 ComplexFlag

Аргументы

m

Количество строк

n

Количество столбцов

nzmax

Число элементов, что mxCreateSparse должен выделить, чтобы содержать pr, ir, и, если ComplexFlag mxCOMPLEX в C (1 на Фортране), pi массивы. Установите значение nzmax чтобы быть больше или быть равным количеству ненулевых элементов, вы планируете поместить в mxArray, но убедитесь тот nzmax меньше чем или равно m*nnzmax больше или равен 1.

ComplexFlag

Если mxArray вы создаете, должен содержать мнимые данные, установить ComplexFlag к mxCOMPLEX в C (1 на Фортране). В противном случае установите ComplexFlag к mxREAL в C (0 на Фортране).

Возвращается

Указатель на созданный mxArray. Если неудачный в автономном (нефайл MEX) приложение, возвращает NULL в C (0 на Фортране). Если неудачный в файле MEX, файл MEX отключает и возвращает управление в подсказку MATLAB®. Функция неудачна, когда существует недостаточно свободного пространства "кучи", чтобы создать mxArray. В этом случае попытайтесь уменьшать nzmaxM, или n.

Описание

Вызовите mxCreateSparse создать безлюдный разреженный двойной mxArray. Возвращенный разреженный mxArray не содержит разреженной информации и не может быть передан в качестве аргумента никакому MATLAB разреженные функции. Сделать возвращенный разреженный mxArray полезный, инициализируйте pr, ir, jc, и (если это существует), pi массивы.

mxCreateSparse выделяет место для:

  • pr массив длины nzmax.

  • pi массив длины nzmax, но только если ComplexFlag mxCOMPLEX в C (1 на Фортране).

  • ir массив длины nzmax.

  • jc массив длины n+1.

Когда вы закончили использовать разреженный mxArray, вызовите mxDestroyArray исправить все его пространство "кучи".

Примеры

Смотрите эти примеры в matlabroot/extern/examples/refbook:

Смотрите также

| | | |

Представлено до R2006a