Вопрос по operators, syntax, matlab – Что означает оператор «точка» (.)?

31

Учитывая код:

 A = [1 2 3; 3 2 1]
 B = A.^2

Выход :

B =

     1     4     9
     9     4     1

Но если я сделаю это:B = A^2

Выход:

Error using  ^ 
Inputs must be a scalar and a square matrix.
To compute elementwise POWER, use POWER (.^) instead.

Что делает оператор. делать точно?

B = A^2 средстваB = A * A и это недопустимая матричная операция, учитывая размерностьA. Serg

Ваш Ответ

2   ответа
5

В документации MATLAB есть целая страница, посвященная этой теме:Операции с массивами и матрицами, Суть этого ниже:

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.

52

Сама точка не является оператором,.^ является.

.^ является точечной & # xB9; (то есть поэлементная) власть, как.* этоточечный продукт.

.^ Array power. A.^B is the matrix with elements A(i,j) to the B(i,j) power. A and B must have the same size, unless one of them is a scalar.

C.F.

"Matrix and array arithmetic": http://www.mathworks.de/help/techdoc/ref/arithmeticoperators.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

& # xB9;) Отсюда и точка.

ВMATLAB documentation of Arithmetic Operations .^ называется "мощность массива" а также.* называется "умножение массива", что может быть полезно знать, например. в поисках дополнительной информации.

Похожие вопросы