对齐线性微分方程组

对齐线性微分方程组

如何在 Latex 中对齐线性微分方程组?我可以使用

\begin{cases}
x_1'(t) = x_1(t)-x_2(t)+2x_3(t)\\
x_2'(t) = -2x_1(t)+5x_2(t)+2x_3(t)\\
x_3'(t) = 8x_1(t)-5x_2(t)-2x_3(t)\\
\end{cases}

但我希望变量在垂直方向上排列得更好,每个变量都x_i在自己的列中。我通常使用systeme包来实现这一点,但是

\systeme{x_1'(t) = x_1(t)-x_2(t)+2x_3(t), x_2'(t) = -2x_1(t)+5x_2(t)+2x_3(t), x_3'(t) = 8x_1(t)-5x_2(t)-2x_3(t)}

给了我一个错误。

答案1

systeme不适合这项工作。你可以使用alignat,但它很麻烦。我建议iEEEeqnarray

\documentclass{article}
\usepackage{IEEEtrantools}

\begin{document}

\begin{IEEEeqnarray*}{rCrCrCr}
x_1'(t) & = &   x_1(t) & - &  x_2(t) & + & 2x_3(t) \\
x_2'(t) & = & -2x_1(t) & + & 5x_2(t) & + & 2x_3(t) \\
x_3'(t) & = &  8x_1(t) & - & 5x_2(t) & - & 2x_3(t) \\
\end{IEEEeqnarray*}

\end{document}

在此处输入图片描述

r表示右对齐的列,而C表示居中的列,并且在运算或关系符号周围有适当的空格。

答案2

一种解决方案是使用\syssubstitute。例如,下面A将被 替换为\mkern-22mu x_{1}'(t)a将被 替换为x_{1}(t)

\mkern-22mu创建\mkern-7mu一个负水平空间。

请注意%,删除行尾不需要的空格。

此外,\sysdelim..用于删除第二个的分隔符\systeme

在此处输入图片描述

\documentclass[border=6pt]{standalone}
\usepackage{systeme}
\begin{document}
\syssubstitute{A{\mkern-22mu x_{1}'(t)}B{\mkern-22mu x_{2}'(t)}C{\mkern-22mu x_{3}'(t)}a{x_{1}(t)}b{x_{2}(t)}c{x_{3}(t)}}%
$\systeme{A=,B=,C=}\mkern-7mu \sysdelim..\systeme{a-b+2c,-2a+5b+2c,8a-5b-2c}$
\end{document}

答案3

您可以使用以下方式构建对齐alignat

在此处输入图片描述

\documentclass{article}

\usepackage{amsmath}

\begin{document}

\[
  \begin{cases}
    \begin{alignedat}{4}
      x_1'(t) ={} &&   x_1(t) & {}-{} &  x_2(t) & {}+{} & 2x_3(t) \\
      x_2'(t) ={} && -2x_1(t) & {}+{} & 5x_2(t) & {}+{} & 2x_3(t) \\
      x_3'(t) ={} &&  8x_1(t) & {}-{} & 5x_2(t) & {}-{} & 2x_3(t)
    \end{alignedat}
  \end{cases}
\]

\end{document}

添加可{}确保二元关系/运算符周围的适当间距。

相关内容