http://wiki.linuxformat.ru/wiki/index.php?title=LXF85:LaTeX&feed=atom&action=historyLXF85:LaTeX - История изменений2024-03-29T00:06:31ZИстория изменений этой страницы в викиMediaWiki 1.19.20+dfsg-0+deb7u3http://wiki.linuxformat.ru/wiki/index.php?title=LXF85:LaTeX&diff=2578&oldid=prevInterlace: {{Цикл/LaTeX}}2008-03-17T20:34:46Z<p>{{Цикл/LaTeX}}</p>
<a href="http://wiki.linuxformat.ru/wiki/index.php?title=LXF85:LaTeX&diff=2578&oldid=2264">Внесённые изменения</a>Interlacehttp://wiki.linuxformat.ru/wiki/index.php?title=LXF85:LaTeX&diff=2264&oldid=prevLockal: оформление2008-03-16T18:28:19Z<p>оформление</p>
<a href="http://wiki.linuxformat.ru/wiki/index.php?title=LXF85:LaTeX&diff=2264&oldid=1850">Внесённые изменения</a>Lockalhttp://wiki.linuxformat.ru/wiki/index.php?title=LXF85:LaTeX&diff=1850&oldid=prevLockal: до конца2008-03-14T09:28:18Z<p>до конца</p>
<a href="http://wiki.linuxformat.ru/wiki/index.php?title=LXF85:LaTeX&diff=1850&oldid=920">Внесённые изменения</a>Lockalhttp://wiki.linuxformat.ru/wiki/index.php?title=LXF85:LaTeX&diff=920&oldid=prevLockal: to be continued…2008-03-10T23:04:09Z<p>to be continued…</p>
<p><b>Новая страница</b></p><div>==Компьютерные Teхнологии: Учимся использовать культовую систему вёрстки LaTeX==<br />
===Набор математики: снова в школу===<br />
ЧАСТЬ 3: Успешно пройдя две ступени посвящения, вы готовы двинуться в путь к вершинам мастерства. Вашим проводником в этом нелегком деле будет '''Евгений Балдин'''.<br />
<br />
<blockquote>Полиграфисты относят математические работы к каторжным… <br />
<br />
Д.Э. Кнут. Математическая типография.</blockquote><br />
<br />
Иногда от незнакомых с TeXнологиями людей приходится слышать, что LaTeX годится только для набора математики. При знакомстве же с истинными TeXнологиями возникает понимание, что LaTeX настолько хорош, что с его помощью можно набирать даже математику.<br />
<br />
Набор математических формул всегда считался вершиной типографского искусства. Дело в том, что формулы, для концентрации информации и дополнительной выразительности по сравнению с обычным текстом, являются многоуровневыми. Д.Э. Кнут к своей программе компьютерной типографии создал и язык для описания формул. После короткого периода обучения пользователь в состоянии читать и набирать на этом языке формулы практически любой сложности. <br />
<br />
LaTeX – не единственная программная среда, использующая TeXнотацию. Эта же нотация рекомендуется при наборе всех скольконибудь сложных формул на страницах Википедии (http://ru.wikipedia.org статья «[[wikipedia:ru:Википедия:Формулы|Википедия:Формулы]]»).Становлению TeX как стандарта для набора формул в значительной степени поспособствовало Американское математическое сообщество (The American Mathematical Society – AMS), которое субсидировало разработку расширения TeX, известного как AMSTeX, в начале восьмидесятых годов прошлого столетия. В 1987 году наработки AMSTeX были добавлены в LaTeX в виде пакета amsmath. Вместе с amsmath в LaTeX было добавлено множество улучшений, позволяющих набирать действительно изощрённую математику. Поэтому при использовании в тексте математики в шапке документа следует в обязательном порядке загружать пакет amsmath:<br />
\usepackage{amsmath}<br />
<br />
В дальнейшем предполагается, что этот пакет уже загружен.Полностью описать все команды языка для набора формул в рамках короткой статьи нереально, так как математика, как и способы её представления, безгранична. Поэтому основное внимание будет уделено базовым правилам и русскому стилю в формулах. В любой сколько-нибудь большой книге по LaTeX будет полный список всех команд. Если серьёзно работать с математикой, то подобная книжка, в любом случае, понадобится.<br />
<br />
===Набор формул===<br />
При формировании текста формулы подразделяются на строчные и выносные. Строчные формулы набираются внутри абзаца вместе текстом. По описанию формулы LaTeX создаёт бокс, который обрабатывается наравне с обычными текстовыми боксами. Как правило, строковые формулы это небольшие вставки, вроде E=mc2. Выносные или выключенные формулы выводятся за пределы абзаца.<br />
<br />
Строчная формула в тексте ограничивается<ref>Есть более формальное оформление строчной формулы как окружения: \begin{math} «формула» \end{math}. Но, в силу понятных причин, никто подобное описание не использует.</ref> с помощью символа доллара $«формула»$ или с помощью команд-скобок \(«формула»\). При наборе предпочтительнее использовать второй вариант оформления, так как он позволяет легко определить, где начинается, а где кончается формула. «Долларовое» ($) окружение лучше тем, что оно чуть-чуть короче, кроме этого, команда $ крепкая<ref>Начав изучать команды LaTeX, довольно быстро сталкиваешься с понятиями «хрупкости»/«крепкости». «Крепкие» команды, в отличие от «хрупких», можно использовать в качестве аргументов других команд. С другой стороны, хрупкие команды тоже можно использовать как параметры, защитив их с помощью команды \protect. Эти понятия в большинстве своём пережитки прошлого и их постепенно изживают, но пока следует иметь их в виду.</ref>, в отличие от команд-скобок.<br />
<br />
Однострочные выносные формулы формируются с помощью окружения equation. Так как в этом случае формула вынесена за пределы абзаца, то её можно пронумеровать. Например:<br />
<br />
{|<br />
|<br />
\begin{equation}<br />
\label{eq:math:ex1}<br />
\int\limits_{-\infty}^{\infty}<br />
e^{-x^2/2}dx=\sqrt{2\pi}<br />
\end{equation}<br />
|<math>\begin{equation}\label{eq:math:ex1}\int\limits_{-\infty}^{\infty}e^{-x^2/2}dx=\sqrt{2\pi}\end{equation}</math><br />
|}<br />
<br />
Нумерация формул удобна для того, чтобы позже в тексте на неё можно было легко сослаться с помощью команды \eqref{eq:math:1}<ref>Метка выставляется с помощью команды \label.</ref>. <br />
Если же формул немного и не хочется никакой нумерации, то можно воспользоваться окружением equation*<ref>К equation добавляется звёздочка. Подобный приём в создании команд применяется <br />
достаточно часто. Команда со * обычно не нумеруется и не отображается ни в каких <br />
автоматически составляемых списках.</ref>. При создании выключенной формулы размер шрифта для улучшения читаемости немного увеличивается. LaTeX имеет несколько стилей для оформления математических формул. При желании можно выбрать необходимый стиль вручную:<br />
* \displaystyle – стиль, используемый для выносных формул,<br />
* \textstyle – стиль строчных формул,<br />
* \scriptstyle – в этом стиле набираются индексы,<br />
* \scriptscriptstyle – индексы второго уровня.<br />
<br />
С помощью этих команд можно увеличить размер шрифта для формул внутри абзаца, или заставить индексы выглядеть как базовые символы. <br />
Например, сравните:<br />
{|<br />
|<br />
\begin{equation*}<br />
\frac{1}{1+<br />
\frac{1}{1+<br />
\frac{1}{1+<br />
\frac{1}{2}}}}<br />
\end{equation*}<br />
|<math>\begin{equation*}\frac{1}{1+\frac{1}{1+\frac{1}{1+\frac{1}{2}}}}\end{equation*}</math><br />
|-<br />
|и<br />
\begin{equation*}<br />
\frac{1}{\displaystyle 1+<br />
\frac{1}{\displaystyle 1+<br />
\frac{1}{\displaystyle 1+<br />
\frac{\displaystyle 1}<br />
{\displaystyle 2}}}}<br />
\end{equation*}<br />
|<math> \begin{equation*}\frac{1}{\displaystyle 1+\frac{1}{\displaystyle 1+\frac{1}{\displaystyle 1+\frac{\displaystyle 1}{\displaystyle 2}}}}\end{equation*}</math><br />
|}<br />
<br />
Пробелы в формулах отмечают только конец команды, а сами по себе смысла не имеют – LaTeX, как правило, гораздо лучше знает, как сформировать результат. <br />
<br />
===Кириллица в формулах===<br />
Всё дело в имеющихся шрифтах – они красивые, разнообразные, но в большинстве своём англоязычные. В настоящее время кириллические математические шрифты в «дикой природе» отсутствуют, поэтому приходится пользоваться их текстовыми версиями.<br />
<br />
Стиль mathtext (пакет t2), позволяет использовать кириллицу в формулах без дополнительных ухищрений. Стиль может быть подключён с опцией warn – в этом случае он сообщает обо всех случаях использования кириллических букв в формулах. mathtext следует загружать до babel и/или fontenc.<br />
<br />
\usepackage[warn]{mathtext}<br />
<br />
{|<br />
|<br />
\[<br />
v_{ср}=\frac{S_{конец}-S_{начало}}<br />
{\delta t}<br />
\]<br />
|<math>\[v_{ср}=\frac{S_{конец}-S_{начало}}{\delta t}\]</math><br />
|}<br />
<br />
Здесь для создания выключенной формулы используется команда \[«формула»\] – краткий аналог окружения equation*. В отличие от латиницы, русские буквы в формулах печатаются прямым шрифтом – это было сделано специально. Чтобы изменить это поведение, в преамбуле следует добавить команду для переопределения шрифта:<br />
\DeсlareSуmbolFont{T2Aletters}{T2A}{cmr}{m}{it}<br />
<br />
Стиль amstext (загружается автоматически при загрузке amsmath) <br />
определяет команду \text, которая позволяет вставлять в формулу <br />
обычный текст. Он может быть и русским:<br />
<br />
{|<br />
|<br />
\[v_{ср}=<br />
\frac{\text{конец пути}-<br />
\text{начало пути}}<br />
{\text{время в пути}}\]<br />
|<math>\[v_{ср}=\frac{\text{конец пути}-\text{начало пути}}{\text{время в пути}}\]</math><br />
|}<br />
<br />
Преимущество такого подхода заключается в том, что внутри команды \text пробелы воспринимаются как нормальные символы и слова не сливаются. Использование \text предпочтительно и для целей переносимости.<br />
<br />
===Школьная математика===<br />
Математика в школе – это явление, через которое проходит каждый. Именно поэтому фактически любой вменяемый россиянин умеет обращаться с дробями, знает теорему Пифагора, с лёгкостью решает квадратные уравнения и что-то слышал про интеграл и производную. Разберёмся со всем этим поподробнее.<br />
<br />
====Индексы====<br />
Букв в латинском алфавите не так уж и много, а научных понятий – без числа. Один из способов отличать обозначения друг от друга – это индексы, как верхние, так и нижние:<br />
{|<br />
|<br />
\[A_{\text{нижний индекс}}\quad<br />
B^{\text{верхний индекс}}\quad<br />
C_n^k\]<br />
|<math>\[A_{\text{нижний индекс}}\quadB^{\text{верхний индекс}}\quadC_n^k\]</math><br />
|}<br />
<br />
Обратите внимание, что если в индексе ровно один знак, то фигур-<br />
ные скобки вокруг него можно и нужно опустить. Теперь мы можем <br />
записать теорему Пифагора: \(a^2+b^2=c^2\)<br />
<math>a^2+b^2=c^2</math><br />
<br />
====Математические символы====<br />
Кроме символов латиницы и кириллицы, математики используют множество самых разнообразных значков, да и латиница не так уж проста. Если воспользоваться пакетом amsfonts, то она может стать такой:<br />
{|<br />
|<br />
\begin{itemize}<br />
\item \(ABCD\) "--- обычной,<br />
\item \(\mathbf{ABCD}\) "--- жирной,<br />
\item \(\mathbb{ABCD}\) "--- ажурной,<br />
\item \(\mathcal{ABCD}\) "---прописной.<br />
\end{itemize}<br />
|<math>\begin{itemize}\item \(ABCD\)\item \(\mathbf{ABCD}\)\item \(\mathbb{ABCD}\)\item \(\mathcal{ABCD}\)\end{itemize}</math><br />
|}<br />
<br />
Это далеко не все возможные шрифтовые стили которые можно применять в математической моде, но лучше особо не перегружать <br />
формулы всякой «готикой» (например, \mathfrak). Не единой латиницей жив математик. Традиционно, везде, где только можно, используются греческие буквы.<br />
<br />
{| border="1" cellspacing="0" cellpadding="3"<br />
|+ '''Греческие символы'''<br />
!Буква||Команда||Буква||Команда||Буква||Команда<br />
|-<br />
|<math>\Alpha~\alpha</math>||\Alpha \alpha||<math>\Iota~\iota</math>||\Iota \iota||<math>\Sigma~\sigma</math>||\Sigma \sigma<br />
|-<br />
|<math>\Beta~\beta</math>||\Beta \beta||<math>\Kappa~\kappa</math>||\Kappa \kappa||<math>~\varsigma</math>||\varsigma<br />
|-<br />
|<math>\Gamma~\gamma</math>||\Gamma \gamma||<math>\Lambda~\lambda</math>||\Lambda \lambda||<math>\Tau~\tau</math>||\Tau \tau<br />
|-<br />
|<math>\Delta~\delta</math>||\Delta \delta||<math>\Mu~\mu</math>||\Mu \mu||<math>\Upsilon~\upsilon</math>||\Upsilon \upsilon<br />
|-<br />
|<math>\Epsilon~\epsilon</math>||\Epsilon \epsilon||<math>\Nu~\nu</math>||\Nu \nu||<math>\Phi~\phi</math>||\Phi \phi<br />
|-<br />
|<math>~\varepsilon</math>|| \varepsilon||<math>\Xi~\xi</math>||\Xi \xi||<math>\varphi</math>||\varphi<br />
|-<br />
|<math>\Zeta~\zeta</math>||\Zeta \zeta||<math>\Pi~\pi</math>||\Pi \pi||<math>\Chi~\chi</math>||\Chi \chi<br />
|-<br />
|<math>\Eta~\eta</math>||\Eta \eta||<math>\varpi</math>||\varpi||<math>\Psi~\psi</math>||\Psi \psi<br />
|-<br />
|<math>\Theta~\theta</math>||\Theta \theta||<math>\Rho~\rho</math>||\Rho \rho||<math>\Omega~\omega</math>||\Omega \omega<br />
|-<br />
|<math>\vartheta</math>||\vartheta||<math>\varrho</math>||\varrho||||<br />
|}<br />
<br />
В LaTeX присутствует полный набор и, за исключением трёх букв, начертание вполне привычное. Для исправления непривычных начертаний эти буквы были переопределены с помощью пакета amssymb: <br />
%Переопределение kappa epsilon phi на русский лад<br />
\renewcommand{\kappa}{\varkappa}<br />
\renewcommand{\epsilon}{\varepsilon}<br />
\renewcommand{\phi}{\varphi}<br />
<br />
Спецсимволов в LaTeX великое множество. В стандартной поставке TeX Live идёт «Всеобъемлющий список сиволов LaTeX» (The Comprehensive LaTeX Symbols List – файл symbols-a4.pdf) в котором перечислено 3300 распространённых символов, применяемых пользователями LaTeX. Почти наверняка любой операнд, который вам нужен, там уже есть. Ниже будет перечислена только та часть символов, которая, с моей точки зрения, может пригодиться в наборе школьной математики. Пакет amssymb для использования обязателен.<br />
<br />
<br />
{| border="1" cellspacing="0" cellpadding="3"<br />
|+ '''«Школьные» символы'''<br />
|-<br />
|<math>\hat{a}</math>||\hat{a}<br />
|<math>\bar{a}</math>||\bar{a}<br />
|<math>\vec{a}</math>||\vec{a}<br />
|<math>\dot{a}</math>||\dot{a}<br />
|<math>\tilde{a}</math>||\tilde{a}<br />
|-<br />
|<math>\pm</math>||\pm<br />
|<math>\mp</math>||\mp<br />
|<math>\times</math>||\times<br />
|<math>\cdot</math>||\cdot<br />
|<math>\div</math>||\div<br />
|-<br />
|<math>\lor</math>||\lor<br />
|<math>\land</math>||\land<br />
|<math>\neg</math>||\neg<br />
|<math>\forall</math>||\forall<br />
|<math>\exists</math>||\exists<br />
|-<br />
|<math>\le</math>||\le<br />
|<math>\ge</math>||\ge<br />
|<math>\ll</math>||\ll<br />
|<math>\gg</math>||\gg<br />
|<math>\neq</math>||\neq<br />
|-<br />
|<math>\equiv</math>||\equiv<br />
|<math>\sim</math>||\sim<br />
|<math>\simeq</math>||\simeq<br />
|<math>\approx</math>||\approx<br />
|<math>\propto</math>||\propto<br />
|-<br />
|<math>\parallel</math>||\parallel<br />
|<math>\perp</math>||\perp<br />
|<math>\angle</math>||\angle<br />
|<math>\triangle</math>||\triangle<br />
|<math>\sphericalangle</math>||\sphericalangle<br />
|-<br />
|<math>\infty</math>||\infty<br />
|<math>\ell</math>||\ell<br />
|<math>\sum</math>||\sum<br />
|<math>\prod</math>||\prod<br />
|<math>\varnothing</math>||\varnothing<br />
|}<br />
<br />
Для соответствия русским традициям 2 символа были переопределены:<br />
%Переопределение le ge на русский лад<br />
\renewcommand{\le}{\leqslant}<br />
\renewcommand{\ge}{\geqslant}<br />
<br />
====Дроби====<br />
Дроби формируются с помощью команды \frac<ref>От слова fraction – «дробь».</ref>:<br />
{|<br />
|<br />
\[<br />
дробь=\frac{числитель}{знаменатель}<br />
\]<br />
|<math>дробь=\frac{числитель}{знаменатель}</math><br />
|}<br />
<br />
Как и практически вся математика в LaTeX, дробь записывается так, как читается само выражение. <br />
<br />
====Корни====<br />
Для рисования знака корня используется команда <br />
\sqrt[степень]{«подкоренное выражение»}<br />
<br />
Степень можно упустить. В этом случае рисуется обычный квадратный корень.<br />
<br />
{|<br />
|<br />
\[<br />
\overline{<br />
\underline{\Large<br />
\sqrt[3]{a}+\sqrt[2]{b}+\sqrt[99]{g}<br />
}<br />
}<br />
\]<br />
|<math>\overline{\underline{\Large\sqrt[3]{a}+\sqrt[2]{b}+\sqrt[99]{g}}}</math><br />
|}<br />
<br />
Обратите внимание, что знак корня размещается в соответствии с размерами подкоренного выражения. Если в выражении присутствует только один корень, то это самое разумное поведение, но в случае нескольких корней, как в приведённом выше примере, не помешает выравнивание.<br />
<br />
Для выравнивания по высоте используется команда \mathstrut<ref>От английского strut – «подпорка» или «страта».</ref>. В <br />
результате её применения вставляется невидимый символ нулевой толщины и высоты, в точности равной высоте круглой скобки:<br />
<br />
{|<br />
|<br />
\[\Large<br />
\sqrt[3]{\mathstrut a}+<br />
\sqrt[2]{\mathstrut b}+<br />
\sqrt[99]{\mathstrut g}<br />
\]<br />
|<math>\[\Large\sqrt[3]{\mathstrut a}+\sqrt[2]{\mathstrut b}+\sqrt[99]{\mathstrut g}\]</math><br />
|}<br />
<br />
====Квадратное уравнение====<br />
И, наконец, вершина школьной математики – это решение квадратного <br />
уравнения ax<sup>2</sup>+bx+c=0:<br />
<br />
{|<br />
|<br />
\[<br />
x_{1,2}=\frac{-b\pm\sqrt{b^2-4ac}}{2a}<br />
\]<br />
|<math>x_{1,2}=\frac{-b\pm\sqrt{b^2-4ac}}{2a}</math><br />
|}<br />
<br />
Теперь можно смело садиться за написание методичек.<br />
<br />
===Функции===<br />
Все символы в математической моде печатаются курсивом, поэтому названия функций, для выделения, печатаются прямым шрифтом. Кроме смены шрифта, функции с обоих сторон должны правильно «отбиваться» пробелами, иначе будет некрасиво. При загрузке русского языка с помощью пакета babel кроме стандартных имён функций доопределяется несколько сокращений, применяемых в русскоязычной литературе. Среди часто употребляемых функций можно упомянуть: <br />
cos, arccos, sin, arcsin, tg, arctg, ctg, arcctg, sh, ch, th, cth, exp, ln, log, lim, min и max. В математической моде эти функции можно использовать <br />
в качестве команд:<br />
<br />
{|<br />
|<br />
\begin{equation*}<br />
\begin{split}<br />
&\log_2 10=\ln10/\ln2\simeq3.32 \\<br />
&\lim_{x\to0}\frac{\sin x}{x}=1\\<br />
&(a+b)^n=\sum_{k=1}^n C^k_n a^kb^{n-k}<br />
\end{split}<br />
\end{equation*}<br />
|<math> \begin{equation*}\begin{split}&\log_2 10=\ln10/\ln2\simeq3.32 \\&\lim_{x\to0}\frac{\sin x}{x}=1\\&(a+b)^n=\sum_{k=1}^n C^k_n a^kb^{n-k}\end{split}\end{equation*}</math><br />
|}<br />
<br />
Обратите внимание на обработку индексов для функции log (логарифм) и lim (предел). Для доопределения новых функций правильнее <br />
всего воспользоваться в преамбуле командой DeclareMathOperator:<br />
%В преамбуле - определение новых функций<br />
\DeclareMathOperator{\log-like}{log-like}<br />
\DeclareMathOperator*{\lim-like}{lim-like}<br />
В зависимости от варианта команды индексы отображаются как <br />
для логарифма (команда без звёздочки) или как для предела (команда <br />
со звёздочкой).<br />
Производная и интеграл<br />
В старших классах, в конце обучения, обычно чуть-чуть касаются поня-<br />
тий интегрирования и дифференцирования. Возможно, для того, чтобы <br />
правильно подсчитать сдачу в магазине, эти знания не являются необ-<br />
ходимыми. Но для изучения физики и, как следствие, химии и биоло-<br />
гии без интегралов никак – поверьте мне на слово. <br />
Производная обычно отмечается штрихом. В физике, производная <br />
по времени выделяется точкой, для того чтобы отличать её от произ-<br />
водной по координате. Можно честно написать \frac{d F(x)}{dx}. Для час-<br />
тной производной вместо буквы d используется спецсимвол \partial:<br />
<br />
to be continued…<br />
<br />
== Примечания==<br />
<references/></div>Lockal