Diferença entre matlab e oitava

O objetivo do GNU Octave é ser compatível com o MATLAB, ou seja, qualquer código em execução no MATLAB deve ser executado no GNU Octave. A outra direção não é imposta pela comunidade; portanto, o GNU Octave também estende o MATLAB (com o tempo, este último incluiu vários recursos suportados pelo GNU Octave desde há muito tempo, por exemplo, transmissão automática). Em breve: não, eles não são os mesmos, mas o GNU Octave pretende executar qualquer código que o MATLAB execute.

Em outras palavras, o objetivo do GNU Octave é dar aos usuários a liberdade de escolher qual software usar para executar seu código. Isso é especialmente importante para o código de pesquisa produzido com fundos públicos. Ao publicar o código somente do MATLAB, a comunidade de pesquisa está bloqueando os resultados por trás dos direitos de uma empresa privada (e contribuindo livremente para o pool de clientes).

Seguindo a lista na resposta de Grzegorz Knor

  • O GNU Octave é um software livre. Não deve ser entendido como gratuito. Há custos envolvidos no trabalho necessário para desenvolvê-lo; portanto, você deve se envolver se achar útil.
  • O MATLAB é um alvo em movimento, quanto mais desenvolvedores envolvidos no GNU Octave, mais perto será capaz de seguir os recursos mais recentes do MATLAB.
  • Muitas caixas de ferramentas MATLAB são reproduzidas no GNU Octave, especialmente aquelas com código-fonte base FOSS, por exemplo, controle.
  • O MATLAB oferece muitas ferramentas prontas para uso, mas há uma ressalva: o uso dessas ferramentas bloqueia seu código por trás de um produto proprietário e reduz sua compartilhabilidade e reprodutibilidade. A maioria dessas ferramentas pode ser reproduzida com o GNU Octave, por exemplo, o GNU Octave também possui uma GUI.
  • O Simulink é um objetivo que sempre que alguém estiver disposto a liderar o projeto, isso acontecerá. Talvez integrando com Xcos