Logo jkrieger.de section logo
invisible corner_top_left.gif
divider design elem. Home design elem.   design elem. Software design elem.   design elem. Science design elem.   design elem. Photographie design elem.   design elem. everythingelse design elem.   design elem. eMail design elem.
divider_end corner_top_right
Verlauf

LaTeX: Einfache Kniffe in der Mathe-Umgebung


Blackboard-Fonts

mathbb-fonts von AMSDie einfachste Möglichkeit Blackboard-Fonts in LaTeX einzubinden ist wohl das AMS-Paket (\usepackage{amsmath}\usepackage{amssymb}). Dieses Paket bietet alle Großbuchstaben an. Leider fehlt die "fette 1", die oft als Darstellung für die Einheitsmatrix benutzt wird. Hierfür kann man entweder ein anderes Font-Package einbinden (z.B.  \usepackage{mathpazo}), wobei aber alle Mathe-Schriftarten ausgetauscht werden, oder man verwendet das mathds-Package, das nur einen Blackboard-Font anbietet. Diese ist dann aber leider nicht über \mathbb zu erreichen, sondern über \mathds. Es gibt hier die Option sans, mit der ein Sans-Serif-Blackboard-Font eingebunden wird, also: \usepackage{dsfonts} oder \usepackage[sans]{dsfonts}. Bei diesem Package werden die sog. Doublestrke Fonts von Olaf Kummer eingebunden. Es ist in MikTeX enthalten.


Formelnummerierung

  1. Mit dem Befehl \numberwithin{equation}{section} aus dem amsmath-Paket kann man LaTeX veranlassen den equation-Counter (oder jeden anderen Counter) so umzustellen, dass er in der Form [chapter.]section.formel zählt, oder evtl. noch tiefer, wenn man etwa statt section subsection angiebt. Mit diesem Befehl kann man etwa verhindern, dass die Formeln in einem Kapitel von 1.1 bis 1.233 durchnummeriert werden, indem zusätzlich die section-Nummer in die Formel-Nummer aufgenommen wird.
  2. Ebenfalls im amsmath-Paket findet sich der Befehl \tag{bez}, mit dem sich eine beliebige Bezeichnung der Formel zuweisen lässt. So erzeugt etwa folgender Code eine Formel, die statt mit der Stadard-Nummerierung (z.B. 1.3) mit I bezeichnet wird:

    \begin{equation}
       a^2+b^2=c^2 \tag{I}\label{eq:FI}
    \end{equation}


    Verweist man nun mit \eqref{eq:FI} auf die Formel, so wird auch (I) ausgegeben. Dies kann sehr praktisch sein, wenn man wichtige Formeln anders nummerieren möchte. So könnte man etwa in einem Skript über EDynamik die grundlegenden Maxwell-Gleichungen mit I-IV durchnummerieren, während alle anderen Formeln der normalen Nummerierung folgen


Sätze und Definitionen in LaTeX

Oft ist es wünschenswert Sätze und Definitionen in Kästen unterzubringen, um sie vom normalen Text abzusetzen. Dazu habe ich mehrere Möglcihkeiten gefunden. Zuerst soll aber kurz der LaTeX-Mechanismus zur Deklaration von solchen Sätzen etz. erklärt werden. Im Header der LaTeX-Datei kann man mit \newtheorem{umgebungsname}{Bezeichnung} neue Theorem-Umgebungen erzeugen. Nachher wird dann der Inhalt des Satzes, oder Definition mit \begin{umgebungsname}[Titel] und \end{umgebungsname} umgeben. Das ganze sieht dann so aus:
LaTeX: \newtheorem
Man kann die Nummerierung noch so ändern, dass ein bereits definierter Zähler vorangesetzt wird, indem man an \newtheorem noch ein optionales Argument mit diesem Counter-Namen anhängt (z.B. [section] um die Definitionen innerhalb einer \section zu zählen und in der nächsten Section neu zu beginnen. Der Definitionsnummer wird dann die Section-Nummer vorangestellt, also etwa 2.2). Um die Fähigkeiten dieser Umgebung zu erweitern habe ich einige Pakete gefunden:

1. thmbox-Paket

Dieses Paket überschreibt die \newtheorem-Anweisung von LaTeX und fügt ihr ein optionales Argument direkt am Anfang hinzu. Hiermit kann man den Stil des Textblocks bestimmen. Es sind die drei Optionen L, M, S erlaubt. Sie führen zu unterschiedlichen Ergebnissen:
\newtheorem[L]{thmL}{Definition}
thmbox - style L
\newtheorem[M]{thmM}{Definition} thmbox - style M
\newtheorem[S]{thmS}{Definition} thmbox - style S

Um die obige Ausgabe zu erzeugen nutzt man folgenden Code:
  \begin{thmL}[Titel]
    Dies ist der Text der Definition. Er kann sich natürlich über mehrere Zeilen erstrecken.
  \end{thmL}
Das Paket bietet weitere Konfigurationsmöglichkeiten, die in der Dokumentation beschrieben werden.  Es stellt auch eine example- und eine proof-Umgebung zur Verfügung. Die letztere wird von einem QED-Zeichen beendet (eop).


2. shadethm-Paket

Dieses Paket ermöglicht es Sätze und Definitionen zu schattieren, bzw. farbig zu hinterlegen. Seine Dokumentation findet sich leider nur im Style-File. Sie wird hier kurz zusammengefasst:

Das Paket stellt eine neue Anweisung \newshadetheorem bereit, die wie die LaTeX-Anweisung \newtheorem funktioniert. Sie führt zu folgendem Ergebnis:
shaded theorem
Verwendet man shadethm zusammen mit thmbox, so erhält man damit:
shaded theorem
Mit dem folgenden Code kann man einen Rahmen für die Box hinzufügen und diesen (unter Verwendung des color-Paketes) auch einfärben. Außerdem kann man die Hintergrundfarbe setzen.:
\definecolor{shadethmcolor}{rgb}{.9,.9,.9}   % Farbe des Hintergrundes 
\definecolor{shaderulecolor}{rgb}{0.0,0.0,1.0}   % Farbe des Rahmens
\setlength{\shadeboxrule}{1pt}   % Breite des Rahmens


shadethm mit Farben
 Der folgende Code erzeugt eine Umgebung, der eine bestimte Einfärbung zugeordnet wurde. Es können (durch copy&paste) mehrere solche Umgebungen erzeugt werden:
\newshadetheorem{sthm}{Satz}
\newenvironment{thm}[1][]{%
  \definecolor{shadethmcolor}{rgb}{.9,.9,.9}%
  \definecolor{shaderulecolor}{rgb}{1.0,0.0,0.0}%
  \setlength{\shadeboxrule}{1pt}%
  \begin{sthm}[#1]%
}{\end{sthm}}
Die hier gegebene Definition erzeugt zuerst eine Satz-Umgebung sthm. Danach wird eine Umgebung rthm definiert, die einen rot umrandeten und grau hinterlegten Satz mit einem 1pt breiten Rand erzeugt. Und so wird's benutzt:
\begin{thm}[Titel]\label{thm:thmlabel}
  Hier steht der Text, der den Satz ausmacht.
\end{thm}
Ich benutze momentan folgenden Code im Header, um diverse Umgebungen zu erzeugen (thm, definition, corr, summary, axiom). Alle so gesetzten Blöcke sind grau-blau hinterlegt und weisen einen dunkelblauen Rahmen auf.
\usepackage{shadethm}
\newshadetheorem{thms}{Satz}[chapter]
\newshadetheorem{definitions}{Definition}[chapter]
\newshadetheorem{cors}{Korollar}[chapter]
\newshadetheorem{zuss}{Zusammenfassung}[chapter]
\newshadetheorem{axioms}{Axiom}[chapter]

\newenvironment{thm}[1][]{%
  \definecolor{shadethmcolor}{rgb}{.9,.9,.95}%
  \definecolor{shaderulecolor}{rgb}{0.0,0.0,0.4}%
  \setlength{\shadeboxrule}{1.5pt}%
  \begin{thms}[#1]\hspace*{1mm}%
}{\end{thms}}

\newenvironment{definition}[1][]{%
  \definecolor{shadethmcolor}{rgb}{.9,.9,.95}%
  \definecolor{shaderulecolor}{rgb}{0.0,0.0,0.4}%
  \setlength{\shadeboxrule}{1.5pt}%
  \begin{definitions}[#1]\hspace*{1mm}%
}{\end{definitions}}

\newenvironment{corr}[1][]{%
  \definecolor{shadethmcolor}{rgb}{.9,.9,.95}%
  \definecolor{shaderulecolor}{rgb}{0.0,0.0,0.4}%
  \setlength{\shadeboxrule}{1.5pt}%
  \begin{cors}[#1]\hspace*{1mm}%
}{\end{cors}}

\newenvironment{summary}[1][]{%
  \definecolor{shadethmcolor}{rgb}{.9,.9,.95}%
  \definecolor{shaderulecolor}{rgb}{0.0,0.0,0.4}%
  \setlength{\shadeboxrule}{1.5pt}%
  \begin{zuss}[#1]\hspace*{1mm}%
}{\end{zuss}}

\newenvironment{axiom}[1][]{%
  \definecolor{shadethmcolor}{rgb}{.9,.9,.95}%
  \definecolor{shaderulecolor}{rgb}{0.0,0.0,0.4}%
  \setlength{\shadeboxrule}{1.5pt}%
  \begin{axioms}[#1]\hspace*{1mm}%
}{\end{axioms}}
Und so sieht's dann aus:
thm-Umgebung:Beispiel









    zurück zu LaTeX: Tips & tricks

 printable version ImpressumImpressum
corner_top_right2
verlauf_right.gif
corner_bottom_left.gif corner_bottom_left2 Copyright (c) J. Krieger corner_bottom_right.gif
invisible
last updated: 04.08.2019
file: https://www.jkrieger.de/tools/latex/mathsimple.html
invisible