Beschriftung in einer Tabelle mit Matrix

Beschriftung in einer Tabelle mit Matrix

Ich habe einen Matrixausdruck in eine Tabelle eingefügt. Jetzt versuche ich, eine Überschrift einzufügen, aber ich erhalte eine Fehlermeldung und die Überschrift erscheint nicht in meinem PDF. Das ist mein Code:

\begin{table*}
\[
\begin{bmatrix}
y_\triangle \\
y
\end{bmatrix}
\Large
=
\renewcommand\arraystretch{2}
\begin{bmatrix}[c|ccc]
- \frac{\omega_i C C_{dyn} H G}{1+C C_{dyn} H G} & \frac{\omega_i C C_{dyn}}{1+C C_{dyn} H G} & \frac{\omega_i}{1+C C_{dyn} H G} & - \frac{\omega_i C C_{dyn} H}{1+C C_{dyn} H G} \\ \hline
\frac{\omega_p G}{1+C C_{dyn} H G} & \frac{\omega_p C C_{dyn} G}{1+C C_{dyn} H G} & \frac{\omega_p G}{1+C C_{dyn} H G} & - \frac{\omega_p C C_{dyn} H G}{1+C C_{dyn} H G}
\end{bmatrix}
\normalsize
\renewcommand\arraystretch{1}
\begin{bmatrix}
u_\triangle \\
r\\
\omega \\
n
\end{bmatrix}
\]
\caption{Trasformata U_LFT del sistema}
\label{fig:ulft}
\end{table*}

In der Präambel habe ich diesen Code zum Einfügen einer vertikalen Linie in die Matrix eingefügt.

\makeatletter
\renewcommand*\env@matrix[1][*\c@MaxMatrixCols c]{%
  \hskip -\arraycolsep
  \let\@ifnextchar\new@ifnextchar
  \array{#1}}
\makeatother

Danke an alle für die Hilfe

Antwort1

Um die von der Überschrift generierte Fehlermeldung zu vermeiden, ändern Sie _im \_Argument von in \caption.

Sie sollten auch die Behebung mehrerer anderer Probleme in Betracht ziehen. Entfernen Sie unbedingt die Änderungen der Schriftgröße in der Formel, der \hlineDirektive und die Änderungen an \arraystretch. Verwenden Sie \dfracanstelle von , \fracwenn Sie größere Bruchzahlen wünschen.

Bildbeschreibung hier eingeben

\documentclass{article}
\usepackage[italian]{babel}
\usepackage{amsmath} % for 'bmatrix' environment and '\dfrac' macro
\usepackage[a4paper,margin=2.5cm]{geometry} % set page and text block parameters
\begin{document}
\begin{table}
\[
\begin{bmatrix} y_\triangle \\ y \end{bmatrix}
%%%\Large
=
%%%\renewcommand\arraystretch{2}
\begin{bmatrix}%%%[c|ccc]
-\dfrac{\omega_i C C_{\mathrm{dyn}} H G}{1+C C_{\mathrm{dyn}} H G} & 
 \dfrac{\omega_i C C_{\mathrm{dyn}}}{1+C C_{\mathrm{dyn}} H G} & 
 \dfrac{\omega_i}{1+C C_{\mathrm{dyn}} H G} & 
-\dfrac{\omega_i C C_{\mathrm{dyn}} H}{1+C C_{\mathrm{dyn}} H G} \\[3ex] %%%\hline
 \dfrac{\omega_p G}{1+C C_{\mathrm{dyn}} H G} & 
 \dfrac{\omega_p C C_{\mathrm{dyn}} G}{1+C C_{\mathrm{dyn}} H G} & 
 \dfrac{\omega_p G}{1+C C_{\mathrm{dyn}} H G} & 
-\dfrac{\omega_p C C_{\mathrm{dyn}} H G}{1+C C_{\mathrm{dyn}} H G}
\end{bmatrix}
%%%\normalsize
%%%\renewcommand\arraystretch{1}
\begin{bmatrix} u_\triangle \\ r\\ \omega \\ n \end{bmatrix}
\]
\caption{Trasformata U\_LFT del sistema} % <--- change "_" to "\_"
\label{fig:ulft}
\end{table}
\end{document}

Nachtrag: Wenn Sie eine vertikale und eine horizontale Linie in die 2x4-Matrix einfügen müssen, schlage ich vor, dass Sie dies mithilfe einer arrayUmgebung anstelle einer bmatrixUmgebung tun. Auf diese Weise müssen Sie keine \hlinezu lange Linie generieren, die am Ende mit den eckigen Klammern in Konflikt gerät.

\left[ \begin{array}{@{}c|ccc@{}}
-\dfrac{\omega_i C C_{\mathrm{dyn}} H G}{1+C C_{\mathrm{dyn}} H G} & 
\dfrac{\omega_i C C_{\mathrm{dyn}}}{1+C C_{\mathrm{dyn}} H G} & 
\dfrac{\omega_i}{1+C C_{\mathrm{dyn}} H G} & 
- \dfrac{\omega_i C C_{\mathrm{dyn}} H}{1+C C_{\mathrm{dyn}} H G} \\[2ex]
\hline 
% use '\mathstrut' to get a bit more vertical separation:
\dfrac{\omega_p G^{\mathstrut}}{1+C C_{\mathrm{dyn}} H G} & 
\dfrac{\omega_p C C_{\mathrm{dyn}} G}{1+C C_{\mathrm{dyn}} H G} & 
\dfrac{\omega_p G}{1+C C_{\mathrm{dyn}} H G} & 
- \dfrac{\omega_p C C_{\mathrm{dyn}} H G}{1+C C_{\mathrm{dyn}} H G}
\end{array}\right]

verwandte Informationen