Учебники

MATLAB — GNU Octave Tutorial

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

Octave имеет следующие общие черты с MATLAB:

  • матрицы являются фундаментальным типом данных
  • имеет встроенную поддержку комплексных чисел
  • имеет встроенные математические функции и библиотеки
  • поддерживает пользовательские функции

GNU Octave также является свободно распространяемым программным обеспечением. Вы можете распространять его и / или изменять его в соответствии с условиями Стандартной общественной лицензии GNU (GPL), опубликованной Free Software Foundation.

Матлаб против Октавы

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

Например, MATLAB поддерживает только одинарные кавычки, но Octave поддерживает одинарные и двойные кавычки для определения строк. Если вы ищете учебник по Octave, просим пройти этот учебник с самого начала, который охватывает как MATLAB, так и Octave.

Совместимые примеры

Почти все примеры, описанные в этом руководстве, совместимы как с MATLAB, так и с Octave. Давайте попробуем следующий пример в MATLAB и Octave, который дает тот же результат без каких-либо изменений синтаксиса —

В этом примере создается трехмерная карта поверхности для функции g = xe — (x 2 + y 2 ) . Создайте файл сценария и введите следующий код —

[x,y] = meshgrid(-2:.2:2);
g = x .* exp(-x.^2 - y.^2);
surf(x, y, g)
print -deps graph.eps

Когда вы запускаете файл, MATLAB отображает следующую трехмерную карту —

3-D Карта в Матлаб

Несовместимые примеры

Хотя все основные функции MATLAB доступны в Octave, есть некоторые функции, например, Дифференциальное и интеграционное исчисление, которые не совпадают точно в обоих языках. В этом руководстве были приведены примеры обоих типов, в которых они различались по синтаксису.

Рассмотрим следующий пример, где MATLAB и Octave используют разные функции для получения области кривой: f (x) = x 2 cos (x) для −4 ≤ x ≤ 9. Ниже приводится версия кода MATLAB —

f = x^2*cos(x);
ezplot(f, [-4,9])
a = int(f, -4, 9)
disp('Area: '), disp(double(a));

Когда вы запускаете файл, MATLAB строит график —

Определенный Интеграл

Следующий результат отображается

a =
8*cos(4) + 18*cos(9) + 14*sin(4) + 79*sin(9)
 
Area: 
   0.3326

Но чтобы дать область той же кривой в Octave, вам придется использовать символический пакет следующим образом: