mpower doesn't work with symbolic matrix

1 visualizzazione (ultimi 30 giorni)
fi
fi il 7 Lug 2022
Risposto: Torsten il 7 Lug 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)

Risposte (2)

KSSV
KSSV il 7 Lug 2022
syms A 2 matrix
syms n
assume(n, {'integer', 'positive'})
A.^n
ans = 
  1 Commento
fi
fi il 7 Lug 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, ^).

Accedi per commentare.


Torsten
Torsten il 7 Lug 2022
A = sym('a%d%d', [2 2]);
A^2
ans = 

Prodotti


Release

R2022a

Community Treasure Hunt

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

Start Hunting!

Translated by