power (^,.^) power operation Calling Sequence t=A^b t=A**b t=A.^b Arguments A,t scalar, polynomial or rational matrix. b a scalar, a vector or a scalar matrix. Description If A is a square matrix and b is a scalar then A^b is the matrix A to the power b. If b is a scalar and A a matrix then A.^b is the matrix formed by the element of A to the power b (element-wise power). If A is a vector and b is a scalar then A^b and A.^b performs the same operation (i.e. element-wise power). If A is a scalar and b is a matrix (or vector) A^b and A.^b are the matrices (or vectors) formed by a^(b(i,j)). If A and b are vectors (matrices) of the same size A.^b is the A(i)^b(i) vector (A(i,j)^b(i,j) matrix). Additional Remarks Notes: 1. For square matrices A^p is computed through successive matrices multiplications if p is a positive integer, and by diagonalization if not (see "note 2 and 3" below for details). 2. If A is a square and Hermitian matrix and p is a non-integer scalar, A^p is computed as: `A^p = u*diag(diag(s).^p)*u'` (For real matrix A, only the real part of the answer is taken into account). u and s are determined by `[u,s] = schur(A)` . 3. If A is not a Hermitian matrix and p is a non-integer scalar, A^p is computed as: `A^p = v*diag(diag(d).^p)*inv(v)` (For real matrix A, only the real part of the answer is taken into account). d and v are determined by `[d,v] = bdiag(A+0*%i)` . 4. If A and p are real or complex numbers, A^p is the principal value determined by: `A^p = exp(p*log(A))` (or `A^p = exp(p*(log(abs(A))+ %i*atan(imag(A)/real(A))))` ). 5. If A is a square matrix and p is a real or complex number, A.^p is the principal value computed as: `A.^p = exp(p*log(A))` (same as case 4 above). 6. ** and ^ operators are synonyms. Exponentiation is right-associative in Scilab contrarily to Matlab® and Octave. For example 2^3^4 is equal to 2^(3^4) in Scilab but is equal to (2^3)^4 in Matlab® and Octave. Examples See Also exp hat