LINUX.ORG.RU

Посоветуйте числодробилку

 , ,


1

3

ЛОР, привет!

Занимаюсь математикой. Возникла потребность написать несколько программ для первичной проверки гипотез. Будет много умножения матриц, скалярного умножения векторов и численного интегрирования с мерами Стилтьеса. Размеры всех объектов предполагаются небольшими, но нужно будет производить очень много операций за раз. Потом все это нужно быстро отрисовать.

Нужно выбрать инструмент и более-менее освоить его.

Склоняюсь использовать python+numpy, чтобы интегрировать это в TeX исходники, может даже какой-нибудь CI/CD сделать. На питоне есть опыт в наколенных поделках. Еще вариант - Scilab (тоже был мимолетный опыт). Дальше идут всякие Octave и прочие штуки, о которых я только слышал.

Поделитесь, пожалуйста, своим опытом. Какие инструменты сейчас наиболее актуальны, удобны? Как сделать быстро/хорошо?

★★★★★
Ответ на: комментарий от post-factum

Да, желательно с краткими комментариями по достоинствам и недостаткам, сравнению вариантов.

Нагуглить ключевые слова я могу и сам, про Julia слышал.

aquadon ★★★★★
() автор топика
Ответ на: комментарий от post-factum

Опять ты выходишь на связь (с).

ОП, не слушай этих жулиа-евангелистов. Берёшь numpy, если особо времени нет, c/fortran, если его чуть больше. Тут кто-то тестировал умножение матриц с помощью numpy и С год-два назад, даже с минимальными оптимизациями С вышел медленнее. Хорошая реализация blas тоже способствует этому делу. Если тебе нужно интегрировать, то в gsl есть пачка готовых функций.

Про тех я тебе скажу одно: я всё делаю в гнуплоте, потом просто вывожу в eps, проблем не было

Как сделать быстро/хорошо?

У новичков такого не бывает.

Как вариант, можешь попробовать Mathematica, но там хватает своих нюансов.

ZERG ★★★★★
()
Ответ на: комментарий от post-factum

Господи, повылазят со своим новоделом типа жулия или раста, ничего не работает, документации нет! Посмотри, сколько примеров на фортране написано, тут вон второе издание computer simulation of liquids вышло 30 лет спустя, так там примеры на фортране! А ведь это настольная книга!

ZERG ★★★★★
()
Ответ на: комментарий от post-factum

Ну ты не путай тёплое с мягким, примерами из таких книг можно пользоваться, а вот библия советует заводить рабов, а это уже неактуально.

ZERG ★★★★★
()
Ответ на: комментарий от ZERG

Как вариант, можешь попробовать Mathematica

Оно п-ц как тормозит. Я говорю о разнице с питоном в несколько порядков.

Axon ★★★★★
()
Ответ на: комментарий от ZERG

Мой коллега фанат математики. Он написал несложную прогу для анализа определённых данных (прочитать бинарный файл, пробежаться по нему окном с рассчётом скользящей производной, найти пики производной, выдернуть из исходных данных соответствующие куски, найти в них пару основных параметров (минимум, максимум, и т. д.)). Прога работает так: запускаешь и идёшь пить чай. На один файл уходит примерно минут 20-30. Продолжение проекта передали мне, так что с целью упрощения дальнейшей работы для себя, я решил эту прогу переписать на знакомом для меня языке (питон). Кое-как разобрался в принципах её работы по исходникам на математике, и сделал всё то же самое. Так вот, мне даже прогресс-бар в ней делать не пришлось, потому что все рассчёты занимают меньше секунды, и больше всего времени занимает чтение файла с диска в память. Желание иметь дело с математикой у меня после этого отпало раз и навсегда.

Axon ★★★★★
()
Ответ на: комментарий от ZERG

Тут кто-то тестировал умножение матриц с помощью numpy и С год-два назад, даже с минимальными оптимизациями С вышел медленнее

numpy сам на C написан, что за хрень вы вытворяли?

peregrine ★★★★★
()
Ответ на: комментарий от Axon

Так в матлабе делают прототип или разово решить то, что слишком долго руками решать. Конечный вариант всегда надо переписывать на другой ЯП.

peregrine ★★★★★
()
Ответ на: комментарий от peregrine

Матлаб - очень крутой калькулятор. Mathematica - монструозная тетрадка. В ней есть какие-то навороченные функции для отрисовки и т.д.

С матлабом я работаю много и он работает быстро, для своих задач.

С Mathematica работал пару раз и желания работать с этой тормозной поделкой больше нет.

tyakos ★★★
()
Ответ на: комментарий от tyakos

Пока не увидел разницы с матлабом, кроме того что оно тормозное и более развита часть которая как Simulink, когда матлаб ориентирован на численные методы и работу с данными.

Если что мне просто интересно, а платить или пиратить неохота.

peregrine ★★★★★
()
Последнее исправление: peregrine (всего исправлений: 2)
Ответ на: комментарий от peregrine

Пока не увидел разницы с матлабом, кроме того что оно тормозное и более развита часть которая как Simulink, когда матлаб ориентирован на численные методы и работу с данными.

Ну да. А что ты ожидал от 2х мат. комбайнов?

Если что мне просто интересно, а платить или пиратить неохота.

Возьми пиратскую версию - попробуй. Понравилась - купи. Самый адекватный подход часто, имхо.

tyakos ★★★
()
Ответ на: комментарий от Axon

Ну так это только подтверждает мой довод. Я сам целую кучу данных с помощью питона обрабатывал, так оказалось, что pandas данные в 10 раз быстрее numpy читает. Но для этого мне понадобилось потратить кучу времени.

ZERG ★★★★★
()
Ответ на: комментарий от Axon

Mathematica вроде как для символьных вычислений в основном, не числодробилка. Это «аналог» maxima скорей.

Sahas ★★★★☆
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.