我正在写一篇论文。大多数方程的形式如下
d\mathbf{F} = (d\mathbf{X})\mathbf{AX}^T + ((d\mathbf{X})\mathbf{AX}^T)T
大多数元素都是矩阵,A , B , C , W
但我每次都必须使用\mathbf{A}
。有没有更快更干净的方法?
答案1
您可以一次性定义命令\mA
、\mB
等等。
\documentclass{article}
\usepackage{amsmath}
\ExplSyntaxOn
\group_begin: % forget the auxiliary functions at the end
\cs_set_protected:Nn \__harry_define_matrix:n
{
\cs_new:cpn { m#1 } { \mathbf{#1} }
}
\cs_generate_variant:Nn \__harry_define_matrix:n { e }
\int_step_inline:nnn { `A } { `Z }
{
\__harry_define_matrix:e { \char_generate:nn { #1 } { 12 } }
}
\group_end:
\ExplSyntaxOff
\begin{document}
$d\mF = (d\mX)\mA\mX^T + ((d\mX)\mA\mX^T)^T$
\end{document}
\ExplSyntaxOn
和之间的“遗留”版本代码\ExplSyntaxOff
并不那么干净。
\count255=`A
\advance\count255 by -1
\loop\ifnum\count255<`Z
\advance\count255 by 1
\begingroup\lccode`x=\count255 \lowercase{\endgroup
\expandafter\newcommand\csname mx\endcsname{\mathbf{x}}%
}%
\repeat
答案2
定义一个新命令(快捷方式),其中包含标记\mathbf{A}
\newcommand{\mbfa}{\mathbf{A}}%
\newcommand{\mbfb}{\mathbf{B}}%
然后使用
$\mbfa \mbfb$