Einführung in Maple. Universität Regensburg Fakultät für Physik

Größe: px
Ab Seite anzeigen:

Download "Einführung in Maple. Universität Regensburg Fakultät für Physik"

Transkript

1 Einführung in Maple Universität Regensburg Fakultät für Physik Januar 05

2 Inhaltsverzeichnis: I. Grundlagen.... Was ist Maple?.... Lernziel des Kurses Die Arbeitsumgebung Die Hilfsfunktionen Die ersten Graphiken Initialisierung, Restart Konstanten in Maple... 4 i. Elementare Konstanten... 4 ii. Algebraische Konstanten... 5 iii. Strings Variable Zusammengesetze Datentypen... 6 i. Algebraische Ausdrücke... 6 ii. Gleichungen... 6 iii. Range (Bereich)... 6 iv. Sequence (Folge)... 6 v. List (Liste)... 7 vi. Set (Menge)... 7 vii. Array Operatoren Funktionen zur Vereinfachung eines Ausdrucks... 9 i. Simplify... 9 ii. Factor... 9 iii. Collect... 9 iv. Combine... 9 v. Expand... 9 vi. Convert Reihenentwicklung Numerische Berechnungen Lösen von Gleichungen... 0 i. Einfache Gleichungen (und Ungleichungen)... 0 ii. Lineare Gleichungssysteme... iii. Nicht-lineare Gleichungssysteme Summen und Produkte: Eigenschaften von Variablen Differenzieren, Integrieren und Grenzwerte... 3 i. Differenzieren... 3 ii. Integrieren... 3 iii. Grenzwerte Funktionen... 4 i. Definition von Funktionen... 4 ii. Differenzieren von Funktionen, Integrieren... 5 iii. Funktionen mehrerer Variablen... 5 iv. Funktionen und Ausdrücke... 6 II. Graphik mit Maple Noch ein paar einfache Plots Darstellung von (externen Daten) Animationen und implizite Abbildungen... i. animate (create an animation of d plots of function)... ii. animatecurve (create animation of the drawing of d plots)... iii. implicitplot (two dimensional implicit plotting) Dreidimensionale Darstellungen... 5 i. spacecurve (plotting of 3d space curves)... 5 ii. surfdata (create a 3-d surface plotting from data)... 5 iii. implicitplot3d (three-dimensional implicit plotting)... 6 III. Lösung von Differentialgleichungen mit Maple Generelle Konzepte Umgang mit den Lösungen Systeme von DGLn Beispiel: Gedämpfte Schwingung Numerische Lösung und graphische Darstellung Anhang für Fortgeschrittene: das Paket DEtools IV. Programmieren und Prozeduren Hinführung Bedingungen und Schleifen (if, while, for) Prozeduren V. Lineare Algebra Arrays Vektoren und Matrizen Lineare Gleichungssysteme Eigenwerte und Eigenvektoren Ein bisschen Vektoranalysis... 49

3 Einführung in Maple Stand Januar 05 (Version 3.0) - F.Wünsch Dieses Skript basiert auf Kursen von Julian Berwanger, Martin Decker, Thomas Pruschke, Joachim Keller, Harald Dobler, Florian Chmela und Roland Winkler. Kap. : Grundlagen Kap. : Graphik mit Maple Kap. 3: Lösung von Differentialgleichungen mit Maple Kap. 4: Programmierung und Prozeduren Kap. 5: Lineare Algebra Grundlagen Was ist Maple? Maple ist ein weit verbreitetes mathematisches Softwarepaket (ähnlich dazu: Mathematica); akuell ist z.z. die Version 8. Die Universität besitzt eine Campuslizenz von Maple für Windows, Linux, Mac. Die Version 8 kann sehr viel, ist aber furchtbar träge, auch als Classic Worksheet ohne Java. Die ältere Version VR5 ist schlank und kann alles, was wir für den Kurs benötigen. Sie ist (unter Windows) zu finden in F :\MAPLE\V5\BIN3\wmaple.exe. Eine neuere Version befindet sich auf dem Windows-Desktop, andere lassen sich bei Bedarf mit RZSetup installieren. Im Kurs können wir ruhig mit Maple V Release 5 arbeiten. Die Kurs-Worksheets sind im Maple VR5-Format abgespeichert, lassen sich über ohne Probleme auch in Maple 8 öffnen. Unter Unix/Linux startet der Befehl xmaple normalerweise die aktuelleste Version, ältere (auch VR5) sind per enable verfügbar. Der Hersteller (Maple Waterloo Inc.) beschreibt sein Produkt so: Maple is a comprehensive computer system for advanced mathematics. It includes facilities for interactive algebra, calculus, discrete mathematics, graphics, numerical computation, and many other areas of mathematics. It also provides a unique environment for rapid development of mathematical programs using its vast library of built-in functions and operations. Besondere Stärke: symbolische Mathematik, also Finden von allgemeinen Lösungsformeln simples Beispiel: quadratische Gleichung: # immer sinnvoll am Anfang jedes Abschnitts > equ:=a*x^+b*x+c=0; > solve(equ,x); equ := a x + b x + c = 0 Page > b + 4 a c b 4 a c, a a b Maple kann auch numerisch rechnen, allerdings nicht so effizient wie andere Programmpakete wie z.b. Matlab, dafür aber mit beliebig einstellbarer Genauigkeit (Feststellung/Vermeidung von Rundungsfehlern, die oft völlig falsche Ergebnisse verursachen, ideal für die Entwickler von numerischen Algorithmen). Schnittstellen von Maple zu Programmiersprachen wie C oder Fortran sind vorhanden. Maple hat hervorragende Graphik-Fähigkeiten, z.b. Visualisierung von Funktionen(scharen), großen Datenmengen, auch mit Animation Maple ist für Mathematiker, Chemiker, Physiker, Ingenieure, Wirtschaftler bzw. Student(inn)en dieser Fächer von Anfang an ein sehr hilfreicher Werkzeugkasten. Lernziele des Kurses Ein komplexes Pakte wie Maple kann man nicht im klassischen Sinne komplett "lernen". Wir zeigen Ihnen die grundsätzlichen Konzepte, die Sie an Hand der Übungsaufgaben trainieren. Anschließend präsentieren wir Ihnen aus dem großen Maple-"Werkzeugkasten" einige wenige Tools aus den Paketen für erweiterte Graphik, für Differentialgleichungen und zur Linearen Algebra. Wir wollen Sie soweit bringen, dass Sie in der Lage sind, sich in die Komponenten von Maple, die Sie gerade benötigen, selbstständig einzuarbeiten, und Maple als selbstverständliches Werkzeug für Ihre tägliche Arbeit einsetzen können. Maple kann viel mehr als das, was wir im Kurs ansprechen, z.b. Statistik, Optimierung usw.. Mit?packages sehen Sie, welche große Menge an Paketen Bestandteil der jeweiligen Maple-Version ist. Darüberhinaus lohnt es sich, die Webpage zu besuchen. U.a. sind hier Maple-Lösungen für zahlreiche Problemstellungen aus allen möglichen Wissensgebieten zusammengetragen. Die Arbeitsumgebung Die Menu- und Symbolleisten entsprechen zunächst mal weitgehend Windows-Standard (z.b. File, Edit, View). Es gibt aber viel spezifische Erweiterungen, die i.d.r. kontext-abhängig sind. Worksheet-Konzept Alles passiert auf einem Arbeitsblatt im Computer. Man unterscheidet: Text-Regionen wie hier gerade; viele Elemente einer normalen Textverarbeitung verfügbar (siehe 3. Fensterleiste) Input-Regionen (gekennzeichnet mit [> ). Hier wird mathematische Eingabe erwartet (Umschalten mit Σ / T) Output-Regionen: hier gibt Maple seine Ergebnisse aus (bzw. die Eingabe schön Page b

4 dargestellt). > +3; # da fehlt ein ; als Befehls-Abschluß 5 > 3*sqrt(); # sqrt() wird NICHT genähert! 3 > evalf(%); # berechne die letzte Zeile numerisch > Beachte: die Berechnungen werden Zeile für Zeile in zeitlicher (nicht örtlicher Reihenfolge) abgearbeitet. Algebraische Ausdrücke werden zunächst nicht numerisch ausgewertet, sondern in der exakten Form gespeichert. Die üblichen Editor-Befehle wie Markieren, Ausschneiden, Kopieren usw. gehen (meist) wie unter Windows gewohnt. Manches ist allerdings etwas skurill - einfach ausprobieren, und immer wieder Gebrauch von der Undo-Funktion machen. Um bei größeren Projekten nicht die Übersicht zu verlieren, sollte man die Arbeitsblätter strukturieren (so wie dieses hier). Unter Edit bzw. Format kann man markierte Bereiche zu Sections zusammenfassen, die auf- und zugeklappt werden können (auch manchmal skurill...) Execution Groups sind mit einer Klammer versehene Eingabebereiche (oder auch Textbereiche) (am Zeilenende Shift Return drücken!). Solche Eingabebereiche werden gemeinsam ausgeführt: > x:=sqrt(); > evalf(x); x := Maple VR5 läuft eigentlich sehr stabil und stürzt nur ganz selten ab. Nichtsdestotrotz sollte man Save often, save early beherzigen (unter File in der Kopfleiste oder Button mit der Diskette in der Menüleite oder Tastenkombination <Strg>+<s>). Ab und zu möchte man auch vermeiden, dass Maple einem alle Zwischenergebnisse mitteilt: > a:=3+7;b:=4-;a*b; a := 0 b := 0 Dazu kann man einen Maplebefehl alternativ auch mit : abschließen: > a:=3+7:b:=4-:a*b; Page 3 0 Die Hilfsfunktionen Die eingebaute Online-Hilfe ist sehr gut, muss aber auch immer wieder kontaktiert werden. Was gibt's alles an Hilfe? Balloon Help: wenn man mit der Maus über einen Knopf in der Menüleiste fährt, wird die Bedeutung erklärt Maus auf ein Schlüsselwort, dort Strg F oder einfach F drücken. Alternativ kann man im Eingabefeld z.b.?solve eingeben. Beidesmal kommt die ausführliche Hilfeseite mit Beispielen. Unter Maple 8 schaut das ganze etwas schicker aus als in der Version 5: >?solve Über den Hilfe-Knopf in der Menüleiste kann man über die gesamte Doku Volltextsuche machen. Die komplette Online-Doku kann man natürlich auch durchblättern, sie ist gegliedert in die Kapitel Introduction, New User's Tour, Mathematics usw. Wir gehen mit der Maus auf ein blaues Ausgabefeld. Die rechte Maustaste macht uns Vorschläge, welche Operationen vielleicht noch sinnvoll wären. > g:=a*x^+b*x+c; > R0 := diff(g,x); g := a x + b x + c R0 := a x + b Vorgeschlagen wird differenzieren, integrieren, faktorisieren usw. Neue Versionen von Maple bieten da eine viel größere Auswahl. Die ersten Graphiken Die elementaren Graphik-Befehle heißen plot und plot3d. Probieren wir's mal: > plot(sin); Page 4

