Mathematische Formeln mit LaTeX

    • Allgemein

      Mathematische Formeln mit LaTeX

      Hallo liebe Community,

      Da nun die
      $\LaTeX$
      -Implementation steht, habe ich mich dazu entschieden dafür eine Einführung zu geben - einerseits in
      $\LaTeX$
      allgemein und andererseits in die Eigenheiten der eingebauten Lösung hier im Forum.

      Was ist LaTeX?
      $\LaTeX$
      ist ein Softwarepaket welches die Benutzung des Textsatzsystemes
      $\TeX$
      vereinfacht, welches wiederum 1986 fertig entwickelt wurde, um längere Texte und wissenschaftliche Arbeiten zu schreiben. Davon wird hier in der Implementierung nur der AMSMath-Bereich benutzt - die Darstellung von mathematischen Formeln - und genau darauf konzentriere ich mich in diesem Tutorial.

      Wie nutzt man LaTeX für mathematische Formeln?
      Befehle setzen sich aus Makros zusammen, die mit Backslashes(\) initiiert werden(Vorsicht: Alles Case-sensitive). Diese werden dann durch die jeweiligen Symbole ersetzt. Beispielsweise wird \LaTeX zu
      $\LaTeX$
      und \TeX zu
      $\TeX$
      . Das
      $\LaTeX$
      -Makro lässt sich noch weiter aufbröseln, denn es besteht aus einer Reihe von Makros, die die Zeichen verschieben und verschieden darstellen:

      TeX-Quellcode

      1. \mathrm{L\!\!^{{}_{\scriptstyle A}} \!\!\!\!\!\;\; T\!_{\displaystyle E} \! X}

      Umformatiert sieht das ganze so aus:

      TeX-Quellcode

      1. \mathrm{
      2. L
      3. \!\!^{
      4. {}_{
      5. \scriptstyle A
      6. }
      7. }
      8. \!\!\!\!\!\;\;
      9. T\!_{
      10. \displaystyle E
      11. }
      12. \!
      13. X
      14. }
      Hier sehen wir gleich, dass
      $\LaTeX$
      die geschweiften Klammern {} nicht als Klammer für die Darstellung sondern für die Argumentübergabe an Makros dient: \Makro{Argument1}{Argument2}... Es gibt auch noch die Möglichkeit, bei Makros Optionen zu übergeben, welche sich leicht von normalen Argumenten unterscheiden: \Makro[Option1, Option2,...]{Argument1}{Argument2}.... Argumente können auch ohne geschweifte Klammer hintenangestellt werden, solange es sich nur um ein Zeichen handelt und dieses kein Buchstabe ist, da dies als ein anderes Makro interpretiert werden könnte(zur Not ist ein Leerzeichen dazwischen erlaubt - Leerzeichen werden übrigens weitestgehend ignoriert, wenn sich nicht mit \ escaped werden.).
      Ich gehe nun jeden Befehl durch und erkläre, was der macht:
      • \mathrm{...} - Wird in einer Formel ein Buchstabe aus dem Alphabet verwendet wird der standardmässig wie eine Variable kursiv geschrieben:
        $aAzZ$
        . Wenn der Buchstabe jedoch wie normaler Text formatiert sein sollte verwendet man \mathrm{...} - Math-Umgebung, Roman. Damit wird der als Argument übergebene Text normal gedruckt:
        $\mathrm{aAzZ}$
        . Es werden auch andere Zeichen im Argument akzeptiert, diese erfahren aber keine Änderung. Es gibt neben \mathrm{...} auch noch andere Makros für verschiedene Formatierungen: \mathfrak{...}(Fraktur):
        $\mathfrak{aAzZ}$
        , \mathbf{...}(Bold):
        $\mathbf{aAzZ}$
        , \mathit{...}(Italics):
        $\mathit{aAzZ}$
        , \mathbb{...}(Blackboard):
        $\mathbb{aAzZ}$
        . Es gibt auch noch \textrm{...}, \textbf{...} und \textit{...}(und noch ein paar weitere) - der Unterschied ist hier nachzulesen.
      • \! - Setzt die Position für das nachfolgende Zeichen um eine Einheit zurück:
        $aa \to a\!a$
        - kumulierbar.
      • ^{...} - Stellt das Argument dem vorangegangenen Zeichen hoch: a^a\ a^{abc} wird zu
        $a^a\ a^{abc}$
        .
      • {} - Wird als leere Einheit interpretiert - nützlich, wenn ein nachfolgendes Makro sich auf das letzte Zeichen bezieht.
      • _{...} - Stellt das Argument dem vorangegangenen Zeichen tief: a_a\ a_{abc} wird zu
        $a_a\ a_{abc}$
        .
      • \scriptstyle{...} - Gehört in die Reihe von \math..{...} und \text..{...} und ändert die Darstellungsgrösse(mehr hier). In diesem Beispiel sehen wir die Anwendung eines Makros mit einem einzigen Zeichen als Argument.
      • \; - Setzt die Position für das nachfolgende Zeichen um eineinhalb(oder sowas - zumindest nicht so wie \! zurückspringt) Einheit vor:
        $aa \to a\;a$
        - kumulierbar.
      • \displaystyle{...} - Siehe Link bei \scriptstyle.
      Dieses Beispiel bezog sich jetzt nur auf Textmanipulation, aber natürlich steht einem eine breite Palette an(mehr) mathematischen Makros zur Verfügung:
      $\LaTeX\mathrm{-Code}$

      $\LaTeX\mathrm{-Rendering}$

      $\LaTeX\mathrm{-Code}$

      $\LaTeX\mathrm{-Rendering}$

      $\LaTeX\mathrm{-Code}$

      $\LaTeX\mathrm{-Rendering}$

      \int\ \iint\ \iiint\ \oint
      $\int\ \iint\ \iiint\ \oint$

      \left(\frac ab\right)(\frac ab)
      $\left(\frac ab\right)(\frac ab)$

      \sum
      $\sum$

      \int_0^\infty
      $\int_0^\infty$

      \left[\frac ab\right][\frac ab]
      $\left[\frac ab\right][\frac ab]$

      \sum\limits_{k=0}^\infty
      $\sum\limits_{k=0}^\infty$

      \int\limits_a^b
      $\int\limits_a^b$

      \left\{\frac ab\right\}\{\frac ab\}
      $\left\{\frac ab\right\}\{\frac ab\}$

      \prod
      $\prod$

      \frac{\mathrm{d}}{\mathrm{d}x}
      $\frac{\mathrm{d}}{\mathrm{d}x}$

      \frac{\partial}{\partial x}
      $\frac{\partial}{\partial x}$

      \prod_{k=0}^\infty
      $\prod_{k=0}^\infty$


      Dann gibt's natürlich noch einige normale Operatoren: \cdot->
      $\cdot$
      , \times->
      $\times$
      , \div->
      $\div$
      , \frac{ab}{cd}->
      $\frac{ab}{cd}$
      , \sqrt[3]{8}->
      $\sqrt[3]{8}$
      .
      Es gibt auch die Möglichkeit, Abstände einzufügen. Hier mal ein paar, der Länge nach aufsteigend sortiert: \ , \quad, \qquad.

      Um Formeln aufzustellen empfehle ich diesen Online-LaTeX-Compiler. Hier findet man auch alle anderen gängigen
      $\LaTeX$
      -Formeln wie Matrizen, Binomialkoeffizienten, et cetera.
      Auf Wikipedia gibt es eine Liste mit allen möglichen mathematischen Zeichen und deren
      \LaTeX
      -Code.

      Verwendung des Plugins - Was sind Umgebungen?
      Jetzt wissen wir zwar, wie man mathematische Formel aufbaut, aber nicht, wie man sie hier im Forum verwendet. Denn einfach [math]F_f=\iint\limits_Ap_f\mathrm dA[/math] ergibt einen Fehler.
      Formeln können auf verschiedene Arten eingebunden werden. Mit $...$ können wir Inline-Formeln einfügen und mit $$...$$ als eigene Zeile. Damit können wir nun die Formel anpassen, so dass sie nun von LaTeX nun erkannt wird und umgewandelt wird: [math]$$F_f=\iint\limits_Ap_f\mathrm dA$$[/math] - ergibt:
      $$F_f=\iint\limits_Ap_f\mathrm dA$$

      Ist ein Zeilenumbruch vonnöten, so benutzt man hierzu \\.

      Umgebungen bergen noch mehr Möglichkeiten. In Dokumenten erlauben sie Aufzählungen für Querverweise in den Dokumenten und typisieren die eingeschlossene Formel. Das Grundkonstrukt sieht so aus(Zeilenumbrüche sind fakultativ):

      TeX-Quellcode

      1. \begin{UMGEBUNG}
      2. %LaTeX-Code:
      3. f:x\to y
      4. \end{UMGEBUNG}

      Es gibt verschiedene Umgebungen, aber diejenige die für das Plugin am ehesten relevant ist, ist die Align-Umgebung, welche übereinander stehende Formel-Zeilen an einem Schlüsselzeichen ausrichtet. Damit wird:
      $$F_f=\iint\limits_Ap_f\mathrm dA \\ F_R = -F_f$$

      [math]$$F_f=\iint\limits_Ap_f\mathrm dA \\ F_R = -F_f$$[/math]
      Zu:
      \begin{align}F_f&=\iint\limits_Ap_f\mathrm dA \\ F_R &= -F_f \end{align}

      [math]\begin{align}F_f&=\iint\limits_Ap_f\mathrm dA \\ F_R &= -F_f \end{align}[/math]
      Man beachte, dass das kaufmännische Und & hierbei das essenzielle Schlüsselwort ist.
      Die Nummerierung, welche nur in
      $\LaTeX
      -Dokumenten erstellt wird, lässt sich ausschalten, wenn dem Umgebungsname ein Asterix hinten angestellt wird:
      [math]\begin{align*}F_f&=\iint\limits_Ap_f\mathrm dA \\ F_R &= -F_f \end{align*}[/math]

      Weiteres
      • Der Dank für die Implementation des Plugins geht an @Trade.
      • Falls ihr euch nun für
        $\LaTeX$
        allgemein interessiert, so installiert euch MikTex(für Mac/Linux installiert TexLive) und die
        $\LaTeX$
        -IDE TexMaker und werft einen Blick auf "The Not So Short Introduction to LaTeX".
      • Ich habe mal aus Spass Wrapper-Klassen geschrieben, die (MikTex-)Compiler für
        $\LaTeX$
        -Dokumente vereint. Vielleicht nutzt das ja jemand mal. ^^
      • Wenn man den eigenen
        $\LaTeX$
        -Code wie im VB-NET-/C#-Stil darstellen möchte, ist dafür der [tex]...[/tex]-BBCode geeignet.
      • Momentan ist ein Neuladen der Seite vonnöten, damit der Code zu einem Rendering kompiliert wird. - UPDATE: Ist nicht mehr vonnöten

      Grüsse,

      Higlav

      Dieser Beitrag wurde bereits 10 mal editiert, zuletzt von „Higlav“ ()