Wenn es darum geht, die mathematische Gleichung in Linux zu lösen, haben wir zuvor mit GeoGebra, einer Software für Geometrie und 2D-Graphen, gesprochen. Wenn Sie jedoch nach leistungsfähigeren Tools suchen, sollten Sie Sage ausprobieren. Wir haben alle von Matlab oder Magma gehört, aber Sage bietet eine Open-Source-Alternative zu diesen beiden und ist meiner Meinung nach einfacher zu benutzen.

Installation

Sage ist immer stark entwickelt, was bedeutet, dass neue Erweiterungen sehr häufig hinzugefügt werden. Um es von der Quelle zu installieren:

Zuerst müssen Sie einige Abhängigkeiten erfüllen.

 sudo apt-get installieren build-essential m4 gfortran libssl-dev dpkg-dev 

Sie können dann die Quellen von der offiziellen Seite herunterladen. Entpacken Sie sie und starten Sie das Skript von einem Terminal

 ./machen 

Hinweis : Sie benötigen ca. 3 GB freien Speicherplatz, damit Sage ordnungsgemäß funktioniert. Stellen Sie sicher, dass Sie sie haben, bevor Sie die Kompilation starten (was einige Zeit dauern wird).

Wenn Sie die binäre Version bevorzugen, gibt es auch eine PPA für Ubuntu:

 sudo apt-add-repository -y ppa: ziele / sagemath sudo apt-get aktualisieren sudo apt-get installieren sagemath-upstream-binary 

Sie können auch alle optionalen Pakete installieren:

 sudo apt-get installieren texlive evince xpdf xdvi tk8.5-dev 

Verwendung

Um Sage zu starten, können Sie dies mit dem Befehl tun

 ./Salbei 

aus dem heruntergeladenen Verzeichnis.

Wenn Sie Salbei von überall aus starten möchten, können Sie eine symbolische Verknüpfung mit erstellen

 ln -s [Pfad zum Salbeiwerfer] / usr / local / bin / sage 

oder mache sogar einen Alias ​​in deiner ~ / .bashrc-Datei, wie ich es getan habe:

 alias salbei = / home / adrien / sage-5.2 / sage 

Sage ist standardmäßig ein nicht grafisches Werkzeug. Beim Start sollten Sie so etwas bekommen

Sie haben dann die Wahl: Fahren Sie mit der Konsole fort oder wählen Sie die browserbasierte GUI durch Eingabe von

 Notizbuch() 

Beide sind hinsichtlich der Funktionalität ziemlich gleichwertig. Die GUI ist intuitiver, insbesondere für Plots und Graphen, aber das Terminal funktioniert auch ziemlich gut. Versuchen Sie den Befehl mit der GUI

 Kreis ((0, 0), 1, rgbFarbe = (1, 1, 0)) 

Sie werden einen gelben Kreis darunter sehen.

Wenn Sie das Gleiche in der Konsole tun, wird Ihr Standard-Bildbetrachter geöffnet und zeigt den gleichen Kreis.

Hinweis : Sowohl die Benutzeroberfläche als auch die Konsole verfügen über eine Funktion zur automatischen Vervollständigung.

Jetzt, da Sie sich für die Benutzeroberfläche von sage entschieden haben, können wir über die Funktionen selbst sprechen. Salbei ist absolut riesig, und ich meine es ernst. Es gibt einfach keine Möglichkeit, dass wir jeden Aspekt in einem Artikel diskutieren können. Stattdessen zeige ich Ihnen einige häufige Anwendungen, die Sie vielleicht ausprobieren möchten.

1. Rechner

Ja, Sage kann einige grundlegende Mathematik machen. Addition, Multiplikation usw. Da es hauptsächlich in Python geschrieben wird, können Sie auch die Python-Syntax verwenden, um Dinge wie Integer-Division zu tun.

2. Polynomwurzeln

Es ist ziemlich üblich, ein Polynom zu erhalten und nach seinen Wurzeln zu fragen. Mit Sage erzeugen Sie zuerst einen Polynomring mit

 P.  = PolynomialRing (RR) 

wo x wird der Generator, und RR steht für die reellen Zahlen. Wenn Sie möchten, dass Ihr Ring über den rationalen Zahlen liegt, ersetzen Sie RR durch QQ. Sie kopieren dann Ihr Polynom:

 t = x ^ 2 - 25 