5 Ohne weitere Angaben wird eine Funktion in einem automatisch gewählten Bereich dargestellt. Es gibt viele Online-Optionen (Click auf die Graphik! dann rechte Maustaste bzw. Menuleiste). Hunderte Optionen und sehr viele schöne Beispiele (Holen mit Cut&Paste) gibt's über die Online-Hilfe bzw. die Eingabe?plot; Mal ein ganz einfacher 3D-Plot (Darstellung einer Funktion, die von x und y abhängig ist, mit explizit angegebenen Bereichen): > plot3d(sin(x)*cos(y),x=-3..3, y=-3..3); Bitte unbedingt mal damit herumspielen, drehen, die Perspektive, das Lichtmodell usw. ändern! Jetzt noch eine 3D-Animation. Was heißt das? Ich will eine Funktion darstellen, die von x und y und darüber hinaus auch noch von der Zeit abhängt. Also probieren wir: > animate3d(sin(x*t)*cos(y*t),x=-3..3,y=-3..3,t=..); animate3d ( sin( x t ) cos( y t ), x = , y = , t =.. ) Wenn Maple nicht versteht, was man will, wird einfach die Eingabe wieder ausgegeben. Warum tut sich nicht? Viele weitergehende Funktionalitäten von Maple sind in Paketen zusammengefasst, die erst hereingeladen werden müssen, so auch erweiterte Plot-Funktionen > with(plots); [ animate, animate3d, animatecurve, changecoords, complexplot, complexplot3d, conformal, contourplot, contourplot3d, coordplot, coordplot3d, cylinderplot, densityplot, display, display3d, fieldplot, fieldplot3d, gradplot, gradplot3d, implicitplot, implicitplot3d, inequal, listcontplot, listcontplot3d, listdensityplot, listplot, listplot3d, loglogplot, logplot, matrixplot, odeplot, pareto, pointplot, pointplot3d, polarplot, polygonplot, polygonplot3d, polyhedra_supported, polyhedraplot, replot, rootlocus, semilogplot, setoptions, setoptions3d, spacecurve, sparsematrixplot, sphereplot, surfdata, textplot, textplot3d, tubeplot ] Da gibt es also zahlreiche neue Befehle, u.a. auch animate3d : > animate3d(sin(x*t)*cos(y*t),x=-3..3,y=-3..3,t=..0); Page 5 Page 6 3

6 > Initialisierung, Restart Eine (von diversen) Fallen von Maple: > x:=3; # weisen wir mal x die Zahl 3 zu ( := NICHT =) x := 3 > plot(sin(x)*exp(-x/5),x=0..0); Error, (in plot) invalid arguments Maple8 sagt es etwas konkreter: Error, (in plot) unexpected option: 3 = Gemeint ist: x ist fest 3 und kann nicht auf einmal von 0 bis 0 laufen! Außer wir vergessen alles: > plot(sin(x)*exp(-x/5),x=0..0); Der wichtigste Befehl am Beginn einer jeden Maple-Sitzung oder neuen Rechnung heißt also Er löscht alle Zuordnungen und beseitigt eventuellen Datenmüll der vorhergehenden Berechnungen. Sollte mal etwas nicht so klappen, wie man sich das denkt und liegt augenscheinlich auch kein Fehler in den Befehlen vor, so ist es oft hilfreich, ganz von vorne mit einem restart anzufangen. restart kann man auch an späterer Stelle beliebig oft einfügen. Bei jedem restart (und beim Starten von Maple) wird die Datei.mapleinit abgearbeitet, falls sie im Arbeitsverzeichnis / Homedirectory vorhanden ist. Sie darf beliebige Maple-Befehle enthalten. Z.B. könnte man damit das Hinzuladen von Paketen automatisieren. Eine kleine Randanmerkung: in diesem Trivialbeispiel hätte auch gereicht: > x=3;x:='x';x; x = 3 x := x x Damit erhält x wieder seine ursprüngliche Bedeutung als (freie) Variable. Page 7 Konstanten in Maple Elementare Konstanten Integer 3, 37, -04; 3, 37, -04 Page 8 4

7 Fraction (Brüche) Brüche werden automatisch soweit als möglich gekürzt, aber nicht numerisch ausgewertet: > 3 / 37, -09/8; > 7/8, -57/9; > 7/9+3/; Complex Die imaginäre Einheit heißt I (großes I!) > I^; > u := 3 + 4*I; > u^; 3-09, , u := I I Float (Fließkomma-Zahlen) Fließkomma-Zahlen werden durch einen Dezimalpunkt oder durch die Exponentialschreibweise als solche gekennzeichnet: > , -.345, e-3;.3333, -.345,.00 Achtung Wenn man mit Maple exakt (analytisch) rechnen möchte, sollte man es soweit als möglich vermeiden, Fließkommazahlen zu verwenden, also > phi := /4 * Pi; statt > phi := 0.5 *Pi; φ := 4 π φ :=.5 π Sonst bekommt man Schwierigkeiten beim weiterrechnen: > sin (/4 * Pi), evalf(sin (0.5 * Pi));, > P := Pi; sin (P); P := π 0 > p := pi; sin (p); # pi ist nicht definiert p := π sin( π) Die Eulersche Zahl steht in Maple als 'exp()' zur Verfügung:. > exp(); e Algebraische Konstanten Algebraische Konstanten bestehen aus den vordefinierten mathematischen Funktionen, angewandt auf elementare Konstante: > sqrt ( + sqrt ()); + Irrationale und transzendente Zahlen werden also nicht numerisch ausgewertet, wie wir schon sahen, sondern so weit wie möglich exakt behandelt. Maple zeichnet sich dadurch aus, das solche Ausdrücke `Ernst' genommen werden: > s := sqrt ( + sqrt ()) * sqrt ( - sqrt ()); > combine (s); s := + I mit combine: Combine terms into a single term. Solche Vereinfachungen werden nicht standardmäßig durchgeführt. Sie müssen jeweils erzwungen werden. Maple 8 liefert im übrigen das Ergebnis I erst nach dem Aufruf eines weiteren Umformungsbefehls namens simplyfy. Zu diesen Umformungsbefehlen später mehr. Strings Maple kann auch mit Textstrings arbeiten. Ein Textstring darf beliebige Zeichen enthalten, die von "... " (doppelte Anführungsstriche) eingeschlossen werden. > str := "Hello world": > str; Variable "Hello world" Achtung: Maple kennt keine Typ-Deklarationen für die Werte, die eine Variable annehmen darf. Jeder Variable dürfen beliebige Werte zugewiesen werden. Variablennamen dürfen in Maple praktisch beliebig lang sein (maximal ^9- Zeichen): > ^9-; Kreiszahl Pi (großes 'P'!! Maple ist case-sensitiv) Page 9 Page 0 5

8 5487 Man sollte daher soweit als möglich selbsterklärende Variablennamen verwenden: > Geschwindigkeit = Weg / Zeit; Zusammengesetzte Daten-Typen Geschwindigkeit = Es ist essentiell, sich einzuprägen, was Bereiche, Folgen, Listen und Mengen sind. Diese Konstrukte finden permanent in Maple Verwendung. Algebraische Ausdrücke, Gleichungen und Arrays sind ziemlich selbsterläuternd. Algebraische Ausdrücke Variable und Konstanten lassen sich zu beliebigen neuen Ausdrücken kombinieren > exp (sqrt ((sin (x) + Pi)/7 + x)); Weg Zeit e ( / 7 7 sin ( x ) + 7 π + 49 x ) Gleichungen Gleichungen verbinden zwei algebraische Ausdrücke mit = > x=y+z; x = y + z Das Maple-Objekt Gleichung kann auch einen Namen haben: > eq := x=y+z; > eq; eq := x = y + z x = y + z Man beachte wieder die Verwendung von := und =!!! > Range (Bereich) Viele Operationen (Summen, Integrale) erfordern einen (Summations-/Integrations-) Bereich. Bei ersteren handelt es sich um eine Menge ganzer Zahlen, bei zweiten Fall um einen kontinuierlichen Bereich. Immer haben Bereiche haben die Form 'Untergrenze.. Obergrenze' intervall := 0..*Pi;intervall; intervall := 0.. π 0.. π Damit läßt sich dann arbeiten: > int (sin (x), x = 0.. Pi); # Integriere Oder aber auch: > int (sin (x), x = intervall); Oder auch: > fkt := sin (x); Page 0 fkt := sin( x ) > x_range := x = intervall; x_range := x = 0.. π > x:=3;x:='x';int (fkt, x_range); x := 3 x := x 0 Zur Erinnerung: Bei diesen Rechnungen kommt es darauf an, dass wir mit der Variable 'x' als unbestimmte Variable arbeiten. Deshalb geht obiges Spiel in die Hose, wenn der Variable 'x' bereits ein Wert zugewiesen worden ist. Auch der Plot-Befehl arbeitet mit Ranges, wie wir schon gesehen haben. Hier noch ein Beispiel mit einer Summe: > sum(/n^,n=..5); Sequence (Folgen) Eine Sequence ist eine mit Kommas getrennte Folge von Maple-Objekten (Ausdrücken usw.): > x:=,,3; > sqrt (), sin (3/); x :=,, 3, sin 3 Was auch geht: > x:='x':int_arg := fkt, x_range; > int (int_arg); int_arg := sin( x ), x = 0.. π 0 Dieses Beispiel zeigt: eine Funktion, die mehrere Argumente annimmt, bekommt eigentlich nur ein Argument vom Typ Sequence. x muss zuvor zurückgesetzt werden, es zwei Zeilen vorher einer Folge zugewiesen wurde. Die Glieder der Folge sind geordnet. Mithilfe des Auswahloperators [ ] kann man gezielt ein Glied der Folge auswählen, Numerierung ab : > s:=x,y,z; s[]; s := x, y, z y Beispielsweise erhält man beim Lösen von Gleichungen mit Hilfe von solve eine Folge Page 6

9 von Lösungen, die im Falle einer eindeutigen Lösung die Länge eins hat. erg:=solve(x^-x+=0,x); > erg[]; erg :=, I 3 + I 3 + I 3 Die Funktion seq erzeugt eine Folge aus einer vorzugebenden Vorschrift und wird sehr oft verwendet: > seq(n^,n=..5);, 4, 9, 6, 5 List (Liste) Eine Liste ist eine mit eckigen Klammern eingeschlossene Folge. Sie kann wieder als ein Ausdruck verwendet werden. Die Elemente der Liste haben eine feste Reihenfolge, womit identische Elemente an verschiedenen Stellen immer wieder auftauchen können. > list := [, exp(), exp(0), sqrt(), 0, sqrt()]; list := [, e,,, 0, ] Ein einzelnes Element kann wieder mit dem Auswahloperator [ ] herausgegriffen werden. > list[]; Oder auch > my_seq :=,,3,,,6; > [my_seq]; e my_seq :=,, 3,,, 6 [,, 3,,, 6 ] Listen werden wir z.b. beim Plotten von Datenfeldern benutzen. Dort tauchen dann sogar listlists auf: > plot([[,],[3,4]]); # zeichne simple Gerade Page 3 Set (Menge) Eine Menge ist eine mit geschweiften Klammern eingeschlossene Folge. In einer Menge kommt jedes Element genau einmal vor: > my_set := {,,3,,,6};my_set; Oder auch > my_seq;{my_seq}; my_set := {,, 3, 6 } {,, 3, 6 } my_seq { my_seq } > set := {, exp(), exp(0), sqrt(), 0, sqrt()}; set := {, e, 0, } Man kann zwar auch wieder ein beliebiges Element auswählen, aber: die Reihenfolge der Elemente in einer Menge ist nicht festgelegt (Maple optimiert sie hinsichtlich Zugriffszeit). Sie kann sich für die gleiche Menge von einem Aufruf zum nächsten (auch innerhalb des gleichen Worksheets) ändern! > set[]; restart; set := {, exp(), exp(0), sqrt(), 0, sqrt()}; set[]; e set := {, 0,, e} 0 Es gibt Mengen-Operationen, mit denen man Schnittmengen (intersect), Vereinigungen (union) und Differenzen (minus) bestimmen kann. Page 4 7

