有没有办法在 LaTeX 中将四重积分、任意长度积分和带省略号的积分作为闭流形积分来做?如果有人可以定义一些宏,那就太好了。这个问题如何插入三重线积分?讨论三重积分,此链接https://www.overleaf.com/learn/latex/Integrals%2C_sums_and_limits讨论“常规”(非闭流形)积分的主题。
编辑:这是部分答案,但 1)积分流形在序言中设置,2)椭圆不在积分符号的中心
\documentclass{article}
\usepackage{amsmath}
\usepackage{wasysym}
\usepackage{txfonts}
\usepackage{tikz}
\usetikzlibrary{math}
\usetikzlibrary{shapes}
\makeatletter
\ams@newcommand{\iiiiint}{\DOTSI\protect\MultiIntegral{5}}
\renewcommand{\MultiIntegral}[1]{%
\edef\ints@c{\noexpand\intop
\ifnum#1=\z@\noexpand\intdots@\else\noexpand\intkern@\fi
\ifnum#1>\tw@\noexpand\intop\noexpand\intkern@\fi
\ifnum#1>\thr@@\noexpand\intop\noexpand\intkern@\fi
\ifnum#1>4 \noexpand\intop\noexpand\intkern@\fi % <---- added
\noexpand\intop
\noexpand\ilimits@
}%
\futurelet\@let@token\ints@a
}
\makeatother
\newcommand*\oiiiint{%
\tikz \node[draw, ellipse, inner xsep=-4pt, inner ysep=-9pt] {$\displaystyle\iiiint$};%
}
\newcommand*\oiiiintM{%
\tikz \node[draw, ellipse, inner xsep=-4pt, inner ysep=-13pt] {$\displaystyle\iiiint\limits_M$};%
}
\newcommand*\oiiiiint{%
\tikz \node[draw, ellipse, inner xsep=-4pt, inner ysep=-9pt] {$\displaystyle\iiiiint$};%
}
\newcommand*\oiiiiintM{%
\tikz \node[draw, ellipse, inner xsep=-4pt, inner ysep=-13pt] {$\displaystyle\iiiiint\limits_M$};%
}
\newcommand*\oidotsint{%
\tikz \node[draw, ellipse, inner xsep=-4pt, inner ysep=-9pt] {$\displaystyle\idotsint$};%
}
\newcommand*\oidotsintM{%
\tikz \node[draw, ellipse, inner xsep=-4pt, inner ysep=-12pt] {$\displaystyle\idotsint\limits_M$};%
}
\begin{document}
\noindent $\displaystyle \oint\limits_C \omega$ \\ $\displaystyle \oiint\limits_S \eta$ \\ $\displaystyle \oiiint\limits_M \theta$ \\ \indexspace $\oiiiint _M \alpha$ \\ \indexspace $\oiiiintM \alpha$ \\ \indexspace $\oiiiiint _M \beta$ \\ \indexspace $\oiiiiintM \beta$ \\ \indexspace $\oidotsint _M \gamma$ \\ \indexspace $\oidotsintM \gamma$ \\ \indexspace Can this be done with \$\ignorespaces $\backslash$oiiiint\_M $\backslash$xi\$, \$\ignorespaces $\backslash$oint[n]\_M $\backslash$phi\$, and \$\ignorespaces $\backslash$oidotsint\_M $\backslash$lambda\$?
\end{document}
答案1
pdfMsym提供一个宏,用于渲染任意长度的闭积分\oiNint
,例如:
\[ \oiNint{5} \]
为了创建这样的构造,pdfMsym 使用两个宏:\putexsym
和,\@skewedlim@op
它们将“扩展符号”(如 中的循环\oiNint
)放置在材料上,并分别创建具有倾斜限制的大型数学运算符,如\int
。后者不太有趣,有关它的详细信息在 pdfMsym 文档第 3.1 节中提供, 也是如此\putexsym
。为了展示 的用法,\putexsym
我将演示如何创建\oidotsint
:
\def\oidotsint{\putexsym{\int\mkern-8mu\cdots\mkern-8mu\int}\@BigLeftcirclecap\@BigRightcirclecap{2.5}{4}}
\[ \oidotsint \]
这将放置一个扩展符号,其顶部是线帽/线头\@BigLeftcirclecap
和,\@BigRightcirclecap
它们是覆盖 的大半圆线帽\int\mkern-8mu\cdots\mkern-8mu\int
。 值2.5
是这些线帽的高度(不应更改),并4
告诉 pdfMsym 将符号的宽度减少多少(如果我们用 替换,4
则将0
放置在 的边缘,\int...\int
这看起来不太好)。4
和的确切尺寸2.5
与字体大小(给定 )和当前数学模式有关\pdfmsymsetscalefactor
。 此定义不会正确设置 的限制\oidotsint
,请用 将其包围\mathop{...}
或使用\@skewedlim@op
。
更多信息可以在这里找到pdfMsym 的文档pdfMsym 是我编写的包,我没有太多编写包的经验,所以我不知道它有多可靠。此外,我怀疑某些功能将来会发生变化,因此本文中的详细信息将来可能会过时。
答案2
含包装esint
:
\documentclass[border=12pt]{standalone}
\usepackage{esint}
\begin{document}
\def\arraystretch{2}
\begin{tabular}{c c c}
macro & textstyle & displaystyle \\
\verb+\int+ & $\int$ & $\displaystyle \int$\\
\verb+\iint+ & $\iint$& $\displaystyle \iint$\\
\verb+\iiint+ & $\iiint$ & $\displaystyle \iiint$\\
\verb+\iiiint+ & $\iiiint$ & $\displaystyle \iiiint$\\
\verb+\idotsint+ & $\idotsint$ & $\displaystyle \idotsint$\\
%
\verb+\oint+ & $\oint$ & $\displaystyle \oint$\\
\verb+\oiint+ & $\oiint$ & $\displaystyle \oiint$\\
\verb+\varoiint+ & $\varoiint$ & $\displaystyle \varoiint$\\
\verb+\sqint+ & $\sqint$ &$\displaystyle \sqint$\\
\verb+\sqiint+ & $\sqiint$ & $\displaystyle \sqiint$\\
\verb+\ointctrclockwise+ & $\ointctrclockwise$ & $\displaystyle \ointctrclockwise$\\
\verb+\ointclockwise+ & $\ointclockwise$ & $\displaystyle \ointclockwise$\\
\verb+\varointclockwise+ & $\varointclockwise$ & $\displaystyle \varointclockwise$\\
\verb+\varointctrclockwise+ & $\varointctrclockwise$ & $\displaystyle \varointctrclockwise$\\
\verb+\fint+ & $\fint$ &$\displaystyle \fint$\\
\verb+\landupint+ & $\landupint$ &$\displaystyle \landupint$\\
\verb+\landdownint+ & $\landdownint$ & $\displaystyle \landdownint$
\end{tabular}
\end{document}
答案3
这些命令在 中定义unicode-math
,因此您可以将它们与 LuaTeX 或 XeTeX 中您选择的字体一起使用。
\documentclass{article}
\tracinglostchars=3 % Error if a symbol is missing
\usepackage{unicode-math}
\usepackage{newcomputermodern}
\begin{document}
\begin{align*}
& \iiiint_a^b \\ % quadruple integral
& \oiiint_C \\ % Triple contour integral
& \idotsint_a^b % ellipsis integral
\end{align*}
\end{document}
没有任意大的积分符号。我想,你可以在单个积分符号之间使用负字距伪造一个,但如果你最终需要区分五重积分和六重积分,我建议你找一个更容易阅读的符号。可能的话,高维区域在\int_B
哪里$B$
,如果这在你的研究领域有意义的话?
并非所有字体都包含所有这些符号,但 New Computer Modern Math、STIX Two Math 和 XITS Math 是其中三种特别全面的字体。这些字体还允许您选择直立和倾斜积分作为风格集。
如果你的数学字体不包含其中一个符号,你可以使用以下命令将其替换
\setmathfont{STIX Two Math}[
range={\iiiint,\oiiint},
Scale=MatchUppercase]