如何在同一列中制作两个 2x1 矩阵?

如何在同一列中制作两个 2x1 矩阵?

我正在使用 LaTeX 来展示快速傅里叶变换的蝴蝶可视化,但我无法绘制矩阵。

我想要这样的东西:

在此处输入图片描述

即如果我有一个长度为 8 的向量,在下一列(等号后),我想要两个长度为 4 的矩阵在同一列上一个接一个,我该如何实现呢?

\documentclass{article}
\begin{document}

\left[ \begin{array}{ccc}
1 \\
0 \\
0 \\
0 \\
3 \\
0 \\
0 \\
0 \\ 
\end{array} \right]

\end{document}

答案1

这需要一些手动调整,但如果你没有太多这样的蝴蝶,那么这可能就足够了:

\documentclass{article}
\usepackage{amsmath,xparse}

\ExplSyntaxOn
\RenewDocumentCommand{\vdots}{O{3}}
 {
  \vbox:n
   {
    \skip_set:Nn \baselineskip {4pt}
    \dim_set:Nn \lineskiplimit {0pt}
    \kern 6pt % no equivalent with expl3 at the moment
    \prg_replicate:nn { #1 } { \hbox:n { . } }
   }
 }
\ExplSyntaxOff

\begin{document}
\[
\begin{bmatrix}
0 \\ \vdots[16] \\ n
\end{bmatrix}
=
\begin{matrix}
\begin{bmatrix}
0 \\ \vdots \\ (n+1)/2
\end{bmatrix}
\\[4.7ex]
\begin{bmatrix}
0 \\ \vdots \\ (n+1)/2
\end{bmatrix}
\end{matrix}
\]
\end{document}

新的可选参数\vdots告诉您要打印多少个点。

在此处输入图片描述

答案2

\documentclass[preview,border=12pt,12pt]{standalone}
\usepackage{amsmath}

\begin{document}

\begin{align*}
\begin{bmatrix}
a\\b\\c\\d\\e\\f\\g\\h
\end{bmatrix}
&=\!\begin{aligned}
        &\begin{bmatrix}a\\b\\c\\d\end{bmatrix}\\
        &\begin{bmatrix}a\\b\\c\\d\end{bmatrix}
    \end{aligned}\\
&=\ldots
\end{align*}

\end{document}

在此处输入图片描述

更多实际例子

\documentclass[preview,border=12pt,12pt]{standalone}
\usepackage{amsmath}

\begin{document}

\begin{align*}
\begin{bmatrix}
0\\1\\2\\3\\\vdots\\n-2\\n-1\\n
\end{bmatrix}
&=\!\begin{aligned}
        &\begin{bmatrix}0\\1\\\vdots\\\frac{n+1}{2}\end{bmatrix}\\
        &\begin{bmatrix}0\\1\\\vdots\\\frac{n+1}{2}\end{bmatrix}
    \end{aligned} + \text{ what ever \ldots}\\
&=\!\begin{aligned}
        &\begin{bmatrix}0\\1\\\vdots\\\frac{n+1}{2}\end{bmatrix}\\
        &\begin{bmatrix}0\\1\\\vdots\\\frac{n+1}{2}\end{bmatrix}
    \end{aligned} + \text{ forever \ldots}
\end{align*}

\end{document}

在此处输入图片描述

相关内容