Сравнение Octave, Spyder, Freemat и Scilab как альтернативы MATLAB

18

Я пытаюсь найти альтернативу для MATLAB и до сих пор нашел:

  • GNU Octave
  • Spyder
  • FreeMat
  • Scilab

Я пытаюсь найти, что является лучшей альтернативой MATLAB. Я особенно заинтересован в производительности и целостности результатов.

    
задан user33831 23.06.2015 в 09:25
источник

9 ответов

7

Хорошо, что вы готовы к лечению, я использовал все языки программирования / программное обеспечение, о которых вы говорили. FreeMat и Spyder У меня нет слишком много опыта, но у меня есть некоторые. Другие, с которыми я сталкиваюсь.

GNU Octave значительно сведет конкуренцию. Его синтаксис имеет исключительную совместимость с синтаксисом MATLAB . Единственные отличия, о которых я знаю, по крайней мере, помимо нечетного инструментария, который вы можете попытаться заменить пакетами здесь заключается в том, что GNU Octave может определять функции из командной строки.

Я не знаю, знаете ли вы о QtOctave . QtOctave является интерфейсом (GUI) для языка программирования GNU Octave. QtOctave также поставляется с редактором.

Scilab - адекватная замена для MATLAB. Он имеет некоторые отличия в терминах синтаксиса, но ничто из того, что вы не можете опустить, если вы ищете документацию, которая поставляется с ним.

FreeMat является худшим, по-моему, синтаксисом программного обеспечения, основанного на MATLAB. Мое свидетельство для этого состоит из трех частей: во-первых, в программном центре он получает наименьшую звездную оценку четырех рассматриваемых программ. Во-вторых, он не часто обновляется, последняя версия в программном центре, в последний раз обновлялась. В-третьих, в результате моей второй части доказательств ее функции несколько отстают. Однако плюсовая сторона заключается в том, что ее синтаксис очень совместим с MATLAB.

Я использовал Spyder , но только ненадолго боюсь. Это кажется качественным. Проблема заключается в том, что он имеет только ограниченную совместимость с MATLAB, синтаксис мудрый. Это требует, чтобы вы изучили некоторые языки программирования Python, то есть, если вы планируете преуспеть в этом.

Я бы также рекомендовал SageMath , поскольку он включает в себя GNU Octave (если он уже установлен в вашей системе) Scilab (если вы уже установили его) Numpy, [Numpy и остальные упомянутые, если не указано иное указанная поставляется с Sage, и поэтому установка не требуется] Scipy, Matplotlib, maxima, fortran среди многих других. SageMath можно загрузить, перейдя на сайт Ссылка и выбрав подходящее зеркало на основе того, где вы находитесь, а затем установите соответствующий файл .tar.lzma. После этого скопируйте и вставьте в терминал следующие команды (ctrl + alt + T):

cd ~/Downloads
sudo mv sage-linux-xbit-ubuntu_y-z-Linux.tar.lzma /home/username
cd ~
tar --lzma -xvf sage-linux-xbit-ubuntu_y-z-Linux.tar.lzma
cd ~/sage-linux-xbit-ubuntu_y-z-Linux
make
sudo ln -s /home/username/sage-linux-xbit-ubuntu_y-z-Linux/sage /usr/local/bin/sage

Где «х» относится к битам вашей ОС; 'y' относится к версии Ubuntu, которую мудрец предназначен для (например, 10.04_lts; 12.04_lts (_lts требуется в 'y') и т. д.); «z» относится к архитектуре вашей ОС. (i386, amd64 и т. д.)

    
ответ дан Brenton Horne 19.10.2016 в 09:02
1

Просто для разъяснения: почему вы хотите альтернативу для Matlab? Ответ prasadkumar013 предполагает, что вы не можете использовать Matlab на Ubuntu, но можете (по крайней мере, я запускаю его на Ubuntu;)). Существует документация сообщества на странице Ссылка .

