在两个括号之间书写会导致间距错误

在两个括号之间书写会导致间距错误

请考虑以下代码片段。我有两个大括号,但不幸的是,中间的单词“and”没有完全位于两个括号的中间。我该如何解决这个问题?

\documentclass{article}
\usepackage{amsmath}

\begin{document}

\begin{cases}
    x^{k+1} &= y^{k}+z^{k}\\
    y^{k+1} &= x^{k+1}\\
    z^{k+1} &= \frac{x^{k+1}}{y^{k+1}}
\end{cases}

and \\

\begin{cases}
    u^{k+1} &= v^{k} - w^{k}\\
    v^{k+1} &= u^{k+1}\\
    w^{k+1} &= \frac{u^{k+1}}{v^{k+1}}
\end{cases}

\end{document}

请参阅以下内容:

'并且' 不在中间

答案1

一个观察和两个建议:

  • 你是严重滥用环境cases&符号应该不是可以按照您在代码中的方式使用。它们应该仅用于在第一列中排版一组结果,在第二列中排版这些结果为真的条件。

  • 不要and \\在数学模式块内的文本模式下使用。要么明确地切换数学模式,要么\intertext在(多行)数学模式下使用来排版一小段文本。

  • 如果您决定留在数学模式,请不要留下全空行。

这是一个使用两个独立数学块的解决方案——观察使用\[\]来启动和终止显示数学模式:

\documentclass{article}
\usepackage{amsmath} % for 'cases' environment
\begin{document}
\[
(x,y,z) =
\begin{cases}
    x^{k+1} = y^{k}+z^{k}\\
    y^{k+1} = x^{k+1}\\
    z^{k+1} = \frac{x^{k+1}}{y^{k+1}}
\end{cases}
\]
and 
\[
(u,v,w) = 
\begin{cases}
    u^{k+1} = v^{k} - w^{k}\\
    v^{k+1} = u^{k+1}\\
    w^{k+1} = \frac{u^{k+1}}{v^{k+1}}
\end{cases}
\]
\end{document}

这是一个使用单一align*环境和\intertext指令的解决方案。由于不了解您的数学排版需求,因此无法说哪种解决方案更好。

\documentclass{article}
\usepackage{amsmath} % for 'cases' and 'align*' environments
\begin{document}
\begin{align*}
(x,y,z) &=
\begin{cases}
    x^{k+1} = y^{k}+z^{k}\\
    y^{k+1} = x^{k+1}\\
    z^{k+1} = \frac{x^{k+1}}{y^{k+1}}
\end{cases}
\intertext{and}
(u,v,w) &= 
\begin{cases}
    u^{k+1} = v^{k} - w^{k}\\
    v^{k+1} = u^{k+1}\\
    w^{k+1} = \frac{u^{k+1}}{v^{k+1}}
\end{cases}
\end{align*}
\end{document}

以下是两种推荐解决方案的输出结果。垂直的布局恰好是一样的。

在此处输入图片描述


附录:如果您需要对齐两个大开花括号以及=每组方程中的符号,我建议您放弃使用环境cases,而是使用构造aligned内的环境\left\{ ... \right.。(以下代码借用了您后来删除的帖子。)

在此处输入图片描述

\documentclass{article}
\usepackage{amsmath} % for 'align*' and 'aligned' environments and '\intertext' macro

\begin{document}
\begin{align*}
&\left\{ \begin{aligned}
    f^{k+1}   &= (R_{\Omega\setminus\Lambda} + \mu_1 I + \kappa R_{\Lambda})^{-1}
                 \bigl( R_{\Omega\setminus\Lambda}(Pu^{k}) + \kappa R_{\Lambda}f_0 
                 + W_1^{T}(d_1^k - \tfrac{1}{\mu_1}b_1^k) \bigr)\\
    d_1^{k+1} &= \mathcal{T}^p_{\lambda_1/\mu_1}(W_1f^{k+1} + \tfrac{1}{\mu_1}b_1^k)\\
    b_1^{k+1} &= b_1^k + \mu_1(W_1 f^{k+1} - d_1^{k+1})
\end{aligned} \right. \\
\intertext{and}
&\left\{ \begin{aligned}
    u^{k+1}   & = (P^{T}\!P + \mu_2 I)^{-1}
                  \bigl( P^{T} (R_{\Omega\setminus\Lambda}f + f_0) 
                  + W^{T}(d_2^k - \tfrac{1}{\mu_2}b_2^k) \bigr)\\
    d_2^{k+1} &= \mathcal{T}^p_{\lambda_2/\mu_2}(W_2u^{k+1} + \tfrac{1}{\mu_2}b_2^k)\\
    b_2^{k+1} &= b_2^k + \mu_2(W_2 u^{k+1} - d_2^{k+1})
\end{aligned} \right.
\end{align*}
\end{document}

答案2

不要忽略编译错误。如果你编译示例,它会立即出错,因为casesenv 需要数学模式。这是更正确的方法

\documentclass{article}
\usepackage{amsmath}
\begin{document}
\[
  \begin{cases}
    x^{k+1} &= y^{k}+z^{k}\\
    y^{k+1} &= x^{k+1}\\
    z^{k+1} &= \frac{x^{k+1}}{y^{k+1}}
  \end{cases}
\]
and
\[
  \begin{cases}
    u^{k+1} &= v^{k} - w^{k}\\
    v^{k+1} &= u^{k+1}\\
    w^{k+1} &= \frac{u^{k+1}}{v^{k+1}}
  \end{cases}
\]
\end{document}

此外,切勿\\在文本中使用,您永远不需要在文本中强制换行(如果您认为需要,那么您可能错了)。另外,不要and像这里一样在周围添加空行,然后and将两个空行加在一起cases形成自己的段落。这不是你的意思。

只是想知道,您是否碰巧使用了 Overleaf 作为这个例子?

相关内容