在数学模式下将列居中对齐

在数学模式下将列居中对齐

如何使用align*或类似环境之一在数学模式下居中对齐列?我对齐环境中的列按rlrlr模式对齐。如何将其更改为模式ccccc

\begin{align*}
    \dot{x}=&A&x+&B&u\\
    ...
\end{align*}

对齐

为了进行探索,我在这里使用了表格环境,从文本模式切换到数学模式。结果是我想要的,但这似乎不是最佳方法:

    \begin{tabular}[7]{ccccccc}
        $\dot{x}$ & $=$ & $A$ & $x$ & $+$ & $B$ & $u$\\
        ...
    \end{tabular}

表格

有没有更好的方法来实现这个目标?

答案1

使用arraybmatrix

\documentclass[12pt]{book}
\usepackage[a4paper]{geometry}
\usepackage{mathtools}

\begin{document}
\begin{equation*}
\begin{array}{ccc}
x & f+g & r + t^{2}\\
a = b & \text{long text} & G = \Upsilon
\end{array}
\end{equation*}

\begin{equation*}
\begin{bmatrix}
a & b = b = u & c \\
d & e & f \\
g & h & i
\end{bmatrix}
\end{equation*}
\end{document}

答案2

这是实现tabular您在帖子中提到的想法的一种方法。

在此处输入图片描述

(另外:由于B似乎是列向量,我将假设u是或计算为标量。)

\documentclass{article}
\usepackage{amsmath,array}
\newcolumntype{C}{>{{}}c<{{}}} % col. type for binary and relational opeators

\begin{document}
\[ % start of an unnumbered display-math group
\setlength\arraycolsep{0pt} % default value: 5pt
\begin{array}{cCccCcc}
\dot{x} & = & A & x & + & B & u \\[\jot]
\dot{x} & = & \begingroup \setlength\arraycolsep{5pt}
              \begin{bmatrix}
              1 & 2 & 3 & 4 \\
              1 & 2 & 3 & 4 \\
              1 & 2 & 3 & 4 \\
              1 & 2 & 3 & 4 
              \end{bmatrix} \endgroup
                & x & + & \begin{bmatrix}
                          1 \\ 2 \\ 3 \\ 4
                          \end{bmatrix}
                            & u
\end{array}
\]
\end{document}

相关内容