括号中不包含 \underbrace

括号中不包含 \underbrace

这:

 \left\{
  \begin{array}{l}
   \frac{da}{dt}=\sum\limits_kJ_k\sin(D_{ok})\\
   \frac d{dt}\left\{\begin{array}{c}e\\i\end{array}\right\}=A+\sum\limits_kJ_k\sin(D_{ok})\\
   \frac d{dt}\left\{\begin{array}{c}\epsilon\\\Pi\\\Omega\end{array}\right\}=\underbrace{B-\sum\limits_kK_k\cos(D_{ok})}_{\mbox{functions }F\mbox{ from (2)}}
  \end{array}
 \right.

看起来像这样:

在此处输入图片描述

但我希望它看起来像这样:

在此处输入图片描述

答案1

使用简单的\smash是不行的,因为显示屏下方的间距是错误的。

我将利用这样一个事实,即需要支撑的材料相对于其所属的生产线而言高度较小。

\documentclass{article}
\usepackage{mathtools}
\usepackage{lipsum} % just for the example

\newcommand{\smashlastub}[1]{%
  \sbox0{\let\smash\relax$#1$}
  \vphantom{\usebox0}
  \sbox2{$#1$}
  \raisebox{\dimexpr(\ht0-\ht2)}{\usebox2}
}

\begin{document}
\lipsum*[2]
\[
\smashlastub{
 \begin{dcases}
 \frac{da}{dt}=\sum\limits_kJ_k\sin(D_{ok})\\
 \frac{d}{dt}\begin{Bmatrix}e\\i\end{Bmatrix}=A+\sum\limits_kJ_k\sin(D_{ok})\\
 \frac{d}{dt}\begin{Bmatrix}\epsilon\\\Pi\\\Omega\end{Bmatrix}=
   \smash{\underbrace{B-\sum_{k}K_k\cos(D_{ok})}_{\text{functions $F$ from (2)}}}
 \end{dcases}}
\]
\lipsum[3]
\end{document}

因此整个显示排版两次,一次不破坏底部支撑,一次破坏底部支撑。在抬高第二个框时会考虑高度差异。

在此处输入图片描述

请注意使用amsmathmathtools环境如何改善整体外观。

答案2

\smash是你的朋友:

示例代码的输出

\documentclass{article}
\begin{document}
\[
\left\{
  \begin{array}{l}
   \frac{da}{dt}=\sum\limits_kJ_k\sin(D_{ok})\\
   \frac d{dt}\left\{\begin{array}{c}e\\i\end{array}\right\}=A+\sum\limits_kJ_k\sin(D_{ok})\\
   \frac d{dt}\left\{\begin{array}{c}\epsilon\\\Pi\\
   \Omega\end{array}\right\}=
   \smash{\underbrace{B-\sum\limits_kK_k\cos(D_{ok})}_{\mbox{functions }F\mbox{ from (2)}}}
  \end{array}
 \right.
\]
\end{document}

我没有将括号向下移动,因为它似乎仅适用于最后一个表达式。

相关内容