如何排版具有两个条件而不是一个条件的“评估于”垂直线?

如何排版具有两个条件而不是一个条件的“评估于”垂直线?

我想排版一个多元函数的微分,该函数在两个变量取精确值的点处求值。我使用竖线排版“求值点”,并在竖线底部标出求值的点。

当仅在“一个变量”上进行评估时,没有问题,我只会这样做:

$\left.
   \frac{\partial f}{\partial x}
 \right|_{y=0}$

但是我该如何计算 处的导数呢y=0, z=1?我可以用一行写出来,但是会很长。所以理想情况下,我想“堆叠”它们。目前,我使用:

$\left.
   \frac{\partial f}{\partial x}
 \right|_{\mathop{z=1}\limits^{y=0}}$

至少可以说,这很笨拙。而且效果也不太好: 的y=0排版比 的小一点z=0

关于如何正确地做到这一点,您有什么想法吗?

答案1

subarray您可以修改和的定义\substack以接受可选参数:

\makeatletter
\renewenvironment{subarray}[2][c]{%
  \if#1c\vcenter\else\vbox\fi\bgroup
  \Let@ \restore@math@cr \default@tag
  \baselineskip\fontdimen10 \scriptfont\tw@
  \advance\baselineskip\fontdimen12 \scriptfont\tw@
  \lineskip\thr@@\fontdimen8 \scriptfont\thr@@
  \lineskiplimit\lineskip
  \ialign\bgroup\ifx c#2\hfil\fi
    $\m@th\scriptstyle##$\hfil\crcr
}{%
  \crcr\egroup\egroup
}
\makeatother
\renewcommand{\substack}[2][c]{\subarray[#1]{c}#2\endsubarray}

然后

$\left.\frac{\partial f}{\partial x}\right|_{\substack[b]{y=0\\z=1}}$

就可以了。可选参数默认为c,即通常的放置位置。也可以是b,以获得“底部对齐”。

答案2

此代码使用\shortstack下标中的命令。我还使用\left.矩阵之前和\right|矩阵之后来拟合垂直条。

\begin{align}
\left.
\begin{bmatrix}
    0 & 1 & 0 & 0 \\
    0 & 1 & 0 & 0 \\
    0 & 1 & 0 & 0 \\
    0 & 1 & 0 & 0
\end{bmatrix}
\right|_{\shortstack{\tiny $a=0$ \\ \tiny $b=0$ \\ \tiny $c=0$ \\ \tiny $d=0$}}
\end{align}

相关内容