LaTeX数学公式的矩阵
%导言区
\documentclass{ctexart} %ctexbook ctexrep
%\usepackage{ctex}
\usepackage{amsmath} %包含matrix环境
%定义一个新命令 \adots 以特定的方式排列三个点
\newcommand{\adots}{\mathinner{\mkern2mu%
\raisebox{0.1em}{.}\mkern2mu\raisebox{0.4em}
{.}%
\mkern2mu\raisebox{0.7em}{.}\mkern1mu}}
%正文区
\begin{document}
%使用matrix环境来声明矩阵 和声明表格类似
% &表示列间分隔 \\表示换行
\[
\begin{matrix} %无定界符
0 & 1 \\
1 & 0
\end{matrix} \qquad
% pmatrix环境 小括号
\begin{pmatrix}
0 & -i \\
i & 0
\end{pmatrix} \qquad
%bmatrix 中括号
\begin{bmatrix}
0 & -1 \\
1 & 0
\end{bmatrix} \qquad
%Bmatrix环境 大括号
\begin{Bmatrix}
1 & 0 \\
0 & -1
\end{Bmatrix} \qquad
%vmatrix环境 竖线
\begin{vmatrix}
a & b \\
c & d
\end{vmatrix} \qquad
%Vmatrix环境 双竖线
\begin{Vmatrix}
i & 0 \\
0 & -i
\end{Vmatrix}
\]
%在矩阵中可以使用上下标
\[
A = \begin{pmatrix}
a_{11}^2 & a_{12}^2 & a_{13}^2 \\
0 & a_{22} & a_{23} \\
0 & 0 & a_{33}
\end{pmatrix}
\]
% 常用省略号 \dots \vdots \ddots
\[
A = \begin{bmatrix}
a_{11} & \dots & a_{1n} \\
& \ddots & \vdots \\
0 & & a_{nn}
\end{bmatrix}_{n \times n} %\times表示乘号
\]
% 常用省略号 \dots \vdots \ddots
\[
A = \begin{bmatrix}
a_{11} & \dots & a_{1n} \\
\vdots & \ddots & \vdots \\
a_{n1} & \dots & a_{nn}
\end{bmatrix}_{n \times n} %\times表示乘号
\]
% 常用省略号 \dots \vdots \ddots 定义一个adots
\[
A = \begin{bmatrix}
a_{11} & \dots & a_{1n} \\
\adots & \ddots & \vdots \\
0 & & a_{nn}
\end{bmatrix}_{n \times n} %\times表示乘号
\]
%分块矩阵 (矩阵嵌套)
\[
\begin{pmatrix}
\begin{matrix} 1&0\\0&1 \end{matrix}
& \text{\Large 0}\\
\text{\Large 0} & \begin{matrix}
1&0\\0&-1 \end{matrix}
\end{pmatrix}
\]
%三角矩阵 \multicolumn合并多列 \raisebox调整高度
\[
\begin{pmatrix}
a_{11} & a_{12} & \cdots & a_{1n} \\
& a_{22} & \cdots & a_{2n} \\
& & \ddots & \vdots \\
\multicolumn{2}{c}{\raisebox{1.3ex}[0
pt]{\Huge 0}}
& & a_{nn}
\end{pmatrix}
\]
%跨列的省略号:\hdotsfor{<列数>}
%\frac 1n 等价于 \frac{1}{n}
\[
\begin{pmatrix}
1 & \frac{1}{2} & \dots & \frac 1n \\
\hdotsfor{4} \\
m & \frac m2 & \dots & \frac mn
\end{pmatrix}
\]
% 行内小矩阵 smallmatrix 环境
复数 $z = (x,y) $也可用矩阵
\begin{math}
\left( %需要手动加上左括号
\begin{smallmatrix}
x & -y \\
y & x
\end{smallmatrix}
\right) %需要手动加上右括号
\end{math}来表示。
% array环境 类似于表格环境中的tabular
%r表示对齐方式 |表示纵向分隔线 \hlin表示横向分隔线
\[
\begin{array}{r|r}
\frac 12 & 0 \\
\hline
0 & - \frac abc
\end{array}
\]
%利用array环境可以构造复杂矩阵
\[
% @{<内容>} 添加任意内容,不占表项计数
% 此处添加一个负值空白,表示向左移-5pt的距离
\begin{array}{c@{\hspace{-5pt}}l} %第一列居中对齐 最后一列居左对齐
%第一行,第一列
\left(
\begin{array}{ccc|ccc}
a & \cdots & a & b & \cdots & b \\
& \ddots & \vdots & \vdots & \adots \\
& & a & b \\ \hline
& & & c & \cdots & c \\
& & & \vdots & & \vdots \\
\multicolumn{3}{c|}{\raisebox{2ex}[0pt]{\Huge
0}}
& c & \cdots & c
\end{array}
\right)
&
%第一行 第二列
\begin{array}{l}
%\left.仅表示与\right\}配对,什么都不输出
\left. \rule{0mm}{7mm} \right\}p\\
\\
\left. \rule{0mm}{7mm} \right\}q
\end{array}
\\[-5pt]
%第二行 第一列
\begin{array}{cc}
\underbrace{\rule{17mm}{0mm}}_m &
\underbrace{\rule{17mm}{0mm}}_m
\end{array}
& %第二行 第二列
\end{array}
\]
\end{document}
效果演示: