Bedingte Variablen, die davon abhängen, ob Matlab oder Octave den Code ausführen

702
pirad

Ich habe einen Code für Matlab / Octave geschrieben. Grundsätzlich haben sie dieselbe Syntax und alles, aber zum Beispiel unterschiedliche Funktionen zur Optimierung ( linprog/ glpk, quadprog/ qp).

Ich möchte den gleichen Code in Matlab und Octave ausführen, und dieser Code leidet unter verschiedenen Funktionen in jeder Umgebung. Bis jetzt habe ich eine Variable, die dem Programm mitteilt, ob es auf Matlab oder Octave läuft, aber ich muss diese Variable immer manuell setzen.

Gibt es einen Weg, den ein Programm erkennen kann, in welcher Umgebung es ausgeführt wird? Ich möchte also, dass die Variable durch eine Anweisung festgelegt wird x=1, wenn sie unter Octave und x=0unter Matlab ausgeführt wird.

3
Ich bin nicht sicher, ob dies eine Frage ist, die hier angebracht ist ... vor 12 Jahren 0
Ich bin mir sicher. Es ist nicht. vor 12 Jahren 0
Ich bin mir ziemlich sicher, dass sich diese Frage im falschen Forum befindet. Meine erste Vermutung wäre, dass die Antwort vom Betriebssystem abhängt, aber ich habe die meiste Programmierung unter DOS gemacht, daher sollte ich wahrscheinlich keinen Kommentar abgeben. Umstellung auf SO? Ich werde einen Moderator kennzeichnen. vor 12 Jahren 0
Idealerweise sollte man dies in den MatLab- oder GNU-Octave-Mailinglisten / -foren erfragen. Dies ist jedoch eindeutig nicht thematisch. Ich werde zu SuperUser migrieren. Wie Jyrki darauf hingewiesen hat, kann es erforderlich sein, Systemaufrufe durchzuführen und was nicht. vor 12 Jahren 0
Entschuldigung, ich wusste nicht, wo ich es posten sollte. Danke für Ihre Hilfe. pirad vor 12 Jahren 0

1 Antwort auf die Frage

2
hfs

Sie können prüfen, ob die eingebaute Variable von Octave OCTAVE_VERSIONgesetzt ist.