Klammergröße selbst definieren

Formelsatz für Mathematik, Naturwissenschaften und Technik


Koryo1984

Klammergröße selbst definieren

Beitrag von Koryo1984 »

Hallo und Guten Tag,
ich habe folgendes Latex-Problem:
Ich benötige eine einzelne geschweifte Klammer, die größer ist als die, die ich mittels \Bigg erzeugen kann. Welche Größe ist hierbei ersteinmal nicht so wichtig, jedoch muss sie definitiv größer sein.

Leider bin ich eher ein Anfänger was Latex angeht und konnte daher mit diversen Tipps, was eigene Makros / Befehle angeht, die ich bisher bekommen habe, wenig anfangen. :oops:


Kann mir dabei jemand helfen?

Viele Grüße
Koryo1984

Gast

Beitrag von Gast »

Groß genug?
\documentclass{article}
\begin{document}
$\left\{\rule{0pt}{5cm}\right.$
\end{document}
\Bigg etc ist übrigens (in fontmath.ltx) ähnlich definiert:
\def\Bigg#1{{\hbox{$\left#1\vbox to17.5\p@{}\right.\n@space$}}}
Ulrike Fischer
www.troubleshooting-tex.de

Simulant
Forum-Anfänger
Forum-Anfänger
Beiträge: 31
Registriert: Do 18. Aug 2011, 13:09

Beitrag von Simulant »

Hallo,

ich habe auch eine Frage dazu und folgendes Beispiel:
\documentclass[a4paper,11pt,oneside,liststotoc,idxtotoc,bibtotoc,markuppercase,headlines=2.2]{scrbook}[2003/01/01]
\usepackage{amsmath}
\usepackage[ngerman]{babel}
\usepackage[latin9]{inputenc}
\begin{document}
\begin{equation}
\label{equ:Matrix}
\underbrace{
\begin{Bmatrix}
	f_L^{\zeta}\\
	f_L^{\eta}\\
	f_R^{\zeta}\\
	f_R^{\eta}
\end{Bmatrix}
}_{\mbox{Lagerkräfte}}
=
\frac{\Omega^2}{l}
\left\{\rule{0pt}{0,1cm}
\underbrace{
\begin{Bmatrix}
	\int(l-x)\mu \varepsilon \cos \beta dx\\
	\int(l-x)\mu \varepsilon \sin \beta dx\\
	\int x \mu \varepsilon \cos \beta dx\\
	\int x \mu \varepsilon \sin \beta dx
\end{Bmatrix}
}_{\mbox{Fliehkräfte aus Unwucht}}
+
\underbrace{
\begin{bmatrix}
	l-x_1 & 0 & l-x_2 & 0\\
	0 & l-x_1 & 0 & l-x_2\\
	x_1 & 0 & x_2 & 0\\
	0 & x_1 & 0 & x_2
\end{bmatrix}
%
\begin{Bmatrix}
	\Delta m_1 e_1 \cos \beta_1\\
	\Delta m_1 e_1 \sin \beta_1\\
	\Delta m_2 e_2 \cos \beta_2\\
	\Delta m_2 e_2 \sin \beta_2\\
\end{Bmatrix}
}_{\mbox{Fliehkräfte aus Setzungen}}
%
\right\}\rule{0pt}{0,1cm}
\end{equation}
\end{document}
Ich möchte mit dieser Methode die linke und rechte Klammer so groß machen, dass die Texte darunter nicht in der Klammer stehen.
Mein Problem: Ich bekomme die Klammern durch verändern der cm-Angabe nicht klein genug.
Weiß da jemand weiter?

Danke im Voraus!

esdd
Forum-Meister
Forum-Meister
Beiträge: 2561
Registriert: So 7. Feb 2010, 16:36

Beitrag von esdd »

Hallo,

die Größe der Klammern passt sich dem größten Element zwischen ihnen an. Deshalb kannst du sie mit \rule{0pt}{<höhe>} nicht beliebig klein machen.

Du kannst aber mit \smash die Unterlängen verstecken. Gegebenenfalls muss dann aber mit \vphantom{} außerhalb der Klammern die Gesamthöhe wieder reserviert werden, damit der Abstand zum nachfolgenden Text stimmt.
\documentclass{scrbook}
\usepackage{amsmath}
\usepackage[ngerman]{babel}
\usepackage[latin9]{inputenc}
\usepackage{blindtext}

\begin{document}
\begin{equation}
  \underbrace{
    \begin{Bmatrix}
      f_L^{\zeta}\\
      f_L^{\eta}\\
      f_R^{\zeta}\\
      f_R^{\eta}
    \end{Bmatrix}
    }_{\mbox{Lagerkräfte}}
  = 
  \frac{\Omega^2}{l}
  \left\{%
    \smash[b]{\underbrace{
      \begin{Bmatrix}
        \int(l-x)\mu \varepsilon \cos \beta dx\\
        \int(l-x)\mu \varepsilon \sin \beta dx\\
        \int x \mu \varepsilon \cos \beta dx\\
        \int x \mu \varepsilon \sin \beta dx 
      \end{Bmatrix}
      }_{\mbox{Fliehkräfte aus Unwucht}}}
    + 
    \smash[b]{\underbrace{
      \begin{bmatrix}
        l-x_1 & 0 & l-x_2 & 0\\
        0 & l-x_1 & 0 & l-x_2\\
        x_1 & 0 & x_2 & 0\\
        0 & x_1 & 0 & x_2 
      \end{bmatrix}
      %
      \begin{Bmatrix}
        \Delta m_1 e_1 \cos \beta_1\\
        \Delta m_1 e_1 \sin \beta_1\\
        \Delta m_2 e_2 \cos \beta_2\\
        \Delta m_2 e_2 \sin \beta_2\\
      \end{Bmatrix}
      }_{\mbox{Fliehkräfte aus Setzungen}}}
    \right\}
\end{equation}
%%%
\blindtext
%%%
\begin{multline}
  \underbrace{
    \begin{Bmatrix}
      f_L^{\zeta}\\
      f_L^{\eta}\\
      f_R^{\zeta}\\
      f_R^{\eta}
    \end{Bmatrix}
    }_{\mbox{Lagerkräfte}}
  = 
  \frac{\Omega^2}{l}
  \left\{
    \smash[b]{\underbrace{
      \begin{Bmatrix}
        \int(l-x)\mu \varepsilon \cos \beta dx\\
        \int(l-x)\mu \varepsilon \sin \beta dx\\
        \int x \mu \varepsilon \cos \beta dx\\
        \int x \mu \varepsilon \sin \beta dx 
      \end{Bmatrix}
      }_{\mbox{Fliehkräfte aus Unwucht}}}\right.\\
    + 
    \left.\smash[b]{\underbrace{
      \begin{bmatrix}
        l-x_1 & 0 & l-x_2 & 0\\
        0 & l-x_1 & 0 & l-x_2\\
        x_1 & 0 & x_2 & 0\\
        0 & x_1 & 0 & x_2 
      \end{bmatrix}
      %
      \begin{Bmatrix}
        \Delta m_1 e_1 \cos \beta_1\\
        \Delta m_1 e_1 \sin \beta_1\\
        \Delta m_2 e_2 \cos \beta_2\\
        \Delta m_2 e_2 \sin \beta_2\\
      \end{Bmatrix}
      }_{\mbox{Fliehkräfte aus Setzungen}}}
    \right\}
%%%--- Reservierung des Platzes unterhalb der Formel
  \vphantom{\underbrace{
   \begin{Bmatrix}
      \int(l-x)\mu \varepsilon \cos \beta dx\\
      \int(l-x)\mu \varepsilon \sin \beta dx\\
      \int x \mu \varepsilon \cos \beta dx\\
      \int x \mu \varepsilon \sin \beta dx 
  \end{Bmatrix}
   }_{\mbox{Fliehkräfte aus Unwucht}}}
\end{multline}
%%%
\blindtext
\end{document}
Gruß
Elke

Simulant
Forum-Anfänger
Forum-Anfänger
Beiträge: 31
Registriert: Do 18. Aug 2011, 13:09

Beitrag von Simulant »

Danke das funktioniert! :)