10 > set := {seq(n,n=0..4)}; set := { 0,,, 3, 4} > set intersect set; > set union set; > set minus set; { 0, } {, 0,,, 3, 4, e } {, e } Mithilfe der Funktion member kann man überprüfen, ob ein Ausdruck Element einer Menge ist. > member(sqrt(),set); > member(sqrt(),set); false Lösungen von Gleichungssystemen werden z.b. als Menge zurückgegeben. Array Ein Array ist ein Feld mit einem oder mehreren Indizes. Für jeden Index muß ein Werte-Bereich als Range 'Untergrenze.. Obergrenze' festgelegt werden. Jedes Feld-Element kann beliebige Maple-Objekte enthalten, die nichts miteinander gemeinsam haben müssen: > arr := array (-.. 3, ["he", "ll", "o", "world", 4, sin (alpha)]); arr := array( -.. 3, [ (- ) = "he" (- ) = "ll" ( 0 ) = "o" ( ) = "world" ( ) = 4 ( 3 ) = sin( α) ]) > arr [-]; true "ll" > > arr := array (..4,.., [[,],[3,4],[5,6],[7,8]]); > arr [,]; arr := Bei der Linearen Algebra werden wir uns noch genauer mit Arrays beschäftigen. Dort Page 5 werden wir hauptsächlich mit Spezialfällen von Arrays arbeiten, nämlich mit Vektoren und Matrizen. Bei diesen beginnt das Feld automatisch immer mit dem Index. Noch eine nützliche Anmerkung: Maple behandelt intern Arrays als Listen. Folgendes ist äquivalent: > a:=[seq(i,i=..0)]; > a[3]; > a[3]:=7; > a[3]; a := [,, 3, 4, 5, 6, 7, 8, 9, 0] 3 a 3 := 7 7 > b:=array(..0,[,,3,4,5,6,7,8,9,0]); b := [,, 3, 4, 5, 6, 7, 8, 9, 0] > b[3]; b[3]:=7; b[3]; Operatoren 3 b 3 := 7 Die Standard-Operatoren zum Rechnen sind * / + - ^! (7 * X + 3)^3 / (4 * Y + ); > 4!; 7 ( 7 X + 3 ) 3 4 Y + 4 Vergleichsoperatoren sind < <= => = > Je nach Zusammenhang muss die Auswertung einer solchen Vergleichsoperation gegebenfalls mit evalb (eval boolean) erzwungen werden (analog zu evalf für eine Floatingpoint-Berechnung): > 7>3; > evalb (7 < 3); Logische Operatoren sind not, and und or > not 7<3; Rangordnung - Fakultät! - *, /, mod Page 6 3 < 7 false true 8

11 - +, - - Vergleichsoperatoren: < <= = >= > <> (ungleich) - not - and - or - der Sequence-Operator ',' - der Zuordnungsoperator ':=' Elementare Rechenfunktionen: abs, exp, ln, sqrt, sin, cos, etc. Maple kennt ihre Eigenschaften: > sin (Pi/3); 3 Eine komplette Liste aller Maple beim Start bekannten Funktionen (ein paar allgemeine und vor allem viel Mathematik) erhält man unter Help mit dem Begriff inifcns (Initially known mathematical functions) oder durch: >?inifcns Funktionen zur Vereinfachung eines Ausdrucks Hier sind nur jeweils ein paar Beispiele aufgeführt. Empfehlenswert: mal die Hilfe für die nachfolgenden Funktionen anschauen! simplify: "Allgemeine" (unspezifische / unkontrollierte) Vereinfachungen (a+b)^+(a-b)^; ( a + b) + ( a b ) Hier findet keine weitere Auswertung statt, obwohl man diesen Ausdruck sicher einfacher schreiben kann. > simplify(%); a + b Das Zeichen % bezieht sich, wie schon gesehen, auf die letzte Ausgabe von Maple, %% auf die vorletzte und %%% auf die drittletzte. simplify ist eine sehr mächtige Funktion, die allerdings ihre Tücken hat! Noch ein Beispiel: > exp_simp := exp(a + ln (b * exp (c))); exp_simp := e ( a + ln ( b ec ) ) > simplify (exp_simp); factor : Faktorisierung eines Ausdrucks b e ( a + c) > exp_fac := 6*x^ + 8*x - 4; > factor (exp_fac); Page 7 exp_fac := 6 x + 8 x 4 6 ( x + 4 ) ( x ) > factor (x^4-,sqrt()); # nur bei ganzen zahlen geht's automatisch ( x + ) ( x + ) collect: Zusammenfassen der Terme mit der gleichen Potenz einer Variablen > f := x*(x+)+y*(x+); > collect (f, x); > collect (f, y); f := x ( x + ) + y ( x + ) x + ( + y) x + y x ( x + ) + y ( x + ) combine: Zusammenfassen von Termen "unter Ausnutzung von Rechenregeln" Ein Beispiel für combine hatten wir ja schon kennengelernt. Hier ein weiteres: > exp_com := exp (sin (x) * cos (y)) * exp (cos (x) * sin (y)); exp_com := e ( sin( x ) ( )) > exp_c := combine (exp_com); cos y e ( cos( x ) sin( y) ) exp_c := e sin ( x + y) combine und expand führen die Umformungen jeweils in umgekehrter Richtung durch: > expand (exp_c); e ( sin( x ) cos( y) ) e ( cos( x ) sin( y) ) Noch ein Beispiel zu combine: > combine (sin(alpha)^3,trig); 3 sin( 3 α) + sin( α) 4 4 expand: "Expandiere" einen Ausdruck ("to distribute products over sums") > exp_exp [] := (x+)*(x+); exp_exp := ( x + ) ( x + ) > expand (exp_exp []); x + 3 x + > exp_exp [] := sin (x+y); exp_exp := sin ( x + y) > exp_exp [3] := expand (exp_exp []); exp_exp 3 := sin( x ) cos( y ) + cos( x ) sin( y ) > combine (exp_exp[3]); sin ( x + y) convert: Bringe Ausdruck in eine andere Form Page 8 9

12 > convert(exp(z),trig); cosh( z ) + sinh( z ) > convert(exp(i*z),trig); > convert(sin(x),exp); cos( z) + I sin( z) I e ( I x) e ( I x) Im nächsten Abschnitt bei den Reihen kommt noch ein Beispiel zu convert. Reihenentwicklung > reihe:=series( exp(x), x=0, 4 ); # entwickle um x=0 4 Glieder reihe := + x x 6 x3 O( x 4 ) > convert( reihe, polynom ); # jetzt ist der O - Term weg + x + + x 6 x3 > series( /x, x=, 3 ); # entwickle um x= Numerische Berechnungen ( x ) + ( x ) + O ( ( x ) 3 ) In vielen Fällen benötigt man letztlich doch eine näherungsweise numerische Auswertung eines Ergebnisses. Dies bewerkstelligt die Funktion evalf: > sq:=sqrt(); > evalf(sq); oder man berechnet > sqrt(.0); sq := Die Zahl der Stellen, die Maple berechnen soll, ist ein weiteres optionales Argument zu evalf: > evalf(sq,0); Aber Vorsicht: Numerische Rechnungen sind immer mit Rundungsfehlern behaftet: > sqrt()*sqrt(8)-4; 0 > evalf(sqrt())*evalf(sqrt(8))-4; Page 9 Vielleicht hilft es ja, die Zahl der Stellen hochzusetzen. Dazu gibt es eine Maple-Variable namens Digits. Setzt man diese auf einen Integerwert, so rechnet Maple numerisch mit der angegeben Zahl von Stellen, bis Digits neu zugewiesen wird. So kann man die erweiterte numerische Genauigkeit für den gesamten Ausdruck gültig machen (standardmäßig ist für Digits der Wert 0 eingestellt): > Digits; Digits:=50; evalf(sqrt())*evalf(sqrt(8))-4; Digits:=0; 0 Digits := Digits := 0 Achtung: Wie schon erwähnt: Maple wird alle Ausdrücke numerisch auswerten, in denen man explizit float-zahlen benutzt: > sqrt(0.)*sqrt(8)-4; Auf jeden Fall sollte man also Argumente von Funktionen immer als rationale Zahlen schreiben, wenn man damit noch weiter rechnen will: > sqrt(/0)*sqrt(8)-4; > simplify(%); Noch ein Beispiel: > 00!; \ \ > evalf(%); Lösen von Gleichungen Einfache Gleichungen (und Ungleichungen) Eine besondere Stärke von Maple ist das Lösen von Gleichungen: > solve(x^+x-=0,x); + 5, 5 Beachte: Maple gibt wieder die exakte Lösung (so vorhanden) aus. Natürlich geht auch Page 0 0

13 > eq:=x^+x-=0; > sol:=solve(eq,x); eq := x + x = 0 sol := + 5, 5 Die einzelnen Lösungen erscheinen hier als Folge (also geordnet). Wenn man auf die verschiedenen Lösungen zugreifen will, kann man das so machen: > a:=sol[];b:=sol[]; a := + 5 b := 5 Man kann auch Nebenbedingungen angeben (d.h. Gleichungen und Ungleichungen simultan lösen): > solve(x^-=0,x); > solve({x^-=0,x>0},x);, - { x = } Man beachte die Mengenklammer sowohl beim Argument von solve als auch beim Ergebnis. Wie man dieses Ergebnis dann weiterverwendet, werden wir gleich sehen. Lineare Gleichungssysteme Mit demselben Befehl solve lassen sich auch Gleichungssysteme (lineare und nichtlineare) behandeln. Hier erst mal ein lineares: > sol:=solve({x+*y-*z=5,3*x-y+z=-, -4*x+y-7*z=0},{x,y,z}); 3 5 sol := { z =, y =, x = } Man beachte, dass das System von Gleichungen wieder in geschweiften Klammern als Menge übergeben wird. Ebenso müssen die Unbekannten als Menge übergeben werden. Die Reihenfolge der Lösungen ist hier willkürlich, sie werden als als Menge zurückgegeben! Um auf die einzelnen Lösungen zurückzugreifen, könnte man im Prinzip Folgendes machen: > sol[];sol[];sol[3]; Page 3 z = 4 5 y = 4 x = 7 Beim nächsten Durchlauf könnte aber die Zuordnung anders sein. Ausserdem hat man noch keine Zuordnung der Lösungen zu den Variablen bekommen, die Variablen x,y,z sind nicht belegt: > z; z Für solche Zwecke gibt es die Befehle subs und assign. subs ersetzt in einem Ausdruck eine Variable durch einen Wert (makes the substitution specified by the first argument in the last argument). In diesem Fall bedeutet das konkret: > subs(sol,z); z; # nur temporär! z > z:=subs(sol,z); z; # so ist's dauerhaft z := 4 4 > z:='z'; assign(sol); x;y;z; # auch dauerhaft 3 z := z 4 assign ist doch ganz praktisch: "If the argument is a list or set of equations, then assign is applied to each equation in the list or set." > 7 5 Nicht-Lineare Gleichungssysteme eq:={x^+/y^=,y^-x^=},{x,y}; > sol:=solve(eq); 4 3 eq := { x + =, y x = }, { y, x} y sol := { y =, x = 0 }, { y = -, x = 0 }, { y = RootOf ( _Z ), x = }, { y = RootOf (_Z ), x = -} Die Lösung nichtlinearer Gleichungen oder Gleichungssysteme wird, speziell bei Polynomen, häufig in der impliziten RootOf-Notation angegeben ("any root of"). Maple erspart sich damit die explizite Berechnung, die bei Polynomen höheren Grades entweder nicht geschlossen möglich ist bzw. auf ziemlich unübersichtliche Ausdrücke führt. Ist man dennoch an den Lösungen interessiert, dann hilft der Befehl allvalues Page

