以下是我目前所采用的方法的 MWE:
%! Author = scrooge
%! Date = 09.12.21
% Preamble
\documentclass[11pt]{article}
% Packages
\usepackage{amsmath}
% Document
\begin{document}
\newcommand{\foralllimits}[1]{\mathop{\forall} \limits_{#1}}
\begin{subequations}
\begin{alignat}{2}
&\foralllimits{x\ \in\ \left[-5; -\frac{2}{3} \right]}\ &&g_{1} (x) = 2\\
&\foralllimits{x\ \in\ \left[-\frac{2}{3}; 0 \right]}\ &&g_{1} (x) = -3x\\
&\foralllimits{x\ \in\ \left[0; \frac{2}{3} \right]}\ &&g_{1} (x) = 3x\\
&\foralllimits{x\ \in\ \left[\frac{2}{3}; 5 \right]}\ &&g_{1} (x) = 2
\end{alignat}
\end{subequations}
\end{document}
我已将命令定义\foralllimits
为:\newcommand{\foralllimits}[1]{\mathop{\forall} \limits_{#1}}
其目的是打印“for all”量词,并在其下方显示量词引用的变量。这是否符合 LaTeX 惯例?
理想情况下,我希望量词的下标也相对于“元素”符号垂直对齐,如下所示(请注意元素符号始终位于量词正下方):
我怎样才能做到这一点?
TL; DR
在 LaTeX 中的多重方程系统中垂直对齐量词下标的最佳方法是什么?
答案1
我不确定这是您要找的,但您可以制作\phantom
最长的下标,然后将\mathrlap
其与幻影文本重叠。
请注意,\mathrlap
需要mathtools
包(替换amsmath
)。我还用替换了您的\newcommand
。\DeclareMathOperator*
(星号将限制置于符号下方displaystyle
。)
\documentclass[11pt]{article}
\usepackage{mathtools}
\DeclareMathOperator*{\foralllimits}{\forall}
%\newcommand{\foralllimits}[1]{\mathop{\forall} \limits_{#1}}
\begin{document}
\begin{subequations}
\begin{alignat}{2}
&\foralllimits_{x\ \in\ \left[-5; -\frac{2}{3} \right]}\ &&g_{1} (x) = 2\\
&\foralllimits_{x\ \in\ \mathrlap{\left[-\frac{2}{3}; 0 \right]}\phantom{\left[-5; -\frac{2}{3} \right]}}\ &&g_{1} (x) = -3x\\
&\foralllimits_{x\ \in\ \mathrlap{\left[0; \frac{2}{3} \right]}\phantom{\left[-5; -\frac{2}{3} \right]}}\ &&g_{1} (x) = 3x\\
&\foralllimits_{x\ \in\ \mathrlap{\left[\frac{2}{3}; 5 \right]}\phantom{\left[-5; -\frac{2}{3} \right]}}\ &&g_{1} (x) = 2
\end{alignat}
\end{subequations}
\end{document}
但是我更倾向于使用cases
,或者,如果您希望标记单独的行,则cases
使用带有的包subnumcases
。
\documentclass[11pt]{article}
\usepackage{amsmath}
\usepackage{cases}
\begin{document}
\begin{subnumcases}{g_1(x)=}
\phantom{-x}2 & $\forall x\in[-5; -\tfrac{2}{3}]$\\
-3x & $\forall x\in[-\tfrac{2}{3}; 0]$\\
\phantom{-}3x & $\forall x\in[0; \tfrac{2}{3}]$\\
\phantom{-x}2 & $\forall x\in[\tfrac{2}{3}; 5]$
\end{subnumcases}
\end{document}
\phantom{-x}
如果您觉得那个看起来更好,您可以将其删除。
答案2
我不会用那种显示来定义按案例划分的函数。你能, 尽管。
\documentclass[11pt]{article}
% Packages
\usepackage{amsmath}
\usepackage{eqparbox}
\newcommand{\foralllimits}[1]{\mathop{\underset{#1}{\forall}}\relax}
\newcommand{\eqmathbox}[3][c]{\eqmakebox[#2][#1]{$\displaystyle#3$}}
\newcommand{\eqforalllimits}[2]{%
\eqmathbox{#1}{\foralllimits{#2}}%
}
% Document
\begin{document}
\begin{subequations}
\begin{alignat}{2}
\eqforalllimits{A}{x\in \bigl[-5; -\frac{2}{3}\bigr]} &\;& g_{1} (x) &= 2\\
\eqforalllimits{A}{x\in \bigl[-\frac{2}{3}; 0\bigr]} && g_{1} (x) &= -3x\\
\eqforalllimits{A}{x\in \bigl[0; \frac{2}{3}\bigr]} && g_{1} (x) &= 3x\\
\eqforalllimits{A}{x\in \bigl[\frac{2}{3}; 5\bigr]} && g_{1} (x) &= 2
\end{alignat}
\end{subequations}
\end{document}
不同的渲染(没有“forall”,在数学上不太合适):
\documentclass[11pt]{article}
% Packages
\usepackage{amsmath}
\usepackage{empheq}
% Document
\begin{document}
\begin{subequations}
\setlength{\jot}{6pt}
\begin{empheq}[left={g_1(x)=\empheqlbrace}]{alignat=2}
2 &\qquad& x &\in \bigl[-5; -\tfrac{2}{3}\bigr] \\
-3x &\qquad& x &\in \bigl[-\tfrac{2}{3}; 0\bigr] \\
3x &\qquad& x &\in \bigl[0; \tfrac{2}{3}\bigr] \\
2 &\qquad& x &\in \bigl[\tfrac{2}{3}; 5\bigr]
\end{empheq}
\end{subequations}
\end{document}