Simulant
Forum-Anfänger
Forum-Anfänger
Beiträge: 31
Registriert: Do 18. Aug 2011, 13:09

Beitrag von Simulant »

Hallo ich habe noch eine Frage.
Wenn ich eine Klammer um eine Formel setze und unter den Inhalt der Klammer eine geschweiften Klammer setze, dann ist die Klammer sehr weit links und rechts vom Inhalt entfernt, nämlich so weit, wie der Text unter der geschweidten Klammer reicht. Wie kann man das verhindern und die Klammern näher an den eingeklammerten Inhalt heran führen?
Das Problem sollte in folgendem Minimalbeispiel verständlicher werden:
\documentclass{scrbook}
\usepackage[ngerman]{babel}
\usepackage{amsmath}

\begin{document}

\begin{equation}
%
\Bigg(
%
\underbrace{
\begin{bmatrix}
1 & 2\\
3 & 4
\end{bmatrix}
%
\begin{Bmatrix}
A\\
B
\end{Bmatrix}}_{\mbox{Dies ist ein Test mit einem langen Text}}\Bigg)
\end{equation}

\end{document}
Ich freue mich über eure Antworten!

esdd
Forum-Meister
Forum-Meister
Beiträge: 2561
Registriert: So 7. Feb 2010, 16:36

