Schmalkalden Elektrotechnik. Einführung in GnuPlot, GNU Octave, Scilab und Maxima

Größe: px
Ab Seite anzeigen:

Download "Schmalkalden Elektrotechnik. Einführung in GnuPlot, GNU Octave, Scilab und Maxima"

Transkript

1 FH Fak. Schmalkalden Elektrotechnik Einführung in GnuPlot, GNU Octave, Scilab und Maxima

2

3 Inhaltsverzeichnis 1 Übersicht 5 2 GnuPlot Installation Installation unter Linux Installation unter Unix/Linux aus den Quellen Installation unter Windows GnuPlot starten GnuPlot interaktiv benutzen Eine Datei verarbeiten Zahlen und Winkel Zahlendarstellung Winkeldarstellung Selbstdefinierte Funktionen in GnuPlot D-Plots xy-plots Einstellungen für 2D-Plots Zusammengesetzte Kurven Parametrische Plots Plots in Polarkoordinaten D-Plots xyz-plots Einstellungen für 3D-Plots Parametrische Plots Terminals Übersicht über Terminals Ausgabedatei erzeugen GnuPlot und LATEX GnuPlot oder pst-plot? Das MetaPost-Terminal MetaPost-Terminal verwenden MetaPost-Datei konvertieren MetaPost-Ausgabe in LATEX verwenden Anpassungen an der MetaPost-Datei Tipps rund um GnuPlot und LaTeX

4 Inhaltsverzeichnis 3 Erste Schritte mit GNU Octave und Scilab Einführung Octave-Installation Octave-Installation unter Linux Octave-Installation unter Unix/Linux aus den Quellen Octave-Installation unter Windows Scilab-Installation Scilab-Installation unter Linux Scilab-Installation unter Windows Octave starten Interaktives Arbeiten Datei verarbeiten Scilab starten Beispiele Einfache Berechnung Selbstdefinierte Funktion Vektoren, Matrizen und lineare Gleichungssysteme Nichtlineare Gleichungssysteme Maxima Installation Installation unter Windows Installation unter Linux Dokumentation Programmstart Programmstart unter Windows Programmstart unter Linux Verarbeitung von Dateien Beispiele Numerische Ergebnisse Funktionen Werte zuweisen Formeln zuweisen Vereinfachen Werte in Formel einsetzen Gleichungsssysteme Differenzieren Integrieren Differentialgleichungen Analyse eines Bandpasses A Anhang 169 A.1 PDF-Attachments abspeichern A.2 Zugriffsrechte auf C:\Cygwin unter Windows setzen

5 1 Welches Programm für welchen Zweck Das Programm GnuPlot stellt mathematische Sachverhalte graphisch dar, entweder erfolgt eine Ausgabe auf dem Bildschirm oder es werden Graphikdateien erstellt. Das Programm GNU Octave dient zum Lösen mathematischer Probleme. Zum Visualisieren greift das Programm auf GnuPlot zurück. Das Programm Scilab kann mathematische Probleme lösen und auch graphisch darstellen. Maxima ist ein Computer-Algebra-System und kann Probleme analytisch (d. h. formelmäßig) lösen. Dieser Text stellt die vier Programme vor. Dabei wird GnuPlot relativ ausführlich behandelt, für GNU Octave, Scilab und Maxima wird eine Einführung anhand von Beispielen gegeben, die Anfängern erste Schritte ermöglicht. 5

6 1 Übersicht 6

7 2 GnuPlot 2.1 Installation Installation unter Linux Die gängigen Linux-Distributionen bieten die Möglichkeit, Gnuplot-Pakete über den Package-Manager zu installieren. Mit 1 yum l i s t g rep g n u p l o t bekommen Sie die Pakete angezeigt, die mit GnuPlot zu tun haben. Mit 1 yum i n s t a l l... installieren Sie die Pakete (geben Sie die Paketnamen an) Installation unter Unix/Linux aus den Quellen Voraussetzungen Es wird ein C-Compiler benötigt. Quellen downloaden Die Quellen für GnuPlot finden Sie unter Software erstellen und installieren Nach Download und Entpacken gehen Sie in das beim Entpacken entstandene Verzeichnis und starten 1. / c o n f i g u r e 2 make 3 make i n s t a l l 7

8 2 GnuPlot Pfade setzen Wird das configure-script ohne weitere Optionen aufgerufen, erfolgt bei make install die Installation in das Verzeichnis /usr/local. Stellen Sie sicher, dass die Umgebungsvariable PATH (Bourne-Shell, bash und Derivate) bzw. path (C-Shell, tcsh und Derivate) das Verzeichnis /usr/local/bin mit aufführt. Der Suchpfad für shared libraries (*.so-dateien) sollte das Verzeichnis /usr/local/lib enthalten. Die Einstellung dieses Suchpfades ist systemabhängig. Auf manchen Systemen (z.b. Solaris) reicht es, das Verzeichnis in die Umgebungsvariable LD_LIBRARY_PATH aufzunehmen. Auf anderen Systemen (z.b. Linux) muss das Verzeichnis in die Datei /etc/ld.so.conf bzw. eine Datei in /etc/ld.so.conf.d aufgenommen werden und mit dem Kommando ldconfig der Cache für die Bibliothekssuche neu aufgebaut werden. Die Umgebungsvariable MANPATH, die die Verzeichnisse mit Online-Hilfetexten enthält, sollte /usr/local/man enthalten Installation unter Windows Im Downloadbereich von finden Sie eine setup.exe-datei für Windows. Nach dem Download führen Sie diese *.exe- Datei aus. Anschließend muss der Pfad gesetzt werden, so dass wgnuplot.exe gefunden wird. Dazu gehen Sie in der Systemsteuerung auf System. Unter Erweitert finden Sie einen Button Umgebungsvariablen. In der Liste Systemvariablen doppelklicken Sie PATH und hängen an den bereits enthaltenen Wert das Verzeichnis C:\Programme\GnuPlot\bin an durch Semikolon vom bisherigen Wert abgetrennt. Falls Sie das Programm nicht unter C:\Programme\GnuPlot installiert haben, müssen Sie diesen Teil des Pfades entsprechend korrigieren. 8

9 2.2 GnuPlot starten 2.2 GnuPlot starten GnuPlot interaktiv benutzen GnuPlot interaktiv unter Unix/Linux nutzen Durch Eingabe von 1 g n u p l o t wird das Programm gestartet. Im aktuellen Terminal erscheint das GnuPlot-Prompt, das Sie zur Eingabe von GnuPlot-Kommandos auffordert. Mit derartigen Kommandos legen Sie fest, was wie geplottet wird. Um das Programm zu verlassen, geben Sie das Kommando 1 q u i t ein. GnuPlot interaktiv unter Windows nutzen Unter Windows haben Sie mehrere Möglichkeiten, GnuPlot zu starten: In einer Eingabeaufforderung geben Sie 1 wgnuplot ein (bzw. wgnuplot.exe ). Im Windows-Explorer gehen Sie in das Verzeichnis C:\Programme\GnuPlot\bin und doppelklicken die Datei wgnuplot.exe. Sie legen sich einen Startmenü-Eintrag für wgnuplot.exe an und benutzen diesen. Es öffnet sich ein Fenster gnuplot, in dem ein Prompt-Zeichen angezeigt wird. Hier können Sie Kommandos zum Plotten eingeben. Nach Abschluss Ihrer Arbeit geben Sie entweder das Kommando 1 q u i t ein um das Programm zu verlassen oder Sie benutzen den Menü-Eintrag File Exit. 9

10 2 GnuPlot Eine Datei verarbeiten Eine Datei unter Unix/Linux verarbeiten Verwenden Sie gnuplot Dateiname um die angegebene Datei die GnuPlot-Kommandos enthält zu verarbeiten, z.b. 1 g n u p l o t m y f i l e. gp Die Kommandos aus dieser Datei werden ausgeführt, wenn die Datei komplett eingelesen und verarbeitet wurde beendet sich das Programm bei Erreichen des Dateiendes. Eine Datei unter Windows verarbeiten Geben Sie wgnuplot Dateiname ein, um eine Datei mit GnuPlot-Kommandos zu verarbeiten. 10

11 2.3 Zahlen und Winkel 2.3 Zahlen und Winkel Zahlendarstellung GnuPlot arbeitet mit Integerzahlen (ganzzahlige Werte), Gleitkommazahlen und komplexen Zahlen. Der Dezimaltrenner für Gleitkommazahlen ist der Punkt. Die Multiplikation mit Zehnerpotenzen wird mittels eines e beschrieben, dem die Zehnerpotenz folgt, z.b.: 1.23e-6 für 1, oder 4.56e3 für 4, Sollen Gleitkommazahlen verwendet werden, die vom Wert her ein Integerwert sind, wird der Dezimalpunkt mitgeschrieben. Da Zahlenangaben wie 4. etwas gewöhnungsbedürftig sind, sollte man hier ruhig 4.0 schreiben. Wird der Dezimalpunkt vergessen, kann dies die Rechenergebnisse enorm verfälschen, da dann u.u. die Rechnungen in Integerarithmetik vorgenommen werden. Als Beispiel mag man die Kommandos 1 p r i n t 5 / 2 2 p r i n t 5. 0 / 2. 0 betrachten. Das erste Beispiel bewirkt die Ausgabe 2. Da zwei Integerzahlen verknüpft wurden, rechnet das Programm in Integerarithmetik. Im zweiten Beispiel sind die Zahlen als Gleitkommazahlen angegeben, daher wird auch in Gleitkommaarithmetik gerechnet. Komplexe Zahlen werden mit geschweiften Klammern ausgedrückt, z.b. kann die Zahl 3 + 4i als {3.0,4.0} angegeben werden. 11

12 2 GnuPlot Winkeldarstellung Winkel können entweder in Radiant (Standard) oder in Grad angegeben werden. Zur Umstellung werden die Kommandos 1 s e t a n g l e s r a d i a n s (zur Umstellung in Radiant) bzw. 1 s e t a n g l e s d e g r e e s (zur Umstellung auf Grad) benutzt. Alle auf diese Kommandos folgenden Winkeleingaben werden als Radiant- bzw. Gradwerte betrachtet und Rechenergebnisse entsprechend in Radiant- oder Gradwerten ausgegeben. Dies betrifft insbesondere die Funktionen sin(x), cos(x) und tan(x) sowie die Ausgabe von asin(x), acos(x), atan(x), atan2(x) und arg(x). Werte von inversen hyperbolischen Funktionen mit komplexen Argumenten werden in Radiant ausgedrückt. Werden derartige Berechnungen vorgenommen, sollten aus Konsistenzgründen auch die Eingaben in Radiant erfolgen. Wird mit Polarkoordinaten geplottet, sollte 1 s e t a n g l e s d e g r e e s vor 1 s e t p o l a r angegeben werden, falls benötigt. In diesem Fall wird der Bereich für die unabhängige Variable automatisch mit auf [0:360] gesetzt. 12

13 2.5 Selbstdefinierte Funktionen in GnuPlot 2.5 Selbstdefinierte Funktionen in GnuPlot In GnuPlot ist es möglich, eigene Funktionen zu definieren. Im Beispiel wird eine Funktion dargestellt, die den Gesamtwiderstand einer Parallelschaltung aus zwei Widerständen berechnet. 1 r p a r ( ra, rb ) = ( r a * rb ) / ( r a + rb ) Wird die Funktion verwendet, z.b. als 1 r p a r ( 5. 0, ) so werden in der o.a. Berechnungsvorschrift jedes ra durch das erste Argument im Funktionsaufruf ( 5.0 ) und jedes rb entsprechend durch das zweite Argument im Funktionsaufruf ( 10.0 ) ersetzt. 13

14 2 GnuPlot 50 0 rpar(10.0,x) D-Plots xy-plots Abbildung 2.1: Erster Plot Ein 2D-Plot (x-y-plot) wird mit plot Funktion Optionen bewirkt. Die unabhängige Variable x wird dabei auf der x-achse dargestellt, der Funktionswert auf der y-achse. Im Beispiel wird eine Funktion geplottet, die den Gesamtwiderstand für eine Parallelschaltung zweier Widerstände berechnet. Einer der Widerstände sei vorgegeben als R y = 10Ω, der andere Widerstand R x sei variabel. 1 r p a r ( ra, rb ) = ( r a * rb ) / ( r a + rb ) 2 p l o t r p a r ( , x ) 14

15 2.6 2D-Plots 5 rpar(10.0,x) Abbildung 2.2: Eingrenzungen für x- und y-bereich Einstellungen für 2D-Plots Druckbereich eingrenzen Der Druckbereich kann sowohl in x-richtung als auch in y-richtung mit den Kommandos set xrange [Startwert:Endwert] set yrange [Startwert:Endwert] eingegrenzt werden. Im Beispiel wird der Bereich eingegrenzt auf für x und für y. 1 r p a r ( ra, rb ) = ( r a * rb ) / ( r a + rb ) 2 s e t x r a n g e [ 0. 0 : ] 3 s e t y r a n g e [ 0. 0 : 5. 0 ] 4 p l o t r p a r ( , x ) Werden keine Vorgaben gemacht, plottet GnuPlot im Bereich 10 x 10 und ermittelt den y-bereich aus den Funktionswerten. Verwenden Sie das Kommando 1 h e l p s e t x r a n g e für ausführlichere Informationen. 15

16 2 GnuPlot 7 6 rpar(10.0,x) Gesamtwiderstand Parallelwiderstand Abbildung 2.3: Beschriftungen für x- und y-achse Achsen beschriften Die Achsenbeschriftungen für x- und y-achse können mit set xlabel Text-Label set ylabel Text-Label festgelegt werden. 1 r p a r ( ra, rb ) = ( r a * rb ) / ( r a + rb ) 2 s e t x r a n g e [ 0. 0 : ] 3 s e t x l a b e l " P a r a l l e l w i d e r s t a n d " 4 s e t y l a b e l " G e s a m t w i d e r s t a n d " 5 p l o t r p a r ( , x ) Verwenden Sie das Kommando 1 h e l p s e t x l a b e l für ausführlichere Informationen. 16

17 2.6 2D-Plots 7 6 Gesamtwiderstand Parallelwiderstand Abbildung 2.4: Kurvenbeschriftung deaktiviert Kurvenbeschriftung deaktivieren Die Kurvenbeschriftung kann für eine Kurve deaktiviert werden, indem der plot - Anweisung die Option notitle hinzugefügt wird. 1 r p a r ( ra, rb ) = ( r a * rb ) / ( r a + rb ) 2 s e t x r a n g e [ 0. 0 : ] 3 s e t x l a b e l " P a r a l l e l w i d e r s t a n d " 4 s e t y l a b e l " G e s a m t w i d e r s t a n d " 5 p l o t r p a r ( , x ) n o t i t l e Verwenden Sie das Kommando 1 h e l p p l o t für ausführlichere Informationen. 17

18 2 GnuPlot 7 6 R Gesamtwiderstand Parallelwiderstand Abbildung 2.5: Kurve mit Beschriftung Kurvenbeschriftung festlegen Die Kurvenbeschriftung für eine Kurve kann festgelegt werden, indem der plot - Anweisung die Option title Beschriftungstext hinzugefügt wird. 1 r p a r ( ra, rb ) = ( r a * rb ) / ( r a + rb ) 2 s e t x r a n g e [ 0. 0 : ] 3 s e t x l a b e l " P a r a l l e l w i d e r s t a n d " 4 s e t y l a b e l " G e s a m t w i d e r s t a n d " 5 p l o t r p a r ( , x ) t i t l e "R" Verwenden Sie das Kommando 1 h e l p p l o t für ausführlichere Informationen. 18

19 2.6 2D-Plots 7 6 R Gesamtwiderstand Parallelwiderstand Abbildung 2.6: Anderer Platz für Kurvenbeschriftung Kurvenbeschriftung platzieren Wenn die Kurvenbeschrift (Legende) ungünstig liegt und Teile der Kurve verdeckt, gibt es zwei Möglichkeiten zur Verbesserung: Änderung des y-bereiches oder Umplatzierung der Kurvenbeschriftung. Die Position der Kurvenbeschriftung wird mit set key x-position y-position festgelegt. Für die x-position kann left bzw right vorgegeben werden, für die y-position top bzw. bottom 1 r p a r ( ra, rb ) = ( r a * rb ) / ( r a + rb ) 2 s e t x r a n g e [ 0. 0 : ] 3 s e t x l a b e l " P a r a l l e l w i d e r s t a n d " 4 s e t y l a b e l " G e s a m t w i d e r s t a n d " 5 s e t key l e f t t o p 6 p l o t r p a r ( , x ) t i t l e "R" Verwenden Sie das Kommando 1 h e l p s e t key für ausführlichere Informationen. 19

20 2 GnuPlot 7 6 Gesamtwiderstand Parallelwiderstand Abbildung 2.7: Gitter Gitter hinterlegen Mit set grid show grid wird ein Gitter mit Standardeinstellungen eingerichtet und gezeichnet. 1 r p a r ( ra, rb ) = ( r a * rb ) / ( r a + rb ) 2 s e t x r a n g e [ 0. 0 : ] 3 s e t x l a b e l " P a r a l l e l w i d e r s t a n d " 4 s e t y l a b e l " G e s a m t w i d e r s t a n d " 5 s e t g r i d 6 show g r i d 7 p l o t r p a r ( , x ) n o t i t l e Das Kommando 1 h e l p s e t g r i d liefert weitere Informationen zur Einrichtung des Gitters (u.a. Linientyp, Farbe... ). 20

21 2.6 2D-Plots 8 Gesamtwiderstand Parallelwiderstand Abbildung 2.8: Manuell eingerichtete Gitterabstände Gitterabstände manuell festlegen Die Abstände zwischen den Gitterlinien können mit set xtics x-abstände set ytics y-abstände vorgegeben werden. 1 r p a r ( ra, rb ) = ( r a * rb ) / ( r a + rb ) 2 s e t x r a n g e [ 0. 0 : ] 3 s e t x l a b e l " P a r a l l e l w i d e r s t a n d " 4 s e t y l a b e l " G e s a m t w i d e r s t a n d " 5 s e t g r i d 6 show g r i d 7 s e t x t i c s s e t y t i c s p l o t r p a r ( , x ) n o t i t l e Verwenden Sie das Kommando 1 h e l p s e t g r i d für ausführlichere Informationen. 21

22 2 GnuPlot 7 6 R Geringerer Anstieg Gesamtwiderstand Starker Anstieg Parallelwiderstand Abbildung 2.9: Zusätzliche Text-Labels Zusätzliche Text-Labels einfügen Text-Labels können mit set label [Tag-Nr.] Text-Label Optionen eingefügt werden. Die Optionen geben u.a. die Position des Labels sowie die Ausrichtung an. 1 r p a r ( ra, rb ) = ( r a * rb ) / ( r a + rb ) 2 s e t x r a n g e [ 0. 0 : ] 3 s e t x l a b e l " P a r a l l e l w i d e r s t a n d " 4 s e t y l a b e l " G e s a m t w i d e r s t a n d " 5 s e t key l e f t t o p 6 s e t l a b e l " S t a r k e r A n s t i e g " a t 2. 0, s e t l a b e l " G e r i n g e r e r A n s t i e g " a t , 6. 5 r i g h t 8 p l o t r p a r ( , x ) t i t l e "R" Verwenden Sie das Kommando 1 h e l p s e t l a b e l für ausführlichere Informationen. 22

23 2.6 2D-Plots 7 6 R Geringerer Anstieg Gesamtwiderstand Starker Anstieg Parallelwiderstand Abbildung 2.10: Linientyp und Liniendicke geändert Verfügbare Linien- und Füllarten anzeigen Mit 1 t e s t t e r m i n a l ; wird Ihnen angezeigt, welche Linientypen, Füllmuster, Liniendicken... benutzt werden können, die Muster sind jeweils mit der zugehörigen Nummer versehen, die in den Plot-Kommandos angegeben wird. Der Linientyp (lt) bestimmt Farbe und Art der Linie (durchgezogen, gestrichelt... ), die Liniendicke (lw). 1 r p a r ( ra, rb ) = ( r a * rb ) / ( r a + rb ) 2 s e t x r a n g e [ 0. 0 : ] 3 s e t x l a b e l " P a r a l l e l w i d e r s t a n d " 4 s e t y l a b e l " G e s a m t w i d e r s t a n d " 5 s e t key l e f t t o p 6 s e t l a b e l " S t a r k e r A n s t i e g " a t 2. 0, s e t l a b e l " G e r i n g e r e r A n s t i e g " a t , 6. 5 r i g h t 8 p l o t r p a r ( , x ) t i t l e "R" with l i n e s l t 4 lw 2 Verwenden Sie das Kommando 1 h e l p with für ausführlichere Informationen. 23

24 2 GnuPlot parallel in Reihe Gesamtwiderstand Testwiderstand Abbildung 2.11: Mehrere Kurven Mehrere Kurven in einem Diagramm Sollen mehrere Kurven in ein Diagramm geplottet werden, so werden die entsprechenden Funktionen in einer plot -Anweisung durch Komma getrennt angegeben. Falls keine Linientypen... angegeben sind, wählt GnuPlot selbständig unterschiedliche Linientypen für die verschiedenen Kurven. 1 r p a r ( ra, rb ) = ( r a * rb ) / ( r a + rb ) 2 r s e r ( ra, rb )= r a + rb 3 s e t x range [ 0. 0 : ] 4 s e t x l a b e l " T e s t w i d e r s t a n d " 5 s e t y l a b e l " G e s a m t w i d e r s t a n d " 6 s e t key l e f t t o p 7 p l o t r p a r ( , x ) t i t l e " p a r a l l e l ", r s e r ( , x ) t i t l e " i n Reihe " 24

25 2.6 2D-Plots Gesamtwiderstand R R P Testwiderstand Gesamtleistung P Abbildung 2.12: Unterschiedliche Koordinatensysteme Verwendung mehrerer Koordinatensysteme Sollen zwei Plots mit stark unterschiedlichen Werten gezeichnet werden, kann eine zweite y-achse (bzw. auch eine zweite x-achse) verwendet werden. Im Beispiel wird zusätzlich noch die Leistung dargestellt, wenn in den Gesamtwiderstand ein Strom von 10 ma eingeprägt wird. P = R ges I 2 = R a R b R a + R b I 2 1 r p a r ( ra, rb ) = ( r a * rb ) / ( r a + rb ) 2 pwr ( ra, rb, i )= r p a r ( ra, rb ) * ( i **2) 3 s e t x r a n g e [ 0. 0 : ] 4 s e t x l a b e l " T e s t w i d e r s t a n d " 5 s e t y l a b e l " G e s a m t w i d e r s t a n d R" 6 s e t y 2 l a b e l " G e s a m t l e i s t u n g P" 7 s e t y2range [ 0. 0 : ] 8 s e t y 2 t i c s s e t key l e f t t o p 10 p l o t r p a r ( , x ) t i t l e "R", \ 11 pwr ( , x, e 3) t i t l e "P" axes x1y2 Im Beispiel ist zu sehen, wie eine überlange Zeile umgebrochen wird. Hierzu wird dem Zeilenende (Newline) ein Backslash vorangestellt, dies bedeutet, dass das Kommando in der Folgezeile fortgesetzt wird. Die Einrückung in der Folgezeile ist nicht unbedingt erforderlich, erhöht aber die Übersichtlichkeit im Quelltext. 25

26 2 GnuPlot 7 6 R P Gesamtwiderstand R Gesamtleistung P Testwiderstand Abbildung 2.13: Verbesserungen für die Skalen Da auf der rechten Seite die Skalenstriche für die erste y-achse ebenfalls gezeichnet werden, kann die Darstellung unübersichtlich werden. Dem kann vorgebeugt werden, indem man in beiden Skalen für eine gleiche Anzahl Teilstriche sorgt (Abb. 2.13). Im Beispiel wird für die linke y-achse ein Bereich vorgegeben, bei einer Teilschrittweite von 1.0 erhält man 7 Teilschritte. Die rechte y-achse deckt den Bereich ab. Bei einer Teilschrittweite von erhält man ebenfalls 7 Teilschritte. 1 r p a r ( ra, rb ) = ( r a * rb ) / ( r a + rb ) 2 pwr ( ra, rb, i )= r p a r ( ra, rb ) * ( i **2) 3 s e t x range [ 0. 0 : ] 4 s e t x l a b e l " T e s t w i d e r s t a n d " 5 s e t y range [ 0 : 7. 0 ] 6 s e t y t i c s s e t y l a b e l " G e s a m t w i d e r s t a n d R" 8 s e t y 2 l a b e l " G e s a m t l e i s t u n g P" 9 s e t y2range [ 0. 0 : ] 10 s e t y 2 t i c s s e t key l e f t t o p 12 p l o t r p a r ( , x ) t i t l e "R", \ 13 pwr ( , x, e 3) t i t l e "P" axes x1y2 Für alle benutzen Achsen sollten sowohl der Wertebereich als auch die Skalenteilung vorgegeben werden. Mit der Option axes Achsen kann für jeden Plot separat festgelegt werden, welche Achsen zu verwenden sind ( x1y1, x1y2, x2y1 oder x2y2 ). 26

27 2.6 2D-Plots Übertragungskennlinie Abbildung 2.14: Beispiel für logarithmische Skalenteilung Logarithmische Skalenteilung Mit set logscale Achsen [Basis] kann für die angegebenen Achsen eine logarithmische Skalenteilung eingestellt werden. Als Achsen können x, y, z oder cb bzw. x2 oder y2 angegeben werden. Das optionale Argument Basis gibt die Basis des Logarithmus an, als Standardwert wird 10 verwendet. Der Wertebereich für die entsprechende Achse darf nur positive Werte beinhalten, da ansonsten der Logarithmus nicht definiert ist. Im Beispiel wird die Tiefpass-Übertragungsfunktion betragsmäßig dargestellt. 1 f ( x ) = 1. 0 / ( { 0. 0, 1. 0 } * x ) 2 s e t x r a n g e [ : ] 3 s e t y r a n g e [ : 0. 0 ] 4 s e t l o g s c a l e x 5 s e t key l e f t bottom G( f ) = j f f G 6 p l o t 20* l o g ( abs ( f ( x ) ) ) t i t l e " Ü b e r t r a g u n g s k e n n l i n i e " Verwenden Sie das Kommando 1 h e l p s e t l o g s c a l e für ausführlichere Informationen. 27

