Я работаю над документом для школы, пытаюсь сделать несколько строк уравнений. Однако команда двойного доллара для создания уравнений пропускает команду следующей строки.
$$
S(k+1) &= \sum(a[i]\cdot a[j] \mid i,j : 0\leq i\leq j < k + 1)\\
&=
$$
Я ожидал, что уравнение перейдет на следующую строку и продолжит отступ от символа =
, однако документ показывает мне следующее:
Я пробовал отключать пакеты, но это не помогло.
Когда я начал работать с этим документом, проблем не возникло, но через несколько часов он внезапно перестал работать правильно.
Любая помощь будет очень ценна.
решение1
Это не может работать: конструкция $$ ····· $$
(которая в любом случае является простой конструкцией TeX и должна быть заменена в LaTeX на \[ ····· \]
) предназначена для однострочного центрированного уравнения.
Для того, что вам нужно, вы должны использовать amsmath align
(строки пронумерованы) или align*
(не пронумерованы), с точкой выравнивания, указанной амперсандом. Для других типов многострочных уравнений, пожалуйста, посмотрите документацию amsmath
, или его расширение mathtools
.
решение2
По причинамнетдля использования $$
для запуска и остановки ненумерованного отображаемого уравнения в документе LaTeX см.Почему \[ ... \]
предпочтительнее $$ ... $$
? Для получения дополнительной информации по этой теме см.В чем разница между $$
, \[
, align
, equation
и displaymath
?
В любом случае, все, что вам нужно сделать, чтобы спасти свой код, — это заменить первый экземпляр на $$
и \begin{align*}
второй экземпляр $$
на \end{align*}
.
Пока вы этим занимаетесь, вы можете захотеть увеличить разделители (
, |
, и )
, а также заменить их :
на \colon
или использовать двойную сумму. Оба варианта рассматриваются в следующем примере.
\documentclass{article}
\usepackage{amsmath} % for 'align*' environment
\begin{document}
\begin{align*}
S(k+1)
&= \sum \bigl( a[i] \cdot a[j] \bigm| i,j \colon 0 \leq i \leq j < k + 1 \bigr) \\
&= \sum_{i = 0}^j \sum_{j = 0}^{k + 1} \bigl( a[i] \cdot a[j] \bigr)
\end{align*}
\end{document}