mpower doesn't work with symbolic matrix

1 Ansicht (letzte 30 Tage)
fi
fi am 7 Jul. 2022
Beantwortet: Torsten am 7 Jul. 2022
I'm trying to create a symbolic experession of a matrix A raised to the power n, using a symbolic matrix variable (as introduced in R2021a).
However, I always get the following error:
% Create a symbolic 2x2 matrix
syms A 2 matrix
% Create a symbolic integer
syms n
assume(n, {'integer', 'positive'})
% Perform A^n
A^n
Error using ^
Invalid argument at position 2. Value must be integer.
MATLAB says n isn't an integer, even though it is defined to be one. What am I doing wrong?
The same thing also happens when using the explicit syntax (mpower(A, n)).
----
Related documentation: (can't find anything about this in there)

Antworten (2)

KSSV
KSSV am 7 Jul. 2022
syms A 2 matrix
syms n
assume(n, {'integer', 'positive'})
A.^n
ans = 
  1 Kommentar
fi
fi am 7 Jul. 2022
That's not mpower. A.^2 performs the operation element-wise (see power, .^).
What I want is matrix power as in A^2 = A*A (see mpower, ^).

Melden Sie sich an, um zu kommentieren.


Torsten
Torsten am 7 Jul. 2022
A = sym('a%d%d', [2 2]);
A^2
ans = 

Produkte


Version

R2022a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by