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 ?
In general, dot notation tells Python to look inside the space that is before the dot for code to execute. You can use dot notation to access the specific version of a certain function that is defined in a different class or a different module.
operator in C/C++ The dot (.) operator is used for direct member selection via object name. In other words, it is used to access the child object.
dot(A,B,1) treats the columns of A and B as vectors and returns the dot products of corresponding columns. dot(A,B,2) treats the rows of A and B as vectors and returns the dot products of corresponding rows.
It is also known as separator or period or member operator. It is used to separate a variable and method from a reference variable.
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 elementsA(i,j)
to theB(i,j)
power. The sizes ofA
andB
must be the same or be compatible.
C.f.
¹) Hence the dot.
There is a whole page in the MATLAB documentation dedicated to this topic: Array vs. Matrix Operations. The gist of it is below:
MATLAB® has two different types of arithmetic operations: array operations and matrix operations. You can use these arithmetic operations to perform numeric computations, for example, adding two numbers, raising the elements of an array to a given power, or multiplying two matrices.
Matrix operations follow the rules of linear algebra. By contrast, array operations execute element by element operations and support multidimensional arrays. The period character (
.
) distinguishes the array operations from the matrix operations. However, since the matrix and array operations are the same for addition and subtraction, the character pairs.+
and.-
are unnecessary.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With