我正在我的 Latex 代码中插入一个方程式,但它出现了问题。
我试图创建一个由两个方程组成的系统,但问题不断出现,我不知道为什么
\begin{equation}
\begin{array}
\frac{d\vec{x}_P}{dt}(t) = \vec{u}_P(\vec{x}_{str}(t), t)\\
\vec{x}_{str}(t = \tau) = \vec{x}_{P0}
\end{array}
\end{equation}
希望你能帮忙,提前谢谢
答案1
array
由于您没有指定对齐方式,因此会抛出错误。例如,如果我们将对齐方式设置为l
左对齐,则编译正常:
\documentclass{article}
\begin{document}
\begin{equation}
\begin{array}{l}
\frac{d\vec{x}_P}{dt}(t) = \vec{u}_P(\vec{x}_{str}(t), t)\\
\vec{x}_{str}(t = \tau) = \vec{x}_{P0}
\end{array}
\end{equation}
\end{document}
就像 @dg 在评论中所说的那样,根据您希望它们的外观,有更好的方法来排版方程组。我个人使用cases
from amsmath
,但我将把这个讨论留给评论中的其他人。
此外,_{str}
下标实际上应该是这样的_{\mathrm{str}}
。后者被视为文本并按文本设置样式,而前者只是变量序列,并不总是能正确调整字距。
答案2
array
需要一个参数来指定列类型。在您的例子中,单个列l
被对齐。
但这不是适合此目的的正确工具。请参阅手册amsmath
以获得更好的选择。这里我推荐aligned
(或split
)。
\documentclass{article}
\usepackage{amsmath}
\begin{document}
You're missing the column specification for \texttt{array}
\begin{equation}
\begin{array}{l}
\frac{d\vec{x}_P}{dt}(t) = \vec{u}_P(\vec{x}_{str}(t), t)\\
\vec{x}_{str}(t = \tau) = \vec{x}_{P_0}
\end{array}
\end{equation}
but you can do much better with \texttt{aligned}
and \verb+\mathrm{str}+
\begin{equation}
\begin{aligned}
& \frac{d\vec{x}_P}{dt}(t) = \vec{u}_P(\vec{x}_{\mathrm{str}}(t), t)\\
& \vec{x}_{\mathrm{str}}(t = \tau) = \vec{x}_{P_0}
\end{aligned}
\end{equation}
\end{document}
我也固定P0
成P_0
。