\(\newcommand{\diff}{{\rm d}}\) \(\newcommand{\pdiff}{{\partial}}\)

Kurzer Einführungskurs in Igor Pro


Einführung in Igor Pro

Wenn Sie das Programm starten, öffnet Igor zwei Fenster: (a) eine Tabelle zum Eintragen von Daten; (b) ein Kommandofenster zum Eingeben und Auflisten von Befehlen (siehe Abb. 3-1).

Schließen Sie bitte das Tabellenfenster, dieses werden wir vorläufig nicht brauchen. Wenn Igor nachfragt, ob der die Tabelle als Macro speichern soll, antworten Sie mit "Nein".

Abb. 3-1: Das Kommandofenster der Software Igor Pro.

Den lästigen Symbolstreifen (Toolbar) unter der Titelleiste des Kommandofensters werden Sie los, indem Sie im Menü Windows auf Hide Toolbar klicken. Im folgenden wird das Kommandofenster ohne den (die? das?) Toolbar gezeigt.

Unter dem roten Streifen des Kommandofensters ist die eigentliche Befehlszeile. Hier spielt die Musik.

Geben Sie dort bitte ein:

print 2+3

und betätigen Sie die Return-Taste Ihrer Tastatur zum Abschicken des Befehls. Igor macht jetzt folgendes:

  1. Er liest und interpretiert den Befehl; wenn sich ein Fehler im Befehl befindet, beschwert er sich mit einer Fehlermeldung (probieren Sie mal pprint 2+3).
  2. Er führt den Befehl aus und kopiert den Befehl und das Ergebnis des Befehls in den oberen Bereich des Kommandofensters, die History:

Abb. 3-2: Ein einfacher Befehl und seine Ausführung.

Mathematische Funktionen haben die in Computersprachen üblichen Bezeichnungen, so ist zum Beispiel die Quadratwurzel aus 2 durch folgenden Befehl zugänglich:

print sqrt(2)

Das Argument der Wurzelfunktion wird in Klammern hinter das Wurzelzeichen sqrt geschrieben.

Dies gilt ganz allgemein: \(\ln 2\) wird erhalten durch den Befehl ln(2), der Sinus von 1.3 \(\rm rad\) durch sin(1.3).

Damit Ihre Daten nicht verloren gehen, sollten Sie das Projekt jetzt auf Ihrem Rechner abspeichern; dabei kann ein beliebiger Name und ein beliebiger Speicherort verwendet werden. Igor verwendet die Endung pxp als Dateinamenserweiterung. Das hier gezeigte Igor-Projekt wurde unter dem Namen IgorIntro abgespeichert; der Name des Projektes erscheint nachfolgend in der Titelleiste des Kommandofensters.

Datentypen.— Wie jede Programmierumgebung verfügt auch Igor über spezielle Datentypen. Wir stellen hier zunächst zwei besonders wichtige vor:

(1) Datentyp variable: Der elementarste Datentyp heißt variable und entspricht einfach einer Zahl. Geben Sie bitte ein, und bestätigen Sie jeweils mit Return:

variable var1 (die Variable var1 wird deklariert, d.h. ab jetzt gibt es sie);
var1 = sqrt(3) (die Variable var1 wird definiert, d.h. ihr wird ein Wert zugeordnet);
print var1 (der Wert wird in der History ausgedruckt, und Igor weiß ab jetzt, wofür var1 steht):
Abb. 3-3: Deklaration und Definition einer Variablen in der Software Igor Pro. Beachten Sie, dass sämtliche Befehle in der History aufgelistet sind. Sie können daher später immer nachschauen, was Sie bereits gemacht haben.

Die Variable var1 existiert nur innerhalb des aktuellen Igor-Projektes (hier also IgorIntro). Wenn Sie ein neues Projekt anfangen, kennt Igor var1 nicht.

(2) Datentyp wave: Das ist der wichtigste Datentyp. Eine Wave entspricht einer geordneten Liste von Zahlen, also ungefähr dem, was in einem Tabellenkalkulationsprogramm wie MS Excel in einer Spalte der Tabelle dargestellt wird.

