在我看来,任何包含大量数学内容的文档都应该加载 AMS-TeX 软件包。因此,我的大多数文档的序言都包含
\usepackage{amsmath, amsthm, amssymb, amsfonts}
(我可以添加非 AMSmathtools
等)。这些包各有什么用处?我真的需要列出所有包吗,还是其中一些会加载其他包?具体来说,是否有任何包会加载所有包,这样我就可以简单地输入
\usepackage{ams-everything}
比当前列表短吗?
答案1
大部分答案摘自介绍amsmath
和的文档部分amsthm
:
amsmath
提供各种增强功能,以改进包含数学公式的文档的信息结构和打印输出。此软件包提供的一些功能包括:
- 该
\DeclareMathOperator
命令(通过辅助包amsopn
)定义类似于和的新“操作符名称”命令\sin
,\lim
包括适当的边距和正确字体样式和大小的自动选择(即使在下标或上标中使用)。 - 多次替代环境
eqnarray
使得各种方程式排列更容易编写。 - 方程式编号会自动向上或向下调整,以避免方程式内容过度打印(与 不同
eqnarray
)。 - 等号周围的间距与环境中的正常间距相匹配
equation
(与 不同eqnarray
)。 - 产生多行下标的一种方法,通常与求和或乘积符号一起使用。
- 该
tag
命令是一种用给定方程的变体方程编号替换自动提供的数字的简单方法。 - 对于选定的方程组,生成形式为 (1.3a) (1.3b) (1.3c) 的下级方程编号的简单方法。
- 该
\text
命令(通过辅助包amstext
)用于在显示内排版一段文本。 - 该
eqref
命令提供公式引用的格式
amsthm
有助于定义类似定理的结构;文档的介绍对该包给出了简洁的描述:
该
amsthm
软件包提供了 LaTeX 命令的增强版本\newtheorem
,用于定义类似定理的环境。增强版本\newtheorem
可识别\theoremstyle
规范(如 Mittelbach 的theorem
软件包中一样),并具有*
定义未编号环境的形式。该amsthm
软件包还定义了一个proof
在末尾自动添加 QED 符号的环境。AMS 文档类包含该amsthm
软件包,因此此处描述的所有内容也适用于它们。如果该
amsthm
包与非 AMS 文档类和该amsmath
包一起使用,则amsthm
必须在之后加载amsmath
,而不是之前加载。
amssymb
提供扩展的符号集合。例如,加载后,您amssymb
将获得以下附加二元关系符号:\barwedge
、\boxdot
、\boxminus
、\boxplus
、\boxtimes
、(以及更多)、箭头,以及一些其他符号,例如和。另一个有用的功能是生成黑板粗体字符的命令\Cap
\Cup
\leadsto
\Box
\Diamond
\mathbb
由于amssymb
内部加载amsfonts
,因此加载前者就足够了。
据我所知,没有一个包正在加载amsmath
、,amsthm
因此在使用标准类( 、、 )amssymb
时必须加载所有这三个包。book
report
article
如果正在使用 AMS 集合的文档类之一(amsbook
、amsart
),则无需加载amsmath
、或amsthm
;amssymb
必须明确加载。