28 2 GnuPlot Diese Daten werden in eine Datei gosp0015.dat geschrieben:

29 2.6 2D-Plots Kennlinie Strom Spannung Abbildung 2.15: Messwerte-Plot Mit 1 s e t x r a n g e [ 0. 0 : ] 2 s e t y r a n g e [ 0. 0 : ] 3 s e t x l a b e l " Spannung " 4 s e t y l a b e l " Strom " 5 s e t key l e f t t o p 6 p l o t gosp0015. dat t i t l e " K e n n l i n i e " werden die Daten geplottet. 29

30 2 GnuPlot Kennlinie Strom Spannung Abbildung 2.16: Messkurve Plot als Kurve Mit der zusätzichen Option with lines werden die Punkte durch Kurven (Linienzüge) miteinander verbunden. 1 s e t x range [ 0. 0 : ] 2 s e t y range [ 0. 0 : ] 3 s e t x l a b e l " Spannung " 4 s e t y l a b e l " Strom " 5 s e t key l e f t t o p 6 p l o t gosp0015. dat t i t l e " K e n n l i n i e " with l i n e s Verwenden Sie das Kommando 1 h e l p with für ausführlichere Informationen zu den Diagrammarten. 30

31 2.6 2D-Plots Kennlinie Strom Spannung Abbildung 2.17: bezier - Polynom n-ten Grades Geglättete Kurven Mit den zusätzlichen Optionen smooth bezier bzw. smooth csplines wird die Messkurve geglättet. Die Glättung erfolgt entweder durch ein Polynom n-ten Grades (sbezier) oder durch mehrere Polynomsegmente dritten Grades (csplines). 1 s e t x r a n g e [ 0. 0 : ] 2 s e t y r a n g e [ 0. 0 : ] 3 s e t x l a b e l " Spannung " 4 s e t y l a b e l " Strom " 5 s e t key l e f t t o p 6 p l o t gosp0015. dat t i t l e " K e n n l i n i e " with l i n e s smooth s b e z i e r 31

32 2 GnuPlot Kennlinie Strom Spannung Abbildung 2.18: csplines - Polynomstücken dritten Grades 1 s e t x r a n g e [ 0. 0 : ] 2 s e t y r a n g e [ 0. 0 : ] 3 s e t x l a b e l " Spannung " 4 s e t y l a b e l " Strom " 5 s e t key l e f t t o p 6 p l o t gosp0015. dat t i t l e " K e n n l i n i e " with l i n e s smooth c s p l i n e s Verwenden Sie das Kommando 1 h e l p smooth für ausführlichere Informationen zur Kurvenglättung. Abb auf Seite 38 zeigt die Auswirkung verschiedener Glättungsverfahren auf dieselben Datensätze. Zu sehen ist, dass mit sbezier die geplottete Kurve wesentlich glatter wird als mit csplines, aber nicht mehr alle Messpunkte durchlaufen werden (Bei der Interpolation wird die Summe der quadrierten Abständer zwischen den Punkten und der Kurve minimiert). 32

33 2.6 2D-Plots Widerstand Spannung Abbildung 2.19: Berechnung aus den Messwerten Berechnung aus den Messwerten Die Messwerte können nicht nur als Werte ausgeplottet werden, es können auch Berechnungen mit den Messwerten vorgenommen werden bevor geplottet wird. Die using Format -Option bestimmt, welche Berechnungsvorschrift jeweils zur Bildung der x- und y-werte verwendet wird. Das Format besteht aus x-auswahl und y-auswahl, getrennt durch einen Doppelpunkt. Sowohl x- als auch y-auswahl können auf zwei Wegen angegeben werden: Eine einzelne Zahl. Diese Zahl gibt die Spaltennummer an (der wievielte Wert eines Datensatzes soll herausgegriffen und verwendet werden). Ein mathematischer Ausdruck in Klammern. Dieser Ausdruck kann $1, $2... enthalten, anstelle dieser Platzhalter wird jeweils der erste, zweite... Wert des Datensatzes eingesetzt. Um im Beispiel den jeweiligen Widerstandswert in Abhängigkeit von der jeweils eingestellten Spannung zu zeigen, muss für die x-richtung die Spannung (erster Wert im Datensatz) und für die y-richtung der Quotient aus dem jeweils ersten und zweiten Wert eines jeden Datensatzes verwendet werden: 1 s e t x r a n g e [ 0. 0 : ] 2 s e t x l a b e l " Spannung " 3 s e t y l a b e l " W i d e r s t a n d " 4 s e t key l e f t t o p 5 p l o t gosp0015. dat u s i n g 1 : ( $1 / $2 ) n o t i t l e \ 6 with l i n e s smooth s b e z i e r 33

34 2 GnuPlot Verwenden Sie das Kommando 1 h e l p u s i n g für ausführlichere Informationen über die using -Option. 34

35 Messwerte in GnuPlot-Datei 2.6 2D-Plots Die Messwerte können auch gleich mit in die GnuPlot-Datei geschrieben werden. Anstelle des Dateinamens steht dann ein -. Die Datensätze folgen unmittelbar auf die plot-anweisung. Ein einzelnes e in einer Zeile signalisiert das Ende der Datensätze. 1 s e t x r a n g e [ 0. 0 : ] 2 s e t x l a b e l " Spannung " 3 s e t y l a b e l " W i d e r s t a n d " 4 s e t key l e f t t o p 5 p l o t u s i n g 1 : ( $1 / $2 ) n o t i t l e with l i n e s smooth s b e z i e r e 35

36 2 GnuPlot Widerstand Spannung Abbildung 2.20: Messreihen zweier Kurven in einem Diagramm Sollen mehrere Kurven in ein Diagramm gezeichnet werden, so werden die Datenreihen hintereinander weg in der Reihenfolge in die Datei geschrieben, in der die entsprechenden Dateinamen - in der Plot-Anweisung erscheinen. Jede Datenreihe wird mit einem e abgeschlossen. Im nachfolgenden Beispiel werden die Kurven aus zwei Messreihen in einem Diagramm geplottet. 36

37 2.6 2D-Plots 1 s e t x r a n g e [ 0. 0 : ] 2 s e t x l a b e l " Spannung " 3 s e t y l a b e l " W i d e r s t a n d " 4 s e t key l e f t t o p 5 p l o t u s i n g 1 : ( $1 / $2 ) n o t i t l e with l i n e s smooth s b e z i e r, \ 6 u s i n g 1 : ( $1 / $2 ) n o t i t l e with l i n e s smoot b e z i e r e e 37

38 2 GnuPlot Widerstand dots bezier csplines acsplines Abbildung 2.21: Verschiedene Glättungsverfahren Abb zeigt Kurven für identische Datensätze mit verschiedenen Glättungsverfahren. 1 s e t key l e f t t o p 2 p l o t t i t l e " d o t s ", \ 3 t i t l e " b e z i e r " with l i n e s smooth b e z i e r, \ 4 t i t l e " c s p l i n e s " with l i n e s smooth c s p l i n e s e

39 2.6 2D-Plots e e 39

40 2 GnuPlot 1.5 Hysteresekurve B H Abbildung 2.22: Hysteresekurve als Beispiel für zusammengesetzte Kurve Zusammengesetzte Kurven Setzt sich eine Kurve aus verschiedenen Teilstücken zusammen (z.b. Hysteresekurven), verwendet GnuPlot für jedes Segment einen anderen Linienstil. Soll dies verhindert werden, muss für alle Segmente ein Linienstil vorgegeben werden. 40

41 2.6 2D-Plots 1 s e t x l a b e l "H" 2 s e t y l a b e l "B" 3 s e t x r a n g e [ 20000:20000] 4 s e t y r a n g e [ 1. 6 : 1. 6 ] 5 s e t key l e f t t o p 6 p l o t smooth b e z i e r t i t l e " H y s t e r e s e k u r v e " l t 0 with l i n e s, \ 7 smooth b e z i e r n o t i t l e l t 0 with l i n e s e e 41

42 2 GnuPlot Kurve Parametrische Plots Abbildung 2.23: Parametrischer Plot Parametrische Plots sind Plots, bei denen ein Parameter t ein vorgegebenes Intervall durchläuft. Dabei kann für jeden t-wert eindeutig ein Punkt P ( x(t),y(t) ) berechnet werden. Mit set parametric wird auf parametrisches Plotten umgeschalten. Das Intervall kann entweder über die Einstellung trange gesetzt oder in der plot- Anweisung angegeben werden. Im Beispiel wird die Kurve k : x = 1 2 t2 t + 2 y = 4 3 t 3 1 t 5 gezeichnet. Wie man sieht, werden x-funktion und y-funktion durch Komma voneinander getrennt angegeben. 1 s e t p a r a m e t r i c 2 s e t t r a n g e [ 1. 0 : 5. 0 ] 3 p l o t 0. 5 * t **2 t + 2, 4. 0 / 3. 0 * s q r t ( t **3) Alternativ wäre auch 1 s e t p a r a m e t r i c 2 p l o t [ 1. 0 : 5. 0 ] 0. 5 * t **2 t + 2, 4. 0 / 3. 0 * s q r t ( t **3) möglich. 42

43 2.6 2D-Plots a α b Abbildung 2.24: Flächeninhalt eines Parallelogrammes *5*abs(sin(t)) Abbildung 2.25: Flächeninhalt in Abhängigkeit vom Winkel Plots in Polarkoordinaten Plots in Polarkoordinaten können als Sonderform der parametrischen Plots angesehen werden. Auch hier durchläuft ein Parameter t (ein Winkel) ein vorgegebenes Intervall. Für jeden t-wert wird ein Radius berechnet, aus Radius und Winkel werden dann x und y berechnet. Im Beispiel ist ein Parallelogramm mit den Seitenlängen a = 3 b = 5 gegeben. Geplottet werden soll der Flächeninhalt in Abhängigkeit vom Winkel. Dieser berechnet sich nach der Formel 1 s e t p o l a r 2 s e t t r a n g e [ 0 : 2. 0 * p i ] 3 p l o t 3*5* abs ( s i n ( t ) ) n o t i t l e A = a b sinα 43

44 2 GnuPlot Standardmäßig geht GnuPlot davon aus, dass die Winkelvariable t in Radiant angegeben wird. Dies kann mit 1 s e t a n g l e s d e g r e e s auf Grad umgestellt werden, mit 1 s e t a n g l e s r a d i a n s kann dann wieder auf Radiant zurückgeschalten werden. Die set angles -Anweisung sollte vor set polar geschrieben werden. Hinweis: Die Winkeleinstellung beeinflusst die Funktionen sin(x), cos(x), tan(x), asin(x), acos(x), atan(x), atan2(x) und arg(x). Hyperbolische Funktionen werden nicht beeinflusst. Werden Umkehrfunktionen der hyperbolischen Funktionen für komplexe Argumente aufgerufen, muss die Winkeleinstellung auf radians gestellt sein! 44

45 2.7 3D-Plots Abbildung 2.26: Funktionsgebirge 2.7 3D-Plots xyz-plots Funktionen f (x,y) mit zwei unabhängigen Variablen x und y können als Gebirge über der x,y-ebene dargestellt werden. Hierzu wird die splot -Anweisung splot Bereiche f(x,y) Plot-Optionen verwendet, Bereichs-Angaben und Plot-Optionen sind optional. Empfohlen wird, die Bereiche über xrange und yrange einzustellen. Im Beispiel wird der Gesamtwiderstand aus der Parallelschaltung zweier Widerstände dargestellt. R ges = R 1 R 2 R 1 + R 2 1 r p a r ( a, b ) = ( ( a > 0. 0 )? ( ( b > 0. 0 )? ( ( a *b ) / ( a+b ) ) : 0. 0 ) : 0. 0 ) 2 s e t x r a n g e [ 0. 0 : ] 3 s e t y r a n g e [ 0. 0 : ] 4 s p l o t r p a r ( x, y ) n o t i t l e Verwenden Sie das Kommando 1 h e l p s p l o t für ausführlichere Informationen. 45

46 2 GnuPlot Abbildung 2.27: Verdeckte Elemente Einstellungen für 3D-Plots Versteckte Darstellung Die Option set hidden3d bewirkt, dass Objekte im Hintergrund nicht gezeichnet werden, wenn sie durch weiter vorn befindliche Objekte verdeckt werden. 1 r p a r ( a, b ) = ( ( a > 0. 0 )? ( ( b > 0. 0 )? ( ( a *b ) / ( a+b ) ) : 0. 0 ) : 0. 0 ) 2 s e t x range [ 0. 0 : ] 3 s e t y range [ 0. 0 : ] 4 s e t hidden3d 5 s p l o t r p a r ( x, y ) n o t i t l e Verwenden Sie das Kommando 1 h e l p s e t hidden3d für ausführlichere Informationen. 46

47 2.7 3D-Plots Abbildung 2.28: Höhere Anzahl an Stützstellen Anzahl der Stützstellen Die Anzahl der Stützstellen kann mit set isosamples x-samples y-samples gesetzt werden. Die zweite Angabe ist dabei optional. Zu beachten ist, dass eine höhere Anzahl an Stützstellen eine längere Berechnung erfordert und größere Ausgabedateien erzeugt. Im Beispiel wird die Anzahl der Stützstellen auf 30 für jede Achse erhöht. 1 r p a r ( a, b ) = ( ( a > 0. 0 )? ( ( b > 0. 0 )? ( ( a *b ) / ( a+b ) ) : 0. 0 ) : 0. 0 ) 2 s e t x r a n g e [ 0. 0 : ] 3 s e t y r a n g e [ 0. 0 : ] 4 s e t hidden3d 5 s e t i s o s a m p l e s 30,30 6 s p l o t r p a r ( x, y ) n o t i t l e Verwenden Sie das Kommando 1 h e l p s e t i s o s a m p l e s für ausführlichere Informationen. 47

48 2 GnuPlot Abbildung 2.29: Niveaulinien Niveaulinien Zusätzlich zum Funktionsgebirge können mit set contour Ort Niveaulinien eingezeichnet werden. Als Ort, an dem die Linien gezeichnet werden, kann contour (im Funktionsgebirge), base (in der xy-ebene) oder both (beides) angegeben werden. Im Beispiel werden beide Möglichkeiten für Niveaulinien benutzt. mit set cntrparam Parameter können Parameter für die Kontur und die Höhenlinien festgelegt werden. Im Beispiel wird vorgegeben, dass die Kurvenverläufe durch kubische Splines approximiert werden. 1 r p a r ( a, b ) = ( ( a > 0. 0 )? ( ( b > 0. 0 )? ( ( a *b ) / ( a+b ) ) : 0. 0 ) : 0. 0 ) 2 s e t x range [ 0. 0 : ] 3 s e t y range [ 0. 0 : ] 4 s e t hidden3d 5 s e t i s o s a m p l e s 30,30 6 s e t c o n t o u r b oth 7 s e t c n t r p a r a m c u b i c s p l i n e 8 s e t key l e f t t o p 9 s p l o t r p a r ( x, y ) n o t i t l e Verwenden Sie die Kommandos 1 h e l p s e t c o n t o u r 2 h e l p s e t c n t r p a r a m für ausführlichere Informationen. 48

49 Blickrichtung 2.7 3D-Plots Die Darstellung dreidimensionaler Objekte auf zweidimensionalen Ausgabegeräten (Bildschirm, Papier) hängt in erheblicher Weise vom Standpunkt bzw. der Blickrichtung des Beobachters ab. Mit set view α,β,s,s z kann die Blickrichtung festgelegt werden. Standardmäßig ist α = 60, β = 30, s = 1 und s z = 1 eingestellt. Die Werte haben folgende Auswirkungen: Zunächst ist die Blickrichtung so festgelegt, dass man von oben auf die x,y- Ebene schaut. Die z-achse kommt also dem Betrachter entgegen. Die Blickrichtung klappt dann um den Winkel α herunter zur x,y-ebene. Die Blickrichtung wird dann um den Winkel β nach rechts geklappt. Der Parameter s gibt die Skalierung für den gesamten Plot vor. Der Parameter s z kann optional benutzt werden, um eine gesonderte Skalierung für die z-achse vorzunehmen. Das Beispiel in Abb auf der nächsten Seite zeigt dieselbe Funktion aus verschiedenen Blickrichtungen betrachtet. Verwenden Sie das Kommando 1 h e l p s e t view für ausführlichere Informationen. 49

50 2 GnuPlot ,30, ,30, ,30, ,30, ,30, ,45,1 8 60,60,1 8 60,100, Abbildung 2.30: Verschiedene Blickpunkte 50

51 2.7 3D-Plots u, cos(u), sin(u) z y x 1 Abbildung 2.31: Schraubenförmige Kurve Parametrische Plots Für dreidimensionale parametrische Plots heißen die unabhängigen Variablen u und v. Die entsprechenden Wertebereiche werden als urange und vrange festgelegt. Wird nur eine unabhängige Variable benötigt, wird der anderen Variablen ein Wertebereich mit gleichem Anfangs- und Endwert zugewiesen wie im Beispiel: 1 s e t p a r a m e t r i c 2 s e t u r a n g e [ 0 : 6 * p i ] 3 s e t v r a n g e [ 1 : 1 ] 4 s e t x l a b e l " x " 5 s e t y l a b e l " y " 6 s e t z l a b e l " z " 7 s e t y t i c s 1,0.5,1 8 s e t z t i c s 1,0.5,1 9 s p l o t u, cos ( u ), s i n ( u ) Das splot -Kommando erhält als Argumente drei Funktionen zur Berechung von x-, y- und z-wert. 51

52 2 GnuPlot 3D-Plot z x y Abbildung 2.32: Torus Im Beispiel wird ein Torus dargestellt. Hierzu wird die Kreisfläche à : y = 5 + 2cosv z = 2sinv entlang der kreisförmigen Kurve k : x = 5cosu z = 5sinu rotiert. Es ergibt sich x = (5 + 2cosv)cosu y = (5 + 2cosu)sinu z = 2sinv 1 s e t p a r a m e t r i c 2 s e t x l a b e l " x " 3 s e t y l a b e l " y " 4 s e t z l a b e l " z " 5 A=5 6 B=2 7 s e t u range [ 0 : 2. 0 * p i ] 8 s e t v range [ 0 : 2. 0 * p i ] 9 s e t i s o s a m p l e s 50,50 10 s e t hidden3d 11 s e t y t i c s 8,4,8 12 s e t z t i c s 2,1,2 13 s p l o t (A+B* cos ( v ) ) * cos ( u ), (A+B* cos ( v ) ) * s i n ( u ),B* s i n ( v ) \ 14 t i t l e "3D P l o t " 52

53 2.8 Terminals 2.8 Terminals - Die Ausgabetreiber Übersicht über Terminals Im Sprachgebrauch von GnuPlot werden Ausgabegeräte als Terminals bezeichnet. Hierzu zählen sowohl Ausgaben auf dem Bildschirm als auch Ausgaben in Datei. Beim Start von GnuPlot ist voreingestellt, dass Graphiken auf den Bildschirm ausgegeben werden. Tabelle 2.4 führt die Ausgabetreiber auf. Tabelle 2.4: Terminals Name Ausgabe windows Ausgabe in ein Windows-Fenster aifm Datei für Adobe Illustrator 3.0+ cgm *.cgm-datei corel Corel-Draw-Datei dumb Text-Terminal dxf *.dxf-datei (für Import nach AutoCad) emf *.emf-datei (Windows Metafile) fig *.fig-datei (für XFig, jfig und WinFig) gif *.gif-datei 1 hp2623a Ausgabe auf HP2623-Drucker hp2648 Ausabe auf HP2648-Drucker hp500c Ausgabe auf HP DeskJet 500c hpgl *.hpgl-datei (z.b. für HP7575A-Plotter) hpljii Ausgabe auf HP Laserjet II Drucker hppj Ausgabe auf HP PaintJet- und HP3630-Drucker imagen Imagen-Laserdrucker mif *.mif-datei (für Frame Maker) pbm *.pbm-datei (NetPBM) png *.png-datei postscript *.ps-datei (PostScript) qms QMS/QUIC-Laserdrucker svg *.svg-datei (für Batik, Inkscape... ) 1 aus Lizenzgründen erzeugen manche GnuPlot-Versionen PNG-Dateien anstelle von GIF-Dateien 53

54 2 GnuPlot 54

55 2.8 Terminals Abbildung 2.33: PNG-Datei Ausgabedatei erzeugen Um eine Ausgabedatei zu erzeugen, werden zwei Anweisungen benötigt: Mit set term Terminal [Terminal-Optionen] wird ein Terminal festgelegt (damit wird angegeben, was für eine Ausgabedatei erzeugt wird). Optional können weitere Optionen für das Terminal angegeben werden. Mit set output "Dateiname" wird ein Dateiname für die Ausgabe vorgegeben. Im Beispiel wird eine PNG-Datei erzeugt, diese kann z.b. in Webseiten eingebunden werden. 55

56 2 GnuPlot 1 s e t t e r m i n a l png t r a n s p a r e n t i n t e r l a c e 2 s e t o u t p u t " o u t p u t. png " 3 r p a r ( a, b ) = ( ( a > 0. 0 )? ( ( b > 0. 0 )? ( ( a *b ) / ( a+b ) ) : 0. 0 ) : 0. 0 ) 4 s e t x range [ 0. 0 : ] 5 s e t y range [ 0. 0 : ] 6 s e t hidden3d 7 s e t i s o s a m p l e s 30,30 8 s e t c o n t o u r b oth 9 s e t c n t r p a r a m c u b i c s p l i n e 10 s e t key l e f t t o p 11 s p l o t r p a r ( x, y ) n o t i t l e Verwenden Sie das Kommando 1 h e l p s e t term png für ausführlichere Informationen zum Setup des PNG-Terminals. Ersetzen Sie ggf. png durch den Terminal-Namen, falls Sie ein anderes Terminal verwenden möchten. 56

57 2.9 GnuPlot und LATEX 2.9 GnuPlot und L A TEX GnuPlot oder pst-plot? GnuPlot ist sehr gut dafür geeignet, mathematische Zusammenhänge auf die Schnelle zu visualisieren, um Lösungsansätze zu finden oder Anschauungsmaterialien zu erstellen. Im Bereich der technischen Dokumentationen sollten Diagramme aber entsprechend DIN 461 angefertigt werden. Diese gilt insbesondere für Qualifikationsnachweise im Rahmen einer Ausbildung (z. B. Beleg-, Bachelor- und Diplomarbeiten). Das Paket pst-plot, das Bestandteil des PSTricks-Bundles ist, ermöglicht das Erstellen normgerechter Diagramme für die Einbindung in LATEX-Dokumente. Eine Einführung in pst-plot finden Sie z. B. unter de/schmalkaldenmedia/downloads/elektrotechnik/l/edv/pstpl.pdf Das MetaPost-Terminal GnuPlot-Ausgaben, die mit LATEX bzw. pdflatex verwendet werden, sollten folgende Anforderungen erfüllen: Es kommen nur Vektorgraphiken in Frage, da diese ohne Qualitätsverluste skalierbar sind. Der Unterschied zwischen der Vektor- und Bitmapgraphiken wird beim Vergleich von Abb auf Seite 55 (Bitmapgraphik) und Abb auf Seite 48 (Vektorgraphik) deutlich, insbesondere beim Hineinzoomen. Die GnuPlot-Ausgabe muss Nachbearbeitungen zulassen, diese müssen ohne großen Aufwand möglich sein. Daher sollte die GnuPlot-Ausgabe als Text- Datei vorliegen, das Dateiformat sollte unkompliziert sein. Die Datei bzw. eine Datei, die aus der GnuPlot-Ausgabe erzeugt wird muss sowohl mit LATEX als auch mit pdflatex verarbeitet werden können. Diese Anforderungen werden besonders gut durch das MetaPost-Terminal erfüllt. MetaPost-Dateien (*.mp) werden mit dem Programm metapost (bzw. mpost) verarbeitet. Dabei entsteht eine *.0 -Datei. Wird diese zu *.mps umbenannt, kann die *.mps -Datei sowohl mit LATEX als auch mit pdflatex verwendet werden. 57

58 2 GnuPlot Die MetaPost-Sprache ist wesentlich verständlicher als reines PostScript, z.b. bewirkt 1 b e g i n f i g ( 0 ) 2 p a t h p ; 3 p := ( f u l l c i r c l e s c a l e d 1cm ) s h i f t e d (2cm, 2 cm ) ; 4 f i l l p w i t h c o l o r ( r e d ) ; 5 pickup p e n c i r c l e s c a l e d 1mm; 6 draw p w i t h c o l o r ( b l a c k ) ; 7 e n d f i g ; 8 end. dasselbe wie 1 %!PS Adobe %%BoundingBox : s e t r g b c o l o r 4 newpath moveto a r c 7 c l o s e p a t h 8 f i l l 9 0 s e t g r a y s e t l i n e w i d t h moveto a r c 13 c l o s e p a t h 14 s t r o k e 58

59 2.9.3 MetaPost-Terminal verwenden 2.9 GnuPlot und LATEX Um das MetaPost-Terminal zu verwenden, schreiben Sie in der GnuPlot-Datei die Zeilen set term mp Optionen set output Dateiname Folgende Optionen werden empfohlen, wenn die GnuPlot-Ausgabe mit LATEX weiterverarbeitet werden soll: color für farbige Darstellung. latex legt fest, dass MetaPost LATEX für den Textsatz verwendet. psnfss bewirkt, dass PostScript-Fonts verwendet werden. Das Beispiel entsprechend Abb. 2.2 auf Seite 15 wird damit folgendermaßen abgewandelt, die Ausgabedatei gosp0003.mp wird erzeugt. 1 s e t t e r m i n a l mp c l a t e x p s n f s s 2 s e t o u t p u t " gosp0003. mp" 3 r p a r ( ra, rb ) = ( r a * rb ) / ( r a + rb ) 4 s e t x r a n g e [ 0. 0 : ] 5 s e t y r a n g e [ 0. 0 : 5. 0 ] 6 p l o t r p a r ( , x ) Verwenden Sie das Kommando 1 h e l p s e t term mp für weitere Informationen zu Optionen des MetaPost-Terminals. 59

60 2 GnuPlot MetaPost-Datei konvertieren Verwenden Sie den Befehl mpost -tex=latex Dateiname und geben Sie den Dateinamen dabei ohne Endung an. Im Beispiel 1 mpost t e x = l a t e x gosp0003 wird die Datei gosp0003.mp verarbeitet, es entsteht die Datei gosp Diese benennen Sie um zu gosp0003.mps. 60

