我有一个带有的表达式\underbrace
,其中括号和第二个偏导数有点太大。
以下是代码:
\begin{fleqn}
\begin{align*}
\frac{1}{v_G} = \frac{1}{v_{ph}} \cdot \left(\frac{1 - \frac{\lambda}{n} \frac{\partial n}{\partial \lambda}}{1 - \left(\frac{\lambda}{n} \right)^2 \underbrace{\frac{\partial^2 n}{\partial \lambda^2}}_{=0}} \right) = \frac{1}{v_{ph}} \cdot \left( 1 - \frac{\lambda}{n} \frac{\partial n}{\partial \lambda} \right)
\end{align*}
\end{fleqn}
结果如下:
我如何调整代码,使得二阶偏导数与分数线上的项一样大?
答案1
我会简单地省略那些多余的括号。并且肯定会修复对象的大小\underbrace
。
也可以(但需要幻像)使括号具有正确的大小:
\documentclass{article}
\usepackage{amsmath}
\makeatletter
\newcommand{\fixedunderbrace}[2]{{\mathpalette\fixed@underbrace{{#1}{#2}}}}
\newcommand{\fixed@underbrace}[2]{\fixed@@underbrace#1#2}
\newcommand{\fixed@@underbrace}[3]{\underbrace{#1#2}_{#3}}
\makeatother
\begin{document}
\begin{equation*}
\frac{1}{v_G} =
\frac{1}{v_{ph}} \cdot
\frac{1 - \frac{\lambda}{n} \frac{\partial n}{\partial \lambda}}
{1 - \left(\frac{\lambda}{n} \right)^2
\fixedunderbrace{\frac{\partial^2 n}{\partial \lambda^2}}{=0}}
= \frac{1}{v_{ph}} \cdot
\left( 1 - \frac{\lambda}{n} \frac{\partial n}{\partial \lambda} \right)
\end{equation*}
\begin{equation*}
\frac{1}{v_G} =
\frac{1}{v_{ph}} \cdot
\left(
\frac{1 - \frac{\lambda}{n} \frac{\partial n}{\partial \lambda}}
{1 - \left(\frac{\lambda}{n} \right)^2
\smash[b]{\fixedunderbrace{\frac{\partial^2 n}{\partial \lambda^2}}{=0}}}
\right)
\vphantom{
\frac{1 - \frac{\lambda}{n} \frac{\partial n}{\partial \lambda}}
{1 - \left(\frac{\lambda}{n} \right)^2
\fixedunderbrace{\frac{\partial^2 n}{\partial \lambda^2}}{=0}}
}
= \frac{1}{v_{ph}} \cdot
\left( 1 - \frac{\lambda}{n} \frac{\partial n}{\partial \lambda} \right)
\end{equation*}
\end{document}
答案2
一些建议(其中前两个已经由@egreg 提出):
完全省略大括号 —— 它们似乎没有任何用处。
在 的第一个参数中使用
\tfrac
(或\textstyle\frac
) 代替。 (默认情况下, 的第一个参数以显示样式数学模式处理。 但是,分母的余数以文本样式处理,而不是显示样式。 这就是为什么需要写而不是仅仅。)\frac
\underbrace
\underbrace
\tfrac
\frac
省略所有
\cdot
指令。它们的作用不大,只会使方程式看起来杂乱无章。为了获得更好的水平间距以及使等式最后一部分的括号大小更符合印刷要求,请使用
\Bigl(
and\Bigr)
而不是\left(
and\right)
。
\documentclass{article}
\usepackage{amsmath} % for "\tfrac" macro
\begin{document}
\[
\frac{1}{v_G}
= \frac{1}{v_{ph}}
\frac{1 - \frac{\lambda}{n} \frac{\partial n}{\partial \lambda}}{%
1 - \bigl(\frac{\lambda}{n} \bigr)^{\!2} \!
\underbrace{\tfrac{\partial^2 n}{\partial\lambda^2}}_{=0}}
= \frac{1}{v_{ph}} \Bigl( 1 - \frac{\lambda}{n}
\frac{\partial n}{\partial \lambda} \Bigr)
\]
\end{document}
答案3
您可以使用\cfrac
命令显示所有分数,或\tfrac
显示欠支撑偏导数。我不喜欢在同一个公式中出现这两种大小的差异,所以我建议使用中等大小的命令nccmath
(约 80% 的 \displaystyle)。我给出了一个两者的示例,并进行了一些间距改进,在第二个示例中,使用esdiff
包简化了偏导数的输入:
\documentclass{article}
\usepackage{amsmath, nccmath}
\usepackage{esdiff}
\usepackage{bigstrut}
\begin{document}
\begin{fleqn}
\begin{align*}
\frac{1}{v_G} = \frac{1}{v_{ph}} \cdot \left(\frac{1 - \cfrac{\lambda}{n\bigstrut[b]} \cfrac{\partial n}{\partial \lambda}}{1 - \biggl(\cfrac{\lambda}{n} \biggr)^{\mkern-5mu 2} \smash[b]{\underbrace{\cfrac{\partial^2 n}{\partial \lambda^2}}_{=0}}} \right) = \frac{1}{v_{ph}} \cdot \left( 1 - \frac{\lambda}{n} \frac{\partial n}{\partial \lambda} \right)
\end{align*}
\bigskip
\begin{align*}
\frac{1}{v_G} = \frac{1}{v_{ph}} \cdot \left(\frac{1 - \medmath{\frac{\lambda}{n\bigstrut[b]} \diffp{n}{\lambda}}}{1 - \medmath{ \left(\frac{\lambda}{n} \right)^{\mkern-5mu 2} \smash[b]{\underbrace{\diffp[2]{n}{\lambda}}_{=0}}}} \right) = \frac{1}{v_{ph}} \cdot \left( 1 - \frac{\lambda}{n} \diffp{n}{\lambda} \right)
\end{align*}
\end{fleqn}
\end{document}