如何使用案例标签将公式编号移至末尾

如何使用案例标签将公式编号移至末尾

使用带标签的这个方程式,\cases将方程式编号放在右中间(与第二个方程式对齐)。有没有办法将其放在右下角(与第三个方程式对齐)?

\begin{equation} \label{myeq}
    u = 
    \begin{cases}
       u_1 & x \: \text{inside} \: C \\
       u_2 & x \: \text{outside} \: C \\
       0 &  \: \text{otherwise}  \\
     \end{cases}
\end{equation}

在此处输入图片描述

答案1

您可以使用empheq包(哪个加载mathtools,哪个加载amsmath)并抑制前两种情况的方程编号。

\documentclass{article}
\usepackage{empheq}
\begin{document}

\begin{empheq}[left={u=\empheqlbrace}]{alignat=2}
&u_1 &\quad& \text{$x$ inside $C$} \nonumber \\
&u_2 && \text{$x$ outside $C$} \nonumber \\
&0\mathstrut   && \text{otherwise}
\end{empheq}

\end{document}

在此处输入图片描述

说实话,这对我来说看起来有点奇怪。我可以理解对所有方程式都单独编号,但为什么只对最后一个方程式编号?如果方程式编号指的是整个系统,那么居中的标签对我来说看起来更自然。当然,这只是个人看法。

编辑通过以下可怕、肮脏的黑客行为,我定义了一个环境bcasesb用于底部),其底部基线与当前公式的基线对齐。

\documentclass{article}

\usepackage{amsmath}

\makeatletter
\newenvironment{bcases}[1][]
 {%
  \vbox\bgroup
  \hbox\bgroup
  $\displaystyle#1
  \def\arraystretch{1.2}% as in amsmath's cases
  \left\lbrace
  \array{@{}l@{\quad}l@{}}%
 }
 {%
  \endarray\right.$%
  \egroup
  \kern-1.2\dp\strutbox
  \egroup
 }
\makeatother

\begin{document}

\[
foobarbaz
\begin{bcases}[u=]
u_1 & \text{$x$ inside $C$} \\
u_2 & \text{$x$ outside $C$} \\
0   & \text{otherwise}
\end{bcases}
\]

\begin{align}
&
\begin{bcases}
u_1 & \text{$x$ inside $C$} \\
u_2 & \text{$x$ outside $C$} \\
0   & \text{otherwise}
\end{bcases}
\\
&
\begin{bcases}
u_1 & \text{$x$ inside $C$} \\
u_2 & \text{$x$ outside $C$} \\
0   & \text{otherwise}
\end{bcases}
\end{align}

\end{document}

在此处输入图片描述

必须与括号中心对齐的内容可以作为可选参数给出。这是一个有趣的练习,但我不能说我有一种很好的感觉:对代码的评论将非常受欢迎!

相关内容