English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
GNU Octave ist eine wie MATLAB ähnliche höhere Programmiersprache, die mit MATLAB weitgehend kompatibel ist. Es wird auch für numerische Berechnungen verwendet
GNU Octave teilt mit MATLAB die folgenden Gemeinsamkeiten-
Matrizen sind ein grundlegendes Datentyp
Es unterstützt eingebaut die Unterstützung für Komplexe
Es verfügt über eingebaute mathematische Funktionen und Bibliotheken
Es unterstützt Funktionen, die vom Benutzer definiert werden
GNU Octave ist auch Software, die kostenlos neu verteilt werden kann. Sie können sie gemäß den Bedingungen der GNU General Public License (GPL), die von der Free Software Foundation veröffentlicht wurde, neu verteilen und/oder ändern Sie es
Die meisten MATLAB-Programme laufen in Octave, aber einige Octave-Programme können in MATLAB nicht ausgeführt werden, weil Octave einige Syntax unterstützt, die MATLAB nicht unterstützt
Zum Beispiel unterstützt MATLAB nur einfache Anführungszeichen, aber Octave unterstützt sowohl einfache als auch doppelte Anführungszeichen, um Strings zu definieren. Wenn Sie nach einem Tutorial für Octave suchen, lesen Sie bitte das Tutorial von Anfang an, das sowohl MATLAB als auch Octave abdeckt
Fast alle in diesem Tutorial vorgestellten Beispiele sind mit MATLAB und Octave kompatibel. Lassen Sie uns den folgenden Beispiel versuchen, um dasselbe Ergebnis in MATLAB und Octave zu erzeugen, ohne Änderungen an der Syntax vorzunehmen-
Dieser Beispiel ist die Funktion g = xe- (x 2 + y 2)Erstellen3D-Surface-Plot. Erstellen Sie eine Skriptdatei und geben Sie den folgenden Code ein-
[x,y] = meshgrid(-2:.2:2); g = x .* exp(-x.^2 - y.^2); surf(x, y, g) print -deps graph.eps
Wenn Sie die Datei ausführen, zeigt MATLAB das Folgende an3-D-Mapping-
Obwohl alle Kernfunktionen von MATLAB in Octave verwendet werden können, stimmen einige Funktionen (z.B. Differenzial- und Integralrechnung) in beiden Sprachen nicht vollständig überein. Dieses Tutorial versucht, zwei Beispiele zu geben, deren Syntax unterschiedlich ist.
Beachten Sie das folgende Beispiel, bei dem MATLAB und Octave verschiedene Funktionen verwenden, um die Fläche der Kurve zu erhalten: f(x)= x 2 cos(x)bedeutet−4≤x≤9Hier ist die MATLAB-Version des Codes-
f = x^2*cos(x); ezplot(f, [-4,9]) a = int(f, -4, 9) display('Fläche: '), disp(double(a));
Wenn Sie die Datei ausführen, zeichnet MATLAB das Diagramm-
Zeige das folgende Ergebnis an
a = 8*cos(4) + 18*cos(9) + 14*sin(4) + 79*sin(9) Fläche: 0.3326
Um jedoch die gleiche Kurve in Octave darzustellen, müssen Sie folgende verwenden:symbolicPaket-
pkg load symbolic symbols x = sym("x"); f = inline("x^2*cos(x)"); ezplot(f, [-4,9]) print -deps graph.eps [a, ierror, nfneval] = quad(f, -4, 9); display('Fläche: '), disp(double(a));