Russian Qt Forum

Программирование => С/C++ => Тема начата: __Heaven__ от Май 14, 2016, 13:56



Название: Библиотеки работы с матрицами и векторами
Отправлено: __Heaven__ от Май 14, 2016, 13:56
Привет, друзья!
Ранее не работал с какими-либо математическими библиотеками, поэтому прошу помочь в выборе.
Функционал, который мне необходим на данный момент, это двойная точность, вычисление определения, решение СЛАУ (3х3), думаю, Гауссом.
Важно, чтобы библиотека была распространённой.
Пробовал boost::ublas, но к нему никак не подступиться, не осилил. Быть может и его взять, но нужна помощь в старте.


Название: Re: Библиотеки работы с матрицами и векторами
Отправлено: m_ax от Май 14, 2016, 14:12
Armadillo, например: http://arma.sourceforge.net/   


Название: Re: Библиотеки работы с матрицами и векторами
Отправлено: __Heaven__ от Май 14, 2016, 16:12
О, спасибо! Кажется, то, что надо.


Название: Re: Библиотеки работы с матрицами и векторами
Отправлено: __Heaven__ от Май 15, 2016, 13:12
Что-то qtcreator не очень спешит подсказывать методы из этой библиотеки... Это можно как-то починить? linux


Название: Re: Библиотеки работы с матрицами и векторами
Отправлено: Igors от Май 22, 2016, 14:19
Функционал, который мне необходим на данный момент, это двойная точность, вычисление определения, решение СЛАУ (3х3),
Программистов владеющих хотя бы базовой математикой (первый семестр ВУЗа) значительно меньше чем умеющих прикрутить либу(ы). И поэтому первые ценятся гораздо больше  :)


Название: Re: Библиотеки работы с матрицами и векторами
Отправлено: Old от Май 22, 2016, 14:56
Программистов владеющих хотя бы базовой математикой (первый семестр ВУЗа) значительно меньше чем умеющих прикрутить либу(ы). И поэтому первые ценятся гораздо больше  :)
Точно. Поэтому первым делом владеющему дают нормальную библиотеку для математики. Что бы его ценное высокооплачиваемое время попусту не тратилось. :)


Название: Re: Библиотеки работы с матрицами и векторами
Отправлено: Igors от Май 22, 2016, 17:00
..первым делом владеющему дают ..
А невладеющему?  :)


Название: Re: Библиотеки работы с матрицами и векторами
Отправлено: Old от Май 22, 2016, 17:39
А невладеющему?  :)
А невладеющему достается гуй на Qt. :)


Название: Re: Библиотеки работы с матрицами и векторами
Отправлено: Igors от Май 22, 2016, 19:05
А невладеющему достается гуй на Qt. :)
Так вот и надо учиться, а не по либам шастать, иначе всю жизнь и будет на гуе сидеть  :)


Название: Re: Библиотеки работы с матрицами и векторами
Отправлено: Old от Май 22, 2016, 19:07
Так вот и надо учиться, а не по либам шастать, иначе всю жизнь и будет на гуе сидеть  :)
Так я вам это устал повторять. На финдреплейсах далеко не уедешь. Учитесь. :)


Название: Re: Библиотеки работы с матрицами и векторами
Отправлено: __Heaven__ от Май 23, 2016, 00:29
Опять демагогия от Igors...


Название: Re: Библиотеки работы с матрицами и векторами
Отправлено: Racheengel от Май 23, 2016, 00:32
Точно так же, как программист не обязан глубоко понимать математику, математик не обязан уметь прикручивать либы.
Каждому - своё.
Кто на что учился, как говорится.


Название: Re: Библиотеки работы с матрицами и векторами
Отправлено: __Heaven__ от Май 23, 2016, 10:06
Racheengel, я учился на литейщика. :)


Название: Re: Библиотеки работы с матрицами и векторами
Отправлено: Igors от Май 23, 2016, 10:27
..как программист не обязан глубоко понимать математику,
Глубоко не обязан, а вот понятие иметь не то что полезно, а даже необходимо. За каждой мелочью к математику/гуглу не набегаешься


Название: Re: Библиотеки работы с матрицами и векторами
Отправлено: Racheengel от Май 23, 2016, 10:47
Racheengel, я учился на литейщика. :)

