LaTeX数学模式中的矩阵
上节说明了一些数学公式初步。
一、矩阵环境
1、matrix环境
(1)引入amsmath
宏包。
(2)用中括号引入行间公式。
(3)在LaTeX中,可以使用matrix
环境实现矩阵的排版。
(4)用于矩阵排版的matrix环境,与用于表格排版的tabular
环境使用方法非常类似。
我们在环境中随便写一个矩阵。
编译结果:
2、pmatrix环境
pmatrix
环境用于在矩阵两端添加小括号。
结果:
3、bmatrix环境
bmatrix
环境用于在矩阵两端添加中括号。
结果:
4、Bmatrix环境
Bmatrix
环境用于在矩阵两端添加大括号。
结果:
5、vmatrix环境
vmatrix
环境用于在矩阵两端添加竖线。
结果:
6、Vmatrix环境
Vmatrix
环境用于在矩阵两边添加双竖线。
结果:
注意矩阵环境 ,用&分割列,用\\分割行。
一定要加上方括号环境,要不然会报错!
二、使用上下标
在矩阵中,也可以使用下划线_
和尖角号^
使用上下标。
结果:
三、省略号
常用省略号:\dots、\vdots、\ddots 。
在数学模式中,可以用times
命令来排版乘号。
结果:
四、自定义方向
我们来自定义一个adots
命令来输入另一个方向上的省略号。
我们可以通过newcommand
命令来定义一个新的adots命令。
执行括号里面的操作。
在第二个括号里面输入操作。
用三个不同的方式排版三个句点符号。
代码:
\newcommand{\adots}{
\mathinner{
\mkern2mu%
\raisebox{0.1em}{.}
\mkern2mu \raisebox{0.4em}{.}%
\mkern2mu \raisebox{0.7em}{.}
\mkern1mu
}
}
结果:
或者直接使用\iddots
生成,但是要调用mathdots
宏包。
结果:
五、分块矩阵(矩阵嵌套)
把一个矩阵作为另一个矩阵的元素进行处理。
text
命令用于在数学模式中,临时切换到文本模式。
查看结果:
如果在数学模式中,不使用text
命令。
结果是不一样的!
看一下这个0和刚才的不一样。
代码:
%分块矩阵(矩阵嵌套)
\[
\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}
\]
六、三角矩阵
可以使用multicolum
命令合并多列。
此例中,2是合并数,c是中间位置。
用raisebox
命令来调整高度。
查看结果:
代码:
%三角矩阵
\[
\begin{pmatrix}
a_{11} & a_{12} & \cdots & a_{1n} \\
& a_{22} & \cdots & a_{2n} \\
& & \ddots & \vdots \\
\multicolumn{2}{c}{\raisebox{1.3ex}[0pt]{\Huge 0}}
& & a_{nn}
\end{pmatrix}
\]
七、跨列的省略号
跨列的省略号:\hdotsfor{<列数>}
。
结果:
代码:
%跨列的省略号:\hdotsfor{<列数>}
\[
\begin{pmatrix}
1 & \frac 12 & \dots & \frac 1n \\
\hdotsfor{4} \\
m & \frac m2 & \dots & \frac mn
\end{pmatrix}
\]
八、行内小矩阵环境
行内小矩阵:smallmatrix
注意:
(1)将smallmatrix
环境置于math
环境中。
(2)left(
命令用于生成矩阵的左括号。right)
用于生成矩阵的右括号。right与left命令是成对出现的!
(3)smallmatrix
环境的使用方式与matrix
环境的使用方式完全相同。可以用&符号分割各列,用双反斜杆\\命令实现换行。
报错:
为啥会报错?
俺也不知道。。。
但是把math
环境换一下,换成equation
环境就可以了。
查看结果:
或者把math
环境换成\[\]
也是可以的!
查看结果:
代码:
%行内小矩阵(smallmatrix)环境
复数 $ z=(x,y) $ 也可用矩阵
\[
\left( %需要手动加上左括号
\begin{smallmatrix}
x & -y \\
y & x
\end{smallmatrix}
\right)
\]
九、array环境
1、用array
环境排版矩阵
也可以使用array
环境排版矩阵。
(1)array
环境与表格环境tabular
一致。在必选参数中用r、l、c 和|指定列位置格式。
(2)仍然使用&分割个列,使用\\换行。
(3)利用hline
命令产生横线。
结果:
代码:
%array环境(类似于表格环境的tabular)
\[
\begin{array}[array]{r|r}
\frac 12 & 0 \\
\hline
0 & -\frac abc \\
\end{array}
\]
2、frac
使用注意事项
(1)可以不使用分组命令排版分式。
(2)当然,也可以使用大括号进行分组,以示区分分子和分母。
(3)不使用分组时,frac
命令只能区分单个字母。
下面这个分式,我们可以看到,C不参与分式的组成。
(4)frac
后面直接跟字母,会产生语法错误。
(5)若需要多个字母构成分母,需要使用大括号进行分组。
3、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}
\]
注意这里使用的省略号,有一个adots
命令是之前我们写的。
执行结果:
粗略讲解:
(1)用c
指定第一列居中对齐,用l
指定最后一列居左对齐。
利用@
使用hspace
命令在两列之间插入-5磅的水平空白。
注意,利用@
插入的内容不列入表列计数。
用array
环境的嵌套,编写相应的矩阵。
用left
与right
命令产生矩阵两端的定界符。
(2)继续使用array
环境产生右侧的大括号p标识符。
注意此处的left命令是为了实现与right命令的配对。
此处的left命令不输出任何内容。
(3)可以再嵌套一个array
环境,用于产生下方的横向大括号m标识符。
可以使用underbrace
命令排版横向大括号。
用rule
命令指定横向大括号的尺寸。
以下标的方式指定m标识符。
十、全部代码
在这里将本节用到的全部代码放在这里,供大家学习使用。
%导言区
\documentclass{ctexart}
\usepackage{amsmath}
\usepackage{mathdots}
\newcommand{\adots}{
\mathinner{
\mkern2mu%
\raisebox{0.1em}{.}
\mkern2mu \raisebox{0.4em}{.}%
\mkern2mu \raisebox{0.7em}{.}
\mkern1mu
}
}
%usepackage{ctex}
%正文区(文稿区)
\begin{document}
\[
\begin{matrix}
0 & 1 \\
1 & 0
\end{matrix}
\]
\[
\begin{pmatrix} %用于在矩阵两端加小括号
%pmatrix环境
0 & -i \\
i & 0
\end{pmatrix}
\]
\[
\begin{bmatrix} %用于加中括号
%bmatrix环境
0 & -1 \\
1 & 0
\end{bmatrix}
\]
\[
\begin{Bmatrix} %用于加大括号
%Bmatrix
1 & 0 \\
0 & -1
\end{Bmatrix}
\]
\[
\begin{vmatrix} %用于加单竖线
%vmatrix环境
a & b \\
c & d
\end{vmatrix}
\]
\[
\begin{Vmatrix} %用于加双竖线
%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} \\
\iddots & \ddots & \vdots \\
0 & & a_{nn}
\end{bmatrix}_{n \times n}
\]
%分块矩阵(矩阵嵌套)
\[
\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}
\]
%三角矩阵
\[
\begin{pmatrix}
a_{11} & a_{12} & \cdots & a_{1n} \\
& a_{22} & \cdots & a_{2n} \\
& & \ddots & \vdots \\
\multicolumn{2}{c}{\raisebox{1.3ex}[0pt]{\Huge 0}}
& & a_{nn}
\end{pmatrix}
\]
%跨列的省略号:\hdotsfor{<列数>}
\[
\begin{pmatrix}
1 & \frac 12 & \dots & \frac 1n \\
\hdotsfor{4} \\
m & \frac m2 & \dots & \frac mn
\end{pmatrix}
\]
%行内小矩阵(smallmatrix)环境
复数 $ z=(x,y) $ 也可用矩阵
\[
\left( %需要手动加上左括号
\begin{smallmatrix}
x & -y \\
y & x
\end{smallmatrix}
\right)
\]
%array环境(类似于表格环境的tabular)
\[
\begin{array}[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}
祝大家学习愉快,敲代码整理不易,请多多支持!
拜拜~