我想用 latex 写下这个算法
我在 Latex 中写下了代码。这是我的代码:
\begin{enumerate}
\item Algorithm EIF\_ initialize($ u_{1:t}$):
\item \begin{gather}\begin{pmatrix} \mu_{0,x} \\
\mu_{0,y} \\ \mu_{0,\theta} \end{pmatrix} =
\begin{pmatrix} 0 \\ 0 \\0 \end{pmatrix}\end{gather}
\item for all control u_t = (v_t,\omega_t)^T do
\item \begin{pmatrix}
\mu_{t,x} \\ \mu_{t,y} \\ \mu_{t,\theta}
\end{pmatrix}
= \begin{pmatrix}
\mu_{t-1,x} \\ \mu_{t-1,y} \\ \mu_{t-1,\theta}
\end{pmatrix} \plus \begin{pmatrix}
-v_t/\omega_t sin\mu_{t-1,\theta}+ v_t/\omega_t
sin(\mu_{t-1,\theta}+\omega_t\Delta t) \\
v_t/\omega_t cos\mu_{t-1,\theta} -v_t/\omega_t
cos(\mu_{t-1,\theta}+\omega_t\Delta t) \\
\omega_t\Delta t
\end{pmatrix}
\item endfor
\item return \mu_{0:t}
\end{enumerate}
它会引发许多错误,输出也看起来像
这并不准确。
错误如下:
Missing $ inserted.
\item for all control u_Command \item invalid in math mode.
\item Something's wrong--perhaps a missing \item.
\item \begin Something's wrong--perhaps a missing \item.
\item \begin Undefined control sequence.
\end{pmatrix} \begin{pmatrix} \plus
Command \item invalid in math mode.
\item Missing $ inserted.
\item e Missing } inserted.
\item e Extra }, or forgotten \endgroup.
\item e Missing $ inserted.
\item return \mu Command \end{enumerate} invalid in math mode.
\end{enumerate} Something's wrong--perhaps a missing \item.
\end{enumerate}
Something's wrong--perhaps a missing \item.
\end{enumerate} Missing $ inserted.
\end{enumerate} Overfull \hbox (111.12874pt too wide) in paragraph
答案1
- 您需要使用数学环境来进行“一切数学”,请参阅
$
插入的 I。 - 我还将
sin
和替换cos
为\sin
和\cos
。 - 还有一个
\plus
我用来替换的+
(可能是错的)。 - 我也删除了一个
\item
(可能是错的)。 - 您可以使用 /和
gather
/打开/关闭方程式编号(参见代码和结果)。align
gather*
align*
- 我还加入了实分数。您可能想回到普通符号或
\nicefrac
。 - 我根据您给出的示例更改了一些字体。请注意,我在第一行使用了一个卑鄙的伎俩,因为许多数学字体不包括粗体斜体。您可能想回到
$ u_{1:t}$
。
以下是代码:
\documentclass{memoir}
\usepackage{amsmath,nicefrac}
\begin{document}
\begin{enumerate}
\item \textbf{Algorithm EIF\_initialize(\textit{u}\textsubscript{1:\textit t}):} \slshape
\item \begin{gather}
\begin{pmatrix}
\mu_{0,x} \\ \mu_{0,y} \\ \mu_{0,\theta}
\end{pmatrix}
=\begin{pmatrix}
0 \\ 0 \\0
\end{pmatrix}
\end{gather}
\item for all control $u_t = (v_t,\omega_t)^T$ do
\begin{align*}
\begin{pmatrix}
\mu_{t,x} \\ \mu_{t,y} \\ \mu_{t,\theta}\\
\end{pmatrix}
=\begin{pmatrix}
\mu_{t-1,x} \\ \mu_{t-1,y} \\ \mu_{t-1,\theta}
\end{pmatrix}
+\begin{pmatrix}
-\frac{v_t}{\omega_t} \sin\mu_{t-1,\theta}+ \frac{v_t}{\omega_t} \sin(\mu_{t-1,\theta}+\omega_t\Delta t) \\
\frac{v_t}{\omega_t} \cos\mu_{t-1,\theta} -\frac{v_t}{\omega_t} \cos(\mu_{t-1,\theta}+\omega_t\Delta t) \\
\omega_t\Delta t \\
\end{pmatrix}
\end{align*}
\item endfor
\item return $\mu_{0:t}$
\end{enumerate}
\end{document}