Дык я тоже не математик :) Поэтому по возможности прикручиваю либы :)
Хотя не всегда можно найти то, что нужно конкретно для данного проекта.
Но тогда спасает Батька Гугл :)
Иногда даже думается - умрет гугл, умрет цивилизация...


Название: Re: Библиотеки работы с матрицами и векторами
Отправлено: PimenS от Май 23, 2016, 10:57
Иногда даже думается - умрет гугл, умрет цивилизация...

Наша страна точно не умрет. Нашего человека не заставишь гуглом пользоваться. Он лучше соседу плешь проест.  :)


Название: Re: Библиотеки работы с матрицами и векторами
Отправлено: __Heaven__ от Май 23, 2016, 11:08
Иногда даже думается - умрет гугл, умрет цивилизация...

У меня на этот случай имеется 4 справочника :)

Igors, как верховный математик, может продемонстрируете, как бы вы решили СЛАУ?


Название: Re: Библиотеки работы с матрицами и векторами
Отправлено: Igors от Май 23, 2016, 11:21
Дык я тоже не математик :) Поэтому по возможности прикручиваю либы :)
Некоторые ну очень охотно вспоминают что в школе они учили немецкий - а значит знать английский совсем не обязаны :) Но ведю это никак не облегчает их положения

Да и неправда это, ВУЗ Вы заканчивали, верхнее образование имеете. И "определения" Вы там раскрывали, и СЛАУ решали (уж по крайней мере 3х3), и матрицы разбирали. Теперь надо только чуть освежить старые знания - и толку будет гораздо больше. А по либам бегать - ну так первая же практическая задачка поставит в тупик. Вообще есть, на мой взгляд, прекрасное понятие "инженер".

Но тогда спасает Батька Гугл  :)
Иногда даже думается - умрет гугл, умрет цивилизация...
От это есть хорошее лекарство. Вот какие-то вещи которые Вы хорошо знаете и много ими занимались - попробуйте их "нагуглить" :)


Название: Re: Библиотеки работы с матрицами и векторами
Отправлено: Igors от Май 23, 2016, 11:30
Igors, как верховный математик, может продемонстрируете, как бы вы решили СЛАУ?
Написал бы ф-цию, напр Determinant  которая вычисляет определитель с учетом подставленного столбца. Ну и просто 4 вызова этой ф-ции.

Я тоже не математик, заканчивал АСУ (так, ни пришей - ни пристегни)



Название: Re: Библиотеки работы с матрицами и векторами
Отправлено: Racheengel от Май 23, 2016, 11:56
Вот я, как инженер, и предпочитаю готорые решения, предоставленные специалистами в своей области и проверенные временем. Зачем плодить велосипедо?

В свою очередь, могу создать решение в той области, в которой сам являюсь специалистом :)
Иногда, правда, приходится лезть в "чужое", но стараюсь по возможности этого избегать.
Пекарь должен хлеб печь, а доктор - людей лечить.


Название: Re: Библиотеки работы с матрицами и векторами
Отправлено: m_ax от Май 23, 2016, 12:06
Цитировать
Написал бы ф-цию, напр Determinant  которая вычисляет определитель с учетом подставленного столбца. Ну и просто 4 вызова этой ф-ции.
Это очень плохой подход, поскоьку метод с детерминантом не устойчив..


Название: Re: Библиотеки работы с матрицами и векторами
Отправлено: Igors от Май 23, 2016, 12:31
Вот я, как инженер, и предпочитаю готорые решения, предоставленные специалистами в своей области и проверенные временем. Зачем плодить велосипедо?
Чтобы понимать что делаете. У велосипедиста может быть все очень плохо (впрочем необязательно), но с этим все прекрасно. А вот у "пользующегося готовым" - ой не всегда :) Ведь он чего-то "подставляет", надеясь что "за него все сделают". Это часто практично и даже неизбежно (да, я тоже пользуюсь готовым, и часто)- но вот понимания это не дает.

В свою очередь, могу создать решение в той области, в которой сам являюсь специалистом :)
Что же это за область такая? "Логика гуя" что ли? :) Ведь все остальное так или иначе пересекается с математикой, физикой и др "предметной частью". По-вашему выходит что программист - вообще лошонок маленький :'( Не согласен!