14 weiter: > p3:=allvalues(sol[3]); p3 := { x =, y = }, { x =, y = } Jetzt kann man noch die Lösungen den Variablen zuordnen: > x:=subs(p3[],x); y:=subs(p3[],y); x := y := Natürlich kann man das Problem auch numerisch lösen: > #fsolve = solve using floating point arithmetic fsolve({x^+/y^=,y^-x^=},{x,y}); { x = , y = } Offensichtlich fehlen hier einige Lösungen. Hier muss man experimentieren, indem man in den Variablen einen Startwert angibt: > fsolve({x^+/y^=,y^-x^=},{x=,y=-.4}); { x = , y = } Die verschiedenen Lösungen findet man am besten, wenn man das System erst mal grafisch löst. Näheres später, aber hier schon ein Eindruck: > with(plots): > implicitplot({x^+/y^=,y^-x^=},x=-.., y=-..); > sum(n,n=..00); > sum(n,n=..n); > simplify(%); 5050 ( N + ) N + N N > sum( (*n-5)/(3*n^+4*n-0), n=0..0); > evalf(%); Berechnung unendlicher Summen (unendlich heißt in Maple infinity): > sum(/n,n=..infinity); > sum(x^n,n=0..infinity); x Das Ergebnis macht natürlich nur Sinn (Konvergenz der geometrischen Reihe!), wenn x < ist. Wenn man nichts angibt, nimmt Maple oft günstige Bedingungen an. Manchmal muß Maple solche Bedingungen wissen. Mitteilen kann man sie mittels assume: > assume(x>); sum(x^n,n=0..infinity); Die Schlange hinter der Variablen deutet an, dass sie mit einer Bedingung verknüpft ist. Hier: x ist reell und zwischen - und +. Wenn man mehrere Bedingungen an dieselbe Variable stellen will, muss man das mit additionally machen. Natürlich kann man Maple auch andere Dinge über eine Variable mitteilen: > Re(a+I*b);Im(a+I*b); > assume(b,real,a,real); > Re(a+I*b);Im(a+I*b); R ( a + I b) I ( a + I b ) b~ > assume(p,integer);additionally(p,positive); about(p); a~ Summen und Produkte; Eigenschaften von Variablen Berechnung endlicher Summen: Page 3 Originally p, renamed p~: is assumed to be: AndProp(integer,RealRange(,infinity)) > assume(z,complex):about(z); # was ist über z bekannt? Originally z, renamed z~: Page 4

15 is assumed to be: complex Und so weiter. Die ganze Liste möglicher Eigenschaften findet man mittels?property >?property Die Berechung von Produkten erfolgt analog mit dem Befehl product. Beispielsweise kann man auch so Fakultäten berechnen: product(n, n=..0); 0!; Oder etwas komplizierter: > product((n^-)/(n^+4), n=0..0); Auch hier kann man unendliche Produkte berechnen: > product(n, n=..infinity); > prod:=product((n^-)/(n^+4), n=0..infinity); prod := n = 0 n n + 4 Hier ist die Ausgabe eines geschlossenen analytischen Ergebnisses mit Maple 5 offenbar nicht möglich. Maple 8 schafft es! Probieren wir's numerisch: > evalf(prod); # geht leider auch nicht bei Maple V Error, (in evalf/product) cannot evaluate boolean > product((n^-.0)/(n^+4.0), n=0..infinity); Bei Maple 8 wird das Ergebnis nach einem Befehl analytisch exakt angegeben. Differenzieren, Integrieren und Grenzwerte Differenzieren >?diff; > diff(x^,x); > diff(exp(x),x); > diff(sin(x),x); x cos( x ) > diff(sin(x),x$); #. Ableitung Page 5 e x sin( x) Natürlich beherrscht Maple auch Produkt-, Quotienten- und Kettenregel: > diff(sin(x)*exp(x),x); cos( x) e x + sin( x ) e x > diff(x^/sin(x),x); > diff(sin(exp(x)),x); x sin( x) cos( e x ) e x x cos( x ) sin( x ) Statt des Befehls diff gibt es auch eine alternative Schreibweise mit dem D-Operator: > D(sin)(x); > >?D oder allgemeiner formuliert: > > D(sin*cos); cos( x ) sin( x) cos sin Sie ist oft sehr praktisch (und manchmal auch unentbehrlich), allerdings klappt's nicht immer so wie gewünscht: > D(x^)(x); sin D( x )( x ) x( x ) Die korrekte Schreibweise wäre (mehr dazu weiter unten bei Funktionen) : > D(x->x^)(x); x Integrieren Integrieren geht analog. Unbestimmte Integrale (wieder mit "impliziter Wahl günstiger Verhältnisse"): > int(x^n,x); > int(sin(x),x); > int(sin(x)^,x); Bestimmte Integrale > int(x^n,x=a..b); x ( n + ) n + cos( x) cos( x ) sin( x) + x Page 6 3

16 b n b a a n n + Maple 8 meckert hier bereits: Warning, unable to determine if 0 is between a and b; try to use assumptions or use the > int(sin(x),x=0..*pi); > int(sin(x)^,x=0..*pi); AllSolutions option π > int(exp(-x),x=0..infinity); Beim Integrieren kann auch die assume-funktion sehr hilfreich sein: > a:='a':int(exp(-a*x),x=0..infinity); Definite integration: Can't determine if the integral is convergent. Need to know the sign of --> a Will now try indefinite integration and then take limits. lim 0 e ( a x ) x a Maple 8 läßt die Anmerkung weg, agiert aber ansonsten genauso. Ausweg: > assume(a>0):int(exp(-a*x),x=0..infinity);about(a); a~ Originally a, renamed a~: is assumed to be: RealRange(Open(0),infinity) Sollte Maple ein bestimmtes Integral nicht knacken können, so kann es dieses immer noch numerisch berechnen: > int(sin(sqrt(x^3+)+),x=0..*pi); > evalf(%); 0 π sin ( x ) dx Kleine abschließende Bemerkung: es gibt auch Diff und Int (gross geschrieben); sie rechnen nicht, sondern geben den Input nur schön aus: > Diff(exp(x),x); > Int(sin(x)/x,x=0..); Page 7 x ex sin( x ) dx x 0 Grenzwerte Auch Grenzwerte von Funktionen oder Folgen lassen sich mit Maple berechnen: > limit(sin(x)/x,x=0); > limit((n+/n)/(4*n-),n=infinity); 4 Auch hier ist es oft hilfreich, Maple mittels assume über die Eigenschaften von Variablen zu informieren: > limit(exp(-b*x), x=infinity); lim x e ( b x) > assume(b>0);limit(exp(-b*x), x=infinity); 0 Auch rechts und linksseitige Grenzwerte können bestimmt werden: > limit(/x, x=0); undefined Aber: > limit(/x, x=0, left); limit(/x, x=0, right); Funktionen Definition von Funktionen Die Definition von Funktionen geht mit dem -> Operator: > f:=x->x^5; f := x x 5 x ist nur eine formale Variable und nach außen hin nicht sichtbar! > x; > f(3); > f(y); > f(sin(z)); sin( z ) 5 Achtung: Die Variable auf der linken Seite darf kein Argument aufweisen! So nicht! Page 8 x 43 y 5 4

17 > g(x):=x->x^5; # so ist's ungut! > g(3); > g(x)(3); g( x ) := x x 5 g( 3 ) 43 Man hat hier also die Funktion g( x ) und nicht g genannt. Eine weitere nützliche Funktionskonstruktion ist piecewise, mit der man Funktionen zusammenstückeln kann: > f:=x->piecewise(x<0,0,x>0,x^); > f(-);f(); f := x piecewise ( x < 0, 0, 0 < x, x ) 4 Differenzieren von Funktionen, Integrieren Mit der neuen Funktion f kann man jetzt alle bekannten Manipulationen ausführen: > f:=x->x^5;f(x);f; > diff(f(x),x); 0 f := x x 5 Jetzt verwenden statt diff den Operator D. In der Online-Hilfe steht dazu: Calling Sequence: D(f) Parameters f: expression which can be applied as a function > D(f); # erste Ableitung, Ergebnis wieder als Funktion x 5 f 5 x 4 x 5 x 4 > D(f(x)); # so nicht! 5 D( x ) x 4 > D(f)(x); # erste Ableitung, Ergebnis als Ausdruck 5 x 4 > D(D(f)); # zweite Ableitung x 0 x 3 > # auch zweite Ableitung Page 9 x 0 x 3 > # dritte Ableitung x 60 x > # Ableitung von f(sin(x)) # nicht gerade günstig ( x 5 x 4 sin cos > # als Ausdruck ist's hier praktischer 5 sin( x ) 4 cos( x ) > # Ableitung von sin(f(x)) 5 cos( x 5 ) x 4 Wie man sieht, lassen sich höhere Ableitungen durch mit natürlichen Zahlen m und Ableitungen von Verknüpfungen von Funktionen wie z.b.f(sin(x)) bzw. sin(f(x)) als und abkürzen. Der bezeichnet also die Verknüpfung zweier Funktionen: > > sin( x) 5 sin( x 5 ) Auch Integrationen von Funktionen lassen sich wie gewohnt durchführen. > int(f(x),x); > int(f(x),x=-..); 6 x6 0 > int(sin(sqrt(f(x)+)+),x=0..pi); > evalf(%); sin ( x ) dx 0 π Funktionen mehrerer Variabler Natürlich lassen sich in Maple auch Funktionen mehrerer Veränderlicher definieren. Hier als Beispiel die Bahnkurve beim schrägen Wurf mit Anfangsgeschwindigkeit v und Abwurfwinkel α: > y:=(x,alpha,v)->tan(alpha)*x-/*g/(v*cos(alpha))^*x^ ; Ableitungen gehen so: y := ( x, α, v ) tan( α) x Page 30 g x v cos( α) 5

