Перейти к содержимому
Topos Uranos

Краткое содержание

Этот урок учит набирать формулы, занимающие несколько строк, с помощью окружений пакетов amsmath и mathtools. Он показывает, почему нельзя ставить одну под другой несколько выключных формул и пользоваться eqnarray, у которого пробелы вокруг знака равенства неправильны; представляет align и align* со знаком & как точкой выравнивания, \\ как концом строки, несколькими столбцами выровненных пар и нумерацией каждой строки, которую отменяют командой \notag, заменяют командой \tag и на которую ссылаются через \label и \eqref; различает gather, multline и split, а также внутренние блоки aligned и gathered; набирает кусочные определения с cases и dcases; вставляет текст с \intertext и \shortintertext; записывает матрицы с их ограничителями, многоточиями и вертикальной чертой; нумерует группы с subequations; позволяет длинной выключной формуле переноситься на следующую страницу; и заканчивается типичными ошибками, прочитанными в настоящих журналах компиляции, и тем, чего лучше избегать.

Цели обучения

  1. Объяснять, почему цепочку равенств набирают в одном окружении выравнивания, а не в выключных формулах, поставленных друг под другом, и не в eqnarray.
  2. Набирать с align выкладки и системы в один или несколько столбцов, ставя каждый & перед знаком, по которому идёт выравнивание, и решать, какие строки нумеруются и как на них ссылаться.
  3. Выбирать между align, gather, multline, split, aligned и gathered в зависимости от строения формулы и номера, который она должна нести, обосновывая выбор.
  4. Набирать кусочные определения, матрицы с ограничителями и расширенные матрицы и вставлять текст, не нарушая выравнивания.
  5. Распознавать типичные ошибки окружений выравнивания: и те, о которых сообщает журнал, и те, что видны только в результате.

Почему не ставят отдельные формулы друг под другом

В уроке о строчных и выключных формулах говорилось, что выключная формула записывается между \[ и \] или в окружении equation, если у неё есть номер. Оба способа дают одну строку по центру. Однако значительная часть письменной математики не помещается в одну строку и не сводится к одному соотношению: выкладка продвигается по цепочке равенств, система объединяет несколько уравнений, определение различает случаи. Во всех этих случаях читателю нужно видеть друг под другом знаки, которые членят рассуждение, и отсюда следует, что набор должен их выравнивать.

Первое, что приходит в голову, это поставить несколько выключных формул друг под другом, по одной на шаг. Но каждая центрируется сама по себе, так что знаки равенства оказываются там, куда их ставит ширина каждой строки, а между формулами остаётся промежуток, положенный двум отдельным выключным формулам, а не одной. Второй соблазн представляет окружение eqnarray, которое есть в LaTeX с самого начала и до сих пор встречается во многих руководствах: оно выравнивает, но набирает центральный знак как отдельный столбец, отделённый табличным промежутком, более широким, чем положено отношению, и те же равенства выглядят разрозненными. Следующий пример набирает одну и ту же выкладку тремя способами.

ПримерОдна выкладка, три способа набора
Код LaTeX
Выключные формулы друг под другом:\[ (a+b)^2 = (a+b)(a+b) \]\[ = a^2 + ab + ba + b^2 \]\[ = a^2 + 2ab + b^2 \]С \texttt{eqnarray*}:\begin{eqnarray*}(a+b)^2 &=& (a+b)(a+b) \\        &=& a^2 + 2ab + b^2\end{eqnarray*}С \texttt{align*}:\begin{align*}(a+b)^2 &= (a+b)(a+b) \\        &= a^2 + 2ab + b^2\end{align*}
Результат
Результат

В первом наборе знаки равенства стоят не друг под другом, а строки разделены большими промежутками; во втором знак равенства изолирован между двумя пустотами; лишь третий набирает их как отношения одной цепочки. Пакет amsmath, который курс загружает всегда, предлагает align и родственные окружения именно на замену eqnarray, которым не следует пользоваться ни в одном новом документе.