Полномочия и экспоненциалы

Эта тема показывает, как вычислить матричные степени и экспоненциалы с помощью множества методов.

Положительные целочисленные полномочия

Если A квадратная матрица и p положительное целое число, затем A^p эффективно умножает A отдельно p-1 \times. Например:

A = [1 1 1
     1 2 3
     1 3 6];
A^2
ans = 3×3

     3     6    10
     6    14    25
    10    25    46

Обратные и дробные полномочия

Если A является квадратным и несингулярным, затем A^(-p) эффективно умножает inv(A) отдельно p-1 \times.

A^(-3)
ans = 3×3

  145.0000 -207.0000   81.0000
 -207.0000  298.0000 -117.0000
   81.0000 -117.0000   46.0000

MATLAB® вычисляет inv(A) и A^(-1) с тем же алгоритмом, таким образом, результатами является точно то же самое. Оба inv(A) и A^(-1) произведите предупреждения, если матрица близко к тому, чтобы быть сингулярным.

isequal(inv(A),A^(-1))
ans = logical
   1

Дробные степени, такие как A^(2/3), также разрешены. Результаты с помощью дробных степеней зависят от распределения собственных значений матрицы.

A^(2/3)
ans = 3×3

    0.8901    0.5882    0.3684
    0.5882    1.2035    1.3799
    0.3684    1.3799    3.1167

Поэлементно полномочия

.^ оператор вычисляет поэлементно степени. Например, чтобы придать каждому элементу квадратную форму в матрице можно использовать A.^2.

A.^2
ans = 3×3

     1     1     1
     1     4     9
     1     9    36

Квадратные корни

sqrt функция является удобным способом вычислить квадратный корень из каждого элемента в матрице. Альтернативный способ сделать это - A.^(1/2).

sqrt(A)
ans = 3×3

    1.0000    1.0000    1.0000
    1.0000    1.4142    1.7321
    1.0000    1.7321    2.4495

Для других корней можно использовать nthroot. Например, вычислите A.^(1/3).

nthroot(A,3)
ans = 3×3

    1.0000    1.0000    1.0000
    1.0000    1.2599    1.4422
    1.0000    1.4422    1.8171

Эти поэлементные корни отличаются от матричного квадратного корня, который вычисляет вторую матрицу B таким образом, что A=BB. Функциональный sqrtm(A) вычисляет A^(1/2) более точным алгоритмом. m в sqrtm отличает эту функцию от sqrt(A), который, как A.^(1/2), делает его задание поэлементно.

B = sqrtm(A)
B = 3×3

    0.8775    0.4387    0.1937
    0.4387    1.0099    0.8874
    0.1937    0.8874    2.2749

B^2
ans = 3×3

    1.0000    1.0000    1.0000
    1.0000    2.0000    3.0000
    1.0000    3.0000    6.0000

Скалярные основы

В дополнение к возведению в степень матрицы также можно возвести скаляр в степень матрицы.

2^A
ans = 3×3

   10.4630   21.6602   38.5862
   21.6602   53.2807   94.6010
   38.5862   94.6010  173.7734

Когда вы возводите скаляр в степень матрицы, MATLAB использует собственные значения и собственные вектора матрицы, чтобы вычислить матричную степень. Если [V,D] = eig(A)затем 2A=V 2DV-1.

[V,D] = eig(A);
V*2^D*V^(-1)
ans = 3×3

   10.4630   21.6602   38.5862
   21.6602   53.2807   94.6010
   38.5862   94.6010  173.7734

Матричные экспоненциалы

Матричный экспоненциал является особым случаем повышения скаляра к матричной степени. Основа для матричного экспоненциала является номером Эйлера e = exp(1).

e = exp(1);
e^A
ans = 3×3
103 ×

    0.1008    0.2407    0.4368
    0.2407    0.5867    1.0654
    0.4368    1.0654    1.9418

expm функция является более удобным способом вычислить матричные экспоненциалы.

expm(A)
ans = 3×3
103 ×

    0.1008    0.2407    0.4368
    0.2407    0.5867    1.0654
    0.4368    1.0654    1.9418

Матричный экспоненциал может быть вычислен различными способами. Смотрите Матричные Экспоненциалы для получения дополнительной информации.

Контакт с небольшими числами

Функции MATLAB log1p и expm1 вычислить журнал(1+x) и ex-1 точно для очень маленьких значений x. Например, при попытке добавить номер, меньший, чем точность машины к 1, затем результат округлен к 1.

log(1+eps/2)
ans = 0

Однако log1p может дать более точный ответ.

log1p(eps/2)
ans = 1.1102e-16

Аналогично для ex-1, если x очень мал затем, это округлено, чтобы обнулить.

exp(eps/2)-1
ans = 0

Снова, expm1 может дать более точный ответ.

expm1(eps/2)
ans = 1.1102e-16

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

| | | | | | |

Похожие темы

Для просмотра документации необходимо авторизоваться на сайте