\left 和 \right 在方程式中跨越多行

\left 和 \right 在方程式中跨越多行

可能重复:
左/右跨多线方程

有人能解释一下为什么我不能让leftright命令正常工作

代码:

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

\begin{equation}
\begin{align}
\label{eq:foo}
s_{i}^{G}= & \min
\left
(
   \sqrt
   {          \min
      ( 
         (
            x_{i}^{G}-x
         )
            ^2, 
         (
            w_{T} - x_{i}^{G}-x
         )
            ^2  
      ) 
      + 
         y
   }
   ,\\
   & 
   \sqrt
   {          \min
      ( 
         (
            x_{i}^{G}-x
         )
            ^2, 
         (
            w_{T} - x_{i}^{G}-x
         )
            ^2  
      ) 
      + 
      \min 
      ( 
         (
            y_{i}^{G}-y
         )
            ^2, 
         (
            h_{T} - y_{i}^{G}-y
         )
            ^2
      )
   } 
\right
)
\end{align}
\end{equation}

\end{document}                                                          

答案1

一旦我们

  1. 将环境替换alignaligned(因为它在equation环境内并且您想要一个方程编号)。
  2. \right.在第一行结束之前添加结尾,并且
  3. \left(在对齐点后的第二行添加开口

我们得到:

在此处输入图片描述

\left结构\right可以不是交叉线或对齐点。如果需要\left在一条线上打开并在后续线上关闭它,则第一条线上需要有一个\right. 行尾,下一行需要有一个\left. 结束\right结构。因此\left\right在每一行上都是平衡的。类似的逻辑适用于对齐点的每一侧。

代码:

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

\begin{equation}
\begin{aligned}
\label{eq:foo}
s_{i}^{G}= & \min
\left(
   \sqrt
   {          \min
      ( 
         (
            x_{i}^{G}-x
         )
            ^2, 
         (
            w_{T} - x_{i}^{G}-x
         )
            ^2  
      ) 
      + 
         y
   }
\right.
   ,\\
   & 
\left.
   \sqrt
   {          \min
      ( 
         (
            x_{i}^{G}-x
         )
            ^2, 
         (
            w_{T} - x_{i}^{G}-x
         )
            ^2  
      ) 
      + 
      \min 
      ( 
         (
            y_{i}^{G}-y
         )
            ^2, 
         (
            h_{T} - y_{i}^{G}-y
         )
            ^2
      )
   } 
\right)
\end{aligned}
\end{equation}
\end{document}   

答案2

\left...\right我认为这是为什么在某些情况下这种结构问题多于用处的一个例子。我建议改用\bigX\BigX\biggX\BiggX命令系列;它们不需要配对,当发生行更改且行的高度不一致时,也不必进行手动调整。

下面是使用该命令系列的表达式的两种变体(内括号的大小也得到了更正);第二种变体另外使用了\smash

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

\begin{equation}
\begin{aligned}
\label{eq:foo}
s_{i}^{G}= & \min
\biggl(
   \sqrt
   {
      \min
      \bigl( 
         (
            x_{i}^{G}-x
         )
            ^2, 
         (
            w_{T} - x_{i}^{G}-x
         )
            ^2  
      \bigr) 
      + 
         y
   }
   ,\\
   &\quad 
   \sqrt
   {
      \min
      \bigl( 
         (
            x_{i}^{G}-x
         )
            ^2, 
         (
            w_{T} - x_{i}^{G}-x
         )
            ^2  
      \bigr) 
      + 
      \min 
      \bigl( 
         (
            y_{i}^{G}-y
         )
            ^2, 
         (
            h_{T} - y_{i}^{G}-y
         )
            ^2
      \bigr)
   } 
\biggr)
\end{aligned}
\end{equation}

\begin{equation}
\begin{aligned}
\label{eq:foo}
s_{i}^{G}= & \min
\Bigl(
   \sqrt
   {\smash[b]{
      \min
      \bigl( 
         (
            x_{i}^{G}-x
         )
            ^2, 
         (
            w_{T} - x_{i}^{G}-x
         )
            ^2  
      \bigr) 
      + 
         y
   }}
   ,\\
   &\quad 
   \sqrt
   {\smash[b]{
      \min
      \bigl( 
         (
            x_{i}^{G}-x
         )
            ^2, 
         (
            w_{T} - x_{i}^{G}-x
         )
            ^2  
      \bigr) 
      + 
      \min 
      \bigl( 
         (
            y_{i}^{G}-y
         )
            ^2, 
         (
            h_{T} - y_{i}^{G}-y
         )
            ^2
      \bigr)
   }}\, 
\Bigr)
\end{aligned}
\end{equation}

\end{document}

在此处输入图片描述

作为圭多在他的评论中提到,解决方程数位移问题的一个方法是将equation和的组合替换alignedmultline

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

\begin{multline}
\label{eq:foo}
s_{i}^{G}=  \min
\biggl(
   \sqrt
   {
      \min
      \bigl( 
         (
            x_{i}^{G}-x
         )
            ^2, 
         (
            w_{T} - x_{i}^{G}-x
         )
            ^2  
      \bigr) 
      + 
         y
   }
   ,\\
   \sqrt
   {
      \min
      \bigl( 
         (
            x_{i}^{G}-x
         )
            ^2, 
         (
            w_{T} - x_{i}^{G}-x
         )
            ^2  
      \bigr) 
      + 
      \min 
      \bigl( 
         (
            y_{i}^{G}-y
         )
            ^2, 
         (
            h_{T} - y_{i}^{G}-y
         )
            ^2
      \bigr)
   } 
\biggr)
\end{multline}

\begin{multline}
s_{i}^{G}= \min
\Bigl(
   \sqrt
   {\smash[b]{
      \min
      \bigl( 
         (
            x_{i}^{G}-x
         )
            ^2, 
         (
            w_{T} - x_{i}^{G}-x
         )
            ^2  
      \bigr) 
      + 
         y
   }}
   ,\\
   \sqrt
   {\smash[b]{
      \min
      \bigl( 
         (
            x_{i}^{G}-x
         )
            ^2, 
         (
            w_{T} - x_{i}^{G}-x
         )
            ^2  
      \bigr) 
      + 
      \min 
      \bigl( 
         (
            y_{i}^{G}-y
         )
            ^2, 
         (
            h_{T} - y_{i}^{G}-y
         )
            ^2
      \bigr)
   }}\, 
\Bigr)
\end{multline}

\end{document}

在此处输入图片描述

答案3

正如前面提到的,\left(\right.是配对,而不是\left(\right)
有一个名为breqn这样就可以跨换行符\left使用:\right

代码

\documentclass{article}
\usepackage{amsmath}
\usepackage{breqn}

\begin{document}
\begin{align}
s_{i}^{G}= & \min
\left(\sqrt{\min((x_{i}^{G}-x)^2,(w_{T} - x_{i}^{G}-x)^2)+y}\right., \notag\\
   & \left.\sqrt{\min((x_{i}^{G}-x)^2,(w_{T} - x_{i}^{G}-x)^2)+\min((y_{i}^{G}-y)^2, (h_{T} - y_{i}^{G}-y)^2)}\right)
\end{align}

\begin{dmath}
s_{i}^{G}= \min \left(\sqrt{\min((x_{i}^{G}-x)^2,(w_{T} - x_{i}^{G}-x)^2)+y},\\
          \mathrel{\phantom{=}} \sqrt{\min((x_{i}^{G}-x)^2,(w_{T} - x_{i}^{G}-x)^2)+\min((y_{i}^{G}-y)^2, (h_{T} - y_{i}^{G}-y)^2)}\right)
\end{dmath}
\end{document}

\notag隐藏了第一行的方程标签,因为两行都对应一个且仅一个方程(或者您使用环境aligned)。

输出

在此处输入图片描述

缺点

只要等式的两部分高度相等,\left(用结尾就没问题。对于如下等式(这只是一个例子,等式本身和第二部分前面的水平空间都不是讨论的重点)\right.

\begin{align}
    x & = \left( \frac{1}{2} \right. \notag \\
     & \quad  \left. {} + 1\right)
\end{align}

输出看起来不太好:
在此处输入图片描述

再次,您可以使用breqn或,这需要作者的注意\vphantom

\begin{align}
    x & = \left( \frac{1}{2} \right. \notag \\
      & \quad  \left. {\vphantom{\frac{1}{2}}} + 1\right)
\end{align}

\begin{dmath}
    x = \left( \frac{1}{2} \\
        \mathrel{\phantom{=}} {} + 1\right)
\end{dmath}

输出:
图3

相关内容