Section: Mathematical Operators
y = a .^ b
The result y
depends on which of the following three situations applies to the arguments a
and b
:
a
is a scalar, b
is an arbitrary n
-dimensional numerical array, in which case the output is a
raised to the power of each element of b
, and the output is the same size as b
.
a
is an n
-dimensional numerical array, and b
is a scalar, then the output is the same size as a
, and is defined by each element of a
raised to the power b
.
a
and b
are both n
-dimensional numerical arrays of \emph{the same size}. In this case, each element of the output is the corresponding element of a
raised to the power defined by the corresponding element of b
.
double
type, and negative numbers raised to fractional powers can return complex values.
and the second form
and in the third form
--> a = 2 a = <int32> - size: [1 1] 2 --> b = 1:4 b = <int32> - size: [1 4] Columns 1 to 4 1 2 3 4 --> c = a.^b c = <double> - size: [1 4] Columns 1 to 4 2 4 8 16
The second case shows a vector raised to a scalar.
--> c = b.^a c = <double> - size: [1 4] Columns 1 to 4 1 4 9 16
The third case shows the most general use of the dot-power operator.
--> A = [1,2;3,2] A = <int32> - size: [2 2] Columns 1 to 2 1 2 3 2 --> B = [2,1.5;0.5,0.6] B = <double> - size: [2 2] Columns 1 to 2 2.0 1.5 0.5 0.6 --> C = A.^B C = <double> - size: [2 2] Columns 1 to 2 1.0000000000000000 2.8284271247461903 1.7320508075688772 1.5157165665103980