299 93 23MB
German Pages XIII, 370 S. [382] Year 1996
H. Benker Mathematik mit MATHCAD
Springer-Verlag Berlin Heidelberg GmbH
Hans Benker
Mathematik mit
MATH CAD Arbeitsbuch fiir Studenten und Ingenieure
14 Abbildungen
"
Springer Springer
Professor Dr. Hans Benker Martin-Luther-Universität Halle-Wittenberg Fachbereich Mathematik und Informatik 06099 Halle (Saale)
ISBN 978-3-540-59368-3 ISBN 978-3-662-08564-6 (eBook) DOI 10.1007/978-3-662-08564-6
Die Deutsche Bibliothek - CIP-Einheitsaufnahme Benker, Hans : Mathematik mit Mathead e Arbeitsbuch für Studenten und Ingenieure/Hans Benker. -Berlin; Heidelberg; New York; Barcelona; Budapest: Hongkong; London ; Mailand; Paris; Santa Clara; Singapur ; Tokio: Springer. 1996 Dieses Werk ist urheberrechtlich geschützt. Die dadurch begründeten Rechte. insbesondere die der Übersetzung . des Nachdrucks. des Vortrags. der Entnahme von Abbildungen und Tabellen. der Funksendung. der Mikroverfilmung oder der Vervielfältigung auf anderen Wegen und der Speicherung in Datenverarbeitungsanlagen. bleiben. auch bei nur auszugsweiser Verwertung. vorbehalten. Eine Vervielfältigung dieses Werkes oder von Teilen dieses Werkes ist auch im Einzelfall nur in den Grenzen der gesetzlichen Bestimmungen des 'Urheberrechtsgesetzes der Bundesrepublik Deutschland vom 9. September 1965 in der jeweils geltenden Fassung zulässig. Sie ist grundsätzlich vergütungspflichtig. Zuwiderhandlungen unterliegen den Strafbestimmungen des Urheberrechtsgesetzes.
© Springer-Verlag Berlin Heidelberg 1996 Ursprünglich erschienen bei Springer-Verlag Berlin Heidelberg New York 1996.
Die Wiedergabe von Gebrauchsnamen, Handelsnamen. Warenbezeichnungen usw. in diesem Werk berechtigt auch ohne besondere Kennzeichnung nicht zu der Annahme. daß solche Namen im Sinne der Warenzeichen- und Markenschutz-Gesetzgebung als frei zu betrachten wären und daher von jedermann benutzt werden dürften Produktion: PRODUserv Springer Produktions-Gesellschaft. Berlin Einbandentwurf: Künkel & Lopka, Tlversheim; Satz: Reproduktionsfertige Vorlage des Autors SPIN : 10502371 62/3020 - 5 432 I 0 - Gedruckt auf säurefreiem Papier
Meiner Gattin Doris und meiner Tochter Uta gewidmet
Vorwort
In dem vorliegenden Buch wird die Losung mathematischer Aufgaben mittels Computer unter Verwendung des Programmsystems MATHCAD behandelt. Hierftir legen wir die aktuelle Version 5.0 PLUS fur WINDOWS zugrunde und gehen sowohl auf die englischsprachige als auch auf die deutschsprachige Version ein. Wahrend MATH CAD ursprtinglich als reines System ftir numerische Methoden unter einer gemeinsamen Benutzeroberflache konzipiert war, besitzt es seit der Version 3 eine abgertistete Variante des Symbolprozessors von MAPLE ftir exakte (symbolische) Rechnungen. Damit hat sich MATH CAD zu einem ebenbtirtigen Partner der anderen bekannten Computeralgebra-Programme ftir Personalcomputer wie DERIVE, MACSYMA, MAPLE und MATHEMATICA entwickelt. MATHCAD besitzt gegentiber diesen Program men die nicht unwesentlichen Vorteile: MATH CAD ist neben DERIVE das einzige Programmsystem, ftir das eine deutschsprachige Version existiert. Die Berechnungen werden im MATHCAD-Arbeitsfenster in der tiblichen mathematischen Symbolik (Standard-Notation) durchgeftihrt. Dank der unubertroffenen Gestaltungsmoglichkeiten im Arbeitsfenster konnen Ausarbeitungen direkt unter MATHCAD erstellt werden. Samdiche Rechnungen konnen mit Mafeinheiten durchgefiihrt werden. Ober 40 vorhandene Elektronische Bucher zu den verschiedensten technischen und naturwissenschaftlichen Disziplinen beinhalten aile fur das entsprechende Gebiet relevanten Standardformeln und Berechnungsmethoden, die ausfuhrlich durch begleitenden Text und Grafiken erlautert werden und die problemlos in die eigenen Rechnungen integriert werden konnen. Diese Vorteile haben einen wesentlichen Anteil daran, dag sich MATH CAD zu einem bevorzugten Programmsystem fur Ingenieure und Naturwissenschaftler entwickelt hat. MATHCAD existiert ftir verschiedene Computerplattformen, so u.a. ftir IBMkompatible Personalcomputer, 'Workstations unter UNIX und APPLE-Computer. Wir verwenden die Version ftir IBM-kompatible Personalcomputer (kurz als PCs bezeichnet), die unter WINDOWS lauft. Da sich der Aufbau der Benutzeroberflache und die Kommandostruktur fur die einzelnen Computertypen nur unwesentlich unterscheiden, konnen die in diesem Buch gegebenen Grundlagen allgemein angewendet werden.
VIII
Vorwort
Das System MATHCAD findet nach Ansicht des Authors zu Unrecht erst in den letzten beiden Jahren groBere Beachtung. Dies zeigt sich u.a. daran, daB bisher nur wenig Bucher uber MATHCAD erschienen sind. Das vorliegende Buch solI mit dazu beitragen, diese Lucke zu schlieBen. Es wendet sich sowohl an Studenten von Fachhochschulen und Universitiiten als auch an in der Praxis tatige Ingenieure und Naturwissenschaftler. Es werden aIle Gebieten betrachtet, die zur mathematischen Grundausbildung technischer und naturwissenschafdicher, naturwissenschaftlicher, aber auch wirtschaftswissenschaftlicher Fachrichtungen gehoren. Dazu kommen weiterfuhrende Gebiete der Mathematik, die fur viele praktische Problemstellungen relevant sind. So kann das Obungsbuch zu den Vorlesungen vorliegende Buch als begleitendes Nachschlage- und Ubungsbuch und als Handbuch fur den Praktiker dienen. Das Buch ist aus Vorlesungen entstanden, die der Autor fur Studenten der Mathematik, Informatik und Ingenieurwissenschaften an der Universitat Halle gehalten hat. Um den Rahmen des Buches nicht zu sprengen, werden die mathematischen minels Computer erforderlich Aufgaben nur soweit behandelt, wie es fur eine Losung Uisung mittels ist. Das solI aber nicht bedeuten, daB auf die mathematische Strenge verzichtet wird, wie es in zahlreichen Buchem uber Computeralgebra-Programme zu beobachten ist. Der Schwerpunkt dieses Buches liegt auf der Umsetzung des zu losenden mathematischen Problems in die Sprache von MATHCAD und der Interpretation der gelieferten Ergebnisse. Wenn beim Anwender Unklarheiten mathematischer Natur auftreten, so sollten entsprechende Fachbucher herangezogen werden. Das Buch ist in vier wesentliche Teile aufgeteilt: I. Installation, Aufbau und Benutzeroberflache von MATHCAD II. Losung von mathematischen Grundaufgaben (erstes Arbeiten mit MATHCAD) III. Losung weiterfuhrender mathematischer Aufgaben (MATH CAD fur Fortgeschrittene) IV. Programmierung unter MATHCAD Alle behandelten Probleme werden durch zahlreiche Beispiele illustriert, die zum Aile Dben Uben genutzt werden sollten. Diese Beispiele zeigen dem Anwender Moglichkeiten und Grenzen bei der Anwendung von MATH CAD au( MATHCAD auf. Die Anwendung von Programmsystemen zur Losung mathematischer Probleme mittels Computer wird in Zukunft weiter an Bedeutung gewinnen, weil der minels Taschenrechner durch Computer (Personalcomputer) ersetzt wird, auf denen derartige Programme installiert sind. Da sich ein universelles Mathematik-Programm wie MATHCAD ohne groBere Programmier- und Computerkenntnisse anwenden laBt und einen groBen Teil mathematischer Standardaufgaben lost, wird seine Rolle fur den Anwender wachsen. Ehe man Software fur numerische Losungsmethoden in den Standard-Programmiersprachen wie BASIC, C, FORTRAN und PASCAL anwendet bzw. schreibt, wird man zuerst versuchen, das Problem mit einem verfugbaren Mathematik-Programm zu losen, da sich dies wesentlich einfacher gestaltet. Erst wenn dies versagt, muB man auf Numeriksoftware zuruckgreifen. 1m vorliegenden Buch wird am Beispiel von MATHCAD gezeigt, wie man zahlreiche mathematische Probleme mittels Computer ohne groBen Aufwand losen lOsen kann.
Vorwort
IX
Dazu werden zuerst die Moglichkeiten fur eine exakte Losung untersucht, ehe die numerische (niiherungsweise) (naherungsweise) Losung in Angriff genommen wird'. Dies wird dadurch gerechtfertigt, weil das Programmsystem MATHCAD eine gelungene Mischung aus Computeralgebra- und numerischen Methoden unter einer gemeinsamen WINDOWS-Benutzeroberflache darstellt. Diese Benutzeroberflache gestattet auch eine anschauliche Darstellung numerischer Rechnungen. Das vorliegende Buch soli mit dazu beitragen, dag sich weitere Computernutzer fur MATHCAD begeistern und durch schopferische Anwendung der enthaltenen Moglichkeiten zu einer Weiterentwicklung von MATH CAD beitragen. Ich hofk hoffe, dag diese Einfuhrung in MATH CAD den Leser anregt, sich nicht nur an der schnellen Losung eines mathematischen Problems mittels MATHCAD zu erfreuen, sondern auch intensiv uber den mathematischen Hintergrund nachzudenken. MATH CAD kann wie aile anderen Computeralgebra-Programme nicht die MATHCAD Mathematik ersetzen. Es kann aber von langwierigen Rechnungen befreien und Rechenfehler vermeiden, so dag fur den Anwender Zeit geschaffen wird, sich urn um eine schopferische Anwendung der Mathematik zu bemuhen. Da sich die Struktur der Kommandos auch bei zukunftigen Versionen nicht wesentlich wesendich andern wird (es verbessert sich nur die Effektivitat), kann das vorliegende Buch auch in den nachsten Jahren als eine Anleitung zum Losen mathematischer Probleme mittels minels MATH CAD dienen. An dieser Stelle mochte ich bei allen bedanken, die mich bei der Realisierung des vorliegenden Buchprojekts unterstutzten: Bei meiner Gartin Doris, die groges Verstandnis fur meine Arbeit an den Abenden und Wochenenden aufgebracht hat. Bei meiner Tochter Uta, die das Manuskript mehrmals kritisch gelesen hat und viele nutzliche Hinweise gab. Bei meinen Kollegen Dr. Ch. Henkel und Prof. Dr. Seelander, die das Manuskript fachkundig lasen und in zahlreichen Diskussionen Verbesserungen anregten. Bei den Lektoren Frau K. Proff und Herrn Dr. Merkle und den Mitarbeiterinnen Frau Grunewald und Frau Hellbarth-Busch des Springer-Verlages fur die Aufnahme des Buchvorschlages in das Verlagsprogramm und die Hilfen bei der Gestaltung des Buches. Bei der Europaniederlassung MathSoft Europe von MathSoft in Livingston Dberlassung samtlicher samdicher Elektronischer Bucher (Grogbritannien) fur die kostenlose Oberlassung von MATHCAD zur Mathematik. Abschliegend mochte ich noch einige Hinweise bzgl. der Gestaltung des vorliegenden Buches geben: Dberschriften werden Kommandos (Funktionen) und Menus von • Neben den Oberschriften MATH CAD bei ihrer Definition in Fettdruck dargestellt. Dies gilt auch fur Vektoren und Matrizen. • Programm-, Datei- und Verzeichnisnamen und die Namen der ComputeralgebraProgramme werden in Grojbuchstaben dargestellt. • Die grundlegenden Beispiele und Abbildungen werden in jedem Kapitel von 1 beginnend durchnumeriert, wobei die Kapitelnummer vorangestellt wird. So
X
Vorwort
bezeichnen z.B. Abb. 2.3 und Beispiel 3.12 3. 12 die Abbildung 3 aus Kapitel 2 bzw. das Beispiel 12 aus Kapitel 3. Beispiele werden mit dem Symbol
•
beendet • Wichtige Hinweise werden durch das vorangehende Symbol
セ@ gekennzeichnet und mit dem Symbol
•
beendet. • Wichtige Textstellen und Kommandonamen im Text sind kursiv geschrieben geschrieben.. Dies gilt erliiuternde Texte zu den von MATH MATHCAD auch fur erUiuternde CAD durchgefuhrten Rechnungen, die direkt aus dem MATHCAD-Arbeitsfenster ubernommen wurden. • Die einzelnen Kommandos einer Kommandofolge von MATHCAD werden mittels =} => getrennt.
Merseburg, im Herbst 1995
Hans Benker
Inhaltsverzeichnis
1 Einleitung............................................... 1.1 Arbeitsweise und Einsatzgebiete von Computeralgebra- und Mathematikprogrammen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 1.2 Die Entwicklung von MATHCAD bis zu den aktuellen Versionen 5,0 .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .., und 5,0 PLUS ......................................... 1.3 Rechnen mit MATHCAD ......................... .................................. , ........ 1.4 Das Hilfesystem von MATHCAD ............................ 1.5 MATH CAD im Vergleich mit den Computeralgebraprogrammen DERIVE, MAPLE und MATHEMATICA ..................... 2 Installation und Aufbau von MATHCAD ........•..•............ . ....................... 2.1 Die Anfor$1erungen Anfor4erungen an die Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2 Die Installation unter Windows. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3 Die Verzeichnisse von MATHCAD auf der Festplatte ..............
1 3 9 10 11 12
13 13 14 14
3 Bedienung der Benutzeroberflache der WINDOWS-Version .........• . ......... 15 3.1 3.2 3.3 3.4 3.5 3.6
Meniileiste............................................. Symbolleiste ............................................ Operatorleisten .......................................... Nachrichtenleiste ........................................ Das Arbeitsfenster und die Gestaltung eines MATHCAD-Dokuments . Die Textverarbeitungsfunktionen von MATHCAD ................
16 20 20 21 21 24
4 Die Elektronischen Bucher .................................. 26 5 Erstes Arbeiten mit MATHCAD •..••••...•.......•............ . .............................. 31 5.1 Durchfiihrung exakter und naherungsweiser Rechnungen . . . . . . . . . . . 31 5.2 Standardfunktionen, Konstanten und Variablen .................. 37 5.3 Durchfiihrung von Grundrechenoperationen .................... . . . . . . . . . . . . . . . . . . . . 41 5.4 Berechnung von Summen und Produkten ...................... 44 5.5 Umformung von Ausdriicken ............................... 48 5.5.1 Vereinfachung ...................................... 49 5.5.2 Partialbruchzerlegung ................................ 50 5.5.3 Potenzieren ........................................ 51
XlI
Inhaltsverzeichnis
5.5.4 Multiplikation von Ausdriicken ......................... 51 5.5.5 Faktorisierung ...................................... 51 5.5.6 Auf einen gemeinsamen Nenner bringen .................. 52 5.5.7 Substitution von Ausdriicken ........................... 52 5.5.8 Umformung transzendenter Ausdriicke ................... 54 5.6 Rechnen mit Polynomen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 55 5.7 U:isung einfacher Gleichungen und Ungleichungen. . . . . . . . . . . . . .. 60 5.8 Vektorrechnung......................................... 66 5.9 Funktionen einer Variablen, ihre grafische Darstellung und 2D-Grafiken 71 5.10 Grenzwertberechnung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 86 5.11 Differentialrechnung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 90 5.12 Kurvendiskussion .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 95 5.13 Integralrechn ung. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 103
6 MATHCAD fUr Fortgeschrittene ............................. 116 6.1 Integrierte Funktionen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 6.1.1 Ein- und Ausgabefunktionen . . . . . . . . . . . . . . . . . . . . . . . . .. 6.l.2 Rundungsfunktionen ................................ 6.l.3 Sortierfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 6.l.4 Bedingungsfunktionen Bedingungsfunktionen............................... ............................... 6.2 Das System SmartMath ................................... 6.3 Einheiten und Dimensionen ............................... 6.4 Rechnen mit komplexen Zahlen ............................. 6.5 Matrizenrechnung ....................................... 6.6 U:isung linearer Gleichungen und analytische Geometrie. . . . . . . . . .. 6.7 Lasung nichtlinearer Gleichungen . . . . . . . . . . . . . . . . . . . . . . . . . .. 6.8 Unendliche Reihen und Produkte ............................ 6.9 Funktionen von n Variablen ................................ 6.9.1 Differentiation .................................... 6.9.2 Taylorentwicklung .................................. 6.9.3 Fehlerrechnung .................................... 6.9.4 Integration ....................................... 6.9.5 Vektoranalysis ..................................... 6.10 Grafische Darstellung von Funktionen zweier Variablen und 3D-Grafiken 6.11 Lasung von gewahnlichen und partiellen Differentialgleichungen .... 6.12 Laplacetransformation .................................... 6.13 Fourierreihen und Fouriertransformation ...................... 6.14 Aufgaben der Optimierung ................................ 6.15 Wahrscheinlichkeitsrechnung ............................... 6.15.1 Kombinatorik und Berechnung von Wahrscheinlichkeiten ..... 6. 15.2 Erzeugung von Zufallszahlen .......................... 6.15.3Verteilungsfunktionen ............................... 6.15.4Momente von Verteilungen ........................... 6.16Statistik ............................................... 6.16.1 Statistische Malhahlen ...............................
116 117 123 123 129 132 137 140 142 162 173 183 187 189 192 196 198 200 204 211 234 240 243 255 255 259 263 269 270 271
Inhaltsverzeichnis
6.16 2 Grafische Darstellung von Datenmaterial ................. 6.16.3 Korrelation und Regression ........................... 6.16.4Arbeit mit den Elektronischen Buchern zur Statistik ......... Wirtschaftsmathematik ................................... 6.17 Wirrschaftsmathematik 6.17.1 Teilgebiete derWirtschaftsmathematik ................... 6.17.2 Finanzmathematik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..
XIII
274 277 284 293 293 294
7 Programmierung unter MATHCAD ..........•........•...... ............... , ...•...... 7.1 Einfuhrung........................................... 7.2 Befehlsstruktur......................................... 7.3 Definiton von Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 7.4 Erstellung einfacher Programme. . . . . . . . . . . . . . . . . . . . . . . . . . .. 7.5 Erstellung von MATHCAD-Dokumenten. . . . . . . . . . . . . . . . . . . .. 7.6 Strukrur und Gestaltung Elektronischer Bucher. . . . . . . . . . . . . . . .. 7.7 Anwendung vorhandener Elektronischer Bucher. . . . . . . . . . . . . . .. 7.8 Erstellung eigene Elektronischer Bucher. . . . . . . . . . . . . . . . . . . . ..
304 304 306 314 320 320 323 334 334
8 Weitere numerische Methoden . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 8.1 Interpolation.......................................... 8.2 Monte-Carlo-Methoden.................................. 8.3 Gradienten- und Straffunktionenverfahren . . . . . . . . . . . . . . . . . . ..
336 336 342 347
9 Zusammenfassung........................................ 357 Literatur. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .• . . . . . . . . . . . .. 361 Sachverzeichnis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 363
1 Einleitung
Das in diesem Buch behandelte Mathematikprogramm MATHCAD war zu Beginn seiner Entwicklung ein reines Numerikprogramm, d.h., es bestand aus einer Sammlung numerischer Methoden (Naherungsmethoden) zur Lasung grundlegender mathematischer Aufgaben unter einer einheitlichen Benutzeroberflache. Erst in spateren Versionen (ab Version 3) wurde in Lizenz eine abgerustete Variante des Symbolprozessors des Computeralgebra-Programms MAPLE fUr exakte (symbolische) Rechnungen (Formelmanipulation) aufgenommen. MATHCAD kann man wie das Programm MATLAB, das ebenfalls eine Lizenz fUr den Symbolprozessor von MAPLE besitzt, als Numerikprogramm bezeichnen, mit dem exakte L6sungen mathematischer Standardaufgaben maglich sind. In der Leistungsfahigkeit bzgl. exakter Berechnungen ist MATHCAD den universellen Computeralgebra-Programmen wie MACSYMA, MAPLE und MATHEMATICA etwas unterlegen. Diese Computeralgebra-Programme sind allerdings in ihren neueren Versionen keine reinen Programme fUr exakte Rechnungen mehr, da aIle die DurchfUhrung naherungsweiser (numerischer) Rechnungen gestatten. Bezuglich der integrierten Naherungsmethoden ist MATHCAD dafUr allen anderen Programmen uberlegen. Die Kombination von exakten und niiherungsweisen Rechnungen hat sich als Erfolg erwiesen, so daB man alle Programmsysteme nur danach klassifizieren kann, ob sie den Schwerpunkt auf naherungsweise oder exakte Rechnungen legen. Die Notwendigkeit, Algorithmen zur exakten und naherungsweisen Berechnung in Programmsysteme aufzunehmen, liegt darin begrundet, daB die exakte Lasung einer Aufgabe einen endlichen Algorithmus erfordert, der sich fUr viele Aufgaben nicht finden bBt. Den Unterschied zwischen exakten und naherungsweisen Rechnungen werden wir im Abschn. 1.1 ausfUhrlicher erklaren und an Beispielen veranschaulichen. Diese Problematik wird auch im Buch [1] des Autors besprochen.
セ@
Zusammenfassend bBt sich sagen, daB sich MATHCAD fUr diejenigen anbietet,
2
1 Einleitung
die neben exakten Berechnungen haufig Probleme zu Ibsen haben, die sich nur naherungsweise berechnen lassen, • die Wert auf eine leicht lesbare Darstellung der durchgefuhrten Rechnungen legen, • die Rechnungen mit MaBeinheiten benbtigen. Aufgrund dieser und weiterer im Buch besprochener Eigenschaften hat sich MATHCAD zu einem bevorzugten Programm fur Naturwissenschaftler und Ingenieure entwickelt. •
•
In den folgenden Abschnitten der Einleitung geben wir einen Uberblick uber • die Arbeitsweise und Einsatzgebiete von Computeralgebra- und Mathematikprogrammen, • die Entwicklung von MATHCAD bis zu den aktuellen Versionen 5.0 und 5.0 PLUS, • exakte (symbolische) und naherungsweise (numerische) Berechnungen mittels MATHCAD, • Vor- und Nachteile von MATHCAD im Vergleich zu den Computeralgebra-Programmen DERIVE, MAPLE und MATHEMATICA. 1m Kap. 2 gehen wir ausfUhrlich auf die Installation und den Aujbau von MATHCAD ein, wobei wir die neueste Version 5.0 PLUS fUr WINDOWS zugrunde legen. 1m Kap. 3 besprechen wir die Bedienung der Benutzerobe1jliiche von MATHCAD und die mbgliche Gestaltung des Arbeitsblattes (Rechenblattes), das bei MATHCAD als Dokument bezeichnet wird. Im Kap. 4 geben wir eine Einfuhrung in die Elektronischen Bucher von MATHCAD, die fur zahlreiche Fachgebiete existieren und dem Anwender die Arbeit wesentlich erleichtern. 1m Hauptteil (Kap. 5 und 6) wird die Lbsung haufig auftretender mathematischer Aufgaben mittels MATHCAD ausfuhrlich behandelt und an Beispielen diskutiert. Es wird auch auf die Grafikfiihigkeiten eingegangen. Dabei beginnen wir im Kap. 5 mit Problemen, die im ersten Studienjahr und teilweise schon im Gymnasium auf dem Lehrplan stehen, so daB ein Einsteiger hiermit beginnen sollte. 1m Kap. 6 werden anspruchsvollere mathematische Aufgaben gelbst und tiefergehende Mbglichkeiten von MATHCAD behandelt. Es werden u.a. Einblicke in umfangreiche Gebiete wie Differentialgleichungen, Optimierung, Wahrscheinlichkeitsrechnung und Statistik gegeben. 1m Rahmen des vorliegenden Buches ist es natiirlich nicht mbglich, aIle Gebiete umfassend zu behandeln. Dies muB weiteren Buchern uber die Anwendung von MATHCAD in speziellen Gebieten vorbehalten bleiben, in denen auch ausfuhrlich auf die vorhandenen Elektronischen Bucher zu dies en Gebieten eingegangen werden sollte. 1m Kap. 7 besprechen wir die Programmiermoglichkeiten unter MATHCAD. Mit den vorhandenen Befehlen ist der Anwender in der Lage, selbst einfache Programme (MATHCAD-Dokumente) zu erstellen, falls fur ein zu
1.1 Arbeitsweise und Einsatzgebiete von Computeralgebra- und Mathematikprogrammen
3
lasendes lbsendes Problem keine Kommandos existieren. Wir gehen auch auf die Struktur und Gestaltung vorhandener Elektronischer Bucher ein. vorgestellt, die in den 1m Kap. 8 werden einige numerische Methoden vorgesteIlt, Kap. Kap. 5 und 6 nicht besprochen wurden. wurden. Hier findet man weitere Beispiele fUr das Erstellen eigener Programme. 1m Kap. Kap. 9 fassen wir die wesentlichen wesendichen Eigenschaften, Vorteile und Nachteile von MATHCAD MATH CAD zusammen und geben SchluBfolgerungen fUr effektive Anwendungen. In der Literaturnbersicht findet man aIle alle dem Verfasser bekannten BuBilcher uber ilber MATHCAD. MATHCAD.
セ@
In samtlichen Kapiteln des Buches wurden aIle mit MATHCAD durch-
gefuhrten gefilhrten Berechnungen direkt aus dem MATHCAD-Arbeitsfenster ubererlautemder Text kursiv gesetzt ist. Damit lassen sich samtnommen, wobei erIauternder nachvoIlziehen, indem sie auf die liche Rechnungen fUr den Nutzer einfach nachvollziehen, gleiche Art in das Arbeitsfenster eingegeben werden .
•
1.1 Arbeitsweise und Einsatzgebiete von Computeralgebra-und Mathematikprogrammen Computem Die Verarbeitung symbolischer mathematischer Ausdrncke mit Computern bezeichnet man als Computeralgebra oder Formelmanipulation. Formelmanipulation. Beide Begriffe werden synonym verwandt, wobei die Bezeichnung Formelmanipulation aus nachfolgend genannten Grunden Grilnden den Sachverhalt besser trifft. kbnnte leicht zu dem MiBverstandnis fuhfilhDer Begriff Computeralgebra kannte ren, daB man sich nur mit der Lasung Lbsung algebraischer Probleme beschaftigt. Die Bezeichnung Algebra steht aber fUr die verwendeten Methoden zur symbolischen Manipulation mathematischer Ausdrncke, d.h., die Algebra liefert im wesentlichen das Werkzeug zum Auflasen Auflbsen von Ausdrlicken Ausdrilcken und zur Entwicklung von Algorithmen. Es lassen sich jedoch nur solche soIehe Problevie len Schritten Cendticher (endlicher me behandeln, deren Bearbeitung nach endlich vielen Algorithmus) die gewlinschte Lasung liefert. Der Grund hierfur liegt in dem gewilnschte Lbsung hierfilr (symhoSachverhalt, daB in der Computeralgebra aIle Berechnungen exakt Csymbolisch) ausgefuhrt ausgefilhrt werden, im Gegensatz zu den numerischen Verfahren tisch) (Niiherungsverfahren), die mit gerundeten Gleitkommazahlen rechnen und CNiiherungsverfahren), deshalb nur Niiherungswerte !iefern. liefem. Die bei numerischen Verfahren auftretenden Rundungsfehler resultieren aus der end!ichen endlichen Rechengenauigkeit des Computers. Computers. Ein weiterer Fehler tritt bei numerischen Verfahren hinzu, da diese nach einer endlichen Anzahl
4
1 Einleitung
von Schritten abgebrochen werden milssen mtissen (als Beispiel sei die bekannte Regula falsi zur Nullstellenbestimmung von Funktionen erwahnt), obwohl in den meisten Fallen noch nicht das Ergebnis erreicht wurde. Aus den eben diskutierten Eigenschaften numerischer Verfahren ist zu erkennen, daB exakte Berechnungen immer vorzuziehen sind, falls diese eine LOsung Hefem. Lbsung liefem. Filr Ftir viele mathematische Aufgaben lassen sich jedoch keine exakten Berechnungsvorschriften (endHche (endliche Algorithmen) angeben. So ist man z.B. nicht in der Lage, jedes bestimmte Integral mittels der bekannten Formel (Hauptsatz der Differential- und Integralrechnung) b
Jf(x)dx = FCb) - F(a) a
exakt zu berechnen. Man kann nur diejenigen Integrale berechnen, bei denen die Stammfunktionen F(x) der Funktion f(x) (d.h. F'(x) = f(x)) nach endlich vielen Schritten in analytischer Form angebbar sind (z.B. durch partielle Integration, Substitution, Partialbruchzerlegung). Obwohl die Computeralgebra stark von der Algebra beeinfluBt wird und hierfiir viele Probleme lost (z.B. Matrizenrechnung, Determinantenberechhierfur mathematischen nung, Gleichungsauflosung), Gleichungsauf1osung), konnen auch Probleme der matbematiscben Analysis (u.a. Differential- und Integralrechnung, Differentialgleichungen) und darauf aufbauende Anwendungen mittels Computeralgebra gelost werden. Hierzu zahlen vor allem Aufgaben, deren Losung auf algebraischem Wege erhalten wird, d.h. durch symboHsche symbolische Manipulation mathematischer Ausdrticke. Ein typiscbes Ausdriicke. typisches Beispielliefert die Differentiation von Funktionen. rur die Ableitung der elementaren Funktionen Durch Kenntnis der Regeln fur sin x ,exusw.) und der bekannten Differentiationsregeln (Produkt-, (xn , sinx Kettenregel) kann formal die Differentiation jeder noch so Quotienten- und KettenregeD durchgefiihrt werden, die sich komplizierten (differenzierbaren) Funktion durchgefuhrt zusamrnensetzt. Dies kann man als eine aus den elementaren Funktionen zusammensetzt. algebraische Behandlung der Differentiation deuten. In ahnlicher Art und Weise konnen Verfahren zur Berechnung gewisser Klassen von Integralen und Differentialgleichungen formuliert und folglich im Rahmen der Computeralgebra durchgefuhrt durchgefiihrt werden. Aufgaben aus folgenden Gebieten lassen sich aufgrund der eben geschilderten Sachverhalte exakt mit Computeralgebra-Programmen und damit MATHCAD 16sen: ebenfalls mit MA1HCAD • Grundrecbenarten Grnndrechenarten So liefert z.B. die Addition.! +.! +.!. das exakte Ergebnis 10 (wieder als 3 7 21 Bruch dargestellt), dargeste1lt), und bei der Eingabe der reellen Zahlen Ii .fi und 1t erfolgt keine weitere Veranderung. MATHCAD verfugt MA1HCAD verfiigt ilber tiber eine Funktion, urn rationale und reelle Zahlen durch Gleitkommazablen Gleitkommazahlen mit vorgegebener Genauigkeit anzunahem:
1.1 Arbeitsweise und Einsatzgebiete von Computeralgebra- und Mathematikprogrammen
5
== nach der Zahl liefert Die Eingabe des numerischen Gleichheitszeichens = die Naherung, wie die folgenden Beispiele zeigen: 10 == 0.476190476190476 21
= 3.141592653589793
1t =
•
•
•
•
•
[z = 1.414213562373095 e = 2.718281828459045
Umjormung von Ausdrncken Sie geh6rt zu den Grundfunktionen der Computeralgebra-Programme. Dazu zahlen: * Vereinfachung von Ausdriicken, * Partialbruchzerlegung, Ausdriicken, * Potenzieren von Ausdrucken, Ausdriicken, * Multiplikation von Ausdrucken, * Faktorisierung von Polynomen und die damit verbundene Nullstellenbestimmung, * Ausdriicke auf einen gemeinsamen Nenner bringen, * Substitution von Ausdrucken. Ausdriicken. Lineare Algebra AuBer der Addition, MuItiplikation, Multiplikation, Transponierung und Invertierung von Matrizen lassen sich Eigenwerte, Eigenvektoren und Determinanten berechnen und lineare Gleichungssysteme 16sen. Verarbeitung von Funktionen Aile Computeralgebra-Programme und damit auch MATHCAD kennen die ganze Palette der elementaren Funktionen und eine Reihe von h6heren Funktionen. Dazu gestatten sie die Definition eigener Funktionen. Gegebene Funktionen FUnktionen kann man differenzieren und im Rahmen der vorhandenen Integrationsregeln integrieren. Des weiteren lassen sich u.a. gewisse Klassen von Differentialgleichungen 16sen, Grenzwerte berechnen und Taylorentwicklungen angeben. Grafische Grafiscbe Darstellungen In den M6glichkeiten der grafischen Darstellung falIt fallt MATHCAD gegentiber den groBen Computeralgebra-Systemen wie MACSYMA, MAPLE und MATHEMATICA etwas zuruck. zuriick. Mit den im Menti Graphics vorhandenen Kommandos lassen sich. aber 2D- und 3D-Grafiken erstellen, erstelIen, die fur viele Anwendungen ausreichen. Programmiernng Die gr6Beren Programmsysteme wie MACSYMA, MAPLE, MATHEMATICA und REDUCE besitzen eigene Programmiersprachen. Damit k6nnen Programme erstellt werden, die es erlauben, komplexere Probleme zu 16sen. Diese Programmierung besitzt gegentiber der Anwendung klassialle vorhandenen Komscher Programmiersprachen den Vorteil, daB aIle mandos und Funktionen FUnktionen des entsprechenden Programmsystems Programmsysterns mit verwendet werden k6nnen. MATHCADs Programmierfahigkeiten sind dagegen ebenso wie die von DERIVE beschrankt. In MATHCAD stehen lediglich Zuweisungen, Verzweigungen und einfache Schleifen (Iterationen) zur Verfugung. Diese イ・ゥ」ィセ@ aber aus, urn kleine Programmen zu
6
1 Einleitung
schreiben, wie wir im Verlaufe des Buches sehen. Zur Programmierung komplexerer Algorithmen, wie man sie in den zahlreichen Elektronischen Buchern findet, muB man in MATHCAD auf die Programmiersprache C zuriickgreifen, wie im Benutzerhandbuch erlautert wird.
セ@
Zusammenfassend laBt sich die Anwendung von Computeralgebra-Methoden und numerischen Veifahren zur Lasung eines mathematischen Problems auf dem Computer wie folgt charakterisieren: • Die Vorteile der Computeralgebra liegen in der formelmafSigen Eingabe des zu lasenden Problems. Das Ergebnis wird ebenfalls wieder als Formel geliefert. Diese Vorgehensweise ist der manuellen Lasung mit Papier und Bleistift angepaBt und deshalb ohne groBe Programmierkenntnisse anwendbar. Da auch mit Zahlen exakt (symbolisch) gerechnet wird, treten keine Rundungsfehler auf. Der einzige (aber nicht unwesentliche) Nachteil der Computeralgebra besteht darin, daB sich nur soIche Probleme lasen lassen, fUr die ein endlicher L6sungsalgorithmus existiert. • Urn einen numerischen Algorithmus mit dem Computer zu realisieren, muB man ein Programm (z.B. in BASIC, C, FORTRAN oder PASCAL) schreiben oder auf vorhandene Programmbibliotheken zuruckgreifen. Dies erfordert erheblich tiefere Kenntnisse und einen graBeren Aufwand als die Anwendung der Computeralgebra- und Mathematikprogramme. Weitere Nachteile der Numerik bestehen darin, daB nur Naherungsl6sungen geliefert werden, Rundungsfehler das Ergebnis verfalschen kannen und die Konvergenz der Verfahren nicht immer gesichert ist. Der Vorteil der Numerik liegt in der Universalitat, d.h., fur die meisten Probleme kannen numerische Algorithmen entwickelt werden .
•
Zwei Beispiele sollen die Unterschiede zwischen Computeralgebra und Numerik veranschaulichen. Beispiel: a) J2 oder auch 1t werden nach der Eingabe von einem ComputeralgebraProgramm nicht durch eine Gleitkommazahl (so z.B. J2 "" 1.414214 und 1t "" 3.141593) approximiert, wie dies fUr numerische Verfahren erforderlich ist, sondem exakt (symbolisch) erfaBt, so daB z.B. bei einer weiteren Rechnung fur (J2i als exakter Wert 2 folgt. b) An der Lasung des einfachen linearen Gleichungssystems a·x + y= 1, x - b·y= 0 das zwei frei wahlbare Parameter a und b enthalt, laBt sich ebenfalls ein typischer Unterschied zwischen Computeralgebra und Numerik zeigen. Der Vorteil der Computeralgebra liegt darin, daB die Lasung in Abhangigkeit von a und b gefunden wird, wahrend numerische Lasungsmethoden fur a und b Zahlenwerte fordem. Die Computeralgebra-Programme liefem die LOsung (formelmafSige L6sung)
1.1 Arbeitsweise und Einsatzgebiete von Computeralgebra- und Mathematikprogrammen
7
bb 1 y y== - l+a·b' l+a·b Der Anwender muB lediglich Iediglich erkennen, daB fur fUr die Parameter a und b die Ungleichung a·b "* -1 geIten a·b"* gelten muB, da sonst keine Lasung existiert existiert.. X=
•
Die Bestrebungen in der Weiterentwicklung der Computermathematik Computerrnathematik gehen dahin, die Vorteile von Computeralgebra und Numerik zu kombinieren. So wurden in die meisten Computeralgebra-Programme Kommandos zur numerischen Berechnung aufgenommen, die man heranziehen kann, wenn die exakte Berechnung mittels Computeralgebra scheitert. MATHCAD MA1HCAD steHt stellt gelungenes Programmsystem fur fUr den entgegengesetzten Weg dar. Urein geIungenes sprunglich spriinglich war MATHCAD ein reines Programmsystem fur fUr numerische Rechnungen. In der Erkenntnis der Vorteile der exakten Berechnungen mitRechnungen. teIs teis Computeralgebra wurde in die neueren Versionen (ab Cab Version 3) aus abgeriistete Variante des dem Computeralgebra-Programm MAPLE eine abgerustete Symbol-Programmoduls (Symbolprozessors) CSymbolprozessors) ubemommen. Damit ist MATHCAD in der Lage, mathematische Grundaufgaben exakt zu lasen. Erst wenn die exakte Lasung nicht erfolgreich ist, sollte man die numerischen FaFiieinsetzen. higkeiten von MATHCAD einsetzen.
セ@
MA1HCAD Man kann jedoch von MA THCAD wie auch von den anderen Programm-Systemen keine Wunder erwarten. erwarten. Es lassen sich nur solche soiche Probleme exakt fUr die die mathematische Theorie ein endliches Lasungsverfahren 16sen, fur liefert. Fur die numerische L6sung werden (modeme) Standardverfahren angeboten, die zwar haufig akzeptable Naherungen Hefem, liefem, aber nicht irnimmer konvergieren mussen. MATHCAD befreit jedoch von vieIen vielen aufwendigen Rechnungen, gestattet die druckreife Abfassung dieser Rechnungen und laBt liiBt sich durch eigene Programme erganzen. Damit hat sich MATHCAD MA1HCAD zu einem wirksamen HilfsmitteI Hilfsmittel fur fUr die Lasung mathematischer Probleme entwickeit. wickelt.
•
Computeralgebra- und Mathematikprogramme unter WINDOWS und damit auch MATHCAD MA1HCAD arbeiten interaktiv (d.h. im laufenden Dialog zwischen Computer). Dies ist ein groBer Vorteil im Gegensatz zu NumeNutzer und Computer). rikprogrammen, die mit herkammlichen Programmiersprachen (BASIC, C, FORTRAN, PASCAL usw.) erstellt werden und die ausschlieBlich das prozedurale unterstutzen. Beim interaktiven Arbeiten mit MATHdura Ie Programmieren unterstlitzen. mittels des BildCAD besteht ein Dialog zwischen Anwender und Computer mitteIs schirms, wobei sich fortlaufend der Zyklus • Eingabe des zu berechnenden Ausdrucks (durch den Anwender in das Arbeitsfenster), • Berechnung des Ausdrucks (durch MATHCAD), MA1HCAD),
8
1 Einleitung
•
Ausgabe der berechneten Ergebnisse (auf dem Bildschirm im aktuellen Arbeitsfenster), • das berechnete Ergebnis steht fUr weitere Eingaben zur Verfiigung wiederholt. Die Arbeit wird dadurch erleichtert, daB eine leicht zu bedienende Benutzerobetjlache Benutzerobeif/ache (BenutzerschnittstelleiBenutzerinterjace) (BenutzerschnittstelleIBenutzerinterjace) existiert, tiber uber die man mit dem System in den Dialog tritt. MATHCAD verftigt verfugt ebenso uber eine WINDOWS-Benutwie MACSYMA, MAPLE und MATHEMATICA tiber zerobetjlache. zerobeif/ache. Diese Benutzeroberflache gestattet es, in ihrem Arbeitsfenster durchgefuhrten Rechnungen so in Form von Arbeitsblattern/Rechenblatdie durchgeftihrten ArbeitsblatterniRechenblattern zu gestalten, wie es bei Rechnungen per Hand tiblich ublich ist. Ftir Fur diese ArbeitsblatterlRechenblatter werden haufig die englischsprachigen Bezeichnungen Worksheet (ArbeitsblattiNotizblatt), Notebook (Notizbuch), Scratchpad (Notizblock) oder bei MATHCAD Document (Dokument) verwendet. In der Gestaltung des Arbeitsblatts ist MA MATHCAD THCAD allen anderen Programmen uberlegen, da es die zu berechnenden mathematischen Ausdriicke tiberlegen, Ausdrticke in der gebrauchlichen Form (mathematischen Standard-Notation) darstellt.
セ@
Computeralgebra- und Mathematikprogramme und damit auch MATHCAD haben folgende Struktur: Benutzerobeif/ache (englisch: front end) • Benutzerobetjlache • Kern (englisch: kernel) kernel> • Zusatzprogramme: Diese werden bei MATHCAD als Dokumente bzw. Elektronische Bucher (englisch: documents bzw. electronic books), bei MAPLE und MATHEMATICA MATHEMATlCA als Zusatzpakete (englisch: packages) und bei DERIVE als Zusatzdateien (englisch: utility files) bezeichnet. 1m Kern, der bei jeder Anwendung geladen wird, befinden sich Programme zur Lasung der Grundaufgaben. Grundaufgaben. Die Elektronischen BucherlZusatzpaketel Zusatzdateien enthalten spezielle Anwendungen und mtissen mussen nur bei Bedarf geladen werden. In der deutschsprachigen Computerliteratur wird haufig ftir fur Benutzeroberflache, Kern und Zusatzprogramme die entsprechende englische Bezeichnung (mit groBen Anfangsbuchstaben) verwendet.
•
セ@
Die Struktur der Computeralgebra- und Mathematikprogramme hat wesentlichen Anteil bei der Einsparung von Speicherplatz im RAM und laBt laufende Erweiterungen durch den Nutzer zu, indem ftir fur zu lasende Probleme eigene DokumenteiZusatzpaketelZusatzdateien geschrieben werden.
•
1.2 Die Entwicklung von MATHCAD MA1HCAD
9
1.2 Die Entwicklung von MATHeAD bis zu den aktuellen Versionen 5.0 und 5.0 PLUS MATHCAD MATIICAD wird von der Firma Mathsojt Mathsoft aus den USA entwickelt und vermarktet. Es war ursprnnglich ein reines System fur numerische Rechnungen. Die neueren Versionen (ab Version 3) unter WINDOWS besitzen jedoch eine Lizenz von MAPLE fur exakte (symbolische) Rechnungen (Computeralgebra), d.h., sie enthalten eine abgerustete Variante des Symbolprozessors von MAPLE. 1m vorliegenden Buch wird die Version 5.0 PLUS fur WINDOWS von 1994 zugrunde gelegt, die in englischer und deutscher Sprache vorliegt. MATIICAD ist neben DERIVE das einzige System, fur das eine deutschspraMATHCAD chige Version angeboten wird. MATHCAD existiert auch fur APPLE-Computer und Computer, die unter dem Betriebssystem UNIX laufen. Die Bedienung ist unter den verschiedenen Betriebssystemen analog. Wir beschreiben den Aufbau der englischsprachigen Version unter WINDOWS fur IBMkompatible Personalcomputer (PCs) und geben in Klammem die entsprechende Bezeichnung in der deutschsprachigen Version an. Beide Versionen sind identisch und unterscheiden sich nur durch das englische bzw. deutsche Vokabular. Wir stellen absichtlich die englische Version, in den Vordergrund, da jede neu entwickelte Version zuerst in englisch erscheint. In den Beispielen verwenden wir abwechselnd die englische und deutsche Version, urn die Bezeichnungen in beiden Sprachen zu iiben. Die aktuelle Version 5.0 besitzt eine verbesserte Bedienung und neue Leistungsmerkmale. Dies zeigt sich u.a. durch folgendes: Arbeitsfenster laBt sich jetzt wie bei einem Textverarbeitungspro• Das Arbeitsjenster gramm handhaben: Die Tasten セ@
セ@
[Pasl] IPosH
[Ende] IEnde)
funktionieren wie in der Textverarbeitung. Mit einem Mausklick konnen kannen mathematische Symbole eingefugt werden. Es existiert eine Druckbildvorschau. Weiterhin lassen sich Kopf-und FuBzeilen einfiigen. • Zwei neue Grafilifunktionen Trace und Zoom stellen die Koordinaten eines Punktes dar bzw. gestatten ausschnittsweise VergroBerungen. VergraBerungen. • Der Funktionsumjang Funktionsumfang wurde erweitert (neue mathematische Funktionen). • Das Hilfesystem wurde neu entwickelt. Mit den Online-Hilfen findet man auch Antworten auf Fragen der Gestalt" Wie kann man ...?". Querverweise liefem weitere Hilfetexte. Zahlreiche Hinweise in der Nachrichtenleiste (Statusleiste) geben zusatzliche Erklarungen bzgl. der gerade durchgefiihrten Operationen. MATIICAD und anderen WINDOWS-Pro• Der Datenaustauscb zwischen MATHCAD grammen ist jetzt mit den Funktionen Ausschneiden mogAusscbneiden und Einjugen Einfugen maglich. MATHCAD MATIICAD untersrutzt unterstiitzt sowohl DDE als auch OLE, Client und Server. OLE- und DDE-Untersrutzung DDE-Unterstiitzung gibt es fur die dynamische Einbin-
10
1 Einleitung
dung von Grafiken und Berechnungen in MATHCAD bzw. von MATHCAD in andere Programme. Die Version 5.0 PLUS besitzt den gleichen Aufbau und die gleiche BenutzeroberfHi.che wie die Version 5.0, sie ist nur urn die folgenden Leistungsmerkmale erweitert : • Erweiterte symbolische Funktionen : Berechnung von Grenzwerten und uneigentlichen Integralen, Laplacetransformation, Z-Transformation und Fouriertransformation. • Mehr numerische Rechenfunktionen : Nichtlineare Kurvenanpassung mit der Methode von Levenberg-Marquardt, neue Funktionen fUr die Signalverarbeitung. • Erweiterte Matrixfunktionen : Programme zu Matrizenzerlegungen (u.a. nach Cholesky) und neue und verbesserte Methoden zur Berechnung von Eigenwerten und Eigenvektoren fur reelle und komplexe Matrizen. • Zusdtzliche Losungsfunktionen fur Differentialgleichungen : Es sind 13 verschiedene Lbsungsalgorithmen enthalten, so u.a. RungeKutta Verfahren 4. und 5. Ordnung, das Verfahren von Bulirsch-Stoer und Methoden zur Lbsung von Randwertaufgaben. • Programmschnittstellen fUr C und C++: Der Aufruf von C-Programmen ist aus MATHCAD heraus mbglich. • Elektronische Bucher (Handbucher): Handbucher kbnnen jetzt verandert und an eigene Bedurfnisse angepaBt werden, indem man eigene Eintragungen an beliebiger Stelle in den Buchern speichern und jederzeit wieder abrufen kann. Die leistungsstarkere Version 5.0 PLUS (mit erweitertem Funktionsumfang) ist fur diejenigen Anwender gedacht, die eine grbBere Auswahl an mathematischer Funktionalitat benbtigen. Das Programmsystem MATHCAD wird von der Firma Mathsoft zugig weiterentwickelt. So wurden innerhalb eines Jahres die Versionen 4 und 5 erstellt. Fur den kleinen Geldbeutel gibt es eine mit dem Namen MATHCAD 99 bezeichnete Version mit verringertem Funktionsumfang in deutscher Sprache (entspricht der Vollversion 3.1).
1.3 Rechnen mit MATHCAD MATHCAD enthalt eine abgernstete Variante des Symbolprozessors von MAPLE fUr exakte (symbolische) Berechnungen, so daB es hier gegenuber MAPLE und MATHEMATICA etwas abfallt. Trotzdem lassen sich die wesentlichen mathematischen Operationen, wie * Umformung von Ausdrucken, * Partialbruchzerlegung,
1.4
Das Hilfesystem von MATI-ICAD MATHCAD
11
* * * * * * * *
Matrizenoperationen, Determinantenberechnung, Faktorisierung von Polynomen, Lasung linearer Gleichungen, L6sung Berechnung von Summen und Produkten, Differentiation, Taylorentwicklung, Integration (hinreichend einfacher Funktionen), Funktionen), exakt (symbolisch) durchfuhren. Da MATHCAD zuerst als ein reines Programmsystem fUr fur naherungsweise (numerische) Rechnungen entwickelt wurde und zahlreiche leistungsfahige numerische Algorithmen enthalt, besitzt es hier wesentliche Vorteile gegenuber den Programmen DERIVE, MACSYMA, MAPLE und MATHEMAnaherungsweise Losung L6sung zahlreicher Probleme. Probleme. TICA und gestattet die ndherungsweise
セ@
L6sung der mathematischen Aufgaben in den Kap. 5 und 6 gehen Bei der Losung wir folgendermajSen vor: Zuerst erklaren wir die exakte Berechnung mit den entsprechenden Kommandos. Da die exakte Berechnung nicht immer erfolgreich ist, behandeln mandos. wir anschliejSend die ndherungsweise naherungsweise Berechnung mit den vorhandenen Numerikkommandos.
•
CAD 1.4 Das Hilfesystem von MATH MATHCAD Das Hilfesystem der Version 5.0 ist durch folgende Merkmale gekennzeichnet: • V611ig Vallig neu uberarbeitete tiberarbeitete Lemhilfen Lernhilfen begleiten durch die Grundfunktionen Programms. des Programms. • Wenn man Fehlermeldungen, Operatoren oder Funktionen anklickt und anschlieBend die CITJ-Taste (TIJ-Taste druckt, drtickt, so erscheint die dazugehorige dazugeharige Hilfe. anschlieSend Querverweise bieten entsprechende Hilfen. • Queroerweise • Das Online-Hilfesystem gibt auch Antworten auf Fragen "Wie kann man ... ?". • In der Nachrichtenleiste (Statusleiste, Meldungszeile) findet man zahlreiZur gerade ausgefUhrten ausgefuhrten Operation und die nachsten che Hinweise zur durchzufuhrenden Schritte werden angezeigt.
12
1 Einleitung
1.5 MATHCAD im Vergleich mit den ComputeralgebraProgrammen DERIVE, MAPLE und MATHEMATICA 1m Buch [1] des Autars werden ein Uberblick tiber die Funktionsweise, Haupteinsatzgebiete und Geschichte von Computeralgebra-Programme gegeben, die wichtigsten Programme DERIVE, MAPLE, MATHEMATICA und MATHCAD ftir PCs vargestellt und bei der Lasung der einzelnen mathematischen Aufgaben miteinander verglichen. Eine weitere Gegenitberstellung (mit einer Reihe von Tests) der Programme DERIVE XM 2.58, MACSYMA 417.125, MATHCAD 5.0 PLUS, MATHEMATICA 2.2.2 und MATLAB 4.2 findet man im Oktoberheft 1994 der englischen Computerzeitschrift PC Magazine. In dieser Gegentiberstellung belegt MATHCAD 5.0 PLUS in der allgemeinen Einschatzung hinter MAPLE und in der Nutzerfreundlichkeit hinter MATHEMATICA jeweils den zweiten Platz.
セ@
Nach der Einschatzung des Autors mtiBte MATHCAD jedoch in der Nutzerfreundlichkeit an erster Stelle stehen, da die Gestaltungsmaglichkeiten des Arbeitsblattes von keinem anderen Programm erreicht werden. Dies betrifft ebenfalls die Darstellung der zu berechnenden mathematischen Ausdrticke, die in MATHCAD wie in Lehrbtichern maglich ist. Ftir den Autar stellt das neue MATHCAD auch in seinen Rechenfahigkeiten ein ebenbtirdiges System im Vergleich zu DERIVE, MACSYMA, MAPLE und MATHEMATICA dar mit Vorteilen bei numerischen Rechnungen.
•
2 Installation und Aufbau von MATHCAD
2.1 Die Anforderungen an die Hardware Fur MATHCAD 5.0 PLUS benbtigt man einen PC ab Prozessor 80386 (ein Koprozessor ist nicht erforderlich, aber empfehlenswert), der 8 MB RAM, ca. 16 MB Platz auf der Festplatte und eine 8 MB WINDOWS-Swap-Datei besitzt (fur die Version 5.0 benbtigt man 4 MB RAM, 14 MB auf der Festplatte und eine 8 MB Swap-DateD.
2.2 Die Installation unter Windows fur MATHCAD gelieferten Diskettensatzes wird die Von der Diskette 1 des fUr Datei SETUP.EXE SETUP .EXE gestartet. Dies ist sowohl unter DOS als auch unter WINDOWS mbglich. Das weitere Vorgehen erfolgt menugesteuert, wobei das Verzeichnis C:\ WINMCAD fUr fur die Speicherung des Systems auf der Festplatte vorgeschlagen wird. Nach Bestatigung oder Abanderung des Verzeichnisnamens wird die Installation fortgefuhrt, indem man nach Aufforderung durch das Menu die restlichen vier Programmdisketten einlegt. Nach erfolgreicher Installation erscheint die Meldung Installation was erfolgreich). Danach klickt man den Knopf (Butsuccessful (Installation war eifolgreich). ton) Restart Windows (Neustart von WINDOWS) an und es erscheint der Programmanager von WINDOWS mit einem neuen Fenster Math Soft Apps. In diesem Fenster befindet sich ein MATHCAD-Symbol (-Icon) mit der Bezeichnung Mathcad PLUS 5.0, mit dessen Hilfe das Programm in ublicher Weise durch Mausklick gestartet wird. Weiterhin befinden sich in diesem Fenster noch Symbole (Icons) mit den Bezeichnungen Mathcad Tutorial (Mathcad-Voifuhrunfi) (Mathcad-Vorfuhrung) und MathSoft Book Sampler (MathSoft Buch-Sampler), Desktop Reference (Desktop-Handbuch). Durch Anklicken der letzten beiden Symbole lassen sich zwei mitgelieferte Elektronische Bucher (Handbucher) bffnen. Unter einem Elektronischen Buch versteht man eine Sammlung von MATHCAD-Dokumenten, die Verfahren, Beschreibungen, Formeln und Grafiken aus verschiedenen Wissenschaftsgebieten enthalten. Auf die
14
2 Installation und Aufbau von MATHCAD
Elektronischen Bucher gehen wir im weiteren noch ausfUhrlicher ein. Durch Anklicken des Symbols Mathcad Tutorial (Math cad-Vorfuhrunrj) wird eine menugesteuerte Einfuhrung in MATHCAD gestartet.
2.3 Die Verzeichnisse von MATH CAD auf der Festplatte Nach der Installation befindet sich MATHCAD auf der Festplatte im Verzeichnis C:\WINMCAD. Hier stehen sowohl in der englischen als auch in der deutschen Version u.a. die Dateien MCAD.EXE (ausfuhrbare Programmdatei - Kern von MATHCAD) , MCAD.INI (Initialisierungsdatet) , MCAD.HLP (Hi!fedatei) , MCAD.MCC (Konjigurationsdatet) und die Unterverzeichnisse CLIPS, EFI, HANDBOOK, MAPLE, SPELL, TUTORIAL und USEREFI. 1m Unterverzeichnis HANDBOOK stehen Handbuchdateien mit der Endung .HBK, die die installierten Elektronischen Bucher aufrufen. Nach der Installation von MATHCAD sind es nur die beiden mitgelieferten Book Sampler (Buch Sampler) und Desktop Reference (Desktop-Handbuch), die sich in den Unterverzeichnissen SAMPLER bzw. DESKREF von HANDBOOK befinden. Diese beiden Unterverzeichnisse enthalten vor allem Dateien mit der Endung .MCD, d.h. MATHCAD-Dokumente. Neben den beiden Elektronischen Buchern, die bei der Installation eingerichtet werden, existieren noch mehr als 40 weitere fUr die Bereiche Elektrotechnik, Maschinenbau, Hoch- und Tiefbau, Chemie, Physik, Mathematik und Naturwissenschaften, die jedoch zusatzlich gekauft werden mussen. Fur die Mathematik sind dies die Elektronischen Bucher, die Dokumente fur hahere Mathematik, numerische Methoden, Finanzmathematik und Statistik enthalten. Die Elektronischen Bucher werden laufend erweitert und fur neue Gebiete erstellt. Das Prinzip der Elektronischen Bucher entspricht in MAPLE und MATHEMATICA den Zusatzpaketen (Packages) und Notebooks. Der Vorteil der Elektronischen Bucher liegt darin, daB sie in der Form eines Lehrbuchs, d.h. in der Sprache des Anwenders, geschrieben sind. 1m Unterverzeichnis MAPLE befindet sich die aus MAPLE ubemommene abgerustete Variante des Symbolprozessors (Dateien MAPLE.IND, MAPLE.LIB), der die Durchfuhrung exakter (symbolischer) Berechnungen erlaubt. 1m Unterverzeichnis TUTORIAL findet man Dateien, die eine menugesteuerte Einfuhrung in MATHCAD liefem. Der Start dieser EinfUhrung erfolgt entweder durch die Aktivierung der Datei TUTORIAL.EXE oder durch Anklicken des Symbols Mathcad Tutorial im WINDOWS-Fenster Math Soft Apps.
3 Bedienung der Benutzeroberflache der WINDOWS· Version
Nach dem Starten von MATHCAD erhalt man die in den Abb. 3.1 Cenglisch(englisch(deutschsprachige Version) dargestellte Benutsprachige Version) und 3.2 Cdeutschsprachige zeroberflache fur die WINDOWS-Version.
=
=
gl
g
Edit fdit
-u.u ID {qjセイゥャi QセipゥャbォヲG@
iセ@
:=
,--....
lext Math !lrllphics .!!rullhics
i セ セQ@
:: I '"=
セ@ cK, Qセiエャeja@
セケュ「ッャゥ」@
ᄋiセ@ iセ j@
I
セゥョ、ッキ@ Window
Hooks Iloolcs
..
セ i@
Help
セ@ Qセャッ@IA.1IIQ iエャᄃNセdo@IAlII2lI.II®.lu![!J Qセ{ijIq「ャ。@ II III Ilabla.labi iセ@
Itll
ItllB
..
+ r-
+
-+
セ@
-,
ュゥtfNGセiBェLclヲャイ@ iti1iF.1l·
file
--1 I-
,., .-. 11" 'Il"
"' ..•
In. •• ''
.
rf' I-I
Arbeitsfenster
.,-
-x'x, X'
I-
-::'
セ@ セ@
iJ-&
-セ@セ@ * I1+ ..
•.11. J1 Page 1
I
r."+l
Huto I auto
Abb.3.1.Benutzeroberflache Abb.3.1.BenutzeroberfHiche cler der WINDOWS-Version von MATHCAD 5.0 in englischer Sprache
16
3 Bedienung der Benutzeroberflache der WINDOWS-Version
,. .
セQ i@
., セNijBエc@ .Uilifilil:i"'.I,'t:IIl'Ii iNiF. mill
co
gl
JJ.ale /J.ateii
g
flcarbcilcn flcllrbcitcn
!J ID idセAゥャ・ Qセャヲゥ l!
・ ャ ャ [ セ セQ@iB
Lセ@
.... 1,., --+
セ@ iセejAa@ セ iセejAa@
Itll
I'-=::' I1 = 1-
IcX1 Icx1
Bechnen Beehnen
1irllflk セイ。ヲャォ@
Symbolilc .s.ymbolilr:
セ@ iセ@
ffensler ensler
Q@
....
BUJ;her 1 BU];her
Iftlllesl_I It!\luIOO Q セャオio@
Q Q QヲAIᄃN
Itll
F IKlloIlloblo'lo'l Itll 1!IIFIKllIlloblo'lo'l
;!:..
-
+
1-
11" 'JI'
1r-.....IO...
I-
1--IxlrIxl I-x'
A.-beilsfe".ler I\.-beitsf"" •• ".-
-
XV
l-
x, x, -::-
セ@4
1. 11 -I. -k
-I!:'
lセ
N@
.. I1+
+1 "I. I SelIc Selle 1
1I
I-; セ@
I 8uto 8ulo
Abb.3.2.Benutzeroberflache der WINDOWS-Version von MATHCAD 5.0 in deutscher Sprache
3.1 Meniileiste Die Menuleiste (englisch: Menu Bar) am oberen Rand der Benutzeroberflache enthalt folgende Menus: File - Edit - Text - Math - Graphics - Symbolic - Window - Books - Help
(deutsche Version: Datei - Bearbeiten - Text - Rechnen - Grafik - Symbolik - Fenster - Bucher - 1 ) Die einzelnen MenUs beinhalten u.a. Jolgende Untennenus, wobei drei Punkte nach dem Menunamen auf eine erscheinende Dialogbox hinweisen, in der die gewiinschten Einstellungen vorgenommen werden kbnnen. In Klammem steht der Name des entsprechenden Untermenus der deutschen Version: • File: (deutsche Version: Datei) Enthalt u.a. die bei WINDOWS-Programmen ublichen Dateioperationen
3.1
Meniileiste Meni.ileiste
* * * * * *
17
New (Neu)
Open (Offnen) Save (Speichern) Save As (Speichern unter) Insert (Einfiigen) Close (SchlieBen) Hs」ィQゥ・セョI@ * Save Configuration... (Konfiguration speichern...) * Execute Configuration File... (Konfigurationsdatei ausfiihren...) * Associate Filename... (Dateinamen verkniipfen...) * Page Setup ... (Seite einrichten...) * Print Preview... (Seitenansicht...) * Print... (Drucken...) * Exit (Beenden) • Edit: (deutsche Ver.s-ion: Bearbeiten) Enthalt EntMlt u.a. die bei WINDOWS-Programmen iiblichen Editieroperationen * Undo Last Edit (Letzte Anderung riickgangig machen) * Cut (Ausschneiden) * Copy (Kopieren) * Clear (LOschen) * Paste (Einfiigen) * Paste Special... (Inhalte einfiigen...) * Select All Regions (Alle Bereiche auswahlen) * Separate Regions (Bereiche trennen) Lines ... (Leerzeilen einfiigenlloschen...) * Ins/Del Blank lines * View Regions (Bereiche einsehen) * Insert pagebreak (Seitenumbruch einfiigen) * Set Right Margin (Rechten Rand fesdegen) * Clear Right Margin (Rechten Rand loschen) HeaderslFooters ... (Kopf-/FuBzeile HkッーヲMOfセコ・ゥャ@ * Headers/Footers ... ) * Align Regions (Bereiche ausrichten) * Find... (Suchen...) * Replace... (Ersetzen...) * Go to Page... (Gehe zu Seite ...) • Text: (deutsche Ver.s-ion: Text) zur Umschaltung von Formel- in Texteingabe durch Anklicken * Dient Zur des Untermeniis Create Text Region (Textbereich erstellen). Dieses Prinzip dient zur Zur Gestaltung des MATHCAD-Arbeitsfensters als erIauternder Text), das ArbeitsblattiRechenblatt (Berechnungen und erlautemder abspeichern liiBt laSt (als Datei mit der Endung sich auch in dieser Form abspeichem .MCD z.B. in das Unterverzeichnis HANDBOOK von MATHCAD). Ein Arbeitsblatt/Rechenblatt Arbeitsblatt!Rechenblatt wird bei MATHCAD als Dokument (englisch: document) bezeichnet. Beim Start ist man automatisch im Berech-
18
•
3 Bedienung der BenutzeroberfHiche der WINDOWS-Version
nungsmodus (Formelmodus) und kann die zu berechnenden mathematischen Ausdriicke eingeben. Man erkennt diesen Modus am Kursor in Form eines EinJiigekreuzes +. Machte man in den Textmodus umschalten, d.h. erlauternden Text eingeben, so geschieht dies durch Anklicken von Create Text Region (Textbereich erstellen) oder durch Driicken der Taste [) oder durch Anklicken des Symbols 0 in der Symbolleiste. Daraufhin erscheint ein Kastchen (als Textfeld bezeichnet), in dem hinter dem Kursor in Form eines EinJiigebalkens I der gewiinschte Text einzugeben ist. Das Verlassen der Texteingabe, d.h. des Textfeldes (und damit wieder Dbergang zur Formeleingabe), geschieht mittels Mausklick auBerhalb des Textes oder durch Betatigung der Tastenkombination ヲゥjセN@ * Weiterhin laBt sich die SchriJtart einstellen Change Default Font... (Standardschriftart andern...) bzw. andern Change Font... (Schriftart andern... ) . Math: (deutsche Version: Rechnen) Hier kannen u.a. * das Format bei Zahlenrechnungen Numerical Format... (Numerisches Format... ), * die SchriJtart fur die Formeleingabe Apply Font Tag... (Schriftartattribut anwenden...), Modify Font Tag... (Schriftartattribut andern... ), * die automatische Berechnung eines Dokuments Automatic Mode (Automatikmodus) (in der Nachrichtenzeile erscheint die Meldung auto) eingestellt, * die vordefinierten Variablen Built-In Variables ... (Vordefinierte Variablen... ) wie z.B. der Startwert (ORIGIN) ftir die Indexzahlung oder die Genauigkeit (TOL) fur numerische Rechnungen geandert, * Matrizen Matrices ... (Matrizen... ) definiert, * MajSeinheiten Units (Einheiten) festgelegt, * Funktionsbezeichnungen Insert Function... (Funktion einfiigen...) eingefugt, * SmartMath aktiviert werden. SmartMath ist ein Expertensystem, das von der NASA (USA) entwickelt wurde und das bei der Lasung von Aufgaben Untersti.itzung
3.1 MenGieiste Menilleiste
•
•
•
•
•
セ@
19
liefert. liefeft. Hierauf werden wir im Verlaufe des Buches (Abschn. CAbschn. 6.2) ausfuhrlicher fiihrlicher eingehen. Graphics: (deutsche Cdeutsche Version: Grafik) Graf"tk) Dient u.a. zur grafischen Darstellung von * Kuroen Kurven CX-Y_Darstellung erstellen), Create X-Y Plot (X-Y_Darstellung Fkichen * Fldchen Create Surface Plot (Flachendarstellung CFlachendarstellung erstellen) einschlieBlich der Festlegung der zu verwendenden Koordinatensysterne. In den Kap. 5 und 6 gehen wir hierauf ein. Symbolic: (deutsche Cdeutsche Version: Version: Symbolik) In diesem dies em Menu befinden sich alle aIle Kommandos (Befehle) CBefehle) zur exakten (symbolischen) Csymbolischen) Berechnung, die wir in den Kap. 5 und 6 behandeln. Window: (deutsche Cdeutsche Version: Fenster) Dient zur Einteilung und Gestaltung des Arbeitsfensters. Sind mehrere Dokumente (Arbeitsfenster) CArbeitsfenster) gebffnet, geoffnet, so lassen sich diese mittels * Tile (Nebeneinander) CNebeneinander) nebeneinander und * Cascade (Uberlappend) CUberlappend) uberlappend anordnen. konnen Leisten aus der Anzeige ausgeblendet werden, z.B. AuBerdem kbnnen mittels Hide Tool Bar (Symbolleiste CSymbolleiste ausblenden) SymboIleiste. die obere Symbolleiste. Books: (deutsche Cdeutsche Version: Bucher) Dient zum 6.ffnen 6./fnen der mitgelieferten Elektronischen Bucher Book Sampler und Desktop Reference und weiterer zusatzlich gekaufter Bucher, die auf der Festplatte installiert wurden. Help: (deutsche Cdeutsche Version: 1 1)) Beinhaltet die Hilfefunktionen Hiifefunktionen von MATHCAD.
Samtliche Berechnungen in MATHCAD lassen sich mit dies en Meniis, den diesen darin enthaltenen Untermeniis, den integrierten Funktionen (siehe Csiehe Abschn. Csiehe Abschn. 3.3) durchfuhren. Die erfor6.1) und den Operatorleisten (siehe Coder Tastenkombinationen derlichen Menufolgen werden durch Mausklick (oder oder B-Taste) erzeugt, ebenso die Operatoren aus den Operatorleisten, wahrend die Funktionen uber die Tastatur einzugeben sind. Funktionen
20
3 Beclienung cler Benutzeroberflache cler WINDOWS-Version
und Menus (Menufolgen) bezeichnen wir im folgenden als Kommandos (Kommandofolgen). AuszufUhrende Kommandofolgen schreiben wir in der Form Kommando_l => Kommando_2 => .... , wobei jedes Kommando noch durch eine Aktion auszulbsen ist ( Tastenkombination, B-Taste oder Mausklick bei Menus, Eingabe des Gleichheitszeichens bei Funktionen) .
•
セ@
Die fUr ein MATHCAD-Dokument eingestellte Konjiguration (Schriftart, Rechengenauigkeit usw.) kann man mittels der Kommandofolge File => Save Configuration... (deutsche Ver.sion: Datei => Konfiguration speichern... ) in die Konjigurationsdatei MCAD.MCC speichem und spatere fUr andere Dokumente wieder verwenden, indem man die Kommandofolge File => Execute Configuration File... (deutsche Ver.sion: Datei => Konfigurationsdatei ausfiihren... ) aktiviert .
•
3.2 Symbolleiste Unterhalb der Menlileiste befindet sich die Symbolleiste (englisch: Tool Bar) mit einer Reihe schon aus anderen WINDOWS-Programmen (vor allem aus Textverarbeitungsprogrammen) bekannten Symbolen (z.B. fUr Dateibffnung, Dateispeicherung, Drucken, Ausschneiden, Kopieren, Einfligen) und weiteren MATHCAD-Symbolen, auf die wir im Laufe des Buches noch eingehen. Unter dieser Symbolleiste gibt es eine Schriftleiste (Schriftartleiste) zur Einstellung der Schriftarten und -formen (englisch: Font Bar). Darunter schlieBt sich das Arbeitsfenster an, das den grbBten Teil des Bildschirms belegt.
3.3 Operatorleisten An der linken Seite des Arbeitsfensters liegt die Operatorleiste (englisch:
Operator Palette oder Symbol Palette) in flinffacher Form (Nr.1-5), wobei die Umschaltung mittels Mausklick auf die Nummer der Leiste erfolgt. Diese fUnf Operatorleisten (auch als Werkzeugleisten oder Operatorpaletten be-
3.4 Nachrichtenleiste
21
zeichnet) enthalten die gangigen mathematischen SymbolelOperatoren Cu.a. Differentiationssymbol, 1ntegralzeichen, Summenzeichen, Matrixsymbol, Wurzelzeichen) und griechische Buchstaben, wobei das gewiinschte Zeichen durch Mausklick Coder Tastenkombinationen) in das Arbeitsfenster an die durch den Kursor festgelegte Stelle kopiert wird. Die in den Leisten enthaltenen Operatoren und Symbole dienen sowohl zur Durchfiihrung exakter als auch numerischer Rechnungen, wie in den Kap. 5 und 6 erlautert wird.
3.4 Nachrichtenleiste Vnter dem Arbeitsfenster liegt die aus vielen WINDOWS-Programmen bekannte Nachrichtenleiste CStatusleiste, Meldungszeile), aus der man u.a. 1nformationen uber die aktuelle Seitennummer, die gerade durchgefUhrte Operation und den Berechnungsmodus Cz.B. auto) erhalt.
3.5 Das Arbeitsfenster und die Gestaltung eines MATHCAD-Dokuments Den Hauptteil der Benutzeroberflache nimmt das Arbeitifenster ein, das nach oben, unten und links durch die eben besprochenen Leisten begrenzt wird. Das Arbeitsfenster kann wie ein ArbeitsblattiRechenblatt gestaltet werden, das durch Berechnungen (Forme1n), Grafiken und erlauternden Text charakterisiert ist. So verwandelt sich die WINDOWS-Benutzeroberflache in einen intelligenten Notizblock, in dem per Mausklick oder uber die Tastatur Gleichungen, Formeln, Grafiken und Text an beliebiger Stelle des Arbeitsblatts eingefugt werden k6nnen. Diese Gestaltung laBt sich durch folgende Vorgehensweise erreichen: Beim Start ist man automatisch im Formelmodus CBerechnungsmodus), d.h., wir k6nnen zu 16sende Gleichungen und zu berechnende Formeln Cmathematische Ausdrucke) an der Stelle eingeben, an der sich der Kursor CEinfugekreuz +) befindet. Man erkennt diesen Modus am Einjugekreuz +. Fur diese Eingabe stehen insgesamt 65 verschiedene Operatoren, Symbole und griechische Buchstaben aus den fUnf Operatorleisten per Mausklick zur Verfugung. Die Operatoren und Symbole erscheinen gegebenenfalls mit Platzhaltern fur ben6tigte Werte. Nach der Eingabe der entsprechenden Werte in die Platzhalter und Vrnrahmung des gesamten Ausdrucks mit einer Selektionsbox kann durch Anklicken des Menus Symbolic CSymbolik) oder Eintippen des symbolischen Gleichheitszeichens セ@ die exakte Csymbolische)
22
3 Bedienung der BenutzeroberfHiche der WINDOWS-Version
Berechnung bzw. durch Eintippen des numerischen Gleichheitszeichens = die naherungsweise (numerische) Berechnung in der eingestellten Genauigkeit veranlaBt werden. Mochte man in den Textmodus umschalten, urn erlauternden Text an einer durch den Kursor markierten Stelle eingeben zu konnen, so geschieht dies auf eine der folgenden Arlen: * Anklicken von Create Text Region (Textbereich erstellen) in dem zum Menu Text gehorigen Untermenu. * Anklicken des Symbols 0 in der Symbolleiste. * Eingabe von c:J mitte1s der Tastatur. Man erkennt den Textmodus am Texifeld , das mit dem Einfugebalken beginnt und von einem Kastchen umrahmt ist, das wahrend der Texteingabe laufend erweitert wird. Das Verlassen der Texteingabe (und damit wieder Obergang zur Forme1eingabe) geschieht mitte1s Mausklick auBerhalb des Textes oder Eingabe der Tastenkombination (j[)B. Ein ArbeitsblattiRechenblatt wird bei MATHCAD als Dokument (englisch: document) bezeichnet und kann mitte1s der Kommandofolge (Menufolge) File セ@ Save As ... (deutsche Ver.s-ion: Datei セ@ Speichern unter... ) als Datei mit der Endung .MCD (Abkurzung fur MATHCAD-Dokumente) abgespeichert werden (z.B. in das Unterverzeichnis HANDBOOK von MATHCAD oder auf Diskette). In Abb. 3.3 zeigen wir ein Arbeitsfenster, in dem wir am Beispiel der Umformung von Ausdrticken (Abschn. 5.5) mittels der deutschen Version ein ArbeitsblattiRechenblatt gestalten, das wir als Dokument TEST.MCD abspeichern.
3.5
-gJI g
MATHCAD-Dokuments Das Arbeitsfenster und die Gestaltung eines MATHCAD-Dokuments .0
flearbelten llearbelten
D QセャイゥYi[ᄃ .MII110
セ セQ@ AG
Iセi@
I.::. -= 1 I I-.......
I-
1-,.,
-....-
I-
.
., Qatel natei
Iext
セ@ell. iqcャsjHBG}セ@Q|{oイ
jiaャBセQ@ {ッエ}ZウNオGヲH
n m fo I[ (0 r m IIII n D
•
I
,Graflk !iraflk
Bechnen
セケュ「ッャォ@
0 ャセョ
I{セi@ セi@
BU,I;her BUj;her
fenster Eenster
Zウ iNj
1
23
·1 Biセ@ ; 1 ;セ@ 1
{ᆴjオi@
ャセェ{ヲ Ikャオ@ Ilablo_labl l!iIFIXI"llablo'lalol セ@
8 :EOD von Au s d r ii eke n AU5dr:ii!;;:kcD
•
j-J
Terei1'lfi>.c:he fulgenden Ausdrucle den tblgenden
'If 11'
-r -, iセ@
".2 ..'
""8', "'Sib' '''8 ib' :ur""8'.
1
1
7 ..
.(,. (2 .("
+ 1»
1 4 + __ 4 __ 1 + (2(,.-1)) (x (2 ·(" - 1» ex _- 1)2 I)'
3) 1'0-1"" Man fak1o fak10risiere ..... iere den tb1gendeo fulgendeD A ....... ... drucl Solve for Variable (deutsche Version: Symbolik => Nach Variable auflosen) aktiviert.
セ@
Zur Lasung von Gleichungen f(x) = 0 genugt es, nur die Funktion f(x) einzugeben und abschlieBend die obige Kommandofolge zu aktivieren .
• セ@
Wenn von MATHCAD keine exakte L6sung einer Gleichung oder Ungleichung gefunden wurde, kann eine der folgenden Reaktionen auftreten: * Es erscheint eine Dialogbox mit dem Hinweis: Result special to Maple. Save in clipboard? (Ergebnis ist Maple-speziJisch. In ZWischenablage speichern'!). Das daran anschlieBende Anklicken des Ja-Knopfes (-Buttons) liefert die Anzeige (hat als L6sung(en) Root) . has solution(s) Root
5.7 LOsung Losung einfacher Gleichungen und Ungleichungen
61
Der Inhalt der ZWischenablage Zwischenablage laBt HiBt sich durch Anklicken des EinfiigeSymbols in das Arbeitsfenster kopieren. Aus der in MAPLE-Syntax geschriebenen Anzeige kann man manchmal manchrnal SchluBfolgerungen auf die Lasungen ziehen. Haufig wird aber lediglich die Gleichung nochmals angezeigt (siehe Beispiel 5.20j). * Es erscheint eine Dialogbox mit dem Hinweis No answer found (keine Antwort gefunden). * Die Rechnung wird nicht beendet. Ein Abbrnch ist durch Driicken der (@-Taste セM Taste maglich. fur die Lasung LOsung allgemeiner (nichdiDiese Meldungen treten haufig auf, da filr (nichtlinearer algebraischer oder transzendenter) Gleichungen und Ungleichungen kein endliches L6sungsverjahren Losungsverfahren existiert. Man kann in diesem Fall das vorhandene Numerikkommando roots (wurzel) zur naherungsweisen LOsung ausfuhrlich im Abschn. 6.7 heranziehen. Auf dieses Kommando Komrnando gehen wir ausfilhrlich ein. Des weiteren kann man die Funktion f(x) grafisch darstellen (siehe filr die dazugeharige Gleichung Abschn. 5.9), urn Aussagen tiber uber Lasungen fur bzw. Ungleichung zu erhalten .
•
Betrachten wir eine Reihe von Beispielen. Beispiel 5.20: Die folgende Auswahl von Aufgaben gibt einen kleinen Einblick in die Wirksamkeit von MATHCAD bei der Lasung von Gleichungen und Ungleichungen. a) Die grafische Darstellung der Funktion x - sin(x) : x := - 2, -1.9999 .. 2 2
x- sin(x) 0
-1
/
/
---z -2
o
2
x
laBt ihre einzige reelle Nullstelle x = 0 erkennen. Diese wird von MATHCAD berechnet:
x - sine x) bas has solution(s) so[ution(s)
0
b) Fur Ftir die Gleichung cos x - e- x = 0 wird nur die Lasung 0 geliefert: hat als L6sung( Losung(en) en) 0 case cose x) - e --xx bat obwohl weitere (unendlich viele) LOsungen existieren, wie man aus der grafischen Darstellung entnehmen kann:
62
5 Erstes Arbeiten mit MAlliCAD
x := - 2, -1.999 .. 30 5
A
o 'J
cos(X) - e- x
/\
セ@
V
/'
A
V
V
-5 -10
o
30
20
10 x
c) Fur die Gleichung 3 cosh x - sinh x - 9 = 0 , die sich durch Einsetzen der Definitionen fur fUr sinh und cosh und die daran anschlieBende Transformation y =
eX
auf die quadratische Gleichung y2 -9y + 2 = 0 zuriickfiihren HiBt, liefert MATHCAD nicht die heiden LOsungen zurtickftihren Losungen Xl
= In 9 + .fi3 fi3
x2
2
= In 9 -
.fi3 fi3
2
Es erscheint die Anzeige keine Antwort gefunden. d) Fur die Gleichung 1 + x - .Jl -- x = 0 bestimmt bestinlmt MATHCAD eine richtige und eine falsche reelle Losung:
l+x-.Jl-x
hat als Losung(en)
HセSI@
bzw.
l+x-.Jlx =0 l+x-.Jl-x
hat als L6sung(en) Losung(en)
HセSI@
Man kann durch Einsetzen leicht nachprtifen, nachpriifen, daB -3 keine Lasung L6sung der Gleichung ist, wie auch die grafische Darstellung bestatigt:
5.7 LOsung einfacher Gleichungen und Ungleichungen
63
xx== - 33,, - 2.999 .. 1
01 ッセMK@ セO@
QKクMセ@
o
-2 x
e) Die folgende Ungleichung wird problemlos gelbst:
x 2 _- YGクKRセo@9· x + 2 セ@ 0
セ@ セQ@ i セ@ J73] H クセRMANjWS}@-+_.J73 -+_.J73 X9 [9
hatalsLDsung(en) hat als Losung(en)
-
2•
セク@
2 2 Die grafische Darstellung bestatigt das erhaltene Ergebnis: x= -1,-0.999 .. 10
01
I セ@
x 2 - 9·x+ 2
MRPlGセ@-20L.......l----....l....-------l
o
5
10
xx
ODie folgende Ungleichung wird unvollstandig gelDst: gelost:
Ix-II
+
Ix + 11 :. : 3
has solution(s)
Hセク@
)
da die weiteren Lbsungen x ::; - 3/2 nicht erkannt werden. Die grafische Darstellung bestatigt dies:
64
5 Erstes Arbeiten mit MATH CAD
, セ@ 2.999 .. 3 x := -セ@ 3 ,-
2
( Ixiクセ@ 11 + Ix+ 11) -セ@ 3
o
-2
1\\
ij II
\
1\\
\
/
/
/
セR@
-2
o
2
x
gelijst: Ungleichung wird falscb falsch gel6st: g) Die folgende Ungleicbung セ@ 11 IIxx-II
+
Matrices ... (deutsche Version: Ver:sion: Rechnen ::::) => Matrizen...) oder Arlklicken Anklicken des Matrixsymbols in der Operatorleiste Nr.2 erscheint eine Dialogbox, in die nach Rows: Ver:sion: Zeilen:) (deutsche Version: die Anzahl der Komponenten des Vektors und nach Colums: Ver:sion: Spalten:) Spaiten:) (deutsche Version: eine 1 einzutragen sind, d.h., Vektoren werden als Spaltenvektoren eingegeben. ArlschlieBend AnschlieBend erscheint im Arbeitsfenster ein Vektor der Gestalt (z.B. bei vier Komponenten):
5.8 Vektorrechnung
67
{セ}@ in dessen Platzhalter die entsprechenden Komponenten einzutragen sind. II. Vektoren konnen durch Anklicken des Symbols
Gl aus der Operatorleiste
Nr.l erzeugt werden. In die erscheinenden Platz-
halter I
•
wird die Bezeichnung des Vektors (z.B. x) und des Index (z.B. i) eingetragen. AnschlieBend konnen mittels der Zuweisungsoperatoren := oder == den Komponenten Xi (i = 0, 1, 2, 3, ... , n) des Vektors x Werte zugewiesen werder).. Dies kann auch unter Verwendung von Bereichsvariablen geschehen, falls die i-te Komponente des Vektors eine Funktion des Index i ist. Falls man den Komponenten Zahlen zuweisen mochte (Eingabe als Zah len tabelle) , so geschieht dies durch Eingabe eines Kommas nach jeder Zahl. Die Vorgehensweise ist aus Beispiel 5.21a ersichtlich. III. Vektoren konnen eingelesen werden (von Festplatte oder Diskette), wie in Abschn. 6.1.1 besprochen wird.
セ@
Es empfiehlt sich, Vektoren (vektorielle) Variablen zuzuordnen, wie wir in den Beispielen 5.21 und 5.22 vorfUhren.
•
セ@ Aus Beispiel 5.21 sind die drei Darstellungsmoglichkeiten fUr Vektoren ersichtlich, die MATHCAD nach abschlieBendem Eintippen des numerischen Gleichheitszeichens gestattet: • als rollende Ausgabetabelle (mit Zeilen- und Spaltennummer) nach der Eingabe des Vektornamens, wenn der Vektor mehr als 9 Komponenten besitzt, • als Ausgabetabelle nach der Eingabe des Vektornamens mit Index, • als Spaltenvektor nach der Eingabe des Vektornamens bei hochstens 9 Komponenten oder durch Unterdruckung der Zeilen- und Spaltennummer (siehe auch Abschn. 6.1.1), indem man die Kommandofolge Math =::) Numerical Format...
68
5 Erstes Arbeiten mit MATHCAD
(deutsche Ven-ion: Rechnen :::} Numerisches Format...) aktiviert und in der erscheinenden Dialogbox das Fe1d Display as Matrix (Als Matrix anzeigen) anklickt (ankreuzt) .
•
Beispiel 5.21: a) Wir mbchten einen Vektor nach der Methode II durch eine Zahlentabelle mit 6 Werten definieren. Dazu kbnnen wir die von MATHCAD angebotenen Eingabetabellen verwenden: ii= = 11.... x. Xi I
-
3 4 -
セ@
5 6 9
11
xX
jセ@
3 4 5 6
=
9 11
Die Eingabetabelle wird durch Eingabe eines Kommas nach jeder Zahl erhalten. Mit der von 1 bis 6 definierten Laufvariablen i lassen sich mitteis Eingabetabellen weitere Vektoren erzeugen, die auch weniger als 6 Komponenten haben kbnnen: Yj Yi==
セ@
Y
セ@ {セャ@
z
= =
z.I1 :=
セ@
F
z
[;]
m m
5.8 Vektorrechnung
69
b) Wir definieren zwei Vektoren x und y und zeigen die drei verschiedenen Darstellungsmoglichkeiten: ii= := 0 .. 10 xi := i + 1 Yi :=2· i
Ausgabe als rollende Ausgabetabelle Spaltennummer) : (mit Zeilen- und Spaltennttmmer) 0
0 0 0 I-- 1 2 I-- 2 4
0 0 1
2 3 r- 3 4 r- -
1 2
o -1 セ 1 T@ 4
7_ 22 __ 7 33 110
3 6 f-- 4 8 - f--
4 5 r-
5 6 x rx= 6 7 7 8 8 9 9 10
y= Y
10 11
4 13
5 10 6 12
-
1
x + y= 5 16 6 19
7 14
7 . 22
8 16 9 18
8 25 9 28
10 20
10 31
-
Ausgabe als Ausgabetabelle : xX.1.
Xi
1
Yi o
2
2
4
3
4
4
"66
7 10
5
8 10 12
13 16 19
[
"66 7 8
+Y + Yij
1
14
22
9
16
25
10 11
18 20
31
28
Diese Ausgabe wird durch Eingabe des numerischen Gleichheitszeichens erreicht. Ausgabe als Vektoren ::
CAD 5 Erstes Arbeiten mit MATH MATHCAD
70
1 2
0 2
1 4
3 4
4
7
6
10
8
13 x+y = 16
7
y= 10 12
8
14
9 10
16
25
18
28
11
20
31
5 xX= =I 6
19 22
•
Skalar - und Vektorprodukte berechnet MATHCAD mittels folgender Kommandos, wenn die Vektoren a und b vorher als Spaltenvektoren wie eben beschrieben eingegeben wurden: wurden: • Berechnung des Skalarprodukts durch Eingabe von a*b, • Berechnung des Vektorprodukts durch Eingabe von axb, wobei das Zeichen xx tiber die Tastenkombination セ`@I realisiert wird. Das Vektorprodukt kann auch mittels Anklicken des Operators
l:x;1 セ@ セ@
aus der Operatorleiste Nr.2 berechnet werden, indem man in die beiden erscheinenden Platzhalter
.x. I
x I
die Vektoren a und b eintragt, d.h. axb.. axb Die Umrahmung des eingegebenen Skalar- oder Vektorprodukts mit einer Selektionsbox und das abschlieBende Eintippen des numerischen Gleichheitszeichens liefem das Ergebnis.
セ@
Die eben beschriebene Vorgehensweise bewirkt die numerische Berechexakte Berechnung von Skalar- und Vektorprodukt funktioniert nung. Die e:x:akte weder mittels des Mentis Symbolic (Symbolik) noch mittels des symholischen symbolischen SmartMatb. Gleichheitszeicbens Math. Gleichheitszeichens von Smart
•
Beispiel 5.22: fUr die Vektoren Man berechne ftir (1, 3, 5), b = 0, (1,3,7) 3, 7) und c = (9, 6, 8) a = 0, a) das Skalarprodukt a 0 b = 45
5.9 Funktionen einer Variablen, ihre grafische Darstellung und 2D-Grafiken
71
b) das Vektorprodukt a x b = (6, -2, 0) c) das Spatprodukt (a x b) 0 c == 42 1m MATHCAD-Arbeitsfenster kann man diese Berechnung in folgender Form realisieren:
a=m b=m c=m = 45
Skalarprodukt
a· b
Vektorprodukt
aXb=C2]
Spatprodukt
x b)· b) · c=42 (a X
•
セ@
Bei der Rechnung mit Vektoren ist zu beachten, daB MATHCAD bei der Numerierung der Komponenten immer mit Null beginnt (Standardeinstellung), wie aus Beispiel 5.21b ersichtlich ist. Dies HiBt liiBt sich andern, indem man die Kommandofolge Math =:} => Built-In Variables ... (deutsche Version: Vet:5ion: Rechnen =:} => Vordefinierte Vordef'mierte Variablen ... ) aktiviert und in der ・イウ」ィゥョセ、@erscheinenden Dialogbox in dem Feld ORIGIN den voreingestellten Wert 0 durch einen anderen Startwert (z.B. (z.B. 1) fUr die Numerierung der Komponenten ersetzt. Das gleiche Resultat wird durch Eingabe von ORIGIN:= 1 ORlGIN:= erzielt .
•
5.9 Funktionen einer Variablen, ihre grafische Darstellung und 2D-Grafiken Zur Untersuchung Untet:5uchung von Funktionen einer Variablen y == f(x) stellt MATHCAD umfangreiche Hilfsmittel zur VerfUgung. Hierzu zahlen ziihlen u.a. Nullstellenbeurnfangreiche stimmung (Abschn. 5.6 und 5.7), Grenzwertberechnung (Abschn. 5.10), Differentiation (Abschn. 5.11), die man auch zur DurchfUhrung von KurvenKuwendiskussionen (Abschn. 5.12) ben6tigt. Den AbschluB einer durchgefUhrten Dat:5tellung der behandelten Funktion Kurvendiskussion stellt die grafische Darstellung dar. Diese Arbeit wird von MATHCAD ebenfalls ubernommen. tibernommen. Es zeichnet
72
5 Erstes Arbeiten mit MA1HCAD
die Funktionskurven wesentlich genauer als dies per Hand mbglich ist. Die von MATHCAD fur die grafische Darstellung zur Verfugung gestellten Kommandos behandeln wir in diesem Abschnitt. Es wird empfohlen, mit den vorhandenen Grafikkommandos zu experimentieren (durch Wahl verschiedener Optionen, Bereiche usw.), urn einen Einblick in die vielfaltigen Gestaltungsmbglichkeiten zu erhalten. Reelle Funktionen f einer reellen Variablen x (man verwendet haufig die mathematisch nicht exakte Schreibweise f(x)) sind abstrakt als Mengen von geordneten Paaren definiert. Fur unsere weiteren Betrachtungen verwenden wir die folgende anschaulichere Definition: Eine Vorschrift, die jeder reellen Zahl x aus einer gegebenen Menge A genau eine Zahl y aus einer Menge B zuordnet, heiflt reelle Funktion f einer reellen Variablen x. Man beschreibt diese eindeutige Abbildung der Menge A auf die Menge RCD :={yEB / y=f(x) , xEA} セ@ B durch y = f(x) und bezeichnet A als Definitionsbereich DCD und RCD als Wertebereich (auch mit WCD bezeichnet) der Funktion f.
セ@
MATHCAD kennt eine Vielzahl von Funktionen, von denen wir bereits in
Abschn. 5.2 die elementaren Funktionen (Standardfunktionen) behandelten. Aile MATHCAD bekannten Funktionen sind in einer Dialogbox enthalten, die bei der Aktivierung der Kommandofolge Math セ@ Insert Function... (deutsche Version: Rechnen セ@ Funktion einfiigen...) erscheint. In dieser Dialogbox stehen links die vorhandenen Funktionen und rechts Erlauterungen dazu. Durch Markierung (mittels Mausklick) der gewiinschten Funktion und Anklicken des Knopfes (Buttons) Insert (Einfugen) wird diese Funktion an der durch den Kursor markierten Stelle in das aktuelle Dokument des Arbeitsfensters eingefugt.
• セ@
MATHCAD MBt in einfacher Weise die Definition eigener Funktionen f mittels der Zuweisungsoperatoren := Clokal) und == (global) zu, wobei die Be-
deutung dieser beiden Operatoren analog zu der bei Variablen ist (siehe Abschn. 5.2). Die Vorgehensweise hierfur ist aus dem Beispiel fex) := sin(x) ++ In(x) ++ x ++ 1 bzw. f(x) == sin(x) ++ In(x) ++ x ++ 1 ersichtlich, in dem die Funktion f(x) lokal bzw. global definiert wird. Wenn eine Funktion aus mehreren analytischen Ausdrncken besteht, wie z.B.
5.9 Funktionen einer Variablen, ihre grafische Darstellung und 2D-Grafiken
wenn x
f(xl " {:,
セ@
73
0
wenn 0 1 so kann sie mittels der Bedingungsfunktion ij(wenn) definiert werden, wie in Abschn. 6.1.4 (Beispiel 6.4) demonstriert wird .
•
セ@
Bei der Definition eigener Funktionen ist zu beachten, daB MATHCAD nicht zwischen Funktions- und Variablennamen unterscheidet. Wenn man beispielsweise eine Funktion vex) und anschlieBend eine Variable v definiert, so ist die Funktion vex) im weiteren nicht mehr verfugbar.
•
Funktionen einer Variablen f lassen sich mittels eines kartesischen Koordinatensystems grafisch darstellen, indem man die Punktmenge { (x,y) E R2 / y == f(x) , x E DCD } zeichnet, die als Graph, Funktionskurve oder Kurve von f bezeichnet wird. Die so definierten Graphen konnen aber nicht aIle moglichen ebenen Kuryen darstellen. Dies wird dadurch begriindet, daB eine Funktion y = f(x) als eine eindeutige Abbildung definiert ist, so daB geschlossene Kurven wie z.B. Kreise und Ellipsen, aber auch Hyperbeln damit nicht beschrieben werden konnen. So besitzt zum Beispiel ein Kreis (mit Mittelpunkt in 0 und Radius a > 0) in kartesischen Koordinaten die Gleichung CimpliziteDarsteliungder Form F(x,y) == 0), x 2 + y2 = a 2 die nicht eindeutig nach y auflosbar ist. Eine explizite Darstellung in der Form y = f(x) ist deshalb fur den Kreis nicht moglich. Bei der Auflosung nach y erh:ilt man die beiden Halbkreise y == Ja2 - x 2 und y == -- Ja2 - x2 . Eine Kurve mit der Gleichung F(x,y) 0 besteht aus allen Punkten der Menge { (x,y) E R 2 / F(x,y) == OJ. Ebene Kurven lassen sich im kartesischen Koordinatensystem auch durch eine Parameterdarstellung der Form x = x(t) , y = yet) t E [a, b], d.h. a セ@ t セ@ b beschreiben. Eine mogliche Parameterdarstellung fur den obigen Kreis lautet x = a cos t y = a sin t, worin der Parameter t (auch mit
+1 ), fUr fi.ir die die Funktion nicht definiert ist.
•
セ@
f(x) benotigte benbtigte Man kann die fUr die grafische Darstellung einer Funktion fex) Definition der unabhangigen Variablen x als Bereichsvariable zusatzlich zur dazugehbrigen Funktionswerte fex) f(x) Ausgabe der definierten x - Werte und der dazugehorigen verwenden. Man braucht hierzu nur x und fex) f(x) einzutippen und abschlievelWenden. Bend jeweils das numerische Gleichheitszeichen einzugeben, wie wir im folgenden Beispiel zeigen. Beispiel: Wir definieren die Funktion fex) xZ2 + 2 f(x) := = __x und x als Bereicbsvariable Bereichsvariable mit der Schrittweite 0.5: x = - 22,, - 1.5 .. 2 Damit lassen sich sowohl die Werte der Bereichsvariablen x als auch die dazugehbrigen Funktionswerte fex) f(x) durch Eingabe des numerischen Gleichdazugehorigen heitszeichens berechnen: x
fex)
--22 --1.5 1.5 -1 -·0.5 0.5 0 0.5 1 1.5 2
-2 - 0.25 -0.25 1 1.75 2 1.75 1 --0.25 0.25 -2
84
5 Erstes Arbeiten mit MATIfCAD
Fur die definierte Bereichsvariable x erhalt man die folgende Grafik fur f(x): 21 RイMセL@
_____ 1 ____
f( x) 0 II - - l -I-----!----\_ \ --\
o
2
x
•
Bei praktischen Aufgabenstellungen trifft man haufig den Sachverhalt an, daB eine gegebene Funktion (funktionaler Zusammenhang) Y Y = f(x) nicht analytisch gegeben ist, sondern nur in Form von n MejSpunkten (Xl' YI)' (x 2, Y2)'···' (x n, Yn)
vorliegt (fUr X und das dazugehbrige y). Es gibt in der Mathematik eine Reihe von Mbglichkeiten (u.a. durch Interpolation oder Methode der kleinsten Quadrate), diese MeBpunkte durch analytisch gegebene Funktionen (z.B. Polynome) anzuniihern, wie wir in den Abschn. 6.16.3 und 8.1 ausfUhrlich behandeln. MATHCAD bietet die Mbglichkeit, die vorliegenden MejSpunkte grafisch darzustellen. Diese grafische Darstellung von Punktepaaren ist in kartesischen Koordinatensystemen moglich, indem man die x-Werte einem Vektor X X und die y-Werte einem Vektor y zuordnet. Danach kann man verschiedene Darstellungsarten wahlen (mittels Format aus dem Menu Graphics). So lassen sich die gegebenen Punkte durch Geraden verbinden oder isoliert darstellen. Wir demonstrieren die Problematik im folgenden Beispiel, in dem wir gegebene MeBpunkte grafisch auf diese beiden Arten darstellen. Beispiel 5.24: Es sind 10 MeBpunkte (XI'YI)' (X2>Y2)' (XZ,Y2)' (x 3'Y3)' ... , (XlO'YIO)
mit den x-Werten -4.9, -4.1 , -2.9 , -1.8 , -0.7 , 0.1 , 1.2, 2.3 , 3.1 ,4.5 gegeben, fUr die sich die y-Werte folgendermaBen 2
Yi=X i
aus den x-Werten berechnen, d.h. wir haben MeBpunkte fUr eine quadratische Funktion gewahlt, urn das Ergebnis der grafischen Darstellung nachprufen zu kbnnen. Aus der folgenden Bildschirmkopie des Arbeitsblattes ist ersichtlich, daB zuerst die x- und y-Komponenten der MeBpunkte getrennt als Vektoren xx bzw. y einzugeben (bzw. einzulesen) und abschlieBend die Platzhalter des Grafikfensters auszufUllen sind. Dabei ist zu berucksichtigen, daB MATHCAD in der Standardeinstellung die Komponenten der Vektoren
5.9 Funktionen einer Variablen, ihre grafische Darstellung und 2D-Grafiken
85
vom Index 0 ab zahlt ziihlt (siehe Abschn. 5.S). 5.8). Weiterhin Weitefhin muB man beachten, daB die x-Werte Xi
def GroBe nach zu ordnen sind. Dies kann mittels der def Funktion sort aus der Abschn. 6.1.3 geschehen: gegebene 10 MejSpunkte
4.9 2 4.12 2.9 2
-4.9 -4.1 -2.9 -1.8 -1.S .xx :=
1
1.S 1.822 0.7 2 Y .- 1 0 .72 Y := 0.1 22
-0.7 0.1 0.1
1.22 2.3 22
1.2 2.3
3.1 2 4.5 2
3.1 4.5 i= 0 .. 9
nur Punkte dargestellt 30
I
3lJ
G-
20
oD
Yi 0
I10 f-
0D
0
-
0 0
0 1
-5
L on b 0
x.
1
0D
5
86
5 Erstes Arbeiten mit MATHCAD
Punkte durch Geraden verbunden Q SPNMLセ@
20 Yi
--e10
0' R b----oL......------....Eb-l=::..=..------....J -5 o 5 Xi
• 5.10 Grenzwertberechnung Wir mbchten den Grenzwert einer Funktion f(x) bzw. eines Ausdrucks A(n) an der Stelle x=a bzw. n=a berechnen, d.h. bzw. lim A(n). lim f (x) n-+a
x-+a
Bei der Grenzwertberechnung kbnnen unbestimmte Ausdriicke der Form
o %':' o -
00 00
,
,
0
0
セ@
0·00, O'ex:>, 00-00, ex:>-ex:>, 000,, 00 ex:>0,,1I"',,
...
auftreten. Fur Flir diese Hille Falle laBt sich die Regel von de l'Hospital unter gewissen Voraussetzungen anwenden. Diese Regel muB aber nicht in jedem Fall zum Ergebnis fuhren. ftihren. Deshalb ist nicht zu erwarten, daB MATHCAD immer ein Ergebnis bei der Grenzwertberechnung liefert. Mittels MATHCAD ftihrt man die exakte Berechnung eines Grenzwertes Mitte1s folgendermafSen folgendermaflen durch: • Zuerst wird der Grenzwertoperator
セ@ セ@
aus der Operatorleiste Nr.3 durch Mausklick ausgewahlt, in den Platzhalter hinter dem Operator f(x) bzw. A(n) und in die Platzhalter unter dem Operator x und a bzw. n und a eingetragen, d.h. lim f(x) bzw. lim A(n). A(n) . クセ。@
•
ョセ。@
AbschlieBend markiert man den gesamten Ausdruck mit einer Se1ekSelektionsbox und aktiviert eine der folgenden Kommandofolgen: I. Symbolic => Evaluate => Evaluate Symbolically セ@ セ@ (deutsche Ver.sion: Ver:sion: Symbolik => セ@ Auswerten => セ@ Symbolisch auswerセL@ ォ .
5.10 Grenzwertberechnung
87
II. Symbolic セ@=> Symplify Sympllfy (deutsche Version: Symbolik セ@=> Vereinfachen). Vereinfachen).
セ@
MATHCAD MA1HCAD gestattet auch die Berechnung einseitiger (d.h. linksseitiger oder rechtsseiti er) Grenzwerte mittels der beiden Operatoren
. NセM
lim
セ@
•
セ@
....;;. . -
aus der Operatorleiste Nr.3.
•
セ@
Fur Fi.ir a kann auch 00 (Unendlich) aus der Operatorleiste Nr.5 in den entsprechenden Platzhalter eingetragen werden, so daB auch die Grenzwertberechnung fUr bzw. ョセッ@ moglich fur クセッ@ mbglich ist.
•
セ@
iiberprnfen Falls die Grenzwertberechnung versagt oder man das Ergebnis iiberpriifen will, empfiehlt es sich, f(x) bzw. A(n) zeichnen zu lassen.
•
In den folgenden Beispielen berechnen wir eine Reihe von Grenzwerten, die einen Einblick in die Wirksamkeit Wirksarnkeit von MATHCAD geben. Beispiel 5.25: a) 3
2
2·x4 - 6·x 3 t-T X x 2 t-T 3 x -I x-I x --7 --C> 1 1 lim
ergibt
-8
b) linksseitiger und rechtsseitiger Grenzwert sind bei der folgenden Funktion verschieden: 2
lim
yields
o
yields
2
X--701 + T e xx
bzw. bzw. 2
lim X --C> 0+ 0+ x --7
1 +T e x MA1HCAD richtig erkennt: d.h., der Grenzwert existiert nicht, wie MATHCAD lim
2
X --7 --C> 0 0 X T e x 1 +
yields
undefined
88
5 Erstes Arbeiten mit MArnCAD
c)
lim x.sin('!) x-sin('!) ergibt x..,. 0 x クセ@
0
d)
lim
xSin(x) ergibt
1
x..,. 0 クセ@ e)
tan(x)cos(x) tan(x)Cos(x) yields 1
lim クセ@ x""
1t
2
t) f)
X+ 3 lim (x + 3)X+ 3 lim ( x+3 ) x--;;'oox-l x-700x-l
exp(4)
yields
g) lim x..,. x セ@ 00 00
HセMI@
MセI@
ergibt 0
h)
lim 00 xx..,. セ@ 00
3-x 3·x + cos(x) x
ergibt
3
MA1HCAD MATIICAD berechnet diesen Grenzwert, obwohl er nicht durch Anwendung der Regel von de I'Hospital erhalten werden kann, sondem nur . durch Umformung der Funktion in cos(x) 3
3+ + --x
und anschlieBender Abschatzung von
I- x - - oIセ@ COS(X)
iセ@
1
i)
x·ln(x) x-ln(x) - x + 1 lim --;;. 1 x-ln(x) x·ln(x) - In(x) x -7
j)
(r,.s.XHr (2 r
lim x + 5·x + 4 Ibn x-7 x --;;. 00 00 x 2 -3-x+7 - 3·x + 7
1 2
yields
-
yields
exp(S)
5.10 Grenzwertberechnung
89
k)
5X
lim X -7
00
4x
00
4x 5x
ergibt
00
o
1)
lim lim x
-7
ergibt
o
MATHCAD MA1HCAD berechnet die Beispiele k) und 0, 1), obwohl diese nicht nieht mittels mitteis der Regel von de l'Hospital I'Hospitai zu erhalten sind, wie man leicht Ieicht nachpriifen kann. m)
lim x--70 X -7 0
。エョHセI@
yields
x
.!.!. ·signum( c)·7t 2
MA1HCAD MATHCAD berechnet sogar den Grenzwert fUr den Hauptwert von arctan, wenn sich im Argument eine beliebige Konstante befindet. n) Der Grenzwert einer definierten Funktion laBt IiiBt sich mit der bisher behannieht berechnen: delten Methode nicht 2 ·x + sin(x) 2·x f(x) x + 3·In(x 3·ln(x + 1) lim f(x) -7 0 x --7
yields
f(O)
Das angezeigte Ergebnis gibt keinen Sinn, da f(x) an der Stelle 0 einen unbestimmten Ausdruck liefert. unbestimrnten Wenn man den Funktionsausdruck direkt in den Grenzwertoperator eingibt, berechnet MATHCADdas richtige Ergebnis: 3 ·. . lds 22·x ·x + sin(x) 11m yte yields 4 -7 0 X + 3·ln(x 3 ·In( x + 1) x --7 Mit dem symbolischen Gleichheitszeichen von SmartMath kann man auch Grenzwerte von definierten Funktionen berechnen, wie wir im Abschn. 6.2 zeigen . Abschn.
セ@
•
Die gerechneten Beispiele zeigen, daB MATHCAD MA1HCAD bei der Berechnung von Grenzwerten sehr effektiv arbeitet. Dies wird durch die Lasung Lbsung der BeispieIe h), k) und 1) unterstrichen, unterstriehen, bei denen die Regel von de l'Hospital nicht anwendbar ist.
90
5 Erstes Arbeiten mit MA1BCAD
•
セ@
Eine numerische Berechnung von Grenzwerten ist in MATRCAD nicht moglieh .
•
5.11 Differentialrechnung Wie wir bereits in der Einleitung erwahnten, laBt sich fUr die Bestimmung der Ableitung einer differenzierbaren Funktion f(x) , die sich aus Standardfunktionen zusammengesetzt, ein endlieher Algorithmus angeben, so daB alle Computeralgebra-Programme und damit aueh MATHCAD komplizierte Funktionen ohne Mi.ihe exakt (symboliseh) differenzieren. Damit liefert MATRCAD fUr die Differentiation ein wirkungsvolles Hilfsmittel und befreit von oft langwierigen Reehnungen per Hand, die meistens noeh fehlerbehaftet sind. Das betrifft die Ableitungen beliebiger Ordnung f' ex), f" ex), ... , fen) ex) fUr Funktionen y = f(x) einer Variablen x und partielle Ableitungen beliebiger Ordnung fUr Funktionen mehrerer Variablen, die wir im Absehn. 6.9.1 behandeln. Die folgenden Vorgehensweisen sind fUr die exakte (symbolische) Differentiation der Funktion f(x) bzgl. der Variablen x moglieh: 1. Die Funktion f(x) wird in das Arbeitsfenster eingegeben und eine Variable x mit dem Kursor markiert, bzgl. der differenziert werden soll. AnsehlieBend ist die Kommandofolge Symbolic セ@ Differentiate on Variable (deutsche Ver.>ion: Symbolik セ@ Nach Variable differenzieren) zu aktivieren. Als Ergebnis erhalt man die er.>te Ableitung der Funktion f(x) naeh der markierten Variablen. Moehte man eine hohere Ableitung bereehnen, so muB die eben besehriebene Vorgehensweise wiederholt ausgefUhrt werden. II. Die er.>te Ableitung einer Funktion f(x) wird ebenfalls geliefert, wenn man den Differentiationsoperator
I!I
aus der Operatorleiste Nr.1 dureh Mauskliek aktiviert und in dem erseheinenden Symbol
5.11 Differentialrechnung
91
-. d
d. die beiden Platzhalter wie folgt ausfullt
セヲHクI@d -f(x) dx den gesamten Ausdruck mit einer Selektionsbox umrahmt und abschlieBend eine der Kommandofolgen (1) Symbolic セ@ Evaluate セ@ Evaluate Symbolically (deutsche Ver:s-ion: Symbolik セ@ Auswerten セ@ Symbolisch auswerten), (2) Symbolic セ@ Simplify (deutsche Ver:s-ion: Symbolik セ@ Vereinfachen) aktiviert. Moehte man hiermit eine hohere Ableitung berechnen, so ist der Differentiationsoperator entsprechend oft zu schachteln. III. セ@ Verwendung des Dif.!erentiationsoperator:s-
セ@
aus der Operatorleiste Nr.3 l::iBt sich die gewiinsehte Ableitung n-ter Ordnung (n == 1, 2, 3, .. .) einer Funktion f(x) direkt bereehnen, indem man die Platzhalter
d·
--
d ••
.•
des erscheinenden Symbols folgendermaBen ausfiillt n
-d f(x) dxn den gesamten Ausdruck mit einer Selektionsbox umrahmt und abschlieBend eine der Kommandofolgen (1) Symbolic セ@ Evaluate セ@ Evaluate Symbolically (deutsche Ver:s-ion: Symbolik セ@ Auswerten セ@ Symbolisch auswerten), (2) Symbolic セ@ Simplify (deutsche Ver:s-ion: Symbolik セ@ Vereinfachen) aktiviert.
セ@
Die Methoden I und II empfehlen sich, wenn man nur die Ableitung er:s-ter Ordnung bestimmen mochte. Die Methode III ist vorteilhaft, wenn man eine hahere Ableitung benotigt. Die Differentiationsoperatoren aus II und III miissen angewandt werden, wenn man numerische Werte (Zahlenwerte) von einer Ableitung benotigt. In den Beispielen 5.26e und f) sehen wir die
92
5 Erstes Arbeiten mit MATHCAD
Vorgehensweise bei der numerischen Berechnung von Ableitungen fur einzelne x-Werte. MATHCAD besitzt den Nachteil, daB nur Ableitungen bis zur funften Ordnung numerisch berechnet werden. Wie man sich hier helfen kann, sehen wir im Beispiel 5.26f.
•
Beispiel 5.26: a)
。sゥョHRGセI@
1+x4 l+x 1-4.
by differentiation, yields
=.(4.
=1
x4 (1+X4r
5
x x (1+x4) -8'(1 4)2 +x
J
Fur diese Differentiation wird das Ergebnis in einer unubersichtlichen Form geliefert. Es empfiehlt sich deshalb eine anschlieBende Vereinfachung, die fur unsere Aufgabe das folgende Ergebnis liefert:
F
(x x ]J 1 1-4..==--1==-x=4: x4 = . 4· (1:X') (1+x4) -8· --;=1=-=4 -8- (1+x4r (1::')' (1+x4r (1+x4r simplifies to
x -4. (l+x
5
4)
b)
( 2) durch Differentiation, ergibt x(x x x2) -(2·x·ln(x) -( 2·x ·In(x) + x) Die Anwendung des Differentiationsoperators aus II gestaltet sich wie folgt und liefert natiirlich das gleiche Ergebnis: x(x 2)
セ@
dx
x(x 2 ) ergibt x(x 2 ) • (2 . x . In(x) + x)
c)
f(x) g(x)
durch Differentiation, ergibt
d -f(x) dx _ f(x) NセァHクI@ g(x) g(x)2 dx
vereinfacht auf
5.11 Differentialrechnung
H セヲHxI@dx
93
'g(x) - f(x) NセァHxI@
dx g(X)2 Damit haben wir die Quotientenregel f'g - fg' ----"'--:--=y' = ---='-:--=g2 zur Berechnung der Ableitung der Funktion y(x) = f(x) g(x) mittels MA1HCAD erhalten. d)
2)
5 x·ln ( 1 +x2) -d d x5 720
4
セ@
2
----·x -
(1 + x2?
ergibt
?
_ 1440.
x
+ 768.
6
x
(1 + x 2 (1 + x 2 (1 + x 2)5 Das gleiche Ergebnis erhiilt man durch fiinffaches Schachteln Schachteln des Differentiationsoperators aus II: dセクNャョHQ@ d d d d . x 22 ) ergibt - - - - x · l n O + x) ergtbt dxdxdxdxdx 4 66 720 60 720 .x22 _60 _- 1440. xx4 . 4 + xx 1440· + 768. __ _....,.·x 768· 5 23 22 24 2 5 (1 + x 2 ) 3 (1 + x 2 ) 2 (1 + x 2 ) (1 + x 2 ) O+x) O+x) O+x) O+x) Man sieht, daB sich die Schachtelung aufwendiger gestaltet, so daB dieser Differentiationsoperator nur bei Ableitungen erster Ordnung zu empfehlen ist. e)
In diesem Beispiel berechnen wir die Ableitung fUnfter Ordnung der Funktion aus d) numerisch fUr einen vorgegebenen x-Wert:
xx== 3 -d 5 x·ln ( 1 + x d x5
2)
=
-0.185
94
5 Erstes Arbeiten mit MAlliCAD
D d6
720
ergibt
d x6 1 - x
(1 (I - x)
7
Moehte man diese Ableitung an der Stelle x=2 numerisch berechnen, so miiBte das Ergebnis -720 erseheinen. Man erhalt aber die Anzeige: x:= 2 d6
x 6 1I - x Ungiiltige Reihenfolge da MATHCAD Ableitungen numeriseh nur bis zur funften Ordnung bereehnet. Man kann sieh in dies em Fall auf zwei versehiedene Arten helfen: I. Schachtelung des Differentiationsoperators : x := 2 3 d 33 I =-720 @セ - _1_ dd 3 dx3 dx 3 I-x II. Vorherige symbolische Differentiation: g(x)
d6 d x6 1 I- x
yields
720 g(x) g(x)-= - 720 -(1 - x) 7
g(2) = -720 g) Definierte Funktionen, wie z.B. f(x) := sin(x) ++ In(x) ++ x ++ 1 lassen sieh mit den gegebenen Methoden nicht differenzieren, wie das folgende Beispiel zeigt: f(x) : = sin(x) + In(x) + x + 1
d d dx f(x) yields dx f(x) d f(x) by differentiation, yields dx f(x) Hier fuhrt nur das symbolische Gleichheitszeichen von SmartMath zum Erfolg (siehe Absehn. 6.2) h) Betraehten wir das Verhalten von MATHCAD, wenn man versueht, eine Funktion zu differenzieren, die nicht in allen Punkten des Definitionsbereiehs differenzierbar ist. Wir nehmen die Funktion
5.12 Kurvendiskussion
95
f(x) = I xl und erhalten als Ergebis der exakten Differentiation
セ@
セ@
-セ@ f(x) セ@ セ@ -セ@ bzw. Ixl by differentiation, yields Ixl dx x x fur x;t() riehtig richtig ist. In x=O ist die Funktion nieht nicht differenzierbar. das nur fUr MATIfCAD Fur die numerische Differentiation an der Stelle x=O liefert MATHCAD das falsche Ergebnis x := 0 d
セヲHクI@
=
0
dx
•
セ@
Wentl man von dem Nachteil bei der numerischen Berechnung einer Ableitung absieht, arbeitet MATIfCAD MATHCAD bei der Differentiation effektiv, wie die gegebenen Beispiele zeigen. MATHCAD MATIfCAD befreit von der oft muhevollen Arbeit bei der Differentiation komplizierter Funktionen und liefert das Ergebnis in Sekundenschnelle. Man allerdings vor einer Differentiation nachpriinachprunieht imrner immer fen, ob die Funktion differenzierbar ist, da dies von MATHCAD nicht erkannt wird (siehe Beispiel 5.26h) .
•
5.12 Kurvendiskussion Eine Kuroendiskussion Kurvendiskussion dient dazu, Eigenschaften und Form der Funktionskurve einer gegebenen Funktion f(x) zu bestimrnen. bestimmen. Dazu dienen * Ermittlung des Definitions- und Wertebereichs, Wertebereiehs, * Untersuchung von Symmetrieeigenschaften, * Bestimrnung Bestimmung der Unstetigkeitsstellen (Poistellen, Sprungstellen, ... .. .)) und der Stetigkeitsintervalle, * Untersuchung auf Differenzierbarkeit, Bestimmung der Schnittpunkte mit der x-Achse (Nullstellen) und der y* Bestimrnung Achse, Bestimmung der Extremwerte (Maxima und Minima), * Bestimrnung Bestimmung der Wendepunkte, * Bestimrnung * Bestimrnung Bestimmung der Monotonie- und Konvexitatsintervalle, (Bestimmung der Asymp* Untersuchung des Verhaltens im Unendlichen (Bestimrnung toten), * Berechnung geeigneter Funktionswerte.
96
5 Erstes Arbeiten mit MATHCAD
Unter VelWendung der bereits behandelten Grafikeigenschaften von MATHCAD (siehe Abschn. 5.9) HiBt sich die Funktionskurve zeichnen, aus der man Informationen uber die meisten der gegebenen Eigenschaften erhalten kann. Aus der Grafik lassen sich auch Startwerte fur eventuell zu velWendende Nahernngsverjahren entnehmen, z.B. Zur Bestimmung der Nullstellen, Maxima, Minima und Wendepunkte, falls deren exakte (symbolische) Berechnung versagt. Man sollte sich nicht ausschlieBlich bei einer Kurvendiskussion auf die gelieferte grafische Darstellung verlassen, sondern auch die oben gegebenen Eigenschajten analytisch unter VelWendung der von MATHCAD zur Verfugung gestellten Kommandos fur die * L6sung von Gleichungen (zur Bestimmung von Nullstellen, Extremwerten, Wendepunkten), * Differentiation (zur Bestimmung von Monotonie- und Konvexitatsintervallen, zur Aufstellung der Gleichungen fur die Bestimmung von Extremwerten und Wendepunkten) untersuchen, da eine von MATHCAD gelieferte Grafik fehlerbehaftet sein kann. Betrachten wir die M6glichkeiten fur die Durchfuhrung von Kuroendiskussionen mittels MATHCAD an einer Reihe von Beispielen. Beispiel 5.27: Fur die im folgenden gegebenen Funktionen zeichnen wir zuerst den Graphen und untersuchen anschlieBend analytisch die Eigenschaften unter VelWendung der entsprechenden MATHCAD-Kommandos. a) Untersuchen wir eine gebrochenrationale Funktion der Form x+l
y = --:----::-----:----:---x 3 + 6x 2 + llx + 6 fur die von MATHCAD im Intervall [-4, 4] durch Berechnung von Funktionswerten ( mit der Schrittweite 0.3 ) die folgende Funktionskurve gezeichnet wird:
5.12 Kurvendiskussion
97
x= -4,-3.7 .. 4 10 •
I x+1 3 2 x +6·x +1l·x+6
0
I
l) LJ セ@
I
/\ 1\
5
セi@ -I 0)
V \セ@ --z
-4
o
4
x
Diese Zeichnung ist ungenau, SO daB wir die Funktion im Intervall fUr die Funktionswertberech[-4.05, 4] nochmals mit der Schrittweite 0.1 fur nung zeichnen und das folgende genauere Bild erhalten: xx : = - 4.05 , - 3.95 .. 4
20
10
l; セ@
セ@セ@
n
x+1
(\
x 3 + 6.x 2 +11.x+ 6 -10 I
II
セPQMK@--20 ;
I MSPセQ@
-30
セ@
-6
____Mlセ@
I
____-L______セ@
-4
---2
I
________L-____セ@
o x
98
5 Erstes Arbeiten mit MATHCAD
Das letzte Bild zeigt die Funktionskurve in einer wesentlich besseren Form, wie die folgenden Untersuchungen zeigen, d.h., die Gestalt der Kurve wird wesentlich von der Wahl der Schrittweite fur die Funktionswertberechnung beeinfluBt. Dabei mussen die Intervallgrenzen bzw. die Schrittweite so gewahlt werden, daB eventuell vorhandene Singularitaten (Poistellen) fUr die Funktionswertberechnung ausgeschlossen werden. (Polstellen) Jetzt prtifen prufen wir mittels analytischer Untersuchungen nach, ob die zuletzt gezeichnete Kurve wirklich die gesuchte Funktionskurve darstellt: Dazu faktorisieren wir zuerst den Nenner: x 3 + 6·x2 + ll·x + 6
durch Faktorisierung, ergibt
(x + 3) ·(x + 2) -(x ·(x + 1) Damit ist ersichtlich, daB die gegebene Funktion in x = -1, -2 und -3 Unstetigkeiten besitzt: x+1 x+l y=-------(x + 3)(x + 2)(x + 1) In x = -1 liegt eine hebbare Unstetigkeit (Lucke) vor. Wenn man diese Unstetigkeit beseitigt, indem man Zahler und Nenner der Funktion durch x+ 1 dividiert, hat die neue Funktion die folgende einfachere Gestalt: 1 y=----(x + 3)(x + 2) Funktionsgleichung laBt sich sofort erkennen, daB Polstellen Aus dieser Funktionsgieichung bei -3 und -2 auftreten und keinerlei Nullstellen existieren. Weiterhin folgt, daB die Funktion im Intervall (-00,-3) und (-2,+00) positiv und im Intervall (-3,-2) negativ ist und sich asymptotisch Null nahert (fur (fUr x gegen ±oo). Zur Bestimmung der Extremwerte (Maxima und Minima) begleich Null (notwendige rechnen wir die erste Ableitung, setzen diese gieich Optimaliilitsbedingung) und Iasen Ibsen die entstandene Gieichung Gleichung mitteis mittels der Optimalitatsbedingung) Kommandos fUr die symbolische Berechnung: d 1 =0 dx(x + 3) ·(x + 2) L6sung(en) hat als Losung(en)
-5 2
Mittels der zweiten Ableitung (hinreichende Optimalitatsbedingung) uberprufen wir die gefundene Lasung: Lbsung: uberprtifen
_ 5 x ,--2 1 d 2 --c----,----,-------:= -32 • dx dx22 (x+3)-(x+2) =-32 •
5.12 Kurvendiskussion
99
Damit ist gezeigt, daB an der Stelle x=-5/2 ein Maximum mit dem Funktionswert f( -5/2 )= -4 existiert. Mit diesen Untersuchungen laBt sich die letzte Grafik fUr die gegebene Funktion bestatigen. b) Betrachten wir eine Kurve, deren Gleichung in impliziter Form gegeben ist: y2 (1 + x) = x 2 (1 - x) Da MATHCAD die grafische Darstellung von implizit gegebenen Kurven nicht erlaubt, kann man sich bei diesem Beispiel dadurch helfen, daB man die Kurven fur die beiden Gleichungen y=
d クセ@ un y=-
xJl-x Jl + x
Jl + x
die sich durch Aufl6sen der Kurvengleichung nach y ergeben, in das gleiche Koordinatensystem zeichnet: x = -0.8,-0.79 - 0.8, - 0.79 .. 1 x=
\
\
クGセiM
x
セ@
セ@
セ@
_x·rJt- x セ@ -11················· .., ........................................;..... .. .................) · · · · · · · · ] · · · · · · · 1 -1···
7
セQMWK@ iA
MSGlセ@
4-1
1).5 Il.S
0.5
1.5
Aus der Grafik und den Gleichungen erkennt man, daB die beiden Zweige (Aste) der Kurve symmetrisch sind, so daB man nur einen untersuchen muB. Man erkennt den Definitionsbereich -1< x セ@ 1 und die Nullstellen x=Q und x=l. Die Bestimmung der Extremwerte laBt sich mittels der symbolischen Kommandos von MATHCAD durchfiihren:
100
5 Erstes Arbeiten mit MATHCAD
d セ@ - - -x· dx セ@
ergibt
セ@ 1 x 1 0x + + 11 -- 1·-'-U-I-_-x.-0x-+-I-o-) l· 2· HセNI@ - 2· x ·
x·
0x
vereinfacht aUf
セ@
(1) (;)
(x
I) + 1)
2
(x2 -
1+
x)
l\L
/
-10'----------'------------' -10 .... ' ------'---------' -5 o 5 x
Die exakte Bestimmung der Nullstellen mittels MATHCAD liefert auBer x = 1 befriedigende Werte fUr die restlichen Nullstellen, wenn man die von MATHCAD berechneten, betragsmaBig sehr kleinen Imaginarteile weglaBt: 0.125 ·x4 + 0.2·x3 - 1.S·x2 - l.1·x + 2.575=0
has so!ution(s)
1 . 11
3.1706844917212148503 + 2 .. 10-20 •. i 1. [ -4.2374443319589008082 _1..10-20 •. i
[
-1.5332401597623140424 _1..10- 20 •. i Hieraus kann man als Naherungswerte fUr die restlichen Extremwerte -4.24, -1.53, 3.17 entnehmen. Wendepunkte : ergeben sich als Nullstellen der zweiten Ableitung der Funktion
:2 (0.025. x5+ 0.05· x4 - 0.6· x3- 0.55· x 2+ 2.575· x -1.5) = 0 has solution(s)
J
2.3170984433653077928 ) ([ -3.2224590675394149678 -.294639375825892825
d.h., wir erhalten als Naherungen fi.ir die Wendepunkte -3.22, -0.29, 2.32 .
•
5.13 Integralrechnung
103
5.13 Integralrechnung Die Bestimmung einer Funktion F(x), deren Ableitung F'(x) gleich einer geflihrt zur Integralrechnung. Die Funktion F(x) gebenen Funktion f(x) ist, filhrt wird als Stammfunktion bezeichnet. Aile fur fUr eine Funktion f(x) existierenden Stammfunktionen Stamrnfunktionen F(x) unterscheiden sich nur urn eine Konstante. Die Gesamtheit der Stammfunktionen einer Funktion f(x) wird als unbestimmtes Integral bezeichnet und in der Form
Jf(x)dx
geschrieben. Die Integralrechnung hat zwei wesentliche Fragen zu beantworten: I. Besitzt jede gegebene Funktion f(x) eine Stammfunktion Stamrnfunktion F(x) ? fUr eine gegebene Funktion f(x) eine StammII. Mit welcher Methode kann filr funktion F(x) bestimmt werden ? fUr viele Funktionen gelost werden, da jede auf dem Die erste Aufgabe kann filr Intervall [a,b] stetige Funktion f(x) eine Stammfunktion F(x) besitzt. Diese Aussage ist nur eine Existenzaussage, wie man sie haufig in der Mathematik antrifft. Derartige Aussagen Hefem liefem keinen L6sungsalgorithmus. Losungsalgorithmus. allgemeingultige Methode zur Bestimmung einer Es existiert keine allgemeingUltige fUr bestimmte Klassen von Stammfunktion, so daB die zweite Aufgabe nur filr Funktionen gelost werden kann. Deshalb ist nicht von MATHCAD zu erwarten, daB es jedes unbestimmte Integral exakt berechnet. Die Integralrechnung untersucht weiterhin bestimmte Integrale b
Jf(x)dx, a
fUr viele Anwendungsprobleme benotigt werden. die filr Integrate fUr integrierbare Funktionen fex) Unbestimmte und bestimmte Integrale sind durch den Hauptsatz der Differential- und Integralrechnung b
Jf(x)dx=F(b)-F(a) a
miteinander verbunden. Daraus folgt unmittelbar der folgende Ausdruck fur fUr die Stammfunktion Stamrnfunktion x
F(x) = =
Jf(t)dt
+ F(a)
a
Diese Formel lost jedoch nicht die Aufgabe, zu einer gegebenen stetigen Funktion f(x), die aus bekannten Elementarfunktionen x n , eX, lnx, Inx, sinx, ... zusammengesetzt ist, eine Stammfunktion expHzit explizit zu berechnen. Man weiB, hierfUr existieren, aber daB eine Stammfunktion F(x) und die obige Formel hierfilr nicht, ob und wie F(x) durch elementare Funktionen gebildet werden kann.
104
5 Erstes Arbeiten mit MA1HCAD
Obwohl kein endlicher Algorithmus zur Bestimmung einer Stammfunktion F(x) fUr eine beliebig gegebene Funktion f(x) existiert, kennt man jedoch eine Reihe von Verfahren, urn fur spezielle Funktionen f(x) die Stammfunktion F(x) zu konstruieren. Hierzu gehoren als bekannteste die partielle Integration, die Partialbruchzerlegung (fUr gebrochenrationale Funktionen) und die Substitution, die auch von MATHCAD herangezogen werden. Wenn derartige Methoden zum Erfolg fuhren, so ist MATHCAD bei der exakten Berechnung von Integralen erfolgreich und befreit uns von aufwendiger Rechenarbeit. Wenn die exakte Berechnung versagt, so besitzt MATHCAD wirkungsvolle numerische Methoden zur naherungsweisen Berechnung bestimmter Integrale. Bei der exakten Berechnung von Integralen geht man in MATHCAD folgendermaflen VOf: • Fur die exakte Berechnung unbestimmter Integrale
Jf(x)dx
gibt es zwei M6glichkeiten : I. Die zu integrierende Funktion f(x) wird eingegeben, danach eine Variable x mit dem KurSOf markiert und abschlieBend die Kommandofolge Symbolic => Integrate on Variable (deutsche Ver.5ion: Symbolik => Nach Variable integrieren) aktiviert. II. Durch Anklicken des Integraloperator.5 (Integralsymbols) (fUr die unbestimmte Integration)
[] aus der Operatorleiste Nr.3 erscheint
J.d. im Arbeitsfenster. AnschlieBend tragt man in die beiden Platzhalter die Funktion f(x) und die Integrationsvariable x ein, d.h.
J
•
f(x) dx
und urnrahmt den gesamten Ausdruck mit einer Selektionsbox. Die abschlieBende Aktivierung einer der Kommandofolgen (1) Symbolic => Evaluate => Evaluate Symbolically (deutsche Ver.5ion: Symbolik => Auswerten => Symbolisch auswerten) (2) Symbolic => Simplify (deutsche Ver.5ion: Symbolik => Vereinfachen) berechnet das unbestimmte Integral. Die exakte Berechnung bestimmter Integrale
5.13 Integralrechnung
105
bb
Jf(x)dx aa
folgendennaflen: geschieht folgendermafSen: CIntegralsymbols) (fur (fUr die beDurch Anklicken des Integraloperators (Integralsymbols) stimmte Integration)
セ@
in der Operatorleiste Nr.l erhalt man im Arbeitsfenster
. J . f:
·
• d. d.
r
AnschlieBend tragt man in die entsprechenden Platzhalter die Grenzen a und b, die Funktion f(x) und die Integrationsvariable x ein, d.h. b f(x) dx lex)
Ja
und umrahmt den gesamten Ausdruck mit einer Selektionsbox. Die abschlieBende Aktivierung einer der Kommandofolgen セ@ セ@ (1) Symbolic => Evaluate => Evaluate Symbolically (deutsche Auswerten => Symbolisch auswer(deutscbe Version: Symbolik => セ@ セ@ ten) セ@ (2) Symbolic => Simplify (deutscbe Version: Symbolik => セ@ (deutsche Vereinfachen) berechnet berecbnet das bestimmte Integral.
セ@
Man kann das bestimmte Integral zur Berechnung Berecbnung einer Stammfunktion F(x) fUr fur die gegebene Funktion f(x) verwenden, indem man die Forme1 Formel x
F(x)
= Jf(t)dt a
heranzieht. Die auf diese Art berechnete Stamrnfunktion Stammfunktion besitzt die Eigenschaft F(a) = 0 (siehe Beispiel 5.28h) .
• セ@
Wenn MATHCAD MATIfCAD ein Integral nicht exakt berechnet, so kbnnen folgende Anzeigen erscheinen: * Es erscheint die Meldung
*
fonn found for integral (Keine geschlossene Form Fonn fur Integral No closed form gefunden). Das zu berechnende Integral wird unverandert als Ergebnis ausgegeben (siehe Beispiel 5.281).
106
*
5 Erstes Arbeiten mit MATIICAD
Die Berechnung wird nicht beendet. Der Abbruch kann durch Driicken der セMt。ウエ・@ Taste geschehen .
•
Testen wir die Wirksamkeit Wirksarnkeit von MATHCAD an typischen Aufgaben der Integralrechnung. Beispiel 5.28: Die Lasung der Aufgaben a), b), c) und d) ist mittels rnittels Partialbrnchzerlegung Partialbruchzerlegung maglich: mag1ich: a)
J
3 -x-l xX44 -x - x3 dx - x-I dx x 3 _ x2
ergibt
1 22 -_1 1.x _·x -1 + 2·ln(x) - 2·ln(x - 1) 2 x b)
J
x 6 + 7·x5 + 15·x4 + 32·x3 + 23·x2 + 25·x - 3 dx -----------------------------------------dx 88 66 4 7 55 3 22 4 7 3 x + 7·x + 15·x + 2·x + 8·x + 1O·x lO·x + 13·x + 4·x + 4
yield In(x2 + 1) -
I
x2
3 ) - In(x2 + x + 2) + -2 (1 , +1 x +x+2
c)
J
_l_dx _1 dx x4 + 1
ergibt
LJ2.1n[ (x2 + x.J2 + 1) 1+ LJ2.atan(x.J2 + 1) + LJ2.atan(x.J2 - 1) 8 (2x - [ + 1) 4 4 Dieses Integral wird berechnet, obwohl MATHCAD den Integranden nicht in Partialbriiche zedegen zerlegen kann, wie wir im Beispiel 5.12a gesehen haben.
5013 Integralrechnung
107
d) 7 x 2 - 100x + 37 70X2
J
dx dx
o
ergibt
x 3 - 3 0x 2 + 9 0x + 13
3 01n(x + 1) + 201n(x2 - 4 0x + 13) + 2 0atanG ox Die Lasung der Aufgaben e), maglich:
セI@
0, g) und h) ist mittels partieller Integration
e)
J
3
x °e
20x
dx
ergibt
1 3oexp(2ox) - _ox 3 2 oexp(2ox) + -ox 3 oexp(2ox) - -oexp(2ox) 3 _ox 2 4 4 8
o
g)
J J セ@
asinh(x) dx yields xoasinh(x) -
sin(x)40cos(x)5 dx
osin(x)3 ocos(x)6 -
9 +
セッ」ウHクIRPゥョ@
315
セ@
R
ergibt osin(x) ocos(x)6 + _1_ ocos(x)4 osin(x) 00
21
+ セッウゥョHクI@
105 315
Wenn man das Integral mittels des Kommandos vereinfachen (simplify) berechnet, erhiilt man das Ergebnis in einer anderen Form
J セッウゥョHクI@
63
vereinfacht auf
ocos(x)6 + _l_osin(x) ocos(x)4 + セッ」ウHクIRPゥョ@ 105 315
+ セッウゥョHクI@ ocos(x)8 315 9 Man kann aber durch eine einfache Umformung nachpriifen, daB beide Ergebnisse identisch sindo +
セッウゥョHクI@
sin(x)4 ocos(x)5 dx
108 h)
5 Erstes Arbeiten mit MATHCAD
f
sine In( x)) dx
1
.
-,x'(sm(ln(x)) - cos(ln(x))) 2
yields
Unter Verwendung des bestimmten Integrals
ヲセ@fI
X
sine In( t)) dt sin(ln(t))
yields
セNクHウゥョャI@
- cos(ln(x))) + セ@ 2 2 erhalt man ebenfalls eine Stammfunktion, die sich von der obigen nur urn die Konstante 1/2 unterscheidet. Diese vier Aufgaben werden von MATHCAD muhelos gelost. Die LOsung der Aufgaben i), j), k) und 1) ist mittels Substitution moglich: i)
11
ff
dx dx
クNセ@
ergibt
In[ - (-2 + x :
RNセI@
1
j)
J
11
HクMRIGセ@
dx dx
1 [(6 LIn[ (6 .. x + 4·Tセ[RI@ J;;;;) x +2
Z.In 2
yields
X t
(x - 2)
k)
J
1 dx 2 + cos(x) dx
セN。エョgᄋoクI@
yields
NセI@
1) Das folgende Integral kann MATHCAD in der gegebenen Form nicht be-
rechnen:
f
asin(x)2 dx
ergibt
f
asin(x)2 dx
Wenn man es aber mittels der Substitution x = sin t per Hand auf die Form
Jt
2 cos tdt
bringt, kann es MATHCAD berechnen:
5.13 Integralrechnung
JI
109
t2·cos( t) dt
·sin(t) - 2·sin(t) + 2·t·cos(t) t2'sin(t)
ergibt
Die Rucksubstitution Rticksubstitution t = arc sin x laBt sich ebenfalls mit MATHCAD durchftihren: durchfuhren: asin(x) Zwischenablage zu kopieren ist in die ZWischenablage t 2·sin(t) - 2·sin(t) + 2·t·cos(t)
durch Ersetzen, ergibt
RN。ウゥョHクIセ@
asin(x)2·x - 2·x + 2.asin(x)·R m)
JJIlO
lO
1
eX·sin(x) dx
ergibt
-1
1
2
2
- ·exp(10) ·cos(10) + - ·exp(10)·sin(10) ·exp(10) ·sin(10) -·exp(10)·cos(10) 1 1 ·exp (1) ·cos(1) - - ·exp (1) (I) 'sin(1) ·sin(1) +- ·exp(1)
2
2
n) Das folgende bestimmte Integral wird nicht exakt berechnet:
t2I1
2
eX ·In(1 ·lnCI + x 2 ) dx
0) Integrale von definierten Funktionen lassen sich nicht mit den bisherigen
Methoden berechnen: f(x) = sin(x) + In(x) + x + 1
JI
f(x) dx
yields
JI
f(x) dx
Whrt erst das symbolische Gleichheitszeichen von SmartMath zum Hier fuhrt Zie! Ziel (siehe Abschn. 6.2) 6.2)..
•+
セ@
Bei den Beispie!en Beispielen haben wir meistens Funktionen verwendet, die mit den angegebenen Methoden integrierbar sind. Hieraus sollte man deshalb nicht den SchluB ziehen, daB MATHCAD alle Funktionen integriert. Man sieht jemtihelos doch, daB MATHCAD Integrale relativ komplizierter Funktionen muhe!os und fehlerfrei berechnet, falls dies unter Verwendung der angegebenen Integrationsmethoden mbglich ist. •+
110
5 Erstes Arbeiten mit MATHCAD
セ@
In einigen Fallen laBt sich das Scheitern der exakten Berechnung von Integralen durch MATHCAD vermeiden, wenn man den Integranden f(x) vor der Anwendung der Integrationskommandos vereinfacht. Betrachten wir dies an zwei Beispielen: * Gebrochenrationale Funktionen kann man vorher unter Verwendung des Kommandos aus Abschn. 5.5.2 in Partialbriiche zerlegen. * Gangige Substitutionen kann man vorher durchfuhren (siehe Aufgabe 1) aus Beispiel 5.28) .
•
Kommen wir zur Berechnung uneigentlicher Integrale. Man unterscheidet die folgenden Formen dieser Integrale: • Das Integrationsintervall ist unbeschrankt, z.B. セ@ セ@
Jf(x)dx. a
•
Der Integrand f(x) ist im Integrationsintervall [a,b] unbeschrankt, z.B. 1
1
J2x
dx .
-1
Sowohl das Integrationsintervall als auch der Integrand sind unbeschrankt. Der erste Fall des unbeschrankten Integrationsintervalls kann mit MATHCAD noch einfach behandelt werden, da als Integrationsgrenze 00 zugelassen ist. Beispiel 5.29: a) Das folgende konvergente Integral wird problernlos berechnet •
r
セ」iク@
yields
x3
2
b) Fur das divergente Integral
セj@ l+x dx セQKクR@
'
das den Hauptwert 1t besitzt, liefert MATHCAD nur die Meldung, daB es das Integral nicht berechnen kann. c) Fur das divergente Integral セ@
Jx
3
dx,
5.13 Integralrechnung
111
das den Hauptwert 0 besitzt, liefert MATHCAD nur die Meldung, daB es das Integral nicht berechnen kann. d) Das folgende konvergente Integral wird problemlos berechnet
Jl
°O
J,OO
e- xcix e-' dx
ergibt
exp( -1)
e)
J JJoo 00
0
x 3 ·e -x dx ergibt 6
Wir uberpriifen dieses Ergebnis mittels Grenzwertberechnung: s s
3 .e--xdx xcix xx 3 ·e
ergibt
-6·exp(-s) - 6·exp(-s)·s - exp(-s)·s3 - 3·exp(-s)·s2 + 6 lim S
- 6· exp ( - s) - 6· exp ( - s) .s - exp ( - s) .s3 - 3· exp ( - s) .s2 + 6
-7 00
•
セ@
ergibt
6
Falls kein zufriedenstellendes Ergebnis fUr den Fall unbeschrankter Integrationsintervalle erhalten wird, kann man sich noch folgendermaBen helfen: Statt des uneigentlichen Integrals
-Jf(x)dx a
berechnet man das bestimmte Integral s
Jf(x)dx a
mit fester oberer Grenze s und fUhrt anschlieBend mit den Kommandos aus Abschn. 5.10 den Grenzubergang s
J
lim f(x)dx ウセM
a
durch (siehe Beispiel 5.2ge) .
•
112
5 Erstes Arbeiteo mit MATHCAD
Wesentlich schwieriger gestaltet sich die Berecbnung uneigentlicber IntegraIe mit unbescbriinktem Integranden f(x). Dieser Fall wird nicht immer von MATHCAD erkannt, so daB falsche Ergebnisse erscheinen kbnnen. Beispiel 5.30: a) Wenn man das uneigentliche Integral
jセ、ク@
-1 X
formal integriert, ohne zu erkennen, daB der Integrand bei x=O unbeschrankt ist, erhalt man das falsche (unsinnige) Ergebnis -2. In Wirklichkeit ist das Integral divergent. Dies wird von MATHCAD richtig erkannt:
[ セ、ク@
x
2
ergibt
00
b) Fur das divergente Integral
jセ、クL@ -1
x
dessen Caucbyscber Hauptwert 0 betragt, liefert MATHCAD den Hinweis No closed form found for integral (keine gescblossene Form fur Integral gefunden). c) Bei dem folgenden uneigentlichen Integral sind sowohl der Integrationsbereich als auch der Integrand unbeschrankt:
r[
セ@
loCx) dx ergibt 0 loCx) - - dx 0 2 1 + x2
•
Zusammenfassend laBt sich zur Berecbnung uneigentlicber Integrale mittels MATHCAD sagen, daB auch fur die Falle, fur die Ergebnisse geliefert werden, eine Oberpriifung angeraten ist. Es empfiehlt sich eine zusatzliche Berechnung als bestimmtes (eigentliches) Integral mit anschlieBender Grenzwertberechnung (wie in Beispiel 5.2ge) .
• セ@
Wenn die exakte Berechnung eines Integrals versagt, so kann MATHCAD das bestimmte Integral
5.13 Integralrechnung
113
b
Jf(x)dx a
niihernngsweise berechnen. Hierzu wird ein Romberg-Veifahren verwendet. Damit HiBt sich auch eine Stammjunktion F(x) (und folglich das unbestimmte Integral) in einzelnen Punkten x niihernngsweise berechnen, wenn man die Formel xx
J
F(x) = = f(t)dt a
benutzt und das darin enthaltene bestimmte Integral fur die gewilnschten xWerte numerisch ermittelt. Man erhalt somit eine Liste von Funktionswerten der Stammfunktion F(x) , die man grafisch darstellen kann, urn einen Uberblick tiber F(x) zu erhalten .
•
Zur numerischen Berechnung von bestimmten Integralen ist folgende Vorgehensweise erforderlich: Nach dem Anklicken des Integraloperators (Integralsymbols) (fur die bestimmte Integration)
[IJ in der Operatorleiste Nr.l erscheint das Symbol
r·• ·
d•
•
im Arbeitsfenster, in das man in die entsprechenden Platzhalter die Funktion f(x), die Integrationsgrenzen a und b (an das Integralzeichen) und die Integrationsvariable x (nach d ) eintragen muB. Das abschlieBend eingegebene numerische Gleichheitszeichen liefert das numerische Ergebnis. Uneigentliche Integrate lassen sich auf diese Art nicht berechnen. Beispiel 5.31: a) Das folgende bestimmte Integral ist nicht exakt sondern nur numerisch berechenbar:
セ@
[2 r2
e(,2) cIx = e (i) dx
14.99 14.99
1
b) Das folgende bestimmte Integral ist exakt losbar. Wir vergleichen die Ergebnisse beider Berechnungsarten: exakte Berechnung :
J
I0 10 1
eX ·sin( x) dx cIx eX·sin(x)
yields
114
5 Erstes Arbeiten mit MATHCAD
セ@ ·exp Cl 0) ·cosCl 0) + l.exp Cl 0) ·sinCl 0) + l.exp ( 1) ·cos( 1) 2
2
2
- l.exp ( 1) ·sin( 1)
2
( == 3249 numerisch berechnet) numerische Berechnung :
Jf
10 lO 1
eX·sin(x) dx
=
3.2491cf
Man sieht, daB hier die numerische Berechnung effektiv arbeitet und das gleiche Ergebnis wie die exakte Berechnung liefert. c) Das unbestimmte Integral
J
eX ----dx sin(x) + 2
ergibt
J
exp(x) dx ---=---dx (sin(x) + 2)
berechnet MATHCAD nicht exakt, wie man sieht. Mittels der Formel X
Y
= F(x) = f f(t) dt
(x
セ@ a )
a
liiBt sich die Stammfunktion F(x) mit F(a)==O tiber die numerische Berechnung bestimmter Integrale in einer vorgegebenen Anzahl von xWerten naherungsweise berechnen. Diese Punkte kann man grafisch darstellen, wie im Abschn. 5.9 beschrieben wurde. Wir berechnen die Stamrnfunktion im Intervall [0,2] naherungsweise in den x-Werten 0, 0.1, 0.2, ... , 2 : xi = O.I·i = 0 .. 20
,-.- JX
· ,Y YiI
tt ee - ddt --t sin(t) + 2
i
°
Diese Berechnung gestaltet sich einfacher, wenn man x als Bereichsvariable definiert: x:=0,0.1..2
x
r sin(t)e + 2 dt セ@ ° Grafische Darstellung der berechneten Naherungswertefur die
F(x) = rx
e
t
Stammjunktion Fmit F(O)=O in den x-Werten 0,0.1,0.2, ... ,2:
5.13 Integralrechnung
115
Darstellung der berecbneten berechneten Punkte Funkte I
2r21-
G!-
o
o
FC x) o
1
o
I I-
o
0 0
DO DO 00
o b0 DO o
o
DO
2
x
Verbindung der berechneten berecbneten Funkte Punkte durcb durch Geradenstiicke :
2
F(x) FC x)
-e- 1 --e---
ッセM@ 0"'"'
o
2 xx
d) Das folgende Integral wird nicht exakt aber naherungsweise berechnet:
I1 t2 2
セ@
eX·lnO eX ·lnCl + x 2 ) dx
=
5.811767187176667
•
Falls das von MATHCAD verwendete numerische Integrationsverfahren keine befriedigenden Ergebnisse fur fUr ein zu berechnendes Integral liefert, konnen eigene Programme geschrieben werden, wenn man die in Kap. 7 gegebenen Hilfsmittel verwendet verwendet..
•
6 MATHCAD fiir Fortgeschrittene
In diesem Kapitel behandeln wir mathematische Gebiete, die fUr den fortgeschrittenen Anwender von Interesse sind. Dabei geben wir einen tieferen Einblick in die urnfangreichen Maglichkeiten, die MATHCAD bei der Lasung komplexer mathematischer Probleme bietet.
6.1 Integrierte Funktionen MATHCAD enthiilt eine Vielzahl integrierter Funktionen, von denen wir bereits die Standardjunktionen (Potenz-, Logarithmus- und Exponentialfunktionen, trigonometrische und hyperbolische Funktionen und deren inverse Funktionen) behandelt haben. In den folgenden Abschnitten dieses Kapitels verwenden wir die integrierten Funktionen: * Funktionenfur komplexe Zahlen, * Statistische Funktionen, * Matrixfunktionen. Weiterhin werden die zahlreichen in MATHCAD enthaltenen numerischen Funktionen in den Abschnitten dieses Kapitels bei der Lasung der einzelnen Aufgaben behandelt. Die hierzu geharenden Interpolationsfunktionen betrachten wir in einem gesonderten Abschn. 8.l. Es bleiben noch die fUr Anwendungen wichtigen * Ein- und Ausgabejunktionen (Dateizugrif.!sjunktionen), * Rundungsjunktionen, * Sortieifunktionen, * Bedingungsjunktionen, die wir anschlieBend besprechen.
セ@
Den gewiinschten Funktionsnamen kann man fur alle in MATHCAD integrierten Funktionen direkt eingeben oder mittels der Kommandofolge Math ::::} Insert Function ... (deutsche Version: Rechnen ::::} Funktion einfiigen ... )
6.1 Integrierte Funktionen
117
aus der erscheinenden Dialogbox auswahlen und einfOgen lassen. Aus dieser Dialogbox lassen sich samtliche in MATHCAD enthaltene Funktionen einschlieBlich ihrer Schreibweise und Wirkungsweise entnehmen .
•
6.1.1 Ein- und Ausgabefunktionen
Ein-und AusgabeJunktionen, die man auch als Dateizugr(ffsJunktionen bezeichnet, gestatten in MATHCAD das Einlesen und Ausgeben von Daten (Zahlen) aus bzw. in unstrukturierte(n)/strukturierte(n) Dateien. MATHCAD kann Dateien lesen, die im reinen ASCII-Format vorliegen und die aus Zahlen bestehen, die durch Kommas, Leerzeichen oder Zeilenumbriiche voneinander getrennt sind. Der Unterschied zwischen unstrukturierten und strukturierten Dateien besteht im folgenden: Bei unstrukturierten Dateien werden die Zahlen hintereinander angeordnet und durch beliebige Trennzeichen/ Separatoren (Leerzeichen, Komma, Tabulator, Zeilenvorschub) getrennt. Bei Dezimalzahlen muB der Dezimalpunkt verwendet werden, da das Komma als Trennzeichen interpretiert wird. Unstrukturierte Dateien werden durch die Endung .dat gekennzeichnet. Strukturierte Dateien unterscheiden sich nur durch die Anordnung der Zahlen von unstrukturierten Dateien. Die Zahlen mussen in strukturierter Form (Matrixform mit Zeilen und Spalten) angeordnet sein, d.h., in jeder Zeile muB die gleiche Anzahl von Zahlen stehen. Das Trennzeichen Zeilenvorschub wird hier zur Kennzeichnung der Zeilen ben6tigt. Strukturierte Dateien werden durch die Endung .pm gekennzeichnet. Die am haufigsten verwendeten DateizugriffsJunktionen sind (in Klammem stehen darunter die entsprechenden Funktionen in der deutschen Version) : READ ( daten) ( LESEN ( daten) ): liest eine Zahl aus der unstrukturierten Datei daten. WRITE ( daten) schreibt eine Zahl in die neue unstrukturierte (SCHREmEN (daten)): Datei daten. APPEND ( daten) ( ANFUGEN ( daten) ): fOgt eine Zahl an die vorhandene unstrukturierte Datei daten an. READPRN ( daten) liest die strukturierte Datei daten in eine Ma( PRNLESEN ( daten) ): trix. Jeder Zeile bzw. Spalte der Matrix wird eine Zeile bzw. Spalte der Datei zugeordnet.
118
6 MATHCAD fur Fortgeschrittene
WRITEPRN ( daten) ( PRNSCHREmEN (daten) ): sehreibt eine Matrix in die strukturierte Datei daten. Jeder Zeile bzw. Spalte der Datei wird eine Zeile bzw. Spalte der Matrix zugeordnet. APPENDPRN ( daten) ( PRNANFlrGEN ( daten)): fugt eine Matrix an die vorhandene, strukturierte Datei daten an. Jeder Zeile bzw. Spalte der Matrix wird eine neue Zeile bzw. Spalte der Datei zugeordnet.
Mit den vordefinierten Variablen (Built-In Variables) aus dem Menu Rechnen (Math) PRNCOLWIDm und PRNPRECISION lassen sich fur die Funktion WRITEPRN (PRNSCHREIBEN) die verwendete Spaltenbreite (Standardwert 8) bzw. Stellengenauigkeit (Standardwert 4) festlegen.
セ@
Es ist zu beaehten, dag die Dateizugriffsfunktionen in GrofSbuchstaben und die Dateinamen in Kleinbuchstaben zu sehreiben sind .
•
セ@
Beim Lesen und Schreiben von Dateien mug man naturlieh wissen, wo/wohin MATIICAD die gewunschte Datei lesenlschreiben kann. Ohne weitere Vorkehrungen sueht bzw. sehreibt MATHCAD die Datei im Standardverzeichnis. Dies ist das Verzeichnis, aus dem das aktuelle MATHCADDokument geladen oder in das es zuletzt gespeiehert wurde. Wenn sich die Datei in einem anderen Verzeicbnis befindet, so mug man dies MATHCAD mittels der folgenden Kommandofolge File::::} Associate Filename... (deutscbe Ver.sion: Datei::::} Dateinamen verkniipfen... ) mitteilen, indem man in der erseheinenden Dialogbox das entspreehende Verzeichnis einstellt und die betraehtete Datei mit Namen und Endung in das Feld Dateiname eintragt. Als Argument der Dateizugriffsfunktionen wird nur der Name der Datei verwendet, der in das Feld Mathcad variable (Mathcad- Variable) einzutragen ist.
•
Die Vetwendung der Dateizugriffsfunktionen wird an einer Reihe von Beispielen mittels der deutsehen Version von MATHCAD demonstriert. Da Matrizen, die wir hier verwenden, erst im Absehn. 6.5 eingefuhrt werden, ist bei Unklarheiten vorher dieser Absehnitt durehzuarbeiten. Beispiel 6.1: Fur die im folgenden verwendeten Matrizen haben wir als Startwert fur die Indizierung den Wert 1 eingestellt.
6.1 Integrierte Funktionen
119
daten.pm die Gestalt (Spaltenform) a) Wenn die strukturierte ASCII-Datei daten.prn 12.5 12 1.513 1.5 13 23.634 14.913 14.9 13 23.634 4523 2123 56345 45123 23124 25 126 56 78 9.811 10.1 4.5 14.5 31.6 22.3 19.9 22.319.9 33.1 29.8 19.1 27.3 liefert das Einlesen hat, so liefeft A:= PRNLESEN(daten) 1 2 1 12.5 12 2 1.5 13 3 23.6 34 4 14.9 1:3 13 5 . 23.6 34 2.3 A= 6 ji 45 23 123 7 2 8 1 56
345
9 45 10 23
123
11 25
126
12 5 1215
6
13 7 14 9.8 10.1 15 10.1 16 14.5
8
]24 124
11
4.5 31.6
120
6 MATHCAD fUr Fortgeschrittene
liegt sie in Zeilenform vor, d.h. in der folgenden strukturierten ASCIIDatei daten.pm
12.5 1.5 23.6 14.923.645256452325 579.810.1 14.5 22.3 33.1 19.1 12 13 34 13 34 23 123 345 123 124 1266 8 11 4.5 31.6 19.9 29.8 27.3 so liefert das Einlesen A:= PRNLESEN(daten) 1 2 4 8 6 7 5 9 10 11 3 2 1 12.5 23.6 111.9 14.9 23.6 1.5 45 -15 45 23 25 56 A= A 2 12 13 34 13 34 23 123 345 123 124 126
Die letzten beiden Beispiele fur das Einlesen zeigen den Effekt, daB bei der Darstellung mit Angabe der Indizes (Standardeinstellung von MATHCAD) nicht alle eingelesenen Werte direkt auf dem Bildschirm angezeigt werden. Es wird eine rollende Ausgabetabelle angezeigt. Man erreicht die Einsicht in alle eingelesenen Werte, wenn man die angezeigte Darstellung mit der Maus anklickt. Danach ist ein Scrollen der Datei mbglich. Aus der folgenden Bildschirmkopie ist dies fUr die zuletzt eingelesene Datei ersichtlich:
...
.r. 1:1ll.l.'a I Bechnen 1!rafik !lrafik
=
gl1 Qatci
g
UI!D ID Qセャイゥ・@ セ 'U ::"'II
f!.ca rbeiten Bcarbcitcn
Q Aゥャ ャ ・ャゥ@
=
lext lcxt
#1セ@ i セi
I!II
i セiBG
i セ@ i i ai@セ
セ@ 1:( ·1 :( QN[エBGiセャ@
セ@ Qセiャ@q
I!II
:
fenste r BiiJ;.hcr 11 Eenste
セケュ「ッヲゥォ@ ャ」
QXエ
Qセ
iセゥIQAャ@ i ifk{Ajセ@ fFl!]]] `セ@
I!I
r!.•
.... ,
rt-
..
11" 11'
!
A .; '; PRNL!S!.N(do."'n) PRNL!SE.N(do."'n)
....
I
r
'x,
I-I
I XX dx x'dx > x' dx 1 1 Dieses Integral konnte nicht exakt berechnet werden und wird unverandert wieder ausgegeben.
セ@
b)
J:
x 6 e'dx -> 6745 ·exp(5) - 720
Dieses Integral wird mit dem symbolischen Gleichheitszeichen exakt berechnet. c)
d2
d
X
2
1 X
4
+1
32
--3>
4
(x + 1)
·X
3
6
12
-
4
ex + 1)
·X
2
2
6.2 Das System SmartMath
135
Diese Differentiation wird mit dem symbolischen Gleichheitszeichen exakt durchgefUhrt. d) n
n
-7 _ _ 24__
1
rcn + 5)
k+4
k = 1 Dieses Produkt wird mit dem symbolischen Gleichheitszeichen exakt berechnet. Bei den folgenden Aufgaben wird das SchlUsselwort optimize (optimieren) angewendet.
e) Wir berechnen zuerst das in einer Ergibtanweisung stehende Integral numerisch. Danach aktivieren wir das Schltisselwort optimize. Das neben dem eingegebenen Integral erscheinende Sternchen zeigt an, daB eine exakte (symbolische) Lasung fUr das Integral gefunden wurde. Das danebenstehende Ergebnis ist die Gleitkommanaherung des exakten Ergebnisses a = 1t/4, das durch Doppelklick auf das Sternchen in einer Dialogbox angezeigt wird:
[I
aa_r
fセZ[、ク@Rdx
a
=
0.785208669629317
0dx,
a
=
0.785398163397448
1
セッ@
optimize
[I
a セo@
D Bei der folgenden Berechnung erhalt man nach dem Optimieren das gleiche Resultat, da von dem exakten Ergebnis die Gleitkommanaherung berechnet wird. Das doppelte Anklicken des Sternchens liefert aber das exakte Ergebnis 8/179:
_+i9 + 3
a -
セRU@
2
a
=
0.044692737430168
+ 73
optimieren
a=
セRU@
+i9 + 3
2
a
=
0.044692737430168
+ 73 *
g) Durch Verwendung des Schltisselwortes vereinfachen (simplify) werden Ausdrticke mit dem symbolischen Gleichheitszeichen vereinfacht:
136
6 MATIICAD fur fOr Fortgeschrittene vereinfachen 4
セMS^ク⦅RKQ@_x_-_1
-0;. x 3 _ x 2 + x-I x+l x+1 Verwendet man das symbolische Gleichheitszeichen ohne vorangestelltes Schlusselwort, Schliisselwort, so wird der Ausdruck nicht vereinfacht:
x4 -_ 1 -0;. (x4_ - __1) _ ---3> _ _ _ _ _ xX
+1
(x
+ 1)
h) Durch Verwendung des Schlusselwortes Schliisselwortes expand (entwickeln) werden Ausdrticke Ausdriicke mit dem symbolischen Gleichheitszeichen entwickelt bzw. ausmultipliziert: expand (a + b)3 セ@ a 3 + 3· a 2 • b + 3· a . b 2 + b 3 Verwendet man das symbolische Gleichheitszeichen ohne vorangestelltes Schlusselwort, Schliisselwort, so wird der Ausdruck nicht vereinfacht: (a + b)3 セ@ (a + b)3 i) Definierte Dejinierte Funktionen lassen sich nur unter Verwendung des symboli-
schen Gleichheitszeichens il) exakt difjerenzieren: in
f(x) := sin(x) + In(x) + x + 1 d 1 -f(x) -0;. ---3> cos(x) + - + 1 dx x
i2) exakt integrieren: f(x) = sin(x) + In(x) + x + 1
J
1 2
2
f(x) dx -0;. ---3> -cos(x) + x·ln(x) ++ .!.x _·x 2
i3) zur Grenzwertberechnung venvenden: verwenden: f(x):= 2·x ++ sin(x) x + 3·ln(x + 1)
lim x-o;. x---3>
°0
f(x) -0;. ---3>
セ@
44
Diese Operationen sind ohne Verwendung des symbolischen Gleichheitszeichens nicht gelungen (siehe Abschn. 5.10, 5.11, 5.13).
6.3 Einheiten und unci Dimensionen
137
j) Berechnen wir den Wert der Funktion
sin x an der Stelle 1t
3 numensch: exakt und numerisch: exakte Berechnung mitteis mittels des symbolischen Gleichheitszeichens :
ウゥョ H セ I@
-7
セN {S@
mittels des numerische Berechnung mitteis Gleichbeitszeichens : numeriscben Gleicbheitszeichens
ウゥョHセI@ H セ I@
セ@
=
0.866
•
symboliscben Gleicbheitszeichen Gleicbbeitszeicben allein kbnnen nur Integrale, AbleiMit dem symbolischen tungen, Grenzwerte, Summen und Produkte berechnet werden, wie man in den Beispielen 6.5b-d) und i) sieht. Dagegen lassen sich Ausdrucke damit nur urnformen, umformen, wenn man das entsprechende SchlUsselwort Schliisselwort voranstellt 6.Sg und h) ) . (siehe Beispiele 6.5g
•
6.3 Einheiten und Dimensionen (MaB-) Einheitensystem Einbeitensystem (z.B. MKS, CGS und Man kann in MATHCAD das (MatH Grnnddimensionen festlegen, indem man die US) und die Namen fUr die Grunddimensionen folgenden Kommandofolgen aktiviert: Einbeitensystem wechseln wecbseln mbchte, so geschieht dies mittels • Falls man das Einheitensystem der Kommandq(olge Kommandq{olge Math ::::} => Units ::::} => Change System of Units (deutsche (deutscbe Ver:5ion Ver.s-ion : Rechnen ::::} => Einheiten ::::} => Einheitensystem anandern). MKS-Einbeitensystem Wenn man MATHCAD startet, wird automatisch das MKS-Einheitensystem verwendet, das die Grunddimensionen Masse (mass), Liinge Lange (length), Zeit (time), Ladung (charge) und Temperatur (temp) mit den Basiseinbeiten kg (Kilogramm), m (Meter), s (Sekunde), C (Coulomb) bzw. siseinheiten K (Kelvin) verwendet.
138
6 MATHCAD fUr Fortgeschrittene
Dureh die obige Kommandofolge HiBt sich dieses Einheitensystem dureh die Systeme CGS (g, em, s, C und K) oder u.s. (amerikanisehe MaBeinheiten lb, ft, s, C und K) ersetzen. • Wenn man anstelle der Grunddimensionen Masse, Lange, Zeit, Ladung und Temperatur andere Dimensionen wie z.B. Stuckzahl, Wahrung verwenden moehte, so muB man die Kommandofolge Math セ@ Units セ@ Dimensional Format... (deutsche Version: Rechnen セ@ Einheiten セ@ Dimensionsformat... ) aktivieren und in der erseheinenden Dialogbox den Kontrollkasten Display dimensions (Dimension anzeigen) anklieken. Danaeh kann man den Dimensionsnamen im entspreehenden Textfeld der Dialogbox andemo
セ@
Falls man im Arbeitsfenster an einer bestimmten Stelle eine Maj3einheit einfugen moehte, so muB man den Kursor an dieser Stelle positionieren und ansehlieBend mittels der Kommandofolge Math セ@ Units セ@ Insert Units ... (deutsche Version: Rechnen セ@ Einheiten セ@ Einheiten einfiigen... ) eine Dialogbox offnen, in der unter der Option Dimensions are ... ( Dimensionen: ) die entspreehende Dimension auszuwahlen ist. 1m danebenliegenden Feld Available units are ... (Veifiigbare Einheiten:) kann nun die entspreehende MaBeinheit ausgewahlt werden. Das EinfUgen gesehieht absehlieBend dureh Anklieken des Knopfes (Buttons) Insert (Einfugen). Moehte man einer Zahl eine Maj3einheit zuordnen, so wird die Zahl einfaeh mit der MaBeinheit multipliziert. Dabei kann man die Bezeiehnung der MaBeinheit direkt eingeben oder unter Verwendung der eben gegebenen Kommandofolge. Bei der Eingabe von Ausdriieken mit MaBeinheiten uberprnft MATHCAD automatiseh die Obereinstimmung der Dimensionen.
•
セ@
Man kann das Ergebnis einer numerisehen Reehnung mit einer Maj3einheit in eine andere Maj3einheit auf eine der folgenden Arten umformen : * Man kliekt das Ergebnis an. In den reehts erseheinenden Einheitenplatzhalter ist die neue MaBeinheit einzutragen. Ein absehlieBender Mauskliek bereehnet das Ergebnis in der neuen MaBeinheit (siehe Beispiel
6.6d ).
*
Naeh zweifaehem Mauskliek auf die umzureehnende MaBeinheit erseheint die Dialogbox mit den entspreehenden MaBeinheiten. Dureh
6.3 Einheiten und Dimensionen
139
Markierung der gewiinschten MaBeinheit und Anklicken von Replace (Ersetzen) wird das Ergebnis in der neuen MaBeinheit berechnet. * Man klickt die umzurechnende MaBeinheit an, lascht sie und tragt in den entstandenen Platzhalter die neue MaBeinheit ein. Ein Mausklick auBerhalb des Ergebnis berechnet es in der neuen MaBeinheit. MATHCAD setzt den Einheitenplatzhalter automatisch bei der numerischen Berechnung von Ausdriicken. Er verschwindet erst beim Mausklick auBerhalb des Ausdrucks .
• セ@
Die Rechnung mit MajSeinheiten stellt einen grojSen Vorteil von MATHCAD gegenuber anderen Programmen dar. Deshalb wird MATHCAD von Naturwissenschaftlern und Ingenieuren bevorzugt angewendet. • Betrachten wir die sich bietenden Maglichkeiten an einigen Beispielen. Beispiel 6.6: a) Der Versuch, Einheiten zu addieren, die nicht kompatibel sind, wird von MATHCAD erkannt: 25· g + 7·s = 25·.kg
und es wird kein Ergebnis berechnet. b) Bei der Addition kompatibler MaBeinheiten wird das Ergebnis mit einer dieser MaBeinheiten ausgegeben: bI) Wir addieren zwei GraBen mit Kilogramm 25·kg + 250·kg = 275 kg • 0
b2) Wir addieren Kilogramm und Gramm 20 ·kg + 12·gm = 20.012 o kg • Der rechts neben dem Ergebnis stehende Platzhalter ist der Einheitenplatzhalterzur Umwandlumg der MaBeinheiten. c)
125·m + 23'm 123·s + 11·s
ergibt
74 m 67 s
d) 1m folgenden wollen wir ein in Kilogramm kg angegebenes Resultat in Gramm mittels der deutschen Version von MATHCAD umrechnen. Dazu kannen wir durch Aktivierung der Kommandofolge Rechnen => Einheiten => Einheiten einfiigen...
140
6 MA meAD MATH CAD fur fUr Fortgeschrittene
in der erscheinenden Dialogbox die fUr Gramm verwendete BezeichArnung gm entnehmen. Die Vorgehensweise ist aus der folgenden AIbeitsblattkopie zu ersehen: a = 2S a = 2S"kg 25 ·kg 25°kg • In den erscheinenden rechten Einheitenplatzhalter tragt man die Bezeichnung gm fUr Gramm ein. Ein Mausklick auBerhalb des Ausdrucks liefert das Resultat in Gramm: a
=
•
2.5°10 2.5"10
4
°gm "gm
604 Rechnen mit komplexen Zahlen 6.4 Komplexe Zahlen z werden in MATHCAD MATH CAD in der Form z := a + hj z := a + hi bi oder bj Realtei! a mitte1s mittels eingegeben und dargestellt, wobei der Realteil Re (z),
Imaginiirteil b mitte1s mittels der Imaginarteil (z), 1m C z),
das Argument b
-+
1.674+0.896i
j セN N {iS@
+ 1+i
r;; -+ j セN@jRV2
'lj L.2 '1]£2
Fz
セ@
+2- i
--3>
1.7461.746 - 1.432i
=
N j セN{iS@ N{iS@
-
N j セNjRV@2 N セ@
--セ@
1
2
Fur die Kubikwurzel von -1 wird nicht -1, sondern der folgende Hauptwert ausgegeben: ausgegeben: 11
(_1)3 (_0 3 = 0.5 +0.866i
• 6.5 Matrizenrechnung Wir betrachten Matrizen vom Typ (m,n), dd.h. .h. Matrizen mit m Zeilen und n Spalten der Gestalt
A Cm••nn )) = A Cm =
J ::: ::: :::J [ (
an a 2I
a I2 a 22
.... ,.
. ..
a ln a 2n ,
..
amI a m2 a mn m2 mn die auch als mxn Matrizen bezeichnet werden. Einen Spezialjall Spezia!fall von Matrizen haben wir bereits im Abschn. 5.S 5.8 kend .h. Matrizen vom Typ nengelernt, in dem wir Vektoren als Spaltenmatrizen, d.h. (m,l), darstellten.
セ@
In MATHCAD werden Vektoren und Matrizen unter dem Oberbegriff Felder gefUhrt. gefuhrt.
•
6.5 Matrizenrechnung
143
Das erste auftretende Problem bei der Anwendung von MATHCAD in der (ErzeuguniJ der Matrizen, die wir im Matrizenrechnung betrifft die Eingabe (Erzeuguni) folgenden besprechen: • Es gibt zwei Moglichkeiten fur die direkte Eingabe in das Arbeitsfenster fur Matrizen mit maximal 10 Zeilen und Spalten: I. In der Operatorleiste Nr. 2 wird das Matrixsymbol mit der Maus angeklickt. (Menufolge) II. Aktivierung der Kommandofolge (Meniifolge) ::::} Matrices ... Math => (deutsche Version: Rechnen => ::::} Matrizen ...). Danach offnet 6ffnet sich eine Dialogbox, in die die Anzahl der Zeilen Rows: (deutsche Version: Zeilen: ) und die Anzahl der Spalten Columns: (deutsche Version: Spalten: ) einzugeben sind (jeweils Cjeweils maximal 10). Durch Anklicken des Knopfes (Buttons) Create (deutsche Version: Erstellen) erscheint dann die Matrix an der durch den Kursor markierten Stelle des Arbeitsfensters in der Form (z.B. vom Typ (5, 6))
• • • • •
• • • • •
• • • • •
• • • • • •
• • • • • • • • •
in deren Platzhalter die einzelnen Elemente aik (bei MATHCAD ist die Bezeichnung Ai,k zu verwenden)
•
der Matrix A einzutippen sind. Die eben benutzte Dialogbox dient auch ZeilenlSpalten in einer gegebenen Mazum Einfugen bzw. Loschen von ZeileniSpalten trix. MATHCAD bietet zwei weitere Moglichkeiten, urn Matrizen zu erzeugen. k6nnen mehr als 10 Zeilen und Spalten besitzen, wobei dann alDiese konnen lerdings die Anzeige als rollende Ausgabetabelle erfolgt, wenn man nicht die Darstellung als Matrix mittels der Kommandofolge ::::} Numerical Format ... Math => Rechnen::::} (deutsche Version: Rechnen => Numerisches Format ...) in der erscheinenden Dialogbox (Display as Matrix / Als Matrix anzeigen) einstellt III. Durch eine Zuweisung unter Verwendung von Bereichsvariablen und k der Form (ineinandergeschachtelte Cineinandergeschachtelte Schleifen) i := 1 .. m k := 1 .. n
6 MATHCAD fUr Fortgeschrittene
144
··· Aj,k:=· ······ A i•k :=· ..·· ··· wird eine Matrix A vom Typ (m,n) erzeugt Csiehe (siehe Beispiele 6.8b, 6.8c und 7.1c). IV. Durch Einlesen einer strukturierten Datei wird eine Matrix A erzeugt. Die genaue Vorgehensweise hierfUr hierftir findet man im Abschn. 6.1.1.
セ@
Elementen einer erzeugten Matrix, denen man keinen Wert zugewiesen hat, weist MATHCAD automatisch den Wert Null zu.
•
セ@
Matrizen konnen mittels der Zuweisungsoperatoren := bzw. == Matrixsymbole (tiblicherweise GraBbuchstaben A, B, ...) zugewiesen werden. Dabei wird Cublicherweise durch := die Zuweisung lokal und durch == global durchgefUhrt durchgeftihrt (siehe Abschn. 5.2).
•
セ@
Mochte man einzelne Elemente einer Matrix A verwenden, so mussen mtissen diese die gleiche Bezeichnung wie die Matrix tragen und die beiden Indizes sind durch Komma zu trennen und mittels des Symbols
[;J [;] aus der Operatorleiste Nr.l zu erzeugen (die Indizes konnen noch in Klammern eingeschlossen werden). So ist fUr das Element aus der i-ten Zeile und k-ten Spalte der Matrix A Aj,k AC;.k) Ai •k oder A(j,k) zu schreiben.
•
セ@
Durch Anklicken des Symbols
IM セ@ Evaluate => セ@ Evaluate Symbolically セ@ Auswerten => セ@ Symbolisch auswerCdeutscbe Ver.sion : Symbolik => ten) liefert nur ein Ergebnis, wenn die Matrizen direkt eingegeben werden. • Die Addition und Multiplikation einer Matrix mit einem Skalar vollzieht sich ahnlich wie die von Matrizen. Man muB nur statt einer Matrix den entsprechenden Skalar eingeben. Die genaue Vorgehensweise ist aus dem folgenden Beispiel ersichtlich. Beispiel 6.9: a) Betrachten wir die Addition und Multiplikation von Matrizen, deren Elemente Zahlen sind:
2 3) (11 A A:= (456 4 5 6
B
:=
A+B A+B
66 1010 ( 12 = =( 12 14 14
:=
(58892 8 5) 92
8)8)8 8
A.C A·C
,= c .28 = = ((28 61 61
{セ@ :J 34) 34) 76 76
Wenn wir statt des numerischen Gleichheitszeichens das symboliscbe Gleicbbeitszeicben verwenden, so erhalten wir bei ganzen Zahlen die gleiche Form des Ergebnisses:
lセ@
セ@ 8)
:)
34)
28 34) ( 6 104 ( 61 76 A+B セ@ A· C -+ @ セ A + B -+ 12 1 8 Falls der Typ der beiden Matrizen nicht fUr die durchzufUhrende Operation paBt, so wird eine Meldung ausgegeben: A+. C = A·K A· = array size mismatch in der engliscben Ver.sion und A+.C= Unpassende Feldg1'6Be Feldgl'oBe in der deutscben Ver.sion .
Unpassende Feldgr6Be Fe\dgroBe
6.5 Matrizenrechnung
149
b) Falls die Matrizen nicht nur ganze Zahlen sondern auch Briiche als Elemente enthalten, erkennt man den Unterschied zwischen der Anwendung des numerischem und symbolischem Gleichheitszeichen :
aセ@aセ@ [[1!.! 1).!Jセ@ bセ@
bセ@ [Hセ@ セ@
A+B セ@
15 0.619) 0.619) A ( A + +B B = = (15 3.25 2.2
A. B A· B
15 = (15 = ( 0.85 0.85
2J
;;]
0.81) 0.81) 0.471 0.471
13) 21 [131:"2332 13J 11 151 セ@
4
32 [ 17
A· B セ@
20
5
17) 17J 21
33
70
c) Betrachten wir die Addition und Multiplikation einer Matrix A mit einem Skalar: .A :=
C
2 3) 456
G セI@
G I@セ C G I@セ
3 3 7 4) 1l+A= + A = (25 6 6
1+ A iKaセ@ セ@
3 A+ 1 = = (25 663 74) A+1
3 4) 37 56 6
A+l
G セI@
3 (2 3 4) 67 56
12 A .6 = A·6 6 12 18) = (6 (2244 30 36
12 6· A -= (66 12 18) - (2244 30 36
6·A セ@
セ@
(6 12 18) 24 30 36
A·6 セ@
(6 12 18) 24 30 36
Statt eines festen Zahlenwertes kann man beim symbolischen Gleichheitszeichen auch eine Variablenbezeichnung Cz.B. t) verwenden: エKaセ@
( 1 + t 2 + t 3 + t) 4+t 5+t 6+t
aKエセ@
(1 + t 2 + t 3 + t) 4+t 5+t 6+t
fOr Fortgeschrittene 6 MATHCAD fUr
150
2 SIセ@
2
t + (1 t+ C 2 3) セ@ 44 5 56 6
(1 + t 2+t + t 3 + t) C+t 4+t 5+t 6+t
セ@セ@
セI@
2 +t ( 1 2 3) + t 4 5 6
G エNaセH@ t·
C+t (1 + t 22+t + t 3 + t) 4+t 5+t 6+t 6+t
2· t 3· t) 4· t 5· t 6· t
G
2 3) 5 6 セ@
セ@
G
C 2 3) . t セ@ 4 55 66 . t @セ
A. t A·t セ@
セ@
HTセエ@
2· 2· tt 3· t) (t 4· t 5· t 6· t
HTセエ@
2· 2· tt 3· t) ( t 4·t 5· t 6· t
HTセエ@
(t 4·t
2· 2· tt 3· t) 5·t 5· t 6· t
d) Wenn man das Ergebnis einer Addition oder Multiplikation von Matrizen einem neuen Matrixsymbol zuweist, so k6nnen diese Operationen auch folgendermaBen durchgefUhrt durchgefuhrt werden:
=
A := A
GセI@
=
B := k:= k = 1..2
ii= := 1..2
Cj,k :
G:)セI@
= Aj,k
2
+
Bj,k
"A. ·B D·.,セ@ k := "A .. ·B·L), k セ@セ@ I,) セ@ j=l
C= HQセ@c c
•
QセI@
22) D= (1943 5022)
Eine weitere Operation fUr Matrizen ist das Transponieren, d.h. das Vertauschen von Zeilen und Spalten. Dies kann bei MATHCAD auf eine der Jolfolgenden Arlen geschehen: I. Umrahmung der eingegebenen Matrix mit einer Selektionsbox und Anwendung der Kommandofolge KommandoJolge Symbolic セ@ Matrix Operations セ@ Transpose Matrix (deutscbe Ver.5ion: Ver.sion: Symbolik セ@ Matrixoperationen セ@ Matrix trans(deutsche ponieren) liefert eine exakte Berechnung. Berecbnung. Operator.s II. Bei der Anwendung des operators
IMTI
6.5 Matrizenrechnung
151
aus der Operatorleiste Nr.2 erscheint an der gewtinschten gewiinschten Stelle im Arbeitsfenster der Ausdruck
•
T
in dessen Platzhalter A eingetragen wird, wobei A vorher die entsprechende Matrix zugewiesen wurde. wurde. Statt A kann hier die Matrix auch direkt eingegeben werden. Danach wird der gesamte Ausdruck mit einer urnrahmt. Die abschlieBende Eingabe des GleichheitszeiSelektionsbox umrahmt. chens liefert das Ergebnis numerisch, wahrend die Verwendung des symbolischen Gleichheitszeichens unter SmartMath das exakte Ergebnis angibt. Die Kommandofolge zur exakten Berechnung Symbolic::::} Evaluate::::} Symbolic =} Evaluate =} Evaluate Symbolically Ven-ion : Symbolik =} ::::} Auswerten =} ::::} Symbolisch auswer(deutsche Ver.sion ten) liefert nur ein Ergebnis, wenn die Matrix direkt eingegeben wurde. fur grbBere Matrizen Wahrend die bisher betrachteten Operationen auch fUr problemlos durchfuhrbar sind, stbBt man bei der im folgenden behandelten Berechnung der Determinante Detenninante und der Inver.sen Inven-en einer n-reihigen quadratischen Matrix fUr fur groBes n schnell auf Schwierigkeiten, da Rechenaufwand und Speicherbedarf stark anwachsen. anwachsen. Detenninante Betrachten wir zuerst die Berechnung der Determinante all ... a 1n I
detA= an] anI
...
ann
fur eine quadratische (n-reihige) Matrix A. Die hierfur vorhandenen Berechnungsvorschriften (z.B. Umformung auf Dreiecksgestalt, Anwendung des Laplaceschen Entwicklungssatzes) werden mit wachsendem n sehr aufwendig. MATHCAD leistet bei der Berechnung eine groBe Hilfe, solange die Dimension n der Determinante nicht den vorhandenen Speicherplatz ubersteigt.
セ@
Das Determinantenzeichen Detenninantenzeichen wird in MATHCAD mit dem Betragsoperator
セ@aus der Operatorleiste Nr.2 erzeugt. AnschlieBend kbnnen nach Anklicken des Matrixsymbols aus der Operatorleiste Nr.2 die Elemente der Determinante eingetragen werden .
•
Detenninante einer Matrix A kann mittels MATHCAD Die Berechnung der Determinante durch eine der folgenden Methoden geschehen: I. Die Umrahmung Urnrahmung der direkt eingegebenen Matrix A mit einer Selektionsbox und Aktivierung der Kommandofolge Symbolic::::} Operations::::} Symbolic =} Matrix Operations =} Determinant of Matrix
152 152
fUr Fortgeschrittene 6 MATHCAD fUr
(deutsche Version: Symbolik セ@ => Matrixoperationen セ@ => Determinante) berechnet die Determinante exakt. II. Nach der Eingabe von
IAI und Urnrahmung Umrahmung mit einer Se1ektionsbox Selektionsbox berechnet das Eintippen des symbolischen Gleichheitszeichens die Determinante exakt, wobei A vorher die entsprechende Matrix zugewiesen oder statt A die Matrix direkt eingegeben wurde. III. Die Kommandofolge zur exakten Berechnung Symbolic セ@ => Evaluate セ@ => Evaluate Symbolically (deutsche Version Version:: Symbolik セ@ => Auswerten セ@ => Symbolisch auswerten) Umrahmung von I A I mit einer Selektionsbox nur ein liefert nach der Urnrahmung Ergebnis, wenn die Matrix A direkt eingegeben wurde. IV. Nach der Eingabe von
IAI und Urnrahmung Umrahmung mit einer Se1ektionsbox Selektionsbox berechnet das Eintippen des numerischen Gleichheitszeichens die Determinante numerisch, wobei A vorher die entsprechende Matrix zugewiesen oder statt A die Matrix direkt eingegeben wurde.
セ@
Falls man versehentlich die Determinante einer nichtquadratischen Matrix Fehlenneldung : berechnen will, so erscheint die Fehlermeldung expecting a square matrix (erwartet (envartet quadratische Matrix) .
•
Die Berechnung der Inversen A-I einer Matrix A, die nur fur quadratische Matrizen mbglich ist, wobei zusatzlich det A "* 0 erfullt erfUllt sein muB (nichtsingulare Matrix), geschieht auf eine der folgenden Arten : I. Die Umrahmung der direkt eingegebenen Matrix A mit einer Selektionsbox und die anschlieBende Anwendung der Kommandofolge Symbolic => セ@ セ@ Invert Matrix Matrix Operations => (deutsche Version: Symbolik => セ@ Matrixoperationen => セ@ Matrix invertieren) bewirken die exakte Berechnung. II. Nach der Eingabe von A-I Se1ektionsbox urnrahmt. wird dieser Ausdruck mit einer Selektionsbox umrahmt. Bei der Anwendung von SmartMath geschieht die exakte Berechnung durch Eingabe des symbolischen Gleichheitszeichens, wobei A vorher die entsprechende Matrix zugewiesen oder statt A die Matrix direkt eingegeben wurde. III. Nach der Eingabe von A-I
6.5 Matrizenrechnung
153
und Umrahmung dieses Ausdrucks mit einer Selektionsbox liefert die Kommandofolge zur exakten Berechnung Symbolic セ@ Evaluate セ@ Evaluate Symbolically (deutsche Ver.>ion : Symbolik セ@ Auswerten セ@ Symbolisch auswerten) nur ein Ergebnis, wenn die Matrix A direkt eingegeben wurde. IV. Nach der Eingabe von A-I wird dieser Ausdruck mit einer Selektionsbox umrahmt. Durch die Eingabe des numerischen Gleichheitszeichens wird die Inverse numerisch berechnet, wobei A vorher die entsprechende Matrix zugewiesen oder statt A die Matrix direkt eingegeben wurde.
セ@
Falls die zu invertierende Matrix singular ist, kommt die Fehlermeldung singular matrix in der englischen Ver.>ion und in der deutschen Ver.>ion in falscher Ubersetzung Einzelne Matrix.
•
セ@
Es empfiehlt sich, nach der Berechnung der Inversen zur Probe die Produkte A· A -1 und A -l· A zu berechnen, die die Einheitsmatrix E liefem mtissen.
•
セ@
Die Berechnung der Inversen ist ein Spezialfall der Bildung von ganzzahligen Potenzen An einer Matrix A, die MATHCAD ebenfalls gestattet (siehe BeispieI6.lOd).
•
セ@
Die exakte Berechnung der Determinante, der Transponierten und der Inver.>en einer Matrix kann nur mittels einer der Matrix zugewiesenen Bezeichnung (tiblicherweise GroBbuchstaben A, B, ...) geschehen, wenn man das symbolische Gleichheitszeichen unter SmartMath anwendet.
•
Demonstrieren wir die gegebenen M6glichkeiten zur Berechnung von Determinante, Transponierter und Inverser einer Matrix im folgenden Beispiel. Beispie16.10:
154
6 MATHCAD fur fUr Fortgeschrittene
a) Die exakte Berechnung mittels des Mentis Symbolic (Symbolik) gelingt nur bei der direkt eingegebenen Matrix:
1 2 3J ({ 465 セ@ セ@ セ}@
besitzt die Determinante
{セ@ セ@
durch Matrixtransponierung, ergibt
-55
713
3J
!]
1 2 ( 465
713
4 7J (1261
{セ@ セ@ I] 353
{セ@ ; !]
3J ( 465 1 2
durch Matrixinvertierung, ergibt
713
-1.[ セ@
jセX}@
13 -3 -1 ( _. 23 -18 55 55 -38 -38 13 -2
b) 1m folgenden werden die Inverse, Transponierte und Determinante der Matrix aus a) unter Verwendung des symbolischen Gleichheitszeichens von SmartMath exakt berechnet. Dies funktioniert sowohl durch Anwendung auf ein der Matrix zugeordnetes Buchstabensymbol (Matrixsymbol):
('[' 2 3J3]
1
A-- セ@セ@ A
A:= 4 6 5
713
AT セ@
4 2 6 (' 1 1 353 5
{セ@ 7JI]
IAI セ@
[ 13 -3-3 (13
セj@
セ}@
-1. 23 55· 23 -18 7 55 -38 13 -2
-55
als auch durch direkte Anwendung auf die eingegebene Matrix:
({セ@ !fr ( 1 2 3 4 6 5 7 1 3
セ@セMN@
セZN@
-1 55
[ 131323
-38 -38
3) (' 4 7J [(' 21 {セ@ I] 2 465 6 5 1 3 713
セ@
2 4 6 5 I セ@ 1 713
{セ@ !]
(' 2 3J
4 261 6 353 5
-55
-3
セX}@
-8
-18 7 13 -2
J
155
6.5 Matrizenrechnung
c) 1m folgenden fuhren wir die numerische Berechnung der Inversen, Transponierten und Determinante mit der Matrix aus a) durch. Dies funktioniert durch Eingabe des numerischen Gleichheitszeichens sowohl bei der Anwendung auf ein der Matrix zugeordnetes Buchstabensymbol:
aセ@ {セ@ セ@ セj@
1 2 3J A:= (4 6 5
A-I
=
-0.236 ( -0.418 0.691
713
atセ{@
AT
=
(1 64セ@ 7)IJ 2
0.055 0.145 )J 0.327 -0.127 -0.236 0.036
IAI = -55
1
353
als auch bei der direkten Anwendung auf die eingegebene Matrix:
T !f
(14 622 5
[;
= =
7 1 3
0.055 0.145 (-{)236 0055 OJ45 JJ {MッRセ@ -0.418 0.327 -0.127 0.691
-0.236
0.036
(1465 2 3l = (1 464 7) 465 7713 1 3
=
Hセ@
(1 262 3) I =
(;
4 6
セj@
5
261 3 5 IJ 3
-55
13 71
d) Berechnen wir Potenzen einer gegebenen Matrix A:
3)
11 22 3J
A:= ( 4 6 5 7 713 13
A2 セ@
•
22)
30 17 17 22J ([ 63 49 57 32 23 35
A3 セ@
252 184 241) 241J ( 658 477 605 369 237 316
156
6 MATHCAD fur Fortgeschrittene
Eine weitere wichtige Aufgabe fUr quadratische Matrizen A besteht in der Berechnung von Eigenwerten A A und den dazugehbrigen Eigenvektoren. Dabei sind die Eigenwerte der Matrix A diejenigen Werte Ai'
fUr die das lineare homogene Gleichungssystem (A - AiE)x i = =0 nichttriviale (d.h. von Null verschiedene) Lbsungen Xi
(als Eigenvektoren bezeichneO besitzt. Diese Aufgabe ist sehr rechenintensiv, da die Eigenwerte Ai
als Lbsungen des charakteristischen Polynoms det(A - AE) = 0 bestimmt werden und anschlieBend fUr jeden Eigenwert das gegebene Gleichungssystem gelbst werden muB. MATHCAD besitzt die folgenden Kommandos zur Berechnung von Eigenwerten und Eigenvektoren einer Matrix A : I. eigenvals ( A ) (deutsche Version: eigenwerte ( A)) zur Berechnung der Eigenwerte, II. eigenvec ( A, A ) (deutsche Version: eigenvek (A, A)) zur Berechnung des zu dem Eigenwert A gehbrigen Eigenvektors und III. eigenvecs ( A ) (deutsche Version: eigenvektoren ( A)) zur Berechnung aller Eigenvektoren. Vor der Anwendung dieser Kommandos muB A die benbtigte Matrix zugewiesen werden oder statt A muB die Matrix selbst erscheinen. Die Eingabe des numerischen Gleichheitszeichens nach dem Kommando liefert das nu-
merische Ergebnis. Exakt lassen sich nur die Eigenwerte berechnen, indem man nach dem Kommando eigenvals (eigenwerte) das symbolische Gleichheitszeichen eingibt (siehe Beispiel 6.11d).
セ@
Bei allen Berechnungen ist zu beachten, daB die Eigenwerte Nullstellen des charakteristischen Polynoms vom Grade n (bei einer n-reihigen Matrix A) sind. Dies fUhrt wieder zu den im Abschn. 5.6 geschilderten Schwierigkeiten fUr n ? 5. Weiterhin muB man berucksichtigen, daB die Eigenvektoren nur bis auf einen Faktor bestimmt sind und durch MATHCAD auf die Lange 1 normiert werden .
•
Betrachten wir die Berechnung von Eigenwerten und Eigenvektoren im folgenden Beispiel.
6.5 Matrizenrechnung
157
Beispiel 6.11: a)
A:= A .-
(1HセSI@ )
eigenvals (A) = _ eigenvals CA) - -3
CA, 1) eigenvec (A,
2-5) (G =!) 1 -4
eigenvecs CA) (A)
( -0.981) = (-0.981) 6 -0.19 -0.196
= (0.981
0.707) 0.196 0.707
eigenvec(A,eigenvecCA,- 3)
= (0.707) 0.707
b) Fur die Matrix A mit dem dreifachen Eigenwert 2
A.- HセQ@HセQ@ @セ セャj@Q}@セ A
:=
4 0 2 3 12
MATIlCAD erhalt MATHCAD
cigenvrus(A) dgenvills(A)
=
m
r.s
0.577
eigenvecs (A) CA)
n = ( -0577 -0.577 0577 0.577
d.h. den einzigen Eigenvektor (ohne Cohne Normierung)
H wahrend es mit dem Kommando eigenvec
セ・ョカHaLRI@
eigenvec(A,2)
=
m
einen falschen Eigenvektor berechnet. c) Fur die symmetrische Matrix
om]J
-0577 -0.577 0.577 -0.577 0577 -0577 0.577 -0577 0577 -0.577 0.577
158
6 MATHCAD fur Fortgeschrittene
.A :=
erhalt MATHCAD:
(Jz [Jz -J6 -J6
eigenwerte(A) eigenwerte (A) = -
UJ {セj@
eigenvek(A,- 3)
= [ -0.408
-
J2 2
-J6] -J6] 13
13 o
-0.265 0.772 0.577 J eigenvektoren (A) = = ([ 0.725 0.554 -0.408 0.635 -0.31 0.707
-3
0.577 J
-0.373J = [( 0.639 eigenvek(A,3) =
0.707
0.673
Hier wird zu dem zweifachen Eigenwert 3 mittels des Kommandos eigenvek nur ein Eigenvektor berechnet, wahrend eigenvektoren zwei berechnet. d) Betrachten wir die exakte Berechnung der Eigenwerte:
A A :=
G セI@
Exakte Berechnung der Eigenwerte :
.J5] i+!.J5] セ@ _セ@ i . .J5 [[ % --_.J5
(A) セ@@セ eigenvals (A) eigenvals
2
2
Numerische Berechnung der Eigenwerte : eigenvals (A)
= (0.382) ( 0.382) 6 2.618 2. 18
Die Berechnung der dazugeh6rigen Eigenvektoren gelingt nicht exakt :
eigenvecs (A)
セ@
eigenvecs (
sondern nur numerisch :
G セI@ )
6.5 Matrizenrechnung
eigenvecs (A)
159
= (0.851
0.526) 0526) -0.526 0.851 -0526
•
セ@
Die Beispiele zu den Eigenwerten und Eigenvektoren lassen erkennen, daB es vorteilhafter ist, das Kommando fUr die Berechnung alIer Eigenvektoren eigenvecs (englische Version) bzw. eigenvektoren (deutsche Version) einzuftir mehrfache Eigenwerte maglichst mbglichst aIle existierenden linear setzen, urn fUr unabhangigen Eigenvektoren zu erhalten. Es ist zu beachten, daB fUr die Eigenvektoren zu einem Eigenwert unterschiedliche Ergebnisse erscheinen kannen, kbnnen, da diese nur bis auf die Lange bestimmt sind und auch durch Linearkombinationen gebildet werden kannen. kbnnen. So ergeben sich haufig Unterschiede zwischen der Berechnung alIer Eigenvektoren und der Berechnung einzelnep Eigenvektoren, wie man am Beispiel 6.11c erkennt. Man solIte die einzelner berechneten Eigenvektoren uberpriifen, tiberprtifen, urn Fehler wie in Beispiel 6.11b zu vermeiden .
•
Matrixjunktionen), mit MATHCAD enthalt weitere Funktionen (Vektor- und Matrix!unktionen), fUr Vektoren v und Matrizen A und B die folgenden GraGrbderen Hilfe man fur Ben bestimmen kann (in Klammern stehen darunter die eventuelI anderen fUr die deutsche Version): Funktionsnamen fur rows (A) (zeilen (A»: berechnet die Anzahl der Zeilen der Matrix (A)): A cols (A) berechnet die Anzahl der Spalten der Ma(A)): (spalten (A»: trix A length (v) Winge (v»: (v)): (Hinge berechnet die Anzahl der Komponenten des Vektors v last (v) (letzte (v»: (v)): bestimmt den Index des letzten Elements (Ietzte des Vektors v max (A): min (A): (A):
identity (n) (n)): (einheit (n»:
berechnet das Maximum der Elemente der Matrix A berechnet das Minimum der Elemente der Matrix A erzeugt eine Einheitsmatrix mit n Zeilen und n Spalten
160
6 MA1HCAD fur Fortgeschrittene
diag (v): !rCA) (sp (A)):
erzeugt eine Diagonalmatrix, deren Diagonale vom Vektor v gebildet wird berechnet die Spur der Matrix A
rank (A) (rg (A)):
augment (A, B) (erweitern (A, B)):
stack (A, B) (stapeln (A, B)):
submatrix (A, i , j , k , 1):
berechnet den Rang der Matrix A
bildet eine neue Matrix, in der die Spalten von A und B nebeneinander geschrieben werden (ist nur anwendbar, wenn A und B die gleiche Anzahl von Zeilen besitzen) bildet eine neue Matrix, in der die Zeilen von A und B untereinander geschrieben werden (ist nur anwendbar, wenn A und B die gleiche Anzahl von Spalten besitzen) bildet eine Untermatrix von A, die die Zeilen ibis j und die Spalten k bis I enthiilt, wobei i ::s: j und k ::s: I gelten mussen.
Vor der Anwendung dieser Funktionen mussen A, B und v die benbtigten Matrizen (der benbtigte Vektor) zugewiesen oder statt A, B oder v die Matrizen (der Vektor) direkt eingegeben werden. Das Ergebnis erhalt man, indem man den Funktionsausdrnck mit einer Selektionsbox umrahmt und anschlieBend das numerische Gleichheitszeichen fUr die numerische Berechnung eintippt.
セ@
Die exakte Berechnung mittels des symbolischen Gleichheitszeichens oder durch Aktivierung der Kommandofolge Symbolic セ@ Evaluate セ@ Evaluate Symbolically (deutsche Version: SymboJik セ@ Auswerten セ@ SymboIisch auswerten) funktioniert nicht bei allen Vektor - und Matrixfunktionen , so daB man die numerische Berechnung vorziehen sollte .
•
Betrachten wir einige Beispiele fUr die gegebenen Funktionen mittels der deutschen Version von MATHCAD. Beispiel 6.12: Wir erproben die gegebenen Funktionen fUr folgende Matrizen und Vektoren
6.5 Matrizenrechnung
A:=
A-
(Hセ@ 1 2 3) 4
H)
.,=_(;(3 ZセI@4 7)
5 6
B B.-
789
5 7 ( D:= 21 45
9
:')
3
161
:= ce ,=
1 5 2
v ,= v.-
(:1 Hセ@ 7
11)
34 43
m {セャ@} w ,= w.-
a) Wir bestimmen die Anzahl der def Zeilen: zeilen(B)
zeilen(w)
= 2
=
4
b) Wir bestimmen die Anzahl der def Spalten: spalten(A)
=
3
spalten(v)
=
1
c) Wir efzeugen erzeugen eine Einheitsmatrix vom Typ (5,5):
00 0 1 0 000 00 1 0 000 100 0 1 0 0Q! 00010 o 0 0 0 1
o
einheit(5) einheit (5)
=
d) Wir berechnen befechnen den Rang: rg(B)
rg(A) = 2
= 2
rg(e) = 2
rg(D) =
3
e) Wir efzeugen erzeugen eine Diagonalmatrix, deren Diagonale vom Vektor VektOf w gebildet wird:
diag (w)
rnag(w)
= =
{セ@ セ@ セャ@
o1 04 00 0] 0 [0 0 8 0 000 3
1) f) Wir bestimmen maximale und minimale Elemente: min(A) = 1 max(D) = 45 max(v) = 9 g) Wir berechnen befechnen die Anzahl der def Komponenten von w und den Index der def letzten Komponente von v: Hinge(w) = 4 letzte(v) = 2 liinge(w)
6 MATI-ICAD fUr Fortgeschrittene
162
Bei dem Ergebnis der Funktion letzte ist zu beachten, daB MATHCAD die Indizes von 0 ab zahlt, wenn man nichts anderes festlegt.
°
h) Wir erweitern die gegebene Matrix A durch den Vektor v:
erweitem (A, v) = erweitem(A, __
1 2 3 3J [HセQ@ 4 5セR@ 6Sセ@ 5935J 7 899
i) Wir
vereinen die beiden Matrizen A und D zu einer neuen Matrix:
stapeln(A,D) =
1
2
4
5 8
I 77
3 6 9
5 7 11 21 45 7
9
1
3
j) Wir bilden eine Untermatrix der Matrix A :
!
,Ubma-m H"2,Q,, J= G!) oder submatrix (A, 1,2,0,1) submatrix(A,I,2,O,I)
G:)
= = (74
5 8)
Bei dem Ergebnis der Funktion submatrix ist zu beachten, daB MATHCAD die Indizes von 0 ab zahlt, wenn man nichts anderes festlegt .
•
°
6.6 Losung linearer Gleichungen und analytische Geometrie Fur lineare Gleichungen existieren endliche L6sungsalgorithmen zur Bestimmung der exakten Lasung. Der bekannteste ist der GaujSsche Algorithmus. Deshalb stellt die exakte Lasung an MATHCAD keine Schwierigkeiten, wenn die Anzahl der Gleichungen und Variablen nicht allzu groB ist (maximal 50 Gleichungen mit 50 Variablen). Bei der exakten L6sung hat man den
6.6 Lesung linearer Gleichungen und analytische Geometrie
163
groBen Vorteil, daB das Problem def Rundungsfehler entfallt, das bei der numerischen Anwendung von Lasungsalgorithmen eine groBe Rolle spielt. Ein allgemeines lineares Gleichungssystem (m lineare Gleichungen mit n Unbekannten Xl, ... , Xn ; ュセャ@ , ョセャI@ hat die Form all Xl + a l2 X2 + ... + a ln xn bl a 21 Xl + a 22 X2 + ... + a 2n Xn = b 2 amI Xl + a m2 X2 + ... + a mn Xn = b m und lautet in Matrizenschreibweise A·x=b, wobei
A =
[au [an
a 21
a l2 a 22
aalnj 2n
amI
a m2
a mn
,
x{J
und
b=[J
gelten. Die L6sungstheorie linearer Gleichungssysteme gibt in Abhangigkeit von def Koef!izientenmatrix A und der rechten Seite b Bedingungen, wann * genau eine L6sung, * beliebig viele L6sungen, * keine L6sung fUr ein gegebenes Gleichungssystem existieren. Betrachten wir diese dfei maglichen Falle bei der Lasung linearer Gleichungssysteme an einfachen Beispielen. Beispiel 6.13: a)
3XI +2X2 =14 4xI -5X2 =-12 besitzt die eindeutige Lasung Xl = 2, x 2 = 4 b)
Xl +3X2 =3 3XI +9X2 =9 besitzt belie big viele Lasungen der Gestalt Xl = 3 - 3 A , x 2 = A, (A beliebige feelle Zahl) , da die zweite Gleichung ein Vielfaches der ersten ist. c)
Xl +3X2 =3 3XI +9X2 =4
164
6 MATIfCAD MATHCAD fUr fOr Fortgeschrittene besitzt keine Lasung, da sich die beiden Gleichungen widersprechen .
•
MATHCAD hat folgende Mag1ichkeiten zur exakten LOsung L6sung von linearen
Gleicbungssystemen : Gleichungssystemen I. Eine Losungsmoglichkeit Losungsmoglicbkeit fur Systeme mit quadratischer und nichtsinguHiLOsung existiert, besteht in rer Koeffizientenmatrix A, fur die genau eine Lasung der Berechnung der inversen Matrix A-I. A -1. Die Lasung ergibt sich dann als Produkt von A A-I -1 und b, d.h. 1 ·b. X= A-I. b. x=AFtir diese LOsungsmag1ichkeit besitzt MATHCAD das Numerikkommando Fur lsolve (A, CA, b) (deutscbe Cdeutsche Version: llosen (A, CA, b)), das als Ergebnis den LOsungsvektor liefert, wenn man das numerische Gleichheitszeichen eintippt. Kommandojolge II. Mitte1s der Kommandofolge Symbolic:::::> Symbolic => Solve for Variable (deutscbe :::::> Nach Variable autlosen) Cdeutsche Version: Symbolik => auflosen) kann man immer nur eine Gleichung Gleicbung nach einer Veranderlichen (die markiert sein muB) auflosen. Damit laBt sich ein Gleichungssystem schrittweise lasen, indem man jeweils eine Gleichung nach einer Veranuber die Zwischenablage in die anderlichen auflast und das Ergebnis tiber deren Gleichungen mitte1s der Kommandofolge Symbolic => Substitute for Variable Symbolic:::::> (deutscbe Symbolik:::::> Cdeutsche Version: Symbolik => Nach Variable ersetzen) einsetzt (siehe Abschn. 5.5.7). Diese als Eliminationsmetbode Eliminationsmethode bezeichnete Methode ist aufwendig und deshalb nur bei einer kleinen Anzahl von Gleichungen und Variablen zu empfehlen. III. Die effektivste Losungsmetbode fur MATHCAD erhalt man unter VerwenLosungsmethode ftir dung des integrierten Systems SmartMath. SmartMatb. Dazu muB zuerst dieses System auf eine im Abschn. 6.2 beschriebene Art aktiviert werden. Danach gibt man given (deutscbeVersion: CdeutscheVersion: Vorgabe) in GroB- oder Kleinbuchstaben in das Arbeitsfenster ein. Es ist nur zu beachten, daB dies im Formelmodus geschehen muB. Unterhalb dieses Gleicbungssystem einzugeben. Wortes ist anschlieBend das zu lasende Gleichungssystem Dabei muB das Gleicbbeitszeicben Gleichheitszeichen unter Verwendung des GleicbbeitsGleichheitstperarors
x=y
aus der Operatorleiste Nr.l oder der Tastenkombination
@!!9l0 t§EJ eingegeben werden. Unter dem zu lasenden Gleichungssystem ist danach die Funktion Find FindC( ... ) (deutscbe Cdeutsche Version: Suchen (C... ) )
6.6 Li:isung LOsung linearer Gleichungen und analytische Geometrie
165
Komma getrennt) einzugeben, wobei im Argument die Variablen (durch Komma einzugeben, erscheinen mussen, miissen, nach denen aufgelost werden soU. solI. Die abschlieBende Eingabe des symbolischen Gleichheitszeichens liefert das exakte Erlos bar ist. gebnis, falls das Gleichungssystem losbar Man kann das berechnete Ergebnis auch mittels der Zuweisung x :=find( bzw. x:= := find ( ... ) セ@ セ@ x := suchen ( ... ) セ@ セ@ einem Vektor x zuordnen (siehe Beispiel6.14c, Beispiel 6.14c, e).
セ@
Bei der Eingabe der einzelnen Gleichungen in das Arbeitsfenster konnen k6nnen bei allen drei Methoden die Variablen sowohl indiziert in der Form ... ,,als xXl' als auch in der Form xl, x2, x3, ... X 2 ,x , X3 ... eingegeben werden. Bei I ,x 3 ',... der Verwendung indizierter Variablen lassen sich beide in Abschn. 5.2 beschriebenen Formen anwenden .
•
Betrachten wir die Wirkungsweise der drei aufgezeigten Losungsverfahren Beispielen. an einigen Beispielen. Beispiel 6.14: a) Losen wir das System Xl + 3 X X 2 + 3 x3 x3 = 2 Xl Xl + 3 X X 2 + 4 x3 x3 =1 I Xl Xl + 4 X x 2 + 3 x3 x3 = 4 Xl mit nichtsingularer, nichtsinguHirer, quadratischer Koeffizientenmatrix mittels der Methode I (Bestimmung der inversen Matrix): Inversion der Koeffizientenmatrix :
1 3 3J (1 3 4 1 4 3
durch Matrixinvertierung, ergibt -
(-7 1
30
-1
1
-1
0
3J
Multiplikation der Inversen mit dem Vektor der rechten Seite: Seite :
-
(-7 3 3] (2] (-1] 1
0
1
-1
-1· 1
0
4
セ@
2
-1
Losung erhaIten: erhalten: Damit haben wir die folgende L6sung Xl = =- 1 = 2 , X3 X3 = =- 1 Xl I , XX2 = I .
Die Anwendung des Numerikkommandos lsolve (1l6sen) gestaltet sich folgendermaBen:
166
6 MATHCAD fur fUr Fortgeschrittene
lWlve[(:
!mm
=
{セZ}@
Ubersichtlicher gestaltet sich die Rechnung, wenn man der Koeffizientenmatrix und dem Vektor der rechten Seiten die Symbole A bzw_ bzw. b zuordnet:
3
A .A:=
['[:I 33 43]
b .-
:J
b=
I 4 3
-H
A-'·b セ@ {2J A-··b
lsolve (A, b) b) = = l,olve(A,
m m {セZj@HセZj@
b) Lbsen L6sen wir das System aus a) mittels der Methode II (Eliminationsmethode) : xl + 3-x2 3·x2 + 3-x3 3·x3 - 2=0 hat als L6sung(en) jiir far xl -3-x2 -3·x2 - 3-x3 3·x3 + 2
(in die ZWischenablage kopieren)
Einsetzen in die beiden restlichen Gleichungen : 3·x2 + 4-x3 4·x3 - 1=0 xl + 3-x2
durch Ersetzenjilr xl, etgibt ergibt durchErsetzenjiirxl,
x3 + 1=0
4·x2 + 3-x3 3·x3 - 4=0 xl + 4-x2
Ersetzenfur xl, etgibt ergibt durch Ersetzenjiir
x2 - 2=0 x3 + 1=0
hat als L6sung(en)
-1
x2 - 2=0
hat als L6sung(en)
2
- 3 -x2 ·x2 - 3 -x3 ·x3 + 2 -3-x2 -3·x2 + 5
-1
durch Ersetzen fur x3, etgibt ergibt
jilr x2, etgibt ergibt fur xl durch Ersetzen jiir
6.6 LOsung linearer Gleichungen und analytische Geometrie
167
Wir sehen, daB diese Methode schon bei drei Gleichungen aufwendig ist, so daB sie nur fur die Lasung von hachstens zwei Gleichungen zu empfehlen ist. c) Lasen wir das gleiche System mit der Methode III. Nachdem das System SmartMath aktiviert wurde, gibt man folgendes in das Arbeitsfenster ein (bei der deutschen Ver:s-ion): vorgabe
xl + 3·x2 + 3,x3 = 2 xl + 3·x2 + 4·x3 = 1I xl + 4·x2 + 3,x3 = 4
= =
{セZj@
suchen(x1,x2,x3) -> -+ ( -_211J ,uchenexl,x2,x3) ode r
クセ@
{セZj@
x := suchenexl,x2,x3) suchen(x1,x2,x3) -> --, ----'- (-_211J
d) Betrachten wir das System x l +2x 2 +x 3 =1 2 Xl
+ x 2 + 3 x3 = 0
fur das die Lasung nicht eindeutig bestimmt ist (eine Variable ist frei wahlbar) und verwenden hierfur die Methode III. Nachdem das System SmartMath aktiviert wurde, gibt man folgendes in das Arbeitsfenster ein (bei der englischen Ver:s-ion): given
xl + 2·x2 + x3=1 2·xl 2·x1 + x2 + 3,x3=O
find(xl,x2,x3) find(x1,x2,x3) セ@-+
-5 1I _ox3-3 3 1I 2 _ox3+3 3 x3
168
MATHCAD rur Fortgeschrittene 6 MA1HCAD
Das Ergebnis erscheint nach dem Kommando find. Da wir fur die drei Unbekannten xl, x2 und x3 nur zwei Gleichungen haben, ist eine Variable frei wahlbar. MATHCAD hat hierfur x3 gewahlt. e) 1m folgenden verwenden wir fur das Gleichungssystem indizierte Variable, und zwar die beiden moglichen Formen (siehe Abschn. 5.2): en Verwendung indizierter Variabler (Feldindex) als Komponenten eines Vektors x: vorgabe Xl
+ Xz = 1
Xl - X z
= 0
,uchen (x, , x,h
m
ode r x= - ,uchen(x"x,) x
セ@
[t] m
e2) Verwendung indizierter Variabler mit Literalindex. vorgabe Xl+X2
=
1
XI-X2=O
,urnen(xt,x2) ode r
セ@ Hセャ@
6.6 Lasung linearer Gleichungen und analytische Geometrie
x
N セ@
,uchen(xl,x2)
-,>
169
m
Der einzige Untersehied Unterschied besteht in der untersehiedliehen unterschiedlichen Sehreibweise Schreibweise der Variablen bei el) und e2).
of) 1m folgenden verwenden wir indizierte Variable, allerdings ist das Gleiehungssystem chungssystem unlbsbar. unlosbar. Dies wird von MATHCAD richtig erkannt: vorgabe Xl
+ x2=1
2 'X l
+
2 ·X 2 =O
suehen ( Xl' X 2) セ@
•
Konnte Lbsung Losung niehl. niehl ermitteln KOIlnte
セ@
•
Losung linearer Gleichungssysteme ist mittels MATHCAD problemlos Die Lbsung mbglieh, Gleichungen und Variablen nicht grbBer moglich, solange die Anzahl der Gleiehungen als 50 ist. Die gereehneten gerechneten Beispiele lassen erkennen, daB die Methode III zu bevorzugen ist. Diese Methode ist am einfaehsten einfachsten zu handhaben und auf aile Typen von Gleiehungssystemen Gleichungssystemen anwendbar anwendbar.. alle
•
Viele Probleme der analytische Geometrie fUhren auf die L6sung linearer Gleichungssysteme. Dazu gehbren gehoren u.a. die Bestirnmung Bestimmung der Schnittpunkte folglich problemlos von Geraden bzw. von Geraden und Ebenen. Dies ist folglieh moglich. Das gleiche gilt fUr die Berechnung des Abstands mit MATHCAD mbglieh. von Punkt-Gerade, Punkt-Ebene, Gerade-Gerade usw. mittels der Hessesehen schen Normalform bzw. gegebener Bereehnungsformeln. Berechnungsformeln. Aueh Auch lassen sich die HauptachsentransJormationen Hauptachsentrans!ormationen fUr fur Kegelsehnittgleiehungen Kegelschnittgleichungen unter VerEigenwertberechnung von Matrizen wendung der Kommandos fUr die Eigenwertbereehnung durehfUhren. durchfuhren. Die Lbsung LOsung einiger dieser Aufgaben der analytisehen analytischen Geometrie demonstrieren wir im folgenden Beispiel. Beispiel 6.15: Beispie16.15: a) Man bestimme den Sehnittpunkt Schnittpunkt der beiden Geraden Gl: y = 2x+3 und
6 MATHCAD fOr Fortgeschrittene
170
GZ: y == -x-I:
vorgabe y=Z"X
+3
- 1
ケ]セク@
,uchenex,y) ,uchen(x,Y) ->
(i(J [llJ
Der berechnete Schnittpunkt liiBt sich grafisch darstellen : = セ@ Z , セ@ 1.9999 .. Z x = 10 QPNMLセ@
,r------,.--------,
5 Z·x+ 3 - x-I
o MUセG@
-2
o
2
x
b) Man bestimme den Abstand des Punktes P=( 3, 3, 4 ) von der Ebene x + y + Z - 1 = 0: Die Hessesche Normalform der Ebene lalltet :
x+ y + z- 1=0
[3 Der Abstand eines Pllnktes (x,y,z) von dieser Ebene berechnet sich mittets der Funktion _x+y+z-1 Abstand(x, y, z) - ---=-------=----
[3 Fur den Abstand des Punktes 0,3,4) erhalt man: Abstand(3,3, 4) -73·[3
=
5.196
c) Man untersuche die Lagebeziehungen der beiden Geraden
6.6 Losung linearer Gleichungen und analytische Geometrie
Gl:
x+y+z = 1
G2:
2x+y-z= 0
171
x-y-z = 3
x - 2y + 3z = 2 Die Rechnung gestaltet sich folgendermaBen: Vorgabe x+y+z=l 2·x + Y - z= 0 x-y-z=3 x - 2'Y + 3'z=2 suchenCx, suchenC x, y, y , z)
セ@-7>
••
Da keine Losung gefunden wurde, sind die beiden Geraden Gl und G2 windschief, d.h., sie besitzen keinen Schnittpunkt. d) Man bestimme den Schnittpunkt der Geraden G, die durch die beiden Punkte Pl(1, 2, 3) und P2(2, 4, 5) bestimmt ist, mit der Ebene E, die durch die drei Punkte P3(2, 3, 1), P4(3, 0, 2) und P5(4, 5, 6) bestimmt ist. Die folgende elegante Losungsmethode unter Verwendung der Vektorrechnung laBt sich leider nicht realisieren, da MATHCAD die entstandene Vektorgleichung nicht losen kann: Den gegebenen Punkten werden Ortsvektoren zugewiesen :
。セ@
m「セ@ m」セ@ m m・セ@ m h
Damit haben die Gerade G die Parameterdarstellung (Parameter 0: G=a
+ t·Cb - a)
und die Ebene E die Parameterdarstellung (Parameter u und v): E=c + u·(d - c) + v·(e - c)
6 MATHCAD fOr fUr Fortgeschrittene
172
Der Schnittpunkt zwischen beiden ergibt sich als L6sltng der Vektorgleichung mit den Unbekannten L6s11ng t, u und v: vorgabe
c + u·(d u-(d - c) + v·(e - c)=a + t-(b t·(b - a)
Da MA7HCAD MATHCAD diese Vektorgleichung nicht 16sen kann, mujS jolgenderman sie komponentenweise schreiben. Dies lajSt sich folgendermaften realisieren :
J
l+u+2·v-t ] (c+u·(d-c)+v·(e-c)-a- t·(b-a)) セ@-+ [( 1-3·u+2·v-2·t
-2 + u given 1l+u+2·v-t=0 + u + 2·v - t= 0
1 - 3·u + 2·v - 2·t=0
-2 + u + S·v - 2·t=0
36 7
find(t,u,v) find(t, u, v) セ@-+
-9 7 19 7
taftt sich damit z.B. Der Schnittpunkt laftt fotgendermaften bestimmen: folgendermaften -43 43 7
36 (b-a) セ@-+ 186 86 36 a+-· 7
•
7 93 7
+S.v - 2. t
Losung nichtlinearer Gleichungen 6.7 LOsung
173
6.7 Losung nichtlinearer Gleichungen Zur Losung von Systemen nichtlinearer Gleichungen (m Gleichungen mit n Unbekannten) der Form , x 2 ,···, , ••• , xn) = 0 U1(X1 ,x U2 (X1 , x 2 , ... , xn) == 0 um(X1 , x 2 , ••• , xn) = 0 existiert kein allgemein anwendbarer endlicher Losungsalgorithmus. Als Spezialfall haben wir in den Abschn. 5.6 und 5.7 die exakte Losung LOsung einer nichtlinearen Gleichung diskutiert und die dafiir dafur vorhandenen Kommandos behandelt. Wir sahen hier bereits, daB MATHCAD nur einfachstrukturierte Gleichungen exakt lost und daB neben reellen Losungen auch komplexe kbnnen. auftreten konnen. fur Systeme nichtlinearer Gleichungen. Betrachten wir einige Beispiele filr Beispiel 6.16: a) System algebraischer Gleichungen mit zwei Unbekannten x,y 2
xX 2
- Y = -l 2
3
x4 + y4 = 17 b) System algebraischer Gleichungen mit drei Unbekannten x,y,z x+y+z = 3 2 x 22 _ y22 - Z22 = 0 2x-y-z=O
x4 + 2y4 - z4 = 2 c) System transzendenter Gleichungen mit zwei Unbekannten x,y sinx+e Y =l 2cosx+ln(y+1) == 2 d) System aus algebraischen und transzendenten Gleichungen mit zwei Unbekannten x,y x4 + y4 + 3x + y ==O0 x 4 +y4+ cosx+e Y = 2
•
Als Kommandos zur exakten Losung L6sung von Systemen nichtlinearer Gleichungen verwendet MATHCAD die Methoden II undIIl undIII aus Abschn. 6.6 (Losung (LOsung Losung nichtlinearer Gleichungen). Auf welche Art MATHCAD die exakte L6sung linearer Gleichungen unter Anwendung von SmartMath SmartMath (Methode III) bestimmt, ist aus den mitgelieferten Unterlagen nicht ersichtlich.
174
6 MA1HCAD fUr Fortgeschrittene
1m folgenden Beispiel versuchen wir die exakte Losung der im Beispiel 6.16 gegebenen Gleichungssysteme. Beispiel 6.17: a) Das folgende System mit zwei Unbekannten laBt sich noch mittels Elimination losen: Losung L6sung nach der Methode II (Elimination) :
x2 _ y2=3
H ⦅セケR@ セI@j
hat als Losung(en) L6sung(en) jar x
X4 + y4=17
+3
durch Ersetzen, ergibt
(y2 + 3)2 + y4= 17
-1 1
hat als Losung(en)
[ 2i
1
-2· i
Aus diesen fUr y gewonnenen vier Losungen mussen noch die dazugehorigen x-Werte aus
セケR@
+3
und
-
セケR@
+3
berechnet werden. Dies kann mit MATHCAD geschehen. In unserem Fall laBt sich diese Rechnung jedoch per Hand durchfUhren und man erhalt die nachfolgenden Werte, die mit der Methode III berechnet wurden. Losung L6sung nach der Methode III : vorgabe x 2 _y2
=3
SuchenCx,y) SuchenCx, y)
セ@
X4
セ@
GセR@ (
+ y4 = 17
2 -2 1
1
セQ@ -1]セ@ 2
-1
-2
M[セ@
-i -i) -2. ii -2· ii 2i 2i ;;) -2· 2i
Wenn man nur reelle und positive Losungen sucht, so muB man noch die beiden Ungleichungen クセo@ und ケセo@ hinzufugen: vorgabe
x X
2
--
22_
y =3 -3 Y
x4 + y4=17 x20 Ungi.iltige Beclingung
6.7 LOsung nichtlinearer Gleichungen
suchen(x,y)
175
--'7. --3:>.
Konnte Lc)sung nicht ermitteln Man sieht, daB bei der exakten Lasung keine Ungleichungen akzeptiert werden. Die numerische Lasung gelingt im Beispiel6.18g. b) Fur das folgende System mit drei Gleichungen empfiehlt sich nUf die Anwendung der Methode III, da die Eliminationsmethode (Methode II) zu aufwendig wird: given
x + y + z=3 2.2.x2 -_ Y y22 -_ zz2:o 2·x -0 x4 + 2.y4 _ z4=2 Die Eingabe der Funktion find(x,y,z) セ@ liefert neben der einzigen reellen Lasung 0,1,1) noch existierende komplexe Lasungen, die wir aber wegen ihrer Lange nicht angeben wollen. c) Fur das folgende einfache System transzendenter Gleichungen findet MATHCAD keine Lasung, obwohl offensichtlich (0, 0) eine Lasung ist: given sin(x) + e Y=l 2ocos(x) + In(y + 1)=2
Stack limit reached. d) Fur das folgende einfache Gleichungssystem findet MATHCAD keine Lasung, obwohl offensichtlich (0, 0) eine Lasung ist:
176
6 MATHCAD MATH CAD fUr Fortgeschrittene
Vorgabe X4
+ y4 + 3.x + y=O
cos(x) + e Y=2
finden(x, セ@ finden( x, y) --0; •
Diese Gleichung ist nur bzgl. der L6sung Losung (0,0) einfach, da man anhand der zweiten Gleichung diese L6sung Losung vermutet. Da MATHCAD MATIICAD nicht auf diese heuristische Art an die L6sung Losung herangehen kann, ist diese Gleichung fur MATHCAD kompliziert. kompHziert .
セ@
•
Die gerechneten Beispiele lassen erkennen, daB MATHCAD MATIICAD groBe Schwierigkeiten bekommt, sobald transzendente Gleichungen auftreten.
•
セ@
Aufgrund der geschilderten Problematik und der Ergebnisse aus Beispiel 6.17 ist man bei der L6sung Losung nichtlinearer Gleichungen in den meisten FaJFiillen auf numerische Methoden (vor aHem Iterationsveifahren) angewiesen, die Naherungswerte Losungen liefem. Hefem. Man ben6tigt benotigt hierfUr zu BeNiiherungswerte fUr die L6sungen ginn einen Schatzwert Schiitzwert (Startwert) fUr fur eine L6sung, Losung, der dann durch das Verfahren im FaIle der Konvergenz verbessert wird. Falls die Gleichung mehrere L6sungen Losungen besitzt, wird man mit dies en Verfahren bei jeder Anwendung (im FaIle der Konvergenz) nicht aIle L6sungen Losungen erhalten. Wie aus der numeOm rischen Mathematik bekannt ist, mussen diese Methoden (z.B. das NewtonHefem, selbst wenn der Veifahren) nicht konvergieren, d.h. kein Ergebnis liefem, Losung liegt. Hegt. Die Wahl der Startwerte IaBt liiBt sich bei Startwert nahe bei einer L6sung Losung einer Gleichung der Form u(x) = 0) einer Unbekannten (d.h. fUr die L6sung edeichtem, darstellt und hieraus NaNiierleichtem, indem man die Funktion u(x) grafisch darstelit herungswerte fur fUr die Nulistellen NuHstellen abliest. abHest.
•
MATHCAD MATIICAD steHt stellt folgende Numerikkommandos zur L6sung nichtlinearer
Gleichungen zur VerfUgung: • numerische L6sung einer Gleichung mit einer Unbekannten der Gestalt u(x) == 0, d.h. numerische Bestimmung der Nullstellen der Funktion u(x) : Das Kommando root ( u(x), x ) Ven-ion: wurzel ((u(x), (deutsche Ver.5ion: u(x), x))
6.7 Lasung Losung nichtlinearer Gleichungen
177
liefert im Falle Faile der Konvergenz eine reelle oder komplexe NaherungslaNaherungslosung fur die Gleichung u(x)=O (d.h. eine Nullstelle der Funktion u(X)) , wenn vorher mittels X:= xa Xa der Variablen x ein reeller oder komplexer Startwert Xa fur das Naberungsverfahren (Iteration) zugewiesen wurde. Als numeriscbes Verfabren Veifabren wird von MA1HCAD MAlHCAD die Sekantenmetbode (Regula falsz) fals,) benutzt. Obben6tigt, verlangt MATHCAD wohl die Sekantenmethode zwei Startwerte benatigt, nur einen. • numeriscbe Bestimmung der Nullstellen eines Polynoms : Wenn die Funktion u(x) eine Polynomfunktion ist, d.h. alx+ao ,, X) == anxn + an_Ixn-l + ... + alx+a u (X O
kann man anstelle von root (wurzel) das Numerikkommando polyroots (a) (deutscbe Ver.5ion: nullstellen (a)) anwenden, das den Vorteil besitzt, obne Startwerte auszukommen. Der Vektor a im Argument enthalt die Koeffizienten der Polynomfunktion u(x), d.h. SO
a := [::]
•
numeriscben L6sung Losung von nicbtlinearen Gleichungssystemen Gleicbungssystemen Bis auf zwei Ausnahmen (Zuweisung von Startwerten und am Ende Eingabe von = statt セ@ nach find (sucben)) (such en)) ist die Vorgehensweise analog zur ZUr exakten Lasung Losung (Methode III) und gestaltet sich folgendermaBen: Zuweisung der Startwerte an aile Variablen Xl , xX2 , ••• , xn given (deutscbe (deutsche Ver.5ion: Vorgabe) Eingabe der Gleicbungen Gleichungen (das Gleichheitszeichen muB mittels des Gleichheitsoperators
Ix =yl
aus der Operatorleiste Nr.l eingegeben werden) find (Xl' (Xl , X2 , ..• ••• , Xn) (deutscbe (deutsche Ver.5ion: suchen(x suchen (XlI ,X , X2 , ... , xXnn )). )). Die Eingabe des numeriscben numerischen Gleicbbeitszeicbens Gleichheitszeichens nach find (sucben) (suchen) liefert ein berechnetes numerisches Ergebnis. MA1HCAD MAlHCAD verwendet zur Lasung das Levenberg-Marquardt-Verfahren. Bei dieser Menumerischen LOsung
178
6 MA meAD fUr MATHCAD fur Fortgeschrittene
thode kbnnen konnen neben Gleichungen auch Ungleichungen auftreten (siehe Beispiel 6.18g). Wenn ein Gleichungssystem keine Lbsungen Losungen besitzt, so kann das Numerikkommando Minerr (Xl , X2 , •.• ... , Xn)
(deutsche Ven-ion: Minfehl (Xl , X2 , ••• •.• , Xn)) anstatt von find (suchen) zum Erfolg fuhren, da hiermit die Quadratsumme aus den linken Seiten der Gleichungen minimiert, d.h. ャZuセHxi@ N
m
, x 2 ,···, xn) セmゥョュオL@-7 Minimum ,
i=l
und damit eine Losung L6sung im verallgemeinerten Sinne bestimmt wird (siehe BeispieI6.18h). Beispiel 6.18h).
セ@
Bei erfolgreicher Anwendung liefert die Eingabe des numerischen Gleichheitszeichens nach den gegebenen Numerikkommandos einen berechneten Lbsungsvektor. Losungsvektor. Statt Eingabe dieses Gleichheitszeichens kann man das berechnete Ergebnis auch einem Vektor zuweisen, z.B. bzw. z := find (Xl , X2 , •.. , Xn) bzw. z := polyroots ( a) (Xl , X2 z := Minerr (Xl' z:=
.•. , , ••.
Xn)·
•
セ@ benotigen, ist zu Bei den gegebenen Numerikkommandos, die Startwerte benbtigen, beachten, daB bei Vorgabe von reellen bzw. bzw. komplexen Startwerten meistens nur reelle bzw. komplexe Naherungen geliefert werden (siehe Beispiel spieI6.18D .
•
Betrachten wir die Wirkungsweise der Numerikkommandos an einer Reihe von Beispielen. Beispiel 6.18: a) Wir versuchen, NuIlsteIlen Nullstellen der Funktion u(x) =2 . X X + Ix - II-Ix + 11 durch Zuweisung verschiedener Startwerte numerisch zu berechnen. Fur diese Funktion sind aIle [-1,1] Nullstellen, wie aile Werte aus dem Intervall [-I,ll die folgende Grafik zeigt:
6.7 LOsung nichtlinearer Gleichungen
179
x:= -2,-1.9999 .. 2 RイMLセ@ 21
2· x + t x - 1 t -
tx
+ 1t
A
0 1----,----1---- 4·sin(3) bzw. fO , 2 , 3) = 0.564 Der Literalindex ist durch Eingabe eines Punktes nach der Variablenbezeichnung x zu bilden .
•
セ@
1m letzten Beispiel ist bei der Funktionswertberechnung wieder deutlich der Unterschied zwischen exakter und numerischer Berechnung zu erkennen .
•
6.9.1 Differentiation
Partielle Ableitungen af aZf fx = - ,, fxx = - Z Ox Ox
'
aZf fxy = OxOy
fUr Funktionen z = f(x,y) mit zwei Variablen sowie a11gemein aZf aZf f=af f = f X,X 2 = Ox Xl xl Ox ' XIX} "'-. Ox "'-. "'-. Z ' 1
UXl UAl
, ...
UX1UXZ 1 2
fUr Funktionen z == f(xl,xz, ... ,xn ) mit n Variablen kann MATHCAD mittels einer der folgenden Methoden analog wie im Abschn. 5.11 exakt berechnen: 1. Eingabe der zu differenzierenden Funktion in das Arbeitsfenster. Eine Variable, nach der differenziert werden solI, wird mit dem Kursor markiert und abschlieBend die Kommandofolge Symbolic セ@ Differentiate on Variable (deutsche Ver.5ion: Symbolik セ@ Nach Variable differenzieren) aktiviert. Bei partie11en Ableitungen hbherer Ordnung ist diese Vorgehensweise entsprechend oft anzuwenden. II. Eine partie11e Ableitung erster Ordnung HiBt sich mittels des Differentiationsoperator.5
セ@
aus der Operatorleiste Nr.I berechnen, indem man in den Platzhalter hinter d die Variable, nach der differenziert werden solI, und in den Platzhalter nach dem Differentiationsoperator die zu diffenzierende Funktion eintragt. AbschlieBend wird der gesamte Ausdruck mit einer
190
6 MATHCAD fUr Fortgeschrittene
Selektionsbox umrahmt und eine der folgenden Operationen durehgefUhrt : * Aktivierung der Kommandofolge Symbolic セ@ Evaluate セ@ Evaluate Symbolically (deutsche Version: Symbolik セ@ Auswerten セ@ Symbolisch auswerten), * Aktivierung der Kommandofolge Symbolic セ@ Simplify (deutsche Version: Symbolik セ@ Vereinfachen), * Eingabe des symbolischen Gleichheitszeichens. Bei partiellen Ableitungen hoherer Ordnung ist diese Prozedur entspreehend oft anzuwenden bzw. der Differentiationsoperator zu sehaehteln (siehe Beispiel 6.20e ). III. Bei partiellen Ableitungen hoherer Ordnung empfiehlt sich die Anwen-
rUl rU"r
des Differentiationsopemtor.; Differentiationsoperat=
dn
dxn aus der Operatorleiste Nr.3, in des sen Platzhalter die Ordnung n der Differentiation folgendermaBen einzutragen ist: Mセ@
dn
.
d. n Die weitere Vorgehensweise ist analog zu II. Bei gemisehten Ableitungen hoherer Ordnung muB dieser Operator gesehaehtelt werden (siehe Beispiel 6.20d).
セ@
Wenn man die Ableitung einer Funktion an einer bestimmten Stelle numerisch berechnen moehte, so geht man wie in Absehn. 5.11 fUr Funktionen einer Variablen vor. Man muB aber wieder beachten, daB dies nur bis zu Ableitungen flinfter Ordnung moglieh ist.
•
Beispiel 6.20: a) Unter Verwendung der Methode I bestimmen wir die partiellen Ableitungen erster Ordnung bzgl. x und y der folgenden Funktion: x Y + x·y + y2 + Y
durch Differentiation bzgl. x, ergibt xy·
l
2
x y + x·y + y + y
r +y
x durch Differentiation bzgl. y, ergibt xY·ln(x) + x + 2·y + 1
b) Unter Verwendung der Methode II bestimmen wir die partiellen Ableitungen erster Ordnung bzgl. x und y der Funktion aus Beispiel a):
60 6.99 Funktionen von n Variablen
191
!
(xY +X.y+y2+y) !(XY+xoy+y2+y)
ergibt
xy.Y+y xy·I.+ y x
セHクyKxNケRI@:(xY+X.y+y2+y)
ergibt
x Y·In(x)+x+2·y+l
dy
Unter Vetwendung Verwendung der Methode II bestimmen wir die gemischte partielle c) Vnter Ableitung zweiter Ordnung bzgl. x und y der Funktion aus Beispiel a) durch Schachtelung des Differentiationsoperators: d d . Y·In(x) + -x YY + 1 Y+ x·y + y 2 + y) YIelds -- ( x yzelds (xY x YY·-Y -dxdy x x 0
d) Vnter Unter Vetwendung Verwendung der Methode III bestimmen wir eine gemischte parhaherer Ordnung bzgl. x und y der Funktion aus Beitielle Ableitung hbherer spiel a) durch Schachtelung des Differentiationsoperators:
2)
2 1l - d - - d- - ( xY+x·y xY + x 'y + y +y d y2 d xl Y
x xY·ln(x) 2 '-Y + 22·-·ln(x) _°ln(x) x x e) Berechnen wir die Ableitung aus Beispiel d) an der Stelle x=2 und y=l: x := 2 y := '= I1 ergibt
0
0 -
d2 d1 ( Y d 2 d 1 (xY x'y + y2 + y) == 1.86674737502986 x + x.y xI d y2 d xl
l
deftnierte definierte Funktion junktioniert funktioniert die Differentiation nicht unter Vetwendung Verwendung des Mentis Menus Symbolik: Symbolik f(x, y):=x y f(x,y):=x·y
f) Fur eine
0
f(x, y) durch Differentiation bzgl. x, ergibt
d -f(x, dx f(x, y) dx
d d -f(x,y) -f(x, y) ergibt ---f(x,y) erglbt dx f(x, y) dx dx Man ist auf das symbolische Gleichheitszeichen von Smart Math angewieSmartMath sen: sen: f(x, y) 0= xx·y .y d ---f(x, ケIセ@ dx ヲHクLケIセ@ dx o
セ@
•
192
6 MATHCAD fUr Fortgeschrittene
Die Beispiele lassen erkennen, daB MATHCAD bei der Differentiation keine Probleme hat. Es werden die Ableitungen aller differenzierbaren Funktionen in Sekundenschnelle geliefert und damit wird der Anwender oft von mlihevoller Arbeit befreit. Dies liegt darin begrlindet, daB sich die Differentiation als endlicher Algorithmus formulieren laBt und somit im Rahmen der Computeralgebra problemlos durchfuhrbar ist. Verbesserungswlirdig ware nur der in Beispiel 6.20f aufgezeigte Mangel.
•
6.9.2 Taylorentwicklung Nach dem Satz von Taylor kann fUr eine Funktion f(x), die in der Umgebung eines Punktes Xo stetige partielle Ableitungen bis einschlieBlich (n+ I)-ter Ordnung besitzt, eine Taylorentwicklung angegeben werden. MATHCAD bietet die M6glichkeit, die Taylorentwicklung fUr Funktionen f(x) einer Variablen zu bestimmen, die im Intervall (xo -r,xo +r) stetige Ableitungen bis einschlieBlich (n+ I)-ter Ordnung besitzen. Die Taylorentwicklung lautet hier n fCk)( ) XO( x-xo )k + R() "セ@ f(x) nX k=O k! fUr x E (xo - r ,xo + r) , wobei das Restglied Rn(x) in der Form von Lagrange (OYk)
-J;
M Abb.6.4.FHi.che Abb.6.4.Flache aus Beispiel 6.26c
セ@
MATHCAD gestattet im Unterschied zu MAPLE und MATHEMATICA keine Flachen, die in impliziter Form gegeben sind. Man grafische Darstellung von Fliichen, muB in diesem dies em Fall auf eine Parameterdarstellung zuruckgreifen (siehe Beispiel 6.26a und Abb. 6.2). Ein weiterer Nachteil von MATHCAD gegenuber MAPLE, MATHEMATICA und sogar DERIVE besteht darin, daB MATHCAD keine Raumkuroen Raumkurven zeichnet, die i.a. La. durch eine Parameterdarstellung der Form (tE[a,b]) x == x(t) , y = yet) , z = z(t) (tE[a,bD gegeben sind .
•
210
6 MATHCAD fur Fortgeschrittene
セ@ Man kann auch Funktionen zweier Variab1en definieren und grafisch darstellen, die sich aus mehreren ana1ytischen Ausdriicken zusammensetzen Csiehe Beispiel 7.1a) .
• セ@
Als zusatzliches Hilfsmittel zur anschaulichen Darstellung von F1achen bietet MATHCAD die grafische Darstellung von H6henlinien CNiveaulinien), die man a1s Kontur- oder UmrijSdarstellung bezeichnet. Die Konstruktion der Matrix M der darzustellenden Flache gesta1tet sich wie oben. Wenn man die zur F1ache geh6rende Matrix M berechnet hat, aktiviert man die KommandoJolge Graphics セ@ Create Contour plot Cdeutsche Version: Grafik セ@ UmriSdarstellung erstellen) oder klickt das Kontursymbol in der Operatorleiste Nr.3 mit der Maus an. Daraufhin erscheint das in Abb. 6.1 dargestellte Grafikfenster, in des sen P1atzha1ter Cdurch Operand Jehlt gekennzeichnet) man die Bezeichnung der Matrix M eintragt. Ein Mausklick auBerha1b des Grafikfensters veran1aBt im Automatikmodus die Konturdarstellung der gewiinschten Flache. In der fo1genden Abbildung sehen wir die Konturdarstellung der F1ache aus Abb. 6.3:
0.5
o
---0.5
セQ@
1/ ./ -)
M
•
G
z;;;:
----
o
0.5
>
> "I
Losung von gewahnlichen gewohnlichen und partiellen Differentialgleichungen 6.11 Lasung
211
6.11 Losung von gewohnlichen und partieUen partiellen Differentialgleichungen Differentialgleichungen sind Gleichungen, in denen unbekannte Funktionen und deren Ableitungen vorkommen. Diese unbekannten Funktionen sind so zu bestimmen, daB die Differentialgleichung identiseh identisch erfullt wird. Der Unterschied zwischen gewohnlichen und partiellen Differentialgleichungen besteht darin, daB bei gewahnliehen gewahnlichen die gesuehten gesuchten Funktionen nur von gesuchte Funkeiner (unabhangigen) Variablen, wahrend bei partiellen die gesuehte tion von mehreren (unabhangigen) Variablen abhangen. algebraischen Gleichungen liegen Losungsmethoden vor Ebenso wie bei algebraisehen allem fUr fur lineare Differentialgleichungen VOL gewahnliche, lineare Differentialgleichungen n-ter Ordnung der Form Fur gewahnliehe, an(x)yCn) an (x)yCn) + a n-_11(x)ln-l) + ... + +a1(x)y'+ a1 (x)y' + aao(x)y (x) o(x)y = ff(x) existieren Losungsalgorithmen zur Bestimmung der allgemeinen Lasung der homogenen Gleichung (d.h. f(x)=O), wenn die Koeffizienten ak(x) gewisse Bedingungen erfUllen, erfullen, so u.a.: * ak(x) konstant, d.h., wir haben eine Gleichung mit konstanten KoeJfizien ten. xk (b k - konstant), konstanO, * ak(x)= b k Xk d.h., wir haben eine Eulersche Gleichung. Bei inhomogenen linearen Gleichungen darf die Funktion f(x) nicht allzu machte. kompliziert sein, wenn man eine exakte explizite Lasung erhalten maehte. Fur spezielle nichtlineare gewahnliehe gewahnliche Differentialgleiehungen, Differentialgleichungen, wie z.B. fur Bernoullisehe, Bernoullische, Riceatisehe, Riccatische, Lagrangesehe, Lagrangesche, Clairautsehe, Clairautsche, Besse1sehe, Besselsche, LefUr gendresche Gleichungen existieren ebenfalls Lasungstheorien. Losungstheorien. MATHCAD besitzt im Gegensatz zu anderen Computeralgebra-Programmen keine Kommandos zur exakten Losung von Differentialgleichungen, fur die eine Lasungstheorie existiert. Die entspreehenden entsprechenden Kommandos aus Maglichkeit zur exakten MAPLE wurden nicht ubernommen. Die einzige Magliehkeit Lasung liefert die Anwendung der Laplaeetransformation, Laplacetransformation, die wir im Abschn. 6.12 bespreehen. besprechen. Absehn. MATHCAD besitzt versehiedene verschiedene Kommandos zur numerischen Losung. Damit lassen sich jedoeh jedoch keine allgemeinen Losungen von Differentialgleichungen bestimmen, wie aus der Numerik bekannt ist. Diese sind zur Laehungen sung praktiseher praktischer Probleme aueh auch nieht nicht notwendig. Hier sueht sucht man Lasungen, die gewissen Anfangs - oder Randbedingungen genugen. MATHCAD kann sowohl Anfangswert - als aueh auch Randwertaufgaben numeriseh numerisch lasen. Berechnung von Anfangswertaufgaben stellt MATHCAD mehrere Zur Bereehnung Kommandos zur VerfUgung. Verfugung. Betraehten Betrachten wir zuerst ein System von n Differentialgleichungen erster Ordnung (bzw. fur n=l eine Differentialgleichunfi) DifferentialgleichuniJ derForm
212
6 MATHCAD MATIfCAD fUr fOr Fortgeschrittene
y' (x) == f (x, y(x)) yCx)) mit den Anfangsbedingungen (fur x == a) yea) =ya, wobei y (x) und f (x, y) die n-dimensionalen Vektoren
YI(X)] [ = [ セN@ N セ@
y(x)
Yn(x) Yn(x)
Y)]
[flex, Y)] [flex,
Yl(X)] bzw.
f(x, y) =
セNG@ N ZセG N セZ@
fn(x, y)
bezeichnen. Zur Losung dieser Aufgabe wird am haufigsten das Kommando rkf"txed rkfixed (y, a, b, punkte, D) Ver:5ion: rkfest rldest (y, a, b, punkte, D)) (deutsche Version: eingesetzt, das ein Runge-Kutta-Verfahren Runge-Kutta-Veifahren vierter Ordnung verwendet. Fur die Argumente des Kommandos rlifixed rkfixed (rkfest) ist folgendes einzugeben: * y bezeichnet den Vektor der Anfangswerte ya an der Stelle x == a, dem diese vorher in der Form y:= ya zugewiesen wurden. a und b sind die Endpunkte des L6sungsintervalls [a,b] auf der x-Achse, wobei a der Anfangswert fur x ist, fur fUr den der Funktionswert yea) yCa) = ya des Losungsvektors y(x) ycx) gegeben sein muB. * punkte bezeichnet die Anzahl der vorzugebenden Punkte zwischen a und b, in denen das Verfahren Naherungslosungen bestimmen solI. * D bezeichnet den Vektor der rechten Seiten des Differentialgleichungssystems, dem diese vorher in der Form D (x,y) := f (x, y) zugewiesen wurden. Am einfachsten laBt hBt sich dieses Kommando auf e i n e Dif.ferentialgleiDif.!erentialgleier:5ter Ordnung der Gestalt chung erster y' (x) = f (x, y(x)) mit der Anfangsbedingung yea) = ya yCa)
*
anwenden und liefert eine Ergebnismatrix mit zwei Spalten. Darin stehen in der ersten Spalte die x-Werte und in der zweiten die hierfur hierfUr berechneten yWerte. Die Anzahl der Zeilen dieser Matrix wird durch das Argument punkte im Kommando bestimmt.
セ@
Dif.!erentialgleichung und damit auch nur eine AnWenn man nur eine Dif.ferentialgleichung fangsbedingung hat, so muB diese Anfangsbedingung einem Vektor y mit einer Komponente zugewiesen werden. Die genaue Vorgehensweise ist aus
6.11 Losung von gewohnlichen und partiellen Differentialgleichungen
213
dem folgenden Beispiel ersichtlich, in dem wir die Indizierung der Vektoren mit 0 beginnen .
•
Beispiel 6.27: In den folgenden Beispielen wird die Ergebnismatrix in Matrizen!orm MatrizenJorm angezeigt. Dies wird durch die in Beispiel 6.1 beschriebene Kommandofolge erreicht. a) Die LOsung Lbsung der linearen Differentialgleichung erster Ordnung y'=-2xy+4x mit der Anfangsbedingung yeO) = 3 HiBt sich exakt berechnen und lautet 2
y=2+e- x .• Die numerische Lesung Lbsung im Intervall [0,2] mittels MATHCAD (deutsche Version) kann folgenderrnaBen erhalten werden: Yo:== 3 D(x,y):== +- 4·x D(x,Y):= -2·x·y + Yo:= u:= rkfest(y,0,2,1O,D) u:== rkfest(y,O,2,1O,D) Die Ergebnismatrix u enthalt in der ersten Spalte die x-Werte, flir fur die die Funktionswerte y(x) der LOsung Lbsung der Differentialgleichung (zweite Spalte von u) naherungsweise berechnet wurden: o 3' 3 0.2 2.96 0.4 2.85 2.S5 0.6 2.7 O.S 2.53 0.8 = I 1 2.37 uu= 1.2 2.24 1.4 2.14 1.6 2.0S 2.08 1.8 2.04 1.S 2 2.02 Die grafische Darstellung der exakten und numerischen Lesung Lasung laBt die gute Ubereinstimmung beider erkennen. Da die Indizierung mit 0 beginnt, befinden sich in der Ergebnismatrix u in der Spalte 0 die x-Werte und in der Spalte 1 die berechneten Naherungswerte:
6 MATHCAD fur Fortgeschrittene
214
°.
i := := 0 .. 10
3SセMイG@
I
x= 0,0.001 .. 2
so
2 + e- x2
(u )i
2.5
2 RセM]@ '
----:--1
o
2
) x, ( U i
b) Die nichtlineare Differentialgleichung erster Ordnung y' = y2 Ccos X - sin x) - y mit der Anfangsbedingung yCO) = 1/2 hat die exakte Lasung 1
y ---y == --------
2e xx -sinx MATHCAD Cenglische Version) liefert im Intervall [0,4] die folgende numerische Lasung, der wir die exakte Lasung gegenuberstellen: Yo
1 2
D(x, y)= y2·(cos(x) - sin(x)) - y i=O lO = 0 .. 10
Xi :=
u= rkfixedCy,0,4, 1Q,D) 1O,D)
O.4·i
Yi
1
(2./
i -
Sin(xi ))
In der vom Runge-Kutta-Verfahren gelieferten Ergebnismatrix u stehen die x-Werte in der Spalte 1 und die berechneten Naherungswerte fur die Lasung in der Spalte 2. In der rechten Ausgabetabelle stellen wir die exakten Werte der Lasung in den entsprechenden x-Werten dar. Der Vergleich zeigt eine gute Ubereinstimmung der von MATHCAD berechneten Naherungswerte mit den exakten Lasungswerten:
6.11 LOsung Ltisung von gewohnlichen und partiellen Differentialgleichungen Xi
0
0 0.4 0.8 1.2 1.6 2 2.4 2.8 3.2 3.6 4
0.5 05
0.4 0.385 0.8 0.268 1.2
0.175
1.6
0.112
u = I 2
0.072
215
Yi
0.5 0.385 0.268 0.175 0.112 0.072 0.047 0.031 0.02 0.014 0.009
2.4 0.047 2.8 0.031 0.02
3.2
3.6 0.014 4
0.009
c) Die nichtlineare Differentialgleichung erster Ordnung l+y y'= - l+x mit der Anfangsbedingung yCO) = 1 L6sung die Gerade y = 2 Xx + 1. MATHCAD liefert im Inhat als exakte Lasung L6sung, die wir grafisch darstellen: tervall [0,21 die folgende numerische Lasung, l+y Yo= 1 DCx, y)= It-y l+x u := rkfestC y ,0,2, 10 , D)
i= 0 .. 10 6VセML@ ,.--------,.-------,
4
(u )i 2
oolMセ@
L'- - - - - - - ' - - - - - - - - - '
o
1
(u )i
2
6 MATHCAD fur Fortgeschrittene
216
Die grafische Darstellung HifM die gute Ubereinstimmung der von MATHCAD berechneten Naherungslasung mit der exakten Lasung erkennen. d) Fur die Differentialgleichung y' = y2 + x 2
y(O)=-l
,
ist eine exakte Lasung nicht bekannt. MATHCAD liefert im Intervall [0,1] folgende numerischen Werte: Yo Yo=-1 =-1 D(x,y)=y2 +x2
uu== rkfixed(y, 0,1,10, D) -1 0 0.1 -0.91
0.2 -0.83 0.3 -0.76 0.4 -0.7 u = 05 -0.63 = 105
0.6 -057 0.7 -0.49 0.8 -0.42 0.9 -0.33 1 -0.23 Die grafische Darstellung der berechneten Lasungswerte (durch Geradenstiicke verbunden) hat die folgende Gestalt: ii= = 0 .. 10 . Or.---------,---------, oイMセ@
(u ,t3' u< 2> T := Uu T - ' 5'F «0» u 12 12 «1» «0» +-I6FtI'u +-16Ftl'u TS'FtO'u TS·FtO'u 0 Minimum, f " (x) < 0 Maximum) fUr fur Funktionen einer Variablen y = f(x) ffxx - (fxyi >0 xx ·fyy -(f xy )2>0
6.14 Aufgaben der Optimierung
245
Cfxx(x, y) > 0 Minimum, fxx(x, y) < 0 Maximum) fur Funktionen von zwei Variablen z = f(x,y) auf Optimalitiit uberprnft werden. Fur ョセS@ (d.h. ab drei Variable) gestaltet sich diese Oberprufung mittels hinreichender Bedingungen schwieriger, da man die aus den Ableitungen zweiter Ordnung der Zielfunktion f gebildete n-reihige Hesse-Matrix auf positive Definitheit untersuchen muB. Kommen bei Extremwertaufgaben noch Nebenbedingungen in Form von Gleichungen hinzu, so sind diese entweder nach gewissen Variablen aufzulasen (falls maglich) und in die Zielfunktion einzusetzen oder es ist die Lagrangesche Multiplikatorenmethode anzuwenden. Bei diesen beiden Methoden entsteht wieder eine Aufgabe ohne Beschrankungen, deren Lasung wir besprochen haben. Die Vorgehensweise bei der Losung von Extremwertaufgaben mittels MATHCAD ist aus dem folgenden Beispiel ersichtlich, in dem wir einfache praktische Probleme lasen. Beispiel 6.37: a) Die Lagerhaltungskosten einer Firma fur einen bestimmten Artikel sollen minimiert werden. Die Firma hat pro Woche einen Bedarf von 400 Stuck dieses Artikels. Die Transportkosten fur die Anlieferung des benatigten Artikels belaufen sich pro Lieferung auf 100 DM, unabhangig von der gelieferten Anzahl. Der Firma entstehen fur diesen Artikel Lagerkosten von 2 DM pro Stuck und Woche. Das Problem, die Lagerhaltungskosten fur den Artikel zu minimieren, laBt sich mathematisch folgendermaBen formulieren: Wenn pro Transport x StUck geliefert werden, so benatigt man insgesamt L = 400/x Lieferungen pro Woche und die Transportkosten betragen pro Stuck 100/x. Setzt man voraus, daB sich der Bestand des Artikels linear verringert, so kann man fur jedes StUck die gleiche Lagerzeit annehmen. Sie betragt die halbe Zeit zwischen zwei Lieferungen, d.h. 1/2L Wochen. Da man pro Woche 2 DM Lagerkosten hat, entstehen bei L Lieferungen pro Stuck Kosten von 1/L DM. Damit ergibt sich die Kostenfunktion f(x) = 100 + セ@
x 400' die bzgl. x zu minimieren ist. Der Wert x == 200 Hefert das Minimum, d.h., es sind pro Transport 200 Stuck zu Hefem. Wir erhalten diese Lasung durch Berechnung der Nullstellen der ersten Ableitung der Kostenfunktion (notwendige Optimalitatsbedingung). Dazu verwenden wir die Kommandos fur die Differentiation und Gleichungsauflasung:
! cセo@
TセPI@
x) = 0 -d (100 - + + -400 =0 dx x
has has solution(s) solution(s)
セo@
( 200 ) ( -200 )
Die hinreichende Bedingung H(x)=f'(x) > 0 fur ein Minimum liefert:
246
6 MATHCAD fUr Fortgeschrittene
x)
2 H(x):= d (100 KセI@ H(x):=-+ dx2 X 400
H(200) =2.5 .10-5 Damit lie/ert x=200 ein Minimum, wie auch der Graph der Funktion lex) bestatigt: x= 150,150.01 .. 250 ,. ---rr -, 1.06 I r--------------
1.04 QPKセ@
400
x
1.02
150
200
250
x
b) Die Aufgabe, unter allen Rechtecken mit gleichem Umfang U diejenigen mit dem graBten Flacheninhalt F auszuwahlen, fUhrt auf die Extremwertaufgabe F(x,y) = X· y セ@ Maximum 2· (x + y) = U , mit der Nebenbedingung wobei die Variablen x und y fUr die Lange bzw. Hahe des Rechtecks stehen. Aus der Aufgabenstellung folgt, daB nur positive Werte fUr x und y sinnvoll sind. Diese zusatzlichen Positivitatsforderungen x セo@ und ケセo@ vernachlassigen wir im folgenden. Fur diese Aufgal:>e bestehen zwei Losungsmoglichkeiten : * Die erste Losungsmoglichkeit besteht darin, die Nebenbedingung nach einer Variablen aufzulasen, z.B. nach y U
Y= -
2
-
xx
und in die Zielfunktion F(x,y) einzusetzen. Dies liefert eine Extremwertaufgabe fUr eine Funktion f, die nur noch von der Variablen x abhangt: U
= x· (- f(x) =
2
クIセm。ゥュオN@
Jetzt kannen wir wieder MATHCAD zur Lasung heranziehen:
247
6.14 Aufgaben der Optimierung
クNHᆬセI@
durch Differentiation, ergibt 1 2
..!.V -·V セ@- 2·x=O
v
1
Lv -·V 4
_1 4 2 Wir haben als Lasung ein Quadrat mit der Kantenlange VI4 erhalten. Die zweite L6sungsm6glichkeit besteht in der Anwendung der Lagrangeschen Multiplikatorenmethode: Dazu wird die zum Problem geharige Lagrangefunktion L (x, y, A) gebildet, d.h. L (x, y, A) = x- y + A-(2- (x + y) - V) , und diese bzgl. der Variablen x, y und A maximiert. Dies ist eine Aufgabe ohne Nebenbedingungen, die man durch Lasen der notwendigen Optimalitatsbedingungen behandeln kann: Vorgabe
y=.!:l" y=- セ@- x
*
hatals L6sung(en)
2·x
1 -·V セ@- 2·x 2
durch Ersetzen, ergibt
セHクNケ@
+ A-(2·(x + y) セ@- U)=O
セHクNケ@
+ A.·(2·(x + y) - U)=O
dx
1 y-_·v
dy
セHクNケ@
dA.
+ A·(2·(x + y) セ@- U)=O 1 --V
4
suchen(x, y ,A)
セ@
1 --V
4
-1
--V 8 Fur x und y haben wir das gleiche Ergebnis V/4 wie bei der ersten Lasungsmaglichkeit erhalten. Der fur A erhaltene Wert ist fur die gegebene Aufgabe uninteressant.
c) Versuchen wir die Berechnung der Aufgabe f(x,y) = sin x + sin y + sin(x+y) セ@ Minimum durch Lasung der notwendigen Optimalitatsbedingungen: given
セHウゥョクI@
dx
+ sin(y) + sin(x + y))=O
6 MATIfCAD rur Fortgeschrittene
248
d -(sin(x) + sin(y) + sin(x + y)) = 0 dy
=
fmd(x,yH
[t::] [t: J
Die von MATHCAD gefundene Lesung ist offensichtlich kein Minimum (sondern ein Maximum), da die Funktion hier den Wert sin(
±.-n) + ±.-n) + sin(
%.-J3 セ@ n) セ@ %
sin( -.
annimmt. Durch Uberlegung kann man hieraus als Minimumstelle
(-n/3, -n/3) erhalten.
Losen wir die OptimalitiUsbedingungen nahernngsweise : Als Naherung (Startpunkt) fUr ein Minimum wahlen wir willkurlich: y '= 5 x := 5 given
セHウゥョクI@
t- sin(y) t- sin(x t- y))=O
セHウゥョクI@
t- sin(y) t- sin(x t- y))=O
dx
dy
5.236)) find(x, y) y) = = ((5.236 find(x, 6 5.236 Die gefundene Naherungsl6sung erfUllt die notwendigen und hinreichenden Optimalitatsbedingungen naherungsweise: f(x, y) := sin(x) t- sin(y) t- sin(x t- y) xx== 5.236
y= 5.236 d ヲHクL@セ dx f(x, y) == 3.181.10-5 dx
セヲHクL@
dy
y) == 3.181.10-5
:2
セ@ セ@ -f(x,y)--f(xy) f(x,y) dx 2 f(x,y)' dy2'
セR@
(d d (!
)2
--f(xy) = = 2.25 dx :y dy f(X,y)J ,
und liefert den Zielfunktionswert f(5.236 ,5.236) = -2.598
6.14 Aufgaben cler der Optimierung
249
Aus der graftschen grafischen Darstellung ist zu erkennen, daB die gegebene Funktion weitere Minima und Maxima besitzt: ::: 40 k ::: O .. N N :=40 ii:::O :=O .. N k=O Xi ::: =
O.5·i --10 10 + 0.5 ·i
h::= -1O+0.5·k -10 + O.5 ·k Yk
y) :=:: sin(x) + + sin(y) + sin(x + y) f(x, Y) Mi. k = f (xi' yk) .592
}- 2.592
M
•
MA1BCAD stoBt staBt bei der exakten L6sung von Extremwertaufgaben schnell MATHCAD Optimalitatsbedingungen La. i.a. nichtlineare an Grenzen, da die notwendigen OptimalWitsbedingungen Gleichungen beinhalten, deren Losung Lasung problematisch ist, d.h., es existiert hierftir hierfur La. i.a. kein endlicher Losungsalgorithmus Lasungsalgorithmus (siehe Abschn. 6.7). Deshalb ist man bei den meisten praktischen Extremwertaufgaben auf numerische Methoden angewiesen. Dabei kann man entweder die notwendigen Optimalitatsbedingungen naherungsweise losen lasen wie im Beispiel 6.37c Cindirekte (indirekte Methode) oder man verwendet direkte Methoden. Die einfachste und auch bekannteste direkte Methode ist das Gradientenveifahren, Gradientenverfahren, das wir im Abschn. 8.3 kennenlernen. kennenlernen.
セ@
Tritt mindestens eine Ungleichung unter den Nebenbedingungen einer Optimierungsaufgabe auf, so spricht man von einem Problem der nichtlineafiinfziger Jahren ren bzw. linearen Optimierung, deren Theorie seit den ftinfziger stark entwickelt wurde. Diese Probleme haben die folgende Form: Zieljunktion fist zu minimieren/maximieren, minimierenlmaximieren, dd.h. .h. Eine Zielfunktion , ... , クョIセ@ x n )"""* Minimum / Maximum, f(x I1 ,x2 ,"',
250
6 MATIfCAD fur Fortgeschrittene
wobei auBer Nebenbedingungen in Gleichungsform noch Nebenbedingungen in Form von Ungleichungen zu beriicksichtigen sind, d.h. gj(X 1 ,X 2 , ... ,x n )::;O, j = 1,2, ... ,m. Da man jede Gleichung durch zwei Ungleichungen ersetzen kann, schreibt man in der nichtlinearen/linearen Optimierung meistens nur Nebenbedingungen in Ungleichungsform .
•
Streng genommen ist die Aufgabe aus Beispiel 6.37b bereits eine Aufgabe der nichtlinearen Optimierung, da die Lange x und die Hbhe y nicht negativ werden durfen. Man muBte hierfiir die beiden Ungleichungen x セ@ 0 und y セ@ 0 aufstellen, so daB wir ein Problem der nichtlinearen Optimierung erhalten: F(x,Y) = x·y セ@ Maximum unter den Nebenbedingungen z.cx+y) = U, x セ@ 0, y セ@ O. Wenn wir diese Aufgabe leicht abandern, indem wir fordern, daB der Umfang der Rechtecke einen vorgegebenen Wert U nicht uberschreitet, erhalten wir nur Ungleichungen als Nebenbedingungen: F(x,Y) = x·y セ@ Maximum unter den Nebenbedingungen 2-(x+y) ::; U x セ@ 0 y セ@ O. Aufgaben der nichtlinearen Optimierung sind i.a. nicht durch einen endlichen Algorithmus zu Ibsen und damit nicht mit Methoden der Computeralgebra. Man ist ausschlieBlich auf numerische Methoden angewiesen. Hierfiir besitzt MATHCAD keine integrierten Kommandos (Funktionen), so daB man eigene Programme (Dokumente) schreiben muB oder das Elektronische Buch Numerical Recipes heranziehen kann, das Kommandos zur numerischen Lbsung von Optimierungsproblemen bereitstellt. 1m folgenden sehen wir das Inhaltsverzeichnis des Kap. 8 dieses Elektronischen Buches, das die Optimierungsmethoden enthalt: ChapterS
Minlmlzation or Maximization of Functions
8.1
Parabolic Interpolation and Brent's Method in One Dimension brent
8.2
Downhill Simplex Method in Multidimensions amoeba
83
Direction Set Methods in Multidimensions powell
6.14 Aufgaben clef Optimierung 8.4
Conjugate Gradient Methods in Multidimensions frprmn
8.5
Variable Metric Methods in Multidimensions dfpmin
8.6
Linear Programming and the Simplex Method simplx
8.7
Simulated Annealing Methods anneal
251
1m Abschn. 8.3 schreiben wir zwei Programme CDokumente) zu den bekanntesten klassischen numerischen Optimierungsmethoden Gradientenverfahren und Straffunktionenveifahren. Falls der Leser das Elektronische Buch Numerical Recipes besitzt, sollte er die hier gegebenen Methoden ebenfalls ausprobieren.
セ@
Anders liegt der Sachverhalt, wenn die Zielfunktion fund die Funktionen gj der Nebenbedingungen linear sind, d.h., wenn das Optimierungsproblem die Form C1X 1 + c 2x 2 + ... +c nx n セ@ Minimum / Maximum anx 1 + a 12x 2 + ... + a1nx n :s; b 1 am1X 1 + am2x2+···+amnxn :S;bm Xj セ@ 0 , j == 1, ... , n bzw. in Matrizenschreibweise c . x セ@ Minimum/Maximum A·x:s;b クセo@ besitzt. Diese Aufgaben bezeichnet man als Probleme der linearen Optimierung (linearen ProgrammierunliJ. Hierfur existieren Lasungsverfahren, die eine existierende Lasung in endlich vielen Schritten liefem. Das bekannteste Verfahren ist die Simplexmethode. Diese Methode ist nicht in MATHCAD integriert, sondem man muB auf das Elektronische Buch Numerical Recipes zuruckgreifen .
•
Beispiel 6.38: Wir wenden das im Elektronischen Buch Numerical Recipes vorhandene Kommando simplx an, urn die folgenden Aufgaben der linearen Optimierung zu lasen. Dazu geben wir zuerst den erlautemden Text aus diesem Buch:
252
6 MATHCAD fUr Fortgeschrittene
8.6
linear Programming and the Simplex Method
simplx
uses the simplex algorithm to maximize an objective function subject to a set of inequalities. Its arguments are:
CI439 FI432
• the submatrix of the first tableau containing the original objective function and inequalities written in restricted normal form • nonnegative integers ro1 and m2, giving the number of constraints of the fOlm :s; and;'; ; the number of equality constraints is equal to r - ro1 - m2 - 1, where r is the number of rows in the matrix TIle output is either: • a vector containing the values of the variables that maximize the objective function; or • an error message if no solution satisfies the constraint"r the objective function is unbounded
a) Betrachten wir die einfache Aufgabe -2XI + 2X2 + 1 セ@ Minimum -2XI + x 2 :$; 0 Xl + x 2 :$; 2 , x 2 セ@ 0 die die optimale Lasung Xl ::: 2 , x 2 ::: 0 besitzt, wie man leicht aus der grafischen Darstellung der die Nebenbedingungen definierenden Geraden entnehmen kann: = 0,0.001 .. 2.5 xl: =
4T 1NM M
セM@
A
2·)( I
2 - )( 1
2 I -_
"--__--L.._ _-.::.' - -_ __ oo " o 2 "' J
....J
3
x I
Wir kannen das Kommando simplx anwenden, dessen drei Argumente nach der obigen Beschreibung aus der Matrix der Koeffizienten der zu maximierenden Zielfunktion (Konstanten werden weggelassen) und der Nebenbedingungen, der Anzahl m l der Ungleichungen mit:$; und der Anzahl m 2 der Ungleichungen mit セ@ bestehen. Die erste Spalte der Matrix ist fur die rechten Seiten der Ungleichungen reselViert (in der ersten Zeile ist hier eine Null einzutragen). Wir iibernehmen den Berechnungsteil aus dem gegebenen Elektronischen Buch und setzen die Koeffizien-
6.14 Aufgaben der cler Optimierung
253
ten fur unser Beispiel ein. Es ist zu beachten, daB die Variablen mit Liteverwenden sind: ralindex (siehe Abschn. 5.2) zu veIWenden
Objective function:
Ob(x 1 ' x 2)
Constraints:
-2·X1+ X 2:S;O
2· xl +2· x 2 +1
:= -
x 2:S;2 x1+ クQKRセ@ クRセo@
v :=
sゥューャク{セ@
セ@ ]セャGR@
2
-1
-1
o
0
-1
Maximum value of objective functio n :
v =
HセI@
Ob(VI '
vJ=-3
Wie die Matrix im Argument des Kommandos simplx fur eine konkrete HiBt sich gut erkennen. Die erste Zeile enthalt enthiilt die Aufgabe zu bilden ist, laBt beiden Koeffizienten der Zielfunktion mit umgekehrten Vorzeichen, da das Kommando simplx die Zielfunktion immer maximiert und fur unser Beispiel die Minimierung gefordert wird. Die Art der Eingabe fur die Koeffizienten der Nebenbedingungen (mit umgekehrten Vorzeichen) liiBt sich unmittelbar aus dem Vergleich dieser Bedingungen und der laBt Zeile der Matrix entnehmen. Die beiden restlichen zweiten bis vierten Zelle Argumente des Kommandos bezeichnen die Arlzahl Anzahl der Ungleichungen mit::;; (2) und セ@ (1). Die gefundene Lasung Xl = 2, X z = 0 steht im Vektor v und abschlieBend wird der Optimalwert (hier Minimum) -3 der Zielfunktion berechnet. b) Lasen wir ein einfaches praktisches Problem der linearen Optimierung Optirnierung (Mischungsproblem) mit dem Kommando simplx: Man hat drei verschiedene Getreidesorten G1, G2 und G3 zur Verfugung, urn hieraus ein Futtermittel zu mischen. Jede dieser Getreidesorten hat einen unterschiedlichen Gehalt an den erforderlichen Nahrstoffen Niihrstoffen A und B, von denen das Futtermittel mindestens 42 bzw. 21 Einheiten enthalten muK Die folgende Tabelle liefert die Arlteile Anteile der Nahrstoffe Niihrstoffe in den einzelnen Getreidesorten und die Preise/Einheit:
254
6 MA1HCAD fur Fortgeschrittene
Gl G2 G3 Nahrstoff A 1 6 7 Nahrstoff B 1 4 5 Preis/Einheit 6 8 18 Die Kosten fur das Futtermittel sollen minimal werden. Dies ergibt das folgende Problem der linearen Optimierung: 6 . Xl + 8· x 2 + 18· x3
セ@
Minimum
6· Xl + 7 . X 2 + x3 :2: 42 Xl
+ 4· X 2 + 5· x3 :2: 21
°
°
°
:2: :2: 0 xx 22 :2: :2: 0 x3:2: x3:2: 0 Zur Lasung kann das Kommando simplx herangezogen werden und man erhalt: Xl Xl
3) : = 6 . X 1 + 8· X 2 + 18· X 3
Objective Junction:
Ob (X 1 '
Constraints:
6.X 1 + 7 .X 2 +
X
2,
X
X
3 :2: 42
x 1 + 4· x 2 + 5· x 3 :2: 21 xl:2:0
x2:2:0
-6 -8 -18 42 -6 -7 -1 21 -1 -4 -5 simplx ,0,5 vv:= := simplxll o0 1,0,5 0 -1 0 0 0 -1 0 -1 0 0 0
x3:2:0
0
° ° °
235] 1. 235J
v= [( TNセQ@
°
Maximum value oj objective Junction:
Ob(VI , v 2
'
v3
)= 46.941
Das Ergebnis fur die Minimierung der Kosten lautet, daB das Futtermittel von den Getreidesorten Gl, G2 und G3 1.235, 4.941 bzw. 0 MaBeinheiten enthalt und der Futtermittelpreis 46.94 betragt .
°
セ@
•
ZusammenJassend kann man Zur exakten Losung von OptimierungsauJgaben mittels MATHCAD folgendes bemerken: • Aufgaben der Form f (Xl' X 2 , ... , Xn) セ@ Minimum/Maximum,
6.15 Wahrscheinlichkeitsrechnung
255
wobei hachstens noch Nebenbedingungen in Gleichungsform gj(X I ,X 2"",x n )=O, j = = 1,2, ... ,m auftreten kannen, lassen sich schrittweise behandeln, indem man zuerst die partiellen Ableitungen erster Ordnung der Zielfunktion f bzw. bei Nebenbedingungen der Lagrangefunktion L(X;A) =L(X I ,X 2,···,x n; AI ,A 2 , ... , Am) = m
,···,xn ) f(X II ,X 2,···,X
I
+
Ajg j (Xl 'X2""'Xn)
j=l
•
unter Verwendung von Kommandos aus Abschn. 5.11 und 6.9.1 berechnen laBt und diese gleich Null setzt (notwendige Optimalitatsbedingung). AnschlieBend kann man versuchen, die so entstandenen Gleichungen mittels der in Abschn. 6.6 und 6.7 behandelten Kommandos zu lasen. Da diese Gleichungen La. nichtlinear sind, wird man aber schnell an Grenzen stoBen. Die erhaltenen Lasungen sind noch auf Optimalitat zu uberpriifen, da die gelasten OptimalWitsbedingungen nur notwendig sind. Obwohl zur Lasung linearer Optimierungsaufgaben endliche Algorithmen (z.B. Simplexmethode) existieren, besitzt MATHCAD im Unterschied zu MAPLE und MATHEMATlCA keine integrierten Lasungsfunktionen zur exakten Lasung. Man findet aber ein Kommando zur Simplexmethode im Elektronischen Buch Numerical Recipes .
•
6.15 Wahrscheinlichkeitsrechnung 6.15.1 Kombinatorik nnd Berechnnng von Wahrscheinlichkeiten Zur Berechnung von Wahrscheinlichkeiten benatigt man hiiufig die Fakultat k! einer nattirlichen Zahl k und den BinomialkoejJizienten a(a - 1) ... (a - k + 1) .. a (:) = \ 1 (a 1) .. k + 1) fUr a) k! furkk > ( k -
1 1
セ[。@
°
fUrk fUrk = =
°
wobei a eine reelle und k eine naturliche Zahl darstellen. Fur den Fall, daB a=n ebenfalls eine naturliche Zahl ist, liiBt sich die obige Formel in der folgenden Form schreiben: n! ( n) k = k!(n - k)!
256
6 MATIICAD fur Fortgeschrittene
Die Berechnung der Fakultat k! kann in MATHCAD auf eine der folgenden Arten geschehen, nachdem k! eingegeben und mit einer Selektionsbox umrahmt wurde: • exakte Berechnung * Aktivierung der Kommandofolge Symbolic => Evaluate => Evaluate Symbolically (deutsche Ver.s-ion: Symbolik => Auswerten => Symbolisch auswerten), * Aktivierung der Kommandofolge Symbolic => Simplify (deutsche Ver.s-ion: Symbolik => Vereinfachen), * Eingabe des symbolischen Gleichheitszeichens. • numerische Berechnung durch Eintippen des numerischen Gleichheitszeichens. Der Binomialkoeffizient kann durch Berechnung der angegebenen Formeln erhalten werden, wobei das Produkt a(a -1) ... (a - k + 1) mittels des Produktoperators zu berechnen ist, wie wir im Beispiel 6.39 zeigen. Diese Berechnungsart ist fUr den Anwender umstandlich und aufwendig. MATHCAD steHt zur Berechnung des Binomialkoeffizienten im Gegensatz zu anderen Computeralgebra-Programmen kein integriertes Kommando zur Verfugung. Man findet aber eine Funktion fUr den Binomialkoeffizienten im Elektronischen Buch Numerical Recipes. Wir definieren im folgenden Beispiel die Funktion Binomial(a,k), mit deren Hilfe man den Binomialkoeffizienten berechnen kann. Beispiel 6.39: a) Die folgende, in MATHCAD definierte Funktion berechnet den Binomialkoeffizienten fUr reeHes a und ganzes ォセャZ@ k-l
IT(a-i)
Binomial (a (a, k) : == ,
.!:i=""O'---_ .!:i=""O_ __ _
k! k!
wie die Beispielrechnungen fUr die numerische Binomial( 6, 1)
=
6
Binomial( 25, 3)
Binomial( 5 ,2)
=
10
Binomial(12,11)
= 2.3o l(f =
12
bzw. exakte Berechnung Binomial( 6 , 1)
セ@
6
Binomial( 5, 2)
セ@
10
zeigen.
Binomial( 25 , 3)
セ@
Binomial( 12 , 11)
2300 セ@
12
6.15 Wahrscheinlichkeitsrechnung
257
ij(wenn) verwenb) Wenn wir die in Abschn. 6.1.4 beschriebene Funktion if(wenn) den, kbnnen k6nnen wir den Binomialkoeffizienten fur ォセo@ k::::O berechnen, d.h., der Fall k=O ist mit eingeschlossen:
n (a(a -I1 k-l
._ if (k Binomial (a , k) .- if (k
Binomial (5 , 0)
•
= = 00
= 1
,1 , 1 ,
i) i)
1=0 - - ) =;-,-,-0
k!
Binomial (0 , 0)
=
1
+
Binomialkoe!ftzient benbtigt ben6tigt man in der Kombinatorik zur BeFakultat und Binomialkoe./fizient Formeln fur fi.ir die: rechnung der Fonneln • Pennutation Permutation (Anordnung von n verschiedenen Elementen mit BeriickBerucksichtigung der Reihenfolge): n! • Variation (Auswahl von k Elementen aus n gegebenen Elementen mit Berncksichtigung der Reihenfolge) Beriicksichtigung n! n'. * ohne Wiederholung: - (n - k)! (n-
* mit Wiederholung: •
nk
Kombination (Auswahl von k Elementen aus n gegebenen Elementen ohne Beriicksichtigung BerUcksichtigung der Reihenfolge)
HセI@
*
ohne Wiederholung: (:)
*
n+k-1) mit Wiederholung: ( n +kk k -1)
セ@
Unter Verwendung der Formeln der Kombinatorik lassen sich klassische Dnter Wahrscheinlichkeiten fur das Auftreten von Ereignissen berechnen. Diese Wahrscheinlichkeiten sind als Quotient von Anzahl der gunstigen zu Anzahl der moglichen Faile definiert. definiert .
•
+
Betrachten wir einige Beispiele. Beispiel 6.40: a) Man wahle zufallig 2 Teile aus einer Menge von 12 Teilen aus, in der sich 4 defekte Teile befinden. Gesucht sind die Wahrscheinlichkeiten peA) und PCB) dafur, daB die (Ereignis (Ere ignis zwei ausgewahlten Teile defekt (Ere ignis A) bzw. nicht defekt (Ereignis B) sind: m6glichen FaUe, Falle, urn 2 Teile aus 12 Teilen auszuwahlen Die Anzahl der mbglichen (Kombinationen ohne Wiederholungen), berechnet sich mittels
258
6 MATIlCAD fUr Fortgeschrittene
Binomial (12,2) = 66. Die Anzahl der gi.instigen FaIle fur das Ereignis A und B berechnen sich aus: Binomial (4,2) = 6 bzw. Binomial (8,2) = 28. Damit ergeben sich die Wahrscheinlichkeiten: P(A) PCA) =
_ 1 @セ 6 simplifies to P(A) PCA) = セ@ 66
PCB)-= セZ@ 28 P(B) . 66
11
PCB) == セ[@ 14 P(B) 33 Daraus laBt sich die Wahrscheinlichkeit P(C) = 1 - PCB) dafur berechnen, daB mindestens ein Tell defekt ist (Ereignis CEreignis C): ._ 1 4 _ 19 P( simplifies to P( PC C) :.-= 1 セ@- -14 PC C) .-= -19 33 33 simplifies to
b) Man sucht die Wahrscheinlichkeit p dafur, daB n Personen an verschiedenen Tagen Geburtstag haben. Dabei wird vorausgesetzt, daB der Geburtstag einer Person mit gleicher Wahrscheinlichkeit auf irgendeinen Tag faIlt. Man geht von 365 Tagen pro Jahr aus und erhalt damit 365 n Mbglichkeiten fur die Geburtstage der n Personen. Dafur, daB diese n Personen an verschiedenen Tagen Geburtstag haben, gibt es 365·364·363 ... (365-n+ 1) Mbglichkeiten. Damit berechnet sich die gesuchte Wahrscheinlichkeit p aus 365 . 364 . 363 ... (365 C365 - n + 1) p == n 365 365 364 363 ... _ 365 -n-+ _._._ _ -1 365 365 365
365
Aus dieser Formel ist ersichtlich, daB die Wahrscheinlichkeit p mit wachsendem n monoton WIt. Mit MATHCAD kann man dies durch Berechnung verschiedener Werte von n nachprtifen und pals Funktion von n grafisch darstellen: n
Il (365 - k + 1) fen) ;.-
k-l k=l
365n
6.15 Wahrscheinlichkeitsrechnung 6.15
259
n = 11.. 30 n=
n) 0.5 0.5 fef( n)
oッセM@ ,'--___.1-_ _ _- ' -_ _ _--' o 10 20 10 30 n
f(10)
=
0.883
f( 20)
=
0.589
f( 23)
=
0.493
•
6.15.2 Erzeugung von Zufallszahlen Bei einer Reihe von Methoden (z.B. Monte-Carlo-Simulation - siehe Abschn. 8.2) benbtigt man ZuJallszahlen. Diese lassen sich mittels Computer erzeugen und werden als PseudozuJallszahlen bezeichnet, da sie durch ein Programm erzeugt werden und damit gewissen GesetzmaSigkeiten GesetzmaBigkeiten unterworfen sind. MATIICAD MATHCAD stellt folgendes Kommando (in der deutschen und englischen Version) zur Berechnung von gleichverteilten ZuJallszahlen zur Verftigung: rnd (a) erzeugt eine ZuJallszahl zwischen 0 und a (a>O), indem man diese Funktion mit dem entsprechenden Argument in das Arbeitsfenster eingibt, sie mit einer Selektionsbox umrahmt urnrahmt und abschlieSend abschlieBend das Gleichheitszeichen eintippt.
セ@
Der Funktion rnd ist ein Startwert zugeordnet. Wenn man diesen Startwert (ganze Zahl) in der nach der Aktivierung der KommandoJolge Math セ@ Randomize ... (deutsche Version: Math セ@ Zufallszahlen... ) erscheinenden Dialogbox durch Anklicken des Knopfes (Buttons) OK auf den aktuellen Wert zUrUcksetzt, erzeugt rnd bei jedem Aufruf die gleiche Zufallszahl. Man bezeichnet dies als ZUrUcksetzen des ZuJallszahlengeneraZufallszahL tors von MATHCAD. Wenn man den Startwert (Zufallszahlengenerator)
260
6 MATHCAD fOr Fortgeschrittene
nicht zuriicksetzt, wird bei jedem Aufruf von rnd i.a. eine andere Zufallszahl erzeugt.
•
セ@
Ausgehend von den mittels rnd berechneten gleichverteilten Zufallszahlen lassen sich durch Transformationen Zufallszahlen erzeugen, die einer anderen Verteilung geniigen. 1m Beispiel 6.42c erzeugen wir auf diese Weise normalverteilte Zufallszahlen. Dazu verwenden wir die Formel von Box:!enkins, die wir aus dem Elektronischen Buch Statistics (siehe Abschn. 6.16.4) entnehmen. Der entsprechende Abschnitt dieses Buches (Sektion 20) wird im folgenden Beispiel wiedergegeben.
•
Beispiel 6.41: In der Sektion 20 des Elektronischen Buches Statistics wird die Formel von Box:!enkins gegeben, die aus gleichverteilten Zufallszahlen normalverteilte berechnet. Am Beispiel der Erzeugung von 1000 normalverteilten Zufallszahlen mit dem Erwartungswert 1 und der Standardabweichung 3 wird diese Formel getestet. Der betreffende Ausschnitt des Buches hat folgende Gestalt: Normal
To generate normal random deviates with mean Jl and standard deviation
(1,
use the Box-jenkins formula given by
NORMD(Il,cr) NORMD( J..l, 0-)== IlJ..l + 」イNセMRQョHュ、Iッウエ@
2·1n(md(1)) ·cos(2·n ·md(1))
For example, a vector of 1000 deviates with mean 1 and standard deviation 3 is generated by セ@
mean
セ@
standard deviation
cr 0- := 3
セ@
number of deviates:
::;= 1000 N N=
セ@
vector of deviates:
i::;=O i:=O .. N-l
Il J..l== 1
VNj := ;= NORMD(Il, NORMD(J..l, cr) 0-) Here are some statistics about the N exponential deviates:
•
mean (VN)
=
1.169
stdev(VN)
=
2.982
6.15 wahrscheinlichkeitsrechnung
261
Fur praktische Anwendungen benotigt man meistens nicht nur eine, sondem mehrere Zufallszahlen aus einem gegebenen Intervall [O,a]. Die Vorgehensweise hierfur ist aus dem folgenden Beispiel ersichtlich. Beispiel 6.42: a) Mochte man eine gleichverteilte ZuJallszahl aus dem Intervall [0,2] erzeugen, so erscheint folgendes im Arbeitsfenster: rnd( 2) = 0.386646039783955 Eine mehrmalige Anwendung von rnd ohne ZUrUcksetzen des Zufallszahlengenerators kann folgendermaBen aussehen: rnd(2) = = 0.700616206973791 rnd( 2) = = 1.645675450563431 rnd( 2)
=
0.348257990553975
rnd(2)
=
1.420990815386176
b) Mochte man z.B. 15 gleichverteilte Zufallszahlen aus dem Intervall [0,5] erzeugen, so schreibt man unter Verwendung der Operatorleiste Nr.l i
:=
1..15
Xi:=
rnd(5)
und gibt anschlieBend x fur den Vektor mit den Komponenten Xi und das numerische Gleichheitszeichen ein. Als Ergebnis erhalt man einen Vektor x, dessen Komponenten die 15 erzeugten Zufallszahlen sind. 1m MATHCAD-Arbeitsfenster sieht dies folgendermaBen aus: i== 1..15
Xi
:= md(5)
262
6 MATIICAD fur Fortgeschrittene 2.053558649495244 3.140350971370935 2.258066763170064 2.989141037687659 4.273960688151419 3.123889295384288 2.828731555491686 0.921438275836408 x = = 10.921438275836408 2.775711831636727 1.214323262684047 3.023635633289814 2.923027235083282 2.472241269424558 3.70370666962117 3.101912094280124
c) 1m folgenden erzeugen wir mit der Formel von Box-Jenkins 15 normalverteilte ZuJallszahlen mit dem Erwartungswert 0 und der Standardabweichung 1 unter Verwendung der in MATHCAD integrierten Funktion rnd zur Berechnung gleichverteilter Zufallszahlen: J.L : = cr == 1 i = =0 = 1 .. 15 Yj=
J.L
+ cr GセMRNャョHュ、QI@
·cos(2·n·md(1))
6.15 Wahrscheinlichkeitsrechnung
263
0.451796842251633 -0.342082360008014 1.004790428001619 -0.017269615422205 1.240572096329877 -1.667498505523023 0.029057489278765 -1.018235233763537 = I -1. Y 018235233763537 Y = -0.784549000754725 -0.723291006889052 -0.391130584825536 0.792833594252071 1.02312046160709 1.974429441345856 0.067034137528329
• 6.15.3 Verteilungsfunktionen Die Verteilungsfunktion F(x) einer ZufallsgrojSe X ist durch F(x) = P( X < x ) definiert (manchmal auch durch F(x) = P( X セ@ x ) ), wobei P(X < x) die Wahrscheinlichkeit dafUr angibt, daB die ZufallsgroBe X einen Wert kleiner als die Zahl x annimmt. Falls der fundamentale Begriff der ZufallsgroBe nicht bekannt ist, so muB ein Lehrbuch der Wahrscheinlichkeitstheorie konsultiert werden. In der Statistik spielen die inversen Verteilungsfunktionen eine groBe Rolle. Man bezeichnet den Wert Xs als s-Quantil, fUr den gilt F(xs ) = P(X < x s ) = s, d.h., Xs ermittelt sich aus (falls F streng monoton wachsend ist) xs=F-1(s), wobei seine gegebene Zahl aus dem Intervall (0,1) ist. Fur diskrete ZufallsgrojSen X mit den Werten (Realisierungen) x1,xz,···,x n ,··· ergibt sich fUr die oben definierte Verteilungsfunktion F(x)= I,Pk, Xk 10 anda between .001 and.l and.1 this approximation,
The number of degrees offreedom, d, is t(a, d) , is good to within .01. Tbe interoal one less than the sample size, so the size of the confidence interval will be correct to within 1 percentfor percent for samples of size 12 or larger. The definitions for the confidence limits Land U use the function Tbe calculate the percentage point
t
to
Below are the calculations for the confidence limits for estimating the population mean. QNセ@ ) s (a L=m-tz,n[n
1) . s (a u=m+tz,n[n
The confidence limits are: Tbe
L= uU= The probability that a confidence interval interoal constructed in this way Tbe contains the true population mean is 1 -セ@ a
=
0.99
Die leeren rechten Seiten nach den numerischen Gleichheitszeichen sind in begrundet, daB keine Datei edata.pm dem gegebenen Dokument dadurch begriindet, eingelesen wurde .
•
6.17 Wirtschaftsmathematik
293
セ@
Der im letzten Beispiel betrachtete Ausschnitt eines Elektronischen Buches liiBt HiBt die Struktur derartiger Bucher bereits gut erkennen. Man sieht, daB sich diese Bucher selbst erklaren, da alle aIle Berechnungen von ausfuhrlichen ausfUhrlichen Erlauterungen begleitet sind. Weitere Hinweise zu den Elektronischen Buchern findet man in den Abschn. 7.6 und 7.7.
•
6.17 Wirtschaftsmathematik Kenntnisse auf dem Gebiet der Wirtschaftsmathematik erhalten auch fur Ingenieure und Naturwissenschaftler immer groBere graBere Bedeutung, da diese die wirtschaftliche Verwertung ihrer Entwicklungen und Untersuchungen im Auge behalten mussen.
6.17.1 Teilgebiete der Wirtschaftsmathematik
Die Wirtschaftsmathematik ist ein weitgefachertes Gebiet. Hierzu kann man alle mathematischen mathernatischen Gebiete rechnen, die zur Losung Lasung von Aufgaben der aIle (Okonomie) herangezogen werden. Folgerichtig zahlen deshalb Wirtschaft (Okonornie) viele der bis jetzt behandelten mathematischen Problemstellungen ProblemsteBungen dazu. So aBe im Kap. 5 betrachteten Standardaufgaben fUr fur mathematische werden aIle Methoden in der Wirtschaft benotigt. benatigt. Hinzu kommen als weiteifuhrende weitetfuhrende Gebiete: • Statistik-und Wahrscheinlichkeitsrechnung, (u.a. Graphentheorie, Spieltheorie, Optimierungs• Operations Research Cu.a. theorie, Bedienungstheorie, Lagerhaltungstheorie), • Finanzmathematik, • Versicherungsmathematik, von denen wir in diesem Kapitel bereits einige behandelt haben. Fur die restlichen Gebiete werden in MA MATHCAD THeAD keine Kommandos und Funktionen gefunden. Es gilt fUr fur die Losung Lasung von Problemen der Wirtschaftsmathematik naturlich natiirlich der schon mehrmals gegebene Hinweis : Durch Erstellen eigener Programme (Dokumente) unter Verwendung vorhandener Funktionen und Programmierm6glichkeiten Programmiermoglichkeiten von MATHCAD lassen sich viele Aufgaben 16sen, losen, fur die zur Zeit noch keine Kommandos bzw. Elektronischen Bucher existieren. haufig vorkommender Probleme der Finanzmathematik mochmachAnhand Mufig benatigten Formeln ten wir dies im folgenden demonstrieren, indem die benotigten
294
66 MATHCAD fur Fortgeschrittene
durch eigene MATHCAD-Dokumente MA1HCAD-Dokumente berechnet werden. Diese Dokumente sind unter Verwendung der im Kap. 7 gegebenen Programmierhinweise verfaBt.
6.17.2 Finanzmathematik Die Finanzmathematik befaBt sich hauptsachlich mit der mathematischen Behandlung von Abgabe, Ruckgabe und Verzinsung von Geld (Kapital) , d.h., es werden im wesentlichen Aufgaben aus dem Bank- und Kreditwesen kbnnen im folgenden keine umfassende Behandlung der Fibehandelt. Wir konnen nanzmathematik geben. Wir betrachten lediglich einige Standardaufgaben aus den folgenden Gebieten A bschreibung, * Abschreibung, * Zinsrechnung, * Rentenrechnung, * Tilgungsrechnung, die nicht nur fur bkonomen Okonomen von Interesse sind. Als mathematische Hilfsmittel benotigt benbtigt man lediglich elementare Kenntnisse aus der Theorie der Zahlenfolgen und Zahlenreihen. Da MATHCAD keine integrierten Funktionen zur Finanzmathematik besitzt, definieren wir die entsprechenden Funktionen, so daB sie allgemein anwendbar sind und losen Ibsen jeweils ein charakteristisches praktisches Problem. • Abschreibung: Die Abschreibung befaBt sich mit dem Wertverlust eines Gebrauchsgegenstandes (Wirtschaftsgutes) aufgrund von Alterung, technischem Fortschritt und/oder Bedarfswandel. Man unterscheidet zwischen * linearer, * arithmetisch-degressiver, * geometrisch-degressiver A bschreibung. Abschreibung. Betrachten wir die unterschiedlichen Abschreibungsformen: linearen * Bei der linear en Abschreibung berechnet sich der Abschreibungsbetrag A aus W A ==W A T
*
In dieser Formel bezeichnet W den totalen Wertverlust wahrend der gesamten Nutzungsdauer T. Bei der arithmetisch-degressiven Abschreibung wird der Abschreibungsverlauf durch Vorgabe des ersten Abschreibungsbetrages Al und der DifJerenz DiJferenz zweier weiterer Abschreibungsbetrage D bestimmt. Da die Summe der Abschreibungsbetrage gleich dem totalen Wertverlust W nach der Nutzungsdauer T sein muB, ergibt sich die Formel
6.17 Wirtschaftsmathematik = W =
T 2>t
= =
295
T
Tcr-D
t=1
2
= T·A 1 L(A1 -(t-1)D) =
t=1
D
worin At den Abschreibungsbetrag der Periode t bezeichnet. Aus dieser Formel kann man D berechnen: D D
2(T A 1 -W)
= =
TCT-1)
Wegen D > 0 und AT = Al - (T -l)D > 0 erhalt man fur Al die Bedingungen W W 2 - > Al > -
T
*
T
Bei der geometrisch-degressiven Abschreibung werden die laufenden Abschreibungen durch Multiplikation der Restwerte Rt am Ende der Vorperiode mit einem konstanten Faktor erhalten. Dies ergibt die Formel
RT R
(l_l)T AW Cl-l)TAW 100 in der AW den Anschaffungswert, p den Abschreibungsprozentsatz und RT den Restbuchwert zur vorgegebenen Nutzungsdauer T bezeichnen. Aus dieser Formel HiBt sich durch einfache Umformungen der Abschreibungsprozentsatz p bei gegebenem Restbuchwert berechnen: =
T
p
=( 1 -
RT VAW
) ·100
Betrachten wir die drei moglichen Abschreibungen im folgenden Beispiel. Hier definieren wir die einzelnen Formeln als Funktionen, so daB diese allgemein anwendbar sind. Beispiel 6.50: a) Eine Maschine hat einen Anschaffungswert von 200 000 DM. Es ist eine Nutzungsdauer von 5 Jahren geplant. Nach dieser Nutzungsdauer rechnet man mit einem Verkaufswert von 30 000 DM. Der Wertverlust W betragt folglich 170 000 DM. MATHCAD berechnet fur die lineare Abschreibung folgendes:
.- W A(W, T) := T
A(170000 ,5) = 3.4 10 4 Dies ergibt eine Abschreibung von 34 000 DM pro Jahr. 0
b) Ein Computer hat einen Anschaffungswert von 10 000 DM. Der Abschreibungsbetrag nach dem ersten Jahr wird mit 3000 DM vorgegeben. Die Nutzungsdauer betrage 4 Jahre. Danach rechnet man mit einem Verkaufswert von 1000 DM. Mit MATHCAD kann man die erfor-
296
6 MAlliCAD fur Fortgeschrittene
derliche arithmetisch-degressive Abschreibung folgendermaBen durchfuhren: T == 4 W :== 9000 A 1 :== 3000 2.(A1· T - W) D(A 1, T, W) :'== セMB----'---,------"D(A T.(T - 1)
Diff : = if
Hセ@
< A 1 < 2·
セ@
, D(A 1 ' T ,W) , 0)
Diff = 500 Wenn fur Diff Null ausgegeben wird, so ist die fur den ersten Abschreibungsbetrag Al erforderliche Ungleichung nicht erfullt, d.h., Al muB entsprechend verandert werden. Flir unser gegebenes Zahlenbeispiel ist die Ungleichung erfullt und es ergibt sich mit dem Ergebnis 500 der foigende Abschreibungsplan: 1. Jahr = 3000 2. Jahr = 2500 3. Jahr = 2000 4. Jahr = 1500, so daB der gegebene Restwert von 1000 DM librigbleibt. c) Schreiben wir die Maschine aus Beispiel a) geometrisch-degressiv abo Mit = 200 000, T = = 5 RT = 30000, AW = laBt sich der Abschreibungsprozentsatz berechnen:
t
(1- (:; Iセ@ }]-100 100
p(R T,AW,T)= [,- ( : ;
pC30000 , 200000 , 5)
=
31.6
Mit dem berechneten Abschreibungsprozentsatz von 31.6 % laBt sich der Abschreibungsplan (Foige der Restbuchwerte) flir die gegebenen 5 Jahre berechnen: AW= t ::== 0 .. 5 A W = 200000 Rt := AW (1 - 0.316)t t • 2.105
1.4 .105
=
R =
9.4.10 4
6.4 .104 4.4 .104 3.104
6.17 Wirtschaftsmathematik
297
Aus dem Vektor R erhalt man durch Differenzenbildung zweier aufeinanderfolgender Komponenten den folgenden Abschreibungsplan: 1m ersten Jahr sind 60000 DM, im zweiten Jahr 46000 DM, im dritten Jahr 30000 DM, im vierten Jahr 20000 DM und im funften fUnften Jahr 14000 DM abzuschreiben . •
•
Zinsrechnung Die Zinsrechnung bildet die Grundlage der Finanzmathematik. Zinsen bilden im Geldverkehr eine Vergutung fUr fur leihweise uberlassenes Geld (Kapita/) (Kapital) und hiingen hangen i.a. La. von der Hbhe des Geldbetrages und der Lange der Leihzeit abo Bei der Zinsberechnung unterscheiden sich die Berechnungsmethoden nach * der Liingedes Liinge des Zinszeitraumes (vorschussig, nachschussig), * dem Zeitpunkt der Zinsverrechnung (jahrlich, unterjahrig, unterjiihrig, stetig), wenn das Geld weiter angelegt bleibt, * der Weiterverrechnung der Zinsen (Zinseszinsen). Folgende Grundgrofien Grundgroflen werden bei der Zinsberechnung benbtigt: * Kapital (Geld) K, * Zinsen Z, * LauJzeit Laujzeit (Anlegezeit) T, * Zinssatz i, * ZinsJufi Zinsjufl p, * ZinsJaktor Zinsjaktor q=l +i . Es wird nicht in allen Buchern zur Finanzmathematik Finanzmathernatik eine strenge Trennung zwischen Zinssatz und ZinsJufi Zinsjufl vorgenommen. Manche Bucher verwenden fUr ZinsfuB auch die Bezeichnung Prozentzinssatz, urn hierdurch auszudrucken, auszudriicken, daB dieser in Prozent angegeben wird. Wir verstehen unter Zinssatz und ZinsJufi Zinsjufl den Betrag an Zinsen, der fUr fur 1 DM (Zinssatz) bzw. fUr fur 100 DM (Zinifufl) (Zinsjufi) Kapital gezahlt wird. Damit besteht zwischen Zinssatz i und ZinsJufi Zinifufl p der folgende Zusammenhang : i =
l
100 Aus der Vielzahl der mbglichen Zinsberechnungen wollen wir nur die beiden bekanntesten betrachten: * EinJache Einjache Jahrliche jahrliche Verzinsung : Hier werden die Zinsen nicht jahrlich dem Kapital zugeschlagen, sondern ausgezahlt oder auf einem gesonderten Konto gutgeschrieben. Damit ergibt sich die folgende Formel fUr fur den Endwert Ky KT des Kapitals nach T Jahren (Laufzeit, Anlegezeit) bei einem Zinssatz i und einem AnJangskapital Anjangskapital Ko Ky KT = Ko' Ko· (1 + i· T ) * Zinseszins : Wenn eine jahrliche Verzinsung zugrundegelegt wird, so besteht beim Zinseszins der Unterschied zur einfachen Verzinsung darin, daB
298
fur Fortgeschrittene 6 MATHCAD rur
die Zinsen jeweils dem Kapital zugeschlagen und damit weiterverflir die Zinsbezinst werden. Damit ergibt sich die folgende Formel fUr rechnung, wenn man die gleichen Bezeichnungen wie bei der einfachen Verzinsung verwendet: KT = Ko· Ko' (1 + i)T Aus dieser Formel lassen sich durch einfache Urnrechnung Umrechnung die Berechnungsvorschrijten rechnungsvorschriften fUr flir Zinssatz i, Laujzeit Laufzeit T und Anjangskapital Anfangskapital Ko erhalten:
.
T[K.; V Ko
iI = = セMャ@v KT -1
,
T = InKT - InKo InO + i)
Ko
KT (1- + i)T
Betrachten wir die Zinsberechnung an einigen Beispielen. Beispie16.51: Beispiel 6.51: a) Ein Sparer vereinbart mit einer Bank, daB er sein Kapital von 10 000 DM bei einem ZinsfuB p=6% fUr flir 10 Jahre bei einfacher Verzinsung anlegt und den Gesamtbetrag (Zinsen + Anfangskapital) AnfangskapitaD am Ende der Anlegezeit zuruckerhalt. zurilckerhalt. Er hat dann nach 10 Jahren folgenden Betrag erreicht: KT(KO,i,T)= KO·(1 + +i·T) i·T) K T(10000 ,0.06,10)
=
1.6.10 4 1.6'10
vergrbBert. d.h., das Anfangskapital hat sich auf 16 000 DM vergroBert. mbchte in 9 Jahren bei einem ZinsfuB von p=7% und einfacher b) Man mochte Verzinsung ein Kapital von 20 000 DM ansparen. Welches Anfangskapital muB man einzahlen? MATHCAD berechnet 12 270 DM: KT KO(KT,i,T) K 0 (K T ' i, T) := := - ..I·T 1 + iT K O( 20000 ,0.07,9) KO(20000
=
1.227.104 1.227'10
flir die Werte aus Beispiel a) bei zinc) Berechnen wir das Endkapital fUr seszinslicher Anlegung: +i)T KT(KO,i,T)= KO·(1 +OT , 0.06 , 10) K T( 10000 ,0.06,
=
.10 4 1.791 '10
d.h., das Endkapital betragt 17 910 DM. d) Wie hoch muB der ZinsfuB p sein, damit sich das Anfangskapital in 10 Jahren verdoppelt? Man erhalt folgendes
6.17 Wirtschaftsmathematik
p = = =
HャセZ@
-1} 100
299
nr-Ko -1) ·100 (IVK";
- 1). 100 .
MATHCAD berechnet den numerischen Wert 7,18% :
•
(2' ;' -I} -1)-100 100 セ@ 7.18 7.18 ( 2';' • Rentenrechnung Die Rentenrechnung baut auf der Zinseszinsrechnung auf. Als Rente bezeichnet man die periodisch eifolgende Zahlung eines konstanten Geldbetrages. Wird diese Zahlung zu Beginn bzw. Ende einer Periode (meistens eines Jahres) vorgenommen, so spricht man von vorschiissiger bzw. nachschiissiger Rente. Wird die Rente nur fUr eine begrenzte Zeit gezahlt, so spricht man von einer endlichen Rente. Ist die Laufzeit einer Rente nicht beschrankt, so wird sie als unendliche Rente bezeichnet. Folgende Grundgr6jSen werden bei der Rentenrechnung ben6tigt: * RentenbarwertR o , * Rentenendwert RT , * Rentenrate R, * ZinsJaktor q=1 +i, * LauJzeit T. Typische Fragestellungen der Rentenrechnung sind: * Frage nach dem Rentenendwert RT : Wieviel Geld sammelt sich in T Jahren bei einer festen periodischen Zahlung R (Rentenrate) an, wenn das jeweils vorhandene Geld mit p% jahrlich verzinst wird? Der Rentenendwert ist damit das gesamte angesammelte Ge1dkapital am Ende der Laufzeit einer Rente. * Frage nach dem Rentenbarwert Ro : Wie grog mug ein eingezahlter Geldbetrag bei einer jahrlichen Verzinsung von p% sein, wenn hiervon periodische Auszahlungen R fUr eine gegebene Anzahl T von Jahren durchgefUhrt werden sollen? Der Rentenbarwert ist damit der Geldwert, den eine Rente wert ist, deren Auszahlung, Laufzeit, Zins und Zahlungsperioden bekannt sind. * Frage nach der Rentenrate R: Wieviel kann bei einer jahrlichen Verzinsung von p% pro Jahr abgehoben werden, damit ein zur VerfUgung stehender Geldbetrag Ro (Rentenbarwert) eine gegebene Anzahl T von Jahren reicht? Der Rentenendwert bei nachschiissiger Rente mit der Laufzeit T berechnet sich aus
300
6 MATIfCAD fUr Fortgeschrittene
qT -1 = R·-RT = q-1 und bei vorschiissiger Rente aus T q -1 RT = R · q · - q-1 Der Rentenbarwert bei nachschiissiger Rente mit der Laufzeit T berechnet sich aus T
Ro = R.
q -1 qT.(q_1) qT.(q_l)
und bei vorschiissiger Rente aus qT -1 R == R· --=--:-----=-!--o T-l q . ( q- 1) Betrachten wir die Rentenrechnung an einigen Beispie!en. Beispiel 6.52: a) Ein SchUler erhiilt fur die letzten vier Schuljahre einen Betrag von 10 000 DM geschenkt. Welchen Betrag kann er nachschussig bei 6% Zinsen pro Jahr von der Bank abheben, damit das Geld vier Jahre reicht? Wenn man die gegebene Formel fur den Rentenbarwert bei nachschussiger Rente nach der Rentenrate R aufibst, berechnet MATHCAD folgendes: T q - 1 R(RO,q,T):= R(RO,q,T ) := RO.qT. RO·q ᄋMtセ@ セMQ@ q - 1
=
R( 10000,1.06,4) 2.886.10 3 d.h., er kann pro Jahr 2886 DM abheben. b) Ein Betrag von 10 000 DM wird bei einer Bank zu einem ZinsfuB von 7% angelegt. Wie lange dauert es, bis das Geld bei einer jahrlichnachschussigen Auszahlung von 2000 DM aufgebraucht ist? Wenn man die gegebene Forme! fur den Rentenbarwert bei nachschussiger Rente nach der LauJzeit T aufibst, berechnet MATHCAD folgendes:
MセOHアャI@サ [
In T(R O,R,q)
:=
1]
R 1- RO . (q-1) In(q)
T(10000 , 2000 , 1.07) == 6.367 d.h., nach 6.4 Jahren ist das Guthaben aufgebraucht.
6.17 Wirtschaftsmathematik
301
c) Ein Sparer zahlt jahrlich-vorschiissig jahrlich-vorschussig 1000 DM auf ein Bankkonto ein, auf das er 10% Zinsen erhalt. Wie groB ist der Kontostand nach 5 Jahren? Mit der Formel fur filr den vorschiissigen vorschussigen Rentenendwert berechnet MA1HCAD folgendes: qT _ 1 RTCR,q,T) := R·q·-q-1 RT(1000 ,1.1,5) = 6.716-10 6.716 10 3 0
d.h., das Konto ist auf 6716 DM angewachsen .
•
• Tilgungsrechnung tョセァウイ・」@ In der Tilgungsrechnung geht es urn die Riickzahlung Ruckzahlung von Darlehen, Krediten, Hypotheken usw., d.h. urn die Ruckzahlung von Schulden einschlieBlich der berechneten Zinsen und Gebiihren. Gebuhren. Dabei kann der Schuldner meistens zwischen verschiedenen Ruckzahlungsarten CTilgungsarten) wahlen: * Riickzahlung Ruckzahlung des gesamten Betrages am Filligkeitstag. * Riickzahlung Ruckzahlung in mehreren Teilbetragen in regelmaBigenoder unregelmaBigen Zeitabsmnden. Zeitabsilinden. Neben der Entscheidung iiber uber die Tilgungsart kann zusatzlich noch die Anzahl der tilgungsfreien Jahre festgelegt werden. Die Tilgung kann vornachschussig vorgenommen werden. schussig oder nachschiissig schiissig Folgende GrundgrofSen werden bei der Tilgungsrechnung benotigt: * Gesamtschuld So und Restschuld Rt , wenn nach t Jahren nur ein Teil der Schuld getilgt ist. * Tilgungsrate TR bezeichnet den Betrag, der am Ende eines Zeitabschnitts zur Abzahlung der Gesamtschuld zu zahlen ist. * Zinsen Z, die fur filr die jeweilige Restschuld nachschiissig nachschussig zu zahlen sind. ZinsfuB und Zinssatz werden wie iiblich ublich mit p bzw. i und der Zinsfaktor i + 1 mit q bezeichnet. * Annuitat A Coder auch RuckzahlungsbetragRZ t ) bezeichnet die Summe aus Tilgungsrate TR und Zinsen Z. Dabei verwendet man meistens bei der Ratentilgung die Bezeichnung Ruckzahlungsbetrag und bei der Annuitatentilgung die Bezeichnung Annuitat. Man unterscheidet folgende Arten fur filr Tilgungen: * Die Ratentilgung : Hier ist das geliehene Kapital nach Ablauf der vereinbarten tilgungsfreien Zeit in konstanten Raten zuruckzuzahlen. Der RuckzahlungsbeRiickzahlungsbetrag muB die berechneten Zinsen mit enthalten. Diese nehmen aber im Laufe der Tilgung ab, da die Restschuld kleiner wird. Damit ist die Annuitat, die sich aus konstanter Tilgungsrate und variablen Cabnehmenden) Zinsen zusammensetzt, bei der Ratentilgung nicht konstant. * Die Annuitatentilgung Annuitiitentilgung :
302
6 MATH MATHCAD CAD fUr Fortgeschrittene
Hier bleibt die Annuitat wahrend der gesamten Riickzahlungszeit Ruckzahlungszeit konstant. Da die Zinsen kleiner werden, nehmen die Tilgungsraten folglich urn den gleichen Betrag zu. * Eine weitere M6glichkeit Mbglichkeit besteht in der wenig gebrauchlichen Form, nur jahrlich die Zinsen zuriickzuzahlen zuruckzuzahlen und die Schuld am Ende der Laufzeit in einem Betrag zu tilgen. Diese Tilgungsform kann mit der Zinsrechnung behandelt werden. Die Formel Fonnel fur die Ratentilgung laBt sich einfach herleiten: In der tilgungsfreien Zeit (t = 0, 1, 2, ... , t f ) sind nur die Zinsen Z = i·S o pro Jahr zu zahlen. In den restlichen Jahren t = = t f + 1, ... , T berechnet sich der Ruckzahlungsbetrag Riickzahlungsbetrag RZ t im Jahr taus RZ t = i·(So - (t- (t f +l))·TR) + TR, wobei sich die Tilgungsrate TR bei gleichmaBiger Ratentilgung aus
tr]セ@
T - tf
berechnet, wenn zur Zeit T die Gesamzschuld Gesarnzschuld So getilgt sein solI. Ruckzahlungsbetrag) A der AnDie Formel fur die Annuitat (konstanter Riickzahlungsbetrag) nUitatentilgung nuitatentilgung bei T Zahlungen lautet q-l T q-1 T A = So·q . - qT -1 Hiermit laBt sich die Formel fur die Restschuld berechnen: qt -1 Rt = qt - A · - = S So0 ..qt t q -11 qDa die Restschuld fur t = T gleich Null sein muB, laBt sich aus der letzten Formel die Tilgungszeit T berechnen: T = In A -In(A - So . i) T = lnq Berechnen wir mit den gegebenen Formeln fur die Tilgungsrechnung einige Aufgaben.
Beispiel 6.53: Beispie16.53: a) Wie hoch ist fur eine Schuld von 10 000 DM bei einem ZinsfuB von 6% und einer Tilgungszeit von 4 Jahren die Annuitat? MATHCAD berechnet folgendes: Tq-l ) _ SO·qTq-1 A ( SO,q,T= ' SO,q,TNMセ@ - qT _ 1
A(10000 ,1.06,4) = 2.886 -10 10 3 d.h., die Annuitat (konstanter Riickzahlungsbetrag) Ruckzahlungsbetrag) betragt 2886 DM. 0
6.17 Wirtschaftsmathematik
303
b) Ein Bankkunde kann fur ein Darlehen von 50 000 bei einem ZinsfuB von 9% eine Annuitat von 5000 DM pro Jahr leisten. Wie lange dauert die Tilgung? Mit der gegebenen Formel berechnet MATHCAD folgendes: .).) = = inCA) -In(A- SO·i) ( SO,A,q,l . T (S a ' A, q, 1 . InC q) T InCq) TC50000 ,5000,1.09,0.09) = 26.7 d.h., nach 27 Jahren ist die Schuld getilgt. c) Mit Bankkunden wird fur einen gegebenen Kredit von 100 000 DM bei einem ZinsfuB von 10% eine Ratentilgung von 5 Jahren vereinbart. Welcher Betrag ist pro Jahr zuruckzuzahlen? Mit TR = 20 000 DM, t f = 0, T = 5, i = 0.1 und So =100000 DM berechnet MATHCAD folgendes: R(SO,TR,t,tf,i)= i.[SO - [t- (tf+ l)]-TRJ +TR t= 1..5 RZ t
= R(100000 a
,20000, t, 0, 0.1)
3.104
= RZ =
2.8.10 4 2.6.10 4 2.4 .104 2.2.10 4
d.h., der Bankkunde muB nach dem 1. Jahr 30 000 DM, nach dem 2. Jahr 28 000 DM, nach dem 3. Jahr 26 000 DM, nach dem 4. Jahr 24 000 DM und nach dem 5. Jahr 22 000 DM zuruckzahlen .
•
セ@
Weiteifiihrende Forrneln und Berechnungen zur Finanzmathematik findet man in dem vorhandenen Elektronischen Buch Personal Finance.
•
7 Programmierung unter MATHCAD
1m Verlaufe dieses Buches haben wir bereits Probleme mitte1s Kombination von MATHCAD-Funktionen, -Kommandos und -Befehlen gelbst. Des weiteren wurden schon erste Eindriicke von der Arbeit mit den zu MATHCAD erhaltlichen Elektronischen Buchern gewonnen. Damit hatten wir bereits erste Kontakte mit der Programmierung im Rahmen von MATHCAD. Wie alle anderen Computeralgebra-Programme gestattet es MATHCAD, eigene Programme zu erstellen, falls fUr ein zu lbsendes Problem keine Standardkommandos existieren. In den folgenden Abschnitten werden wir ausfUhrlich die gegebenen Programmierm6g1ichkeiten von MATHCAD analysieren und dem demAnwender Anwender Hinweise zur Erstellung eigener Programme CDokumente) geben. Des weiteren geben wir Hinweise zu den fUr MATHCAD angebotenen Elektronischen Buchern, die professionell erstellt sind. Die in dies en Buchern angewandten Programmiertechniken verwenden zusatzlich in herkbmmlichen Programmiersprachen geschriebene Unterprogramme, so daB komplexere Algorithmen realisierbar sind.
7.1 Einfiihrung MATHCAD bietet wie die anderen Computeralgebra-Programme ebenfalls die M6glichkeit, Programme zu erstellen, wenn fUr ein zu lbsendes Problem keine Standardkommandos existieren. Fur die Programmierung stellt MATHCAD Zuweisungsoperatoren, zwei Kommandos fUr Verzweigungen CBedingungsfunktionen) und eine Laufanweisung zur Bildung einfacher Schleifen zur VerfUgung. Die beiden Bedingungsfunktionen haben wir bereits im Abschn. 6.1.4 kennengelernt. Damit sind wesentliche Hilfsmitte1 vorhanden, urn einfache Programme CDokumente) erstellen zu kbnnen, wie aus der Theorie der Programmierung bekannt ist. Zusatzlich kbnnen die in MATHCAD integrierten zahlreichen Funktionen CKommandos) mit in die Programmierung einbezogen werden. Dies stellt einen groBen Vorteil der Computeralgebra-Programme gegenuber
7.1 Einfuhrung
305
den herkbmmlichen Programrniersprachen wie BASIC, C, FORTRAN und herkommlichen Programmierspraehen PASCAL dar. Kenntnisse der Programrniermbglichkeiten MATHCAD sind auch Programmiermogliehkeiten von MAlHCAD aueh nutzlieh, wenn man vorhandene Dokumente und Elektronische Bucher beniltzlich, nutzen und gegebenenfalls seinen Erfordernissen anpassen moehte. mbchte.
セ@
1m Vergleich zu MAPLE und MATHEMATICA MAlHEMATICA fallen die Programmiermoglichkeiten von MAlHCAD MATHCAD etwas zurUek. zurilck. Hier sind fur zukunftige zukilnftige Versionen wilnschen. Die gegebenen Mbglichkeiten Verbesserungen zu wi.insehen. Mogliehkeiten von MATHCAD reichen jedoch jedoeh aus, urn fur fUr eine Reihe von Anwendungen Programme erstellen zu konnen, kbnnen, die man ebenfalls als Dokumente bezeichnet. Wir haben dies im Verlaufe des Buehes Buches bereits mehrfaeh mehrfach gesehen und werden in Absehnitten und im Kap. 8 weitere Programme erstellen. Die den folgenden Abschnitten gegebenen Beispiele sollen den Anwender anregen und befahigen, selbst Programme in MA MATHCAD fUr anfallende Aufgaben zu sehreiben THCAD filr schreiben .
• セ@
CDokuDie neueren Elektronischen Bucher enthalten nicht nur Programme (Dokumente), die mit MATHCAD-Befehlen MAlHCAD-Befehlen geschrieben, sondern auch Programme herkbmmlicher Programmiersprazu komplexeren Algorithmen, die mittels herkommlicher chen erstellt wurden. Damit werden die beschrankten Moglichkeiten Mbglichkeiten der Programmierung mit den von MATHCAD gegebenen Befehlen umgangen .
•
untersuchen wir die Befehlsstruktur von MAlHCAD MATHCAD auf ihre 1m Abschn. 7.2 untersuehen Einsatzmoglichkeiten Einsatzmbglichkeiten bei der Programmierung, d.h. im wesentlichen die beiden Bedingungsfunktionen Bedingungifunktionen zur Bildung von Verzweigungen und LaujbeLauJbereiche CBereichsvariablen) (Bereichsvariablen) filr fUr die Realisierung einfacher einfaeher Schleifen. anschlieBend fassen wir im Abschn. 7.3 die Definition von FunkDaran ansehlieBend tionen zusammen, die jeder Anwender beherrschen muB, da Funktionen die Arbeit wesentlieh wesentlich erleichtern. filr In den restlichen Abschnitten dieses Kapitels geben wir Beispiele fur das Erstellen eigener Programme (MATHCAD-Dokumente) CMATHCAD-Dokumente) und behandeln Aufbau, Inhalt und Anwendung der vorhandenen Elektronischen Bucher. Bilcher.
306
7 Programmierung unter MAmCAD
7.2 Befehlsstruktur Urn ahnliche Programme schreiben zu k6nnen, wie es u.a. die Programrniersprachen BASIC, C, FORTRAN und PASCAL gestatten (prozedurale Programmierunfi), ben6tigt man • Zuweisungen (Zuordnungen, Ergibtanweisungen), • Verzweigungen, • Schleifen. Zuweisungen wurden schon haufig in den vorangehenden Kapiteln verwendet. Man unterscheidet in MATHCAD wie in den Programrniersprachen zwischen lokalen und globalen Zuweisungen. Lokale Zuweisungen werden in MATHCAD mittels des Zeichens := realisiert, das durch den entsprechenden Operator aus der Operatorleiste Nr.l oder durch Eingabe des Doppelpunktes erzeugt wird. Globale Zuweisungen werden mittels des Zeichens == realisiert, das durch den entsprechenden Operator aus der Operatorleiste Nr.2 oder durch Eingabe der Tilde - erzeugt wird. Verzweigungen (bedingte Anweisungen) werden in den Programmiersprachen meistens mit dem Befehl if gebildet und liefem in Abhangigkeit von Ausdriicken bzw. Bedingungen verschiedene Resultate. Die vorkommenden Bedingungen bestehen aus logischen Ausdriicken, wie zum Beispiel x ::F Y x < a and x >b x セ@ c or x セ@ d, x セ@ y wobei and fur das logische UND und or fur das logische ODER stehen. FUr die Prograrnmierung von Verzweigungen steUt MATHCAD die folgenden Befehle zur Verfugung: • if ( ausdr, ergl, erg2 ) (deutsche Version: wenn ( ausdr, ergl, erg2) ), • until ( ausdr, w) (deutsche Version: his ( ausdr, w ) ). Beim Befehl if(wenn) wird das Ergebnis ergl ausgegeben, wenn der Ausdruck ausdr ungleich Null (bei arithmetischen und transzendenten Ausdriicken) bzw. wahr (bei logischen Ausdriicken) ist, ansonsten das Ergebnis erg2. Beim Befehl until (bis) wird der Wert w solange berechnet, bis der Ausdruck ausdr einen negativen Wert annimmt. Falls ausdr ein logischer Ausdruck ist, muB man beachten, daB MATHCAD fur wahr 1 und fur falsch o setzt. Deshalb muB man bei logischen Ausdriicken eine Zahl zwischen 0 und 1 abziehen, damit bei falsch der Ausdruck w nicht mehr berechnet wird.
7.2 Befehlsstruktur
307
セ@
Den if(wenn)-Befehl haben wir schon 6fters angewandt, vor allem bei der Definition von Funktionen (siehe Beispiele 6.4, 6.45, 6.50, 7.1, 7.2).
•
セ@
Als Ausdriicke ausdr in den Befehlen if (wenn) und until (bis) von MA1HCAD k6nnen auch logische Ausdriicke auftreten, wobei das logische UND durch das Multiplikationszeichen * und das logische ODER durch das Pluszeichen + dargestellt werden (siehe Beispiel 7.1e).
• セ@
Bei den Befehlen if(wenn) und until (bis) treten Probleme auf, wenn man fUr die Argumente ergl, erg2 bzw. w statt Ausdriicke Ergibtanweisungen einsetzt, wie wir im Beispiel 7.1d zeigen.
•
Schleifen (Laufanweisungen) dienen zur Wiederholung von Befehlsfolgen und werden in den Programmiersprachen mit Befehlen der Gestalt for und while gebildet. Bei der Bildung von Schleifen verwendet MATHCAD nicht diese bekannten Befehle der Programmiersprachen. Schleifen beginnen in MATHCAD mit einer Bereichszuweisung der Form: i := m .. n, セ@ unter verwerdUnq der Operatoren und m .. n G aus der Operatorleiste Nr.1 gebildet wird. Darin stellt die Variable i den Schleifenindex (Schleifenziihler) dar. Variablen dieser Art werden im Handbuch zu MA1HCAD als Bereichsvariablen bezeichnet. Die Gr6Ben m und n bestimmen den Laujbereich fUr die Bereichsvariable i und stehen fUr den Anfangswert (Startwert) bzw. Endwert von i, d.h., es muB m::;n gelten, damit der Laufbereich nicht leer ist. In der gegebenen Form wird als Schrittweite zwischen m und n 1 verwendet. Ben6tigt man eine andere Schrittweite Ai fur die Bereichsvariable i, so schreibt man i := m, m+Ai .. n . In der gerade gegebenen Definition haben wir stillschweigend den Schleifenindex als ganzzahlig vorausgesetzt, wie dies meistens bei Schleifen der Fall ist. In MATHCAD k6nnen die Bereichsvariablen und damit auch Anfangswerte, Schrittweiten und Endwerte beliebige reelle Zahlen sein. Man muB nur beachten, daB der definierte Bereich nicht leer ist. Beispiele fUr nichtganzzahlige Bereichsvariablen lernten wir im Abschn. 5.9 bei der grafischen
308
7 Programmierung unter MAlHCAD
Darstellung von Funktionen kennen. In den folgenden Beispiel 7.1e und D verwenden wir ebenfalls derartige Bereichsvariablen. An die Bereichszuweisung sehlieBen sich die in der Sehleife auszufuhrenden Anweisungen (Komrnandos) an, die bei MATHCAD von der Bereiehsvariablen i abhangen mussen. Moehte man mehrere Scbleifen scbacbteln, muB man die Zuweisungen fur die einzelnen Bereiehsvariablen hintereinander oder untereinander angeben. So sehreibt man z.B. fur zwei gesehaehtelte Sehleifen (Bereichsvariablen i und k) i := m .. n k := s .. r In den Beispielen 6.4b, 7.1a, 7.1e veransehauliehen wir die Scbacbtelung von Scblmfen und Verzweigungen, die man fur effektives Programmieren benotigt. Wir haben bisher Sehleifen fur die grafisehe Darstellung von Funktionen und Daten benutzt (siehe Abb. 5.2-5.5, 5.7, 6.2-6.4 und Beispiele 6.46, 6.47). Die genaue Vorgehensweise bei der Anwendung von Bedingungsfunktionen und Sehleifen ist aus den folgenden Beispielen zu ersehen, in denen wir eine Funktion grafiseh darstellen (Beispiel 7.1a), Iterationen durehfuhren (Beispiel 7.1b), Matrizen und Funktionswerte bereehnen (Beispiel 7.1c und D. Beispiel 7.1: a) Wir verwenden die folgende Funktionsdefinition XZ + yZ fur XZ+ yZ :::; 1 { 1 fur 1 < XZ+ yZ :::; 9 Z = f(x, y) = セGQVMクz@ -_-y-Z fur 9 < XZ+ yZ :::; 16 urn die Sehaehtelung des Befehls if zu demonstrieren. In MATHCAD gestaltet sich die Definition dieser Funktion folgendermaBen: f(x,y)
:=
if(XZ+yZ :$l,xz +yZ, if(XZ+yz:$ YLQセVMクコ@
_yz))
Mit der so definierten Funktion kann MATHCAD jetzt die Grafik erstellen, wie im Absehn. 6.10 besehrieben wurde: N= 16 :=l .. N Xi := -4 + O.5·i
k:=l .. N Yk:= -4 t- O.5·k
Mi , k= f(xi' Yk)
7.2 Befehlsstruktur
309
イセX@イセ@
o
M
Die grafische Darstellung der Funktion liefert ein Beispiel filr die Schachtelung von Schleifen. Diese wird zur Berechnung der Matrix M ben6tigt, die die Funktionswerte an den gegebenen (x,y)-Werten enthalt. b) Ftihren wir die Berechnung der Quadratwurzel einer Zahl a mittels des bekannten Iterationsvetjahrens Xl = a x· 1+
I = .!.. (X.[ 2
+
セI@ Xi
i = 1, 2, ...
durch. Dies Hi.Bt sich in MATHCAD durch die folgende Schleife realisieren (fur a=2): a:= 2 N:= 10 xl:=a Xi+l : =
i:=l..N
.!.. (Xi KセI@ 2
Xi
x N+I =1.414213562373095 In dieser Schleife haben wir eine feste Anzahl N von Durchlaufen (Iterationen) vorgegeben. Dies ist aber filr Iterationsverfahren wenig praktikabel, da man von vomherein nicht weiB, wann eine gewtinschte Genauigkeit filr ein Ergebnis erreicht ist. Eine variable Anzahl von Schleifendurchlaufen laBt sich in MATHCAD realisieren, indem man die Berechnung durch Genauigkeitsprtifung mittels des relativen oder absolu-
310
7 Programmierung unter MATHCAD
ten Fehlers zweier aufeinanderfolgender Ergebnisse unter Anwendung des Befehls until (bis) beendet. Bei unserem einfachen Verfahren zur Quadratwurzelberechnung wird man die effektiven Fehlerabschatzungen
I Xi
Xi2 -
a
I Mochte man indizierte Variablen bei der Definition verwenden, so geht dies nicht in der ublichen Form: = (xl) 2 + (X (x2) 2 + (X3) 2 Diese Funktionsdefinition ist nicht moglich m6glich f Hクセ@(x ,,x x 12 ',x) x ll) :=
wenn man die Variablen als Komponenten eines Vektors auffaBt (Variablen mit Feldindex), sondern man muB folgendermaBen vorgehen: (xli (X 22i)2 + (x 33)2 f(x) : = (x l )2 + (x wobei der Spaltenvektor x die folgende Gestalt hat:
xx
セ@
0
[:j
[::]
Numerische und exakte Funktionswertberechnungen gestalten sich fUr fur diese Definition auf die folgende Art:
サHセI@j
セ@
=14
サHセI@j
セ@
14
Wenn man Variablen mit Literalindex (siehe Abschn. 5.2) verwendet, so kann die gegebene Funktion in der Form 2 f(x 1l',x2'x x 2' x 33)):= : = x12+x22+x3 X 12 + x 22 + x 3 definiert werden. Hierfur HierfUr werden die Funktionswerte numerisch und exakt auf die ubliche Art berechnet: f(1,2,3) = 14 bzw. f(1,2,3) --+ ---0> 14
7-3 7.3 Definition von Funktionen
319
d) Der Unterschied zwischen numerischer und exakter Berechnung einer definierten Funktion ist aus folgendem Beispiel ersichtlich: f(X1,X2)= In(X1 + T 1) + Tsin(X2) sin (x 2)
f(
1,
セI@
= 1.S59
bzw_
ヲHャLセI@
-+ In(2)
KセMエS@
e) 1m folgenden zeigen wir die Mbglichkeiten M6glichkeiten der Funktionsdefinition, wenn das Ergebnis einer Rechnung mit dem symbolischen Gleichheitszeichen erhalten wurde: f(x) :== セH・x@ dx
+ T sin(x)) -+ exp(x) + T cos(x)
f(x) -+ exp(x) + T cos(x)
d d g(x, y) : = - - cos(x -. y) セ@ dx dy
. x - sin(x - y) - cos(x -. y) -. y -x
g(x, y) -+ -cos(x-y) -cos(x·y) -y-x 'y'X - sin(x-y) sin(x·y)
h(x) =
J
x 2 ·e _e x dx -+ x 2 -exp(x) ·exp(x) -.- 2-x-exp(x) 2·x·exp(x) + T 2-exp(x)
hex) -+ x 2 -exp(x) .exp(x) - 2-x-exp(x) 2·x·exp(x) + T 2-exp(x) 2·exp(x) f) In diesem Beispiel demonstrieren wir die Auswirkungen, wenn man fUr ftir
eine Funktion und eine Variable die gleiche Bezeichnung benutzt: vex) := x 2 + T1 v(S)
=
26
v := 4
illegal function name Man sieht, daB nach der Definition der Variablen v die Funktion vex) nicht mehr zur Verfugung steht.
•
320
7 Programmierung unter MATHCAD
7.4 Erstellung einfacher Programme In den Computeralgebra-Programmen MAPLE und MATIIEMATICA sind
Programmiersprachen integriert, die das Erstellen von Programmen in ahnlicher Qualillit wie mit den herkbmmlichen Programmiersprachen BASIC, C, FOR1RAN und PASCAL gestatten. MATIICAD fallt mit seinen Programmiermbglichkeiten gegenuber MAPLE und MATIIEMATICA etwas abo Man kann aber den Vorteil aller Computeralgebra-Programme ausnutzen, samtliche enthaltene Funktionen (Kommandos) in die Programme integrieren zu kbnnen. Die in MATIICAD enthaltenen Befehle fUr Zuweisungen (Zuordnungen, Ergibtanweisungen), Verzweigungen und Schleifen, die verschachtelt werden kbnnen, gestatten das Erstellen einfacher Programme. In MATHCAD bezeichnet man die erstellten Programme als Dokumente. Dies solI darauf hinweisen, daB neben den Programmelementen erlauternder Text und Grafiken aufgenommen werden kbnnen, so daB man mit diesen Dokumenten wie mit einem Buch arbeiten kann.
セ@
Bei der Erstellung von MATHCAD-Dokumenten ist zu beachten, daB sie von links nach rechts und von oben nach unten gelesen werden. Dies ist bei der Verwendung definierter Variablen und Funktionen zu berucksichtigen. Sie lassen sich erst rechts bzw. unterhalb der Definition verwenden .
•
1m folgenden Abschnitt werden wir an einem Beispiel die Erstellung eigener MATIICAD-Dokumente demonstrieren, die man fUr ein bestimmtes Gebiet zu kleinen Elektronischen Buchern zusammenstellen kann. Daran anschlieBend gehen wir auf die struktur vorhandener professioneller Elektronischer Bucher ein, die man allerdings zusatzlich kaufen muB. Diese angebotenen Bucher bieten zu vielen Gebieten aus Mathematik, Naturwissenschaft und Technik moderne und effektive Algorithmen und Berechnungsmethoden. Hier werden Dnterprogramme in herkbmmlichen Programmiersprachen einbezogen, urn komplexere Algorithmen realisieren zu kbnnen.
7.5 Erstellung von MATHCAD-Dokumenten Dnter einem MATIICAD-Dokument verstehen man mit MATIICAD durchgefUhrte Berechnungen zu einem bestimmten Gebiet, die mit erlauternden Text und Grafiken versehen sein kbnnen. Wir sind ihnen schon bfters be-
7.5 Erstellung von MATI-ICAD-Dokumenten
321
einfache Beispiele hierfur gesehrieben geschrieben (siehe Abb. gegnet und haben selbst einfaehe 3.3, Beispiele 6.36, 6.38, 6.41, 7.3, 7.5, 8.4, 8.5). MATHCAD-Dokumente sind formal gesehen Dateien mit der Endung ublich mittels der Kommandofolge .MCD. Sie werden in MATHCAD wie ublieh ••• File => Open... (deutsche Version: Datei => Offnen... ) (deutsehe erscheinenden Dialogbox in das Arbeitsfenster geladen, indem man in der erseheinenden das Unterverzeiehnis gewilnschte Dokument steht und Unterverzeichnis einstellt, in dem das gewiinsehte gewilnschten Dokuments eintragt. hinter Dateiname den Namen des gewiinsehten MATHCAD-Dokumente befinden sich meistens in Unterverzeichnissen des Verzeichnisses HANDBOOK von MATHCAD. Naeh Nach dem Laden kann mit Verzeiehnisses gerechnet werden, indem man darin enthaltene Ausdrueke Ausdrucke dem Dokument gereehnet durch eigene ersetzt. 1m Automatik-Modus (Automatic Mound Konstanten dureh de) genugt ein einfaeher einfacher Mausklick, urn die Bereehnung Berechnung mit den neuen durchfuhren zu lassen. Werten durehfuhren mochte, so offnet man dies Falls man ein neues Dokument erstellen moehte, mittels der Kommandofolge File =>New Ver.5ion: Datei => Neu), (deutsche Version: Abspeichern des fertigen Dokuments mittels wahrend das Abspeiehern File => Save As ... Ver.5ion: Datei => Speichern unter... ) (deutsche Version: gesehieht, geschieht, wobei in die erseheinende erscheinende Dialogbox ein Dateiname mit der Endung .MCD eingetragen werden sollte. Geladen wird dieses Dokument bei Abschnitts gegebenen spateren Arbeitssitzungen mit der zu Beginn dieses Absehnitts Kommandofolge. Demonstrieren wir die Vorgehensweise bei der Erstellung von Dokumenten an einem Beispiel. Beispiel 7.3: 1m folgenden erstellen wir ein Dokument fur die Berechnung der WahrWahrscheinscheinlichkeiten und Verteilungsfunktionen fur die diskreten Wahrseheinlichkeitsverteilungen aus Absehn. Abschn. 6.15.3 unter Verwendung der deutschen liehkeitsverteilungen deutsehen Version von MATHCAD: Verteilungsfunktionen Diskrete Vertei1ungsfunktionen
Zur Berechnung diskreter Verteilungsfunktionen ben6tigt man den Binomialkoe.f{izienten : k-l
wenn (k (k ._ wenn Binomial (a , k) .-
= =
00 ,,11 ,
n k'
TI(a-i) (a - i)
NAZゥMセo@ 1=0 - - - )
k!
Die Wahr.5cheinlichkeit Wahrscheinlichkeit fur die Binomialverteilung berechnet sich aus (p-Wahr.5cheinlichkeit, (p-Wahrscheinlichkeit, n-Anzahl der Ver.5uche) Versuche) : PB(n, p, k)= Binomial(n, k) .pk.(1 .pk.( 1 _ p)n - k
322
7 Programmierung unter MATHCAD
Daraus ergibt sich die Verteilungsfunktion FB(x,n,p)
x セ@ O,O,wenn(( floor(x)::; floor (x) セ@ n, Fセ@ セpbHョLーォI@ wenn(( x::;
floor(x)
:= :=
))
1))
Die Wahrscheinlichkeitfurdie hypergeometrische Verteilung (N-Gesamtheit der Elemente, von denen M die berechnet sich aus CN-Gesamtheit gewunschte Eigenschaft haben, n-Anzahl der Versuche) : gewiinschte PH(N,M,n,k)= Binomial(M,k).Binomial(N - M,n - k) PHCN,M,n,k)= Binomial( N , n)
Daraus ergibt sich die Verteilungsfunktion
(
(
FH(x, N, M, n): = wenn x:5> =wenn x S 0,0, wenn (floor(x) > n) + (floor(x) > M),l,
flOOr(X))) ォセo@ PH(N, M, n, k)
Die Wahrscheinlichkeit fur die Poisson- Verteilung (')..-Erwartungswert) : berechnet sich aus C')..-Erwartungswert) k e-A.
PPC e- A PP( ').., ').. , k) k) := = ''))....k..k! k!
Daraus ergibt sich die Verteilungsfunktion FP(x, ')..) FPCx,
:=
x セ@ 0,0, wenn( x::;
floor(x)
L
)
PP(')..,k) PPC')..,k)
k=O
Da in MA1HCAD MATHCAD diese diskreten Verteilungsfunktionen nicht integriert sind, empfiehlt sich die Abspeicherung des gegebenen Dokuments z.B. z.E. unter den MA1HCAD Namen DISKVERT.MCD. Bei spateren Arbeitssitzungen unter MATHCAD kann dieses Dokument wieder eingelesen und die darin definierten Funktionen verwendet werden. Mit dem erstellten Dokument k6nnen kbnnen wir beispielsweise die folgende Aufgabe l6sen: Ibsen: mochte die in einem See lebende Anzahl von Fischen bestimmen. Man m6chte Dazu werden M der Fische gefangen, markiert und anschliefiend wieder in den See ausgesetzt. Danach werden wieder Fische gefangen und zwar n Stuck. Aus der darunter befindlichen Anzahl k markierter Fische kann man auf die Gesamtzahl der im See befindlichen Fische schliefien. Dazu muB man erkennen, daB diese Aufgabe mit der hypergeometrigelbst werden kann. Mittels der in unserem Dokument schen Verteilung gel6st DISKVERT.MCD definierten Funktion PH(N,M,n,k) PHCN,M,n,k) kann man nun fur eine Reihe von N-Werten die Wahrscheinlichkeiten berechnen. Nach der Maximum-Likelihood-Schiitzung, ximum-Likelihood-Schatzung, nimmt man denjenigen N-Wert als Schatzwert
7.6 Struktur und Gestaltung Elektronischer Bucher
323
fur die Gesamtzahl der Fische, der die groJ3te Wahrscheinlichkeit besitzt. Das waren fur fUr die angenommenen Zahlen (M=60, n=100 und k=10) 600 Fische: PH(500, 60,100,10) = 0.11322 PH(550, 60,100,10)
=
0.13711
PH(570, PH( 570,60,100,10) 60,100,10)
=
0.14192
PH( 580,60,100,10)
=
0.14335
PH(590, 60,100,10)
=
0.14416
PH(595, 60,100,10) PH( 595,60,100,10)
=
0.14436
PH( 600,60,100,10)
=
0.14441
PH( 610,60,100,10)
=
0.14412
PH( 620,60,100,10)
=
0.14335
•
Beispiele fur Dokumente findet man in den Abschn. 6.11, 6.16.4, Weitere Beispie1e Beispielen 6.36, 6.38, 6.41, 7.5, 8.4, 8.5 und der Abb. 3.3, in denen wir den Beispie1en Auszuge aus Elektronischen Buchern geben, bzw. eigene kleine Dokumente schreiben.
Biicher 7.6 Struktur und Gestaltung Elektronischer Bucher Die sogenannten digitalen Nachschlagewerke von MATHCAD sind auf verschiedene Anwendungsbereiche zugeschnitten, so z.E. z.B. auf bestirnrnte bestimmte Gebiete der Mathematik, Physik, Elektrotechnik und des Maschinenbaus. Diese Nachschlagewerke teilen sich in die folgenden drei Kategorien • Elektronische Bucher / Handbucher (Electronic Books) • Funktions-Pakete (Function Packs) • Pakete fur Ausbildung und Lehre (Education Library) VOT. Da aIle alle drei auf und liegen zur Zeit hauptsachlich in englischer Sprache vor. Arten dieser Nachschlagewerke den gleichen Aufbau besitzen, benutzen wir alle die Bezeichnung Elektronische Bucher. fur aIle Eine erste Einfuhrung in das Prinzip der Elektronischen Bucher wurde bereits im Kap. 4 gegeben. Inzwischen sind wir ihnen schon mehrfach begegnet, wenn MATHCAD fur fUr ein zu losendes Problem kein integriertes Kommando (Funktion) besaJ3. Die Elektronischen Bucher entsprechen bei MAPLE und MATHEMATICA den Zusatzpaketen (Packages) und enthalten Algorithmen und Berechnungen fur fUr spezielle Problerne, Probleme, d.h. eine Sammlung Algorithrnen von MATHCAD-Dokumenten. Darin besteht ein Grundprinzip der Computeralgebra- und Mathematikprogramme. In ihrem sogenannten Kern, der bei
324
7 Programmierung unter MATIICAD MATIfCAD
jedem Programmaufruf geladen wird, sind nur die Standardmethoden integriert, die damit immer abrufbar sind. Dagegen brauchen die Elektronischen (hzw. Packages bei MAPLE und MATHEMATICA) nur bei Bedaif Bucher (bzw. geladen werden, so daB Speicherplatz gespart wird und die Programmsysterne beliebig erweiterbar sind. Es erscheinen kontinuierlich weitere Elektronische Bucher zu neuen zU MATHCAD erstellten professionellen Elektronischen Bucher Gebieten. Die zu neueren Datums, die gesondert gekauft werden mussen, haben die Bezeichnung Bucher zu Recht verdient, wie wir aus den folgenden Ausfuhgehorenden Disketrungen ersehen. Bei der Installation der zu einem Buch gehbrenden ten (Start mittels INSTALL von der Diskette Nr.l) wird in das zu dem Menu gehorende Untermenu automatisch der Name des installierBooks (Bucher) gehbrende ten Buches eingetragen. Durch Anklicken dieses Namens HiBt liiBt sich das Buch starten (offnen) und es erscheint das Titelblatt, das u.a. u.a. den Titel, den Autor enthiilt. In Abb. 7.1 findet man ein Beispiel fur und das Erscheinungsjahr enthalt. ein derartiges Titelblatt.
セ@
Falls sich der Name des zu offnenden Buches nicht in dem zu Books (Bucher) gehbrenden gehorenden Menu befindet, so bffnet offnet man die dazugehbrige dazugehorige Datei mit der Endung .HBK im Unterverzeichnis HANDBOOK von MATHCAD mit der Kommandofolge セ@ Books => Open Book... (deutsche Version: Biicher => セ@ Buch offnen...). Existiert diese Datei nicht, so handelt es sich urn eine altere Version des Buches. Hier kann man nur nue die einzelnen enthaltenen Dokumente auf die ubliche Art bffnen offnen .
•
7.6 Struktur und Gestaltung Elektronischer Bucher
•
Click on the 'TOe" buncn button on the p"'ette '" left to go to the Table of Contents Conte nts
•
Or. click on the 'Next Section' Section" button (the fourth button on the pelette) palette) to learn how to use t.4athcad's t.4athcad·s Electronic Books
325
Numerical Methods 4) 01)
1933 mセエィsッOャ Nョ」 Nャ
ョ」
N@
Alloghls All nghls Ir.... ••erved. rved.
Abb.7.1.Titelblatt des Elektronischen Buches Numerical Methods (Numerische Methoden)
セ@
Die Arbeit mit einem geo.ffneten Elektronischen Buch gestaltet sich folgendennaflen: • Mittels der zusatzlich erscheinenden Operatorleiste (Werkzeugleiste) EB auf der linken Seite des Arbeitsfensters kann in dem gestarteten Buch wie in einem normalen Buch geblattert werden. Durch Anklicken der ersten beiden Symbole (Buttons) TOC (INH) und Index lassen sich das Inhaltsverzeichnis bzw. das Stichwortverzeichnis/ Sachwortverzeichnis (Index) anzeigen. Die weiteren Symbole (Buttons) dienen zum Vorwartsund Ruckwartsblattern (seiten- oder abschnittsweise). • Aus dem Inhalts- und Stichwortverzeichnis heraus kann man durch Doppelklick der Maus direkt in den entsprechenden Abschnitt des Buches wechseln. • Jede Seite des Buches kann als MATHCAD-Dokument angesehen werden, in dem man Werte und Konstanten verandern und Berechnungen durchfuhren kann. • Hat man neben einem Elektronischen Buch ein weiteres MATHCADDokument geoffnet, so kann man Formeln usw. direkt durch zweifachen Mausklick aus dem Buch ubernehmen, und zwar muB der zweifache Mausklick im Buch und im Zieldokument geschehen. Weiterhin ist naturlich auch die fur WINDOWS-Programme ubliche Vorgehensweise fur das Kopieren moglich:
326
7 Programmierung unter MArnCAD
Die benotigten Teile des Buches werden markiert, in die Zwischenablagewtinschge kopiert und abschlieBend in das eigene Dokument an der gewiinscheingefugt. ten Stelle eingefilgt. nach einem BeBuch bei dem Suchen naeh • Wahrend man in einem normalen Bueh griff nur auf das Inhalts- und Saehwortverzeichnis Sachwortverzeichnis angewiesen ist, kann Elektronischen Buehern Buchern zusatzlich auf das Kommando man bei den Elektronisehen zUrUckgreifen: Buch durchsuchen zUrUekgreifen: Nach Aktivierung der Kommandofolge Naeh =} Search Book ... Books => =} Buch durchsuchen ... (deutsche Version: Bucher => erscheint eine Dialogbox, in die man den zu suchenden Begriff in das erseheint Feld Choose word (Begriff wahlen) eintragen muB. • Wenn man in einem Elektronischen Buch wahrend einer Arbeitssitzung SchlieBen des BuAnderungen vorgenommen hat, so gehen diese beim SehlieBen ches verloren. Moehte Mochte man eine Kopie des Buches speichern, die die Durchdurchgefilhrten durchgefuhrten Anderungen enthalt, so muB man dies vor der Durehfilhrung fuhrung von Anderungen mittels der Kommandofolge =} Annotate Book Books => (deutsche Version: Bucher => =} Anmerkungen im Buch) erscheint dann die SchlieBen des veranderten Buches erseheint veranlassen. Beim SehlieBen Dialogbox Save Annotations (Anmerkungen speichern), in der man das Speichern der Anderungen veranlassen kann .
セ@
•
fur das Arbeiten mit Elektronischen Buehern Buchern gelDie gegebenen Hinweise filr fur neuere Bucher, die seit 1993 erschienen sind. Bei BuBtiten allerdings nur filr noch nicht alle zur Verfilgung. Verfugung. chern alteren Datums stehen diese Hilfsmittel noeh mtissen die einzelnen Dokumente des Buches, die als Dateien mit der Hier mussen tibliche Art in das Arbeitsfenster geladen Endung .MCD vorliegen, auf die ubliche werden. werden.
•
セ@
Zur Zeit liegen alle Elektronischen Bucher bis auf das zur deutsehen deutschen Version mitgelieferte Desktop-Handbuch nur in englischer Sprache vor. Es wurde deutscher Spraehe Sprache erscheinen aber angekundigt, daB weitere Bucher in deutseher sollen. Grundkenntnisse der englischen Sprache reichen meistens aus, urn ausfuhrlich erlauterten Inhalt der Bucher verstehen zu konnen. Urn sieh sich den ausfilhrlich deutschsprain der Anwendung dieser Bucher zu uben, sollte mit dem deutsehsprachigen Desktop-Handbuch begonnen werden, aus dem wir einige Auszuge und das Inhaltsverzeichnis im folgenden Beispiel geben.
•
7.6 Struktur und Gestaltung Elektronischer Bucher
327
Beispiel 7.4: Zuerst geben wir eine Kopie des Inhaltsverzeichnisses Inbaltsverzeicbnisses des deutschsprachigen Elektronischen Buches Desktop-Handbuch, Desktop-Handbucb, aus dem der behandelte Stoff zu entnehmen ist: MathSoft Desktop-Handbuch
I
1 EINHElTEN & PHYSlKALISCHE KONSTANTEN
Einbeiten in Mathcad Matbcad 1.1 Einheiten Pbysikaliscbe Konstanten 1.2 Physikalische 2 FORMELN UND IDENTITATEN
2.1
Polynome
Logaritbmen 2.2 Exponenten und Logarithmen
2.3 23
Trigonometrie
2.4 Differentiationsformeln 2.5 Integrationsformeln 3 GEOMETRISCHE FORMELN
Fliicben und Umfang 3.1 Fliichen
3.2
Volumen und Fliichen
3.3 Koordinatentransformationen 33 4 MECHANIK
4.1
Scbwerpunkte Schwerpunkte
4.2 Triigheitsmomente Masse 5 ELEKTROMAGNETIK
5.1 Kapazitiit 5.2 Oszillatoren 5.3 Antennen 53
328
MA1HCAD CAD 7 Programmierung unter MATH
EIGENSCHAFTEN VON METALLEN 6 EIGENSCHAFfEN
6.1
Wi:irmeleitfi:ihigkeit Warmeleiifahigkeit
Spezijisches Gewicht 6.2 SpeziJisches Expansionskoef!izient 6.3 Linearer ExpansionskoejJizient Widerstandsji:ihigkeit 6.4 Elektrische Widerstandsfahigkeit Verhi:iltnis 6.5 Poissonsches Verhaltnis
6.6 Umrechnungsfaktor der Elastiziti:it Elastizitiit Ungeji:ihrer Schmelzpunkt 6.7 Ungefahrer TemperaturkoeJfizient der 6.8 TemperaturkoejJizient Widerstandsji:ihigkeit Widerstandsfahigkeit 7 EIGENSCHAFfEN EIGENSCHAFTEN VON FLUSSIGKElTEN FLDSSIGKEITEN
7.1 Dichte Viskositi:it 7.2 Viskositat
7.3 SpeziJisches Gewicht 7.4 Schallgeschwindigkeit Obetjlachenspannung 7.5 Obeifli:ichenspannung 7.6 Dielektrische Konstante
7.7 Brechungsindex 7.8 Molekulargewicht 8 EIGENSCHAFTEN EIGENSCHAFfEN VON FESTKORPERN
8.1 Dichte 8.2 SpeziJisches Gewicht Warme 8.3 SpeziJische Wi:irme
8.4 Wi:irmeleitfi:ihigkeit Warmeleiifahigkeit 9 ELEMENTETABELLE elmセtajb@
9.1 Atomzahlen 9.2 Atomgewichte
7.6 Struktur und Gestaltung Elektronischer Bucher
329
In dem Buch sind allerdings nur elementare elernentare Formeln und Konstanten gegeben. Ftir weiteifubrende weiterfubrende Anwendungen mtissen die zusatzlich zu kaufenden Elektroniscben Bucber herangezogen werden .
•
Urn Um einen Eindruck von diesem Buch zu erhalten, erha1ten, betrachten wir im folf01genden Beispiel 7.5 das Kap. 3.3 tiber Koordinatentransjormationen, Koordinatentrans!ormationen, in dem die drei am haufigsten angewandten Koordinaten Polarkoordinaten, Zylinderkoordinaten und Kugelkoordinaten analytisch, grafisch und mit je erkHirt werden. Urn Um erlauternden Text und Formeln zu uneinem Beispiel erklart terscheiden, stellen wir den Text kursiv dar. In den Originalbtichern werden zur Unterscheidung unterschiedliche Schriftarten und Farben verwandt. Beispiel 7.5: KARTESISCHE IN POLAR
3.3.1
:
セMQ@
y
P( r.r: e)
-----1 P(x, y)
x
x
r als Funktion von x und y:
x
JX2 + y2
e als Funktion von x und y: winkelC winkel( x , y) Beispiel: Wandeln Sie den Punkt P von
kartesischen Koordinaten (x, y) in Polar(J) um. urn. Koordinaten x := 2 y := 2
l
r(x, rex, y)= Jx2 + y2 y)= winkel(x, y) e(x, y) := winkelCx,
r( x , y) = 2.828
e(x, y)
=
45 •'Grad Grad
330
7 Programmierung unter MATHCAD
3.3.2
POLAR IN KARTESISCHE
y
:
P( r: 9) P(r:
セ@
_____ , P(x, y)
x
xx
x als Funktion von r und 0:
xx
r·cos(S)
y als Funktion von r und 0: r·sin( S) Beispiel: Wandeln Sie den Punkt P von Polarkoordinaten (r, OJ in kartesische urn. Koordinaten (x, r= 12.3
S= 50· Orad
r·cos(S) x(r,S)= r'cos(S) y( r, S) == r·sir( S)
x(r,S) =7.906 y(r,S) =9.422 3.3.3
KARTESISCHE IN ZYLINDRISCHE
z , ', _p(x.y. z)
9. z)
y
r als Funktion von x, y und セク@
S als Funktion von x und y:
Z als Funktion von
I
2
+ y
2
2
+ z
winkel (x, ( x, y)
Z Z
7.6 Struktur und Gestaltung Elektronischer Bucher
Beispiel: Wandeln Sie den Punkt P von kartesischen Koordinaten (x, y, z) in Zylinderkoordinaten (r, 8, (), z) urn. X x
:== 8
y:= y= 7 f 2
z: z = 6
l2
2
rCx,y,z) = セJx z2 r(x,y,z) ク@ 2 + y + z
9(x,y) ecx, y) = winkel(x, winkelCx, y) Z( z) = z rCx, y, z) = 12.207 rex,
9( x , y) == 41.186· ecx, 41.186 •Grad = 6 Z( z) =
3.3.4 ZYLINDRlSCHE ZYUNDRISCHE IN KARTESISCHE
z
,
" .P(x..y, .P(xy. z) y
(): x als Funktion von r und 8:
r·cos(9) r ·cos(8)
(); y als Funktion von r und 8:
rr'sin(8) ·sin( 9)
z als Funktion von Z: Z Beispiel: Wandeln Sie den Punkt P von 8, z) in kartesische Zylinder-Koordinaten Koordinaten (x, y, z) urn. r= 10 9= 8= 40· 40 ' Grad Z= 7
x(r,9) xCr,8) = r·cos(9) r'cosC8) y( r, 9) = r' sine 9) yCr,e) r'sinCe)
331
332
7 Programmierung unter MATHCAD
z(Z) = Z
x(r,8) = 7.66 x(r,O) y(r,8) = 6.428 y(r,O) z(Z) = 7 3.3.5 KARTESISCHE IN KUGEL
z
...... .. '. .. P (x. y, y. z)
...
_________ jBセ@
z
/y
X
r als Funktion von x, y und ZZ:: lind y: y: cpcfJ als Funktion von x und
JJ
2 22 22 x2 + y +z +y
winke(x,y) winke(x , y)
o als Funktion von x, yy und Z:Z : acos acos ((---;::==:==z )) z J x2 + + z2 Beispiel: Wandeln Sie den Punkt P von kartesischen Koordinaten (x, zJ z) in KugelKoordinaten (r, cp, OJ e) urn.
セクRKャコ@
7.6 Struktur und Gestaltung Elektronischer Bucher
x=3 x:= 3
z := =9
y: y =5
l
rex, y, z) := Jx2 + セHクL@(x, y) := =
+ z2
winkel(x, y)
e(x = acos sex,, yy,, Z): z) := acos((
Z z
セクR@
)
i- l i-
J x2 + y2 + lz2 r(x, y, y ,z) rex, z)
= 10.724
セHクL@ Cx, y) =
59.036·Grad 59.036"Grad
S(x,y,z) 32.939"Grad S(x, y, z) = 32.939·Grad
3.3.6 KUGEL IN KARTESISCHE
z
z
p p(( r,