目前我正在写一篇论文,其中我使用了 Meijer 的G功能。问题是我不喜欢我的G函数的外观。首先让我说说我目前如何排版该函数,然后说说我不喜欢它的地方。目前我使用
\documentclass[11pt]{article}
\usepackage{amssymb,amsmath,mathtools}
\newcommand{\MeijerG}[7]{G \begin{smallmatrix} #1 & #2 \\ #3 & #4 \end{smallmatrix} \left( \begin{smallmatrix} #5 \\ #6 \end{smallmatrix} \middle\vert #7 \right) }
\begin{document}
\begin{equation}
\MeijerG{m}{n}{p}{q}{a_1,\ldots,a_p}{b_1,\ldots,b_q}{z}
\end{equation}
\end{document}
有几件事我想改变。首先,我希望拥有类似于使用\DeclarePairedDelimiter
包中定义的命令的功能mathtools
。以下示例应该可以说明我的意思。
\documentclass[11pt]{article}
\usepackage{amssymb,amsmath,mathtools}
\DeclarePairedDelimiter{\average}{\langle}{\rangle}
\begin{document}
\begin{equation}
\average*{\sum_k \delta(x-x_k)} \neq
\average[\Big]{\sum_k \delta(x-x_k)} \neq
\average{\sum_k \delta(x-x_k)}
\end{equation}
\end{document}
第二个问题是我不喜欢 周围的间距m,n,p,q
。这可以在一定程度上通过使用 来改善\!
:
\newcommand{\MeijerG}[7]{G \begin{smallmatrix} #1\! & #2 \\ #3\! & #4 \end{smallmatrix}\!\! \left( \begin{smallmatrix} #5 \\ #6 \end{smallmatrix} \middle\vert #7 \right) }
但我不知道是否有更好的方法来解决这个问题。
如果你对如何改进上述定义有任何建议\MeijerG
,或者你想定义梅杰的G以完全不同的方式发挥作用,那么请写出答案。
其实我还有一个问题:你认为(关于梅杰的排版)所做的任何努力G稿件提交给期刊时,“投稿功能”会被取消吗?
答案1
一种可能性是:我使用\DeclarePairedDelimiterX
了mathtools
包定义一个\MeijerM
带有三个参数的命令,负责排版分隔矩阵;然后我定义了\MeijerG
八个参数(第一个是可选的,将作为可选参数传递给\MeijerM
);使用\WithSuffix
来自的命令suffix
提供带星号版本的软件包\MeijerG*
:
\documentclass[11pt]{article}
\usepackage{suffix}
\usepackage{mathtools}
\DeclarePairedDelimiterX\MeijerM[3]{\lparen}{\rparen}%
{\begin{smallmatrix}#1 \\ #2\end{smallmatrix}\delimsize\vert\,#3}
\newcommand\MeijerG[8][]{%
G^{\,#2,#3}_{#4,#5}\MeijerM[#1]{#6}{#7}{#8}}
\WithSuffix\newcommand\MeijerG*[7]{%
G^{\,#1,#2}_{#3,#4}\MeijerM*{#5}{#6}{#7}}
\begin{document}
\[
\MeijerG*{m}{n}{p}{q}{a_1, \dots, a_p}{b_1, \dots, b_q}{z}\quad
\MeijerG[\big]{m}{n}{p}{q}{a_1, \dots, a_p}{b_1, \dots, b_q}{z}\quad
\MeijerG[\Bigg]{m}{n}{p}{q}{a_1, \dots, a_p}{b_1, \dots, b_q}{z}
\]
\end{document}
第二和第三个示例中的分隔符大小显然是错误的,但我只是为了测试已定义命令的功能而包含它们。此外,我使用简单的下标/上标来排版前四个参数,但当然,您可以使用您建议的变体之一来代替。