请考虑以下代码片段。我有两个大括号,但不幸的是,中间的单词“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
不要忽略编译错误。如果你编译示例,它会立即出错,因为cases
env 需要数学模式。这是更正确的方法
\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 作为这个例子?