Octave имеет несколько синтаксических улучшений в Matlab, например, вы можете сказать endif
endfor
и endfunction
вместо просто end
, что значительно упрощает отладку.
Octave также позволяет вамдинамически генерировать функции и иметь несколько функций, определенных в скриптах и файлах функций.Это намного лучше, чем подход matlab «один файл-одна-функция».
Наконец, октава имеет parcellfun
и pararrayfun
, которые являются очень мощными инструментами параллельной обработки, которых в matlab совершенно не хватает.В matlab есть parfor
, но, на мой взгляд, это не самый лучший способ сделать это.
Минусы октавы в том, что они немного отстают от наборов инструментов, хотя если вы посмотрите, то сможете найти похожие вещи.fsolve
и lsode
кажутся немного медленнее, но по некоторым причинам более устойчивыми в октаве.К тому же, для некоторых людей обидно, как правило, отсутствие символической ссылки и инструментария DAQ, но в любом случае этот материал будет проприетарным.
Python / Numpy определенно заслуживает внимания: он более мощный, но их синтаксиснацелен на более сложные фрагменты кода.