答案1
我猜主要问题是如何创建一个大的空心正方形符号,将其置于数学轴的中心,并使其充当数学运算符,即,将其参数放在大空心正方形的下方(如果有上限,则放在上方)。有点像\sum
,对吧?对宏应用一系列\vcenter
、\hbox
和重复\mathlarger
指令\Box
解决了这些问题。(如果将以下屏幕截图与前一个屏幕截图进行比较,您会注意到g
框左侧的字母现在的位置略高了。)
\documentclass{article}
\usepackage{amsmath, % for "\DeclareMathOperator*" macro
amsfonts, % for "\Box" macro
relsize} % for "\mathlarger" macro
\newcommand{\BigBox}{\vcenter{\hbox{$\mathlarger{\mathlarger
{\mathlarger{\mathlarger{\mathlarger{\Box}}}}}$}}}
\DeclareMathOperator*{\bigsquare}{\BigBox}
\begin{document}
\[
Z_{\mathcal{T}/G}\equiv \sum_{h\in G}\frac{1}{|G|}
\sum_{g\in G} g {\bigsquare_{\textstyle h}}
\]
\end{document}
附录-- 另一种创建方法\BigBox
是加载graphicx
包并运行
\newcommand{\BigBox}{\vcenter{\hbox{\scalebox{2}{$\Box$}}}}
正如您在评论中指出的,它\BigBox
不是一个“运算符”,而是一个具有边界条件的分区函数,我认为从 LaTeX 的角度来看,定义一个名为的宏是有意义的,\partfunc
它接受两个参数,这里:g
和h
,并将第一个参数在数学轴上对齐。
\documentclass{article}
\usepackage{amsmath, % for "\DeclareMathOperator*" macro
amsfonts, % for "\Box" macro
graphicx} % for "\scalebox" macro
\newcommand\BigBox{\vcenter{\hbox{\scalebox{2}{$\Box$}}}}
\newcommand\bigsquare{\mathop{\BigBox}\limits}
\newcommand\partfunc[2]{\vcenter{\hbox{$\textstyle #1$}}{\bigsquare_{\textstyle #2}}}
\begin{document}
\[
Z_{\mathcal{T}/G}\equiv \sum_{h\in G}\frac{1}{|G|}
\sum_{g\in G} \partfunc{g}{h}
\]
\end{document}
答案2
几何形状?使用picture
模式!
\documentclass{article}
\usepackage{amsmath}
\usepackage{pict2e}
\makeatletter
\newcommand{\farsquare}[2]{#1\,{\mathpalette\far@square{#2}}}
\newcommand{\far@square}[2]{%
\mathop{\vcenter{\hbox{%
\sbox\z@{$\m@th#1\sum$}%
\setlength{\unitlength}{0.9\dimexpr\ht\z@+\dp\z@}%
\begin{picture}(1,1)
\roundjoin
\polyline(0,0)(0,1)(1,1)(1,0)(0,0)(0,0.5)
\end{picture}%
}}}\limits_{#1#2}%
}
\makeatother
\begin{document}
\[
Z_{\mathcal{T}/G}\equiv
\sum_{h\in G}\frac{1}{|G|} \sum_{g\in G} \farsquare{g}{h}
\]
\[
\textstyle
Z_{\mathcal{T}/G}\equiv
\sum_{h\in G}\frac{1}{|G|} \sum_{g\in G} \farsquare{g}{h}
\]
\end{document}
第二个显示模拟文本样式,只是为了看到符号缩放得很好。