élévation à la puissance (^,.^)
t = A ^ b t = A ** b t = A .^ b
Si un opérande sont des entiers encodés, l'autre peut être uniquement des entiers encodés ou des nombres réels.
Si A
sont des polynômes ou des fractions rationnelles,
b
peut uniquement être un entier décimal (positif ou négatif).
Si A
ou b
est scalaire, il est préalablement
répliqué à la taille de l'autre, par A*ones(b) ou b*ones(A).
Sinon, A
et b
doivent avoir la même taille.
Alors, pour chaque élément numéro i, t(i) = A(i)^b(i)
est calculé.
A
ou b
doit être scalaire, et l'autre
opérande doit être une matrice carrée :
Si A
est scalaire et b
est carrée,
alors A^b
est la matrice
expm(log(A) * b)
Si A
est carrée et b
est scalaire,
alors A^b
est la matrice
A
à la puissane b
.
Si A
est une matrice carrée, A^p
est
calculé par multiplications successives si p
est un
entier positif, et par diagonalisation sinon (détails en remarques n°2 et 3
ci-dessous).
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)
.
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)
.
If A
and p
are real or complex numbers,
A^p
is the principal value determined by
If A
is a square matrix and p
is a real or
complex number, A.^p
is the principal value
computed as:
Les opérateurs **
et ^
sont équivalents.
![]() | L'élévation à la puissance est associative à droite dans Scilab contrairement à
Matlab® et Octave. Par exemple 2^3^4 est égal à 2^(3^4) dans Scilab mais est égal à
(2^3)^4 dans Matlab® et Octave. |
Version | Description |
6.0.0 | Avec des nombres décimaux ou complexes, scalaire ^ matriceCarrée
produit désormais expm(log(scalaire)*matriceCarrée) au lieu
de scalaire .^ matriceCarrée . |