funm
Общая матричная функция
Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.
Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразуют Notebook MuPAD в Live скрипты MATLAB.
funm(A
,f
)
funm(A,f)
вычисляет функциональный f(A)
для квадратной матрицы A
. Для получения дополнительной информации см. Алгоритмы.
Найдите матричный B
, таким образом, что B3 = A
, где A
3х3 единичная матрица.
Решить B3 = A
, вычислите кубический корень матричного A
использование funm
функция. Создайте функцию, которая вычисляет кубический корень ее аргумента, и используйте его в качестве второго аргумента для funm
. Кубический корень единичной матрицы является самой единичной матрицей.
A := matrix::identity(3): f := x -> surd(x, 3)
funm(A, f)
Замените один из 0
элементы матричного A
с 1
и вычислите матричный кубический корень снова.
A[1, 2] := 1: A
funm(A, f)
Теперь вычислите кубический корень верхней треугольной матрицы.
A[1..2, 3] := [1, 1]: A
B := funm(A, f)
Проверьте тот B3 = A
.
B^3 = A
Найдите матрицу функцией Ламберта В.
Создайте 3х3 матрицу Паскаля A
.
A := linalg::pascal(3)
Найти функцию Ламберта В (W0
перейдите) в матричном смысле, вызовите funm
использование lambertW
в качестве его второго аргумента. Аппроксимируйте результат числами с плавающей запятой при помощи float
.
W0 := funm(float(A), lambertW)
Проверьте, что этим результатом является решение матричного уравнения A = W0·eW0
в текущей точности с плавающей точкой.
A = W0*exp(W0)
Теперь найдите W-1
ветвь Ламберта В функционирует для матричного A
. Создайте функциональный f
представление ветви W-1
из функции Ламберта В.
f := x -> lambertW(-1, x)
Вызовите funm
использование f
в качестве его второго аргумента. Аппроксимируйте результат числами с плавающей запятой при помощи float
.
Wm1 := funm(float(A), f)
Проверьте, что этим результатом является решение матричного уравнения A = Wm1·eWm1
в текущей точности с плавающей точкой.
A = Wm1*exp(Wm1)
|
Квадратный массив, hfarray, или матрица. |
|
Предположим f(x)
, где x
скаляр, имеет расширение Ряда Тейлора. Затем матричный функциональный f(A)
, где A
матрица, задан Рядом Тейлора f(A)
, со сложением и умножением, выполняемым в матричном смысле.
Если A
может быть представлен как A = P·D·P-1
, где D
диагональная матрица, такая что
затем матричный функциональный f(A)
может быть вычислен можно следующим образом:
Недиагонализируемые матрицы могут быть представлены как A = P·J·P-1
, где J
Жорданова форма матричного A
. (Для получения дополнительной информации смотрите linalg::jordanForm
.) Затем матричный функциональный f(A)
может быть вычислен при помощи следующего определения на каждом Иорданском блоке: