6 Die Plotdaten

Allgemeines: Ein Datensatz hat eine laufende Nummer, und optional einen Namen (siehe COMMAND SETNAME). Jeder Datensatz wird durch einen Block beschrieben, der mit einer Zeile
N= ...
beginnt, und mit einer der Zeilen
FINISH
COMMAND INCLUDE
COMMAND INFITS
abgeschlossen wird.

Dazwischen stehen Daten und COMMANDs. Fast alle COMMANDS koennen sich auch auf einen anderen (davorstehenden) Datensatz beziehen, wenn die COMMAND-Zeile ein nachgestelltes DATASET=dataset aufweist.

Die folgenden COMMANDs werden sofort zur Kenntnis genommen und ausgeführt bzw. setzen Parameter: APPEND, X-RANGE, Y-RANGE, SKIP, SETNAME, INCLUDE, INFITS. Die übrigen COMMANDS werden zunächst gespeichert und erst auf dem fertigen Datensatz der Reihe nach ausgeführt.

N=... SYMBOL=... SIZE=... PEN=... XYTABLE COLOR=...
 
Mit dieser Kopfzeile beginnt jeder Datensatz-Block. Der Beginn der Zeile mit “N=” ist zwingend vorgeschrieben. Alle weiteren Parameter sowie deren Reihenfolge sind optional. Folgende Parameter gibt es:

N=...
 
gibt die Anzahl der folgenden Datenpunkte an. Ist N =? gegeben, dann werden alle Daten eingelesen, bis ein FINISH folgt.
SYMBOL=...
 
(auch: PLOTSYMBOL=...) gibt das Symbol an (Default: 5) - siehe Abb. 1. Bei SYMBOL=0 wird der Datensatz nicht geplottet, steht aber zum Rechnen oder für Errorbars zur Verfügung.
SIZE = x.x
 
(auch SYMBOLSIZE) gibt die Größe der Symbole an (Default: 0.3)
PEN = n
 
gibt die Strichstärke an (Default: 1 bzw. PENDEF)
COLOR = n
 
gibt die Zeichenfarbe an (n = 0 ... 9); default COLOR=1 bzw. durch DEFAULTCOLOR gesetzt. Bei SYMBOL=40 (Falschfarbendarstellung) bezeichnet COLOR die Farbtabelle. Es stehen bisher fünf Farbtabellen bereit 1=Greyscale, 2=Blackbody, 3=blue-black-red, 4=blue-white-red, 5=rainbow). Zur Veranschaulichung dient der Beispielplot ~lars/wrplot/colortable.plot (siehe Abb. im Anhang). Um die Zahl der verwendeten Farben an die Grafikkarte anzupassen, gibt es das KASDEF-Kommando \NCOLORSTEP (siehe dort).
XYTABLE
 
Ist dieser Parameter in der N= -Zeile angegeben, wird eine normale mehrspaltige Tabelle erwartet. Default ist dagegen das platzsparende WRPLOT-Tabellenformat. Es beginnt mit einer Zeile von x-Werten, gefolgt von einer Zeile mit den dazugehörigen y-Werten. Die Anzahl der Daten in einer Zeile ist dabei beliebig. Es muß nur darauf geachtet werden, daß nach einer Zeile mit x-Daten eine Zeile mit gleichvielen y-Daten folgt.
SELECT < n1 >   < n2 >
 
spezifiziert die Spalten der XYTABLE, die als X- bzw. Y-Werte betrachtete werden sollen (Default: SELECT=1:2). Achtung: Es wird nicht abgeprüft, ob die angegebenen Spalten auch existieren - falls nicht, passiert irgendein Unsinn. Speziell vorgesehen ist die Angabe einer Spalte “-1” (z.B. SELECT=-1,1): In diesem Fall wird die laufende Nummer des Tabellen-Eintrags als Wert genommen.
FLEX-XYTABLE
 
Die Datenzeilen können beliebig viele Paare von Daten (z.B.: x1 y1 x2 y2 x3 y3) enthalten (SELECT ist dann natürlich nicht möglich).
COMMAND SETNAME
name
ordnet dem aktuellen Datensatz einen symbolischen Namen zu. Der Datensatz kann später alternativ mit diesem Namen oder seiner laufenden Nummer angesprochen werden.
COMMAND X-RANGE:
< x1 :units> < x2 :units> Alle Punkte deren x-Koordinate nicht im angegebenen Intervall liegen werden beim Einlesen ignoriert.
COMMAND Y-RANGE:
< y1 :units> < y2 :units> Alle Punkte deren y-Koordinate nicht im angegebenen Intervall liegen werden beim Einlesen ignoriert.
COMMAND X-CUT:
< x1 :units> < x2 :units> Alle Punkte deren x-Koordinate nicht im angegebenen Intervall liegen werden ausgeschnitten.
COMMAND Y-CUT:
< y1 :units> < y2 :units> Alle Punkte deren y-Koordinate nicht im angegebenen Intervall liegen werden ausgeschnitten.
COMMAND X-OMIT:
< x1 :units> < x2 :units>
Negation des Kommandos X-CUT. Punkte im Bereich zwischen x1 und x2 werden gelöscht.
COMMAND Y-OMIT:
< y1 :units> < y2 :units>
Negation des Kommandos Y-CUT. Punkte im Bereich zwischen y1 und y2 werden gelöscht.
COMMAND XY-SWAP
Die X- und Y-Werte des angegebenen Datensatzes werden vertauscht.
COMMAND WAVECAL
i
Die Y-Werte des aktuellen Datensatzes werden als X-Werte in den Datensatz i übernommen (gleiche Anzahl von Elementen vorausgesetzt). Oft wird man danach den aktuellen Datensatz wegwerfen (COMMAND SKIP). Dieses Kommando ist nicht nur bei der Wellenlängenkalibration nützlich, sondern auch sonst zum Jonglieren mit Datensätzen.
COMMAND SKIP
Der Datensatz wird nicht geplottet und nach der Abarbeitung wieder entfernt. COMMAND SKIP i entfernt die letzten i Datensätze.
COMMAND EXPAND:
< N > [< c1,c2 >]
In den Datensatz werden N Punkte eingefuegt. Sind die Parameter c1 und c2 gesetzt, dann werden die Punkte nur in diesen Bereich eingefuegt.
COMMAND INSERT:
< c1 >
In den Datensatz wird an der Stelle c1 ein Punkt eingefuegt.
COMMAND HLYMANA {EBV, COLDENS}:
<Rötungsangabe: real> Korrrektur für interstellare Ly a-Absorption.
EBV (default):
Angabe von E(B-V ) in mag, welches dann in eine Wasserstoff-Säulendichte umgerechnet wird.
COLDENS:
Angabe der Hydrogen Column Density pro cm2. Die Y-Werte müssen lineare Flüsse, die X-Werte Wellenlängen in Å enthalten.
ACHTUNG!
Um eine einwandfreie Durchführung gewährleisten zu können, ist es notwendig zusätzliche Punkte in den Datensatz einzufügen. Dazu werden zwei Strategien angewendet. a) Mit COMMAND EXPAND werden über 10000 Punkte im relevanten Wellenlängenbereich eingefügt. b) Mit COMMAND INSERT werden genau dort Punkte eingefügt, wo die Interstellaren Wasserstofflinien liegen. Erst danach wird mit COMMAND HLYMANA die Korrektur für die interstellaren Linien durchgeführt. Folgende Kommandoabfolge, die auch unter wrplot/tools/hlymana.plot zu finden ist, hat sich bewährt:
COMMAND EXPAND 5000 900. 1300.
COMMAND EXPAND 2100 900. 1120.
COMMAND EXPAND 1200 900. 999.
COMMAND EXPAND 800 900. 961.
COMMAND EXPAND 600 900. 943.
COMMAND EXPAND 500 900. 934.
COMMAND EXPAND 400 900. 928.
COMMAND EXPAND 400 900. 924.
COMMAND EXPAND 400 900. 922.
COMMAND INSERT 1215.67
COMMAND INSERT 1025.72
COMMAND INSERT 972.54
COMMAND INSERT 949.75
COMMAND INSERT 937.80
COMMAND INSERT 930.75
COMMAND INSERT 926.23
COMMAND INSERT 923.15
COMMAND INSERT 920.96
COMMAND HLYMANA -0.1
COMMAND REDDENING:
<E(B-V): real> [LMC, CARDELLI]
Korrrektur für interstellare Rötung nach dem Standard-Rötungsgesetz. Die Y-Werte müssen logarithmierte Flüsse, die X-Werte logarithmierte Wellenlängen in Å enthalten. Durch Angabe des Keywords LMC (CARDELLI) wird auf das LMC(CARDELLI)-Rötungsgesetz umgeschaltet.
COMMAND CONVOL:
<Keyword> <C> Faltung des Datensatzes mit der durch Keyword angegebenen Funktion.
Keyword GAUSS: Gauss-Funktion mit der Halbwertsbreite (FWHM) C
Keyword KASTEN: Box-Profil mit der Breite ±C - also eine Glättung über 2C !!!
Keyword ROT[ATION]. C gibt dabei die der Rotationsgeschwindigkeit entsprechende Verschiebung an, also auch hier reicht die Faltung über ±C.
COMMAND X+
< A : units > (Wahlweise auch COMMAND XADD oder COMMAND XOFFSET) Addiert die Konstante A zu den x-Koordinaten des gesamten Datensatzes (Achtung: eine Trennung zwischen dem + und der Konstanten ist zwingend!)
COMMAND X-
< A : units > (Wahlweise auch COMMAND XSUB) Subtrahiert A von den x-Koordinaten des gesamten Datensatzes
COMMAND Y+
< A : units > (Wahlweise auch COMMAND YADD oder COMMAND YOFFSET) Addiert A zu den y-Koordinaten des gesamten Datensatzes
COMMAND Y-
< A : units > (Wahlweise auch COMMAND YSUB) Subtrahiert A von den y-Koordinaten des gesamten Datensatzes
COMMAND X*
< A : units > (Wahlweise auch COMMAND XMULT) Multipliziert die x-Koordinaten des gesamten Datensatzes mit A
COMMAND X/
< A : units > (Wahlweise auch COMMAND XDIV) Dividiert die x-Koordinaten des gesamten Datensatzes durch A
COMMAND Y*
< A : units > (Wahlweise auch COMMAND YMULT) Multipliziert die y-Koordinaten des gesamten Datensatzes mit A
COMMAND Y/
< A : units > (Wahlweise auch COMMAND YDIV) Dividiert die y-Koordinaten des gesamten Datensatzes durch A
Hinweis:
Bei den obigen acht Befehlen kann als Argument statt der Konstanten A auch X bzw. Y angegeben werden.
COMMAND XINV
oder COMMAND 1/X bildet den Kehrwert der x-Koordinaten des gesamten Datensatzes.
COMMAND YINV
oder COMMAND 1/Y bildet den Kehrwert der y-Koordinaten des gesamten Datensatzes.
COMMAND XDEX
oder COMMAND 10**X delogarithmiert die x-Koordinaten des gesamten Datensatzes.
COMMAND YDEX
oder COMMAND 10**Y delogarithmiert die y-Koordinaten des gesamten Datensatzes.
COMMAND XLOG
oder COMMAND LOG(X) logarithmiert die x-Koordinaten des gesamten Datensatzes.
COMMAND YLOG
oder COMMAND LOG(Y) logarithmiert die y-Koordinaten des gesamten Datensatzes.
COMMAND XMIN = x.x
 
setzt diejenigen x-Werte des Datensatzes, die kleiner als x.x sind, auf den angegebenen Minimalwert. analog sind die COMMANDs
COMMAND XMAX = x.x
 
COMMAND YMIN = x.x
 
COMMAND YMAX = x.x
 
COMMAND Y-NORM
< X : units > < Y : units > addiert die Y-Werte des Datensatzes derart, daß die Kurve durch den angegeben Punkt (X,Y) geht. In dem Datensatz werden die ersten beide Datenpunkte ermittelt, welche ein Intervall um X bilden. Wahlweise kann durch Angabe von Y-NORM* auch eine Normierung durch Multiplikation erreicht werden.
COMMAND SIGN(X)
ersetzt die X-Werte durch -1., 0., oder +1. entsprechend der Signum-Funktion.
COMMAND SIGN(Y)
ersetzt die Y-Werte durch -1., 0., oder +1. entsprechend der Signum-Funktion.
COMMAND X-INC
 
löscht alle Punkte die in der X-Koordinate nicht aufsteigen aus einem Datensatz. Dies ist hilfreich, wenn z.B. fremde Spektren (z.B. IUE-Daten) importiert werden, die nicht dem strengen deutschen Reinheitsgebot für Spektren entsprechen, die aber mit Funktionen bearbeitet werden sollen, welche eine monotone Anordnung verlangen (z.B. CONVOL).
COMMAND CF-YEXT
< c > <VAR>
ist eine sog. Command Function. Sie liefert den linear interpolierten Y-Wert VAR. (Weiter Funktionen werden folgen!)
COMMAND ARI
< Dataset1 > <Operator> < Dataset2 > Führt die durch Operator angegebene Operation mit den Y-Werten der angegebenen Datensätze aus. Das Ergebnis wird in Dataset1 abgespeichert. Bei identischen X-Tabellen werden die Elemente indexweise zugeordnet. Bei verschiedenen X-Tabellen werden die Funtionswerte wechselseitig im jeweils anderen Datensatz interpoliert (nur im Überlappungsbereich). Dazu müssen beide x-Tabellen monoton sein, sonst erfolgt eine Fehlermeldung.
COMMAND STRIP y1 y2
 
wirkt nur bei SYMBOL=40 (Falschfarben-Darstellung) und definiert den waagerechten Streifen, in dem die Daten dargestellt werden (y1, y2 in Units).
COMMAND INCLUDE:
<File Name> Die Daten dieses Datensatzes werden aus dem File <File Name> gelesen. Dabei ist zu beachten, daß die “N=-Zeile” aus dem rufenden Plot-File gilt. In dem Include-File können wiederum Include Commands stehen. Es gibt drei Möglichkeiten, wie der Include-Datensatz aussehen kann:
ROH-DATEN-SATZ:
In dem File stehen nur die Daten-Punkte.
NORMALES PLOT-FILE:
Das File ist ein normales WRPLOT Daten-File mit einem Datensatz. Es wird dann nach der ersten “N=-Zeile” gesucht.
NORMALES PLOT-FILE:
Das File ist ein normales WRPLOT Daten-File mit mehreren Datensätzen. In dem rufenden Plot-File wird nach COMMAND INCLUDE durch das Keyword INCKEY= String angegeben, welcher der Datensätze eingespielt werden soll. Durch das Keyword DATASET= Nummer wird nicht der erste folgende Datensatz eingelesen, sondern der angegebene.

In allen Fällen braucht man sich nicht um das ordnungsgemäße Ende des Include-Files zu kümmern, da sowohl das File Ende als auch die Worte END und FINISH in dem Include-File erkannt werden.

COMMAND APPEND DATASET dataset
fügt dem aktuellen Datensatz die Daten aus Datensatz dataset ein.
COMMAND IF, ELSEIF, ...
wie in dem Kapitel, welches die KASDEF Kommandos beschreibt, anzuwenden, mit dem Unterschied, dass hier die Zeilen mit COMMAND beginnen müssen.
COMMAND XERROR
< n >   < type >
ordnet dem aktuellen Datensatz den Datensatz n zu, der den Fehlerbalken in x-Richtung beschreibt. Der obligatorische Parameter type spezifiziert, ob die Fehler-Daten als relativ zum Datenpunkt (PLUSMINUS) oder absolut (MINMAX) zu verstehen sind. Der Fehler-Datensatz muss das SYMBOL=0 tragen. Er muss entweder genau ein Datenpaar besitzen (gleicher Fehlerbalken für alle Werte), oder genau so viele Datenpaare wie der Hauptdatensatz (individuelle Fehlerbalken). Die Attribute des Fehlerbalkens werden vom Fehler-Datensatz genommen (COLOR, PEN, SIZE). SIZE skaliert die Größe der Querstriche (Füße).
COMMAND YERROR
< n >   < type >
wie XERROR, jedoch in y-Richtung. Datenpunkte können also unabhängig mit Fehlerbalken in x und/oder in y verziert werden.
COMMAND MERGE
dataset1 dataset2
vereinigt zwei geordnete Datensätze. Dabei wird im Überlappbereich der Mittelwert gebildet, wobei an nicht gemeinsamen x-Werten jeweils die andere Funktion an dieser Stelle interpoliert wird. MERGE ist insbesondere dafür gedacht, überlappende Spektren wie z.B. die einzelnen Echelle-Ordnungen zu vereinigen.
FINISH
Beendet einen Datensatz, der mit N =? begonnen wurde.