18 > D[](y); # Ableitung nach erstem Parameter x g x ( x, α, v ) tan( α) v cos( α) > # und nochmal nach x abgeleitet g ( x, α, v) v cos( α) > diff(y(x,alpha,v),x); # wieder Ableitung nach x g x tan( α) v cos( α) > D[](y); # Ableitung nach zweitem Parameter alpha Funktionen und Ausdrücke ( x, α, v ) ( + tan( α) ) x g x sin( α) v cos( α) 3 Weiter oben hatten wir schon Ausdrücke kennengelernt. Ausdrücke und Funktionen sind miteinander verwandt, aber nicht identisch; bei manchen Anwendungen funktioniert aber nur die Darstellung als Funktion, woanders gehen nur Ausdrücke. Man kann aber leicht hin und her wandeln. a:=x^+*x+; > solve(a,x); a := x + x + -, - > a(7); # das ist Unsinn - geht nur mit Funktionen x( 7 ) + x( 7) + > subs(x=7,a); # das ist wohl gemeint 34 subs hatten wir ja schon kennengelernt in einer etwas anderen Form - dies hier ist die 'klassische' Variante. > eval(a,x=7); # so geht's auch: # evaluate an expression e at a given point 34 Funktionen wie oben sind eine Abbildungsvorschrift, man kann sie nicht "lösen"( Maple V und auch Maple 8 geben hier außnahmsweise gar nichts zurück - d.h. er kann mit irgendeiner Eingabe nichts anfangen): > f:=x->x^+*x+;f(7); solve(f,x); Page 3 f := x x + x + 34 f(x) ist aber wieder ein Ausdruck, den man lösen kann: > solve(f(x),x); -, - Umgekehrt kann man mit unapply aus Ausdrücken auch Funktionen machen: > h:=sin(x)*5; > fh:=unapply(h,x); > fh(x); > fh(); evalf(fh()); > j:=sin(x)*cos(y)+z^3; > unapply(j,x,y,z); Noch 'ne kleine Falle: f:=x->x^5; > f:=x->diff(f(x),x); > f(x); h := 5 sin( x) fh := x 5 sin( x ) 5 sin( x) 5 sin( ) j := sin( x ) cos( y ) + z 3 ( x, y, z ) sin( x ) cos( y ) + z 3 f := x x 5 f := x diff ( f( x), x ) 5 x 4 > f(); Error, (in f) wrong number (or type) of parameters in function diff oder aussagekräftiger in Maple 8: Error, (in f) invalid input: diff received, which is not valid for its nd argument Kann so nicht ausgewertet werden. Es wird zuerst x = gesetzt und dann differenziert, was dann nicht mehr geht. Ausweg: > f:=unapply(diff(f(x),x),x); > f(); f := x 5 x 4 5 Arbeitet man gleich mit dem D-Operator, gibt's dieses Problem nicht: > f:=d(f); f := x 5 x 4 Page 3 6

19 > f(); 5 Page 33 7

20 Einführung in Maple Stand Januar 05 (Version 3.0) - F.Wünsch Dieses Skript basiert auf Kursen von Julian Berwanger, Martin Decker, Thomas Pruschke, Joachim Keller und Harald Dobler, Florian Chmela und Roland Winkler. Kap. : Grundlagen Kap. : Graphik mit Maple Kap. 3: Lösung von Differentialgleichungen mit Maple Kap. 4: Programmierung und Prozeduren Kap. 5: Lineare Algebra Graphik mit Maple Noch paar einfache Plots Ein paar Plots hatten wir ja schon. Maple ist sehr reich an Darstellungsmöglichkeiten. Hier zunächst noch ein paar einfache, in den anschließenden Abschnitten zeigen wir auch ziemlich komplizierte. Auch mehrere Funktionen pro Plot sind möglich. Dazu muss man als Argument eine Menge {f,f,...} oder eine Liste [f,f,...] mit den Funktionen übergeben: > plot([exp(-x),sin(x),cos(x),/(+x)],x=0..4*pi,color=[red, blue,green,black]); Plotten kann man eine Funktion f in der Form f(x), x=a..b. Verschiedene Darstellungsstile und Auflösungen sind beim Plot-Befehl möglich und können unter?plot eingesehen werden: > plot(sin(x),x=0..4*pi,style=point, symbol=circle,color=red,numpoints=00); Page Auch Parameterdarstellungen lassen sich plotten:. Funktion Abszisse (horizontal).. Funktion Ordinate (vertikal), auch der Bereich muss mit in den eckigen Klammern stehen: > plot([sin(*t),cos(t),t=0..00*pi],scaling=constrained,num Page 8

Einführung in Maple. Kap. 2: Graphik mit Maple. Graphik mit Maple. Stand Januar 2015 (Version 3.0) - F.Wünsch

Einführung in Maple. Kap. 2: Graphik mit Maple. Graphik mit Maple. Stand Januar 2015 (Version 3.0) - F.Wünsch Einführung in Maple Stand Januar 2015 (Version 3.0) - F.Wünsch Dieses Skript basiert auf Kursen von Julian Berwanger Martin Decker Thomas Pruschke Joachim Keller und Harald Dobler Florian Chmela und Roland

Mehr

Eine Kurzanleitung zu Mathematica

Eine Kurzanleitung zu Mathematica MOSES Projekt, GL, Juni 2003 Eine Kurzanleitung zu Mathematica Wir geben im Folgenden eine sehr kurze Einführung in die Möglichkeiten, die das Computer Algebra System Mathematica bietet. Diese Datei selbst

Mehr

DIFFERENTIALGLEICHUNGEN

DIFFERENTIALGLEICHUNGEN DIFFERENTIALGLEICHUNGEN GRUNDBEGRIFFE Differentialgleichung Eine Gleichung, in der Ableitungen einer unbekannten Funktion y = y(x) bis zur n-ten Ordnung auftreten, heisst gewöhnliche Differentialgleichung

Mehr

4 Einführung in Maple

4 Einführung in Maple 72 4 Einführung in Maple 4. Grundlagen 4.. Was ist Maple? Maple ist ein kommerzielles Softwarepaket für das symbolische Rechnen; man spricht auch von einem Computeralgebra-System. Es kann z.b. algebraische

Mehr

Kapitel 8: Graphische Darstellung von Funktionen in einer Variablen

Kapitel 8: Graphische Darstellung von Funktionen in einer Variablen Kapitel 8: Graphische Darstellung von Funktionen in einer Variablen Die graphische Darstellung von Funktionen in einer Variablen erfolgt durch den plot-. Mit plot können auch mehrere Funktionen in ein

Mehr

EigenMath Howto. Beispiele: Was erhält man, wenn man 100 mal die Zahl 2 mit sich multipliziert? Antwort 1267650600228229401496703205376

EigenMath Howto. Beispiele: Was erhält man, wenn man 100 mal die Zahl 2 mit sich multipliziert? Antwort 1267650600228229401496703205376 EigenMath Howto EigenMath ist ein kleines Programm, das als 'Taschenrechner' für die Mathematik der Oberstufe verwendet werden kann. Es ist viel weniger mächtig als die großen Brüder Sage, Maxima, Axiom

Mehr

Gewöhnliche Differentialgleichungen (ODEs) I

Gewöhnliche Differentialgleichungen (ODEs) I Gewöhnliche Differentialgleichungen (ODEs) I Autor: Harald Höller letzte Änderung: 17.03.10 Lizenz: Creative Commons Lizenz by-nc-sa 3.0 at Differentialgleichungen lösen und plotten in Mathematica Grundlegendes

Mehr

Mathematica. H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2014/15 1 / 32

Mathematica. H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2014/15 1 / 32 Mathematica H. Todt, M. Wendt (UP) Computational Physics - Einführung WiSe 2014/15 1 / 32 Mathematica I Mathematica ist ein Mathematik-Programm zum numerischen und symbolischen Lösen von Gleichungen Gleichungssystemen

Mehr

Tag 9: Datenstrukturen

Tag 9: Datenstrukturen Tag 9: Datenstrukturen A) Datenstrukturen B) Cell Arrays C) Anwendungsbeispiel: Stimulation in einem psychophysikalischen Experiment A) Datenstrukturen Wenn man komplizierte Datenmengen verwalten möchte,

Mehr

Kapitel 15: Differentialgleichungen

Kapitel 15: Differentialgleichungen FernUNI Hagen WS 00/03 Kapitel 15: Differentialgleichungen Differentialgleichungen = Gleichungen die Beziehungen zwischen einer Funktion und mindestens einer ihrer Ableitungen herstellen. Kommen bei vielen

Mehr

Einführung in Maple. Version 0.2. Tobias Müller

Einführung in Maple. Version 0.2. Tobias Müller Version. Tobias Müller Ammerbuch, den 5. April 5 Inhaltsverzeichnis Einfaches Rechnen mit Maple 3. Grundlagen................................................ 3. Einfaches Rechnen mit Maple.......................................

Mehr

Gasentladung Berechnungsverfahren Durchbruchspannung. Einfluss des Elektrodenabstands auf die Durchbruchspannung

Gasentladung Berechnungsverfahren Durchbruchspannung. Einfluss des Elektrodenabstands auf die Durchbruchspannung Gasentladung Berechnungsverfahren Durchbruchspannung STUDENT > restart; Dr. Daniel Roth - Daniel.Roth@netzmedien.de Einfluss des Elektrodenabstands auf die Durchbruchspannung Nach "Hasenpusch: Hochspannungstechnik,

Mehr

Vorlesung 16.11.2012 Inhaltsverzeichnis. Einfache Rechnungen

Vorlesung 16.11.2012 Inhaltsverzeichnis. Einfache Rechnungen Vorlesung 16.11.01 Inhaltsverzeichnis 1.. 3. 4. 5. 6. Einfache Rechnungen Hilfe! Gleitkommazahlen Formales Rechnen Polynome Endliche Körper Einfache Rechnungen Sage kann alles was ein Taschenrechner kann,

Mehr

Einfache Differentialgleichungen

Einfache Differentialgleichungen Differentialgleichungen (DGL) spielen in der Physik eine sehr wichtige Rolle. Im Folgenden behandeln wir die grundlegendsten Fälle 1, jeweils mit einer kurzen Herleitung der Lösung. Dann schliesst eine

Mehr

x 2 2x + = 3 + Es gibt genau ein x R mit ax + b = 0, denn es gilt

x 2 2x + = 3 + Es gibt genau ein x R mit ax + b = 0, denn es gilt - 17 - Die Frage ist hier also: Für welche x R gilt x = x + 1? Das ist eine quadratische Gleichung für x. Es gilt x = x + 1 x x 3 = 0, und man kann quadratische Ergänzung machen:... ( ) ( ) x x + = 3 +

Mehr

Mathematik für Studierende der Biologie und des Lehramtes Chemie Wintersemester 2013/14. Auswahl vorausgesetzter Vorkenntnisse

Mathematik für Studierende der Biologie und des Lehramtes Chemie Wintersemester 2013/14. Auswahl vorausgesetzter Vorkenntnisse UNIVERSITÄT DES SAARLANDES FACHRICHTUNG 6.1 MATHEMATIK Dipl.-Math. Kevin Everard Mathematik für Studierende der Biologie und des Lehramtes Chemie Wintersemester 2013/14 Auswahl vorausgesetzter Vorkenntnisse

Mehr

Gnuplot. Justin Simon Bayer. 12. Januar 2006

Gnuplot. Justin Simon Bayer. 12. Januar 2006 Gnuplot Justin Simon Bayer 12. Januar 2006 1 Inhaltsverzeichnis 1 Gnuplot? 3 1.1 Was ist das eigentlich?........................ 3 1.2 Ein Beispiel.............................. 3 1.3 Und noch eins.............................

Mehr

Installation. Arbeiten mit der MATLAB-Entwicklungsumgebung. MATLAB als Taschenrechner mit Matrix- und Vektorrechnung.

