mpower, ^

Description

example

C = A^B computes A to the B power and returns the result in C.

C = mpower(A,B) is an alternate way to execute A^B, but is rarely used. It enables operator overloading for classes.

Examples

collapse all

Create a 2-by-2 matrix and square it.

A = [1 2; 3 4];
C = A^2
C = 2×2

7    10
15    22

The syntax A^2 is equivalent to A*A.

Create a 2-by-2 matrix and use it as the exponent for a scalar.

B = [0 1; 1 0];
C = 2^B
C = 2×2

1.2500    0.7500
0.7500    1.2500

Compute C by first finding the eigenvalues D and eigenvectors V of the matrix B.

[V,D] = eig(B)
V = 2×2

-0.7071    0.7071
0.7071    0.7071

D = 2×2

-1     0
0     1

Next, use the formula 2^B = V*2^D/V to compute the power.

C = V*2^D/V
C = 2×2

1.2500    0.7500
0.7500    1.2500

Input Arguments

collapse all

Operands, specified as scalars or matrices. Inputs A and B must be one of the following combinations:

• Base A and exponent B are both scalars, in which case A^B is equivalent to A.^B.

• Base A is a square matrix and exponent B is a scalar. If B is a positive integer, the power is computed by repeated squaring. For other values of B the calculation uses an eigenvalue decomposition (for most matrices) or a Schur decomposition (for defective matrices).

• Base A is a scalar and exponent B is a square matrix. The calculation uses an eigenvalue decomposition.

Operands with an integer data type cannot be complex.

Data Types: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char
Complex Number Support: Yes

Tips

• MATLAB® computes X^(-1) and inv(X) in the same manner, and both are subject to the same limitations. For more information, see inv.