Mit »geordnet« ist hier nicht gemeint, dass die Werte nach ihrer Größe oder einem sonstigen Kriterium sortiert sind; sondern dass es auf Reihenfolge der Elemente der Wave ankommt.
Hier ein Gegenbeispiel: Nehmen wir an, Sie haben folgende Einkaufsliste beim Besuch im Supermarkt dabei: Eier, Mohrrüben, Milch, Müsli.
Hier kommt es auf die Reihenfolge der Liste nicht an. In Ihrer Einkaufstüte würde sich nach dem Verlassen des Ladens dasselbe befinden, wenn auf Ihrem Einkaufszettel statt dessen gestanden hätte: Milch, Mohrrüben, Eier, Müsli.

Geradeso wie Variablen haben auch Waves stets einen Namen. Zum Erzeugen einer Wave gibt es den Befehl make, wie wir hier an einem Beispiel zeigen:

make testW = {1, 1.5, 1.8, 1.4, 1.7, 1.5, 1.9}

Die Wave heißt also testW, die einzelnen Zahlen stehen in geschweiften Klammern dahinter, durch ein Komma separiert. Beachten Sie, dass als Dezimalseparator ein Punkt verwendet wird.

Zur Namensgebung von Variablen und Waves gibt es einige Regeln, die zu beachten sind.

  1. Der Name darf nicht mit einer Ziffer beginnen: myWave1 ist erlaubt, aber 1myWave ist nicht erlaubt.
  2. Es dürfen alle Buchstaben des Alphabetes, alle Ziffern sowie der Unterstrich _ verwendet werden. Umlaute, Leeranschläge und sonstige Sonderzeichen sind nicht erlaubt.
  3. Igor ist nicht Groß- und Kleinbuchstaben-sensitiv: myWave1 und Mywave1 bezeichnen dasselbe Objekt.
  4. Es dürfen nicht zwei Vertreter eines Datentyps denselben Namen haben.
  5. Zwei Vertreter unterschiedlicher Datentypen dürfen denselben Namen haben. Es darf also eine Wave xxx und eine Variable xxx geben, aber es ist keine gute Idee.
  6. Die Namen von Variablen und Waves sollten nach Möglichkeit aussagekräftig sein; man weiß sonst später nicht, worum es sich handelt. myWave1 ist also kein guter Name.

Wenn eine Wave mit dem Namen testW nicht allzu viele Elemente enthält, kann man sie mit dem Befehl print testW in der History ausdrucken.

Es gibt noch eine zweite Möglichkeit, eine Wave zu erzeugen: Sie können eine Spalte in einer Tabelle mit den Zahlenwerten ausfüllen. Wenn Sie die ursprünglich von Igor erzeugte Tabelle weiter oben geschlossen haben, müssen Sie mit dem Befehl

edit
wieder eine Tabelle erzeugen. Sobald Sie Zahlen eintragen, vergibt Igor einen automatischen Namen für die Wave, nämlich wave0. Mit dem Befehl rename wave0 testW können Sie die Wave umbennenen. Der Name wird dann auch in der Tabelle aktualisiert.
Jetzt lernen wir noch, wie man eine Wave graphisch darstellen kann.

Erstellung einer Graphik in Igor Pro

Unser Ziel ist die Erzeugung der nachstehenden Abbildung, die wir in nächsten Vorlesung inhaltlich analysieren werden:

Die Zielgraphik, die wir erstellen wollen.

