Вычисление произведений
Несколько простых функций служат для перемножения элементов массивов:
- prod(A) – возвращает произведение элементов массива, если А – вектор, или вектор-строку, содержащую произведения элементов каждого столбца, если А – матрица;
- prod (A, dim) – возвращает матрицу (массив размерности два) с произведением элементов массива А по столбцам (dim=1), по строкам(dim=2), по иным размерностям в зависимости от значения скаляра dim.
Пример:
>
>
A
=
[
1234
;
2457
;
6834
]
A
1
2
3
4
2
4
5
7
6
8
3
4
>
>
B
=
prod(A)
B
=
12
64
45
- cumprod(A) – возвращает произведение с накоплением. Если А – вектор, cum-prod(A) возвращает вектор, содержащий произведения с накоплением элементов вектора А. Если А – матрица, cumprod(A) возвращает матрицу того же размера, что и А, содержащую произведения с накоплением для каждого столбца матрицы А (Первая строка без изменений, во второй строке произведение первых двух элементов каждого столбца, в третьей строке элементы второй строки матрицы-результата умножаются на элементы третьей строки матрицы входного аргумента по столбцам и т. д.);
- cumprod(A,dim) – возвращает произведение с накоплением элементов по строкам или столбцам матрицы в зависимости от значения скаляра dim.
Примеры:
>
>
A
=
[
1
2
3
;
4
5
6
;
7
8
9
]
A
=
1
2
3
4
5
6
7
8
9
>
>
B
=
cumprod(A)
- cross(U. V) – возвращает векторное произведение векторов U и V в трехмерном пространстве, т. е. W=UxV.U и V – обязательно векторы с тремя элементами;
- cross(U,V,dim) – возвращает векторное произведение U и V по размерности, определенной скаляром dim. U и V – многомерные массивы, которые должны иметь одну и ту же размерность, причем размер векторов в каждой размерности size(U.dim) и size(V.dim) должен быть равен 3.
Пример:
>
>
a
=
[
6
5
3
]; b
=
[
1
7
6
];c
=
cross(a.b)
c
=
9
-
33
37