在上面的等式中,\Delta_{X{lm}}
通过使用环境将其作为一个方程split
。我想对齐公式 1 中显示的范围(我已经这样做了),但我希望每个范围也获得其方程编号,即应该[\Xi \Theta]
是 (1) 和[\Theta \Xi]
应该是 (2)。
我的源代码
\documentclass[]{IEEEtran}
\usepackage{amsmath}
\usepackage{amssymb, amsfonts}
\DeclareRobustCommand{\chiup}{{\mathpalette\irchi\relax}}
\newcommand{\irchi}[2]{\raisebox{\depth}{$#1\chi$}}
\begin{document}
\begin{align}
\begin{split}
\Delta{X_{lm}} &= \left \{
\begin{aligned}
&\left[ \thinspace \Xi \quad \Theta \thinspace \right], &\chiup > 0
\\
&\left[ \thinspace \Theta \quad \Xi \thinspace \right], &\chiup < 0
\end{aligned}
\right.
\end{split}
\label{eq:del_Xlm_bnd}
\\
\intertext{where\vspace{0.3\baselineskip}}
\Xi &= \frac{\chiup}{X_{th,kp}}
\label{eq:eq:del_Xlm_bnd_Xi}
\\
\Theta &= \frac{\chiup}{X_{th,kp} - X_{b}}
\label{eq:eq:del_Xlm_bnd_Theta}
\end{align}
\end{document}
答案1
由于您在评论中提到numcases
包cases
不能嵌套align
,这个答案@PeterGrill 的回复不起作用。由于您还想\intertext
插入文本而不破坏对齐点,这个答案@egreg 也不起作用。
以下是一个变体这个答案由@Werner 提供,可让您免于使用@Bernard 的答案进行反复试验。
\documentclass{IEEEtran}
\usepackage{mathtools}% Loads amsmath internally
%\usepackage{amssymb}
\DeclareRobustCommand{\chiup}{{\mathpalette\irchi\relax}}
\newcommand{\irchi}[2]{\raisebox{\depth}{$#1\chi$}}
\begin{document}
\newsavebox{\mycases}% Store the equal sign and the case brace
\sbox{\mycases}{$\displaystyle {}=\left\{\begin{array}{@{}l@{}}\mathstrut\\\mathstrut\end{array}\right.\kern-\nulldelimiterspace$}
\begin{align}
\raisebox{-.5\ht\mycases}[0pt][0pt]{$\Delta{X_{lm}}$}
& \raisebox{-.5\ht\mycases}[0pt][0pt]{\usebox{\mycases}}
[ \, \Xi \quad \Theta \, ], \quad \chiup > 0 \label{positive} \\
& \hspace{\wd\mycases}
[ \, \Theta \quad \Xi \, ], \quad \chiup < 0 \label{negative} \\
\shortintertext{where}
\Xi & = \frac{\chiup}{X_{th,kp}} \label{eq:eq:del_Xlm_bnd_Xi} \\
\Theta & = \frac{\chiup}{X_{th,kp} - X_{b}} \label{eq:eq:del_Xlm_bnd_Theta}
\end{align}
\end{document}
补充笔记:
amsfonts
amssymb
如果已经加载则不需要。- 该类默认
IEEEtran
尝试使用(或其他 Times 数学字体),因此如果使用类似 Times 的字体,则无论如何都不应加载。newtxmath
amssymb
- 不要
aligned
在split
within内嵌套align
。您可以直接使用cases
它来编写案例(当然,这与您的问题无关)。 - 不要像 那样手动插入垂直空格。考虑从包中
\intertext{where\vspace{0.3\baselineskip}}
使用。\shortintertext
mathtools
- ???的目的是什么
\chiup
?看起来你有点“不喜欢”符号 χ 位于其自然基线上的方式。请不要这样做!从印刷术上来说,将其上移是完全错误的!
答案2
我可以提出这样的建议,使用numcases
和fleqn
环境,分别来自和cases
——nccmath
以及一些反复试验:
\documentclass[]{IEEEtran}
\usepackage{amsmath, amssymb}
\usepackage{cases, nccmath}
\DeclareRobustCommand{\chiup}{{\mathpalette\irchi\relax}}
\newcommand{\irchi}[2]{\raisebox{\depth}{$#1\chi$}}
\begin{document}
\begin{numcases}{ \Delta X_{lm} = }
\left[ \thinspace \Xi \quad \Theta \thinspace \right], &$ \chiup > 0 $
\label{eq:del_Xlm_bnd}
\\
\left[ \thinspace \Theta \quad \Xi \thinspace \right], &$ \chiup < 0 $
\end{numcases}
\vspace{-1ex}
\begin{fleqn}[4.17em]
\begin{align}
\text{where}\quad
\Xi &= \frac{\chiup}{X_{th,kp}} & & & &
\label{eq:eq:del_Xlm_bnd_Xi}
\\
\Theta &= \frac{\chiup}{X_{th,kp} - X_{b}}
\label{eq:eq:del_Xlm_bnd_Theta}
\end{align}
\end{fleqn}
\end{document}
答案3
我不确定我是否完全理解了 OP 的要求,但您可以使用 和 实现编号和对齐empheq
。align
您还可以使用 实现 1.a 和 1.b 编号subequations
[![\documentclass\[\]{IEEEtran}
\usepackage{mathtools}
\usepackage{empheq}
\DeclareRobustCommand{\chiup}{{\mathpalette\irchi\relax}}
\newcommand{\irchi}\[2\]{\raisebox{\depth}{$#1\chi$}}
\begin{document}
\begin{empheq}\[left={\Delta{X_{lm}}=\empheqlbrace}\]{align}
\left\[ \thinspace \Xi \quad \Theta \thinspace \right\], &\chiup > 0 \\
\left\[ \thinspace \Theta \quad \Xi \thinspace \right\], &\chiup < 0 \label{eq:del_Xlm_bnd}
\end{empheq}
or
\begin{subequations}
\begin{empheq}\[left={\Delta{X_{lm}}=\empheqlbrace}\]{align}
\left\[ \thinspace \Xi \quad \Theta \thinspace \right\], &\chiup > 0 \\
\left\[ \thinspace \Theta \quad \Xi \thinspace \right\], &\chiup < 0 \label{eq:del_Xlm_bnd}
\end{empheq}
\end{subequations}
where
\begin{align}
\Xi &= \frac{\chiup}{X_{th,kp}} \label{eq:eq:del_Xlm_bnd_Xi}\\
\Theta &= \frac{\chiup}{X_{th,kp} - X_{b}} \label{eq:eq:del_Xlm_bnd_Theta}
\end{align}
\end{document}