通用线性方程组比对

通用线性方程组比对

使用此代码

\begin{align*} 
  a_{11}x_1 + \ldots + a_{1n}x_n &= b_1\\ 
  \vdots + \vdots + \vdots &= \vdots\\ 
  a_{n1}x_1 + \ldots + a_{nn}x_n &= b_n
\end{align*}

给出

在此处输入图片描述

所以我尝试在它们&周围添加更多+内容,以便正确对齐,即

\begin{align*} 
  a_{11}x_1 &+ \ldots &+ a_{1n}x_n &= b_1\\ 
  \vdots &+ \vdots &+ \vdots &= \vdots\\ 
  a_{n1}x_1 &+ \ldots &+ a_{nn}x_n &= b_n
\end{align*}

不幸的是,这并没有产生想要的行为:

在此处输入图片描述


我不知道我做错了什么,或者如何才能让所有东西+都正确对齐。你能给我指出正确的方向吗?

答案1

我建议您使用alignat环境而不是align

在此处输入图片描述

要使 居中,vdots您可以使用\makebox我已将其包装在\CenterWithin宏中的 。这会产生:

在此处输入图片描述

笔记:

  • 环境alignat产生r对齐l,因此需要双精度&&来产生左对齐(即跳过该r列)。

代码:

\documentclass{article}
\usepackage{mathtools}

\begin{document}
\begin{alignat*}{5}
  a_{11}x_1 &{}+ \ldots &&{}+ a_{1n}x_n &&= b_1\\ 
     \vdots &{}+ \vdots &&{}+    \vdots &&= \vdots\\ 
  a_{n1}x_1 &{}+ \ldots &&{}+ a_{nn}x_n &&= b_n
\end{alignat*}
\end{document}

代码:居中 vdots

\documentclass{article}
\usepackage{mathtools}

\newcommand*{\CenterWithin}[2]{%
    %% #1 = content to typset
    %% #2 = content whose width is used to determine where the center is
    \makebox[\widthof{$#2$}][c]{$#1$}%
}
\newcommand*{\VdotsC}{\CenterWithin{\vdots}{\ldots}}

\begin{document}
\begin{alignat*}{5}
  a_{11}x_1 &{}+ \ldots  &&{}+ a_{1n}x_n &&= b_1\\ 
  \CenterWithin{\vdots}{a_{11}x_1} &{}+ \VdotsC 
       &&{}+ \CenterWithin{\vdots}{a_{1n}x_n} &&= \CenterWithin{\vdots}{b_1} \\ 
  a_{n1}x_1 &{}+ \ldots  &&{}+ a_{nn}x_n &&= b_n
\end{alignat*}
\end{document}

相关内容