如何使方程跨越LaTeX中的整个页面/行?

时间:2009-10-10 10:37:34

标签: latex math-mode

我有这个等式并且它很大(基本上是FDM)但它与文本对齐然后在右侧继续到虚无。我尝试过像\begin{center}\hspace*{-2.5cm}之类的东西,但无济于事。我希望它不仅仅是从左边距到右边使用整条线。

我该怎么做,是否需要为它安装一些特殊包装?

我使用\[而不是像这样的displaymath

\[
  Equation arrays here
\]

代码

\[
 \left(
   \begin{array}{cccccc}
      -(2\kappa+\frac{hV\rho}{2}) & (\frac{hV\rho}{2}-\kappa) & 0 & \cdots  & 0 \\
      -\kappa & -(2\kappa+\frac{hV\rho}{2}) & (\frac{hV\rho}{2}-\kappa) & 0 & \cdots \\  
      0 & -\kappa & -(2\kappa+\frac{hV\rho}{2}) & (\frac{hV\rho}{2}-\kappa) & 0 & \cdots \\  
      \vdots  & 0  & \ddots & \vdots  \\
      \vdots & \vdots  & \vdots  & -\kappa & -(2\kappa+\frac{hV\rho}{2}) & (\frac{hV\rho}{2}-\kappa) \\  
      0 & \vdots  & \vdots  & 0 & \kappa - \frac{2h\kappa_{v}}{\kappa}(\frac{hv\rho}{2} - \kappa) & -2\kappa \\  
   \end{array} 
 \right)
 \left(
   \begin{array}{c}
      T_{1} \\
      T_{2} \\
      \vdots \\
      T_{n} \\
   \end{array} 
 \right)
 =  
 \left(
   \begin{array}{c}
      Q(0) + \kappa T_{0} \\
      Q(h) \\
      Q(2h) \\
      \vdots \\
      Q((n-1)h) \\
      2\frac{\kappa_{v}}{\kappa_{v}}T_{out} \\
   \end{array} 
 \right)  
\]

4 个答案:

答案 0 :(得分:5)

\[ \]分隔符用于单线方程。在基本的LaTeX中,您可以使用eqnarray环境制作多线方程,也可以使用multline包中的amsmath环境。 eqnarray环境允许您使用\\进行换行,但如果您希望对等式进行编号,则还需要在所有行上使用\nonumber命令,但要防止编号所有线路。 multline环境适用于单个方程,因此它总是只生成一个方程编号。

编辑:这不是我惯常做的事情,但由于你的等式确实适合单行,这里是我用以获得整行跨越事物的代码:

\newenvironment{widefig}[1][1in]{%
  \begin{list}{}{\setlength{\itemindent}{-#1}%
      \setlength{\leftmargin}{0pt}%
      \setlength{\rightmargin}{0pt}}\item
  }{%
  \end{list}
}

就像环境名称所暗示的那样,我为太宽而无法容纳在边距内的数字编写了它,因此这允许控制左边距并允许图形在整条线上居中。

我如何修改您的示例是将其包装在\begin{widefig}[1.5in] - \end{widefig}对中,添加

\relpenalty=10000
\binoppenalty=10000

\begin{widefig}行之后禁止在公式内部换行,并将\[\]更改为\(\),因为widefig环境仅适用于内联,而不是显示。您可能还需要调整\begin行上给出的空间量,以使等式正确居中。

我不相信这是非常好的排版风格,所以你要小心使用它,并且最好尝试将内容放入边缘。例如,在这种情况下,您还可以删除第一个矩阵中的几列;通常的标准是只有第一个,第二个和最后一个,但你可能也想要倒数第二行和列,因为最后一行和列的值的变化有点令人惊讶。如果你这样做,它可能适合(但我没有检查)。

答案 1 :(得分:1)

如果确实不希望在行上打破等式,你不介意打破文本宽度,你可以尝试类似:(未经测试)

\centerline{$\displaystyle <long equation here>$}

答案 2 :(得分:0)

你可以使用\\添加换行符吗? 开始中心只对齐数字之类的东西,它不会影响线方程。

您可能希望查看美国数学协会对其软件包的指南 ftp://ftp.ams.org/pub/tex/doc/amsmath/amsldoc.pdf

答案 3 :(得分:0)

您可以使用eqnarray环境将方程式分解为多行。