spfun

Применить функцию к ненулевым разреженным матрицам

Синтаксис

f = spfun(fun,S)

Описание

spfun функция избирательно применяет функцию только к ненулевым элементам массива разреженной матрице S, сохранение шаблона разреженности исходной матрицы (кроме нижнего потока или если fun возвращает нуль для некоторых ненулевых элементов S).

f = spfun(fun,S) оценивает fun(S) об элементах S ненулевые. fun является указателем на функцию.

Параметризация функций объясняет, как предоставить дополнительные параметры функции fun, при необходимости.

Примеры

Учитывая разреженную диагональную матрицу 4 на 4

S = spdiags([1:4]',0,4,4)

S = 
   (1,1)        1
   (2,2)        2
   (3,3)        3
   (4,4)        4

Потому что fun возвращает ненулевые значения для всего ненулевого элемента S, f = spfun(@exp,S) имеет тот же шаблон разреженности, что и S.

f =
   (1,1)       2.7183
   (2,2)       7.3891
   (3,3)      20.0855
   (4,4)      54.5982

тогда как exp(S) имеет 1s где S имеет 0с.

full(exp(S))

ans =
    2.7183    1.0000    1.0000    1.0000
    1.0000    7.3891    1.0000    1.0000
    1.0000    1.0000   20.0855    1.0000
    1.0000    1.0000    1.0000   54.5982

Совет

Функции, которые управляют поэлементом, как в elfun директория, являются наиболее подходящими функциями для использования с spfun.

Расширенные возможности

Генерация кода C/C + +
Сгенерируйте код C и C++ с помощью Coder™ MATLAB ®

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