Как эффективно умножить вектор на транспонированную разреженную матрицу в собственном?C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Как эффективно умножить вектор на транспонированную разреженную матрицу в собственном?

Сообщение Anonymous »

Я имею с редкой матрицей a и вектором x в собственном, и мне нужно выполнить следующую транспонированную матрицу × матрица × векторная операция: t ax . Это можно разложить на два умножения матрицы-вектора: y = ax , за которым следует a t y . Первый прост, но я не знаю, как сделать второй без явной конструкции a t . Я могу написать что -то как: < /p>

Код: Выделить всё

y = A.transpose() * A * x;
Однако, похоже, что A.TransPose () явно конструкции a t в памяти, что не будет эффективно для больших матриц. Матрица, чем a сама.
Вопрос: есть ли как умножить вектор на транспонированную разреженную матрицу в собственном.>

Подробнее здесь: https://stackoverflow.com/questions/795 ... x-in-eigen
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»