答案1
没有花哨的包装:
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\[
\bigoplus_{q} S(-\mathbf{a}_{q})
\xrightarrow{
\begin{array}{@{}c@{}c@{}}
& \cdots \; \mathbf{a}_{p} \; \cdots \\[-1ex]
\begin{matrix} \vdots \\ \mathbf{a}_{q} \\ \vdots \end{matrix} &
\begin{bmatrix} & & \\ & \lambda_{qp} & \\ & & \end{bmatrix}
\end{array}
}
\bigoplus_{p} S(-\mathbf{a}_{p})
\]
\end{document}
答案2
为了便于阅读代码,可以考虑分别构建此表达式的两个组成部分。首先将矩阵存储在一个框(例如\matrixbox
)内,然后将\usebox
其作为更大表达式的一部分:
\documentclass{article}
\usepackage{amsmath,kbordermatrix,graphicx}
\newsavebox{\matrixbox}
\begin{document}
% Store matrix
\begin{lrbox}{\matrixbox}
$\setlength{\arraycolsep}{0pt}\kbordermatrix{
& \rotatebox{90}{$\vdots$} & \ \mathbf{a}_p & \rotatebox{90}{$\vdots$} \\
\vdots & & & \\
\mathbf{a}_q & & \lambda_{qp} & \\
\vdots & & &
}$
\end{lrbox}
\[
\bigoplus_q S(-\mathbf{a}_q)
\xleftarrow{\usebox{\matrixbox}}
\bigoplus_p S(-\mathbf{a}_p)
\]
\end{document}
你可以使用多种方法来构建矩阵。我使用了kbordermatrix
。
答案3
\documentclass[12pt]{report}
\usepackage{amsfonts,amsmath,mathtools}
\usepackage{blkarray}
\newsavebox{\smallblockbox}
\newenvironment{smallblockarray}
{\begin{lrbox}{\smallblockbox}
\normalsize$\begin{blockarray}}
{\end{blockarray}$\end{lrbox}%
\raisebox{-1ex}[\dimexpr\height-1ex][\dimexpr
\depth-1ex]{\usebox{\smallblockbox}}}
\begin{document}
\[
{\bigoplus}_p S(-{\bf a}_p)
\xrightarrow{
\begin{smallblockarray}{lcrr}
\cdots & {\bf a}_p & \cdots &\\
\begin{block}{[ccr]l}
& & & \vdots\\
& \lambda_{pq} & &{\bf a}_q \\
& & & \vdots\\
\end{block}
\end{smallblockarray}
}{\bigoplus}_p S(-{\bf a}_p)
\]
\end{document}