方程超出了 eqnarray 环境的边界!

方程超出了 eqnarray 环境的边界!

我正在尝试使用以下内容。不幸的是,最后一行超出了页面范围。如何修复这个问题,或者还有其他方法可以编写相同的代码吗?

\documentclass{article}
\usepackage{eqnarray,amsmath}
\begin{document}

\begin{eqnarray*}\label{alphaf}
\alpha+M(d(fx_n,fz_n))&\leq&\alpha+\alpha(fx_n,fz_m)M(d(fx_n,fz_k))\\&\leq& M(M_{f,h}(fx_n,fz))\\&=&M(x,y)\bigg(max\left\{d(fx_n,fz),d(fx_n,fx_n),d(fz,fz),\frac{d(fx_n,fz)+d(fz_b,fx_n)}{h}\right\}\bigg)
\end{eqnarray*}
\end{document}

在此处输入图片描述

答案1

您必须手动拆分过长的等式。这里有一个看起来很自然的方法,使用一些间距调整\phantom

在此处输入图片描述

\documentclass{article}

\usepackage{amsmath}

\begin{document}

\begin{align*}
  \alpha + M(d(fx_n,fz_n)) &\leq \alpha + \alpha(fx_n,fz_m) M(d(fx_n,fz_k)) \\
                           &\leq M(M_{f,h}(fx_n,fz)) \\
                           &= M(x,y) \max \bigl\{ d(fx_n,fz),d(fx_n,fx_n), \\
                           &\phantom{{}={} M(x,y) \max \bigl\{}d(fz,fz),\tfrac{d(fx_n,fz)+d(fz_b,fx_n)}{h} \bigr\}
\end{align*}

\end{document}

避免使用eqnarray

答案2

另一个align*基于 的解决方案。它与@Werner 的解决方案的不同之处在于实现最后一行缩进的方式以及对最后一行分数表达式的处理方式。

在此处输入图片描述

\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{align*}
\alpha+M(d(fx_n,fz_n))
&\leq\alpha+\alpha(fx_n,fz_m)M(d(fx_n,fz_k))\\
&\leq M(M_{f,h}(fx_n,fz))\\
&= M(x,y)\max\bigl\{ d(fx_n,fz),d(fx_n,fx_n),\\
&\qquad\qquad d(fz,fz),\tfrac{1}{h}\bigl[d(fx_n,fz)+d(fz_b,fx_n)\bigr] \bigr\}
\end{align*}
\end{document}

答案3

我将添加另外三种变体:

\documentclass{article}
\usepackage[showframe]{geometry}%
 \usepackage{mathtools, nccmath}

\begin{document}

\begin{align*}
  \alpha+M(d(fx_n,fz_n))
    & \leq\alpha+α(fx_n,fz_m)M(d(fx_n,fz_k)) \\
    & \leq M(M_{f,h}(fx_n,fz)) \\
    & =\!\begin{multlined}[t] M(x,y)\max\bigl\{ d(fx_n,fz),d(fx_n,fx_n), d(fz,fz), \\[0.5ex]
  \mfrac{1}{h}\bigl[d(fx_n,fz)+d(fz_b,fx_n)\bigr] \bigr\}
  \end{multlined}
\end{align*}

\begin{align*}
  \alpha+M(d(fx_n,fz_n))
  &\leq\alpha+α(fx_n,fz_m)M(d(fx_n,fz_k))\\
  &\leq M(M_{f,h}(fx_n,fz))\\
    & =\!\begin{aligned}[t] M(x,y)\max\bigl\{ d(fx_n,fz),d(fx_n,fx_n), d(fz,fz) & , \\
  \mfrac{1}{h}\bigl[d(fx_n,fz)+d(fz_b,fx_n) & \bigr] \bigr\}
  \end{aligned}
\end{align*}

\begin{align*}
  \alpha+M(d(fx_n,fz_n))
    & \leq\alpha+α(fx_n,fz_m)M(d(fx_n,fz_k)) \\
    & \leq M(M_{f,h}(fx_n,fz)) \\
    & =\! M(x,y)\max \!\begin{Bmatrix*}[r]d(fx_n,fz),d(fx_n,fx_n), d(fz,fz), \\[0.5ex]
  \mfrac{1}{h}\bigl[d(fx_n,fz)+d(fz_b,fx_n)\bigr]
  \end{Bmatrix*}
\end{align*}

\end{document} 

在此处输入图片描述

答案4

您可以使用multlined来自mathtools

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

\usepackage{showframe} % just for this example

\begin{document}

\begin{align*}
\alpha + M(d(fx_n,fz_n))
  &\leq \alpha + \alpha(fx_n,fz_m) M(d(fx_n,fz_k)) \\
  &\leq M(M_{f,h}(fx_n,fz)) \\
  &= \!\begin{multlined}[t]
     M(x,y) \max \biggl\{ d(fx_n,fz),d(fx_n,fx_n),
     \qquad\qquad % make the top a bit wider
     \\
     d(fz,fz),\frac{d(fx_n,fz)+d(fz_b,fx_n)}{h} \biggr\}
     \end{multlined}
\end{align*}

\end{document}

注意:showframe仅用于显示文本块边距

在此处输入图片描述

相关内容