Size: 1212
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 ein interaktives Frage-Antwort Spiel zur Eingabe von Rechenbefehlen gibt. Es werden Objekte im Speicher erzeugt über die mittels Variablennamen zugegriffen wird. Diese Objekte können dann für Berechnungen verwendet werden. | * ZZ = * QQ = * symbolische Variable: x = var('x') |
Line 7: | Line 11: |
Eingaben werden im Notebook mit <Shift>-<Return> ausgeführt, in der Kommandozeile reicht ein <Return>. | === Ringe, Gruppen und Körper === Da Sage eine Betonung auf algebraische Objekte hat, sind diese ähnlich wie in Magma vertreten: |
Line 9: | Line 14: |
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 (dies ist also keine Gleichung (!) ) 1. x gibt nun den Wert 10 aus. |
* 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 |
Line 14: | Line 17: |
=== Hilfe === Jedem Befehl kann ein "?" hinten angefügt werden, welches Informationen über Funktionsweise und Bedienung ausgibt. |
=== Konstanten === * pi = * e = * oo = |
Line 17: | Line 23: |
Beispiel: * factor? erklärt, wie der Befehl zum Faktorisieren benützt werden soll. |
=== Ausdrücke === |
Line 20: | Line 25: |
=== automatische Vervollständigung === Die Eingabe von Berechnungen wird vereinfacht, indem: * bei teilweise eingegebene Befehle nach dem drücken der <Tab>-Taste eine Liste von möglichen Kandidaten mit diesen Anfangsbuchstaben ausgegeben werden * bei Variablen oder Objekten |
* 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]) |
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])