Square matrix to the power of a imaginary unit

Click For Summary

Discussion Overview

The discussion revolves around the process of raising a square matrix to the power of a complex number, specifically examining the example of the matrix [1 2; 3 4] raised to the power of (1+i). Participants explore various methods, including the use of eigenvalues, logarithms, and software implementations.

Discussion Character

  • Exploratory
  • Technical explanation
  • Debate/contested
  • Mathematical reasoning

Main Points Raised

  • One participant asks how to raise a square matrix to a complex power and shares results from Scilab for both matrix power and element-wise power operations.
  • Another participant suggests that if the matrix is diagonalizable, the exponent can be applied to the eigenvalues, and discusses the logarithm of the matrix as a means to define the power.
  • There is a reiteration of the logarithmic approach to matrix exponentiation, emphasizing that the logarithm exists only for invertible matrices and may not be unique when complex elements are involved.
  • Participants express uncertainty about the specific algorithm used by the software for matrix exponentiation and discuss the computational complexity of different methods.
  • One participant proposes that for small matrices, diagonalization might yield exact results, while the power series method could be faster for numerical results, depending on convergence properties.

Areas of Agreement / Disagreement

Participants do not reach a consensus on the best method for raising a matrix to a complex power, with multiple competing views on the approaches and algorithms available.

Contextual Notes

Participants note that the logarithm's existence is contingent on the matrix being invertible and that there are invertible matrices that are not diagonalizable, which complicates the discussion of algorithms for matrix exponentiation.

sunny110
Messages
11
Reaction score
0
Hi;

How to raising a square matrix to the power of a complex number?

for example:
[1 2;3 4]^(1+i)

or mathematics software such as Scilab how solve such problems?
-->[1 2;3 4]^(1+%i)
ans =

- 0.1482039 - 0.2030943
- 0.3046414 - 0.4528453


Thanks in advance.

-----
Additational remark:
for element by element power operation (.^) , the output value is equal to the principle value computed as:
z1.^z2 = exp( z2* ( log(abs(z1)) + %i*atan(imag(z1)/real(z1)) ) )


-->[1 2;3 4].^(1+%i)
ans =

1. 1.5384778 + 1.2779226i
1.3644973 + 2.6717311i 0.7338279 + 3.932111i
 
Physics news on Phys.org
Depending on the matrix, there might not be any sensible way to do this. If the matrix is diagonalizable, then you can apply the exponent to the eigenvalues. In general, you can attempt to define the power using the logarithm of the matrix, ## A^p = \exp ( p \ln A)##. The logarithm can be defined as the matrix ##B## such that ##A = e^B##, or via a power series. In general, the logarithm only exists if ##A## is invertible, and when dealing with complex elements is not necessarily unique.
 
Thanks for reply.
fzero said:
In general, you can attempt to define the power using the logarithm of the matrix, ## A^p = \exp ( p \ln A)##. .

yes, for element-wise power operation, in fact the software compute the above expression.
a .^(%i+1) == exp((%i+1)*log(a))

fzero said:
If the matrix is diagonalizable, then you can apply the exponent to the eigenvalues.

Let us return to the main problem i.e: a=[1 2;3 4]; a^(1+i)
eigenvalues and eigenvectors may be get as:
-->[v,d]=spec(a)
d =

- 0.3722813 0
0 5.3722813
v =

- 0.8245648 - 0.4159736
0.5657675 - 0.9093767

This matrix is diagonalizable: inv(v)*a*v == d

So still I don't know what algorithm the software use?


And another question, if one wants to solve this problem by hand, which method should be used?
 
sunny110 said:
Let us return to the main problem i.e: a=[1 2;3 4]; a^(1+i)
eigenvalues and eigenvectors may be get as:
-->[v,d]=spec(a)
d =

- 0.3722813 0
0 5.3722813
v =

- 0.8245648 - 0.4159736
0.5657675 - 0.9093767

This matrix is diagonalizable: inv(v)*a*v == d

So still I don't know what algorithm the software use?

I'm not familiar with the software, so I don't know. In terms of computational complexity, multiplication of large matrices takes a similar number of operations as computing the inverse of a matrix. I would guess that using the power series definition of the log (when it converges) is slightly faster than diagonalizing the matrix and then inverting the matrix of eigenvectors. Also, there are invertible matrices that are not diagonalizable, so the software would have to be able to use more than one algorithm anyway.

And another question, if one wants to solve this problem by hand, which method should be used?

For a small matrix I would probably want to diagonalize first whenever possible. For a simple enough matrix, this could lead to an exact result. If only a numerical result is required, then the power series method might be faster, depending on the convergence properties.
 

Similar threads

  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 4 ·
Replies
4
Views
2K
  • · Replies 4 ·
Replies
4
Views
2K
  • · Replies 3 ·
Replies
3
Views
3K
  • · Replies 3 ·
Replies
3
Views
3K
  • · Replies 17 ·
Replies
17
Views
7K
Replies
2
Views
2K
  • · Replies 2 ·
Replies
2
Views
3K
  • · Replies 2 ·
Replies
2
Views
2K
  • · Replies 1 ·
Replies
1
Views
2K