SageTeX nutzen#

Das SageTeX Paket ermöglicht es Ihnen die Ergebnisse von Sage Berechnungen direkt in ein LaTeX-Dokument zu setzen. Es wird standardmäßig mit Sage installiert. Um es zu nutzen müssen Sie es lediglich in Ihrem lokalen TeX-System „installieren“, wobei „installieren“ hier eine einzige Datei kopieren bedeutet. Siehe hierfür auch Installation in diesem Tutorial und den Abschnitt „Make SageTeX known to TeX“ des Sage installation guide (dieser Link sollte Sie zu einer lokalen Kopie der Installationsanleitung führen) um weitere Informationen zu erhalten.

Hier stellen wir ein sehr kurzes Beispiel vor wie man SageTeX nutzt. Die komplette Dokumentation finden Sie unter SAGE_ROOT/venv/share/texmf/tex/latex/sagetex, wobei SAGE_ROOT das Installationsverzeichnis von Sage ist. Dieses Verzeichnis enthält die Dokumentation, eine Beispieldatei und einige nützliche Python Skripte.

Um zu sehen wie SageTeX funktioniert, folgen Sie den Anweisungen zur Installation von SageTeX (in Installation) und kopieren Sie den folgenden Text in eine Datei namens - sagen wir st_example.tex:

Warnung

Der folgende Text wird mehrere Fehler bezüglich unbekannten Kontrollsequenzen anzeigen, wenn Sie ihn in der „live“ Hilfe ansehen. Nutzen Sie stattdessen die statische Version um den korrekten Text zu sehen.

\documentclass{article}
\usepackage{sagetex}

\begin{document}

Wenn Sie Sage\TeX nutzen, können Sie Sage nutzen um Dinge auszurechen und
sie direkt in ein \LaTeX{} Dokument zu setzen. Zum Beispiel gibt es
$\sage{number_of_partitions(1269)}$ ganzzahlige Partitionen von $1269$.
Sie müssen die Zahl nicht selbst ausrechnen, oder aus einem anderen
Programm herauskopieren.

Hier ein wenig Sage Code:

\begin{sageblock}
    f(x) = exp(x) * sin(2*x)
\end{sageblock}

Die zweite Ableitung von $f$ ist

\[
  \frac{\mathrm{d}^{2}}{\mathrm{d}x^{2}} \sage{f(x)} =
  \sage{diff(f, x, 2)(x)}.
\]

Hier ein Plot von $f$ von $-1$ bis $1$:

\sageplot{plot(f, -1, 1)}

\end{document}

Lassen Sie LaTeX ganz normal über st_example.tex laufen. Beachten Sie dabei, dass LaTeX sich über einige Dinge beschwert, z.B.:

Package sagetex Warning: Graphics file
sage-plots-for-st_example.tex/plot-0.eps on page 1 does not exist. Plot
command is on input line 25.

Package sagetex Warning: There were undefined Sage formulas and/or
plots. Run Sage on st_example.sage, and then run LaTeX on
st_example.tex again.

Beachten Sie, dass zusätzlich zu den Dateien, die LaTeX normalerweise produziert noch eine Datei st_example.sage erscheint. Das ist das Sage Skript, das erstellt wurde als Sie LaTeX mit st_example.tex aufgerufen haben. Wie Ihnen die Warnmeldung mitteilte sollten Sie Sage über die Datei st_example.sage laufen lassen, also tun Sie das bitte. Ihnen wird gesagt werden, dass Sie LaTeX erneut über die Datei st_example.tex laufen lassen sollen; bevor Sie dies tun beachten Sie, dass eine neue Datei namens st_example.sout von Sage erstellt wurde. Diese Datei enthält die Ergebnisse von Sages Berechnungen in einem Format, das LaTeX nutzen kann um es in Ihren Text einzufügen. Ein neues Verzeichnis mit einer .eps Datei Ihres Plots wurde ebenfalls erstellt. Lassen Sie LaTeX nun erneut laufen, und Sie werden sehen, dass alles was Sage berechnet und geplottet hat nun in Ihrem Dokument erscheint.

Die verschiednenen verwendeten Makros sollten einfach zu verstehen sein. Eine sageblock Umgebung setzt Ihren Code unverändert und führt ihn auch aus wenn Sie Sage laufen lassen. Wenn Sie etwa \sage{foo} schreiben, wird das Ergebnis des Aufrufs latex(foo) (in Sage) in Ihrem Dokument erscheinen. Plot-Befehle sind etwas komplizierter, aber in Ihrer einfachsten Form fügt \sageplot{foo} das Bild ein, das Sie erhalten wenn Sie foo.save('filename.eps') in Sage aufrufen würden.

Grundsätzlich gilt:

  • lassen Sie LaTeX über Ihre .tex Datei laufen;

  • lassen Sie Sage über die neu generierte .sage Datei laufen;

  • lassen Sie LaTeX erneut laufen.

Sie können das Aufrufen von Sage weglassen, wenn Sie keine Änderung an den Sage Befehlen in Ihrem Dokument vorgenommen haben.

Es gibt noch viel mehr über SageTeX zu sagen, aber da sowohl Sage alsauch LaTeX komplexe und mächtige Werkzeuge sind, sollten Sie die Dokumentation über SageTeX in SAGE_ROOT/venv/share/texmf/tex/latex/sagetex lesen.