如何使方程式沿括号内的运算符对齐?

如何使方程式沿括号内的运算符对齐?

编辑3:如果您确实想实现我的要求,请参阅我自己的答案!

问题
当我将对齐字符(& 符号)放在括号内时,它会破坏编译器。

% !TEX TS-program = pdflatex
\documentclass[11pt]{article}
\usepackage[utf8]{inputenc}
\usepackage{array}
\usepackage{amsmath}
\newcommand{\overbar}[1]{\mkern 1.5mu\overline{\mkern-1.5mu#1\mkern-1.5mu}\mkern 1.5mu}
\newcommand{\minus}{\scalebox{0.6}[1.0]{$-$}}

\begin{document}
    \begin{equation}
    \resizebox{\linewidth}{!}{
        $\begin{aligned}
            \minus\frac{{K_y}_i}{\Delta y^2 \left(1 &+ \frac{K_i^2 \pi^2 \Delta y^2}{12}\right)} \overbar{T}_{i, j-1}\\
            \minus\frac{{K_x}_i}{\Delta x^2\! \left(1 - \frac{\pi^2 \Delta x^2}{12}\right)} \overbar{T}_{i-1, j} + 2 \!\left(\! \frac{{K_x}_i}{\Delta x^2 \left(1 - \frac{\pi^2 \Delta x^2}{12}\right)} \!&+\! \frac{{K_y}_i}{\Delta y^2 \left(1 + \frac{K_i^2 \pi^2 \Delta y^2}{12}\right)} \!\right)\! \overbar{T}_{i, j} - \frac{{K_x}_i}{\Delta x^2\! \left(1 - \frac{\pi^2 \Delta x^2}{12}\right)} \overbar{T}_{i+1, j}\\
            \minus\frac{{K_y}_i}{\Delta y^2 \left(1 &+ \frac{K_i^2 \pi^2 \Delta y^2}{12}\right)} \overbar{T}_{i, j+1}
        \end{aligned}
        =0$
    }
    \end{equation}
\end{document}

细节与研究
我想任意对齐方程式,以便创建节点矩阵的“模板”表示来说明 FDM 组装过程。浏览约 7 篇与对齐相关的帖子时,没有一篇提供我想要的功能。

我尝试过的方法
我通过对齐到括号外的某个点并添加一大堆空格来实现了一种解决方法:

\begin{equation}
\resizebox{\linewidth}{!}{
    $\begin{aligned}
        &\hspace{3em}\minus\frac{{K_y}_i}{\Delta y^2 \left(1 + \frac{K_i^2 \pi^2 \Delta y^2}{12}\right)} \overbar{T}_{i, j-1}\\
        \minus\frac{{K_x}_i}{\Delta x^2\! \left(1 - \frac{\pi^2 \Delta x^2}{12}\right)} \overbar{T}_{i-1, j} + 2 &\!\left(\! \frac{{K_x}_i}{\Delta x^2 \left(1 - \frac{\pi^2 \Delta x^2}{12}\right)} \!+\! \frac{{K_y}_i}{\Delta y^2 \left(1 + \frac{K_i^2 \pi^2 \Delta y^2}{12}\right)} \!\right)\! \overbar{T}_{i, j} - \frac{{K_x}_i}{\Delta x^2\! \left(1 - \frac{\pi^2 \Delta x^2}{12}\right)} \overbar{T}_{i+1, j}\\
        &\hspace{3em}\minus\frac{{K_y}_i}{\Delta y^2 \left(1 + \frac{K_i^2 \pi^2 \Delta y^2}{12}\right)} \overbar{T}_{i, j+1}
    \end{aligned}
    =0$
}
\end{equation}

期望结果

不过,我想要一个不那么复杂的解决方案。

提前致谢!

编辑2:它仍然没有回答我的问题,但以下改进将更容易地表示出我希望能够做的事情。我根据 Mico 的建议做了以下改进。同样,我不得不使用一种解决方法,尽管它更简洁: 在此处输入图片描述

\noindent Let $\kappa_x = \frac{{K_x}_i}{\Delta x^2\! \left(1 - \frac{\pi^2 \Delta x^2}{12}\right)}$ and $\kappa_y = \frac{{K_y}_i}{\Delta y^2 \left(1 + \frac{K_i^2 \pi^2 \Delta y_i^2}{12}\right)}$. Then
\begin{equation}
    \begin{aligned}
        &\minus\kappa_y \overbar{T}_{i, j-1}\\
        \minus\kappa_x \overbar{T}_{i-1, j} + 2 &\left( \kappa_x + \kappa_y \right) \overbar{T}_{i, j} - \kappa_x \overbar{T}_{i+1, j}\\
        &\minus\kappa_y \overbar{T}_{i, j+1}
    \end{aligned}
    =0
\end{equation}

答案1

评论:在从原贴作者那里了解到三行中五个加法项的(对我来说)不寻常的十字形布局意味着什么之后,我彻底更新了这个答案。

您的读者应该很容易理解以下一行等式。(请注意,我将左边的项乘以了-1,这是允许的,因为它们的和等于。)使用此设置,请用一两句话来解释涉及、和的0项的元素排序。T_{.,j-1}T{.,j}T_{.,j+1

在此处输入图片描述

\documentclass[11pt]{article}
\let\overbar\overline  % ?
\begin{document}

Set $\kappa_x={K_x}_i\big/\bigl[\Delta x^2(1-\pi^2)/12\bigr]$ and 
$\kappa_y={K_y}_i\big/\bigl[\Delta y^2(1+K_i^2\pi^2 )/12\bigr]$. 
Then
\begin{equation}
  \kappa_y \overbar{T}_{i,j-1} 
+ \kappa_x \overbar{T}_{i-1,j} 
- 2(\kappa_x + \kappa_y) \overbar{T}_{i,j} 
+ \kappa_x \overbar{T}_{i+1,j}
+ \kappa_y \overbar{T}_{i,j+1}
=0
\end{equation}

\end{document}

答案2

我认为这里讨论的其他选项看起来更好,并且可读性更强,但如果您使用 LuaLaTeX 并且真的想做这种奇怪的对齐,您可以使用我的luamathalign包。

它引入了一个\AlignHere宏,其作用类似于&,只是它没有这些关于它不能出现的地方的令人讨厌的限制:只需加载luamathalign并用 替换每个有问题&\AlignHere

% !TEX TS-program = lualatex
\documentclass{article}
\usepackage{unicode-math,luamathalign}
\begin{document}
\begin{equation}
    \begin{aligned}
        \minus\frac{{K_y}_i}{\Delta y^2 \left(1 \AlignHere+ \frac{K_i^2 \pi^2 \Delta y^2}{12}\right)} \overbar{T}_{i, j-1}\\
        \minus\frac{{K_x}_i}{\Delta x^2\! \left(1 - \frac{\pi^2 \Delta x^2}{12}\right)} \overbar{T}_{i-1, j} + 2 \!\left(\! \frac{{K_x}_i}{\Delta x^2 \left(1 - \frac{\pi^2 \Delta x^2}{12}\right)} \!\AlignHere+\! \frac{{K_y}_i}{\Delta y^2 \left(1 + \frac{K_i^2 \pi^2 \Delta y^2}{12}\right)} \!\right)\! \overbar{T}_{i, j} - \frac{{K_x}_i}{\Delta x^2\! \left(1 - \frac{\pi^2 \Delta x^2}{12}\right)} \overbar{T}_{i+1, j}\\
        \minus\frac{{K_y}_i}{\Delta y^2 \left(1 \AlignHere + \frac{K_i^2 \pi^2 \Delta y^2}{12}\right)} \overbar{T}_{i, j+1}
    \end{aligned}
    =0
\end{equation}

\end{document}

在此处输入图片描述

答案3

编辑2:查看奖金解决方案以便能够确切地原始问题问的是什么!

哎呀,事实证明我应该更深入地考虑我看到的另一篇与将东西放入矩阵有关的帖子。如果我执行以下操作,它会完美对齐,并且更清楚地表明所有项都等于零。感谢@Mico 引导我找到这个答案!

\noindent Let $\kappa_x = \frac{{K_x}_i}{\Delta x^2\! \left(1 - \frac{\pi^2 \Delta x^2}{12}\right)}$ and $\kappa_y = \frac{{K_y}_i}{\Delta y^2 \left(1 + \frac{K_i^2 \pi^2 \Delta y_i^2}{12}\right)}$. Then
\begin{equation}
    \begin{pmatrix}
        \minus\kappa_y \overbar{T}_{i-1, j}\\
        \minus\kappa_x \overbar{T}_{i, j-1} + 2 \left( \kappa_x + \kappa_y \right) \overbar{T}_{i, j} - \kappa_x \overbar{T}_{i, j+1}\\
        \minus\kappa_y \overbar{T}_{i+1, j}
    \end{pmatrix}
    =0
\end{equation}

结果如下: 在此处输入图片描述

现在我想起来,如果我不想要括号,我甚至可以执行以下操作:

\noindent Let $\kappa_x = \frac{{K_x}_i}{\Delta x^2\! \left(1 - \frac{\pi^2 \Delta x^2}{12}\right)}$ and $\kappa_y = \frac{{K_y}_i}{\Delta y^2 \left(1 + \frac{K_i^2 \pi^2 \Delta y_i^2}{12}\right)}$. Then
\begin{equation}
    \begin{matrix}
        \minus\kappa_y \overbar{T}_{i-1, j}\\
        \minus\kappa_x \overbar{T}_{i, j-1} + 2 \left( \kappa_x + \kappa_y \right) \overbar{T}_{i, j} - \kappa_x \overbar{T}_{i, j+1}\\
        \minus\kappa_y \overbar{T}_{i+1, j}
    \end{matrix}
    =0
\end{equation}

这将导致以下结果: 在此处输入图片描述

编辑:奖励解决方案!(恰好是最接近原始问题的答案)如果您确实使用 \left 和 \right 做了一些很高的事情(我最终不需要),只需在对齐运算符周围打开和关闭右侧和左侧,然后添加 \vphantom{<与您想要的括号/大括号/圆括号相同的高度>}:

\noindent Let $\kappa_x = \frac{{K_x}_i}{\Delta x^2\! \left(1 - \frac{\pi^2 \Delta x^2}{12}\right)}$ and $\kappa_y = \frac{{K_y}_i}{\Delta y^2 \left(1 + \frac{K_i^2 \pi^2 \Delta y_i^2}{12}\right)}$. Then
\begin{equation}
    \begin{aligned}
        \minus\kappa_y &\overbar{T}_{i, j-1}\\
        \minus\kappa_x \overbar{T}_{i-1, j} + 2 \left(\kappa_x \vphantom{\kappa_x} \right. &+ \left.\vphantom{\kappa_y} \kappa_y\right) \overbar{T}_{i, j} - \kappa_x \overbar{T}_{i+1, j}\\
        \minus\kappa_y &\overbar{T}_{i, j+1}
    \end{aligned}
    =0
\end{equation}

原始问题的答案

相关内容