水平对齐术语

水平对齐术语

我试图复制教科书中的这种外观,其中的术语水平对齐,但是当我想排除特定术语时,如何保持对齐,如图所示?我是否使用环境align,还是有其他方法?

不平等对齐

答案1

传统方式是使用amsmath环境,但这里是使用 TABstack。

\documentclass{article}
\usepackage{tabstackengine}
\TABstackMath
\setstacktabulargap{0pt}
\setstackgap{L}{1.2\baselineskip}
\begin{document}
\[
\TABbinary
\tabularLongstack{rrl}
{
2x_1 & + x_2 & \le 100\\
x_1  & + x_2 & \le 80\\
x_1  &       & \le 40\\
x_1  &       & \ge 0\\
     &   x_2 & \ge 0
}
\]
\end{document}

在此处输入图片描述

为了回答 OP 的后续问题,有几种方法可以使用 TABstack 方法在堆叠方程的右侧添加注释。在这里,我展示了两种方法,将注释添加为单独的\Longstack,然后作为原始的一部分\tabularLongstack。两种方法都可以。

\documentclass{article}
\usepackage{tabstackengine,amsmath}
\TABstackMath
\setstacktabulargap{0pt}
\setstackgap{L}{1.2\baselineskip}
\begin{document}
Comments as part of separate stack
\[
\TABbinaryLeft
\tabularLongstack{rrl}
{
2x_1 & + x_2 & \le 100\\
x_1  & + x_2 & \le 80\\
x_1  &       & \le 40\\
x_1  &       & \ge 0\\
     &   x_2 & \ge 0
}\qquad
\Longstack[l]{
Comment 1\\
Comment 2\\
Comment 3\\
Comment 4\\
Comment 5
}
\]
As a single tabularstack
\[
\TABbinaryLeft
\tabularLongstack{rrll}
{
2x_1 & + x_2 & \le 100 &\qquad\text{Comment 1}\\
x_1  & + x_2 & \le 80  &\qquad\text{Comment 2}\\
x_1  &       & \le 40  &\qquad\text{Comment 3}\\
x_1  &       & \ge 0   &\qquad\text{Comment 4}\\
     &   x_2 & \ge 0   &\qquad\text{Comment 5}
}
\]
\end{document}

在此处输入图片描述

答案2

这里最简单的可能就是systeme包:没有&,只是一个逗号分隔的列表。

\documentclass{article}
\usepackage[showframe]{geometry}
\usepackage{mathtools}
\usepackage{systeme}%

\begin{document}

\[ \systeme{ 2x_1 + x_2 \leq 100,
x_1 + x_2 \leq 80,
x_1 \leq 40,
x_1 \geq 0} \]

\end{document} 

在此处输入图片描述

如果你不想要括号,请添加\sysdelim{.}{.}。你还可以添加注释(通常是第二部分),由 引入@

\[ \sysdelim{.}{.}
 \systeme{ 2x_1 + x_2 \leq 100@\text{Isn't it a fine system?},
 x_1 + x_2 \leq 80,
x_1 \leq 40,
x_1 \geq 0} \]

在此处输入图片描述

答案3

这是仅使用包的解决方案arrayarray环境设置为允许您在任何不等式的右侧提供注释。

在此处输入图片描述

\documentclass{article}
\usepackage{array}
\usepackage{newtxtext,newtxmath} % optional -- in case you need "Times Roman" look
\newcolumntype{C}{>{{}}c<{{}}} % column type for binary and relational operators
\begin{document}
\[
\setlength\arraycolsep{0pt}
\begin{array}{*{2}{rC} r @{\hspace{2cm}} >{$}l<{$} }
2x_1 & + & x_2 & \le & 100 & various restrictions on $x_1$ and $x_2$\\
 x_1 & + & x_2 & \le &  80 \\
 x_1 &   &     & \le &  40 \\
 x_1 &   &     & \ge &   0 & non-negativity restrictions\\
     &   & x_2 & \ge &   0
\end{array}
\]
\end{document}

相关内容