Installation. Arbeiten mit der MATLAB-Entwicklungsumgebung. MATLAB als Taschenrechner mit Matrix- und Vektorrechnung. Installation. Arbeiten mit der MATLAB-Entwicklungsumgebung. MATLAB als Taschenrechner mit Matrix- und Vektorrechnung. Die heutige Sitzung dient dem ersten Kennenlernen von MATLAB. Wir wollen MATLAB zuerst

Mehr

Vorlesung. Komplexe Zahlen

Vorlesung. Komplexe Zahlen Vorlesung Komplexe Zahlen Motivation Am Anfang der Entwicklung der komplexen Zahlen stand ein algebraisches Problem: die Bestimmung der Lösung der Gleichung x 2 + 1 = 0. 1 Mit der Lösung dieses Problems

Mehr

Autor: Michael Spahn Version: 1.0 1/10 Vertraulichkeit: öffentlich Status: Final Metaways Infosystems GmbH

Autor: Michael Spahn Version: 1.0 1/10 Vertraulichkeit: öffentlich Status: Final Metaways Infosystems GmbH Java Einleitung - Handout Kurzbeschreibung: Eine kleine Einführung in die Programmierung mit Java. Dokument: Autor: Michael Spahn Version 1.0 Status: Final Datum: 23.10.2012 Vertraulichkeit: öffentlich

Mehr

15 Lasst den Compi rechnen Computeralgebra

15 Lasst den Compi rechnen Computeralgebra Ma th ef it Wir verwenden hier wxmaxima 0.8.6 und Maxima 5.22.1. Es ist möglich, Teile dieses Kapitels bereits früher bei den entsprechenden Buchabschnitten zu verwenden. Einen ausgezeichneten Online-Lehrgang

Mehr

5 Eigenwerte und die Jordansche Normalform

5 Eigenwerte und die Jordansche Normalform Mathematik für Physiker II, SS Mittwoch 8.6 $Id: jordan.tex,v.6 /6/7 8:5:3 hk Exp hk $ 5 Eigenwerte und die Jordansche Normalform 5.4 Die Jordansche Normalform Wir hatten bereits erwähnt, dass eine n n

Mehr

De Taschäräschnr Casio (Reihe: 9750, 9850,...)

De Taschäräschnr Casio (Reihe: 9750, 9850,...) De Taschäräschnr Casio (Reihe: 9750, 9850,...) Übersicht: 1. Nullstellen 2. Gleichungen 2. oder 3. Grades lösen 3. Gleichungen lösen 4. Schnittpunkte bestimmen 5. Extrempunkte 6. Wendepunkte 7. Steigung

Mehr

Einführung in QtiPlot

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

Mehr

PHP 5.4 ISBN 978-3-86249-327-2. Stephan Heller, Andreas Dittfurth 1. Ausgabe, September 2012. Grundlagen zur Erstellung dynamischer Webseiten GPHP54

PHP 5.4 ISBN 978-3-86249-327-2. Stephan Heller, Andreas Dittfurth 1. Ausgabe, September 2012. Grundlagen zur Erstellung dynamischer Webseiten GPHP54 PHP 5.4 Stephan Heller, Andreas Dittfurth 1. Ausgabe, September 2012 Grundlagen zur Erstellung dynamischer Webseiten ISBN 978-3-86249-327-2 GPHP54 5 PHP 5.4 - Grundlagen zur Erstellung dynamischer Webseiten

Mehr

Maple-Skripte. A.1 Einleitung. A.2 Explizite Zweischritt-Runge-Kutta-Verfahren. Bei der Ausführung

Maple-Skripte. A.1 Einleitung. A.2 Explizite Zweischritt-Runge-Kutta-Verfahren. Bei der Ausführung A Maple-Skripte A.1 Einleitung Bei der Ausführung mechanischer Rechnungen können Computeralgebra-Programme sehr nützlich werden. Wenn man genau weiß, was eingesetzt, umgeformt, zusammengefaßt oder entwickelt

Mehr

Informatik. Studiengang Chemische Technologie. Michael Roth WS 2012/2013. michael.roth@h-da.de. Hochschule Darmstadt -Fachbereich Informatik-

Informatik. Studiengang Chemische Technologie. Michael Roth WS 2012/2013. michael.roth@h-da.de. Hochschule Darmstadt -Fachbereich Informatik- Informatik Studiengang Chemische Technologie Michael Roth michael.roth@h-da.de Hochschule Darmstadt -Fachbereich Informatik- WS 2012/2013 Inhalt Teil VII Einstieg in Java I Michael Roth (h_da) Informatik

Mehr

Classpad 300 / Classpad 330 (Casio) Der Taschenrechner CAS:

Classpad 300 / Classpad 330 (Casio) Der Taschenrechner CAS: Der Taschenrechner CAS: Classpad 300 / Classpad 330 (Casio) Übersicht: 1. Katalog (wichtige Funktionen und wie man sie aufruft) 2. Funktionen definieren (einspeichern mit und ohne Parameter) 3. Nullstellen

Mehr

1 Dein TI nspire CAS kann fast alles

1 Dein TI nspire CAS kann fast alles INHALT 1 Dein kann fast alles... 1 2 Erste Schritte... 1 2.1 Systemeinstellungen vornehmen... 1 2.2 Ein Problem... 1 3 Menü b... 3 4 Symbolisches Rechnen... 3 5 Physik... 4 6 Algebra... 5 7 Anbindung an

Mehr

Informationsverarbeitung im Bauwesen

Informationsverarbeitung im Bauwesen V14 1 / 30 Informationsverarbeitung im Bauwesen Markus Uhlmann Institut für Hydromechanik WS 2009/2010 Bemerkung: Verweise auf zusätzliche Information zum Download erscheinen in dieser Farbe V14 2 / 30

Mehr

Softwarepraktikum. zu Elemente der Mathematik. Carsten Rezny 10. 13.06.2014. Institut für angewandte Mathematik Universität Bonn

Softwarepraktikum. zu Elemente der Mathematik. Carsten Rezny 10. 13.06.2014. Institut für angewandte Mathematik Universität Bonn Softwarepraktikum zu Elemente der Mathematik Carsten Rezny Institut für angewandte Mathematik Universität Bonn 10. 13.06.2014 Anmeldung in Basis: 10. 13.06.2014 Organisatorisches Überblick GeoGebra freie

Mehr

Java Einführung Operatoren Kapitel 2 und 3

Java Einführung Operatoren Kapitel 2 und 3 Java Einführung Operatoren Kapitel 2 und 3 Inhalt dieser Einheit Operatoren (unär, binär, ternär) Rangfolge der Operatoren Zuweisungsoperatoren Vergleichsoperatoren Logische Operatoren 2 Operatoren Abhängig

Mehr

Lineare Gleichungssysteme

Lineare Gleichungssysteme Brückenkurs Mathematik TU Dresden 2015 Lineare Gleichungssysteme Schwerpunkte: Modellbildung geometrische Interpretation Lösungsmethoden Prof. Dr. F. Schuricht TU Dresden, Fachbereich Mathematik auf der

Mehr

Kontrollstrukturen, Pseudocode und Modulo-Rechnung

Kontrollstrukturen, Pseudocode und Modulo-Rechnung Kontrollstrukturen, Pseudocode und Modulo-Rechnung CoMa-Übung III TU Berlin 29.10.2012 CoMa-Übung III (TU Berlin) Kontrollstrukturen, Pseudocode und Modulo-Rechnung 29.10.2012 1 / 1 Themen der Übung 1

Mehr

R-Tutorial. R bietet zahlreiche Hilfe-Funktionen an. Informiere Dich über die Funktion log():

R-Tutorial. R bietet zahlreiche Hilfe-Funktionen an. Informiere Dich über die Funktion log(): Statistik für Bioinformatiker SoSe 2005 R-Tutorial Aufgabe 1: Hilfe. Logge Dich ein. Username und Passwort stehen auf dem Aufkleber am jeweiligen Bildschirm. Öffne eine Shell und starte R mit dem Befehl

Mehr

2.12 Potenzreihen. 1. Definitionen. 2. Berechnung 2.12. POTENZREIHEN 207. Der wichtigste Spezialfall von Funktionenreihen sind Potenzreihen.

2.12 Potenzreihen. 1. Definitionen. 2. Berechnung 2.12. POTENZREIHEN 207. Der wichtigste Spezialfall von Funktionenreihen sind Potenzreihen. 2.2. POTENZREIHEN 207 2.2 Potenzreihen. Definitionen Der wichtigste Spezialfall von Funktionenreihen sind Potenzreihen. Eine Potenzreihe mit Entwicklungspunkt x 0 ist eine Reihe a n x x 0 n. Es gilt: es

Mehr

Übungspaket 19 Programmieren eigener Funktionen

Übungspaket 19 Programmieren eigener Funktionen Übungspaket 19 Programmieren eigener Funktionen Übungsziele: Skript: 1. Implementierung und Kodierung eigener Funktionen 2. Rekapitulation des Stack-Frames 3. Parameterübergabe mittels Stack und Stack-Frame

Mehr

1. LPC - Lehmanns Programmier Contest - Lehmanns Logo

1. LPC - Lehmanns Programmier Contest - Lehmanns Logo Aufgabe ist die Entwicklung einer vereinfachten Variante der beliebten Programmiersprache Logo. Die Aufgabe ist in drei Stufen zu erledigen, von der wir zunächst nur die erste Stufe bekannt geben. Die

Mehr

Erwin Grüner 15.12.2005

Erwin Grüner 15.12.2005 FB Psychologie Uni Marburg 15.12.2005 Themenübersicht Mit Hilfe der Funktionen runif(), rnorm() usw. kann man (Pseudo-) erzeugen. Darüber hinaus gibt es in R noch zwei weitere interessante Zufallsfunktionen:

Mehr

Python Programmieren. Variablen, Ausdrücke und Anweisungen

Python Programmieren. Variablen, Ausdrücke und Anweisungen Python Programmieren Funktionen Module und Namensräume Datentypen in Python Was noch zu sagen bleibt... richard rascher-friesenhausen Programmierung SS 12 Daten: Wert und Typ Variablen Variablennamen und

Mehr

Einführung in die Programmiersprache C

Einführung in die Programmiersprache C Einführung in die Programmiersprache C Marcel Arndt arndt@ins.uni-bonn.de Institut für Numerische Simulation Universität Bonn Der Anfang Ein einfaches Programm, das Hello World! ausgibt: #include

Mehr

Kommentierte Musterlösung zur Klausur HM I für Naturwissenschaftler

Kommentierte Musterlösung zur Klausur HM I für Naturwissenschaftler Kommentierte Musterlösung zur Klausur HM I für Naturwissenschaftler Wintersemester 3/4 (.3.4). (a) Für z = + i und z = 3 4i berechne man z z und z z. Die Ergebnisse sind in kartesischer Form anzugeben.

Mehr

13. Lineare DGL höherer Ordnung. Eine DGL heißt von n-ter Ordnung, wenn Ableitungen y, y, y,... bis zur n-ten Ableitung y (n) darin vorkommen.

13. Lineare DGL höherer Ordnung. Eine DGL heißt von n-ter Ordnung, wenn Ableitungen y, y, y,... bis zur n-ten Ableitung y (n) darin vorkommen. 13. Lineare DGL höherer Ordnung. Eine DGL heißt von n-ter Ordnung, wenn Ableitungen y, y, y,... bis zur n-ten Ableitung y (n) darin vorkommen. Sie heißt linear, wenn sie die Form y (n) + a n 1 y (n 1)

