如何针对不同的子方程设置不同的对齐规则?

如何针对不同的子方程设置不同的对齐规则?

我需要将三个较长的方程式组合在一起{subequations},以下是我的代码:

\begin{subequations}
\begin{align}
\begin{split}\label{4a}
    x ={}& 11111111111111111111111111111
\end{split}\\
\begin{split}\label{4b}
    y ={}& 2222222222222222222222222222222
\end{split}
\end{align}
\begin{align}
\begin{split}\label{4d}
     xxxxxxxxxxxxxxxxxxx={}& aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\\
     &-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
\end{split}
\end{align}
\end{subequations}

这是输出: 在此处输入图片描述 有两个问题:

1、公式1a、1b、1c 没有对齐,我需要将它们左对齐(如下图所示)。

2,1b 和 1c 之间有一个换行符,我需要将其删除。

有人能帮帮我吗?谢谢!

编辑:这就是我所说的“将它们左对齐”的意思: 在此处输入图片描述

答案1

您可以通过设置长度\abovedisplayskip(上方空间\begin{align})、\belowdisplayskip(下方空间end{align})和\jot(中方程之间的空间align)来解决此问题。您的目标是让\belowdisplayskip+\abovedisplayskip=\jot,因此方程 1(b) 和 1(c) 之间的空间等于 1(a) 和 1(b) 之间的空间。可以通过以下方式完成:

\documentclass{article}
\usepackage{amsmath}

\begin{document}
\begin{subequations}
some text some text
\newlength{\someskip}
\setlength{\someskip}{\belowdisplayskip}%<- to save current \belowdisplayskip
\setlength{\belowdisplayskip}{0pt}
\begin{align}
\begin{split}\label{4a}
    x ={}& 11111111111111111111111111111
\end{split}\\
\begin{split}\label{4b}
    y ={}& 2222222222222222222222222222222
\end{split}
\end{align}%*
\setlength{\abovedisplayskip}{\jot}% *
\setlength{\belowdisplayskip}{\someskip}%* <- restore \belowdisplayskip to normal value
\begin{align}
\begin{split}\label{4d}
     xxxxxxxxxxxxxxxxxxx={}& aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\\
     &-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
\end{split}
\end{align}
\end{subequations}
some text some text

\end{document}

% 在带有 * 的行末非常重要。否则会给出额外的行,并且您希望 \end{align} 和 \begin{align} 之间没有字符。

我添加了一些文本来直观地展示前后跳过的情况align

答案2

像这样?

在此处输入图片描述

\documentclass[fleqn]{article}
\usepackage{geometry}
\usepackage{mathtools}

%---------------- show page layout. don't use in a real document!
\usepackage{showframe}
\renewcommand\ShowFrameLinethickness{0.15pt}
\renewcommand*\ShowFrameColor{\color{red}}
%---------------------------------------------------------------%

\begin{document}
\begin{subequations}
\begin{gather}
    x = 11111111111111111111111111111    \label{4a}   \\
    y = 2222222222222222222222222222222  \label{4b}   \\
\begin{multlined}[t][0.75\linewidth]\label{4d}
xxxxxxxxxxxxxxxxxxx
    = aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\\
     -bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
\end{multlined}
\end{gather}
\end{subequations}
\end{document}

答案3

不确定你说的“将它们对齐到左侧”是什么意思。以下是对齐标志的方法=

请注意,这={}&很少需要。

\documentclass{article}
\usepackage{amsmath}

\begin{document}

\begin{subequations}
\begin{align}
\label{4a}
    x &= 11111111111111111111111111111
\\
\label{4b}
    y &= 2222222222222222222222222222222
\\
\begin{split}\label{4d}
     xxxxxxxxxxxxxxxxxxx &= aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\\
     &\qquad-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
\end{split}
\end{align}
\end{subequations}

\end{document}

在此处输入图片描述

答案4

我会这样做:

\documentclass{article}
\usepackage{amsmath}

\begin{document}

\begin{subequations}
\begin{align}
\label{4a}
  & x = 11111111111111111111111111111
\\
\label{4b}
 & y = 2222222222222222222222222222222
\\
 & \begin{aligned}[b]
     xxxxxxxxxxxxxxxxxxx= aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\\
  {}-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
\end{aligned}\label{4d}
\end{align}
\end{subequations}

\end{document}

在此处输入图片描述

相关内容