61 2.9 GnuPlot und LATEX 5 rpar(10.0,x) Abbildung 2.34: Meine Bildunterschrift MetaPost-Ausgabe in L A TEX verwenden In der LATEX-Quelle binden Sie gosp0003.mps folgendermaßen ein: 1 \ b e g i n { f i g u r e } 2 { \ c e n t e r i n g 3 \ i n c l u d e g r a p h i c s { gosp0003. mps} 4 \ c a p t i o n { Meine B i l d u n t e r s c h r i f t } 5 \ l a b e l { f i g : i r g e n d e i n r e f e r e n z name} 6 } 7 \ end { f i g u r e } Das Ergebnis dieser Operation sehen Sie in Abb

62 2 GnuPlot Anpassungen an der MetaPost-Datei Datei umbenennen Sollen Anpassungen an der GnuPlot-Ausgabe vorgenommen werden, muss die GnuPlot-Ausgabedatei vorher umbenannt werden. Andernfalls wird bei einem erneuten Aufruf von GnuPlot die MetaPost-Datei mit unseren Änderungen überschrieben, die Änderungen wären dann verloren. Also benennen wir im Beispiel gosp0003.mp um zu gomp0001.mp, bevor mit den Änderungen begonnen wird. 62

63 2.9 GnuPlot und LATEX Font-Anpassungen Meist stimmen die von MetaPost gewählten Fonts nicht mit denen überein, die im jeweiligen LATEX-Dokument verwendet werden. Um eine Übereinstimmung zu erreichen, muss die LATEX-Präambel in der MetaPost-Datei an die des Dokumentes angepasst werden. Lautet die Dokumenten-Präambel z.b. 1 \ d o c u m e n t c l a s s [ ngerman, 1 2 pt, a4paper, o r i g l o n g t a b l e ] { s c r b o o k } 2 \ u s e p a c k a g e { ngerman } 3 \ u s e p a c k a g e { i f p d f } 4 \ u s e p a c k a g e [ l a t i n 1 ] { i n p u t e n c } 5 \ u s e p a c k a g e [ T1 ] { f o n t e n c } 6 \ u s e p a c k a g e { textcomp } 7 \ u s e p a c k a g e { mathptmx } 8 \ u s e p a c k a g e [ s c a l e d =. 9 2 ] { h e l v e t } 9 \ u s e p a c k a g e { c o u r i e r } 10 \ u s e p a c k a g e [ i n t l i m i t s ] { amsmath } 11 \ u s e p a c k a g e { t r f s i g n s } 12 \ u s e p a c k a g e { a r r a y } 13 \ u s e p a c k a g e { enumerate } 14 \ u s e p a c k a g e { l o n g t a b l e } 15 \ u s e p a c k a g e { l a t e x s y m } 16 \ u s e p a c k a g e { l i s t i n g s } 17 \ u s e p a c k a g e [ ngerman ] { v a r i o r e f } 18 \ u s e p a c k a g e { makeidx } 19 \ u s e p a c k a g e { c o l o r } 20 \ i f p d f 21 \ u s e p a c k a g e [ a c t i v a t e = normal ] { p d f c p r o t } 22 \ u s e p a c k a g e [ p d f t e x ] { g r a p h i c x } 23 \ u s e p a c k a g e { e p s t o p d f } 24 \ p d f c o m p r e s s l e v e l =9 25 \ u s e p a c k a g e [ 26 p d f t e x, 27 a 4 p a p e r = t r u e, 28 p d f t i t l e ={Some t i t l e }, 29 p d f s u b j e c t ={Some s u b j e c t }, 30 p d f a u t h o r ={My Name}, 31 c o l o r l i n k s = t r u e, 32 bookmarks, 33 bookmarksnumbered, 34 l i n k c o l o r = l i n k g r e e n, 35 pdfpagemode =UseNone, 36 p d f s t a r t v i e w ={XYZ }, 37 ] { h y p e r r e f } 38 \ e l s e 39 \ u s e p a c k a g e [ d v i p s ] { g r a p h i c x } 40 \ D e c l a r e G r a p h i c s R u l e {. png }{ eps } {. bb }{ bmeps #1} 63

64 2 GnuPlot 41 \ u s e p a c k a g e [ d v i p s ] { h y p e r r e f } 42 \ f i 43 \ d e f i n e c o l o r { l i n k g r e e n }{ rgb } { 0, 0. 5, 0 } 44 \ d e f \ t h e y e a r {2006} 45 \ p a r i n d e n t 0 c m 46 \ a u t h o r {My Name} 47 \ t i t l e {Some t i t l e } 48 \ i n c l u d e { c o v e r } 49 \ renewcommand * { \ s e c t f o n t } { \ b f s e r i e s } 50 \ newcommand { \ i m a g e s c a l e f a c t o r } [ 0 ] { } 51 \ makeindex so kann daraus der Teil extrahiert werden, der die Fonts einstellt und sich auf Text- Encoding bezieht. 1 \ d o c u m e n t c l a s s [ ngerman, 1 2 pt, a4paper, o r i g l o n g t a b l e ] { s c r b o o k } 2 \ u s e p a c k a g e { ngerman } 3 \ u s e p a c k a g e [ l a t i n 1 ] { i n p u t e n c } 4 \ u s e p a c k a g e [ T1 ] { f o n t e n c } 5 \ u s e p a c k a g e { textcomp } 6 \ u s e p a c k a g e { mathptmx } 7 \ u s e p a c k a g e [ s c a l e d =. 9 2 ] { h e l v e t } 8 \ u s e p a c k a g e { c o u r i e r } 9 \ u s e p a c k a g e [ i n t l i m i t s ] { amsmath } 10 \ u s e p a c k a g e { t r f s i g n s } 11 \ u s e p a c k a g e { l a t e x s y m } Der Einfachheit halber kann in der MetaPost-Quelle die Dokumentenklasse article verwendet werden, als Präambel ergibt sich somit: 1 \ d o c u m e n t c l a s s [12 p t ] { a r t i c l e } 2 \ u s e p a c k a g e { ngerman } 3 \ u s e p a c k a g e [ l a t i n 1 ] { i n p u t e n c } 4 \ u s e p a c k a g e [ T1 ] { f o n t e n c } 5 \ u s e p a c k a g e { textcomp } 6 \ u s e p a c k a g e { mathptmx } 7 \ u s e p a c k a g e [ s c a l e d =. 9 2 ] { h e l v e t } 8 \ u s e p a c k a g e { c o u r i e r } 9 \ u s e p a c k a g e [ i n t l i m i t s ] { amsmath } 10 \ u s e p a c k a g e { t r f s i g n s } 11 \ u s e p a c k a g e { l a t e x s y m } 64

65 2.9 GnuPlot und LATEX Der Beginn der MetaPost-Quelle sieht aus wie folgt: 1 %GNUPLOT Metapost o u t p u t : Thu Jun : 3 4 : %% Add \ d o c u m e n t c l a s s and \ b e g i n { dcoument } f o r l a t e x 5 %% NB you s h o u l d s e t t h e e n v i r o n m e n t v a r i a b l e TEX t o t h e name of your 6 %% l a t e x e x e c u t a b l e ( n o r m a l l y l a t e x ) i n o r d e r f o r m e t a p o s t t o work 7 %% or run 8 %% mpost t e x = l a t e x % BEGPRE 11 v e r b a t i m t e x 12 \ d o c u m e n t c l a s s { a r t i c l e } 13 \ u s e p a c k a g e [ l a t i n 1 ] { i n p u t e n c } 14 \ u s e p a c k a g e [ T1 ] { f o n t e n c } 15 \ u s e p a c k a g e { textcomp } 16 \ u s e p a c k a g e { mathptmx } 17 \ u s e p a c k a g e [ s c a l e d =. 9 2 ] { h e l v e t } 18 \ u s e p a c k a g e { c o u r i e r } 19 \ u s e p a c k a g e { l a t e x s y m } 20 \ b e g i n { document } 21 e t e x 22 % ENDPRE Zu erkennen ist, dass die LATEX-Präambel zwischen zwei Zeilen verbatimtex und etex eingeschlossen ist. Diese Konstruktion erlaubt, LATEX-Code anzugeben, der nicht direkt zu einer Ausgabe führt sondern zum Setup genutzt wird. Da derartiger Code an unterschiedlichen Stellen auftreten kann, ist die LATEX-Präambel durch zusätzliche Kommentare % BEGPRE und % ENDPRE markiert. Wird die Präambel durch eine solche ersetzt, die unserem LATEX-Dokument entspricht, führt dies zu einer Darstellung wie in Abb auf Seite 67. Im Wesentlichen werden dieselben Pakete für die Font-Auswahl verwendet, die Schriften sind in beiden Abbildungen gleich. Lediglich die Schriftgröße ist unterschiedlich, in Abb auf Seite 67 wird für die Skalenbeschriftungen und die Legende dieselbe Schriftart und Schriftgröße verwendet wie im umgebenden Text. 1 %GNUPLOT Metapost o u t p u t : S a t Mar : 2 5 : %% Add \ d o c u m e n t c l a s s and \ b e g i n { dcoument } f o r l a t e x 5 %% NB you s h o u l d s e t t h e e n v i r o n m e n t v a r i a b l e TEX t o t h e name of your 6 %% l a t e x e x e c u t a b l e ( n o r m a l l y l a t e x ) i n o r d e r f o r m e t a p o s t t o work 7 %% or run 8 %% mpost t e x = l a t e x % BEGPRE 11 v e r b a t i m t e x 65

66 2 GnuPlot 12 \ d o c u m e n t c l a s s [12 p t ] { a r t i c l e } 13 \ u s e p a c k a g e { ngerman } 14 \ u s e p a c k a g e [ l a t i n 1 ] { i n p u t e n c } 15 \ u s e p a c k a g e [ T1 ] { f o n t e n c } 16 \ u s e p a c k a g e { textcomp } 17 \ u s e p a c k a g e { mathptmx } 18 \ u s e p a c k a g e [ s c a l e d =. 9 2 ] { h e l v e t } 19 \ u s e p a c k a g e { c o u r i e r } 20 \ u s e p a c k a g e [ i n t l i m i t s ] { amsmath } 21 \ u s e p a c k a g e { t r f s i g n s } 22 \ u s e p a c k a g e { l a t e x s y m } 23 \ b e g i n { document } 24 e t e x 25 % ENDPRE 66

67 2.9 GnuPlot und LATEX 5 rpar(10.0,x) Abbildung 2.35: Darstellung mit den Standard-Schriftarten 5 rpar(10.0,x) Abbildung 2.36: Darstellung mit angepassten Schriften 67

68 2 GnuPlot Größenanpassung Um die Diagrammdarstellung in ein Zentimeter-Raster zu bringen, müssen zunächst die Koordinatenbereiche so gewählt werden, dass Skalenanfang und Skalenende für jede Achse auf runde Werte fallen. Der x-bereich verläuft von 0 bis 10 und kann so belassen werden. Der y-bereich verläuft von 0 bis 5 und kann ebenfalls so belassen werden. 1 s e t t e r m i n a l mp c l a t e x p s n f s s 2 s e t o u t p u t " gosp0045. mp" 3 s e t x l a b e l " W i d e r s t a n d " 4 s e t y l a b e l " G e s a m t w i d e r s t a n d " 5 r p a r ( ra, rb ) = ( r a * rb ) / ( r a + rb ) 6 s e t x r a n g e [ 0. 0 : ] 7 s e t y r a n g e [ 0. 0 : 5. 0 ] 8 s e t x t i c s 0,2,20 9 s e t y t i c s 0, 2, 4 10 p l o t r p a r ( , x ) Diese Datei wird mit GnuPlot verarbeitet, die entstehende *.mp-datei wird zu gomp....mp umbenannt und die Präambel an das LATEX-Dokument angepasst wie in Abschnitt auf Seite 63 beschrieben. Aus Abb auf der nächsten Seite ist zu entnehmen, dass für den x-bereich eine Breite von 10 cm und für den y-bereich eine Höhe von 10 cm angemessen erscheinen. 68

69 2.9 GnuPlot und LATEX Bildfläche Diagrammfläche y 2 y = y 2 y 1 h = 720b y 1 x 1 x = x 2 x 1 x 2 w = 1200a Abbildung 2.37: Aufteilung der Zeichenfläche 69

70 2 GnuPlot Standardmäßig verwendet GnuPlot für das gesamte zu erzeugende Bild eine Breite von 5 Zoll und eine Höhe von 3 Zoll. Die Bildbreite wird in 1200 Einheiten der Länge a unterteilt, die Höhe in 720 Einheiten der Länge b. Ein Teil von Breite und Höhe wird für Beschriftungen verwendet, der Rest für das Diagramm. Die Bildmessungen und die Aufteilung in a- und b-einheiten finden sich unmittelbar nach der beginfig(0) - Anweisung. 1 e nddef ; 2 3 b e g i n f i g ( 0 ) ; Im anschließenden Text werden zunächst die Skalen gezeichnet und beschriftet, hier finden sich immer jeweils mehrere draw und je eine put_text -Anweisung im Wechsel. Bevor die x- und y-label mit put_text angebracht werden, wird der Umriss der Diagrammfläche einmal gezeichnet. 1 draw ( a, b ) ( a, b ) ; 2 draw ( a, b ) ( a, b ) ; 3 p u t _ t e x t ( b t e x 20 etex, a, b, 0, 2 ) ; 4 draw ( a, b ) ( a, b ) ( a, b ) 5 (125.7a, b ) (125.7 a, b ) ; Kurz vor der endfig -Anweisung, die das Bild abschließt, wird der Diagram-Umriss nochmals gezeichnet. 1 (589.6a, b ) (599.9 a, b ) (610.2 a, b ) (620.5 a, b ) (630.8 a 2 (636.0a, b ) ; 3 l i n e t y p e 2; 4 draw ( a, b ) ( a, b ) ( a, b ) 5 (125.7a, b ) (125.7 a, b ) ; 6 e n d f i g ; 7 % BEGPOST 8 v e r b a t i m t e x 9 \ end { document } 10 e t e x In beiden Listings wurde die draw -Zeile umgebrochen, damit sie hier auf die Seite passt. Diesen Listings kann entnommen werden, dass woraus folgt x 1 = 125.7a x 2 = 1146,3a y 1 = 109,8b y 2 = 684,6b x = x 2 x 1 y = y 2 y 1 = 1020,6a = 574,8b 70

71 2.9 GnuPlot und LATEX rpar(10.0,x) 4 Gesamtwiderstand Widerstand Abbildung 2.38: Korrigierte Skalenteilung Wenn die Diagrammfläche also 10 cm breit und 10 cm hoch werden soll, gilt für die Bildfläche w = 10cm ,6 h = 10cm ,8 Dies wird unmittelbar nach der beginfig -Anweisung eingegeben. Die Berechnung wird dabei MetaPost überlassen. 1 b e g i n f i g ( 0 ) ; 2 w: = cm * ( / ( ) ) ; h : = cm * ( / ( ) ) ; 3 a :=w/ ; b := h / ; Mit diesen Änderungen wird eine Darstellung wie in Abb erreicht. Werden Dokumente ausgedruckt, die auf Zentimeterdarstellung optimierte Plots enthalten, muss die automatische Größenanpassung beim Druck deaktiviert werden, siehe Abb auf der nächsten Seite. 71

72 2 GnuPlot Abbildung 2.39: Größenanpassung deaktivieren 72

73 2.9 GnuPlot und LATEX rpar(10.0,x) 4 Rges R 1 Abbildung 2.40: LATEX-Textlabels LaTeX-Labels MetaPost verwendet LATEX für den Textsatz, daher können auch LATEX-Kommandos in Textlabels in MetaPost verwendet werden. Zu beachten ist, dass GnuPlot Backslashes in Labeln als Beginn einer Steuerzeichenfolge betrachtet. Um einen Backslash in die MetaPost-Datei auszugeben, müssen daher zwei Backslashes in der GnuPlot- Datei geschrieben werden, z.b. \\(R_1\\) um in der MetaPost-Datei \(R_1\) zu erzeugen. Das Beispiel 1 s e t t e r m i n a l mp c l a t e x p s n f s s 2 s e t o u t p u t " gosp0046. mp" 3 s e t x l a b e l " \ \ ( R_1 \ \ ) " 4 s e t y l a b e l " \ \ ( R_ \ \ t e x t { ges } \ \ ) " 5 r p a r ( ra, rb ) = ( r a * rb ) / ( r a + rb ) 6 s e t x r a n g e [ 0. 0 : ] 7 s e t y r a n g e [ 0. 0 : 5. 0 ] 8 s e t x t i c s 0,2,20 9 s e t y t i c s 0, 2, 4 73

74 2 GnuPlot 10 p l o t r p a r ( , x ) erzeugt dann eine Darstellung entsprechend Abb auf der vorherigen Seite. 74

75 2.9.7 Tipps rund um GnuPlot und LaTeX Projekt-Organisation 2.9 GnuPlot und LATEX Es wird empfohlen, das Projekt mit all seinen Text- und Graphikdateien in etwa folgendermaßen zu organisieren (für das Beispiel wird angenommen, dass mb.pdf für Mein Buch erzeugt werden soll): mb.tex Die Hauptdatei enthält die Präambel und schließt dann per \input{} die Datei mbtext.tex ein. mbtext.tex Diese Datei enthält \section, \subsection... und schließt die zugehörigen Textabschnitte per \input ein, z.b. 1 \ s e c t i o n { E r s t e r A b s c h n i t t } 2 \ s u b s e c t i o n { E r s t e r U n t e r a b s c h n i t t } \ i n p u t {mb0101} 3 \ s u b s e c t i o n { Z w e i t e r U n t e r a b s c h n i t t } \ i n p u t {mb0102} 4 \ s e c t i o n { Z w e i t e r A b s c h n i t t } 5 \ s u b s e c t i o n {Noch e i n U n t e r a b s c h n i t t } \ i n p u t {mb0201} Dies hat den Vorteil, dass die Gliederung des Gesamtwerkes in einer Datei gut sichtbar und bearbeitbar ist. mb0101.tex... mb9999.tex Die zu den entsprechenden Überschriften gehörenden Texte. mbgp0001.gp... mbgp9999.gp Dies sind alle GnuPlot-Dateien, durchnummeriert in der Reihenfolge, in der sie angelegt wurden. Die Nummerierung ist unabhängig von der Kapitel- und Abschnittsnummerierung. mbmp0001.mp... mgmp9999.mp Zum einen finden sich hier MetaPost-Dateien, die Sie manuell angelegt haben. Zum anderen handelt es sich um MetaPost-Dateien, die Sie mit GnuPlot erzeugt haben, die aber umbenannt wurden bevor sie angepasst wurden. Die Nummerierung ist unabhängig von der Kapitel- und Abschnittsnummerierung und unabhängig von der Nummerierung der GnuPlot-Dateien. mbfi0001.fig... mbfi9999.fig Fig-Dateien, die mit XFig, jfig oder WinFig erzeugt wurden. mbbi0001.png... mbbi9999.jpg Bitmap-Dateien, die im Projekt verwendet werden. Die unterschiedlichen Quelldateien (*.gp, *.fig, *.png) können auf verschiedenen Wegen (z.b. über *.mp, *.eps, *.pdf) in Zieldateien verwandelt werden, die in 75

76 2 GnuPlot das LATEX-Dokument eingebunden werden. Die unterschiedlichen Stammnamen ( mbgp, mbmp, mbfi und mbbi ) sollen Namenskollisionen verhindern, die zu versehentlichen Überschreiben von Dateien führen könnten. 76

77 Das Script prepare.pl 2.9 GnuPlot und LATEX Übersicht Das Script prepare.pl 3 kann Ihnen bei größeren Projekten behilflich sein. Es nimmt Umwandlungen von Quell- in Zieldateien vor und konvertiert dabei nur Dateien, für die das auch erforderlich ist (Quelldatei neuer als Zieldatei). Es ist auch möglich, den Zeittest zu überspringen und alle Zieldateien neu zu erzeugen. Im einzelnen werden *.gp-dateien zu *.mp-dateien konvertiert, *.fig-dateien zu *.mp-dateien oder *.eps/*.pdf/*.tex-dateien, *.mp-dateien zu *.mps und *.png-dateien zu *.eps- und *.pdf-dateien. Setup Um das Script einzusetzen, benötigen Sie folgende Software: GnuPlot, Perl, bmeps 4, fig2vect 5. Perl und GnuPlot können Sie unter UNIX/Linux meist über das Paketmanagement installieren. Bmeps, png2pdf und fig2vect compilieren Sie aus den Quellen. Für Windows stellt die Firma ActiveState 6 die Perl-Distribution ActivePerl bereit. Bmeps, png2pdf und fig2vect sind im dklibs-win32 -Package 7 enthalten, verwenden Sie die Datei dklibs-win32-*-user-setup.exe mit der höchsten Versionsnummer. Das Script muss noch angepasst werden, bevor es benutzt werden kann. $preamblefile gibt den Namen für eine Datei an, die die LATEX-Präambel enthält, die in *.mp und *.tex-ausgaben verwendet wird. Diese Datei darf die Zeile \begin{document} nicht enthalten. $figtomp legt fest, ob *.fig-dateien zu MetaPost-Dateien (*.mp) konvertiert werden (1) oder zu *.eps/*.pdf/*.tex (0). 3 als Anlage in dieser PDF-Datei enthalten, siehe Anhang A.1 auf Seite

78 2 GnuPlot usetransfig gibt vor, ob *.fig-dateien mit transfig (1) oder fig2vect (0) verarbeitet werden. $bmeps_options legt die Optionen für das Programm bmeps fest, das *.png-dateien zu *.eps- Dateien konvertiert. Standardmäßig ist hier -leps voreingestellt für PostScript Level 2, farbige Ausgabe und ASCII85- und Runlength-Encoding. Der wichtigste anzupassende Punkt ist meist die Erstellung einer eigenen LATEX- Präambel-Datei. 78

79 3 Erste Schritte mit GNU Octave und Scilab 3.1 Einführung Dieser Text versucht, einen Einstieg in GNU Octave und Scilab anhand ausgwählter Beispiele zu ermöglichen. Die Beispiele zeigen einige Verwendungsmöglichkeiten beider Programme auf und sollen Interesse für eine weitere Beschäftigung mit der Software wecken. Eine ausführliche oder gar vollständige Beschreibung beider Programme ist nicht das Ziel dieses Textes, hierfür sollte das Handbuch octave.pdf konsultiert werden, das GNU Octave wesentlich detaillierter beschreibt. Dieses ca. 400 Seiten umfassende Handbuch wird normalerweise bei der Installation von GNU Octave mit installiert. Für Informationen über Scilab kann die Projekt-Homepage org/ konsultiert werden. Eine PDF-Datei mit einer Einführung in Scilab ist unter ftp://ftp.inria.fr/inria/scilab/documentation/pdf/intro.pdf erhältlich. 79

80 3 Erste Schritte mit GNU Octave und Scilab 3.2 Octave-Installation Octave-Installation unter Linux Gängige UNIX/Linux-Distributionen bieten meist an, GNU Octave über das Paketmanagement zu installieren Octave-Installation unter Unix/Linux aus den Quellen Die Quelltexte können von der Projekt-Homepage 1 bezogen werden. Nach dem Entpacken werden die Kommandos 1. / c o n f i g u r e 2 make 3 make i n s t a l l ausgeführt

81 3.2.3 Octave-Installation unter Windows GNU Octave ist ein Bestandteil der Cygwin-Tools. Download Die Software finden Sie unter Octave-Installation Installation Bei der Installation sollten Sie in den Abschnitten für Mathematik und Dokumentationen alles aktivieren, was octave im Namen hat. Pfad-Korrektur Nach der Installation sollten Sie den Pfad korrigieren (Umgebungsvariable PATH). Unter Systemsteuerung / System / Erweitert klicken Sie auf den Button Umgebungsvariablen. Es werden die nutzerspezifischen Variablen für den angemeldeten Benutzer (bei Software-Installationen meist Administrator ) und die systemweiten Umgebungsvariablen angezeigt. In den Systemvariablen doppelklicken Sie PATH und nehmen folgende Einstellungen vor: C:\Cygwin\bin;C:\Cygwin\usr\X11R6\bin;C:\Cygwin\lib\lapack werden hinter den Standardverzeichnissen angehangen, durch Semikolon vom bereits vorhandenen Text abgetrennt. Falls MikTex bzw. eine andere LATEX-Distribution installiert ist, sollten die Verzeichnisse mit den Binaries (z.b. C:\texmf\MikTeX\bin) vor den Cygwin-Verzeichnissen aufgeführt sein. Mitunter installiert Cygwin eine TeTeX-Version gemeinsam mit GNU Octave. Wenn Sie eine native Win32- LATEX-Distribution installiert haben, werden Sie sicherlich diese verwenden wollen und nicht die Cygwin-basierte. Falls sowohl MikTeX als auch dklibs-win32 installiert sind, sollte C:\Programme\Krause\bin im PATH vor C:\texmf\MikTeX\bin aufgeführt sein. Die dklibs-win32-packages enthalten Binaries der jeweils aktuellen bmeps-version, die bmeps-binaries in MikTeX sind meist nicht ganz so aktuell. Falls Perl und/oder Tcl/Tk installiert sind, sollten die entsprechenden bin- Verzeichnisse vor den Cygwin-Verzeichnissen in PATH aufgeführt sein. Auch hier sollten native Win32-Versionen den Vorzug vor den Cygwinbasierten Versionen erhalten. Testweiser Start des Cygwin X-Servers (falls dieser mit installiert wurde). Das Kommando startxwin.bat startet den X-Server. Dieser wird hier nicht benötigt, es soll nur die interne Verzeichnisstruktur des X-Servers angelegt werden. Das sich öffnende Terminal kann durch Eingabe von exit verlassen werden. Ein Klick mit der rechten Maustaste auf das Systray-Icon, das ein X darstellt, bietet eine Option zum Beenden des X-Servers. 81

82 3 Erste Schritte mit GNU Octave und Scilab Korrektur der Benutzerrechte. Die Cygwin-Software installiert sich standardmäßig in C:\Cygwin. Da bei der Installation keine Berechtigungen gesetzt werden, werden alle Berechtigungen von C:\ geerbt. Diese ererbten Berechtigungen sind für meinen Geschmack eine Spur zu großzügig und sollten etwas reduziert werden was detailliert im Anhang A.2 auf Seite 171 beschrieben wird. Der Gruppe Benutzer wird das Recht auf C:\Cygwin entzogen, in Verzeichnissen neue Dateien anzulegen und Daten zu schreiben. Auf C:\Cygwin\tmp erhält entweder die Gruppe Benutzer oder die Rolle INTERAKTIV Lese- und Ausführungszugriff sowie speziellen Zugriff für Dateien erstellen / Daten anhängen und Ordner erstellen / Daten anhängen. 82

83 3.3 Scilab-Installation 3.3 Scilab-Installation Scilab-Installation unter Linux Die Quellen können von der Projekt-Homepage bezogen werden. Für die Installation unter UNIX/Linux können die Kommandos 1. / c o n f i g u r e 2 make 3 make i n s t a l l verwendet werden. Mit 1. / c o n f i g u r e h e l p erhalten Sie Hilfestellung, welche Optionen das configure -Script verarbeitet. Evtl. findet das configure -Script Tcl/Tk nicht selbständig, hier muss durch Angabe der Installationsverzeichnisse nachgeholfen werden Scilab-Installation unter Windows Die Software kann von der Projekt-Homepage 2 bezogen werden. Zur Installation unter Windows wird die *.exe-datei gestartet

84 3 Erste Schritte mit GNU Octave und Scilab 3.4 Octave starten Interaktives Arbeiten Um interaktiv mit GNU Octave zu arbeiten, geben Sie unter UNIX/Linux in einem Terminalfenster bzw. unter Windows in einem Cygwin Bash Shell -Fenster 1 o c t a v e ein. Unter Windows können Sie GNU Octave nicht aus einem normalen Eingabeaufforderung-Fenster starten, Sie müssen eine der Cygwin-Shells verwenden, andernfalls erhalten Sie eine unschöne Fehlermeldung entsprechend Abb. 3.1 auf der nächsten Seite Datei verarbeiten Eine Datei mit Kommandos können Sie auf zwei Wegen verarbeiten: Verwendung der Datei als Standardeingabe für GNU Octave: octave < Dateiname Dateinamen als Kommandozeilenargument angeben: octave Dateiname 84

85 3.4 Octave starten Abbildung 3.1: Fehlermeldung des 16-Bit-Subsystems 85

86 3 Erste Schritte mit GNU Octave und Scilab 3.5 Scilab starten Abbildung 3.2: Scilab-Hauptfenster Unter Windows wird das Programm über den Startmenü-Eintrag gestartet, unter UN- IX/Linux geben Sie in einem Terminal-Fenster 1 s c i l a b ein. Das Scilab-Hauptfenster erscheint, siehe Abb

87 3.5 Scilab starten Abbildung 3.3: Editor starten Kommandos können direkt im Scilab-Hauptfenster eingegeben werden. Dies ist allerdings nur für kleinere Probleme empfehlenswert, wenn es sich nicht lohnt, diese Kommandos zur Wiederverwendung in einer Datei zu speichern. Sollen Kommandos wiederholt und mit Abwandlungen genutzt werden, wird die Kommandofolge in einer *.sce -Datei gespeichert. Zum Anlegen einer solchen Datei klicken Sie auf den Button Editor im Hauptfenster-Menü. Das Editorfenster wird geöffnet. Hier können Sie die Kommandos als Textdatei eingeben (siehe Abb. 3.4 auf der nächsten Seite) und abspeichern (siehe Abb. 3.5 auf Seite 89). Mit dem Menüpunkt Execute Load into Scilab werden die Kommandos durch Scilab ausgeführt. Die gewünschte Ausgabe ist dann im Hauptfenster sichtbar (Abb. 3.7 auf Seite 91). 87

88 3 Erste Schritte mit GNU Octave und Scilab Abbildung 3.4: Editorfenster 88

89 3.5 Scilab starten Abbildung 3.5: Datei speichern 89

90 3 Erste Schritte mit GNU Octave und Scilab Abbildung 3.6: Kommandos ausführen 90

91 3.5 Scilab starten Abbildung 3.7: Ergebnisse im Hauptfenster 91

92 3 Erste Schritte mit GNU Octave und Scilab Abbildung 3.8: Programm verlassen Über den Menüpunkt File Exit kann das Programm verlassen werden (Abb. 3.8). Alternativ kann im Hauptfenster das Kommando quit eingegeben werden. 92

93 3.6 Beispiele R 1 U q R 2 U 2 Abbildung 3.9: Spannungsteiler 1 Uq = ; 2 R1 = 4. 7 e3 ; 3 R2 = e3 ; 4 U2 = Uq * R2 / ( R1 + R2 ) ; 5 p r i n t f ( U2 = %g \ n, U2 ) ; 3.6 Beispiele Einfache Berechnung Beispiel Listing 3.1: oe0001.m bzw. oe0001.sce Gegeben ist eine Schaltung entsprechend Abb. 3.9 mit folgenden Werten: U q = 10V R 1 = 4,7kΩ R 2 = 10kΩ Zu berechnen ist die Spannung U 2, die über dem Widerstand R 2 abfällt. Die Berechnung kann nach der Formel U 2 = R 2 R 1 + R 2 U q erfolgen, dies wird in GNU Octave durch die Datei oe0001.m bzw. in Scilab durch die Datei oe0001.sce realisiert, siehe Listing 3.1. Beide Dateien sind für dieses Beispiel identisch. Als Ergebnis wird ausgegeben, dass U 2 = 6,8V. 93

94 3 Erste Schritte mit GNU Octave und Scilab Aufbau der Eingabe Die Eingabe für GNU Octave und Scilab besteht jeweils aus einer Folge von Anweisungen. Die meisten Anweisungen sind dabei Zuweisungen, die einer Variable einen Wert zuweisen. Wird eine Anweisung nicht mit Semikolon abgeschlossen, wird der Wert, der sich bei der letzten Berechnung ergibt, als Report ausgegeben. Wird eine Anweisung mit Semikolon abgeschlossen, erfolgt diese Report-Ausgabe nicht. Es wird empfohlen, alle Anweisungen mit Semikolon abzuschließen. Zuweisung Eine Zuweisungsanweisung hat die Form Variablenname = Ausdruck Ein Variablenname beginnt mit Buchstaben oder Unterstrich, darauf können weitere Unterstriche, Buchstaben und Zahlen folgen. Ein mathematischer Ausdruck entsteht, indem Operanden (Zahlenwerte oder Variableninhalte) durch mathematische Operatoren und Funktionen verknüpft werden. 3 In GNU Octave ist bereits eine große Anzahl an Funktionen und Konstanten vordefiniert. Diese werden im Abschnitt Arithmetic in octave.pdf ausführlich vorgestellt. In Scilab öffnen Sie die Hilfe über den Menüpunkt? Scilab Help oder indem Sie das Kommando 1 h e l p ( ) ; eingeben. Das Fenster Scilab Browse Help wird geöffnet, es enthält im linken Teil ein Inhaltsverzeichnis als Baumstruktur. Wird hier ein Eintrag angeklickt, wird im rechten Teil des Fensters der zugehörige Text angezeigt. Der Eintrag Elementar Functions im Inhaltsverzeichnis enthält die Dokumentation der in Scilab vordefinierten Funktionen. 3 In diesem Sinne kann ein Ausdruck auch als Synonym für Berechnungsergebnis angesehen werden. 94

95 3.6 Beispiele Skalare Skalare sind Datentypen, die einen einzelnen Wert (entweder reell oder komplex) aufnehmen. Matrizen als weiterer numerischer Datentyp werden später behandelt. Der Dezimaltrenner für Gleitkommazahlen ist der Punkt. Die Multiplikation mit Zehnerpotenzen wird mittels eines e beschrieben, dem die Zehnerpotenz folgt, z.b.: 1.23e-6 für 1, oder 4.56e3 für 4, Für die Zahl π ist in GNU Octave die Konstante pi und in Scilab die Konstante %pi vordefiniert. Um komplexe Zahlen zu bilden, kann in GNU Octave die vordefinierte Variable i verwendet werden, in Scilab %i. Die Zahl 3 + 4i kann z.b. als 3+4*i (GNU Octave) bzw. 3+4*%i (Scilab) eingegeben werden. Als Kurzschreibweise ist in GNU Octave auch 3+4i möglich, hier darf zwischen dem numerischen Wert des Imaginärteiles und dem i kein Leerzeichen stehen. Octave Scilab π pi %pi Komplexe Zahlen 3+4*i 3+4*%i 3+4i 95

96 3 Erste Schritte mit GNU Octave und Scilab R 1 I 3 U q R 2 R 3 Abbildung 3.10: Schaltung Selbstdefinierte Funktion Beispiel Gegeben sei eine Schaltung entsprechend Abb mit U q = 10V R 1 = 4,7kΩ R 2 = 10kΩ R 3 = 47kΩ Zu berechnen ist der Strom I 3 durch R 3. Die Dateien oe0002.m und oe0002.sce realisieren die Berechnung in GNU Octave und Scilab. 96

97 3.6 Beispiele 1 # F u n k t i o n s d e f i n i t i o n Listing 3.2: oe0002.m: Berechnung in Octave 2 # P a r a l l e l s c h a l t u n g z w e i e r W i d e r s t a e n d e 3 f u n c t i o n y = p a r a ( a, b ) 4 y = 0. 0 ; 5 i f ( a > 0. 0 ) 6 i f ( b > 0. 0 ) 7 y = a * b / ( a + b ) ; 8 e n d i f 9 e n d i f 10 e n d f u n c t i o n 11 # Gegebene Groessen 12 Uq = ; 13 R1 = 4. 7 e3 ; 14 R2 = e3 ; 15 R3 = e3 ; 16 # Berechnung 17 Rges = R1 + p a r a ( R2, R3 ) ; 18 I g e s = Uq / Rges ; 19 I3 = I g e s * R2 / ( R2 + R3 ) ; 20 # Ausgabe 21 p r i n t f ( I3 = %g \ n, I3 ) ; 97

98 3 Erste Schritte mit GNU Octave und Scilab 1 / / F u n k t i o n s d e f i n i t i o n Listing 3.3: oe0002.sce: Berechnung in Scilab 2 / / P a r a l l e l s c h a l t u n g z w e i e r W i d e r s t a e n d e 3 f u n c t i o n [ y ] = p a r a ( a, b ) 4 y = 0. 0 ; 5 i f ( a > 0. 0 ) 6 i f ( b > 0. 0 ) 7 y = a * b / ( a + b ) ; 8 end 9 end 10 e n d f u n c t i o n 11 / / Gegebene Groessen 12 Uq = ; 13 R1 = 4. 7 e3 ; 14 R2 = e3 ; 15 R3 = e3 ; 16 / / Berechnung 17 Rges = R1 + p a r a ( R2, R3 ) ; 18 I g e s = Uq / Rges ; 19 I3 = I g e s * R2 / ( R2 + R3 ) ; 20 / / Ausgabe 21 p r i n t f ( I3 = %g \ n, I3 ) ; 98

99 Funktionsdefinition 3.6 Beispiele Eine Funktionsdefinition hat in GNU Octave folgenden grundsätzlichen Aufbau: function Rückgabevariable = Funktionsname(Parameterliste) Anweisungsliste endfunction In Scilab wird die Rückgabevariable auch dann in eckige Klammern gesetzt, wenn nur ein Wert bzw. Objekt zurückgegeben wird: function [Rückgabevariable] = Funktionsname(Parameterliste) Anweisungsliste endfunction Definiert wird die Funktion mit dem angegebenen Funktionsnamen. In der Anweisungsliste wird die Rückgabevariable auf den Wert gesetzt, der als Funktionsergebnis zurückgegeben wird. Die Rückgabevariable und die Parameter aus der Parameterliste sind lokale Variablen der Funktion. Im Beispiel wird die Funktion para() definiert, die den Gesamtwiderstand bei der Parallelschaltung zweier Widerstände berechnet. Die Rückgabevariable y wird zunächst auf 0 gesetzt. Nur wenn beide Widerstände größer als 0 sind, wird die Berechnung durchgeführt, damit wird eine Division durch 0 vermieden. 99

100 3 Erste Schritte mit GNU Octave und Scilab 1 CMatrix = [ ] ; 5 YVektor = [ ] ; 9 XVektor = CMatrix \ YVektor ; 10 XVektor Listing 3.4: oe0003.m bzw. oe0003.sce Vektoren, Matrizen und lineare Gleichungssysteme Beispiel 1 - Mathematisches Gleichungssystem Gesucht wird die Lösung für das Gleichungssystem 2x 1 x 2 x 3 + 2x 4 = 3 6x 1 2x 2 + 3x 3 x 4 = 3 4x 1 + 2x 2 + 3x 3 2x 4 = 2 2x 1 + 4x 3 3x 4 = 1 Das Gleichungssystem wird in Matrizenschreibweise ausgedrückt als x x 2 x 3 = x 4 1 Die Octave- bzw. Scilab-Datei dieselbe Datei hier kann für beide Programme genutzt werden zur Lösung des Gleichungssystemes (Listing 3.4) erzeugt folgende Ausgabe: 1 XVektor =

101 Matrizen und Vektoren 3.6 Beispiele Matrizen sind ein zweiter numerischer Datentyp, Vektoren werden als Sonderformen von Matrizen mit nur einer Zeile bzw. Spalte betrachtet. Die Eingabe von Matrizen erfolgt in eckigen Klammern. Die einzelnen Elemente sind durch Leerzeichen getrennt (eine beliebige Folge von Leerzeichen und Tabulatoren wird als ein Trennzeichen zwischen zwei Elementen betrachtet). Alternativ kann das Komma als Trennzeichen verwendet werden. Jede Matrixzeile wird durch ein Zeilenende abgeschlossen. Lange Matrixzeilen können über mehrere Eingabezeilen hinweg eingegeben werden, dabei wird bedeutet ein Backslash vor dem Ende einer Eingabezeile, dass die Matrixzeile in der nächsten Eingabezeile fortgesetzt wird. Für Matrizen mit kurzen Zeilen ist es auch möglich, mehrere Matrixzeilen in einer Eingabezeile zusammenzufassen, die Matrixzeilen werden dabei durch eine Semikolon getrennt. Im Beispiel 1 A = [ ] ; 3 B = [1 2 ; 6 7 ] ; 4 C = [1 \ \ 7 9 ] ; 8 A( 1, 2 ) 9 B 10 C werden drei Matrizen ( ) 1 2 A = 4 5 B = angelegt. Ausgegeben wird A 1,2, B und C. 1 ans = 2 2 B = C = ( ) C = ( ) 101

102 3 Erste Schritte mit GNU Octave und Scilab 2 R 2 U q2 1 U q1 I 6 U q4 R 1 R 5 R 6 R 4 R 3 U q3 3 0 Abbildung 3.11: Schaltung entsprechend Aufgabenstellung Beispiel 2 - Knotenspannungsanalyse Für die gegebenen Größen U q1 = 15V U q2 = 20V U q3 = 25V U q4 = 30V R 1 = 15Ω R 2 = 3,3Ω R 3 = 4,7Ω R 4 = 3Ω R 5 = 33Ω R 6 = 20Ω ist I 6 mittels Knotenspannungsanalyse gesucht. Die Knoten werden nummeriert wie in Abb angegeben, eine Knotenspannungsanalyse ergibt das Gleichungssystem G 2 + G 4 + G 6 G 2 0 G 2 G 1 + G 2 + G 5 (G 1 + G 5 ) 0 (G 1 + G 5 ) G 1 + G 3 + G 5 Nach Lösung des Gleichungssystemes kann I 6 mit berechnet werden. U 10 U 20 U 30 = I 6 = U 10 R 6 U q2 G 2 +U q4 G 4 U q1 G 1 U q2 G 2 U q3 G 3 U q1 G 1 Die Schreibweise U 10 steht hier für die Spannung vom Knoten 1 zum Knoten

103 3.6 Beispiele Listing 3.5: oe0004.m bzw. oe0004.sce 1 Uq1 = ; Uq2 = ; Uq3 = ; Uq4 = ; 2 R1 = ; R2 = 3. 3 ; R3 = 4. 7 ; R4 = 3. 0 ; 3 R5 = ; R6 = ; 4 5 G1 = 1. 0 / R1 ; G2 = 1. 0 / R2 ; G3 = 1. 0 / R3 ; G4 = 1. 0 / R4 ; 6 G5 = 1. 0 / R5 ; G6 = 1. 0 / R6 ; 7 8 CMatrix = [ ( G2+G4+G6 ) G2 0 9 G2 ( G1+G2+G5 ) (G1+G5 ) 10 0 (G1+G5 ) ( G1+G3+G5 ) ] ; YVektor = [ ( Uq2*G2+Uq4*G4 ) 13 ( Uq1*G1 Uq2*G2 ) 14 ( Uq3*G3 Uq1*G1 ) ] ; XVektor = CMatrix \ YVektor ; U10 = XVektor ( 1 ) ; 19 I 6 = U10 / R6 ; p r i n t f ( U10 = %g \ n, U10 ) ; 22 p r i n t f ( I6 = %g \ n, I6 ) ; Dieses Gleichungssystem wird mit der Datei oe0004.m bzw. oe0004.sce gelöst. Auch in diesem Beispiel sind die Eingabedateien für GNU Octave und Scilab gleich. Bei der Verarbeitung wird die folgende Ausgabe erzeugt: 1 U10 = I6 = Es gilt also U 10 = 29,7V und I 6 = 1,49A. Im Beispiel ist zu sehen, dass auch beim Erstellen von Matrizen die einzelnen Elemente in Form von Ausdrücken angegeben werden können. 103

104 3 Erste Schritte mit GNU Octave und Scilab x+y x y 10 x+5 y Abbildung 3.12: 3 Funktionen als Gebirge über x-y-ebene Nichtlineare Gleichungssysteme Beispiel Gegeben sind drei Funktionen als Gebirge über der xy-ebene. Gesucht ist der Schnittpunkt der drei Flächen. f 1 (x,y) = 10 x + y f 2 (x,y) = x y f 3 (x,y) = x y Um das Gleichungssystem mit GNU Octave oder Scilab zu lösen, muss es erst in die entsprechende Schreibweise y = f ( x ) = 0 gebracht werden. z 1 = f 1 (x,y) = 10 x + y x x 1 y x 2 z x 3 y 1 = 10 x 1 + x 2 x 3 z 2 = f 2 (x,y) = x y y 2 = x 1 x 2 x 3 z 3 = f 3 (x,y) = Gesucht wird nun x y y 3 = x 1 x 2 x 3 0 = f ( x ) 104

105 3.6 Beispiele 1 f u n c t i o n y = f ( x ) 2 y = z e r o s ( 3, 1 ) ; Listing 3.6: oe0006.m 3 y ( 1 ) = / ( x ( 1 ) + x ( 2 ) ) x ( 3 ) ; 4 y ( 2 ) = s q r t ( x ( 1 ) x ( 2 ) ) x ( 3 ) ; 5 y ( 3 ) = / ( x ( 1 ) x ( 2 ) ) x ( 3 ) ; 6 e n d f u n c t i o n 7 8 [ x, i n f o ] = f s o l v e ( " f ", [ 0. 5 ; 2. 5 ; 2. 0 ] ) ; 9 10 i f ( i n f o == 1) 11 p r i n t f ( G l e i c h u n g s s y s t e m g e l o e s t. \ n ) ; 12 p r i n t f ( x = %g \ ny = %g \ nz = %g \ n, x ( 1 ), x ( 2 ), x ( 3 ) ) ; 13 e l s e 14 p e r r o r ( " f s o l v e ", 1 ) ; 15 e n d i f Die Eingabedatei oe0006.m für GNU Octave wird entsprechend Listing 3.6 erstellt, für Scilab wird oe0006.sce entsprechend Listing 3.7 auf der nächsten Seite verwendet. Die Ausgabe 1 G l e i c h u n g s s y s t e m g e l o e s t. 2 x = y = z = enthält die Koordinaten des Schnittpunktes. 105

106 3 Erste Schritte mit GNU Octave und Scilab 1 f u n c t i o n [ y ] = f ( x ) 2 y = z e r o s ( 3, 1 ) ; Listing 3.7: oe0006.sce 3 y ( 1 ) = / ( x ( 1 ) + x ( 2 ) ) x ( 3 ) ; 4 y ( 2 ) = s q r t ( x ( 1 ) x ( 2 ) ) x ( 3 ) ; 5 y ( 3 ) = / ( x ( 1 ) x ( 2 ) ) x ( 3 ) ; 6 e n d f u n c t i o n 7 8 [ x, v, i n f o ] = f s o l v e ( [ 0. 5 ; 2. 5 ; 2. 0 ], f ) ; 9 10 i f ( i n f o == 1) 11 p r i n t f ( G l e i c h u n g s s y s t e m g e l o e s t. \ n ) ; 12 p r i n t f ( x = %g \ ny = %g \ nz = %g \ n, x ( 1 ), x ( 2 ), x ( 3 ) ) ; 13 e l s e 14 p r i n t f ( Das G l e i c h u n g s s y s t e m konnte n i c h t g e l o e s t werden! \ n ) ; 15 end 106

107 Vektoren und Matrizen als Funktionswert und Argument 3.6 Beispiele Wie in Zeilen zu sehen ist, können sowohl Argumente als auch Rückgabewerte von Funktionen Matrizen (und somit auch Vektoren) sein. Die Anweisung 1 y = z e r o s ( 3, 1 ) ; legt fest, dass y ein Vektor mit drei Zeilen und einer Spalte ist. Würde diese Zuweisung weggelassen, ergäbe sich ein Ablauf wie folgt: Die erste Zuweisung bezieht sich auf Index 1, es wird ein Skalar angelegt. Die zweite Zuweisung bezieht sich auf Index 2, es wird ein Vektor mit 2 Zeilen angegelegt, der bisherige Inhalt von y wird kopiert und anschließend die Zuweisung für y(2) vorgenommen. Die dritte Zuweisung bezieht sich auf Index 3, der wiederum außerhalb der bisherigen Feldgröße liegt. Es wird also ein neuer Vektor mit 3 Zeilen angelegt, der bisherige Inhalt von y wird kopiert und anschließend die Zuweisung für y(3) vorgenommen. Das explizite Anlegen eines leeren Vektor mit drei auf 0 gesetzten Elementen verhindert das Neuanlegen und Kopieren durch die ständigen Größenänderungen. Diese sind zwar möglich, aber zeitaufwendig. 107

108 3 Erste Schritte mit GNU Octave und Scilab Gleichungssystem lösen In GNU Octave erhält die Funktion fsolve() als Argument den Namen der Funktion f als Text sowie einen Startwert für die Iteration. Der Name f wird als String d.h. mit Anführungszeichen angegeben. Zurückgegeben wird ein Zeilenvektor, der seinerseits einen Zeilenvektor x und eine Statusvariable in f o enthält. In Scilab erhält die Funktion fsolve() als Argumente zuerst den Iterations- Startpunkt und dann den Funktionsnamen als Identifier d.h. ohne Anführungszeichen. Zurückgegeben wird ein Zeilenvektor, der seinerseits einen Zeilenvektor x, einen Vektor v und eine Statusvariable in f o enthält. Wenn in f o = 1, wurde eine Lösung gefunden und x ist der Lösungsvektor. Weitere Informationen zum Lösen nichtlinearer Gleichungssystem finden sich in octave.pdf im Abschnitt Nonlinear Equations. 108

109 3.6 Beispiele Um die Berechnung zu optimieren, kann eine Funktion zur Berechnung der Jacobi- Matrix (engl.: Jacobian matrix) mit angegeben werden. Diese Matrix sieht folgendermaßen aus: J = dy 1 dx 1 dy 1 dx 2... dy 2 dx 1 dy 2 dx dy m dx 1.. dy m dx 2... dy 1 x n dy 2 x n. dy m x n im Beispiel = 10 (x 1 +x 2 ) 2 10 (x 1 +x 2 ) x 1 x x 1 x (5+x 1 x 2 ) 2 10 (5+x 1 x 2 ) 2 1 In GNU Octave wird der Funktion fsolve() ein Feld von Strings mit 2 Elementen als Argument übergeben (siehe Listing 3.8 auf der nächsten Seite): Funktionsname für die Berechnung von y Funktionsname für die Berechnung von J In Scilab werden die Funktionsnamen zur Berechnung von y und J direkt im fsolve()-funktionsaufruf angegeben (siehe Listing 3.9 auf Seite 111). 109

110 3 Erste Schritte mit GNU Octave und Scilab 1 f u n c t i o n y = f ( x ) 2 y = z e r o s ( 3, 1 ) ; Listing 3.8: oe0009.m 3 y ( 1 ) = / ( x ( 1 ) + x ( 2 ) ) x ( 3 ) ; 4 y ( 2 ) = s q r t ( x ( 1 ) x ( 2 ) ) x ( 3 ) ; 5 y ( 3 ) = / ( x ( 1 ) x ( 2 ) ) x ( 3 ) ; 6 e n d f u n c t i o n 7 8 f u n c t i o n y = j a c o b i m a t r i x ( x ) 9 y = z e r o s ( 3, 3 ) 10 y ( 1, 1 ) = 10.0 / ( ( x ( 1 ) + x ( 2 ) ) ** 2 ) ; 11 y ( 1, 2 ) = 10.0 / ( ( x ( 1 ) + x ( 2 ) ) ** 2 ) ; 12 y ( 1, 3 ) = 1.0; 13 y ( 2, 1 ) = 1.0 / ( 2. 0 * s q r t ( x ( 1 ) x ( 2 ) ) ) ; 14 y ( 2, 2 ) = 1.0 / ( 2. 0 * s q r t ( x ( 1 ) x ( 2 ) ) ) ; 15 y ( 2, 3 ) = 1.0; 16 y ( 3, 1 ) = 10.0 / ( ( x ( 1 ) x ( 2 ) ) ** 2 ) ; 17 y ( 3, 2 ) = / ( ( x ( 1 ) x ( 2 ) ) ** 2 ) ; 18 y ( 3, 3 ) = 1.0; 19 e n d f u n c t i o n names = f, j a c o b i m a t r i x ; 22 [ x, i n f o ] = f s o l v e ( names, [ 0. 5 ; 2. 5 ; 2. 0 ] ) ; i f ( i n f o == 1) 25 p r i n t f ( G l e i c h u n g s s y s t e m g e l o e s t. \ n ) ; 26 p r i n t f ( x = %g \ ny = %g \ nz = %g \ n, x ( 1 ), x ( 2 ), x ( 3 ) ) ; 27 e l s e 28 p e r r o r ( " f s o l v e ", 1 ) ; 29 e n d i f 110

111 3.6 Beispiele 1 f u n c t i o n [ y ] = f ( x ) 2 y = z e r o s ( 3, 1 ) ; Listing 3.9: oe0009.sce 3 y ( 1 ) = / ( x ( 1 ) + x ( 2 ) ) x ( 3 ) ; 4 y ( 2 ) = s q r t ( x ( 1 ) x ( 2 ) ) x ( 3 ) ; 5 y ( 3 ) = / ( x ( 1 ) x ( 2 ) ) x ( 3 ) ; 6 e n d f u n c t i o n 7 8 f u n c t i o n [ y ] = j a c o b i m a t r i x ( x ) 9 y = z e r o s ( 3, 3 ) 10 y ( 1, 1 ) = 10.0 / ( ( x ( 1 ) + x ( 2 ) ) ** 2 ) ; 11 y ( 1, 2 ) = 10.0 / ( ( x ( 1 ) + x ( 2 ) ) ** 2 ) ; 12 y ( 1, 3 ) = 1.0; 13 y ( 2, 1 ) = 1.0 / ( 2. 0 * s q r t ( x ( 1 ) x ( 2 ) ) ) ; 14 y ( 2, 2 ) = 1.0 / ( 2. 0 * s q r t ( x ( 1 ) x ( 2 ) ) ) ; 15 y ( 2, 3 ) = 1.0; 16 y ( 3, 1 ) = 10.0 / ( ( x ( 1 ) x ( 2 ) ) ** 2 ) ; 17 y ( 3, 2 ) = / ( ( x ( 1 ) x ( 2 ) ) ** 2 ) ; 18 y ( 3, 3 ) = 1.0; 19 e n d f u n c t i o n [ x, v, i n f o ] = f s o l v e ( [ 0. 5 ; 2. 5 ; 2. 0 ], f, j a c o b i m a t r i x ) ; i f ( i n f o == 1) 24 p r i n t f ( G l e i c h u n g s s y s t e m g e l o e s t. \ n ) ; 25 p r i n t f ( x = %g \ ny = %g \ nz = %g \ n, x ( 1 ), x ( 2 ), x ( 3 ) ) ; 26 e l s e 27 p r i n t f ( Das G l e i c h u n g s s y s t e m konnte n i c h t g e l o e s t werden! \ n ) ; 28 end 111

112 3 Erste Schritte mit GNU Octave und Scilab Gewünscht wird eine Interpolation, um folgende Berechnungen durchführen zu können: Welcher magnetische Fluss stellt sich bei einer Feldstärke H = 250Acm 1 ein? Welche Feldstärke ist erforderlich, um einen Fluss von B = 0,8 T hervorzurufen? Bei welchem Paar (H,B) liegt der optimale Arbeitspunkt d.h. der Punkt der Kennlinie, für den B H einen Maximalwert erreicht? Wenn eine Kurve durch n Messwerte gegeben ist, gibt es unterschiedliche Möglichkeiten, Funktionen so aufzustellen, dass alle Messpunkte erfasst werden, z.b.: Ein Polynom vom Grad n 1 Natual Splines. Dabei werden n 1 Polynomstücken zwischen den Messpunkten verwendet. In der Praxis werden häufig Natural Splines verwendet, da ein durchgängiges Polynom hohen Grades meist Oszillationen aufweist. 112

113 3.6 Beispiele Natural Splines Bei der Verwendung von Natural Splines wird die Gesamtfunktion stückweise aus Polynomen dritten Grades zusammengesetzt. Das Polynom p i (x) = a i (x x i ) 3 + b i (x x i ) 2 + c i (x x i ) + d i beschreibt dabei den Kurvenverlauf zwischen den Punkten i und i+1, d.h. für x-werte mit x i x x i+1. Zwischen n Punkten bestehen n 1 Zwischenräume, somit werden n 1 Polynome benötigt. Da jedes Polynom 4 Koeffizienten aufweist, müssen 4(n 1) Koeffizienten bestimmt werden, hierzu werden 4(n 1) Gleichungen benötigt. Die Gleichungen werden folgendermaßen gewonnen: (a) n 1 Gleichungen (1 i n 1) für den Messwert am linken Polynomrand d i = y i (b) n 1 Gleichungen (1 i n 1) für den Messwert am rechten Polynomrand (x i+1 x i ) 3 a i + (x i+1 x i ) 2 b i + (x i+1 x i )c i + d i = y i+1 (c) n 2 Gleichungen (2 i n 1) aus der folgenden Stetigkeitsbedingung: An den inneren Punkten ist die erste Ableitung des jeweils linken und rechten Polynomes gleich. 3(x i x i 1 ) 2 a i 1 + 2(x i x i 1 )b i 1 + c i 1 = c i 3(x i x i 1 ) 2 a i 1 + 2(x i x i 1 )b i 1 + c i 1 c i = 0 (d) n 2 Gleichungen (2 i n 1) aus der folgenden Stetigkeitsbedingung: An den inneren Punkten ist die zweite Ableitung des jeweils linken und rechten Polynomes gleich. 6(x i x i 1 )a i 1 + 2b i 1 = 2b i 6(x i x i 1 )a i 1 + 2b i 1 2b i = 0 113

114 3 Erste Schritte mit GNU Octave und Scilab (e) 2 Gleichungen aus der folgenden Stetigkeitsbedingung: An den äußeren Punkten ist die zweite Ableitung des jeweiligen Polynomes 0. 2b 0 = 0 6a n 1 (x n x n+1 ) + 2b n 1 = 0 Natural Splines mit einfachen Polynomen Einige mathematische Probleme sind einfacher zu lösen, wenn ein Ansatz f i (x) = p i x 3 + q i x 2 + r i x + s i anstelle von f i (x) = a i (x x i ) 3 + b i (x x i ) 2 + c i (x x i ) + d i verwendet wird. Durch Ausmultiplizieren und Koeffizientenvergleich erhält man: = a i x 3 + (b i 3a i x i )x 2 + (c i 2b i x i + 3a i xi 2 )x + d i c i x i + b i xi 2 a i xi 3 p i = a i q i = b i 3a i x i r i = c i 2b i x i + 3a i xi 2 s i = d i c i x i + b i xi 2 a i xi 3 114

115 Installation des nsplines-paketes 3.6 Beispiele Quelltext-Archiv downloaden und entpacken Am Beispiel von nsplines wird gezeigt, wie zusätzliche Bibliotheken bzw. Pakete in GNU Octave und Scilab integriert werden können. Das nsplines-paket wird von bezogen. Aus dem Downloadbereich des Projektes wird die Datei nsplines-*.tar.gz mit der höchsten Versionsnummer bezogen. Diese wird mit 1 g z i p dc n s p l i n e s *. t a r. gz t a r xf entpackt. Installationsmöglichkeiten Zusätzliche Funktionsbibliotheken auch selbst erstellte können auf zweierlei Weise installiert werden: als Nutzer root wird eine systemweite Installation vorgenommen, so dass das Paket allen Nutzern zur Verfügung steht oder als normaler Nutzer wird eine Installation für den Eigenbedarf vorgenommen. Eine systemweite Installation wird für fertige Bibliotheken und Pakete empfohlen. Für Eigenentwicklungen insbesondere wenn die Entwicklungsarbeit noch nicht abgeschlossen ist sollte nur eine nutzerspezifische Installation vorgenommen werden. 115

116 3 Erste Schritte mit GNU Octave und Scilab Systemweite Installation für Octave Die systemweite Installation durch Nutzer root geht in folgenden Schritten vor sich: Das programm GNU Octave wird gestartet. Am Eingabeprompt wird der Befehl 1 DEFAULT_LOADPATH eingeben. Das Programm antwortet, indem es den Pfad ausgibt, der nach Funktionsdateien durchsucht wird. Wird in GNU Octave eine Funktion aufgerufen (d.h. verwendet), die noch nicht definiert ist, sucht das Programm nach einer Datei, deren Dateiname aus dem Funktionsnamen und der Endung.m zusammengesetzt ist. Wird also eine Funktion testfct() aufgerufen, sucht GNU Octave nach einer Datei testfct.m, in der diese Funktion definiert ist. Der Standard-Suchpfad enthält eine Liste von Verzeichnissen, die nach der entsprechenden Datei durchsucht werden. Die einzelnen Verzeichnisse sind durch Doppelpunkte voneinander abgetrennt. Einige Verzeichnisnamen haben am Ende zwei angehängte Slashes, dies bedeutet, dass die Verzeichnisse rekursiv d.h. mit allen Unterverzeichnissen durchsucht werden. Aus der Liste der Verzeichnisse wird ein Verzeichnis ausgewählt, das alle folgenden Merkmale erfüllt: Das Verzeichnis wird rekursiv durchsucht (im Listing hat es zwei Slashes am Ende). Es ist keine GNU Octave Versionsnummer im Namen enthalten. Es ist keine API-Versionsnummer im Namen enthalten. Es ist keine Komponente im Namen enthalten, die auf eine bestimmte Architektur hindeutet. Nach Möglichkeit sollte das Verzeichnis /usr/local/share/octave/site/m bzw. /usr/share/octave/site/m verwendet werden, wenn es in der Liste enthalten ist. Im ausgewählten Verzeichnis wird ein Unterverzeichnis nsplines angelegt. Die Dateien m/*.m aus dem entpackten nsplines-archiv werden in das neue Verzeichnis nsplines kopiert. 116

117 3.6 Beispiele Nutzer-Installation für Octave Eine nutzerspezifische Installation geht wie folgt vonstatten: Im Home-Verzeichnis wird ein Unterverzeichnis octave für GNU Octave Funktionsdateien angelegt falls noch nicht vorhanden. Wir nehmen einmal an, dass der vollständige Pfadname dieses Verzeichnisses /home/erwin/octave lautet. Im Home-Verzeichnis wird die Datei.octaverc bearbeitet (erstellen, falls noch nicht vorhanden). Es wird eine Zeile 1 LOADPATH= / home / erwin / o c t a v e / / : : ; eingetragen. Der Suchpfad wird jetzt so gesetzt, dass zunächst einmal in /home/erwin/octave gesucht wird. Dieses Verzeichnis wird rekursiv d.h. mit allen Unterverzeichnissen durchsucht ( // ). Ist die Suche in diesem Verzeichnis erfolglos, wird der Standardsuchpfad verwendet ( :: ). Im octave -Verzeichnis wird wiederum ein Unterverzeichnis nsplines angelegt. Die Dateien m/*.m aus dem entpackten nsplines-archiv werden in das neue Verzeichnis nsplines kopiert. 117

118 3 Erste Schritte mit GNU Octave und Scilab Systemweite Installation für Scilab Sie benötigen root- bzw. Administrator-Rechte. Suchen Sie zunächst das Scilab-Installationsverzeichnis (z.b. C:\Programme\scilab-4.0). Hier finden Sie ein Unterverzeichnis macros. In macros legen Sie ein Unterverzeichnis nsplines an. Aus dem nsplines-quellarchiv kopieren Sie die Dateien sci/*.sci in das soeben angelegte nsplines -Verzeichnis. Starten Sie Scilab. Geben Sie das Kommando 1 g e n l i b ( n s p l i n e s, SCI / macros / n s p l i n e s ) ; ein. Damit wird eine lib -Datei angelegt. Um die Bibliothek zu nutzen, muss sie mit 1 l o a d ( SCI / macros / n s p l i n e s / l i b ) ; geladen werden. Für das automatische Laden der Bibliothek beim Start von Scilab gibt es zwei Möglichkeiten: Der load-befehl wird in die Datei C:\Programme\scilab-4.0\scilab.star geschrieben (hinter den bisherigen Inhalt). Bei jedem Start von Scilab wird nsplines automatisch mit geladen. Dies ist sinnvoll, wenn der überwiegende Teil der Scilab-Benutzer mit nsplines arbeitet. Falls nur einige Scilab-Nutzer mit nsplines arbeiten, können diese den load-befehl in die Datei.scilab in ihrem Homverzeichnis eintragen. Diese Datei enthält Kommandos, die bei jedem Start von Scilab ausgeführt werden. 118

119 3.6 Beispiele Nutzer-Installation für Scilab Bibliotheken, die sich noch in Entwicklung befinden, sollten nicht in das Scilab- Verzeichnis installiert werden. Ein automatisches Laden für alle Nutzer verbietet sich hier von selbst, da Fehler in den Bibliotheken zu Abbrüchen der Startup-Abläufe führen können. Legen Sie in Ihrem Homeverzeichnis ein Unterverzeichnis scilab an (Sie können selbstverständlich auch einen anderen Namen wählen). Legen Sie ein Unterverzeichnis für jede Bibliothek an. Kopieren Sie die Funktionsdateien für die Bibliothek (die *.sci-dateien, die die Funktionen der Bibliothek enthalten) in das neue Verzeichnis. Im Beispiel würden wir also die sci/*.sci-dateien des nsplines- Quelltextarchives nach c:\erwin\scilab\nsplines 4 bzw. /home/erwin/scilab/nsplines kopieren. In Scilab muss dann die Kommandofolge 1 exec ( c : \ erwin \ s c i l a b \ n s p l i n e s \ n s _ c r e a t e. s c i ) ; 2 exec ( c : \ erwin \ s c i l a b \ n s p l i n e s \ ns_polynom. s c i ) ; 3 exec ( c : \ erwin \ s c i l a b \ n s p l i n e s \ n s _ v a l u e. s c i ) ; 4 exec ( c : \ erwin \ s c i l a b \ n s p l i n e s \ n s _ g p f i l e. s c i ) ; 5 exec ( c : \ erwin \ s c i l a b \ n s p l i n e s \ n s s p _ c r e a t e. s c i ) ; 6 exec ( c : \ erwin \ s c i l a b \ n s p l i n e s \ nssp_polynom. s c i ) ; 7 exec ( c : \ erwin \ s c i l a b \ n s p l i n e s \ n s s p _ v a l u e. s c i ) ; 8 exec ( c : \ erwin \ s c i l a b \ n s p l i n e s \ n s s p _ g p f i l e. s c i ) ; 9 exec ( c : \ erwin \ s c i l a b \ n s p l i n e s \ n s _ n s s p. s c i ) ; Bei der Installation eigener Bibliotheken müssen Sie jeweils alle betreffenden *.sci-dateien aufführen. Die exec-befehle können in der Datei.scilab im Homeverzeichnis eingetragen werden. 4 Als Home-Verzeichnis wurde hier kurzerhand C:\erwin auserkoren, das Verzeichnis C:\Dokumente und Einstellungen\erwin könnte auch genutzt werden. Allerdings würde der lange Verzeichnisname natürlich zu entsprechend langen Dateinamen hier im Beispiel führen, so dass manche Befehle nicht mehr auf eine Zeile passen. 119

120 3 Erste Schritte mit GNU Octave und Scilab Verwendung des nspline-paketes Das API des Paketes umfasst folgende Funktionen: Eine Funktion ns_create(mw), die einen Satz Punkte in die Polynomsequenz für ein natural spline umwandelt. Die Punkte sind dabei als zweispaltige Matrix gegeben. Die Matrix enthält in jeder Zeile die Daten für einen Punkt der Kurve. Der x-wert steht in Spalte 1, der y-wert in Spalte 2. Optional können noch zwei weitere Spalten vorhanden sein, wenn der Anstieg in den Kurvenpunkten gegeben ist. Ist in Spalte 3 ein positiver Wert (> 0) eingetragen, bedeutet dies, dass Spalte 4 den Anstiegswert im Punkt angibt. Ist in Spalte 4 ein Wert 0 angegeben, wird Spalte 4 ignoriert. Die Funktion gibt eine Matrix mit 6 Spalten zurück, die die Beschreibung für die einzelnen Intervalle i enthält. Jede Zeile enthält die Daten für ein Intervall, die Spalten sind belegt mit x i,start, x i,end, a i, b i, c i und d i. Eine Funktion ns_value(m, x), die den Wert für ein bestimmtes x interpoliert. Das Argument M ist die mit ns_create() erzeugte Matrix. Die Funktion gibt den interpolierten Funktionswert zurück. Eine Funktion ns_gpfile(mw, M, name), die die Messwerte und die Interpolationswerte in eine rudimentäre GnuPlot-Datei mit dem angegebenen Namen (Argument name) schreibt. Funktionen nssp_create(), nssp_value() und nssp_gpfile() analog zu den ns_... ()-Funktionen. Der Unterschied liegt darin, dass hier die Matrix M die Polynomkoeffizienten für einfache Polynome enthält, die Spalten sind also belegt mit x i,start, x i,end, p i, q i, r i und s i. Hinweis: Für Matrizen, die mit ns_create() erzeugt wurden, dürfen nur die ns_... ()-Funktionen verwendet werden. Für Matrizen, die mit nssp_create() erzeugt wurden, dürfen nur die nssp_... ()- Funktionen verwendet werden. Eine Funktion ns_nssp(m), die eine mit ns_create() erzeugte Matrix in eine solche umwandelt, die mit den nssp_... ()-Funktionen verwendet werden kann. 120

121 3.6 Beispiele Vorüberlegungen zum Beispiel Aus den Messwerten kann ein natural Spline B = f (H) gewonnen werden, die Teilaufgaben werden damit wie folgt gelöst: der Wert B 1 für H 1 = 250Acm 1 kann direkt mittels ns_value() bzw. nssp_value() gewonnen werden. der Wert H 2 für B 2 = f (H 2 ) = 0,8T wird als Nullstelle der Funktion gewonnen. g(h) = f (H) B 2 Der optimale Arbeitspunkt (der den Maximalwert für B H aufweist), ist ein Extremwert, es gilt 0 = d dh (BH) Haben wir den Spline in Form einfacher Polynome gegeben, gilt für jedes Intervall i und somit Es muss also die Nullstelle von BH = p i H 4 + q i H 3 + r i H 2 + s i H d dh (BH) = 4p ih 3 + 3q i H 2 + 2r i H + s i 0 = 4p i H 3 + 3q i H 2 + 2r i H + s i h(h) = 4p i H 3 + 3q i H 2 + 2r i H + s i Die letzte Funktion ist ebenfalls wieder eine Folge von Polynomen dritter Ordnung, wobei die Intervallgrenzen dieselben sind wie die von f (H). Es kann also zur Berechnung der nssp_... ()-Mechanismus genutzt werden. Um die Interpolationsmatrix für h(h) zu erstellen, wird zunächst eine Kopie der Interpolationsmatrix von f (H) erzeugt. In dieser Kopie werden dann alle Werte der dritten Spalte mit 4 multipliziert, alle Werte der vierten Spalte mit 3 und alle Werte der fünften Spalte mit

122 3 Erste Schritte mit GNU Octave und Scilab Lösung für das Beispiel Zunächst wird eine Eingabedatei oe0008.m bzw. oe0008.sce erstellt, siehe Listings 3.10 auf der nächsten Seite und 3.11 auf Seite 124. Die Verarbeitung mit 1 o c t a v e q oe0008.m ergibt 1 Problem 1 i s t g a r zu e i n f a c h : 2 H = B = Problem 2 e r f o l g r e i c h g e l o e s t : 6 H = B = Problem 3 e r f o l g r e i c h g e l o e s t : 10 H = B = BH =

123 3.6 Beispiele Listing 3.10: oe0008.m 1 mw = [ ] ; 8 9 g l o b a l M1; 10 M1 = n s s p _ c r e a t e (mw) ; g l o b a l M2; 13 M2 = M1; 14 [ r, c ] = s i z e (M2 ) ; 15 f o r i =1: r 16 M2( i, 3 ) = 4. 0 *M2( i, 3 ) ; 17 M2( i, 4 ) = 3. 0 *M2( i, 4 ) ; 18 M2( i, 5 ) = 2. 0 *M2( i, 5 ) ; 19 e n d f o r f u n c t i o n back = g (H) 22 g l o b a l M1; 23 back = n s s p _ v a l u e (M1, H) 0. 8 ; 24 e n d f u n c t i o n f u n c t i o n back = h (H) 27 g l o b a l M2; 28 back = n s s p _ v a l u e (M2, H ) ; 29 e n d f u n c t i o n p r i n t f ( Problem 1 i s t g a r zu e i n f a c h : \ n ) ; 32 p r i n t f ( H = \ n ) ; 33 p r i n t f ( B = %g \ n, n s s p _ v a l u e (M1, ) ) ; [H, i n f o ] = f s o l v e ( " g ", [ / 2. 0 ] ) ; 36 i f ( i n f o == 1) 37 p r i n t f ( \ nproblem 2 e r f o l g r e i c h g e l o e s t : \ n ) ; 38 p r i n t f ( H = %g \ n, H ) ; 39 p r i n t f ( B = %g \ n, n s s p _ v a l u e (M1, H ) ) ; 40 e l s e 41 p e r r o r ( " f s o l v e ", i n f o ) ; 42 e n d i f [H, i n f o ] = f s o l v e ( " h ", [ / 2. 0 ] ) ; 45 i f ( i n f o == 1) 123

124 3 Erste Schritte mit GNU Octave und Scilab 46 p r i n t f ( \ nproblem 3 e r f o l g r e i c h g e l o e s t : \ n ) ; 47 p r i n t f ( H = %g \ n, H ) ; 48 p r i n t f ( B = %g \ n, n s s p _ v a l u e (M1, H ) ) ; 49 p r i n t f ( BH = %g \ n, abs (H* n s s p _ v a l u e (M1,H ) ) ) ; 50 e l s e 51 p e r r o r ( " f s o l v e ", i n f o ) ; 52 e n d i f 1 mw = [ ] ; 8 9 g l o b a l M1; 10 M1 = n s s p _ c r e a t e (mw) ; g l o b a l M2; 13 M2 = M1; 14 [ r, c ] = s i z e (M2 ) ; 15 f o r i =1: r 16 M2( i, 3 ) = 4. 0 *M2( i, 3 ) ; 17 M2( i, 4 ) = 3. 0 *M2( i, 4 ) ; 18 M2( i, 5 ) = 2. 0 *M2( i, 5 ) ; 19 end 20 Listing 3.11: oe0008.sce 21 f u n c t i o n [ back ] = g (H) 22 g l o b a l M1; 23 back = n s s p _ v a l u e (M1, H) 0. 8 ; 24 e n d f u n c t i o n f u n c t i o n [ back ] = h (H) 27 g l o b a l M2; 28 back = n s s p _ v a l u e (M2, H ) ; 29 e n d f u n c t i o n p r i n t f ( Problem 1 i s t g a r zu e i n f a c h : \ n ) ; 32 p r i n t f ( H = \ n ) ; 33 p r i n t f ( B = %g \ n, n s s p _ v a l u e (M1, ) ) ; [H, v, i n f o ] = f s o l v e ( [ / 2. 0 ], g ) ; 36 i f ( i n f o == 1) 37 p r i n t f ( \ nproblem 2 e r f o l g r e i c h g e l o e s t : \ n ) ; 124

125 3.6 Beispiele 38 p r i n t f ( H = %g \ n, H ) ; 39 p r i n t f ( B = %g \ n, n s s p _ v a l u e (M1, H ) ) ; 40 e l s e 41 p r i n t f ( Das Problem 2 konnte n i c h t g e l o e s t werden! \ n ) ; 42 end [H, v, i n f o ] = f s o l v e ( [ / 2. 0 ], h ) ; 45 i f ( i n f o == 1) 46 p r i n t f ( \ nproblem 3 e r f o l g r e i c h g e l o e s t : \ n ) ; 47 p r i n t f ( H = %g \ n, H ) ; 48 p r i n t f ( B = %g \ n, n s s p _ v a l u e (M1, H ) ) ; 49 p r i n t f ( BH = %g \ n, abs (H* n s s p _ v a l u e (M1,H ) ) ) ; 50 e l s e 51 p r i n t f ( Das Problem 3 konnte n i c h t g e l o e s t werden! \ n ) ; 52 end 125

126 3 Erste Schritte mit GNU Octave und Scilab 126

127 4 Maxima 4.1 Installation Installation unter Windows Das Installationsprogramm kann von bezogen werden. Das entsprechende Paket heißt WxMaxima. Das Maxima-System besteht aus mehreren Komponenten, u. a. ist eine Komponente für die algebraischen Arbeiten vorhanden und eine weitere für das GUI. Beide Komponenten kommunizieren über das Netzwerk bzw. das virtuelle Loopback-Netzwerk. Diese Kommunikation muss von der Firewall zugelassen werden. Nach der Installation bleiben Sie als Administrator angemeldet und starten Maxima einmal. Wenn Sie mit der Windows-eigenen Firewall arbeiten, werden Sie beim ersten Start von Maxima gefragt, ob Sie eine Firewall-Regel einrichten möchten, um Maxima die Kommunikation zu erlauben. Diese Frage sollten Sie mit ja beantworten. In der Systemsteuerung finden Sie den Unterpunkt Windows-Firewall. Hier können Sie die Firewall-Regel ändern, z. B. in der Liste der Ausnahmen den Zugriff auf wxmaxima nicht allen Computern gestatten sondern nur für eine benutzerdefinierte Liste an Computern. Diese Liste sollte auf alle Fälle das Loopback- Netzwer (d. h / ) enthalten sowie die IP-Adresse des Computers (z. B / ) falls der Computer über eine statische IP-Adresse verfügt. Da Maxima für graphische Darstellungen das Programm GnuPlot verwendet, muss GnuPlot ebenfalls installiert werden Installation unter Linux Maxima kann über die Paketverwaltung installiert werden. Das Programm GnuPlot sollte ebenfalls installiert werden, da es von Maxima für graphische Darstellungen verwendet wird Dokumentation Weitere Dokumentation (z. B. ein Handbuch) sind unter sourceforge.net verfügbar. 127

128 4 Maxima Abbildung 4.1: Hauptfenster von wxmaxima Programmstart Programmstart unter Windows Zum Starten des Programmes kann entweder das wxmaxima Desktop-Icon oder der Startmenü-Eintrag genutzt werden. Beim Programmstart erscheinen Tipps, nachdem diese geschlossen wurden, kann mit der Anwendung gearbeitet werden. wxmaxima Neben dem üblichen Menü und der Buttonbar enthält das Anwendungsfenster einen Ausgabebereich, eine Eingabezeile und im unteren Bereich ein Feld mit Buttons für bestimmte Aufgaben (siehe Abb. 4.1). 128

129 4.2 Programmstart Abbildung 4.2: Befehl in der Eingabezeile In der Eingabezeile kann ein Befehl eingeben werden. Mit ENTER wird die Bearbeitung des Befehles veranlasst. Ein eventuell fehlendes Semikolon am Ende des Befehles wird vom GUI automatisch eingefügt. 129

130 4 Maxima Abbildung 4.3: Ergebnisanzeige Nach der Verarbeitung eines Befehles wird der Befehl mitsamt dem Ergebnis im Ausgabebereich angezeigt. 130

131 4.2 Programmstart Abbildung 4.4: Hauptfenster von wxmaxima wxmaxima Die Nutzeroberfläche von wxmaxima verhält sich ein wenig anders als die von wxmaxima Es wird ein Bereich kombiniert für Ein- und Ausgaben genutzt. Werden Tastatureingaben getätigt, startet wxmaxima einen Eingabeblock, der sich durchaus über mehrere Zeilen erstrecken kann. Mit den Cursortasten kann innerhalb des Blockes navigiert werden und es können Korrekturen vorgenommen werden (siehe Abb. 4.5 auf der nächsten Seite). Mit SHIFT-ENTER wird der gesamte Eingabeblock verarbeitet, anschließend werden die Ergebnisse der einzelnen Anweisungen nacheinander angezeigt (siehe Abb. 4.6 auf der nächsten Seite). 131

132 4 Maxima Abbildung 4.5: Eingabeblock Abbildung 4.6: Nach Verarbeitung des Eingabeblockes 132

133 4.2 Programmstart Abbildung 4.7: Maxima-Hauptfenster mit Dokumenten-Browser Programmstart unter Linux In einem Terminalfenster wird 1 xmaxima & eingegeben. Im Terminal erscheinen einige informative Zeilen, anschließend öffnet sich die Anwendung (Abb. 4.7). Das Hauptfenster ist zweigeteilt: oben der Arbeitsbereich, unten der Dokumentenbrowser. 133

134 4 Maxima Abbildung 4.8: Maxima-Hauptfenster Mit dem Menüpunkt Options Toggle Browser Visibility kann der Dokumentenbrowser ausgeblendet werden, es steht dann das ganze Hauptfenster für den Arbeitsbereich zur Verfügung. 134

135 4.2 Programmstart Abbildung 4.9: Befehlseingabe Im Hauptfenster können Befehle eingegeben werden (im Beispiel 3+5; ). 135

136 4 Maxima Abbildung 4.10: Ergebnisanzeige Wird ein Befehl mit ENTER bestätigt, so wird er von Maxima verarbeitet. Nach der Verarbeitung wird das Ergebnis angezeigt. 136

137 4.3 Verarbeitung von Dateien Abbildung 4.11: Maxima-Neustart 4.3 Verarbeitung von Dateien Mit Maxima können Sie einerseits interaktiv arbeiten, andererseits aber auch Dateien verarbeiten. Das Arbeiten mit Dateien hat den Vorteil, dass auf bereits vorhandene Lösungen bzw. Lösungswege zurückgegriffen werden kann, wenn ein Problem auftaucht, das einem bereits gelösten ähnelt. Dateien müssen die Endung.mac haben bzw..wmx für wxmaxima Bevor eine Datei eingelesen wird, sollte ein Maxima-Neustart erfolgen, um bereits definierte Variablen und Objekte zu löschen. Andernfalls können beim Anlegen von Objekten Konflikte mit bereits vorhandenen Objekten auftreten. Zum Neustart kann der Menüpunkt Maxima Maxima neustarten verwendet werden (Abb. 4.11). Der Neustart muss in einer Dialogbox nochmals bestätigt werden. 137

138 4 Maxima Abbildung 4.12: Datei einlesen Anschließend kann mit dem Menüpunkt Datei Datei abarbeiten (0.7.6: Datei Read file ) eine Datei eingelesen werden. Im Beispiel wird eine Datei mit dem Inhalt 1 ( 3 * 5 ) / ( ) ; eingelesen. Listing 4.1: Kleine Eingabedatei 138

139 4.3 Verarbeitung von Dateien Abbildung 4.13: Verarbeitung der Datei beendet Bei der Verarbeitung von Dateien wird jeder eingelesene Befehle im Ausgabebereich dargestellt, dabei werden Multiplikationspunkte weggelassen. Den gelesenen Eingaben wird dabei ein in Klammern stehendes Promptzeichen vorangestellt, das aus Prozentzeichen, i (für Input) und einer laufenden Nummer besteht. Nach der Verarbeitung eines Befehles wird das Ergebnis dargestellt, hier besteht das vorangestellte Promptzeichen aus Prozentzeichen, o (für Output) und einer laufenden Nummer. 139

140 4 Maxima 4.4 Beispiele Abbildung 4.14: Numerische Darstellung Ergebnis numerisch, nicht als Bruch Wie gerade gesehen, stellt Maxima das Ergebnis als Bruch dar, wenn bei der Berechnung Divisionen auftraten. Soll die Bruchdarstellung unterdrückt werden und stattdessen eine numerische Darstellung erfolgen, muss der Zusatz, numer angegeben werden, z. B. 1 ( 3 * 5 ) / ( ), numer 140

141 4.4 Beispiele Abbildung 4.15: Definition einer Funktion Selbst definierte Funktionen Funktionen werden in der Form Funktionsname(Argumente):=Ausdruck; angegeben. Beispiel: 1 p a r a l l e l ( a, b ) : = ( a *b ) / ( a+b ) ; Diese Funktion kann zur Berechnung des Gesamtwiderstandes zweier parallel geschalteter Widerstände verwendet werden. Die Berechnung kann für 3 und 5 Ω mit 1 p a r a l l e l ( 3, 5 ), numer erfolgen. 141

142 4 Maxima Abbildung 4.16: Verwendung der Funktion 142

143 4.4 Beispiele Abbildung 4.17: Zuweisungsoperationen mit Ersetzungen Zuweisungen mit Werten In Maxima können Variable nicht nur Zahlenwerte, Vektoren und Matrizen sondern auch mathematische Ausdrücke und Gleichungen enthalten. Um Zuweisungsoperationen von Gleichungen zu unterscheiden, wird für die Zuweisung der Doppelpunkt als Operator verwendet. Beispiel: 1 a : 2 ; 2 b : 3 + a ; 3 c : b / 2 ; Werden in Berechnungen Variablen verwendet, denen bereits ein Inhalt zugewiesen wurde, wird in die Berechnung der Variableninhalt eingesetzt. 143

144 4 Maxima I ges I 3,4,5 I 5 R 1 I 2 I 4 R 3 U q R 2 R 4 R 5 Abbildung 4.18: Beispielschaltung Zuweisungen mit Unbekannten Für die Beispielschaltung entsprechend Abb mit U q = 10V R 1 = 11Ω R 2 = 12Ω R 3 = 13Ω R 4 = 14Ω R 5 = 15Ω soll I 4 sowohl analytisch als auch wertmäßig ermittelt werden. Für die manuelle Berechnung mit Ersatzschaltbildern würde man folgendermaßen vorgehen: Zusammenfassung R 4 und R 5 R4,5 = R4 R5 = R 4R 5 R 4 + R 5 Zusammenfassung R 3 und R 4,5 R3,4,5 = R3 + R4,5 Zusammenfassung R 2 und R 3,4,5 R 2,3,4,5 = R 2 R 3,4,5 = R 2R 3,4,5 R 2 + R 3,4,5 Zusammenfassung Gesamtwiderstand R ges = R 1 + R 2,3,4,5 144

145 4.4 Beispiele Berechnung des Gesamtstromes I ges = U q R ges Aufteilung des Gesamtstromes I 3,4,5 = R 2 R 2 + R 3,4,5 I ges Aufteilung von I 3,4,5 I 4 = R 5 R 4 + R 5 I 3,4,5 Bei jedem Schritt müssten die Formeln für die bereits bekannten Größen eingesetzt werden, anschließend müsste gekürzt werden. All diese Schritte können Maxima überlassen werden: 1 p a r a l l e l ( a, b ) : = ( a *b ) / ( a+b ) ; 2 R45 : p a r a l l e l ( R4, R5 ) ; 3 R345 : R3+R45 ; 4 R2345 : p a r a l l e l ( R2, R345 ) ; 5 Rges : R1+R2345 ; 6 I g e s : Uq / Rges ; 7 I345 : I g e s *R2 / ( R2+R345 ) ; 8 I4 : I345 *R5 / ( R4+R5 ) ; Listing 4.2: Einsetzen bekannter Formeln Ist einer Variablen als Inhalt eine Formel hinterlegt, wird diese Formel immer dann eingesetzt, wenn die Variable selbst wiederum in einer Formel zur Berechnung einer anderen Größe angegeben ist. Für I 4 erhalten wir die noch nicht vereinfachte Formel I 4 = U q R 2 R 5 ( ( ) ) R4 ) R (R 5 + R 4 )( R4 R R R R 4 +R 5 + R 3 + R 4 +R +R R 4 R 5 + R 1 R 4 +R +R 3 +R

146 4 Maxima Abbildung 4.19: Ergebnis nach Einsetzen 146

147 4.4.5 Formeln Vereinfachen 4.4 Beispiele Mit ratsimp(ausdruck); kann ein mathematischer Ausdruck vereinfacht werden. Dabei kann wie auch in Formeln mit %ozahl Bezug auf die Ausgabe eines beliebigen vorherigen Schrittes bzw. mit % Bezug auf das Ergebnis des vorangegangenen Schrittes genommen werden. Mit 1 p a r a l l e l ( a, b ) : = ( a *b ) / ( a+b ) ; 2 R45 : p a r a l l e l ( R4, R5 ) ; 3 R345 : R3+R45 ; 4 R2345 : p a r a l l e l ( R2, R345 ) ; 5 Rges : R1+R2345 ; 6 I g e s : Uq / Rges ; 7 I345 : I g e s *R2 / ( R2+R345 ) ; 8 I4 : I345 *R5 / ( R4+R5 ) ; 9 r a t s i m p (%); Listing 4.3: Vereinfachtes Ergebnis wird die gleiche Berechnung wie im vorangegangenen Abschnitt ausgeführt, im letzten Schritt wird eine Vereinfachung (Entfernung von Mehrfachbrüchen und Kürzen) vorgenommen. Wir erhalten das Ergebnis U q R 2 R 5 I 4 = ((R 2 + R 1 )R 4 + (R 2 + R 1 )R 3 + R 1 R 2 )R 5 + ((R 2 + R 1 )R 3 + R 1 R 2 )R 4 147

148 4 Maxima Abbildung 4.20: Vereinfachte Formel 148

149 4.4 Beispiele Abbildung 4.21: Einsetzen von Werten in Formeln Werte in Formel einsetzen Soll der Wert einer Formel bzw. einer Funktion an einer bestimmten Stelle berechnet werden, wird der Befehl at(ausdruck,parameterliste); verwendet. Dabei erfolgt die Ausgabe als Bruch, wenn nicht explizit eine numerische Ausgabe gefordert wird. 1 p a r a l l e l ( a, b ) : = ( a *b ) / ( a+b ) ; 2 R45 : p a r a l l e l ( R4, R5 ) ; 3 R345 : R3+R45 ; 4 R2345 : p a r a l l e l ( R2, R345 ) ; 5 Rges : R1+R2345 ; 6 I g e s : Uq / Rges ; 7 I345 : I g e s *R2 / ( R2+R345 ) ; 8 I4 : I345 *R5 / ( R4+R5 ) ; 9 r a t s i m p (%); Listing 4.4: Einsetzen von Werten in Formeln 10 a t ( I4, [ Uq=10, R1=11, R2=12, R3=13, R4=14, R5 = 1 5 ] ) ; 11 a t ( I4, [ Uq=10, R1=11, R2=12, R3=13, R4=14, R5 = 1 5 ] ), numer ; 149

150 4 Maxima Wir erhalten I 4 = 0,1039A 150

151 4.4 Beispiele R 1 R 3 U q R 2 R4 R 5 I A I B I C Abbildung 4.22: Maschenströme Lineare Gleichungssysteme Die Aufgabenstellung aus Abschnitt auf Seite 144 kann auch einfacher gelöst werden, z. B. mit dem Maschenstromverfahren. Hierbei wird ein lineares Gleichungssystem aus 3 Gleichungen mit 3 Unbekannten (den Maschenströmen I A, I B und I C ) aufgestellt und gelöst, der Strom I 4 ergibt sich dann als I 4 = I B I C Listing 4.5: Lineares Gleichungssystem 1 g l 1 : 0 = IA *(R1+R2 ) IB*R2 Uq ; 2 g l 2 : 0 = IB *(R2+R3+R4 ) IA*R2 IC*R4 ; 3 g l 3 : 0 = IC *(R4+R5 ) IB*R4 ; 4 s o l v e ( [ gl1, gl2, g l 3 ], [ IA, IB, IC ] ) ; Mit dem solve()-befehl werden die Lösungen des Gleichungssystemes nur angezeigt, die Lösungsformeln werden aber nicht in globale Variablen übernommen. Mit 1 g l o b a l s o l v e : t r u e wird ein Flag globalsolve gesetzt, das veranlasst, dass für die Lösungen von solve() entsprechende globale Variablen erzeugt werden, deren Inhalt das Gleichungssystem löst. Listing 4.6: Lineares Gleichungssystem 1 g l 1 : 0 = IA *(R1+R2 ) IB*R2 Uq ; 2 g l 2 : 0 = IB *(R2+R3+R4 ) IA*R2 IC*R4 ; 3 g l 3 : 0 = IC *(R4+R5 ) IB*R4 ; 4 g l o b a l s o l v e : t r u e ; 5 s o l v e ( [ gl1, gl2, g l 3 ], [ IA, IB, IC ] ) ; 6 I4 : r a t s i m p ( IB IC ) ; 7 a t ( I4, [ Uq=10, R1=11, R2=12, R3=13, R4=14, R5 = 1 5 ] ), numer ; 151

152 4 Maxima Abbildung 4.23: Lineares Gleichungssystem gelöst 152

153 4.4 Beispiele Differenzieren Abbildung 4.24: Differenzieren Zum Differenzieren einer Funktion kann diff(ausdruck,variable); verwendet werden. Der Ausdruck wird nach der angegebenen Variablen differenziert. Im Beispiel fließt ein sinusförmiger Wechselstrom durch eine Spule. Gesucht ist die über der Spule abfallende Spannung. i(t) = I max sinωt u L = L di dt = LωI max cosωt 1 i : Imax* s i n ( omega* t ) ; 2 u : L* d i f f ( i, t ) ; Listing 4.7: Spannungsabfall über einer Spule 153

154 4 Maxima Integrieren Abbildung 4.25: Spannung über einem Kondensator Zum Integrieren dient integrate(ausdruck,variable); Damit wird versucht, den Ausdruck nach der angegebenen Variable zu integrieren. Falls Maxima das Integral nicht lösen kann, wird die noun-form integrate(ausdruck,variable) als Ergebnis zurückgegeben. Im Beispiel fließt ein sinusförmiger Wechselstrom durch einen Kondensator. Die Kondensatorspannung kan mit i(t) = I max sinωt u C (t) = 1 i(t)dt C = I max ωc cosωt errechnet werden. 1 i : Imax * s i n ( omega* t ) ; 2 u : 1 /C * i n t e g r a t e ( i, t ) ; Listing 4.8: Spannung über Kondensator 154

155 4.4 Beispiele R 1 i i 2 i C U q C R 2 Abbildung 4.26: Umladevorgang Differentialgleichungen Für eine Schaltung entsprechend Abb sei der Schalter lange genug geöffnet, so dass der Kondensator auf u C = U q aufgeladen ist. Zum Zeitpunkt t 0 = 0 wird der Schalter geschlossen. Gesucht ist der zeitliche Verlauf u C (t). Aus den Grundlagen der Elektrotechnik ist bekannt, dass für diese Umladung gilt: U End = R 2 R 1 + R 2 U q u C (t) = U End ( U End U q ) e t/τ τ = R 1R 2 C R 1 + R 2 Endwert der Kondensatorspannung Ist diese Lösung nicht bereits bekannt, kann man Gleichungen aufstellen: i(t) = i 2 (t) + i C (t) i(t) = U q u C (t) R 1 i 2 (t) = u C(t) R 2 i C (t) = C du C dt 155

156 4 Maxima Werden alle diese Gleichungen ineinander eingesetzt, ergibt sich: U q u C (t) R 1 = u C(t) R 2 +C du C dt Dies kann umgeformt werden zu Der Ansatz 0 = R 1 R 2 C du C dt + (R 1 + R 2 )u C (t) U q R 2 u C (t) = U A e t/τ +U B du C dt ergibt beim Einsetzen = U A τ e t/τ 0 = U A τ R 1R 2 Ce t/τ + (R 1 + R 2 )U A e t/τ + (R 1 + R 2 )U B R 2 U q Durch Koeffizientenvergleich erhalten wir Daraus ergibt sich 0 = R 1R 2 C + R 1 + R 2 τ 0 = (R 1 + R 2 )U B R 2 U q τ = R 1R 2 C R 1 + R 2 U B = R 2 R 1 + R 2 U q U A muss aus den Randwerten bestimmt werden: u C (t 0 ) = U q U q = U A + R 2 R 1 + R 2 U q U A = U q R 2 R 1 + R 2 U q = R 1 R 1 + R 2 U q Somit ergibt sich als Gesamtlösung u C (t) = R 1 U q e t(r 1 +R 2 ) R 1 R 2C + R 2 U q R 1 + R 2 R 1 + R 2 156

157 4.4 Beispiele Wird Maxima verwendet, kann die Gleichung U q u C (t) R 1 = u C(t) R 2 +C du C dt mit dem Befehl ode2(differentialgleichung, y-variable, x-variable); gelöst werden. Dabei ist Differentialgleichung die zu lösende Gleichung, y-variable gibt an, welche Variable abgeleitet wurde und x-variable gibt an, nach welcher Variable die Ableitung erfolgte. Für du C dt ist die y-variable u C (t) und die x-variable t. Nach dem Finden der allgemeinen Lösung können mit ic1(lösungsgleichung, x-position, y-wert); bekannte Randwerte eingesetzt werden, um ggf. weitere Konstanten zu bestimmen. Im Beispiel wird angegeben, dass zum Zeitpunkt t = 0 gilt u C = U q. Listing 4.9: Lösung einer Differentialgleichung 1 g l : ( Uq uc ) / R1=uc / R2+C* d i f f ( uc, t ) ; 2 l s g : ode2 ( gl, uc, t ) ; 3 rwp : i c 1 ( l s g, t =0, uc=uq ) ; Maxima findet hier die Lösung: u C (t) = e t R 2 C (R 2 U q e t R 2 C + t R 1C + R 1 U q ) (R 1 + R 2 )e t R 1 C Einige einfache Umformungen zeigen, dass diese Lösung identisch zu der manuell gefundenen Lösung ist. 157

158 4 Maxima Abbildung 4.27: Lösung einer Differentialgleichung 158

159 4.4 Beispiele Analyse eines Bandpasses R 1 C 2 U 1 C 1 R 2 U 2 Abbildung 4.28: Bandpass Aufgabenstellung Für den Bandpass entsprechend Abb mit R 1 = R 2 = 1kΩ und C 1 = C 2 = 10nF sind folgende Größen gesucht: G m Maximalwert (betragsmäßig) des Amplitudenganges. ω m Kreisfrequenz, bei der der Maximalwert auftritt. ω g,u ω g,o untere und obere Grenzfrequenz. Allgemeines Vorgehen Bei den Berechnungen am Bandpass wird folgendermaßen vorgegangen: Aus der Übertragungsfunktion G(jω) wird der Amplitudengang bestimmt. G(ω) = G(jω) Es wird das Maximum des Amplitudenganges G m gesucht und die Kreisfrequenz ω m, bei der das Maximum auftritt. An der Extremwertstelle muss gelten: dg dω = 0 ω=ωm 159

160 4 Maxima Wenn das Maximum des Amplitundenganges ermittelt ist, gilt für den Amplitudengang bei der Grenzfrequenz G g = G(ω) ω=ωg = 1 2 G m Zur Vereinfachung der weiteren Berechnungen wird eine Normierung der Frequenz ω auf die Maximums-Kreisfrequenz ω m vorgenommen. ω = x ω m g(x) = G(xω m ) = G(jxω m ) Um die Grenz-Kreisfrequenz ω g zu finden, muss die Nullstelle der Funktion gefunden werden. f (x) = g(x) G g Berechnung Da für das Netzwerk R 1 = R 2 und C 1 = C 2 vorgegeben ist, wird gleich R 1 = R 2 = R und C 1 = C 2 = C eingesetzt, um die Berechnungen zu vereinfachen. Die Eingabesprache von Maxima erfordert die Angabe von Bezeichnern (Namen) für Objekte, für diese Variablennamen gelten die in Programmiersprachen üblichen Regeln. Folgende Namen werden verwendet: ω w R R Z C ZC G G G m Gm G = G ag ω m wm Die Eingabedatei setzt sich folgendermaßen zusammen: dg dω dag Zunächst wird eine Funktion zur Berechnung des Gesamtwiderstandes einer Parallelschaltung zweier Widerstände definiert. 1 p a r a ( a, b ) : = ( a *b ) / ( a+b ) ; a b = a b a + b 160

161 4.4 Beispiele Abbildung 4.29: Screenshot 1 Anschließend wird ein Berechnungsterm für Z C angegeben und als Variable ZC gespeichert. Z C = 1 jωc 2 ZC : 1. 0 / ( % i *w*c ) ; Wird das Symbol ZC in nachfolgenden Formeln verwendet, wird automatisch der Berechnungsterm anstelle des ZC eingesetzt. In der Variablen G wird der Berechnungsterm für die Spannungsübertragungsfunction G(jω) gespeichert. G(jω) = Z C (R + Z C ) R + Z C (R + Z C ) R R + Z C 3 G: ( p a r a (ZC, ZC+R ) ) * ( R ) / ( ( R+ p a r a (ZC, ZC+R ) ) * ( R+ZC ) ) ; Die Formel nach Einsetzung der Berechnungsterme für Z C und die Parallelschaltung wird als Ausgabe %o4 angezeigt, siehe Abb

162 4 Maxima Abbildung 4.30: Screenshot 2 In der Variablen ag wird ein Berechnungsterm für G hinterlegt. Es wird angefordert, dass vor der Betragsbildung noch eine Vereinfachung erfolgen soll. 4 ag : abs ( r a t s i m p (G ) ) ; G(ω) = G(jω) Die Formel für die Berechnung des Betrages wird als Ausgabe %o5 angezeigt, siehe Abb ω 5 C 5 R 5 2 (ω 3 C 3 R 3 7ωCR) 2 +(2 5ω 2 C 2 R 2 ) 2 3ω 3 C 3 R 3 (ω 3 C 3 R 3 7ωCR) 2 +(2 5ω 2 C 2 R 2 ) 2 G(ω) = 4ωCR + (ω 3 C 3 R 3 7ωCR) 2 +(2 5ω 2 C 2 R 2 ) 2 3ω 4 C 4 R 4 2 (ω + 3 C 3 R 3 7ωCR) 2 +(2 5ω 2 C 2 R 2 ) 2 12ω + 2 C 2 R 2 (ω 3 C 3 R 3 7ωCR) 2 +(2 5ω 2 C 2 R 2 ) 2 ( ω 5 C 5 R 5 3ω 3 C 3 R 3 + 4ωCR) 2 + (3ω 4 C 4 R ω 2 C 2 R 2 ) 2 = (ω 3 C 3 R 3 7ωCR) 2 + (2 5ω 2 C 2 R 2 ) 2 162

163 4.4 Beispiele Abbildung 4.31: Screenshot 3 In dag wird die Ableitung des Betrages nach der Kreisfrequenz hinterlegt. 5 dag : r a t s i m p ( d i f f ( ag, w ) ) ; Die Formel wird als Ausgabe %o6 angezeigt. In gl01 wird eine Gleichung hinterlegt, die die Ableitung auf 0 setzt. 6 gl01 : dag = 0 ; Die Ausgabe %o7 zeigt die Gleichung an. Es wird nach einem ω gesucht, das diese Gleichung löst. 7 s o l v e ( gl01, w ) ; Da die zu lösende Gleichung Polynome höherer Ordnung enthält, existieren aus mathematischer Sicht mehrere Lösungen, siehe Ausgabe %o8 in Abb Davon ist technisch nur eine Lösung ω m = 1 RC sinnvoll, da ω m einen positiven reellen Wert haben muss. 8 wm: 1 / ( R*C ) ; 163

164 4 Maxima Abbildung 4.32: Screenshot 4 Die gefundene Lösung wird nun verwendet, um den Wert von G an der Stelle ω m zu berechnen. 9 Gm: a t ( ag, w=wm) ; Es ergibt sich (Ausgabe %o10): G m = G(jω) ω=ωm G m = 1 3 Bei der Grenzfrequenz muss die Amplitude auf den 1/ 2-fachen Wert des Maximalwertes abfallen. 10 Gg : Gm/ s q r t ( 2 ) ; G g = 1 2 G m = Die in %o5 erhaltene Formel ( ω 5 C 5 R 5 3ω 3 C 3 R 3 + 4ωCR) 2 + (3ω 4 C 4 R ω 2 C 2 R 2 ) 2 G(ω) = (ω 3 C 3 R 3 7ωCR) 2 + (2 5ω 2 C 2 R 2 ) 2 164

165 4.4 Beispiele wird mit ω = x ω m bzw. x = ω ω m normiert zu g(x) = G(x ω m ) ( x 5 3x 3 + 4x) 2 + (3x x 2 ) 2 = (x 3 7x) 2 + (2 5x 2 ) 2 11 g ( x ) : = s q r t (( x**5 3*x **3+4* x )**2+(3* x **4+12* x * * 2 ) * * 2 ) 12 / ( ( x**3 7*x )**2+(2 5* x * * 2 ) * * 2 ) ; Die Funktion f (x) = g(x) G g wird eingegeben. 13 f ( x ) : = g ( x) Gg ; 165

166 4 Maxima Abbildung 4.33: Screenshot 5 Die Grenz-Kreisfrequenzen können aus den Nullstellen x g,u und x g,o mit den Formeln ω g,u = x g,u ω m und ω g,o = x g,o ω m berechnet werden. Für die der unteren bzw. oberen Grenzfrequenz entsprechenden Nullstellen muss gelten: 0 < x g,u < 1 1 < x g,o Diese beiden Nullstellen werden numerisch gesucht, dabei wird jeweils eine linke und eine rechte Grenze für den Suchbereich vorgegeben. 14 f i n d _ r o o t ( f ( x ), x, 0, 1 ) ; 15 f i n d _ r o o t ( f ( x ), x, 1, ) ; Die Ausgaben %o14 und %o15 zeigen die gefundenen Nullstellen. Zur Probe wird nochmals 1/3 2 berechnet und mit den Werten g(x g,u ) und g(x g,o ) verglichen / ( 3 * s q r t ( 2 ) ), numer ; 17 a t ( ag, w= *wm), numer ; 18 a t ( ag, w= *wm), numer ; 166

167 4.4 Beispiele Somit gilt für diesen Bandpass: ω m = 1 RC f m = 1 2πRC ω g,u = 0,303 RC f g,u = 0,303 2πRC ω g,o = 3,303 RC f g,o = 3,303 2πRC Mit der Datei bp.wxm können die Berechnungen nachvollzogen werden: 1 p a r a ( a, b ) : = ( a *b ) / ( a+b ) ; 2 ZC : 1. 0 / ( % i *w*c ) ; 3 G: ( p a r a (ZC, ZC+R ) ) * ( R ) / ( ( R+ p a r a (ZC, ZC+R ) ) * ( R+ZC ) ) ; 4 ag : abs ( r a t s i m p (G ) ) ; 5 dag : r a t s i m p ( d i f f ( ag, w ) ) ; 6 gl01 : dag = 0 ; 7 s o l v e ( gl01, w ) ; 8 wm: 1 / ( R*C ) ; 9 Gm: a t ( ag, w=wm) ; 10 Gg : Gm/ s q r t ( 2 ) ; 11 g ( x ) : = s q r t (( x**5 3*x **3+4* x )**2+(3* x **4+12* x * * 2 ) * * 2 ) 12 / ( ( x**3 7*x )**2+(2 5* x * * 2 ) * * 2 ) ; 13 f ( x ) : = g ( x) Gg ; 14 f i n d _ r o o t ( f ( x ), x, 0, 1 ) ; 15 f i n d _ r o o t ( f ( x ), x, 1, ) ; 16 1 / ( 3 * s q r t ( 2 ) ), numer ; 17 a t ( ag, w= *wm), numer ; 18 a t ( ag, w= *wm), numer ; 19 log10 ( x ) : = l o g ( x ) / l o g ( ) ; 20 p l o t 2 d (20* log10 ( g ( x ) ), [ x, , ], 21 [ g n u p l o t _ p r e a m b l e, " s e t l o g s c a l e x ; " ], 22 [ x l a b e l, " f / f_g " ], 23 [ y l a b e l, " G( f ) / db " ] 24 ) ; Die plot2d-anweisung erfordert, dass GnuPlot installiert und die Umgebungsvariable PATH entsprechend gesetzt ist. Ist GnuPlot nicht vorhanden, muss die plot2d- Anweisung (die letzten 5 Zeilen) entfernt werden. 167

168 4 Maxima Abbildung 4.34: Bodediagramm 168

169 A Anhang A.1 PDF-Attachments abspeichern Um Dateianlagen aus PDF-Dateien abzuspeichern, gehen Sie folgendermaßen vor: Klicken Sie am linken Rand des Adobe-Reader-Fensters auf den Reiter Anlagen Markieren Sie die gewünschte Datei. Mit einem Klick auf die rechte Maustaste gelangen Sie in das Kontextmenü, hier wählen Sie Anlage speichern

170 A Anhang 170

171 A.2 Zugriffsrechte auf C:\Cygwin unter Windows setzen Abbildung A.1: Kontextmenü Eigenschaften A.2 Zugriffsrechte auf C:\Cygwin unter Windows setzen Markieren Sie das Verzeichnis C:\Cygwin (auf meinem PC habe ich die Installation nach C:\P\Cygwin vorgenommen), klicken Sie mit der rechten Maustaste und wählen Sie im Kontextmenü Eigenschaften, siehe Abb. A

172 A Anhang Abbildung A.2: Spezielle Berechtigungen bearbeiten In der Liste Gruppen oder Benutzernamen markieren Sie Benutzer, um die Berechtigungen anzuzeigen, die jeder beliebige Nutzer hat, der auf Ihrem PC eingerichtet ist. Zusätzlich zu den akzeptablen Lese- und Ausführungsrechten sind für diesen Nutzerkreis spezielle Berechtigungen vorgesehen (Abb. A.2). Diese können mit dem Button Erweitert bearbeitet werden. 172

173 A.2 Zugriffsrechte auf C:\Cygwin unter Windows setzen Abbildung A.3: Erben deaktivieren Um die geerbten Berechtigungen ändern zu können, muss zunächst einmal das Erben deaktiviert werden, siehe Abb. A

174 A Anhang Abbildung A.4: Kopie der bisher geerbten Berechtigungen verwenden Als Basis für neue Berechtigungen werden zunächst einmal die bisher ererbten Berechtigungen verwendet, siehe Abb. A.4. Die bisher geerbten Berechtigungen werden zum aktuellen Verzeichnis kopiert. 174

175 A.2 Zugriffsrechte auf C:\Cygwin unter Windows setzen Abbildung A.5: Berechtigungen löschen Die speziellen Berechtigungen der Gruppe Benutzer können angezeigt werden, indem ein Doppelklick auf den Listeneintrag ausgeführt wird. Dies ist hier nicht dargestellt. Zum Löschen wird der Listeneintrag markiert und der Button Entfernen verwendet, siehe Abb. A

176 A Anhang Abbildung A.6: Bearbeitete Berechtigungen bestätigen Die geänderten Berechtigungen werden mit OK bestätigt, siehe Abb. A

177 A.2 Zugriffsrechte auf C:\Cygwin unter Windows setzen Abbildung A.7: Vollzugriff für Administratoren und System Für Administrator, Administratoren und SYSTEM wird überprüft, dass Vollzugriff möglich ist. Falls noch nicht vorhanden, wird Vollzugriff eingestellt, siehe Abb. A.7. Die Berechtigungen werden mit OK bestätigt. 177

178 A Anhang Abbildung A.8: Berechtigungen auf tmp bearbeiten Nun müssen noch die Berechtigungen auf C:\Cygwin\tmp gesetzt werden, siehe Abb. A.8. Hinweis: Falls Sie alleiniger Nutzer Ihres PC sind, setzen Sie hier die Berechtigung für Nutzer INTERAKTIV auf Vollzugriff um das Verfahren abzukürzen. Andernfalls sind die nachfolgenden Schritte erforderlich. Markieren Sie das Verzeichnis C:\Cygwin\tmp, aus dem Kontextmenü (rechte Maustaste) wählen Sie Eigenschaften, siehe Abb. A

179 A.2 Zugriffsrechte auf C:\Cygwin unter Windows setzen Abbildung A.9: Weitere Berechtigungen hinzufügen Mit dem Button Hinzufügen können Sie weitere Berechtigungen erstellen, siehe Abb. A

180 A Anhang Abbildung A.10: Namen INTERAKTIV eingeben Abbildung A.11: NT-Rolle INTERAKTIV auswählen Geben Sie den Namen ein, für den neue Berechtigungen hinzugefügt werden sollen ( INTERAKTIV ), siehe Abb. A.10. Möglicherweise sind mehrere Benutzer, Gruppen oder Rollen auf dem PC vorhanden, die INTERAKTIV im Namen haben. In diesem Fall erscheint ein Auswahlfenster, siehe Abb. A.11. Hier doppelklicken Sie INTERAKTIV. 180

181 A.2 Zugriffsrechte auf C:\Cygwin unter Windows setzen Abbildung A.12: Berechtigungen zum Lesen und Ausführen erteilen Für den Benutzer INTERAKTIV werden zunächst Berechtigungen zum Lesen und Ausführen eingerichtet, diese werden mit dem Button Übernehmen aktiviert, siehe Abb. A

182 A Anhang Abbildung A.13: Zusätzliche spezielle Berechtigungen einrichten Mit dem Button Erweitert werden spezielle Berechtigungen eingerichtet, siehe Abb. A

183 A.2 Zugriffsrechte auf C:\Cygwin unter Windows setzen Abbildung A.14: Weitere Berechtigungen erteilen Mit dem Button Hinzufügen können weitere Berechtigungen erteilt werden, siehe Abb. A.14. Zunächst wird wieder gefragt, für welchen Nutzer Zugriffsrechte festgelegt werden sollen, hier wird INTERAKTIV eingegeben. In der Auswahlliste wird INTERAKTIV mit Doppelklick ausgewählt, siehe Abb. A.10 auf Seite 180 und A.11 auf Seite

184 A Anhang Abbildung A.15: Berechtigungen auswählen In der Auswahlliste der Berechtigungen werden Dateien erstellen / Daten schreiben und Ordner erstellen / Daten anhängen markiert und mit OK übernommen, siehe Abb. A

185 A.2 Zugriffsrechte auf C:\Cygwin unter Windows setzen Abbildung A.16: Berechtigungen einmal bestätigen... Zurück in der Auflistung aller Berechtigungen bestätigen Sie die Änderungen nochmals mit OK, siehe Abb. A

Kurzeinführung in GNUPLOT

Kurzeinführung in GNUPLOT Kurzeinführung in GNUPLOT Johannes Schneider 9.12.2004 1 Einführung Gnuplot verfügt über ein gutes Hilfe-System: help Kommando Es ist ein sehr einfaches Programm, mit dem sich leicht Funktionen oder Daten

Mehr

Einführung in QtiPlot

Einführung in QtiPlot HUWagner und Julia Bek Einführung in QtiPlot 30. Juni 2011 1/13 Einführung in QtiPlot Mit Bezug auf das Liebig-Lab Praktikum an der Ludwig-Maximilians-Universität München Inhaltsverzeichnis 1 Programmeinführung

Mehr

Tutorial: Gnumeric installieren und Jahres-Kostenübersicht erstellen mit Diagramm

Tutorial: Gnumeric installieren und Jahres-Kostenübersicht erstellen mit Diagramm Gnumeric Mittwoch, 8. Mai 2013 01:05 Tutorial: Gnumeric installieren und Jahres-Kostenübersicht erstellen mit Diagramm In diesem Tutorial will ich Ihnen zeigen, wie man Gnumeric installiert und wie man

Mehr

ec@ros2-installer ecaros2 Installer procar informatik AG 1 Stand: FS 09/2012 Eschenweg 7 64331 Weiterstadt

ec@ros2-installer ecaros2 Installer procar informatik AG 1 Stand: FS 09/2012 Eschenweg 7 64331 Weiterstadt ecaros2 Installer procar informatik AG 1 Stand: FS 09/2012 Inhaltsverzeichnis 1 Download des ecaros2-installer...3 2 Aufruf des ecaros2-installer...3 2.1 Konsolen-Fenster (Windows)...3 2.2 Konsolen-Fenster

Mehr

Umwandeln und Exportieren von Adobe-Illustrator-Dateien in Illustrator für Artcut

Umwandeln und Exportieren von Adobe-Illustrator-Dateien in Illustrator für Artcut Umwandeln und Exportieren von Adobe-Illustrator-Dateien in Illustrator für Artcut Unsere mitgelieferte Fonts & Grafik CD haben wir vom Hersteller des Plotters zur Verfügung gestellt bekommen. Die darauf

Mehr

= {} +{} = {} Widerstand Kondensator Induktivität

= {} +{} = {} Widerstand Kondensator Induktivität Bode-Diagramme Selten misst man ein vorhandenes Zweipolnetzwerk aus, um mit den Daten Amplituden- und Phasengang zu zeichnen. Das kommt meistens nur vor wenn Filter abgeglichen werden müssen oder man die

Mehr

FMGate Installation & Benutzung 2016-04

FMGate Installation & Benutzung 2016-04 FMGate Installation & Benutzung 2016-04 Downloads Stand 2016-04. Transit und FMGate werden kontinuierlich weiterentwickelt. Aktuelle Service Packs, Installationsanleitungen, Benutzerdokumentationen und

Mehr

Handbuch Fischertechnik-Einzelteiltabelle V3.7.3

Handbuch Fischertechnik-Einzelteiltabelle V3.7.3 Handbuch Fischertechnik-Einzelteiltabelle V3.7.3 von Markus Mack Stand: Samstag, 17. April 2004 Inhaltsverzeichnis 1. Systemvorraussetzungen...3 2. Installation und Start...3 3. Anpassen der Tabelle...3

Mehr

Menü Macro. WinIBW2-Macros unter Windows7? Macros aufnehmen

Menü Macro. WinIBW2-Macros unter Windows7? Macros aufnehmen Menü Macro WinIBW2-Macros unter Windows7?... 1 Macros aufnehmen... 1 Menübefehle und Schaltflächen in Macros verwenden... 4 Macros bearbeiten... 4 Macros löschen... 5 Macro-Dateien... 5 Macros importieren...

Mehr

Neuinstallation moveit@iss+ Einzelplatzversion

Neuinstallation moveit@iss+ Einzelplatzversion Neuinstallation moveit@iss+ Einzelplatzversion Hinweis: Gerne bietet Ihnen moveit Software die Durchführung einer lokalen Neuinstallation zu einem günstigen Pauschalpreis an. Die rasche und professionelle

Mehr

Hinweise zur Datensicherung für die - Prüfmittelverwaltung - Inhalt

Hinweise zur Datensicherung für die - Prüfmittelverwaltung - Inhalt Hinweise zur Datensicherung für die - Prüfmittelverwaltung - Inhalt 1. Vorbetrachtungen... 2 2. Die Installation... 2 3. Einstellungen - Erstellung der Verknüpfung... 3 3.1 Benutzung des Konfigurationsprogramms

Mehr

Historical Viewer. zu ETC5000 Benutzerhandbuch 312/15

Historical Viewer. zu ETC5000 Benutzerhandbuch 312/15 Historical Viewer zu ETC5000 Benutzerhandbuch 312/15 Inhaltsverzeichnis 1 Allgemeine Hinweise... 3 1.1 Dokumentation...3 2 Installation... 3 3 Exportieren der Logdatei aus dem ETC 5000... 3 4 Anlegen eines

Mehr

Stift-Karussell in M-Plot einrichten

Stift-Karussell in M-Plot einrichten Einsteiger Fortgeschrittene Profis markus.meinl@m-quest.ch Version 1.0 Voraussetzungen für diesen Workshop Die M-Quest Suite 2005 oder höher ist auf einem Rechner installiert Das Produkt M-Plot Suite ist

Mehr

Anleitung zur Verwendung der VVW-Word-Vorlagen

Anleitung zur Verwendung der VVW-Word-Vorlagen Anleitung zur Verwendung der VVW-Word-Vorlagen v1.0. Jun-15 1 1 Vorwort Sehr geehrte Autorinnen und Autoren, wir haben für Sie eine Dokumentenvorlage für Microsoft Word entwickelt, um Ihnen die strukturierte

Mehr

Version 0.3. Installation von MinGW und Eclipse CDT

Version 0.3. Installation von MinGW und Eclipse CDT Version 0.3 Installation von MinGW und Eclipse CDT 1. Stellen Sie fest, ob Sie Windows in der 32 Bit Version oder in der 64 Bit Version installiert haben. 2. Prüfen Sie, welche Java Runtime vorhanden ist.

Mehr

teamsync Kurzanleitung

teamsync Kurzanleitung 1 teamsync Kurzanleitung Version 4.0-19. November 2012 2 1 Einleitung Mit teamsync können Sie die Produkte teamspace und projectfacts mit Microsoft Outlook synchronisieren.laden Sie sich teamsync hier

Mehr

Dokumentation. Gnuplot

Dokumentation. Gnuplot Dokumentation Gnuplot Inhaltsverzeichnis 1 Einführung 1.1 Allgemeine Beschreibung des Programms 1.2 Installation des Programms 1.3 Deinstallation des Programms 2 Hauptteil (Befehle, Einstellungen und Anwendungsbeispiele)

Mehr

Erstellen von x-y-diagrammen in OpenOffice.calc

Erstellen von x-y-diagrammen in OpenOffice.calc Erstellen von x-y-diagrammen in OpenOffice.calc In dieser kleinen Anleitung geht es nur darum, aus einer bestehenden Tabelle ein x-y-diagramm zu erzeugen. D.h. es müssen in der Tabelle mindestens zwei

Mehr

SRH - Kurzinformation

SRH - Kurzinformation SRH - Kurzinformation Dieses Dokument gibt eine Übersicht über das Shockley/Read/Hall-Programm, im folgenden SRH- Programm genannt. Bei dem SRH-Programm handelt es sich um ein Java Programm, welches in

Mehr

MdtTax Programm. Programm Dokumentation. Datenbank Schnittstelle. Das Hauptmenü. Die Bedienung des Programms geht über das Hauptmenü.

MdtTax Programm. Programm Dokumentation. Datenbank Schnittstelle. Das Hauptmenü. Die Bedienung des Programms geht über das Hauptmenü. Programm Die Bedienung des Programms geht über das Hauptmenü. Datenbank Schnittstelle Die Datenbank wir über die Datenbank- Schnittstelle von Office angesprochen. Von Office 2000-2003 gab es die Datenbank

Mehr

Es sollte die MS-DOS Eingabeaufforderung starten. Geben Sie nun den Befehl javac ein.

Es sollte die MS-DOS Eingabeaufforderung starten. Geben Sie nun den Befehl javac ein. Schritt 1: Installation des Javacompilers JDK. Der erste Start mit Eclipse Bevor Sie den Java-Compiler installieren sollten Sie sich vergewissern, ob er eventuell schon installiert ist. Gehen sie wie folgt

Mehr

Stammdatenanlage über den Einrichtungsassistenten

Stammdatenanlage über den Einrichtungsassistenten Stammdatenanlage über den Einrichtungsassistenten Schritt für Schritt zur fertig eingerichteten Hotelverwaltung mit dem Einrichtungsassistenten Bitte bereiten Sie sich, bevor Sie starten, mit der Checkliste

Mehr

Über die Internetseite www.cadwork.de Hier werden unter Download/aktuelle Versionen die verschiedenen Module als zip-dateien bereitgestellt.

Über die Internetseite www.cadwork.de Hier werden unter Download/aktuelle Versionen die verschiedenen Module als zip-dateien bereitgestellt. Internet, Codes und Update ab Version 13 Um Ihnen einen möglichst schnellen Zugang zu den aktuellsten Programmversionen zu ermöglichen liegen Update-Dateien für Sie im Internet bereit. Es gibt drei Möglichkeiten

Mehr

Anzeige von eingescannten Rechnungen

Anzeige von eingescannten Rechnungen Anzeige von eingescannten Rechnungen Wenn Sie sich zu einer Eingangsrechnung die eingescannte Originalrechnung ansehen möchten, wählen Sie als ersten Schritt aus Ihrem Benutzermenü unter dem Kapitel Eingangsrechnung

Mehr

Technische Voraussetzungen Nexory Printer

Technische Voraussetzungen Nexory Printer Nexory GmbH Clara-Zetkin-Straße 3 07545 Gera Telefon +49 365 20 500 520 Fax +49 365 20 500 540 info@nexory.com www.nexory.com Technische Voraussetzungen Nexory Printer Seite 1 von 12 Inhalt 1 Nexory Printer...

Mehr

Dokumentation IBIS Monitor

Dokumentation IBIS Monitor Dokumentation IBIS Monitor Seite 1 von 16 11.01.06 Inhaltsverzeichnis 1. Allgemein 2. Installation und Programm starten 3. Programmkonfiguration 4. Aufzeichnung 4.1 Aufzeichnung mitschneiden 4.1.1 Inhalt

Mehr

Der digitale. Workflow Workflow. [PDF-Erstellung aus CorelDraw für Windows]

Der digitale. Workflow Workflow. [PDF-Erstellung aus CorelDraw für Windows] Der digitale Workflow Workflow [PDF-Erstellung aus CorelDraw für Windows] 2 Der Digitale Workflow schnell und wirtschaftlich bei höchster Qualität Inhalt Der digitale Workflow gibt die optimale Voraussetzung

Mehr

Anleitung. Einrichtung vom HotSync Manager für den Palm 1550 bis 1800 unter Windows 7. Palm SPT 1500 / 1550 Palm SPT 1700 / 1800. Bits & Bytes Seite 1

Anleitung. Einrichtung vom HotSync Manager für den Palm 1550 bis 1800 unter Windows 7. Palm SPT 1500 / 1550 Palm SPT 1700 / 1800. Bits & Bytes Seite 1 Anleitung Einrichtung vom HotSync Manager für den Palm 1550 bis 1800 unter Windows 7 Palm SPT 1500 / 1550 Palm SPT 1700 / 1800 Bits & Bytes Seite 1 1. Palm einrichten Für die nächsten Schritte nehmen Sie

Mehr

Bedienungsanleitung Anlassteilnehmer (Vereinslisten)

Bedienungsanleitung Anlassteilnehmer (Vereinslisten) Bedienungsanleitung Anlassteilnehmer Dieses Programm ist speziell für Vereine entworfen. Es ist lizenzfrei verwendbar und gratis. Das Programm ist mit Excel 2010 erstellt worden und enthält VBA Programmierungen,

Mehr

Schmalkalden Elektrotechnik. Einführung in GnuPlot, Scilab und Maxima

Schmalkalden Elektrotechnik. Einführung in GnuPlot, Scilab und Maxima FH Fak. Schmalkalden Elektrotechnik Einführung in GnuPlot, Scilab und Maxima Inhaltsverzeichnis 1 Übersicht 11 2 GnuPlot 13 2.1 Installation.............................. 13 2.1.1 Installation unter Windows..................

Mehr

Fraunhofer FOKUS ADPSW-INSTALLATION. Abiturdaten-Prüfsoftware. Version 3.0.1, 7. Mai 2013 FRAUNHOFER-INSTITUT FÜR OFFENE KOMMUNIKATIONSSYSTEME FOKUS

Fraunhofer FOKUS ADPSW-INSTALLATION. Abiturdaten-Prüfsoftware. Version 3.0.1, 7. Mai 2013 FRAUNHOFER-INSTITUT FÜR OFFENE KOMMUNIKATIONSSYSTEME FOKUS Fraunhofer FOKUS FRAUNHOFER-INSTITUT FÜR OFFENE KOMMUNIKATIONSSYSTEME FOKUS ADPSW-INSTALLATION Abiturdaten-Prüfsoftware Version 3.0.1, 7. Mai 2013 IN ZUSAMMENARBEIT MIT ADPSW-INSTALLATION Abiturdaten-Prüfsoftware

Mehr

Erzeugung eines Premiumadress Datamatrix-Codes mit Hilfe der Schriftart Deutsche Post Premiumadress

Erzeugung eines Premiumadress Datamatrix-Codes mit Hilfe der Schriftart Deutsche Post Premiumadress Erzeugung eines Premiumadress Datamatrix-Codes mit Hilfe der Schriftart Deutsche Post Premiumadress Installation der Schriftart Deutsche Post Premiumadress auf dem lokalen Rechner (einmalig) Starten Sie

Mehr

ID VisitControl. Dokumentation Administration. 2015 Equitania Software GmbH cmc Gruppe Seite 1

ID VisitControl. Dokumentation Administration. 2015 Equitania Software GmbH cmc Gruppe Seite 1 ID VisitControl Dokumentation Administration 2015 Equitania Software GmbH cmc Gruppe Seite 1 Inhalt 1. Anmeldung... 3 2. Benutzer anlegen oder bearbeiten... 4 2.1. Benutzer aus LDAP Anbindung importieren/updaten...

Mehr

Konfiguration WinCard Pro TwixTel

Konfiguration WinCard Pro TwixTel Konfiguration WinCard Pro TwixTel Ist die Telefon-CD TwixTel installiert, wird sie von WinCard Pro automatisch erkannt... Abb. 1 Rechts auf der Recorderleiste erscheinen dann zwei Tastenfelder, über die

Mehr

Zahlen auf einen Blick

Zahlen auf einen Blick Zahlen auf einen Blick Nicht ohne Grund heißt es: Ein Bild sagt mehr als 1000 Worte. Die meisten Menschen nehmen Informationen schneller auf und behalten diese eher, wenn sie als Schaubild dargeboten werden.

Mehr

Bilder für LaTeX mit GIMP. Hartmut Noack <zettberlin@linuxuse.de> Frank Hofmann <frank.hofmann@efho.de>

Bilder für LaTeX mit GIMP. Hartmut Noack <zettberlin@linuxuse.de> Frank Hofmann <frank.hofmann@efho.de> Bilder für LaTeX mit GIMP Hartmut Noack Frank Hofmann 1 Grundlagen LaTeX ist ein ausgereiftes Textsatzsystem. Es erstellt Dokumente aus einfachen Textdateien.

Mehr

Ihr IT-Administrator oder unser Support wird Ihnen im Zweifelsfall gerne weiterhelfen.

Ihr IT-Administrator oder unser Support wird Ihnen im Zweifelsfall gerne weiterhelfen. Dieses Dokument beschreibt die nötigen Schritte für den Umstieg des von AMS.4 eingesetzten Firebird-Datenbankservers auf die Version 2.5. Beachten Sie dabei, dass diese Schritte nur bei einer Server-Installation

Mehr

Octave für Windows. Leichte Variante (kein Cygwin installiert)

Octave für Windows. Leichte Variante (kein Cygwin installiert) 1 of 9 09/08/2006 11:05 AM Octave für Windows Octave läuft unter den 32-Bit Versionen von Windows, also unter Windows 9x/NT/Me/2000 und XP. Auf dieser Seite geben wir vier Varianten an, um Octave unter

Mehr

Artikel Schnittstelle über CSV

Artikel Schnittstelle über CSV Artikel Schnittstelle über CSV Sie können Artikeldaten aus Ihrem EDV System in das NCFOX importieren, dies geschieht durch eine CSV Schnittstelle. Dies hat mehrere Vorteile: Zeitersparnis, die Karteikarte

Mehr

ECDL Europäischer Computer Führerschein. Jan Götzelmann. 1. Ausgabe, Juni 2014 ISBN 978-3-86249-544-3

ECDL Europäischer Computer Führerschein. Jan Götzelmann. 1. Ausgabe, Juni 2014 ISBN 978-3-86249-544-3 ECDL Europäischer Computer Führerschein Jan Götzelmann 1. Ausgabe, Juni 2014 Modul Präsentation Advanced (mit Windows 8.1 und PowerPoint 2013) Syllabus 2.0 ISBN 978-3-86249-544-3 ECDLAM6-13-2 3 ECDL -

Mehr

Handbuch ECDL 2003 Professional Modul 1: Textverarbeitung Absätze formatieren

Handbuch ECDL 2003 Professional Modul 1: Textverarbeitung Absätze formatieren Handbuch ECDL 2003 Professional Modul 1: Textverarbeitung Absätze formatieren Dateiname: ecdl_p1_01_02_documentation.doc Speicherdatum: 08.12.2004 ECDL 2003 Professional Modul 1 Textverarbeitung - Absätze

Mehr

mobilepoi 0.91 Demo Version Anleitung Das Software Studio Christian Efinger Erstellt am 21. Oktober 2005

mobilepoi 0.91 Demo Version Anleitung Das Software Studio Christian Efinger Erstellt am 21. Oktober 2005 Das Software Studio Christian Efinger mobilepoi 0.91 Demo Version Anleitung Erstellt am 21. Oktober 2005 Kontakt: Das Software Studio Christian Efinger ce@efinger-online.de Inhalt 1. Einführung... 3 2.

Mehr

Installation OMNIKEY 3121 USB

Installation OMNIKEY 3121 USB Installation OMNIKEY 3121 USB Vorbereitungen Installation PC/SC Treiber CT-API Treiber Einstellungen in Starke Praxis Testen des Kartenlesegeräts Vorbereitungen Bevor Sie Änderungen am System vornehmen,

Mehr

Installation von Druckern auf dem ZOVAS-Notebook. 1. Der Drucker ist direkt mit dem Notebook verbunden

Installation von Druckern auf dem ZOVAS-Notebook. 1. Der Drucker ist direkt mit dem Notebook verbunden Installation von Druckern auf dem ZOVAS-Notebook Bei der Installation eines Druckers muss grundsätzlich unterschieden werden, ob der Drucker direkt am Notebook angeschlossen ist oder ob ein Drucker verwendet

Mehr

teischl.com Software Design & Services e.u. office@teischl.com www.teischl.com/booknkeep www.facebook.com/booknkeep

teischl.com Software Design & Services e.u. office@teischl.com www.teischl.com/booknkeep www.facebook.com/booknkeep teischl.com Software Design & Services e.u. office@teischl.com www.teischl.com/booknkeep www.facebook.com/booknkeep 1. Erstellen Sie ein neues Rechnungsformular Mit book n keep können Sie nun Ihre eigenen

Mehr

Microsoft Access 2010 Navigationsformular (Musterlösung)

Microsoft Access 2010 Navigationsformular (Musterlösung) Hochschulrechenzentrum Justus-Liebig-Universität Gießen Microsoft Access 2010 Navigationsformular (Musterlösung) Musterlösung zum Navigationsformular (Access 2010) Seite 1 von 5 Inhaltsverzeichnis Vorbemerkung...

Mehr

Downloadfehler in DEHSt-VPSMail. Workaround zum Umgang mit einem Downloadfehler

Downloadfehler in DEHSt-VPSMail. Workaround zum Umgang mit einem Downloadfehler Downloadfehler in DEHSt-VPSMail Workaround zum Umgang mit einem Downloadfehler Downloadfehler bremen online services GmbH & Co. KG Seite 2 Inhaltsverzeichnis Vorwort...3 1 Fehlermeldung...4 2 Fehlerbeseitigung...5

Mehr

Vorgehensweise bei Lastschriftverfahren

Vorgehensweise bei Lastschriftverfahren Vorgehensweise bei Lastschriftverfahren Voraussetzung hierfür sind nötige Einstellungen im ControlCenter. Sie finden dort unter Punkt 29 die Möglichkeit bis zu drei Banken für das Lastschriftverfahren

Mehr

SCHRITT 1: Öffnen des Bildes und Auswahl der Option»Drucken«im Menü»Datei«...2. SCHRITT 2: Angeben des Papierformat im Dialog»Drucklayout«...

SCHRITT 1: Öffnen des Bildes und Auswahl der Option»Drucken«im Menü»Datei«...2. SCHRITT 2: Angeben des Papierformat im Dialog»Drucklayout«... Drucken - Druckformat Frage Wie passt man Bilder beim Drucken an bestimmte Papierformate an? Antwort Das Drucken von Bildern ist mit der Druckfunktion von Capture NX sehr einfach. Hier erklären wir, wie

Mehr

Datei Erweiterungen Anzeigen!

Datei Erweiterungen Anzeigen! Einleitung Beim Kauf eines PCs werden die Dateierweiterungen sowie einige Dateien nicht angezeigt. Grund: Es gibt sehr viele Dateien die für das System ganz wichtig sind. Diese Dateien und auch Ordner

Mehr

Erstellen einer Collage. Zuerst ein leeres Dokument erzeugen, auf dem alle anderen Bilder zusammengefügt werden sollen (über [Datei] > [Neu])

Erstellen einer Collage. Zuerst ein leeres Dokument erzeugen, auf dem alle anderen Bilder zusammengefügt werden sollen (über [Datei] > [Neu]) 3.7 Erstellen einer Collage Zuerst ein leeres Dokument erzeugen, auf dem alle anderen Bilder zusammengefügt werden sollen (über [Datei] > [Neu]) Dann Größe des Dokuments festlegen beispielsweise A4 (weitere

Mehr

CAD Warehouse- Verbindungen. Plattformspezifische Darstellung

CAD Warehouse- Verbindungen. Plattformspezifische Darstellung CAD Warehouse- Verbindungen Plattformspezifische Darstellung Tipps & Tricks Dezember 2010 2010 Intergraph SG&I Deutschland GmbH. Alle Rechte vorbehalten. Der Inhalt dieses Dokuments ist urheberrechtlich

Mehr

Diagramm aus mehreren Tabellenblättern

Diagramm aus mehreren Tabellenblättern Diagramm aus mehreren Tabellenblättern Es passiert immer wieder, dass du ein Diagramm brauchst um Daten aus mehreren Tabellen darzustellen. Nehmen wir an, du hast eine Excel-Datei erstellt und du möchtest

Mehr

Anleitung zur Installation von Tun EMUL 12.0

Anleitung zur Installation von Tun EMUL 12.0 Anleitung zur Installation von Tun EMUL 12.0 Anleitung zur Installation von Tun EMUL 12.0... 1 1. Vorbereitung... 2 1.1 folgende Dinge müssen vor Beginn der eigentlichen Installation vorhanden sein:...

Mehr

Kennen, können, beherrschen lernen was gebraucht wird www.doelle-web.de

Kennen, können, beherrschen lernen was gebraucht wird www.doelle-web.de Inhaltsverzeichnis Inhaltsverzeichnis... 1 Grundlagen... 2 Hyperlinks innerhalb einer Datei... 2 Verweisziel definieren... 2 Einen Querverweis setzen... 3 Verschiedene Arten von Hyperlinks... 3 Einfache

Mehr

Medea3 Print-Client (m3_print)

Medea3 Print-Client (m3_print) Medea3 Print-Client (m3_print) Installationsanleitung Installationsanleitung m3_print.exe...2 1. Installieren von Ghostskript und Ghostview...2 1. Ghostskript...2 2. Ghostview...3 2. Kopieren des Print-Client-Programms...6

Mehr

WinWerk. Prozess 6a Rabatt gemäss Vorjahresverbrauch. KMU Ratgeber AG. Inhaltsverzeichnis. Im Ifang 16 8307 Effretikon

WinWerk. Prozess 6a Rabatt gemäss Vorjahresverbrauch. KMU Ratgeber AG. Inhaltsverzeichnis. Im Ifang 16 8307 Effretikon WinWerk Prozess 6a Rabatt gemäss Vorjahresverbrauch 8307 Effretikon Telefon: 052-740 11 11 Telefax: 052-740 11 71 E-Mail info@kmuratgeber.ch Internet: www.winwerk.ch Inhaltsverzeichnis 1 Ablauf der Rabattverarbeitung...

Mehr

Einführung in TexMaker

Einführung in TexMaker Einführung in TexMaker 23. November 2007 TexMaker ist ein ist ein freier Texteditor für LA TE X-Dokumente unter Windows. Mit diesem Editor lassen sich ohne große Schwierigkeiten *.tex-dokumente aufrufen,

Mehr

Wie halte ich Ordnung auf meiner Festplatte?

Wie halte ich Ordnung auf meiner Festplatte? Wie halte ich Ordnung auf meiner Festplatte? Was hältst du von folgender Ordnung? Du hast zu Hause einen Schrank. Alles was dir im Wege ist, Zeitungen, Briefe, schmutzige Wäsche, Essensreste, Küchenabfälle,

Mehr

Elexis-BlueEvidence-Connector

Elexis-BlueEvidence-Connector Elexis-BlueEvidence-Connector Gerry Weirich 26. Oktober 2012 1 Einführung Dieses Plugin dient dazu, den Status Hausarztpatient zwischen der BlueEvidence- Anwendung und Elexis abzugleichen. Das Plugin markiert

Mehr

Beschreibung der Einstellungen zum Drucken aus TRIC DB mit BricsCad ab Version V5

Beschreibung der Einstellungen zum Drucken aus TRIC DB mit BricsCad ab Version V5 Beschreibung der Einstellungen zum Drucken aus TRIC DB mit BricsCad ab Version V5 Ausgabe auf Plotter / Drucker Soll das Ergebnis Ihrer Arbeit ausgedruckt werden, wählen Sie im Hauptmenü [DATEI] die entsprechende

Mehr

Gruppenrichtlinien und Softwareverteilung

Gruppenrichtlinien und Softwareverteilung Gruppenrichtlinien und Softwareverteilung Ergänzungen zur Musterlösung Bitte lesen Sie zuerst die gesamte Anleitung durch! Vorbemerkung: Die Begriffe OU (Organizational Unit) und Raum werden in der folgenden

Mehr

Lineare Funktionen. 1 Proportionale Funktionen 3 1.1 Definition... 3 1.2 Eigenschaften... 3. 2 Steigungsdreieck 3

Lineare Funktionen. 1 Proportionale Funktionen 3 1.1 Definition... 3 1.2 Eigenschaften... 3. 2 Steigungsdreieck 3 Lineare Funktionen Inhaltsverzeichnis 1 Proportionale Funktionen 3 1.1 Definition............................... 3 1.2 Eigenschaften............................. 3 2 Steigungsdreieck 3 3 Lineare Funktionen

Mehr

Stundenerfassung Version 1.8 Anleitung Arbeiten mit Replikaten

Stundenerfassung Version 1.8 Anleitung Arbeiten mit Replikaten Stundenerfassung Version 1.8 Anleitung Arbeiten mit Replikaten 2008 netcadservice GmbH netcadservice GmbH Augustinerstraße 3 D-83395 Freilassing Dieses Programm ist urheberrechtlich geschützt. Eine Weitergabe

Mehr

Kapitel 7 - Wägungen

Kapitel 7 - Wägungen Kapitel 7 - Wägungen 7.1 Übersicht der Wägefunktionen Im WinScale Programm können folgende Wägefunktionen durchgeführt werden: - Erstwägungen - Zweitwägungen - Kontrollwägungen Diese Funktionen können

Mehr

Wie Sie mit Mastern arbeiten

Wie Sie mit Mastern arbeiten Wie Sie mit Mastern arbeiten Was ist ein Master? Einer der großen Vorteile von EDV besteht darin, dass Ihnen der Rechner Arbeit abnimmt. Diesen Vorteil sollten sie nutzen, wo immer es geht. In PowerPoint

Mehr

Text Formatierung in Excel

Text Formatierung in Excel Text Formatierung in Excel Das Aussehen des Textes einer oder mehrerer Zellen kann in Excel über verschiedene Knöpfe beeinflusst werden. Dazu zuerst die betroffenen Zelle(n) anwählen und danach den entsprechenden

Mehr

Tutorial Einrichten von TurboCAD

Tutorial Einrichten von TurboCAD Tutorial Einrichten von TurboCAD Alle Informationen und Beschreibungen der Einstellungen in diesem Tutorial beziehen sich auf die Version TurboCAD18 Pro Platinum Tutorialversion 1.0a Allgemeine Hinweise

Mehr

1. Aktionen-Palette durch "Fenster /Aktionen ALT+F9" öffnen. 2. Anlegen eines neuen Set über "Neues Set..." (über das kleine Dreieck zu erreichen)

1. Aktionen-Palette durch Fenster /Aktionen ALT+F9 öffnen. 2. Anlegen eines neuen Set über Neues Set... (über das kleine Dreieck zu erreichen) Tipp: Aktionen (c) 2005 Thomas Stölting, Stand: 25.4. 2005 In Photoshop werden häufig immer wieder die gleichen Befehlssequenzen benötigt. Um sie nicht jedesmal manuell neu eingeben zu müssen, können diese

Mehr

Um in das Administrationsmenü zu gelangen ruft Ihr Eure Seite auf mit dem Zusatz?mod=admin :

Um in das Administrationsmenü zu gelangen ruft Ihr Eure Seite auf mit dem Zusatz?mod=admin : WebsoziCMS 2.8.9 Kurzanleitung Stand: 10.04.2008 Andreas Kesting Diese Kurzanleitung zum WebsoziCMS 2.8.9 beschränkt beschränkt sich auf die häufigsten Tätigkeiten beim Administrieren Eurer Homepage: -

Mehr

Informationen zur Verwendung von Visual Studio und cmake

Informationen zur Verwendung von Visual Studio und cmake Inhaltsverzeichnis Informationen zur Verwendung von Visual Studio und cmake... 2 Erste Schritte mit Visual Studio... 2 Einstellungen für Visual Studio 2013... 2 Nutzung von cmake... 6 Installation von

Mehr

PDF-Druck und PDF-Versand mit PV:MANAGER

PDF-Druck und PDF-Versand mit PV:MANAGER PDF-Druck und PDF-Versand mit PV:MANAGER Installation und Erste Schritte Limex Computer GmbH. Alle Rechte vorbehalten Übersicht Mit der Version 5.4 bietet PV:MANAGER eine neue, direkte Unterstützung für

Mehr

Abbildung 8.1: Problem mit dem Zertifikat. 2. Melden Sie sich am imanager als admin an. Die Anmeldung erfolgt ohne Eingabe des Kontextes: 8-2

Abbildung 8.1: Problem mit dem Zertifikat. 2. Melden Sie sich am imanager als admin an. Die Anmeldung erfolgt ohne Eingabe des Kontextes: 8-2 Abbildung 8.1: Problem mit dem Zertifikat 2. Melden Sie sich am imanager als admin an. Die Anmeldung erfolgt ohne Eingabe des Kontextes: 8-2 Drucken im lokalen Netz Abbildung 8.2.: imanager-anmeldung 3.

Mehr

Einführung zum Arbeiten mit Microsoft Visual C++ 2010 Express Edition

Einführung zum Arbeiten mit Microsoft Visual C++ 2010 Express Edition In den nachfolgenden Schritten finden Sie beschrieben, wie Sie in der Entwicklungsumgebung Microsoft Visual Studio 2010 eine Projektmappe, ein Projekt und einen ersten Quellcode erstellen, diesen kompilieren,

Mehr

Vorstellung Microsoft Mathematics 4.0

Vorstellung Microsoft Mathematics 4.0 Vorstellung Microsoft Mathematics 4.0 Inhaltsverzeichnis Plotten einer Funktion... 3 Lösen von Gleichungen... 5 Lösen von Gleichungssystemen... 6 Der Dreieck-Assistent... 8 Vergleich von Mathematics mit

Mehr

Rechenzentrum der Ruhr-Universität Bochum. Integration von egroupware an der RUB in Outlook 2010 mit Funambol

Rechenzentrum der Ruhr-Universität Bochum. Integration von egroupware an der RUB in Outlook 2010 mit Funambol Rechenzentrum der Ruhr-Universität Bochum Integration von egroupware an der RUB in Outlook 2010 mit Funambol Um die Daten in Ihrem egroupware-account (Adressen, Termine, etc.) in Outlook zu verwenden,

Mehr

1. Melden Sie sich als Administrator an und wechseln Sie zum Desktop

1. Melden Sie sich als Administrator an und wechseln Sie zum Desktop Anleitung für die Erstinstallation von ZensTabS1 auf einem Windows 8 PC. Bei der Erstinstallation von ZensTabS1 versucht der Installer als Voraussetzung das MS Framework 1.1 zu installieren, falls es seither

Mehr

Konfiguration der Messkanäle. Konfiguration der Zeitachse. Abb. 3: Konfigurationsmenü des Sensoreingangs A. Abb. 4: Messparameter Konfigurationsmenü

Konfiguration der Messkanäle. Konfiguration der Zeitachse. Abb. 3: Konfigurationsmenü des Sensoreingangs A. Abb. 4: Messparameter Konfigurationsmenü Anleitung zum Programm CASSY Lab für den Versuch E12 Starten Sie das Programm CASSY Lab durch Doppelklick auf das Icon auf dem Windows- Desktop. Es erscheint ein Fenster mit Lizensierungsinformationen,

Mehr

Informatik Kurs Simulation. Hilfe für den Consideo Modeler

Informatik Kurs Simulation. Hilfe für den Consideo Modeler Hilfe für den Consideo Modeler Consideo stellt Schulen den Modeler kostenlos zur Verfügung. Wenden Sie sich an: http://consideo-modeler.de/ Der Modeler ist ein Werkzeug, das nicht für schulische Zwecke

Mehr

Gleichungen Lösen. Ein graphischer Blick auf Gleichungen

Gleichungen Lösen. Ein graphischer Blick auf Gleichungen Gleichungen Lösen Was bedeutet es, eine Gleichung zu lösen? Was ist überhaupt eine Gleichung? Eine Gleichung ist, grundsätzlich eine Aussage über zwei mathematische Terme, dass sie gleich sind. Ein Term

Mehr

Kleine Einführung in die lineare Regression mit Excel

Kleine Einführung in die lineare Regression mit Excel Kleine Einführung in die lineare Regression mit Excel Grundoperationen mit Excel Werte mit Formeln berechnen Bsp.: Mittelwert und Standardabweichung Das $-Zeichen Beispielauswertung eines Versuches Daten

Mehr

Dokumentation. estat Version 2.0

Dokumentation. estat Version 2.0 Dokumentation estat Version 2.0 Installation Die Datei estat.xla in beliebiges Verzeichnis speichern. Im Menü Extras AddIns... Durchsuchen die Datei estat.xla auswählen. Danach das Auswahlhäkchen beim

Mehr

Satzhilfen Publisher Seite Einrichten

Satzhilfen Publisher Seite Einrichten Satzhilfen Publisher Seite Einrichten Es gibt verschiedene Möglichkeiten die Seite einzurichten, wir fangen mit der normalen Version an, Seite einrichten auf Format A5 Wählen Sie zunächst Datei Seite einrichten,

Mehr

COSA. Portal Client Installation JAVA J2SE / JRE Version 1.4.2_09, Stand 01.08.2005-08-16. Copyright

COSA. Portal Client Installation JAVA J2SE / JRE Version 1.4.2_09, Stand 01.08.2005-08-16. Copyright Portal Client Installation JAVA J2SE / JRE Version 1.4.2_09, Stand 01.08.2005-08-16 Änderungen in Dokumentation und Software sind vorbehalten! Copyright Copyright 2005 COSA GmbH Alle Rechte vorbehalten.

Mehr

Sie werden sehen, dass Sie für uns nur noch den direkten PDF-Export benötigen. Warum?

Sie werden sehen, dass Sie für uns nur noch den direkten PDF-Export benötigen. Warum? Leitfaden zur Druckdatenerstellung Inhalt: 1. Download und Installation der ECI-Profile 2. Farbeinstellungen der Adobe Creative Suite Bitte beachten! In diesem kleinen Leitfaden möchten wir auf die Druckdatenerstellung

Mehr

5 DATEN. 5.1. Variablen. Variablen können beliebige Werte zugewiesen und im Gegensatz zu

5 DATEN. 5.1. Variablen. Variablen können beliebige Werte zugewiesen und im Gegensatz zu Daten Makro + VBA effektiv 5 DATEN 5.1. Variablen Variablen können beliebige Werte zugewiesen und im Gegensatz zu Konstanten jederzeit im Programm verändert werden. Als Variablen können beliebige Zeichenketten

Mehr

FuxMedia Programm im Netzwerk einrichten am Beispiel von Windows 7

FuxMedia Programm im Netzwerk einrichten am Beispiel von Windows 7 FuxMedia Programm im Netzwerk einrichten am Beispiel von Windows 7 Die Installation der FuxMedia Software erfolgt erst NACH Einrichtung des Netzlaufwerks! Menüleiste einblenden, falls nicht vorhanden Die

Mehr

1 Dokumentenmanagement

1 Dokumentenmanagement 1 Dokumentenmanagement Das Dokumentenmanagement des GV Büro-System ist ein äußerst leistungsfähiges und mächtiges Tool. Es ist in der Lage, nahezu sämtliche Arten von Dokumenten auf einfache Art und Weise

Mehr

Lehrer: Einschreibemethoden

Lehrer: Einschreibemethoden Lehrer: Einschreibemethoden Einschreibemethoden Für die Einschreibung in Ihren Kurs gibt es unterschiedliche Methoden. Sie können die Schüler über die Liste eingeschriebene Nutzer Ihrem Kurs zuweisen oder

Mehr

Was ist PDF? Portable Document Format, von Adobe Systems entwickelt Multiplattformfähigkeit,

Was ist PDF? Portable Document Format, von Adobe Systems entwickelt Multiplattformfähigkeit, Was ist PDF? Portable Document Format, von Adobe Systems entwickelt Multiplattformfähigkeit, Wie kann ein PDF File angezeigt werden? kann mit Acrobat-Viewern angezeigt werden auf jeder Plattform!! (Unix,

Mehr

Installationshinweise Linux Edubuntu 7.10 bei Verwendung des PC-Wächter

Installationshinweise Linux Edubuntu 7.10 bei Verwendung des PC-Wächter Dr. Kaiser Systemhaus GmbH Köpenicker Straße 325 12555 Berlin Telefon: (0 30) 65 76 22 36 Telefax: (0 30) 65 76 22 38 E-Mail: info@dr-kaiser.de Internet: www.dr-kaiser.de Zielstellung: Installationshinweise

Mehr

Wie kann ich in der Backstage-Ansicht eigene Dokumentationen einbinden?

Wie kann ich in der Backstage-Ansicht eigene Dokumentationen einbinden? Wie kann ich in der Backstage-Ansicht eigene Dokumentationen einbinden? Anforderung Durch die Bearbeitung einer XML-Datei können Sie Ihre eigenen Dokumentationen (z.b. PDF-Dateien, Microsoft Word Dokumente

Mehr

Handbuch. für die. Erstellung von Mehrfarbstempeln. mit. Corel Draw (Deutsch)

Handbuch. für die. Erstellung von Mehrfarbstempeln. mit. Corel Draw (Deutsch) Handbuch für die Erstellung von Mehrfarbstempeln mit Corel Draw (Deutsch) support@trotec.net 2008-02-07 coreldraw_de.doc Seite 1 / 11 Inhalt 1. STEMPELVORLAGEN MIT COREL DRAW ERSTELLEN... 3 1.1. ERSTELLEN

Mehr

So gehts Schritt-für-Schritt-Anleitung

So gehts Schritt-für-Schritt-Anleitung So gehts Schritt-für-Schritt-Anleitung Software WISO Mein Büro Thema Eigene Auswertungen, Tabellenauswertungen Version/Datum V 13.00.05.101 Über die Tabellen-Auswertungen ist es möglich eigene Auswertungen

Mehr

Outlook und Outlook Express

Outlook und Outlook Express 1 von 8 24.02.2010 12:16 Outlook und Outlook Express Bevor Sie anfangen: Vergewissern Sie sich, dass Sie eine kompatible Version von Outlook haben. Outlook 97 wird nicht funktionieren, wohl aber Outlook

Mehr

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren Lineargleichungssysteme: Additions-/ Subtraktionsverfahren W. Kippels 22. Februar 2014 Inhaltsverzeichnis 1 Einleitung 2 2 Lineargleichungssysteme zweiten Grades 2 3 Lineargleichungssysteme höheren als

Mehr

Installationsanleitung Maschinenkonfiguration und PPs

Installationsanleitung Maschinenkonfiguration und PPs Installationsanleitung Maschinenkonfiguration und PPs Release: VISI 19 Autor: Nikodemus Braun Datum: 24. September 2010 Update: Anja Gerlach Datum: 31. Mai 2011 Inhaltsverzeichnis 1 Einbinden der Postprozessoren

Mehr

Welche Lagen können zwei Geraden (im Raum) zueinander haben? Welche Lagen kann eine Gerade bezüglich einer Ebene im Raum einnehmen?

Welche Lagen können zwei Geraden (im Raum) zueinander haben? Welche Lagen kann eine Gerade bezüglich einer Ebene im Raum einnehmen? Welche Lagen können zwei Geraden (im Raum) zueinander haben? Welche Lagen können zwei Ebenen (im Raum) zueinander haben? Welche Lagen kann eine Gerade bezüglich einer Ebene im Raum einnehmen? Wie heiÿt

Mehr

Installationsanleitung für Update SC-Line 2010.3

Installationsanleitung für Update SC-Line 2010.3 SYSTEMVORAUSSETZUNGEN SC-Line 2010.3 benötigt für den Betrieb Windows 2000, Windows XP, Windows Vista - (32Bit und 64Bit), Windows 7 - (32Bit und 64Bit), Windows Server 2003, Windows Server 2008 - (32Bit

Mehr

Mediator 9 - Lernprogramm

Mediator 9 - Lernprogramm Mediator 9 - Lernprogramm Ein Lernprogramm mit Mediator erstellen Mediator 9 bietet viele Möglichkeiten, CBT-Module (Computer Based Training = Computerunterstütztes Lernen) zu erstellen, z. B. Drag & Drop

Mehr