Существуют ли какие-либо классы или структуры, которые могут сделать работу матрицы в C ++ более удобной? - PullRequest
1 голос
/ 20 января 2011

Я пишу программу в Visual Studio, используя диалоговое приложение MFC. У меня есть 5 матриц в моей программе, где я должен добавить два из них и умножить два других из них, а затем вычесть результат умножения из суммированного значения, чтобы получить 5-ю матрицу. Некоторое время мне приходится возводить в квадрат суммированную матрицу, поэтому написать полный код довольно сложно. Итак, один из способов - написать код прямо в C ++ с использованием массива ... Но если я хочу умножить две матрицы или суммировать их напрямую, как это можно сделать в MatLab, возможно ли это в C ++? Если да, то как?

Ответы [ 4 ]

3 голосов
/ 20 января 2011

Boost имеет хорошую библиотеку для линейной алгебры: Boost.uBLAS .

Включает в себя удобный класс матрицы, а также встроенные матричные арифметические операции.

0 голосов
/ 20 января 2011

Я рекомендую gmtl (универсальная математическая библиотека шаблонов).

0 голосов
/ 20 января 2011
0 голосов
/ 20 января 2011

Eigen очень мощный и высоко оптимизированный.Он поддерживает как динамические матрицы (размер неизвестен во время компиляции), так и матрицы статического размера.Взгляните на учебник .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...