Работа в системе LaTeX

       

Набор матриц


Сначала мы объясним, как набирать матрицы при подключенном пакете amsmath (что во всех отношениях лучше и удобнее), а в конце этого раздела расскажем, для полноты картины, о тех средствах набора матриц, которые доступны в " чистом" LaTeX'е (без подключения дополнительных стилевых пакетов).

Итак, предположим, что пакет amsmath подключен. Тогда для набора матриц, заключенных в круглые скобки, стоит воспользоваться окружением pmatrix. Вот как оно работает:

$$ \begin{pmatrix} a_{11}-\lambda & a_{12}&a_{13}\\ a_{21}& a_{22}-\lambda &a_{23}\\ a_{31}& a_{32}&a_{33}-\lambda\\ \end{pmatrix} $$

Строки матрицы разделяются с помощью команды "\\" в матрицах (последнюю строку заканчивать командой "\\" не надо), а элементы внутри одной строки, относящиеся к разным столбцам, отделяются друг от друга с помощью символа "&". Текст, соответствующий на печати одной строке матрицы, не обязан укладываться в одну строку TeX'овского файла; в одной строке TeX'овского файла можно поместить текст, соответствующий на печати нескольким строкам матрицы. Короче говоря, в окружении matrix также действует TeX'овский принцип" конец строки равносилен пробелу".

Прямоугольные таблицы из формул бывают заключены не только в круглые скобки; соответственно, определены окружения bmatrix, vmatrix и Vmatrix, отличающиеся от pmatrix только тем, что вместо круглых скобок таблица заключена соответственно в квадратные скобки

, вертикальные черточки
и удвоенные вертикальные черточки
. Есть также окружение \matrix, которое дает на печати только прямоугольную таблицу, без всяких скобок. Комбинируя окружение matrix с парой ограничителей, можно получить матрицу со скобками более экзотического вида.

Если вам нужны матрицы с более чем десятью столбцами, нужно изменить максимальное количество столбцов, написав в преамбуле что-нибудь вроде следующего:

\setcounter{MaxMatrixCols}{20}

(после этого максимальное число столбцов в матрице станет равно двадцати; на TeX'ническом языке это действие называется " присваивание нового значения счетчику MaxMatrixCols" см. лекцию 7 ).
Можно также дать эту команду не в преамбуле, а в начале той выключной формулы, в которую входит ваша матрица; тогда разрешение увеличить число столбцов будет действительно только для матриц, входящих в эту выключную формулу.

Вот как можно набрать с помощью окружения matrix треугольник Паскаля:



Исходный текст для него выглядит так:

$$ \setcounter{MaxMatrixCols}{20} \begin{matrix} &&&& 1 && 1\\ &&& 1 && 2 && 1\\ && 1 && 3 && 3 && 1\\ && 1 && 4 && 6 && 4 && 1\\ 1 && 5 && 10 && 10 && 5 && 1 \end{matrix} $$ (заметим кстати, что в этом примере пустые элементы таблицы в конце строки опущены, так что число символов "&" в разных строках таблицы разное). Если бы мы не увеличивали MaxMatrixCols, то последняя строка вызвала бы сообщение об ошибке.

Чтобы получить в матрице горизонтальный ряд точек, простирающийся на несколько столбцов, используется команда \hdotsfor; ее обязательный аргумент — количество столбцов, занятых точками. В приведенном ниже примере обратите внимание на расстановку знаков "&" в строках, содержащих \hdotsfor:



$$ \begin{vmatrix} 0 & 0&\hdotsfor{2} &a_1\\ 1 & 0&\hdotsfor{2} &a_2\\ \hdotsfor{5}\\ \hdotsfor{2} &1 &0 &a_{n-1}\\ 0 & \hdotsfor{2} &1 &a_n \end{vmatrix} $$
Можно также регулировать густоту точек, получаемых при помощи команды \hdotsfor: в необязательном аргументе (он ставится перед обязательным) можно указать десятичную дробь — "коэффициент разреживания". Если сказать \hdotsfor[1.5]{5} вместо \hdotsfor{5}, то точки будут идти в полтора раза реже.

Наряду с горизонтальными рядами точек, в матрицах приходится использовать вертикальные и диагональные многоточия. Для их набора используются команды \vdots и \ddots:

$$ \begin{pmatrix} a_{11}& a_{12} &\ldots & a_{1n}\\ a_{21}& a_{22} &\ldots & a_{2n}\\ \vdots& \vdots &\ddots & \vdots\\ a_{n1}& a_{n2} &\ldots & a_{nn} \end{pmatrix} $$
Команды \vdots и \ddots можно использовать не только в матрицах, но и в любом месте в математических формулах.



Наряду с матрицами, используемыми в выключных формулах, иногда приходится поместить небольшую матрицу и в формулу внутритекстовую. Естественно, и размеры символов, и интервалы между ними в такой матрице должны быть поскромнее. Для таких целей предназначено окружение smallmatrix (оно также становится доступным при подключении пакета amsmath). Вот пример его использования:

$[X,Y]=\bigl(\begin{smallmatrix}1 & 0\\0 & -1\end{smallmatrix}\bigr)$
Как вы могли заметить, скобки вокруг такой маленькой матрицы приходится ставить самостоятельно. Никаких вариантов с готовыми скобками у окружения smallmatrix нет.

Теперь, как мы и обещали, сообщим, какие возможности для набора матриц остаются, если не подключать дополнительных пакетов. В этом случае необходимо пользоваться LaTeX'овским окружением array. Вот как получить этими средствами пример со 73:

$$ \left(\begin{array}{ccc} a_{11}-\lambda & a_{12}&a_{13}\\ a_{21}& a_{22}-\lambda &a_{23}\\ a_{31}& a_{32}&a_{33}-\lambda \end{array}\right) $$
По сравнению с тем, что дает pmatrix, отличия следующие:

  1. Скобки вокруг матрицы, набираемой с помощью окружения \array, всегда надо задавать самостоятельно.
  2. После \begin{array}, открывающего окружение, должна следовать (в фигурных скобках, поскольку это аргумент окружения array) так называемая преамбула матрицы, описывающая, сколько и каких столбцов должно быть в матрице. В нашем случае преамбула представляет собой три буквы ccc. Это значит, что в матрице 3 столбца (по букве на столбец), и что содержимое каждого из этих столбцов должно быть расположено по центру столбца c — от слова "centered". (Кроме c, в преамбуле может стоять буква l, означающая, что соответствующий столбец будет выровнен по левому краю (left), или r, означающая, что столбец будет выровнен по правому краю (right).)
В остальном синтаксис такой же, как для окружения pmatrix и его аналогов. Команды \ldots, \vdots и \ddots по-прежнему можно использовать, а вот \hdotsfor — увы, нет.Аналога MaxMatrixCols для окружения array также нет (поскольку преамбула и так определяет точное число столбцов). Окружение smallmatrix в "чистом" LaTeX'е (без подключения дополнительных пакетов) также не предусмотрено.


Содержание раздела







Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий