What does operator "dot" (.) mean?
matlab, operators, syntax
Solution
The dot itself is not an operator, `.^` is.
The `.^` is a pointwise¹ (i.e. element-wise) power, as `.*` is the pointwise product.
`.^` Array power. `A.^B` is the matrix with elements `A(i,j)` to the `B(i,j)` power. The sizes of `A` and `B` must be the same or be compatible.
C.f.
- "Array vs. Matrix Operations": https://mathworks.com/help/matlab/matlab_prog/array-vs-matrix-operations.html
- "Pointwise": http://en.wikipedia.org/wiki/Pointwise
- "Element-Wise Operations": http://www.glue.umd.edu/afs/glue.umd.edu/system/info/olh/Numerical/Matlab_Matrix_Manipulation_Software/Matrix_Vector_Operations/elementwise
¹) Hence the dot.
Problem
Given the code : ``` A = [1 2 3; 3 2 1] B = A.^2 ``` The output : ``` B = 1 4 9 9 4 1 ``` But if I do this : `B = A^2` The output is : ``` Error using ^ Inputs must be a scalar and a square matrix. To compute elementwise POWER, use POWER (.^) instead. ``` What does the operator `.` do exactly ?