如何仅用右括号写出多行方程

如何仅用右括号写出多行方程

我用以下公式写出

\begin{eqnarray}
u_k^{n+1}=\argmin_{u_k \epsilon X} 
 \left\lbrace \alpha \left|\left|\partial_t\left[\left(\delta(t)+\frac{j}{\pi t}\right)*u_k(t)\right]e^{-j\omega_kt}\right|\right|_2^2
\\ +\left|\left| f(t)-\sum_i u_i(t) + \frac{\lambda(t)}{2} \right|\right|_2^2  \right\rbrace
\end{eqnarray}

但出现错误

 ! Extra }, or forgotten \right.][1]

答案1

您没有平衡\left\right跨越换行符。此外,最好不要使用eqnarray,而要使用诸如等amsmath设施。align

\documentclass{article}
\usepackage{mathtools}
\DeclareMathOperator*{\argmin}{arg\,min}
\begin{document}
  \begin{equation}
  \begin{multlined}
u_k^{n+1}=\argmin_{u_k \epsilon X}
 \left\lbrace \alpha \left|\left|\partial_t\left[\left(\delta(t)+\frac{j}{\pi t}\right)*u_k(t)\right]e^{-j\omega_kt}\right|\right|_2^2 \right.\\ 
\left.+\left|\left| f(t)-\sum_i u_i(t) + \frac{\lambda(t)}{2} \right|\right|_2^2  \right\rbrace
\end{multlined}
\end{equation}
\end{document}

我已经使用过multlinedmathtools它也会加载amsmath)。

在此处输入图片描述

改良版:

除了使用\left\right对(Mico 指出这会占用更多空间,并且需要在各行之间保持平衡)之外,您还可以使用amsmath 中的BigglBiggr。以下是第 15 页的屏幕截图amsldoctexdoc amsldoc):

在此处输入图片描述

对于双杠,使用\DeclarePairedDelimiter类似

 \DeclarePairedDelimiter{\norm}{\lVert}{\rVert}

并像下面这样使用它\norm[\bigg]{<content>}(感谢 Mico)

\documentclass{article}
\usepackage{mathtools}
\DeclareMathOperator*{\argmin}{arg\,min}
\DeclarePairedDelimiter{\norm}{\lVert}{\rVert}
\begin{document}
  \begin{equation}
  \begin{multlined}
    u_k^{n+1}=\argmin_{u_k \epsilon X}
        \Biggl\lbrace \alpha \norm[\bigg]{\partial_t\left[\left(\delta(t)+\frac{j}
            {\pi t}\right)*u_k(t)\right]e^{-j\omega_kt}}_2^2 \\
        +\norm[\bigg]{f(t)-\sum_i u_i(t) + \frac{\lambda(t)}{2}}_2^2  \Biggr\rbrace
\end{multlined}
\end{equation}
\end{document}

在此处输入图片描述

可以按照@MaxNoe 的建议,使用命令的“星号”版本来自动调整双垂直条的大小,即,\norm*{<content>}但是,在手头的例子中,这样做会生成分隔符,太大了\norm[\bigg]{<content>}——因此在上面的代码中使用了明确的大小指令。

相关内容