Beitrag von esdd »

Hallo,

eine Möglichkeit wäre \makebox[0pt]{...} statt \mbox{...} zu nehmen:
\documentclass{scrbook}
 \usepackage[ngerman]{babel}
 \usepackage{amsmath}

 \begin{document}

 \begin{equation}
 %
 \Bigg( 
%
 \underbrace{
 \begin{bmatrix}
 1 & 2\\
 3 & 4 
\end{bmatrix}
 %
 \begin{Bmatrix}
 A\\
 B 
\end{Bmatrix}}_{\makebox[0pt]{Dies ist ein Test mit einem langen Text}}\Bigg) 
\end{equation}

 \end{document}
Gruß
Elke

Simulant
Forum-Anfänger
Forum-Anfänger
Beiträge: 31
Registriert: Do 18. Aug 2011, 13:09

Beitrag von Simulant »

Hey Elke,

danke erstmal für deine ganze Hilfe.

Nun habe ich das Problem, dass bei mehreren Texten unter den geschweiften Klammern der eine Text in den anderen herein ragt:
\documentclass{scrbook}
 \usepackage[ngerman]{babel}
 \usepackage{amsmath} 

\begin{document}

\begin{equation}
%
\Bigg(
%
\underbrace{
\begin{Bmatrix}
	1\\
	2
\end{Bmatrix}}_{\makebox[0pt]{Dies ist ein}}
%
+
%
\underbrace{
\begin{bmatrix}
E & F\\
G & H
\end{bmatrix}
%
\begin{Bmatrix}
I\\
J
\end{Bmatrix}}_{\makebox[0pt]{Dies ist ein Test}}
%
\Bigg)
%
\end{equation}

\end{document}

esdd
Forum-Meister
Forum-Meister
Beiträge: 2561
Registriert: So 7. Feb 2010, 16:36

Beitrag von esdd »

Hallo,

du könntest dir mit \hspace{} oder \quad oder ähnlichem zusätzlichen Platz vor und nach dem + schaffen.
Falls es in der Zeile nicht noch mehr geschweifte Klammern mit Text drunter gibt, kann man die beiden Texte auch nach links bzw. rechts verschieben:
\documentclass{scrbook}
  \usepackage[ngerman]{babel}
  \usepackage{amsmath}
  
\newcommand\myleftunderbrace[2]{%
  \underbrace{#1}_{\smash{\phantom{#1}}\makebox[0pt][r]{#2}}}
\newcommand\myrightunderbrace[2]{%
  \underbrace{#1}_{\makebox[0pt][l]{#2}\smash{\phantom{#1}}}}

 \begin{document}

 \begin{equation}
 %
 \Bigg( 
%
\myleftunderbrace{%
  \begin{Bmatrix}
    1\\
    2 
  \end{Bmatrix}}{Dies ist ein}
%
 + 
%
\myrightunderbrace{%
  \begin{bmatrix}
    E & F\\
    G & H 
  \end{bmatrix}
 %
  \begin{Bmatrix}
    I\\
    J 
  \end{Bmatrix}}{Dies ist ein Test}
 %
 \Bigg) 
%
 \end{equation}

 \end{document}
Gruß
Elke

Simulant
Forum-Anfänger
Forum-Anfänger
Beiträge: 31
Registriert: Do 18. Aug 2011, 13:09

Beitrag von Simulant »

Vielen Dank, das klappt ja alles wunderbar! Latex ist schon ne schöne Sache!

Antworten