Mehr

Kurzeinführung in GNUPLOT

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

Mehr

Numerische Datentypen. Simon Weidmann

Numerische Datentypen. Simon Weidmann Numerische Datentypen Simon Weidmann 08.05.2014 1 Ganzzahlige Typen 1.1 Generelles Bei Datentypen muss man immer zwei elementare Eigenschaften unterscheiden: Zuerst gibt es den Wertebereich, zweitens die

Mehr

Python ist leicht zu erlernen, unterstützt mehrere Programmierparadigmen und ist klar strukturiert.

Python ist leicht zu erlernen, unterstützt mehrere Programmierparadigmen und ist klar strukturiert. 1 Einführung In diesem Kapitel wird die moderne Programmiersprache Python vorgestellt. Nach einigen Bemerkungen zur Installation dieser Sprache wird gezeigt, wie Python interaktiv ausgeführt werden kann.

Mehr

Gleichungen Lösen. Ein graphischer Blick auf Gleichungen

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

Mehr

syntax.tex Eine Übersicht

syntax.tex Eine Übersicht syntax.tex Eine Übersicht Bernd Worsch 7. Juli 1997 Inhaltsverzeichnis 1 Einleitung 1 2 Bevor es funktioniert... 1 3 Grundelemente von syntax.tex 1 4 Strukturelemente von syntax.tex 3 5 Setzen von Syntaxdiagrammen

Mehr

Statistisches Programmieren

Statistisches Programmieren Statistisches Programmieren Session 1 1 Was ist R R ist eine interaktive, flexible Software-Umgebung in der statistische Analysen durchgeführt werden können. Zahlreiche statistische Funktionen und Prozeduren

Mehr

Taylorentwicklung der k ten Dimension

Taylorentwicklung der k ten Dimension Taylorentwicklung der k ten Dimension 1.) Taylorentwicklung... 2 1.1.) Vorgehenesweise... 2 1.2.) Beispiel: f ((x, y)) = e x2 +y 2 8x 2 4y 4... 3 2.) Realisierung des Algorithmus im CAS Sage Math... 5

Mehr

Numerische Integration

Numerische Integration Numerische Integration Die einfachste Anwendung des Integrals ist wohl die Beantwortung der Frage nach der Fläche zwischen dem Graphen einer Funktion und der Achse über einem gegebenen Intervall ('Quadraturaufgabe').

Mehr

Grundlagen der Informatik. Prof. Dr. Stefan Enderle NTA Isny

Grundlagen der Informatik. Prof. Dr. Stefan Enderle NTA Isny Grundlagen der Informatik Prof. Dr. Stefan Enderle NTA Isny 2 Datenstrukturen 2.1 Einführung Syntax: Definition einer formalen Grammatik, um Regeln einer formalen Sprache (Programmiersprache) festzulegen.

Mehr

Computer und Software 1

Computer und Software 1 omputer und oftware 1 hristof Köhler 7. aple Programmieren Folien: alint Aradi Details zu den Klausuren Die Klausuren finden am 11. bzw. 12. ärz statt. Die genaue Einteilung erfolgt nach dem 31. Januar

Mehr

Arbeiten mit Excel. 1. Allgemeine Hinweise

Arbeiten mit Excel. 1. Allgemeine Hinweise 1. Allgemeine Hinweise Man sollte eine Excel Tabelle immer so übersichtlich wie möglich halten. Dazu empfiehlt es sich, alle benötigten Daten, Konstanten und Messwerte inklusive aller dazugehörigen Einheiten

Mehr

Tutorium zur Makroökonomik

Tutorium zur Makroökonomik Universität Ulm 89069 Ulm Germany Dipl. WiWi. Sabrina Böck Institut für Wirtschaftspolitik Fakultät für Mathematik und Wirtschaftswissenschaften Ludwig-Erhard-Stiftungsprofessur Tutorium zur Makroökonomik

Mehr

Visual Basic Basisbefehle Hinweis: Der Text in eckigen Klammern [ ] ist variabel, z.b. [var] => 5.3. Eckige Klammern sind stets wegzulassen!

Visual Basic Basisbefehle Hinweis: Der Text in eckigen Klammern [ ] ist variabel, z.b. [var] => 5.3. Eckige Klammern sind stets wegzulassen! Visual Basic Basisbefehle Hinweis: Der Text in eckigen Klammern [ ] ist variabel, z.b. [var] => 5.3. Eckige Klammern sind stets wegzulassen! Grundstrukturen: Sub [name]([übergabe]) End Sub [Übergabe] ist

Mehr

Man kann zeigen (durch Einsetzen: s. Aufgabenblatt, Aufgabe 3a): Die Lösungsgesamtheit von (**) ist also in diesem Fall

Man kann zeigen (durch Einsetzen: s. Aufgabenblatt, Aufgabe 3a): Die Lösungsgesamtheit von (**) ist also in diesem Fall 4. Lösung einer Differentialgleichung. Ordnung mit konstanten Koeffizienten a) Homogene Differentialgleichungen y'' + a y' + b y = 0 (**) Ansatz: y = e µx, also y' = µ e µx und y'' = µ e µx eingesetzt

Mehr

Modul 122 VBA Scribt.docx

