我正在用 Latex 写我的第一篇“真正的”论文,我的主要符号之一涉及逐项将 Nx1 向量\widehat{w}
乘以 Nx1 向量\widehat{S}
,并且我一直使用 cdot 来表示非矩阵乘法,所以基本上我是这么写的
(\widehat{w}\cdot\widehat{S})^{\intercal}\widetilde{H}(\widehat{w}\cdot\widehat{S})
在我的论文中出现过一百万次。
\widehat{S}_w
我使用 cdot 是为了避免使用或由于论文中已经使用了类似的符号而导致的大量混淆\widehat{w}\widehat{S}
。基本上,我抱怨的是 cdot 在 w 和 S 之间增加了大量空间,而实际上它们是单个单位——加权 S。
问题:有什么技巧可以缩小 cdot 吗?或者我可以使用其他双变量函数让 w 和 S 更紧密地贴在一起吗?你能帮我把我的论文弄得更漂亮吗?
谢谢你的帮助。
代码:
\documentclass{article}
\usepackage{amssymb}
\begin{document}
\[(\widehat{w}\cdot\widehat{S})^{\intercal}\widetilde{H}(\widehat{w}\cdot\widehat{S})\]
\end{document}
答案1
三条建议:
如果您要多次使用某个命令,请定义一个宏/命令。它可以提高一致性,并让您的生活很多如果您以后决定更改某些内容,即使只是一点点,也会更容易。例如,
\itemmul{<mat1>}{<mat2>}
。作为参考,请参阅一致的字体。您可以根据自己的喜好修改关系/运算符周围的间距,方法是先将其更改为序数符号,然后使用 指定字距
\mkern
。序数是通过将关系/运算符括在括号中来获得的,例如{\cdot}
或使用。数学字距以s(或ath nits)\mathord{\cdot}
指定。mu
m
u
根据上述建议,您可以按照以下方式调整间距:
\documentclass{article}
\usepackage{amssymb}% http://ctan.org/pkg/amssymb
\newcommand{\itemmul}[2]{% \itemmul{<mat1>}{<mat2>}
\widehat{#1}\mkern1mu{\cdot}\mkern1mu\widehat{#2}% itemwise-multiplication
}
\begin{document}
\[
(\itemmul{w}{S})^{\intercal}\widetilde{H}(\itemmul{w}{S})
\]
\end{document}
答案2
您可以使用 来减少中间的空间 \kern-.2em
。
\documentclass{article}
\usepackage{amssymb}
\begin{document}
\[(\widehat{w}\!\cdot\!\widehat{S})^{\intercal}\widetilde{H}(\widehat{w}\!\cdot\!\widehat{S})\]
\[(\widehat{w}\kern-.2em\cdot\kern-.2em\widehat{S})^{\intercal}\widetilde{H}(\widehat{w}\kern-.2em\cdot\kern-.2em\widehat{S})\]
\end{document}
您可以定义一个宏来使事情变得更容易。
\newcommand*{\mycdot}{\kern-.2em\cdot\kern-.2em}
mwe 是
\documentclass{article}
\usepackage{amssymb}
\newcommand*{\mycdot}{\kern-.2em\cdot\kern-.2em}
\begin{document}
\[(\widehat{w}\!\cdot\!\widehat{S})^{\intercal}\widetilde{H}(\widehat{w}\!\cdot\!\widehat{S})\]
\[(\widehat{w}\kern-.2em\cdot\kern-.2em\widehat{S})^{\intercal}\widetilde{H}(\widehat{w}\kern-.2em\cdot\kern-.2em\widehat{S})\]
\[(\widehat{w}\mycdot\widehat{S})^{\intercal}\widetilde{H}(\widehat{w}\mycdot\widehat{S})\]
\end{document}