Wir gehen wie folgt vor:

  1. Wir erzeugen an der Kommandozeile die Test-Wave tw :
    make tw = {3.81599, 3.4633, 3.2439, 4.23815, 4.28283, 3.70816, 3.81192, 4.0863, 9.0238, 3.14665, 4.94752, 5.09755, 4.3839, 4.62207, 4.0626, 4.5942}
  2. Wir erzeugen eine rudimentäre Graphik mit dem Befehl:

    display tw

    Das Ergebnis sollte etwa wie folgt aussehen:

    Graphische Darstellung der Wave tw unter Nutzung der werksseitigen Voreinstellungen.

    Igor hat jeden Punkt der Wave über der Punktnummer dargestellt. Da Igor beim Zählen mit Null beginnt, ist der erste Wert (3.81599) über dem Abszissenwert 0 dargestellt.
    Die graphische Darstellung unbefriedigend. Wir ändern jetzt viele Aspekte der Graphik, und speichern dies als neue Voreinstellung ab.
  3. Wie Sie sehen können, verbindet Igor die Messpunkte mit einer Linie, zeigt die Messpunkte aber nicht. Das ist sinnvoll, wenn man hunderte von Messpunkten hat. Hier kommt es aber auf die einzelnen Messpunkte an. Doppelklicken Sie auf die rote Linie. Es öffnet sich eine Dialogbox zum Ändern des Erscheinungsbildes der Wave (die graphische Darstellung einer Wave heißt auf Igorianisch trace):
    Modify Trace Appearance-Fenster zum Ändern des Erscheinungsbildes einer Wave in einer Graphik.

  4. Setzen Sie die Farbe auf Blau oder Schwarz, Rot ist zu auffällig.
  5. Setzen Sie Mode auf Marker und wählen Sie Ihren Lieblingsmarker aus. Der schwarz ausgefüllte Kreis ist meist sinnvoll. Danach sieht die Abbildung so aus:
    Darstellung von tw mit Hilfe von Markern.

  6. Zum Ändern des Hintergrundes der Abbildung usw. doppelklicken wir auf eine der Achsen, z.B. die vertikale Achse. Es öffnet sich eine Dialogbox Modify Axis:
    Dialogbox zum Ändern von Achseinstellungen usw.

    Wir wählen link oben bei Axis aus: Select All Axes, denn was wir jetzt machen, bezieht sich auf beide Achsen (x und y). Wir stellen sicher, dass Live Update angewählt ist; alle Änderungen können dann live in der Graphik verfolgt werden.
  7. Wir setzen im Reiter Axis das Feld Mirror auf . Dadurch erhalten wir Spiegelachsen. Das ist der Standard in wissenschaftlichen Abbildungen.
  8. Wir klicken unter Auto/Man Ticks auf Minor Ticks.
  9. Wir klicken bei Ticks and Grids im Bereich Grid auf Major Only, Style 0, Thickness 1/4, Color Blau. Dies erzeugte ein gestricheltes Gitternetz im Hintergrund. Wenn wir es bevorzugen, auch bei den Minor Ticks Gitternetzlinien zu haben, dann setzen wir auf On und Style auf 3.
  10. Wir ersetzen im Bereich Axis Range die Option Zero isn't special durch Autoscale from Zero.
  11. Wir beschriften jetzt die Achsen. Da die Beschriftung an beiden Achsen unterschiedlich ist, wählen wir bei Axis zunächst bottom aus (das ist die x-Achse) und klicken dann auf Axis Label. Im Textfeld Axis Label: tragen wir ein: Nummer der Messung; entsprechend tragen wir bei der Achse left ein: Messergebnis [w. E.] (w. E. ist eine gebräuchliche Abkürzung für willkürliche Einheiten; im Englischen lautet die Abkürzung a. u. (arbitrary units).
  12. Für die Achse left setzen wir unter Axis Range den Wert für Maximum auf 10, damit etwas Platz zwischen dem Datenpunkt tw[8] und der oberen x-Achse bleibt.
  13. Mit Do it bestätigen → Änderungen werden übernommen.
  14. Fast fertig! Wir doppelklicken abschließend links unten in das Bild-Fenster (außerhalb der Graphik) und landen in der Dialogbox Modify Graph. Dort setzen wir Font Size auf 14, damit die Achsbeschriftungen etwas größer sind.
  15. Die Abbildung sollte jetzt annähernd so aussehen wie die Abbildung ganz oben.
  16. Wir wollen jetzt noch die ganzen Settings als Voreinstellung für weitere Graphiken abspeichern. Dabei würde aber auch die Achsbeschriftung gespeichert werden, so dass jede neue Abbildung immer diese Beschriftung hätte. Um dies zu vermeiden, machen wir eine Kopie der Abbildung: im Menüpunkt Edit klicken Sie bitte auf Duplicate Graph. In dieser duplizierten Graphik ändern wir die Achsbeschriftung und schreiben bei der x-Achse einfach x, bei der y-Achse einfach y. Beide Achsen setzen wir in Axis Range auf Zero isn't special und nehmen die Markierung vor Maximum weg, damit spätere Graphiken autoskaliert werden. Danach stellen wir sicher, dass die duplizierte Abbildung das aktive Fenster im Vordergrund ist, und klicken im Menü Graph auf Capture Graph Prefs…. In der Dialogbox klicken wir an: XY Plots: Axes and Axis Labels und XY Plots: Wave Styles. Jede neue Graphik, die mit dem Befehl display erzeugt wird, wird jetzt das voreingestellte Erscheinungsbild haben.