Und dann fragst du nach den Wurzeln

 t.roots () 

Hinweis : Dadurch werden die Wurzeln im Basisring des Polynoms und ihre Multiplizitäten zurückgegeben. Wenn Sie möchten, dass die Wurzeln von einem anderen Basisring stammen, geben Sie dies als Argument für die Funktion roots () an.

3. Matrix invers

Wenn Sie ein wenig in den Handel oder in die Wirtschaft gehen, haben Sie vielleicht irgendwann in Ihrem Leben Matrizen gesehen. Im Allgemeinen gibt es einen ganzen Prozess, um die Inversen dieser Matrizen zu finden. Nun, Sage macht es sehr einfach für dich. Erstellen Sie Ihre Matrix über den Basisring, den Sie möchten.

 m = Matrix (QQ, [[1, 2], [3, 4]]) 

Und nach dem Gegenteil suchen:

 m.inverse () 

4. Grafiken

Sage hat auch einige Grafikfähigkeiten. Zuvor zeichnen wir einen Kreis mit

 Kreis ((0, 0), 1, rgbFarbe = (1, 1, 0)) 

Ich bin mir ziemlich sicher, dass Sie verstanden haben, dass der erste Parameter der Mittelpunkt des Kreises war, der zweite der Radius und der letzte die Farbe des Kreises im RGB-Standard. Nun, Sie können auch Grundfunktionen plotten, indem Sie zuerst eine Variable deklarieren:

 x = var ('x') 

Und dann benutze die plot () Funktion:

 Diagramm (x ^ 3, (-10, 10)) 

Das erste Argument ist die Funktionsgleichung, das zweite ist die Spanne. Hier habe ich nach der kubischen Funktion gefragt, die auf dem x-Plot von -10 bis 10 angezeigt wird.

Hinweis : Wenn Sie Jmol installiert haben, können Sie sogar 3D-Diagramme erstellen, indem Sie zwei Variablen deklarieren

 x, y = var ('x, y') 

Und dann benutze die Funktion plot3d ():

 plot3d (x ^ 2 + y ^ 2, (x, -2, 2), (y, -2, 2)) 

5. Lösen von Gleichungen

Manchmal wollen wir eine Lösung für eine Gleichung, aber der Rechner gibt uns nur eine Annäherung. Es ist noch schlimmer, wenn es in dieser Gleichung noch andere Variablen gibt und wir wollen, dass die Lösung in Abhängigkeit von ihnen ausgedrückt wird. In der High School war ich jahrelang dabei, das manuell zu machen. Wie dumm! Sage macht das perfekt. Deklariere alle deine Variablen

 x, a, b, c = var ('xab c') 

Und dann verwende einfach die Funktion solve (), wobei die Gleichung (en) das erste Argument ist und die Variable (n), nach der du ausgedrückt werden möchtest:

 auflösen ([x - 3 * a == 6, x + b * c == 10], x, b) 

Ich wünschte, ich wüsste das schon in der Highschool ...

6. Differenzierung und Integration

Hier ist die ultimative Anwendung, wenn Sie wirklich faul sind. Mit diesem Programm können Sie Funktionen differenzieren und integrieren. Wie üblich, deklariere deine Variablen

 x = var ('x') 

Und dann verwenden Sie entweder die Funktion diff () oder die Funktion integrate ().

 diff (x ^ 3 + 4 * x + 16, x) 

zum Unterscheiden und

 Integral (x ^ 3 + 4 * x + 16, x) 

zum Integrieren.

Fazit

Sage ist wirklich ein unglaubliches Werkzeug. Die Syntax ist schnell zu erlernen und bleibt ziemlich Standard. Der Nachteil ist, dass die Dokumentation wirklich etwas ist, das Sie lesen sollten, um zu verstehen, was Sie wirklich tun können. Die Anwendungen sind so zahlreich, dass sie leicht verloren gehen können. Sie können mit der Kryptographie auch Differentialgleichungen durchführen. Und es wird so spezifisch, dass gerade eine Funktion, das Teilungsfeld von Polynomen über einem endlichen Feld zu finden, in Entwicklung ist (ja, ich habe auch keine Ahnung, was es bedeutet).

Haben Sie noch ein anderes Beispiel? Eine Frage zu Sage? Bitte lassen Sie uns in den Kommentaren wissen.

Bildkredit: Mathe durch großes Foto auf Lager.