Size: 1240
Comment:
|
← Revision 13 as of 2014-07-25 07:31:24 ⇥
Size: 2043
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
= Einführung in die Bedienung von Sage = | #language de = Kurzreferenz der wichtigsten Befehle = Eine Übersicht besonders häufig benötigter Befehle: |
Line 3: | Line 5: |
== Prinzipien == | === Typen === |
Line 5: | Line 7: |
Sage folgt der Tradition aller CAS (Computer-Algebra-System) der zweiten Generation. Das heißt, dass es eine interaktive Eingabe von Befehlen gibt, die Objekte im Speicher erzeugen. Diese Objekte können dann für Berechnungen verwendet werden. | * ZZ = * QQ = * symbolische Variable: x = var('x') |
Line 7: | Line 11: |
Beispiel: 1. x = 5 weist der Variablen x den Wert 5 zu 1. x = 2*x multipliziert 2 mit x und speichert dies wieder in x (diest ist also keine Gleichung (!) ) 1. x gibt nun den Wert 10 aus. |
=== Ringe, Gruppen und Körper === Da Sage eine Betonung auf algebraische Objekte hat, sind diese ähnlich wie in Magma vertreten: * GF(p) = endlicher (Galois) Körper über p * PolynomialRing: Ring der Polynome - zum Beispiel definiert R.<x,y> = PolynomialRing(QQ,2) implizit die Variablen x und y, aus denen sich nun Polynome über === Konstanten === * pi = * e = * oo = === Ausdrücke === * Operanden: +, -, *, /, sin, cos, tan, exp, sqrt, ... === grundlegende Strukturen === * Listen: [ a, b, ... ] * Reihen (Python: "sequence"): (a,b,c...) ... diese sind im Gegensatz zu Listen unveränderlich, mit zwei Elementen sind es "Tupel" * Mengen: {a, b, c, ...} * eine assoziative Liste: { 0: [1,2], 1: [2,1], 2: [0,1,3]}, 3: [1] } ... wobei dies hier bedeutet, dass das Element 0 mit 1 und 2 verbunden ist, 1 mit 2 und 1, usw. - diese wird zum Beispiel bei der Konstruktion von Graphen benötigt. * Vektor: vector([a,b,c,...]) * Matrix: matrix([a,b,c,...]) === grundlegende Funktionen === * numerische Approximation: pi.n(digits=15) = 3.141592... * verallgemeinerte Funktion: lambda x: f(x) * Lösen von Gleichungen: solve(f(x)==0,x) * Grenzwert: limit(f(x),x=oo) * Differenzieren: diff(f(x),x) * Integrieren: integral(f(x),x) bzw. bestimmt von a bis b: integral(f(x),x,a,b) Diese Funktionen können generell auch auf Ausdrücke in Form von Variablen wirken: Beispiel: wenn f eine Funktion ist, dann ist f.diff(x) exakt gleich wie diff(f,x) * Nullstellen: find_root(f(x), a, b) === Plotten === Es gibt einen Unterschied zwischen Plot-Objekt und Darstellung: * 2D: P = plot(f(x),-4,4) ... ist der Plot * P.show() ... ist die Darstellung * 3D Plot: plot3d(f(x,y),[-2,2],[-3,3]) |
Line 13: | Line 59: |
Wenn man nach dem Sage-Prompt "faktor(100)" (Enter) schreibt, gibt Sage die Primfaktorzerlegung von 100 aus. Gibt man "factor??" (Enter) ein, wird der Quellcode der Funktion factor angegezeigt. Wird Strg-d gedrückt (die "Strg" Taste und das "d" gleichzeitig halten) oder "quit" (Enter) eingegeben, wird Sage beeendet. Um die gleiche Berechnung im Notebook zu machen, schreibt man "factor(100)" in eine "Zelle" (ein leeres weißes Fenster im Webbrowser) und drückt dann Shift-Enter. Sage wird die Faktorisierung im Bereich unter der Eingabezelle anzeigen. Um das Notebook zu beenden, muss auf der der Kommandozeile Strg-C eingegeben werden. Wenn dann der Browser beendet wird, ist das Sage Notebook vollständig geschlossen. |
Kurzreferenz der wichtigsten Befehle
Eine Übersicht besonders häufig benötigter Befehle:
Typen
ZZ =
Z QQ =
Q - symbolische Variable: x = var('x')
Ringe, Gruppen und Körper
Da Sage eine Betonung auf algebraische Objekte hat, sind diese ähnlich wie in Magma vertreten:
- GF(p) = endlicher (Galois) Körper über p
PolynomialRing: Ring der Polynome - zum Beispiel definiert R.<x,y> = PolynomialRing(QQ,2) implizit die Variablen x und y, aus denen sich nun Polynome über
Q konstruieren lassen.
Konstanten
pi =
π e =
e oo =
∞
Ausdrücke
- Operanden: +, -,
- , /, sin, cos, tan, exp, sqrt, ...
grundlegende Strukturen
- Listen: [ a, b, ... ]
- Reihen (Python: "sequence"): (a,b,c...) ... diese sind im Gegensatz zu Listen unveränderlich, mit zwei Elementen sind es "Tupel"
- Mengen: {a, b, c, ...}
- eine assoziative Liste: { 0: [1,2], 1: [2,1], 2: [0,1,3]}, 3: [1] } ... wobei dies hier bedeutet, dass das Element 0 mit 1 und 2 verbunden ist, 1 mit 2 und 1, usw. - diese wird zum Beispiel bei der Konstruktion von Graphen benötigt.
- Vektor: vector([a,b,c,...])
- Matrix: matrix([a,b,c,...])
grundlegende Funktionen
- numerische Approximation: pi.n(digits=15) = 3.141592...
- verallgemeinerte Funktion: lambda x: f(x)
- Lösen von Gleichungen: solve(f(x)==0,x)
- Grenzwert: limit(f(x),x=oo)
- Differenzieren: diff(f(x),x)
- Integrieren: integral(f(x),x) bzw. bestimmt von a bis b: integral(f(x),x,a,b)
Diese Funktionen können generell auch auf Ausdrücke in Form von Variablen wirken: Beispiel: wenn f eine Funktion ist, dann ist f.diff(x) exakt gleich wie diff(f,x)
- Nullstellen: find_root(f(x), a, b)
Plotten
Es gibt einen Unterschied zwischen Plot-Objekt und Darstellung:
- 2D: P = plot(f(x),-4,4) ... ist der Plot
- P.show() ... ist die Darstellung
- 3D Plot: plot3d(f(x,y),[-2,2],[-3,3])