Scilab ist eine freie, plattformunabhängige Umgebung für numerische Berechnung und technisch-wissenschaftliche Simulation. Ursprünglich 1990 am französischen Forschungsinstitut INRIA entwickelt (aktuelle Hauptversion Scilab 6), deckt Scilab Signalverarbeitung, Statistik, Optimierung, Bildverarbeitung und dynamische Systeme ab — als Open-Source-Alternative zu MATLAB-Befehlen.

Start und Ausführung

scilab                  # GUI starten
scilab -nw              # ohne grafisches Fenster (Kommandozeile)
scilab -nogui --exec datei.sce   # Skript im Batch-Modus
exec('skript.sce')      # Skript innerhalb der Sitzung laden

Wichtige Befehle

  • Hilfe: help plot, apropos, help
  • Workspace: who, whos -name, clear, isdef('x')
  • Vektoren/Matrizen: x = linspace(0, 2*%pi, 100), zeros(3,3), ones(2,4), eye(3), rand(2,2)
  • Lineare Algebra: A b (LGS lösen), spec(A) (Eigenwerte), inv(A), det(A), svd(A)
  • Signalverarbeitung: fft(x), ifft(x), conv, filter
  • I/O: disp(x), printf('%f ', x), save('daten.dat', x, y), load('daten.dat')

Plotting (2D/3D)

plot(x, sin(x))        # MATLAB-ähnlich
plot2d(x, y, style=2)  # klassische Scilab-Form
plot3d(x, y, z); surf(x, y, z)
scf(0)                 # neue Figure erzeugen
clf                    # Figure-Inhalt löschen
xdel                   # Figure schließen
xsave('fig.scg'); xload('fig.scg')   # Figuren speichern/laden

Frühere Scilab-Versionen nutzten Gnuplot als Grafik-Basis für 2D- und 3D-Plots.

Xcos — blockbasierte Simulation

Xcos ist der grafische Simulator von Scilab (Nachfolger von Scicos): Blöcke für Quellen, Verstärker, Integratoren und Sinks werden auf einer Zeichenfläche verbunden und simuliert — typisch für Regelungstechnik und dynamische Systeme.

xcos                  # Xcos-GUI öffnen
scicos_simulate()     # Simulation im Batch-Modus starten

Praxis-Tipps

  • Skripte in .sce-Dateien, Funktionsbibliotheken in .sci-Dateien ablegen; Funktionen mit function ... endfunction definieren.
  • Eigenwerte heißen in Scilab spec(), nicht eig() wie in MATLAB.
  • Konstanten: %pi, %e, %i (imaginäre Einheit), %inf.

Verwandte Grundlagen: Octave-Befehle (freie MATLAB-Alternative), Python-Befehle (NumPy/SciPy).