如何在方程式之间的 align* 环境中添加水平线

如何在方程式之间的 align* 环境中添加水平线

我正在尝试在对齐的方程式之间添加一条水平线。

我尝试使用\rule命令,但问题是它本身将该命令视为一个方程式,因为我在\\此命令之前和之后使用,否则它无法正确对齐方程式。有了这些,它会在水平规则的上方和下方使用不必要的空间。我希望输出是这样的,方程式按照环境预期对齐align*,两个方程式之间“外部插入”一条水平线。

\begin{align*}
    y_2\times (y_2''+Py_2'+Qy_2) &=0\\
    -y_1\times (y_1''+Py_1'+Qy_1) &=0\\
    \rule{4.7cm}{1pt}&\rule{1cm}{1pt}\\
    y_1y_2''-y_1''y_2+P(y_1y_2'-y_1'y_2) &= 0\\
\end{align*}

以上是我写的,但它显示水平线上方和下方的空间太多了。即使我将此规则向上移动 3 毫米,规则下方的空间也会增加,问题仍然相同。有没有办法添加一条水平线,其下方和上方的空间也可以控制?

请帮忙。

答案1

借助array而不是align*

在此处输入图片描述

\documentclass{article}
\usepackage{amsmath}
\begin{document}
\[
\setlength{\arraycolsep}{0pt}
\begin{array}{rl}
     y_2\times (y_2''+Py_2'+Qy_2) &{}=0\\
    -y_1\times (y_1''+Py_1'+Qy_1) &{}=0\\
    \hline
     y_1y_2''-y_1''y_2+P(y_1y_2'-y_1'y_2) &{}= 0\\
\end{array}
\]
\end{document}

答案2

您可以使用aligned\midrule来自booktabs

\documentclass{article}
\usepackage{amsmath,booktabs}

\begin{document}

\begin{equation*}
\begin{aligned}
    y_2\times (y_2''+Py_2'+Qy_2) &=0\\
    -y_1\times (y_1''+Py_1'+Qy_1) &=0\\
    \midrule
    y_1y_2''-y_1''y_2+P(y_1y_2'-y_1'y_2) &= 0\\
\end{aligned}
\end{equation*}

\end{document}

在此处输入图片描述

相关内容