Если вы хотите, чтобы свободная альтернатива переходила на октаву, большая часть кода matlab будет работать непосредственно в октаве. Попытайтесь работать в терминале, однако, qtoctave GUI был не таким удобным для пользователя, на мой взгляд.

    
ответ дан Gerhard Burger 18.06.2012 в 10:14
1

Из всех перечисленных вами Octave наиболее совместим с синтаксисом. Фактически, помимо некоторых дорогостоящих наборов инструментов Matlab, Octave должен работать на 98% (количество, которое я только что составил) вашего кода. Я использую Matlab на работе и Octave дома.

Octave не запускает (изначально) некоторые встроенные графические интерфейсы, такие как inputdlg и т. д., если вы устанавливаете Qtoctave (IDE для Octave, sudo apt-get install qtoctave ), вы можете использовать xmlwidget и оболочку чтобы получить эту функциональность (я могу опубликовать код, если вам интересно).

Что касается производительности, Octave работает не так быстро (google для тестов). Тем не менее, вы можете получить все современные версии Matlab, работающие в Linux (если у вас есть лицензия), и теперь они включены на установочный диск по умолчанию, а производительность Linux-версии Matlab также хороша и часто лучше в Linux по сравнению с Windows.

Если вам нужна производительность, и вы не будете использовать бесплатное программное обеспечение, лучше всего смотреть на scipy. Но синтаксис менее совместим. Вам нужно будет переписать код. Spyder - это идеал, который использует питон и scipy, scilab - это пюре октавы и максимумов и несколько других. Не уверен в производительности freemat, но я не думаю, что он так же развит, как Octave.

Удачи.

Несколько тестов

скорость

Ссылка

Ссылка

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

    
ответ дан Caustic 20.06.2012 в 07:49
1

Наиболее похоже на MATLAB = Octave , (ссылка на gui)
Удивительный высокоуровневый язык вычислений высокого уровня = julia
Но мой любимый и ИМХО самый полезный во всем мире, PYTHON (scipy, sage, cython ...)     

ответ дан nagordon 16.09.2015 в 04:36
0

Ссылка

PDL («Язык данных Perl») предоставляет стандартную Perl способность компактно хранить и оперативно манипулировать большими N-мерными массивами данных, которые являются хлебом и маслом научных вычислений.

    
ответ дан gianni 18.06.2012 в 15:37
0

Вы уже пробовали Sage ( www.sagemath.org )? Это контейнер для различного математического программного обеспечения, и он может выполнять символические и численные вычисления. Последние выполняются с использованием numpy и scipy. Он имеет очень активное сообщество, и это проект с открытым исходным кодом, написанный на python.

Поскольку вас интересуют выступления, здесь , есть некоторые ориентиры (в конце страницы также сравнение с Matlab).

    
ответ дан Michele 18.08.2012 в 15:58
0

Это - хорошая статья.

Он содержит краткое объяснение и различные тесты.

BTW Я не использую MATLAB или что-то в этом роде.

    
ответ дан virpara 01.12.2016 в 14:10
-1

Я не сделал реального сравнения, но по моему опыту чисто форма представления перспективы октавы лучше, чем MATLAB.

Вы должны заметить, что «все относительные» разные панели инструментов имеют разные характеристики.

Если у вас ограниченная оперативная память на вашем компьютере, я бы сказал, что все будет работать лучше, чем MATLAB.     

ответ дан Ali 17.11.2011 в 14:14
-2

Мой колледж использует MATLAB на своих ПК с ОС Windows. Но для использования MATLAB на Ubuntu у меня остались два варианта

  1. Установите MATLAB поверх вина или любого программного обеспечения для виртуализации.
  2. Найти Linux Equivallent

Поскольку виртуализация очень тяжела на моем ноутбуке, я искал альтернативу. После многих пробных версий программного обеспечения я, наконец, устроился на OCTAVE. Он может запускать большинство стандартных кодов MATLAB. Вместо GNU Octave лучше пойти на qt Octave. Хотя первая основана на терминале, более поздняя версия основана на графическом интерфейсе. Мой выбор - пойти на qt Octave

sudo apt-get install qtoctave     

ответ дан prasadkumar013 10.06.2012 в 15:12