zl程序教程

您现在的位置是:首页 >  其他

当前栏目

Latex Tips: 如何输入矩阵(illustrated in Jupyter Notebook)

输入 如何 in 矩阵 Tips LaTeX Jupyter Notebook
2023-09-14 09:15:00 时间

目录

0. 如何在LaTeX中输入矩阵?

1. 使用Array Environment

1.1 第一个例子

1.2 命令解释

1.3 更多的例子

2. 使用AMSMATH Package

2.1 各种大括号的例子

2.2 以上这些括号还不够用?

2.3 Small Size Option


0. 如何在LaTeX中输入矩阵?

        本文介绍在LaTex中创建矩阵的几种不同方法。 一是基于Array Environment的语法,一是基于amsmath package.

        注意,本文中的代码是用于Jupyter Notebook的Markdown cell中输入矩阵的。在不同的环境中Latex表现形式可能会有略微的区别。

1. 使用Array Environment

        Latex提供了array environment用于输入矩阵。

        它只需要列数和与对数对应的对齐(alignment)控制选项。由于我们是输入矩阵,所以一般来说我们希望看到中央对齐,所以我们可以用对应列数个的c用于指示对齐选项。注意,这里c是指centered,而不是指column. 然后用&来分割行内元素,用\来控制换行。Array Environment只创建矩阵的内容,括号需要用另外的命令进行追加。

1.1 第一个例子

        我们先来看一个例子。

例1:一个2x2的矩阵
  
$$
  A_{2\times2} =
  \left[ {\begin{array}{cc}
    a_{11} & a_{12} \\
    a_{21} & a_{22} \\
  \end{array} } \right]
$$

      显示效果:

        如前所述,本文中的代码是在Jupyter Notebook Markdown cell中运行的。这里前后分别用两个美元符号"$$"来界定公式范围。在[Ref]中给出的例子,不是用两个美元符号来界定,而是用'\['和'\]'来界定公式范围。我没有在Jupyter Notebook以外使用过Latex,不知道这个差异是不是由于运行环境所带来的差异。 

1.2 命令解释

        我们来看看以上代码中的涉及到的几种命令。

        (1) "\left[" 和 "\right]"分别表示左右括号。Array Environment不会自动加括号,所以左右括号需要自己显式地追加

        (2) "\\begin{arrary}" 和 "\\end{arrary}"构成一对,表示它们之间就是矩阵的内容

        (3) \begin{arrary}后面紧跟的{cc}用于控制列对齐,以上矩阵是2列,因此用两个c,这里c指center,表示中央对齐(矩阵嘛,通常都是中央对齐)。注意,不是指矩阵实际上有多少列,而是你实际上显示为多少列。参见下面的例子

        (4) 用 &分隔同行中的元素,用'\\'表示换行

        (5) A 和 a后面跟的下标表示方式Latex中最基本的用法

        (6) '\times'表示乘号'x'

        这样我们就完全清楚这个矩阵是如何描绘出来的了。接下来看几个更复杂一些的例子。

1.3 更多的例子

        例2:一个3x5的矩阵

$$
  A_{3\times5} =
  \left[ {\begin{array}{ccccc}
    a_{11} & a_{12} & a_{13} & a_{14} & a_{15}\\
    a_{21} & a_{22} & a_{23} & a_{24} & a_{25}\\
    a_{31} & a_{32} & a_{33} & a_{34} & a_{35}\\
  \end{array} } \right]
$$

        如上所示,因为有5列,所以用了{ccccc}来标示。显示效果如下:

        例3: 一个{m x n}的矩阵

$$
  A_{m\times n} =
  \left[ {\begin{array}{cccc}
    a_{11} & a_{12} & \cdots & a_{1n}\\
    a_{21} & a_{22} & \cdots & a_{2n}\\
    \vdots & \vdots & \ddots & \vdots\\
    a_{m1} & a_{m2} & \cdots & a_{mn}\\
  \end{array} } \right]
$$

        由于m和n是不确定的值,所以矩阵中要用横的(\cdots)、竖的(\vdots)、斜的(\ddots)省略号来表示。需要注意的是,省略的行和列也只算做是一行或一列,因此本矩阵是表示为4行和4列,因此用{cccc}来表示列对齐控制。显示效果如下:

2. 使用AMSMATH Package

        AMSMATH package提供更多的更灵活的输入矩阵定界符(即包围矩阵的大括号)的选项控制。在常规的Latex文档中在使用amsmath package之前需要用\usepackage{amsmath}加载这个包,但是在Jupyter Notebook是缺省加载的,直接使用即可。

        AMSMATH package提供的矩阵定界符选项如下所示:

Matrix TypeKeywordOutput
PlainmatrixOnly the elements of the matrix
ParenthesespmatrixElements of the matrix in round brackets
BracketsbmatrixElements of the matrix in square brackets
BracesBmatrixElements of the matrix in curly brackets
PipesvmatrixElements of the matrix in vertical lines
Double PipesVmatrixElements of the matrix in double vertical lines
Small MatrixsmallmatrixA plain matrix in a smaller size

        如以下例子所示,与Array Enviroment的根本差别在于关键字array替换为matrix了。此外,amsmath package的用法中不需要对齐(alignment)控制选项。

2.1 各种大括号的例子

$$
  A_{2\times 3} = 
  \begin{matrix}
    a_{11} & a_{12} & a_{13}\\
    a_{21} & a_{22} & a_{23}
  \end{matrix}
$$

$$
  A_{3\times 2} = 
  \begin{pmatrix}
    a_{11} & a_{12}\\
    a_{21} & a_{22}\\
    a_{31} & a_{32}
  \end{pmatrix}
$$

 

$$
  A_{4\times 3} = 
  \begin{bmatrix}
    a_{11} & a_{12} & a_{13}\\
    a_{21} & a_{22} & a_{23}\\
    a_{31} & a_{32} & a_{33}\\
    a_{41} & a_{42} & a_{43}
  \end{bmatrix}
$$

$$
  A_{3\times 4} = 
  \begin{Bmatrix}
    a_{11} & a_{12} & a_{13} & a_{14}\\
    a_{21} & a_{22} & a_{23} & a_{24}\\
    a_{31} & a_{32} & a_{33} & a_{34}
  \end{Bmatrix}
$$

$$
  A_{3\times 3} = 
  \begin{vmatrix}
    a_{11} & a_{12} & a_{13}\\
    a_{21} & a_{22} & a_{23}\\
    a_{31} & a_{32} & a_{33}
  \end{vmatrix}
$$

$$
  A_{3\times 3} = 
  \begin{Vmatrix}
    a_{11} & a_{12} & a_{13}\\
    a_{21} & a_{22} & a_{23}\\
    a_{31} & a_{32} & a_{33}
  \end{Vmatrix}
$$

2.2 以上这些括号还不够用?

        如果你觉得amsmath package给你提供的矩阵的大括号的样式还不够用,那也没关系。你可以在无括号的矩阵(如上面第一个例子)的外面另行添加你想要的矩阵定界符,如下例所示:

$$
  A_{3\times 3} = 
  \left\langle
  \begin{matrix}
    a_{11} & a_{12} & a_{13}\\
    a_{21} & a_{22} & a_{23}\\
    a_{31} & a_{32} & a_{33}
  \end{matrix}
  \right\rangle
$$

2.3 Small Size Option

        Amsmath package还额外地提供了一种比常规尺寸更小(字体更小编排更紧凑)的矩阵选项,这个在你想要在文字中间嵌入矩阵时很有用。其语法形式是用smallmatrix关键字替换matrix如下我们先创建一个常规大小的矩阵,然后创建一个小一号的矩阵,以方便做对比。但是这个小尺寸矩阵选项不能选择不同的定界符。

$$
  A_{3\times 3} = 
  \begin{bmatrix}
    a_{11} & a_{12} & a_{13}\\
    a_{21} & a_{22} & a_{23}\\
    a_{31} & a_{32} & a_{33}
  \end{bmatrix}
$$

$$
  A_{3\times 3} = 
  \left(\begin{smallmatrix}
    a_{11} & a_{12} & a_{13}\\
    a_{21} & a_{22} & a_{23}\\
    a_{31} & a_{32} & a_{33}
  \end{smallmatrix}\right)
$$

 Ref: Matrices in LaTeX - LaTeX-Tutorial.com