LINUX.ORG.RU

Посоветуйте пакет символьной алгебры под linux

 , ,


0

1

Всё время пользовался Wolfram Mathematica, но тут обострились два момента:

  • Люди, не знакомые с ним, тупо не понимают, что написано (не понимаю, почему)
  • При изменении значения переменной не происходит переопределения зависящей от неё другой переменной. При этом для переопределения значения переменной её нужно сначала удалить, а потом присвоить. В результате, если мы переопределяем одну переменную, а от неё зависит ещё N переменных, то нам нужно вручную выполнить 2N действий, а это как минимум 2N*15 нажатий на клавиатуру.

MathCad нет нативно под linux

MathLab что-то ну такое. Т.е. есть скрипты и вообще в нём можно написать что-то, чем смогут воспользоваться другие, но нет такой лёгкости в написании, какая она есть в MathCad или Mathematica.

В GNUOctave не реализовано нормально суммирование (а дальше я забил), а именно суммирование функций производится численно - а если мне нужно выражение производной от такой штуки?

(wx)Maxima - побаловался немного, но с первого взгляда Mathematica и это - небо и земля.

Хотел попробовать Maple, но не нахожу кряка: то скачивание 2 часа и обрывается через час, то на сайтах ломаются скрипты и после 30сек просмотра рекламы она показывается снова, то ещё что.

О моих задачах:

Есть функция из 47 слагаемых (не шучу), в нём логарифмы, суммы, экспоненты… к каждому слагаемому прилагается несколько коэффициентов (один как множитель, другой в степень, третий в *опу и т.д.). Коэффициенты наиболее удобно хранить в матрицах (для Mathematica создал файлик, который импортируется). С ней проводятся всякого рода дифференциирование и интегрирование (в основном) и определяются последующие зависимости. Собственно эта функция разбита на несколько смысловых слагаемых, которые являются отдельными функциями и вот проблема: если меняются какие-либо числа или коэффициенты их (и все дальнейшие вычисления) приходится все вычислять заново вручную сбрасывая старое значение.

В результате, если мы переопределяем одну переменную, а от неё зависит ещё N переменных, то нам нужно вручную выполнить 2N действий, а это как минимум 2N*15 нажатий на клавиатуру.

Для этого существуют процедуры и функции.

(wx)Maxima - побаловался немного, но с первого взгляда Mathematica и это - небо и земля.

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

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

Для этого существуют процедуры и функции.

Если все переменные совать в функции - долго выполняется

к относительно осознанному программированию.

Не предлагаете ли вы весь код в одну строку засунуть?

Architector
() автор топика
Ответ на: комментарий от Architector

Не предлагаете ли вы весь код в одну строку засунуть?

В строку - нет. А вот в единую операцию вычисления - да.

У тебя стоит задача по каким-то входным данным пересчитать кучу других, и ты жалуешься что её приходится делать вручную. Ну так и автоматизируй эту задачу. На то тебе программирование и дано, чтобы часто повторяющиеся вычисления выделять в отдельные функции и уметь их комбинировать на более высоком уровне.

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

Домашняя версия mapple баксов 200 стоит.

Вот matematica от 460, кажется, домашняя.

Из бесплатных такая штука ещё была https://www.sagemath.org/ Но это смесь всего что есть,похоже.

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

Вот matematica от 460, кажется, домашняя.

для малинки шла в комплекте помнится. Можно было покупать Raspberry ради удобства вольфрам. Правда что такого можно считать на куцом железе, не вполне понятно :-) Зато лицензия

MKuznetsov ★★★★★
()

Хотел попробовать Maple, но не нахожу кряка:

Там триал есть. Но вообще ты охренел конечно, не найти 3 сотни на лицензию это просто зашквар какой-то.

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

У меня месячный доход 30$

Тогда считай на логарифмической линейке.

cocucka ★★★★☆
()

Из свободно распространяемых наверное самая продвинутая - maxima, остальные весьма примитивны. Хотя если функции весьма примитивные, может и другое сгодится. Хотя еще есть другие CAS с историей: axiom и reduce.

Octave вообще не имеет функций CAS.

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