Как удобно сделать перекрестное произведение матрицы 3х3 с 3d вектором в matlab? - PullRequest
2 голосов
/ 07 декабря 2010

например,

магия (3) x [1,2,3] дает:

-9   -18    15
 1    -2     1
23   -10    -1

1 Ответ

1 голос
/ 07 декабря 2010

Звучит так, как будто вы хотите вычислить перекрестное произведение каждой строки матрицы 3 на 3 с вектором 1 на 3. Чтобы использовать функцию CROSS , два входа должны быть одинакового размера, поэтому вам придется копировать вектор 1 на 3, используя функцию REPMAT , чтобы он имел три ряда Затем выполните перекрестное произведение вдоль столбцов:

>> A = magic(3);
>> B = [1 2 3];
>> C = cross(A,repmat(B,size(A,1),1),2);
C =

    -9   -18    15
     1    -2     1
    23   -10    -1
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...