IMAGIN V3.0e Berlin,25.9.95 -------------------------------------------------------------- INHALTSVERZEICHNIS ====================== 1 Motivation 2 Features 3 Installation 4 Programmbeschreibung 5 Konstanten/Funktionen 6 Demoeinschr„nkung 7 Anhang 1 MOTIVATION ========================= Noch ein Funktionenplotter,wird man sich fragen! Und doch handelt es sich bei IMAGIN um ein Programm, das sich, wie ich glaube, durchaus mit anderen messen kann und Features aufweist, wie sie bei anderen Matheprogrammen nicht zu finden sind. Anlaž, dieses Programm zu schreiben, war die Notwendigkeit, im Rahmen meines Studiums Funktionen mit komplexen Zahlen m”glichst einfach,schnell und komfor- tabel darzustellen. Also machte ich mich auf die Suche und wurde sehr schnell auf den Boden der Realit„t geholt: Die meisten Programme sind nur einfache Funktionenplotter und k”nnen nicht mit komplexen Zahlen rechnen (z.B. FPLOTTER,GAUSS,GEMPLOT..), und strotzen manchmal vor Fehlern (Gauss ...). Sogar ein elegantes Mathematik- programm wie ANALYSIS von EXPERT Software beherrscht keine komplexen Zahlen, aužerdem hat es leider zu wenig Klammerebenen und es ist nicht m”glich, zu scrollen oder eine Achse unabh„ngig von der anderen zu zoomen, zudem ist die Funktionsdefinition maximal 60 Zeichen lang und kann nur schlecht editiert werden. Das IMHO einzige Mathematikprogramm, das komplex rechnen kann, ist RIEMANN, und das weist gerade im Bereich der 2D-Darstellung und des Bedienungs- komforts gravierende M„ngel auf. Dazu kommt noch, daž all diese Programme eine FPU nicht untersttzen, und somit das Potential des ATARI leider nur teilweise ausnutzen. Also entschloss ich mich, selbst ein Programm zu schreiben,wobei mir noch nicht klar war, wie zeitintensiv die Entwicklung eines solchen Programmes sein kann. Inzwischen ist IMAGIN ziemlich ausgereift und l„uft auch unter MagiC!3.0 (sogar unter MagiCMac, soweit ich das nach einem halbstndigen Testlauf sagen kann) zu meiner vollsten Zufriedenheit. Da ich mir denke, daž auch andere ATARI-Besitzer diese Probleme haben drf- ten, habe ich mich entschlossen, dieses Programm in einer Demoversion anderen zur Verfgung zu stellen. Wenn Ihnen das Programm gef„llt, k”nnen Sie bei mir die Vollversion erhalten fr 60 DM, was mir in Hinblick auf die lange Entwick- lungsdauer und die Arbeit,die darin steckt, nicht zu hoch gegriffen scheint. Meine Adresse finden Sie am Ende dieser Anleitung. 2 FEATURES ======================= - aufl”sungsunabh„ngiges, fenstergebundenes GEM-Programm (Fensterelemente k”nnen entfernt werden) - bis zu vier FENSTER - flexible, sehr schnelle Darstellung komplexer und reeller Funktionen - Ausgabe wahlweise des Real-,Imagin„ranteils,des Betrages sowie der Phase - s„mtliche relevanten mathematischen Funktionen - AUSDRUCK ber GDOS, wahlweise Hardcopy - FORMELSPEICHER mit 50 Funktionen und Funktionsbeschreibung - 116 Zeichen fr die Funktionsdefinition - ZOOM-Funktion, wahlweise auch nur in X- bzw. Y-Richtung - SCROLLING mit Cursortasten bzw. Fensterpfeilen (!) - „užert komfortable MIKROSKOP-Funktion - FPU Untersttzung, 19-stellige Genauigkeit, 20 Klammerebenen (!) - logarithmische Skalierung beider Achsen - flexible Fehlerbehandlung - direkte Ausgabe von FUNKTIONSWERTEN mit variabler Genauigkeit - praktische AUTOMATISCHE BESCHRIFTUNG, d.h. die Funktionsdefinition kann mit der Maus beliebig innerhalb des Fensters positioniert werden - LINIEN und beliebiger TEXT - automatische LISTENFUNKTION fr Funktionsbeschriftungen - FAST-FOURIER-TRANSFORMATION mit Autoscaling - Histogramme - SCHARMODUS - Untersttzung der xFSL (UFSL)-Schnittstelle zu einem externen Fontselektor (z.B. XUFSL,HuGo!,Calvino ...) 3 INSTALLATION: ============================ Hierzu mssen lediglich die Dateien IMAGIN.PRG,IMAGIN.RSC und IMAGIN.FSP in das gewnschte Verzeichnis kopiert werden Eine erhebliche Geschwindigkeitssteigerung l„žt sich mit NVDI von ASH errei- chen, aužerdem ist in NVDI auch ein GDOS fr die Druckausgabe inte- griert.Natrlich lassen sich auch andere GDOS-Versionen, z.B. SPEEDO-GDOS installieren. Wenn kein GDOS resident ist, kann die Druckerausgabe ber die Hardcopyrouti- ne der AES erfolgen. Fr NEC-Drucker habe ich FX_EMU.PRG als Hardcopyal- ternative beigefgt. IMAGIN l„uft auch unter MAGIC!. 4 PROGRAMMFUNKTIONEN ====================================== 4.1 Die Maus Die Maus kann folgende Mausformen annehmen: -Pfeil: Normalzustand, Mens anw„hlen, Fenster verschieben, etc. -Biene: Programm ist besch„ftigt -Kreuz: Koordinateneingabe, z.B. fr Linien -Unterstrich: Cursor bei der Texteingabe -Hand: nur bei der Mikroskopfunktion 4.2 Die Tastatur Alle Menpunkte k”nnen durch Shortcuts ausgel”st werden. Zus„tzlich stehen die Funktionstasten F1 bis F5 zur Funktionsausgabe zur Verfgung. Spezialfunktionen: -Cursortasten verschieben den Funktionsausschnitt (analog zu den Scroll-Pfeilen der Fenster) -TAB : Rastermodus umschalten (OPTIONEN-Men: Raster zeichnen) -CLR : Zeichenmodus umschalten (OPTIONEN : Bild l”schen) -ESC : ZOOM-Spezialfunktionen ausschalten -CONTROL '1': Default-Koordinaten fr den Normalmodus setzen -CONTROL '2': wie CONTROL '1' fr logarithmische Darstellung 4.3 MENšEINTRŽGE IM EINZELNEN ----------------------------------------------------- 4.3.1 DATEIMENUE ------------------------------ 4.3.1.1 Load FSP/Save FSP L„dt einen Formelspeicher als ASCII-Datei. Die Beschreibungen der Formeln werden ebenfalls abgespeichert. 4.3.1.2 Formeln Hiermit wird der Formelspeicherdialog ge”ffnet. Die beiden oberen Zeilen erm”glichen die Funktionsdefinition. Sie k”nnen die beiden Zeilen wie eine sehr lange Zeile behandeln, z.B. am Ende der ersten Zeile einfach weiterschreiben. Mit der Escape- Taste wird eine Zeile gel”scht, mit INSERT k”nnen sie Sonderzei- chen eingeben. In der dritten und vierten Zeile mit dem Namen TITEL k”nnen Sie zu der Formel eine allgemeine Beschreibung abspeichern. Um die Funktion auszugeben, muž diese erst in den Formelausfh- rungs-Speicher geladen werden. Dies k”nnen Sie im Transport-Feld mit IN und angew„hlter Funktion f(x) oder g(x) errei- chen. Mit OUT bernehmen sie eine Funktion in den Formelspeicher. Bl„ttern k”nnen Sie mit UP und DOWN, mit SET wird die aktuelle Definition abgespeichert. 4.3.1.3 Print/Hardcopy Ausdruck der Grafik entweder ber GDOS oder ber eine installierte Hardcopyroutine. 4.3.1.4 Fenster ”ffnen/schliežen/wechseln Bis zu vier Fenster k”nnen gleichzeitig ge”ffnet sein, dabei merkt sich das Programm fr jedes Fenster den eingestellten Modus, die Koordinaten und die automatische Liste. 4.3.1.5 Beschriftung Die Funktionsdefinition kann elegant in der Grafik positioniert wer- den. Gerade bei komplizierten Funktionen spart man sich damit sehr viel Arbeit. Als zus„tzliches 'Zuckerl' werden Bezeichner fr die Va- riable und den Scharparameter automatisch expandiert. 4.3.1.6 Texteingabe Hier k”nnen Sie einen beliebigen Text in der Grafik plazieren. Son- derzeichen k”nnen mit ALTERNATE+Zahlenblock eingegeben wer- den, ESC l”scht den ganzen String, BACKSPACE das letzte Zei- chen. 4.3.1.7 Linien Linien werden gezeichnet. 4.3.1.8 Quit Programmende nach Nachfrage. 4.3.2 FUNKTIONENMENUE --------------------------------------- 4.3.2.1 f/g eingeben Funktionen eingeben/ver„ndern. 4.3.2.2 f/g Funktionen werden gezeichnet. 4.3.2.3 f'/f' Erste und zweite Ableitung berechnen. 4.3.2.4 f+g/f*g Additive/multiplikative Verknpfung 4.3.2.5 DFFT Eine FAST FOURIER TRANSFORMATION der Funktion f(x) wird im angegebenen Intervall mit Fensterung durchgefhrt. Zus„tzlich besitzt das Programm einen Autoscaling-Mechanismus. 4.3.3 KOORDINATENMENUE ----------------------------------------- 4.3.3.1 Eingabe direkte Eingabe, wenn die untere Grenze gr”žer oder gleich der oberen Grenze ist, wird eine Fehlermeldung ausgegeben und die Eingabe muž wiederholt werden. 4.3.3.2 MIKROSKOP Diese „užerst praktische Funktion erm”glicht das Verg”žern eines mittels Rubberband selektierten Bereichs und kann jederzeit mit der rechten Maustaste abgebrochen werden. 4.3.3.3 ZOOM Der dargestellte Bereich wird vergr”žert/verkleinert, wahlweise auch nur die X- bzw. Y-Achse. Dabei gibt es zwei Zoom-modi: im ersten Modus werden die Achsen und der Ursprung fixiert, der zweite Modus bezieht sich immer auf die Bildmitte, z.B. wird beim Vergr”žern der Bereich in der Bildmitte herausvergr”žert. Mit der ZOOM-Funktion k”nnen Sie sehr schnell den gewnschten Ausschnitt einstellen. 4.3.3.4 X- bzw. Y-Achse logarithmisch Hierbei werden die Defaultwerte bercksichtigt. 4.3.3.5 gl.Masstab/gl.Einheiten Mit der ersten Funktion wird die Rasterbreite der Y-Achse der X-Achse angepažt, wenn die Y-Achse logarithmisch ist, wird dazu ye ver„ndert. Mit der zweiten Funktion werden die Koordinaten der X-Achse ber- nommen. 4.3.4 AUSGABEMENUE ----------------------------------- 4.3.4.1 REAL/IMAGINŽR/BETRAG/WINKEL Hier k”nnen Sie festlegen, wie die komplexe Funktion dargestellt wird, wobei die Winkelausgabe jeweils zus„tzlich aktiviert werden kann. 4.3.4.2 Scharmodus Damit k”nnen Sie den Scharmodus aktivieren oder desaktivieren. 4.3.4.3 Werte Die Werte werden grafisch und numerisch dargestellt,Abbruch der Funktion mit rechter/linker Maustaste, mit der linken Maustaste wer- den die Linien und die Box mit den Werten deckend gezeichnet. Die Anzahl der ausgegebenen Dezimalstellen kann im Optionen/Programm- Dialog eingestellt werden. 4.3.4.4 automatische Liste/Liste l”schen Wenn sie diese Funktion einschalten, werden alle Text- und Linien- eingaben sowie der Beschriftungsstring gespeichert und jedesmal beim Neuzeichnen ausgegeben.Font,Fontgr”že,Attribute,bei True- TypeFonts auch Skew,Kerning- und Breiteninformationen bleiben ebenfalls erhalten. Die Punktkoordinaten werden auf die aktuelle Fenstergr”že umgerechnet. Um die Liste des oberen Fensters zu l”schen, w„hlen sie einfach 'Liste l”schen'. 4.3.5 OPTIONENMENUE ------------------------------------ 4.3.5.1 Programmoptionen Folgende Optionen k”nnen Sie hier ausw„hlen: -Bild l”schen (HOME) -Raster zeichnen (TAB) -Fensterelemente -Fenster anordnen : Die Fenster werden gekachelt. -Zoommodus 2 -Autoscaling -Werte verbinden -Histogramm Mit Schrittweite kann der Abstand zwischen den berechneten Punk- ten ver„ndert werden. Wenn der Wert von maximale Differenz nicht Null ist, wird zus„tzlich bei jedem Punkt untersucht,ob die Differenz der y-Koordinaten gr”žer als der eingestellte Wert ist.Trifft das zu, werden die Punkte nicht mit Linien verbunden. Die Anzahl der Dezi- malstellen fr die Ausgabe der Funktionswerte k”nnen Sie auch in diesem Dialog festlegen. 4.3.5.2 Druckeroptionen Die Druckeraufl”sung bestimmt die Gr”že der ausgedruckten Grafik, wenn Sie GDOS installiert haben, NLQ setzt die Drucker-Konfigura- tion. 4.3.5.3 Achsenbeschriftung Definition der Achsenbeschriftung 4.3.5.4 Bezeichner dreistellige Bezeichner fr Variable/Scharparameter 4.3.5.5 Scharparameter Definition des Scharparameters 4.3.5.6 Ableitung Optionen fr die Berechnung der Ableitung 4.3.5.7 Zeichensatz/Druckerzeichensatz Wenn Sie den XUFSL-Fontselector von Stefan Rogler installiert ha- ben,k”nnen Sie Font, Fontgr”že, Attribute, Farbe, und bei TrueType- Fonts auch skew (Neigung) und Zeichenbreite/Kerning einstellen. 5 KONSTANTEN/FUNKTIONEN ======================================== Folgende Funktionen beherrscht das Programm: ASINH ACOSH ATANH ASIN ACOS ATAN SINH COSH TANH SIN COS TAN EXP LOG LN SQRT SQR SGN INT ABS Folgende Konstantendefinitionen habe ich eingebaut: G Fallbeschleunigung H Plancksche K. I Elemantarladung J Ruhemasse Elektron K Ruhemasse Proton L Lichtgeschwindigkeit M Dielektrizit„ts K. N magn. Feld K. O Faraday K. P Pi 2P 2*Pi Q Gaskonstante R Rydberg K. S Boltzmann K. T Gravitationskonstante 6 DEMO-EINSCHRŽNKUNG ===================================== Diese Version von IMAGIN ist nur fr Demozwecke bestimmt, deshalb gibt es folgende Einschr„nkungen : - nur 5 Ebenen im mathematischen Stapel (~Klammerebenen) - leider mužte ich den Satz der mathematischen Funktionen auf ein Minimum reduzieren, es k”nnen nur folgende Funktionen berechnet werden : SIN , EXP , SQRT (sorry) - keine Potenzberechnung (sorry) - nur ein Fenster - nur 2 Funktionen im Formelspeicher - nur eine Funktion f(x) - Parameter fr FFT k”nnen nicht ver„ndert werden - kein Scharmodus - keine Ableitungen Wenn Ihnen das Programm gef„llt, k”nnen Sie bei mir die Vollversion erhalten fr 60 DM, was mir in Hinblick auf die lange Entwicklungsdauer und die Arbeit, die darin steckt, nicht zu hoch gegriffen scheint. Meine Adresse finden Sie am Ende dieser Anleitung. 7 ANHANG ===================== 7.1 Mini-History ------------------------------------ V3.0 17.7.95 erste richtige Demoversion V3.0b 18.8.95 SCROLL- und ZOOM-Funktionen verbessert, fehlerhaftes Clipping bei Druckausgabe korrigiert, winziger Bug beim Rasterzeichnen (Skala bei logx und Winkeldarstellung) beseitigt V3.0c 5.9.95 xFSL-Schnittstelle (alternativ UFSL) eingebaut,da die XUFSL-Schnittstelle doch etwas exotisch war; L”schen der Displaylist bei Druckausgabe und Abbruch mit Maustaste; wenn 'Bild l”schen' deaktiviert, wird die Displaylist nach Druckende nicht mehr gel”scht; V3.0c 6.9.95 Skew-,Breiten-und Kerningauswertung wieder implementiert (fr HuGo! von Stefan Rogel) V3.0d 15.9.95 shel_read beim Nachladen von RSC/FSP,Fehlermeldung fr den Fontselektor,die automatische Liste l„žt sich wieder ab- schalten,Fenstername IMAGIN (war vorher MATH),Untersuchung des Dateiformats des Formelspeichers mit Fehlermeldung V3.0e 25.9.95 Zwei Versuche beim Laden der RSC,Clippingfehler bei der Wer- teausgabe behoben,Untersuchung des Dateiformats vom FSP um L„ngencheck mit DTA erweitert,Defaultpfad bei den Filerou- tinen ist wieder der aktuelle Pfad,zwei Versuche beim Nach- laden des FSP 7.2 bekannte Probleme ------------------------------------ Unter MAGIC!3.0 werden bei der Texteingabe die ersten 10 Zeichen 'ver- schluckt', da Cconis() den Wert Null zurckliefert. Danach funktioniert es. Ein anderes Problem war die Speicherallozierung unter MAGIC!3.0, das ich durch Zusammenfassung der einzelnen malloc()-Aufrufe gel”st habe. Bei den mehrzeili- gen Strings k”nnte es aber unter Umst„nden Probleme geben. An Tips oder L”sungsvorschl„gen bin ich sehr interessiert. 7.3 verwendete Software --------------------------------------- IMAGIN wurde mit Pure C 1.1 von Application Systems Heidelberg und INTERFACE von SHIFT entwickelt, die NKCC-Routinen stammen von Harald Siegmund, die MYDIALS von Olaf Meisiek. Vielen Dank an dieser Stelle. 7.4 Disclaimer -------------------------- Ich bernehme keine Verantwortung fr Sch„den irgendwelcher Art, die durch die Benutzung von IMAGIN entstehen. 7.5 ADRESSE -------------------------- Reinhard Maier Harbigstr.14 /12.206 14055 Berlin e-Mail: Reinhard Maier @ B (MausNet) Fr Verbesserungsvorschl„ge bin ich jederzeit dankbar.