Modul 122 VBA Scribt.docx Modul 122 VBA-Scribt 1/5 1 Entwicklungsumgebung - ALT + F11 VBA-Entwicklungsumgebung öffnen 2 Prozeduren (Sub-Prozeduren) Eine Prozedur besteht aus folgenden Bestandteilen: [Private Public] Sub subname([byval

Mehr

Werkstatt Euler und die Lösung der quadratischen Gleichung

Werkstatt Euler und die Lösung der quadratischen Gleichung Werkstatt Leonhard Euler und die Lösung der quadratischen Gleichungen Im Jahr 1767 hat der Mathematiker Leonhard Euler (1707 1783) das Buch Vollständige Anleitung zu Algebra im russischen Original veröffentlicht,

Mehr

Mathematikaufgaben zur Vorbereitung auf das Studium

Mathematikaufgaben zur Vorbereitung auf das Studium Hochschule für Technik und Wirtschaft Dresden (FH) Fachbereich Informatik/Mathematik Mathematikaufgaben zur Vorbereitung auf das Studium Studiengänge Informatik Medieninformatik Wirtschaftsinformatik Wirtschaftsingenieurwesen

Mehr

Optimalitätskriterien

Optimalitätskriterien Kapitel 4 Optimalitätskriterien Als Optimalitätskriterien bezeichnet man notwendige oder hinreichende Bedingungen dafür, dass ein x 0 Ω R n Lösung eines Optimierungsproblems ist. Diese Kriterien besitzen

Mehr

CAS-Ansicht Computer Algebra System & Cas spezifische Befehle

CAS-Ansicht Computer Algebra System & Cas spezifische Befehle CAS-Ansicht Computer Algebra System & Cas spezifische Befehle GeoGebra Workshop Handout 10 1 1. Einführung in die GeoGebra CAS-Ansicht Die CAS-Ansicht ermöglicht die Verwendung eines CAS (Computer Algebra

Mehr

Programmierkurs: Delphi: Einstieg

Programmierkurs: Delphi: Einstieg Seite 1 von 6 Programmierkurs: Delphi: Einstieg Aus Wikibooks Inhaltsverzeichnis 1 Einstieg Einstieg Was ist Delphi Borland Delphi ist eine RAD-Programmierumgebung von Borland. Sie basiert auf der Programmiersprache

Mehr

13 OOP MIT DELPHI. Records und Klassen Ein Vergleich

13 OOP MIT DELPHI. Records und Klassen Ein Vergleich 13 OOP MIT DELPHI Delphi war früher "Object Pascal". Dieser Name impliziert eine Funktionalität, welche in der Welt der Programmierung nicht mehr wegzudenken ist: die objektorientierte Programmierung,

Mehr

JOHANNES BONNEKOH. Analysis. Allgemeine Hochschulreife und Fachabitur

JOHANNES BONNEKOH. Analysis. Allgemeine Hochschulreife und Fachabitur JOHANNES BONNEKOH Analysis Allgemeine Hochschulreife und Fachabitur Vorwort Vorwort Mathematik ist eine Sprache, die uns hilft die Natur und allgemeine naturwissenschaftliche Vorgänge zu beschreiben. Johannes

Mehr

Didaktik der Algebra Jürgen Roth Didaktik der Algebra 4.1

Didaktik der Algebra Jürgen Roth Didaktik der Algebra 4.1 Didaktik der Algebra 4.1 Didaktik der Algebra Didaktik der Algebra 4.2 Inhalte Didaktik der Algebra 1 Ziele und Inhalte 2 Terme 3 Funktionen 4 Gleichungen Didaktik der Algebra 4.3 Didaktik der Algebra

Mehr

Versuchsauswertung mit Polynom-Regression in Excel

Versuchsauswertung mit Polynom-Regression in Excel Versuchsauswertung mit Polynom-Regression in Excel Aufgabenstellung: Gegeben sei die in Bild 1 gezeigte Excel-Tabelle mit Messwertepaaren y i und x i. Aufgrund bekannter physikalischer Zusammenhänge wird

Mehr

SOI 2013. Die Schweizer Informatikolympiade

SOI 2013. Die Schweizer Informatikolympiade SOI Die Schweizer Informatikolympiade Lösung SOI Wie schreibe ich eine gute Lösung? Bevor wir die Aufgaben präsentieren, möchten wir dir einige Tipps geben, wie eine gute Lösung für die theoretischen

Mehr

2 Einfache Rechnungen

2 Einfache Rechnungen 2 Einfache Rechnungen 2.1 Zahlen Computer, auch bekannt als Rechner, sind sinnvoller eingesetzt, wenn sie nicht nur feste Texte ausgeben, sondern eben auch rechnen. Um das Rechnen mit Zahlen zu verstehen,

Mehr

4 Codierung nach Viginere (Lösung)

4 Codierung nach Viginere (Lösung) Kapitel 4 Codierung nach Viginere (Lösung) Seite 1/14 4 Codierung nach Viginere (Lösung) 4.1 Einführung Blaise de Vigenère lebte von 1523 bis 1596 in Frankreich und war nach dem Studium bei verschiedenen

Mehr

Eine kurze Einführung in scilab

Eine kurze Einführung in scilab Eine kurze Einführung in scilab 1.5 1 0.5 0 0.5 1 1.5 1.5 1 0.5 0 0.5 1 von Dr. Werner E. Schabert April 2009 Version 3.1 Universität Augsburg Inhaltsverzeichnis 1 Rechenoperationen und mathematische

Mehr

Integration von Schülerinnen und Schülern mit einer Sehschädigung an Regelschulen. Didaktikpool

Integration von Schülerinnen und Schülern mit einer Sehschädigung an Regelschulen. Didaktikpool Integration von Schülerinnen und Schülern mit einer Sehschädigung an Regelschulen Didaktikpool Taschenrechner für sehgeschädigte Schülerinnen und Schüler Norbert Briezke-Schäfer, Stephanie Löbbing 2010

Mehr

1.4.12 Sin-Funktion vgl. Cos-Funktion

1.4.12 Sin-Funktion vgl. Cos-Funktion .4. Sgn-Funktion Informatik. Semester 36 36.4.2 Sin-Funktion vgl. Cos-Funktion Informatik. Semester 37 37 .4.3 Sqr-Funktion Informatik. Semester 38 38.4.4 Tan-Funktion Informatik. Semester 39 39 .5 Konstanten

Mehr

Mögliche Prüfungsfragen zu VO Mathematische Software

Mögliche Prüfungsfragen zu VO Mathematische Software Mögliche Prüfungsfragen zu VO Mathematische Software SS 2009 Der Prüfungsstoff umfasst alles, was in der Vorlesung vorgetragen wurde. Die folgende Liste soll Ihnen bei der Vorbereitung helfen. Bei der

Mehr

Der Aufruf von DM_in_Euro 1.40 sollte die Ausgabe 1.40 DM = 0.51129 Euro ergeben.

Der Aufruf von DM_in_Euro 1.40 sollte die Ausgabe 1.40 DM = 0.51129 Euro ergeben. Aufgabe 1.30 : Schreibe ein Programm DM_in_Euro.java zur Umrechnung eines DM-Betrags in Euro unter Verwendung einer Konstanten für den Umrechnungsfaktor. Das Programm soll den DM-Betrag als Parameter verarbeiten.

Mehr

MINT-Circle-Schülerakademie

MINT-Circle-Schülerakademie 1 Einführung MINT-Circle-Schülerakademie Kurze Einführung, was Maple ist, wozu es dienen kann, wo es verwendet wird. Zur Einführung die folgenden Aufgaben bearbeiten lassen. Aufgabe 1. Gib unter Maple

Mehr

Access [basics] Programmieren mit Arrays. Beispieldatenbank. Arrays. Eindimensionale Arrays. VBA-Grundlagen Programmieren mit Arrays

Access [basics] Programmieren mit Arrays. Beispieldatenbank. Arrays. Eindimensionale Arrays. VBA-Grundlagen Programmieren mit Arrays Dass Sie unter Access Daten in Tabellen speichern und gezielt darauf zugreifen können, wissen Sie als Access [basics]-leser schon längst. Aber was, wenn Sie nur ein paar gleichartige Daten zwischenspeichern

Mehr

Betragsgleichungen und die Methode der Fallunterscheidungen

Betragsgleichungen und die Methode der Fallunterscheidungen mathe online Skripten http://www.mathe-online.at/skripten/ Betragsgleichungen und die Methode der Fallunterscheidungen Franz Embacher Fakultät für Mathematik der Universität Wien E-mail: franz.embacher@univie.ac.at

Mehr

Einführung in QtiPlot

Einführung in QtiPlot HUWagner und Julia Bek Einführung in QtiPlot 1/11 Einführung in QtiPlot Mit Bezug auf das Liebig-Lab Praktikum an der Ludwig-Maximilians-Universität München Bei Fragen und Fehlern: jubech@cup.lmu.de Inhaltsverzeichnis

Mehr

Reihungen. Martin Wirsing. in Zusammenarbeit mit Matthias Hölzl und Nora Koch 11/03

Reihungen. Martin Wirsing. in Zusammenarbeit mit Matthias Hölzl und Nora Koch 11/03 Reihungen Martin Wirsing in Zusammenarbeit mit Matthias Hölzl und Nora Koch 11/03 2 Ziele Die Datenstruktur der Reihungen verstehen: mathematisch und im Speicher Grundlegende Algorithmen auf Reihungen

Mehr

Vorkurs Mathematik Übungen zu Differentialgleichungen

Vorkurs Mathematik Übungen zu Differentialgleichungen Vorkurs Mathematik Übungen zu Differentialgleichungen Als bekannt setzen wir die folgenden Umformungen voraus: e ln(f(x)) = f(x) e f(x)+c = e f(x) e c e ln(f(x)) +c = f(x) e c = f(x) c f ( g(x) ) g (x)

Mehr

Java Einführung VARIABLEN und DATENTYPEN Kapitel 2

Java Einführung VARIABLEN und DATENTYPEN Kapitel 2 Java Einführung VARIABLEN und DATENTYPEN Kapitel 2 Inhalt dieser Einheit Variablen (Sinn und Aufgabe) Bezeichner Datentypen, Deklaration und Operationen Typenumwandlung (implizit/explizit) 2 Variablen

Mehr

C# Tutorial Part 1. Inhalt Part 1. Einleitung. Vorbereitung. Eagle Eye Studios. Einleitung Vorbereitung Das erste Projekt

C# Tutorial Part 1. Inhalt Part 1. Einleitung. Vorbereitung. Eagle Eye Studios. Einleitung Vorbereitung Das erste Projekt Eagle Eye Studios C# Tutorial Part 1 Inhalt Part 1 Einleitung Vorbereitung Das erste Projekt Einleitung Wer sich mit dem Programmieren schon einigermaßen auskennt, kann diesen Abschnitt überspringen. Programmieren,

Mehr

2. Grundlagen der technischen Software - Beispiel: MathCAD 2.1 Einführung 2.2 Grundlagen an Beispielen

2. Grundlagen der technischen Software - Beispiel: MathCAD 2.1 Einführung 2.2 Grundlagen an Beispielen Gliederung 2. Grundlagen der technischen Software - Beispiel: MathCAD 2.1 Einführung 2.2 Grundlagen an Beispielen 2.1 Einführung 2-01 MathCAD im Überblick Taschenrechner für numerische Berechnungen Industriestandard-Rechensoftware

Mehr

VisualBasic - Variablen

VisualBasic - Variablen Typisch für alle Basic-Dialekte ist die Eigenschaft, dass Variablen eigentlich nicht deklariert werden müssen. Sobald Sie einen Bezeichner schreiben, der bisher nicht bekannt war, wird er automatisch angelegt

Mehr

Programmieren in C. Operatoren, Variablen und deren Sichtbarkeit. Prof. Dr. Nikolaus Wulff

Programmieren in C. Operatoren, Variablen und deren Sichtbarkeit. Prof. Dr. Nikolaus Wulff Programmieren in C Operatoren, Variablen und deren Sichtbarkeit Prof. Dr. Nikolaus Wulff Auswertung von Ausdrücken Was passiert wenn ein Ausdruck wie z. B. int y,x=2; y = ++x * x++; im Computer abgearbeitet

Mehr

Elemente der Analysis II

Elemente der Analysis II Elemente der Analysis II Kapitel 3: Lineare Abbildungen und Gleichungssysteme Informationen zur Vorlesung: http://www.mathematik.uni-trier.de/ wengenroth/ J. Wengenroth () 15. Mai 2009 1 / 35 3.1 Beispiel

Mehr

Dokumentation. Gnuplot

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

Mehr

GeoGebra Quickstart Eine Kurzanleitung für GeoGebra

GeoGebra Quickstart Eine Kurzanleitung für GeoGebra GeoGebra Quickstart Eine Kurzanleitung für GeoGebra Dynamische Geometrie, Algebra und Analysis ergeben GeoGebra, eine mehrfach preisgekrönte Unterrichtssoftware, die Geometrie und Algebra als gleichwertige

Mehr

Analysis. mit dem Computer-Algebra-System des TI-92. Anhang 2: Gedanken zum Lehrplan. Beat Eicke und Edmund Holzherr 11.

Analysis. mit dem Computer-Algebra-System des TI-92. Anhang 2: Gedanken zum Lehrplan. Beat Eicke und Edmund Holzherr 11. ETH EIDGENÖSSISCHE TECHNISCHE HOCHSCHULE ZÜRICH Analysis mit dem Computer-Algebra-System des TI-92 Anhang 2: Gedanken zum Lehrplan Beat Eicke und Edmund Holzherr 11. November 1997 Eidgenössische Technische

Mehr

Excel-Anleitung zur Übung 1. Formeln in Excel (Auszug aus der MS Excel Hilfe)

Excel-Anleitung zur Übung 1. Formeln in Excel (Auszug aus der MS Excel Hilfe) Excel-Anleitung zur Übung 1 Diese Unterlage bezieht sich auf Excel 2003 (auf Deutsch), die Version, die auch im PC-Labor des WWZ zur Verfügung steht. Die Benutzeroberfläche kann in anderen Versionen der

Mehr

1. Allgemeine Hinweise Alexander.Martin.Koenig@TU-Clausthal.de

1. Allgemeine Hinweise Alexander.Martin.Koenig@TU-Clausthal.de 1. Allgemeine Hinweise Alexander.Martin.Koenig@TU-Clausthal.de Man sollte eine Excel-Tabelle immer so übersichtlich wie möglich halten. Dazu empfiehlt es sich, alle benötigten Daten, Konstanten und Messwerte

Mehr

Objektorientierte Programmierung. Kapitel 3: Syntaxdiagramme und Grammatikregeln

Objektorientierte Programmierung. Kapitel 3: Syntaxdiagramme und Grammatikregeln Stefan Brass: OOP (Java), 3. Syntaxdiagramme und Grammatikregeln 1/32 Objektorientierte Programmierung Kapitel 3: Syntaxdiagramme und Grammatikregeln Stefan Brass Martin-Luther-Universität Halle-Wittenberg

Mehr

Rechnerpraktikum zur Optimierung III

Rechnerpraktikum zur Optimierung III TU München Lehrstuhl Mathematische Optimierung Prof. Dr. M. Ulbrich Dipl.-Math. Florian Lindemann Sommersemester 2007 Teil I Rechnerpraktikum zur Optimierung III P1. Durchhängenes Seil Die senkrechten

Mehr

3 Variablen. 3.1 Allgemeines. 3.2 Definition und Verwendung von Variablen

3 Variablen. 3.1 Allgemeines. 3.2 Definition und Verwendung von Variablen 3 Variablen 3.1 Allgemeines Variablen werden in Prozeduren, Mustern und Parameter-Dokumenten definiert und verwendet und bei der Jobgenerierung durch die Werte, die ihnen zugewiesen werden, ersetzt. Variablen

Mehr

Kompilieren und Linken

Kompilieren und Linken Kapitel 2 Kompilieren und Linken Bevor wir uns auf C++ selbst stürzen, brauchen wir einiges Vorgeplänkel, wie man komfortabel ein größeres C++- kompilieren kann. Mit Java stellt sich der Kompiliervorgang

Mehr

Die Bedeutung abstrakter Datentypen in der objektorientierten Programmierung. Klaus Kusche, September 2014

Die Bedeutung abstrakter Datentypen in der objektorientierten Programmierung. Klaus Kusche, September 2014 Die Bedeutung abstrakter Datentypen in der objektorientierten Programmierung Klaus Kusche, September 2014 Inhalt Ziel & Voraussetzungen Was sind abstrakte Datentypen? Was kann man damit grundsätzlich?

Mehr

Objektorientiertes Programmieren für Ingenieure

Objektorientiertes Programmieren für Ingenieure Uwe Probst Objektorientiertes Programmieren für Ingenieure Anwendungen und Beispiele in C++ 18 2 Von C zu C++ 2.2.2 Referenzen und Funktionen Referenzen als Funktionsparameter Liefert eine Funktion einen

Mehr

Mathematische Grundlagen 2. Termrechnen

Mathematische Grundlagen 2. Termrechnen Inhaltsverzeichnis: 2. Termrechnen... 2 2.1. Bedeutung von Termen... 2 2.2. Terme mit Variablen... 4 2.3. Vereinfachen von Termen... 5 2.3.1. Zusammenfassen von gleichartigen Termen... 5 2.3.2. Vereinfachen

Mehr