Название: Re: Библиотеки работы с матрицами и векторами
Отправлено: Racheengel от Май 23, 2016, 12:44
Если стороннее решение меня не устроит (будет кривым/глючным/неэффективным/громоздким) и лучшей альтернативы не найдется, придется велосипедить. Но это скорее исключительный случай (хотя все от проекта зависит, тут уж когда как). А насчет "понимания"... "Вам шашечки или ехать"? :)

Что касается областей - программирование - это ж не только "регистром туда, регистром сюда". Допустим, лично я и гуями занимаюсь, и высокопроизводительными параллельными вычислениями, и машинным зрением. Но это, скажем так, жалкий процент от того, что входит в общее понятие "software engineering" - и это еще без математик и физик :)


Название: Re: Библиотеки работы с матрицами и векторами
Отправлено: Igors от Май 23, 2016, 13:10
А насчет "понимания"... "Вам шашечки или ехать"? :)
Мой личный опыт показывает что без понимания никуда не уехать :)

Но это, скажем так, жалкий процент от того, что входит в общее понятие "software engineering"
А вот интересно что же в него входит  ???

Мне кажется это совершенно раздутый, искусственный термин. А по жизни.. Вот прозвучало "определений", ну может оговорился человек? Задам вопросик.. ага, то же самое. Все, он меня совершенно не интересует, его резюме я даже не буду открывать. А вот требования к "программированию" обычно мягче. Знает std::vector, ну и ладно, остальному наблатыкается, это несложно (как показывает практика)


Название: Re: Библиотеки работы с матрицами и векторами
Отправлено: Old от Май 23, 2016, 18:05
Мой личный опыт показывает что без понимания никуда не уехать :)
Так почему вы делаете вывод, что если человек ищет нормальную математическую библиотеку, он обязательно не шарит в математике? :)
Какие тут причинно-следственные связи? :)


Название: Re: Библиотеки работы с матрицами и векторами
Отправлено: __Heaven__ от Май 23, 2016, 22:58
"определения"
Не цепляйтесь, в авральном режиме работаю. Хотел написать определение корней системы уравнений и определитель, потом отвлёкся.

Так почему вы делаете вывод, что если человек ищет нормальную математическую библиотеку, он обязательно не шарит в математике? :)
Дапатамушта :)

Игорь, вот зачем мне тратить своё время на написние и отладку метода гаусса? Я лучше возьму готовое из либы. Тем более, что там возможно и не гаусс используется, а более устойчивый метод. Вы в команде работаете? У вас случаем в проекте не используются классы MatrixIgors, MatrixPetya, MatrixVasya? Это же true разбираться в матрицах и не использовать готовые решения. :)


Название: Re: Библиотеки работы с матрицами и векторами
Отправлено: Igors от Май 24, 2016, 08:46
Игорь, вот зачем мне тратить своё время на написние и отладку метода гаусса? Я лучше возьму готовое из либы.
Возможно Вы кажетесь себе рациональным и практичным, но в данном случае это не так. Раскрыть определитель и решить СЛАУ 3x3 - дело 10 минут, зачем вместо этого вешать на себя еще одну зависимость?

То что Вы не шарите в математике - не беда, я тоже не бог весть какой спец :) Плохо то что Вы упорно уклоняетесь от ее изучения, даже того что учили, сдавали экзамен (может даже на "отлично"). А без знания основ никакие либы не спасут. Будет чуть другая задачка или даже чуть по другому сформулирована - и все, приплыли. Потому что не сам решал, а "списывал" (как это называлось в советской школе :))

Программист(?) у которого за душой ничего нет (одни переписанные примеры) - довольно жалкое зрелище  :'(


Название: Re: Библиотеки работы с матрицами и векторами
Отправлено: __Heaven__ от Май 24, 2016, 09:29
Нет, не кажусь, так как всё ещё поддерживаю этот бессмысленный разговор.


Название: Re: Библиотеки работы с матрицами и векторами
Отправлено: __Heaven__ от Май 26, 2016, 19:59
Что-то qtcreator не очень спешит подсказывать методы из этой библиотеки... Это можно как-то починить? linux

Исправил это неудобство подключением плагина ClangCodeModel


Название: Re: Библиотеки работы с матрицами и векторами
Отправлено: Racheengel от Май 26, 2016, 21:37
Программист(?) у которого за душой ничего нет (одни переписанные примеры) - довольно жалкое зрелище  :'(

Жалкое зрелище - это совковые математики, считающие себя программистами.
Впрочем, обратное тоже верно (но не так распространено).