В чем разница между *
и .*
в Matlab?
В чем разница между * и. * В matlab?
Ответ 1
*
- векторное или матричное умножение
.*
- элементное умножение
a = [ 1; 2]; % column vector
b = [ 3 4]; % row vector
a*b
ans =
3 4
6 8
а
a.*b.' % .' means tranpose
ans =
3
8
Ответ 2
*
- матричное умножение, а .*
- элементное умножение.
Чтобы использовать первый оператор, операнды должны подчиняться правилам умножения матрицы в терминах размера.
Для второй длины вектора оператора (вертикальные или горизонтальные направления могут отличаться) или размеры матрицы должны быть равны для элементарного умножения