2013-03-09 3 views
0

Я хочу решить линейную систему. Моя матрица A имеет размер 1200x1200, а матрица b - 1200x1. Таким образом, по формуле Ax = b, я хочу найти x, который будет 1200x1. Теперь моя главная проблема заключается в том, что моя матрица A имеет очень мало ненулевых значений, например, не более 5 ненулевых значений в каждой из строк. Итак, что вы предлагаете? Будет ли разложение LU мне больше? или любое другое разложение, такое как разреженное разложение. Я использую java, поскольку линейная система является частью общего алгоритма, я не хочу менять язык программирования. Я узнал, что у COLT есть лучшие классы для решения. Может ли кто-нибудь предложить мне с помощью некоторых примеров решения линейных систем с использованием COLT? То, что я реализую, - это проблема итерации политики.Решение линейной системы с использованием COLT в Java

+0

Мне жаль, что я не был лучше в математике; но для теоретических улучшений вы можете попробовать https://mathematics.stackexchange.com –

+0

Спасибо за предложение. Фактически я реализовал этот материал со значением итерации, но вам нужно сделать программирование для итерации политики. Теперь часть математики больше не нужна , Я хочу, чтобы COLT api отлично работал с моим кодом. Но проблема в том, что с этим API не слишком много помогает –

ответ

0

Существует Java-библиотека с открытым исходным кодом, поддерживающая выполнение наиболее распространенных операций, применяемых к матрицам и векторам. Он также имеет функциональность для решения линейных систем nxn и делает разложение LU. Вы можете загрузить весь исходный код и документацию api: http://imr-lib.blogspot.com Это очень простая в использовании библиотека, и вы можете забрать внутри кода, чтобы увидеть реализацию; использует численные аналитические навыки для выполнения разложения LU и решения линейных систем nxn.

1

Вы можете использовать Linear Algebra 4 Java, это с открытым исходным кодом и поддержка разреженных матриц. Также вы можете выбрать матричный решатель (Гаусс, Якоби, Зейдел).

Смежные вопросы