Матричная лаборатория MatLab

         

возвращает любую функцию от квадратной



Пример 1

» S-[l.0.3:1.3.1:4.0.0]
S=
1 0 3
1 3 1
4 0 0
>>a=expm(S) 


а =
31.2203     0     23.3779
38.965920.0855     30.0593
31.1705     0     23.4277

  • funm(X, @f unction)[ Форма funm(X,@function), как в предыдущих версиях MATLAB, по-прежнему возможна, но не рекомендуется.— Примеч. ред. ]— возвращает любую функцию от квадратной матрицы X, если правильно ввести имя, составленное из латинских букв. Команды funm(X ,@exp), funm(X,@sqrt), funm(X.@log) Hexpm(X),sqrtm(x),logm(X) вычисляют соответственно одинаковые функции, но используют разные алгоритмы. Однако предпочтительнее использовать ехрт(Х), sqrtm(x).logm(X);
  • [Y.esterr] = funm(X.@f uncti on) — не выдает никакого сообщения, но помимо результата вычислений в матрице Y возвращает грубую оценку относительной погрешности результата вычислений funm в esterr. Если матрица X — действительная симметрическая или комплексная эрмитова, то ее форма Шура диагональна и полученный результат может иметь высокую точность.
Примеры:
» S=[1,0.3:1.3.1:4,0.0]

1     0     3
 1     3    1
 4    0    0
» a=funm(S.@exp) 
a=
31.22030.0000 23.3779
38.965920.085530.0593
31.1705-0.000023.4277
  • logm(X) — возвращает логарифм матрицы. Результат получается комплексным, если X имеет отрицательные собственные значения;
  • [Y.esterr]=logm(X) — не выдает какого-либо предупреждающего сообщения, но возвращает оценку погрешности в виде относительной невязки norm(expm(Y)-X)/norm(X);
Если матрица X — действительная симметрическая или комплексная эрмитова, то теми же свойствами обладает и logm(X).

Содержание раздела