Testwiki:Формулы

Материал из testwiki
Перейти к навигации Перейти к поиску

Шаблон:Руководство Шаблон:Руководства Для математических формул MediaWiki использует разметку [[TeX|Шаблон:TeX]]’а. В зависимости от пользовательских настроек они могут отображаться как PNG-рисунки, в MathJax-разметке[1] или иным способом.

В данной статье даны лишь первоначальные сведения о разметке математических формул в Шаблон:TeX. Примеры написания конкретных формул приводятся в статье «Примеры оформления формул». Список поддерживаемых конструкций (с английскими пояснениями) также дан на странице m:Help:Displaying a formula.

Правильность написания формул проверяйте в «песочнице» или кнопкой «Предварительный просмотр», находящейся под окном редактирования.

Общие положения

  • Исходный код математической формулы записывается внутри тегов Шаблон:Tag[2], химической — Шаблон:Tag.
  • Шаблоны, переменные и параметры MediaWiki не функционируют внутри этого тега.
  • Пробелы игнорируются (ТеХ их сделает сам).
  • Пустые строки не разрешаются.
  • Символы и сложные конструкции записываются с помощью «команд»[3], которые начинаются с «обратного слеша» (\) и состоят либо из командного слова из латинских букв, либо из символа (не буквы). В первом случае после командного слова должен быть обязательно пробел или другая команда.
  • Команды могут иметь аргументы: {обязательные} и [необязательные].
  • Каждая буква считается переменной и воспроизводится курсивом, а цифры — прямым шрифтом (исключение — название функций и операций).
  • Одиночные переводы строк внутри тегов Шаблон:Tag разрешены и не отображаются, поэтому, чтобы сделать код более читабельным, можно вставлять переводы строк после каждого выражения или строки матрицы.

Вынесенные формулы

Формула может быть вынесена на отдельную строку, в этом случае её следует давать с отступом (начав строчку с двоеточия «:»). Центрирование формул в Википедии, как правило, не используется. Если формула является частью списка, то нужно давать отступ на один уровень больше, чем предшествующий текст:

  • Формула 1:
    x2+y2=z2.
  • Формула 2:
    xy=z.

Знаки препинания, следующие за формулой, внутрь тега Шаблон:Tag включать не требуется[4].

Нумерацию формул в связи с динамичностью текстов статей использовать не рекомендуется.

Исходные команды

Служебные значки

  • \ сигнальный символ (команда);
  • { начало группы;
  • } конец группы;
  • _ нижний индекс;
  • ^ верхний индекс;
  • ~ неразрывный пробел.

Шрифты

Греческий алфавит
Буква Команда Буква Команда Буква Команда
Aα \Alpha \alpha Iι \Iota \iota Σσ \Sigma \sigma
Bβ \Beta \beta Kκ \Kappa \kappa ς \varsigma
Γγ \Gamma \gamma Λλ \Lambda \lambda Tτ \Tau \tau
Δδ \Delta \delta Mμ \Mu \mu Υυ \Upsilon \upsilon
Eϵ \Epsilon \epsilon Nν \Nu \nu Φϕ \Phi \phi
ε \varepsilon Ξξ \Xi \xi φ \varphi
Zζ \Zeta \zeta Ππ \Pi \pi Xχ \Chi \chi
Hη \Eta \eta ϖ \varpi Ψψ \Psi \psi
Θθ \Theta \theta Pρ \Rho \rho Ωω \Omega \omega
ϑ \vartheta ϱ \varrho ϰ \varkappa

С помощью соответствующих команд можно изменять вид шрифта (гарнитуру) и его размеры:

Вид шрифта Команда Изображение
Жирный шрифт (греческий) \boldsymbol{текст} α+β+γ
Жирный шрифт (векторы) \mathbf{текст} 𝐱𝐲=0
Ажурный шрифт \mathbb{текст}
Рубленый шрифт \mathsf{текст} 𝖯𝖬𝖤𝖣𝖵
Готическое письмо \mathfrak{текст} 𝔞𝔄𝔅
Рукописный шрифт[5] \mathcal{текст} 𝒜𝒞
Прямой шрифт \mathrm{текст} abcd
Прописные наклонным
шрифтом (греческий)
\mathit{текст} ΓΘΣ

Для текстовых индексов и пометок лучше всего использовать команду \text, поскольку она предназначена именно для этого и правильно обрабатывает дефисы, пробелы и размер букв: \varepsilon_\text{h-BN} даёт εh-BN, (10\text{ мм})^2 = 100\text{ мм}^2 = 1\text{ см}^2 даёт (10 мм)2=100 мм2=1 см2. Для нестандартных операторов следует использовать \operatorname (см. ниже), а \mathrm оставить для специальных случаев — например, нестандартных операторов, которым нужно нестандартное окружение пробелами.

Команды \textrm и \mbox также производят прямой шрифт, однако вместо них лучше использовать \text или \operatorname.

Также имеются символы устаревших греческих букв \Coppa \coppa \Koppa \koppa \Stigma \stigma, которые отображаются не при всех настройках отображения формул (то же относится к символам \S \P), а использование символов \varcoppa \Sampi \sampi \Digamma \varstigma даже может вызвать сообщение об ошибке, как использование любой несуществующей команды.

Бинарные операции

Команда Изображение
+ - +
\amalg \setminus \smallsetminus ⨿
\pm \mp ±
\ast \star * \bigstar *
\centerdot \cdot \bullet
\circ \bigcirc
\odot \circleddash \circledast \circledcirc
\oplus \otimes \ominus \oslash
\boxplus \boxtimes \boxminus \boxdot
\sqcap \sqcup
\cap \cup \uplus
\Cap \Cup
\doublecap \doublecup
\dagger \ddagger
\times \div \divideontimes ×÷
\ltimes \rtimes
\leftthreetimes \rightthreetimes
\vartriangle \triangledown
\triangle \bigtriangledown
\bigtriangleup \bigtriangledown
\triangleright \triangleleft
\diamond
\bowtie
\vee \lor \wedge \land
\veebar \barwedge
\doublebarwedge
\curlywedge \curlyvee
\wr
\intercal
\dotplus

Умножение

Шаблон:Shortcut Не используйте символ * для обозначения умножения за исключением случаев, когда умножение используется в коде программ. Знак умножения в формулах, как правило, опускается (E=mc2). Если знак опущен быть не может (как в 22), используйте \cdot в математическом режиме или символ ⋅ (U+22C5 Шаблон:Unichar/name, ⋅ не путать с похожим символом ·). Знак × в русской типографике, как правило, не используется для обозначения обычного умножения, а имеет специальное значение (например, векторное произведение), поэтому использование этого знака для умножения нежелательно, за исключением традиционного для русской типографики использования при разрыве формулы на знаке умножения с переносом на другую строку.

Символы отношений

Команда Изображение
\propto \varpropto
\shortmid \mid
\between
\pitchfork
\therefore \because
\frown \smile
\| \parallel \shortparallel
\in \ni
\perp
\backepsilon
\models
\cong
\equiv
\sim \thicksim \backsim
\simeq \backsimeq
\eqsim
\approx \thickapprox
\approxeq
\bumpeq
\Bumpeq
\doteq
\doteqdot \Doteq
\risingdotseq \fallingdotseq
\eqcirc
\circeq
\triangleq
< > <>
\ll \gg
\lll \ggg \gggtr
\le или \leq, \ge или \geq
\leqq \geqq
\leqslant \geqslant
\eqslantless \eqslantgtr
\lesssim \gtrsim
\lessapprox \gtrapprox
\lessdot \gtrdot
\lessgtr \gtrless
\lesseqgtr \gtreqless
\lesseqqgtr \gtreqqless
\sqsubseteq и \sqsupseteq
\subset \supset
\subseteq \supseteq
\subseteqq \supseteqq
\Subset \Supset
\prec \succ
\preccurlyeq \succcurlyeq
\curlyeqprec \curlyeqsucc
\preceq \succeq
\precsim \succsim
\precapprox \succapprox
\asymp
\vdash \dashv
\vDash
\Vvdash
\vartriangleleft \vartriangleright
\blacktriangleleft \blacktriangleright
\blacktriangle \blacktriangledown

В русскоязычной типографике существует традиция употреблять в качестве символов «больше или равно» и «меньше или равно» знаки Шаблон:Nobr и Шаблон:Nobr, а в западной — Шаблон:Nobr и Шаблон:Nobr[6]Шаблон:Sfn.

Символы отрицания отношений

Символ отрицания отношения можно получить, ставя перед соответствующим символом отношения команду \not, которая перечёркивает следующий за ней ТеХ’овский символ. Например:

<math>u \not< a</math> u<a
<math>a \not\in \mathbf{A}</math> a∉𝐀

Однако для наиболее часто используемых символов отрицания отношений («не равно», «не принадлежит» и т. п.) существуют и отдельные команды.

Команда Изображение
\nless \ngtr
\neq \ne
\nsim
\not\approx ≉
\ncong
\not\equiv ≢
\not\le \not\ge ≰≱
\nleqq \ngeqq
\lneq \gneq
\lneqq \gneqq
\lvertneqq \gvertneqq
\nleqslant \ngeqslant
\lnsim \gnsim
\lnapprox \gnapprox
\notin \not\ni ∌
\not\simeq ≄
\not\sqsubseteq \not\sqsupseteq ⋢⋣
\not\subset \not\supset ⊄⊅
\nsubseteq \nsupseteq
\nsubseteqq \nsupseteqq
\varsubsetneq \varsupsetneq
\subsetneqq \supsetneqq
\varsubsetneqq \varsupsetneqq
\nprec \nsucc
\npreceq \nsucceq
\precneqq \succneqq
\precnsim \succnsim
\precnapprox \succnapprox
\not\asymp ≭
\nshortmid
\nshortparallel \nparallel
\nvdash \nvDash
\nVdash \nVDash
\ntriangleleft \ntriangleright
\ntrianglelefteq \ntrianglerighteq
\neg \lnot ¬¬
\nexists

Также можно перечеркнуть набор символов, используя команду \cancel{abc}(abc), \bcancel{abc}(abc) или \xcancel{abc}(abc).

Символы математических функций

Символы стандартных математических функций и операторов (sin, max и т. п.) в формулах должны отображаться прямым шрифтом с отступами слева и справа, поэтому для них необходимо использовать соответствующие команды TeX (\sin вместо sin и т. д.):

Шаблон:Y <math>2\sin x + 4\ln y + 8\operatorname{tg} z</math> 2sinx+4lny+8tgz
Шаблон:N <math>2 sin x + 4 ln y + 8 tg z</math> 2sinx+4lny+8tgz
Тригонометрические функции
\sin sin
\cos cos
\tan tan
\cot cot
\sec sec
\csc csc
\arcsin arcsin
\arccos arccos
\arctan arctan
\arccot arccot
\arcsec arcsec
\arccsc arccsc
Гиперболические функции
\sinh sinh
\cosh cosh
\tanh tanh
\coth coth
Прочие функции
\arg arg
\deg deg
\det det
\dim dim
\exp exp
\lg lg
\ln ln
\log log
\sgn sgn
\mod amodb
\bmod amodb
\pmod a(modb)
\gcd gcd
\max max
\min min
\hom hom
\ker ker
\inf inf
\sup sup
\lim lim
\liminf lim inf
\limsup lim sup
\varliminf lim
\varlimsup lim
\injlim inj lim
\projlim proj lim
\varinjlim lim
\varprojlim lim
\Pr Pr

При этом обратите внимание, что в русской традиции многие тригонометрические и гиперболические функции обозначаются иначе, чем в западной (указанной в таблице выше). В русской Википедии используйте:

Тригонометрические функции
\operatorname{tg} tg
\operatorname{ctg} ctg
\operatorname{cosec} cosec
\operatorname{arctg} arctg
\operatorname{arcctg} arcctg
\operatorname{arccosec} arccosec
Гиперболические функции
\operatorname{sh} sh
\operatorname{ch} ch
\operatorname{th} th
\operatorname{cth} cth

Примечание. Чтобы сделать стандартный отступ между именем функции и аргументом, нужно использовать конструкцию «\operatorname{имя функции}». Например, код «\operatorname{arctg} x» даёт arctgx (для сравнения: код «\mathrm{arctg} x» — arctgx); использовать «\mathrm{имя функции}\,» и подобные конструкции также не рекомендуется — сравните:

Шаблон:N x \mathrm{arctg}\, y xarctgy
Шаблон:Y x \operatorname{arctg} y xarctgy

Стрелки

Команды Изображения
\circlearrowleft \circlearrowright
\curvearrowleft \curvearrowright
\downarrow \uparrow
\downdownarrows \upuparrows
\Downarrow \Uparrow
\hookleftarrow \hookrightarrow
\leftarrow \rightarrow
\Leftarrow \Rightarrow
\leftarrowtail \rightarrowtail
\upharpoonright \upharpoonleft
\downharpoonright \downharpoonleft
\leftharpoondown \rightharpoondown
\leftharpoonup \rightharpoonup
\leftleftarrows \rightrightarrows
\leftrightarrow \Leftrightarrow
\leftrightarrows \rightleftarrows
\leftrightharpoons \rightleftharpoons
\leftrightsquigarrow \rightsquigarrow
\Lleftarrow \Rrightarrow
\longleftarrow \longrightarrow
\Longleftarrow \Longrightarrow
\longleftrightarrow
\Longleftrightarrow
\longmapsto \mapsto
\looparrowleft \looparrowright
\Lsh \Rsh
\multimap
\nearrow \nwarrow \searrow \swarrow
\nleftarrow \nrightarrow
\nLeftarrow \nRightarrow
\nleftrightarrow \nLeftrightarrow
\restriction
\twoheadleftarrow \twoheadrightarrow
\updownarrow \Updownarrow

Ещё некоторые символы…

Элемент Синтаксис Интерпретация в Википедии
Диакритические знаки \acute{a} \grave{a} \breve{a} \check{a} \tilde{a} \hat{a} \bar{a}

\widehat{pq} \widetilde{pq} \widehat{xyz} \widetilde{xyz}

a´a`a˘aˇa~a^a¯

pq^pq~xyz^xyz~

Векторы \vec{a} \overrightarrow{BC}

\overline{BC} \underline{BC}

aBC

BCBC_

Производные \nabla \partial x dx
\dot x \ddot y[7] x^\prime x^\backprime x' x'' x'''
xdx
x˙y¨xxxxx
Логика \bigwedge \bigvee \bigsqcup \bigcap \bigcup \biguplus
\forall \exists \emptyset \empty \varnothing \And

&
Корни \sqrt{2}\approx 1{,}4 \sqrt{5} \surd 21,45
\sqrt[n]{x} xn
Геометрические \Diamond \Box \triangle \angle \measuredangle \sphericalangle 45^\circ
\mid \nmid \| \lVert \rVert
45
Специальные \ldots \cdots \vdots \ddots
10\;\% \# 10%#
\bigoplus \bigotimes \bigodot
\bot \top \vDash \Vdash \ulcorner \urcorner \llcorner \lrcorner
\eth \imath \jmath \hbar \ell \wp \mho \infty
\Finv \digamma \Re \Im \complement \Bbbk \circledS \backslash
\aleph \beth \gimel \daleth
\N \Z \Q \R \Complex
ðıȷ
ϝ𝕜

\diamondsuit \heartsuit \clubsuit \spadesuit \blacksquare \blacklozenge
\Game \flat \natural \sharp

Суммы Простой пример:
Шаблон:Nobrc

Если знак суммы находится в числителе или знаменателе, вид индексов меняется:

Шаблон:Nobrc

Чтобы индексы всегда были под и/или над знаком суммы:

Шаблон:Nobrc
i=1nxii=1nxi2i=1nxi2
Произведения \prod^\infty_{k=1}x_k
\coprod^\infty_{k=1}x_k
k=1xkk=1xk
Интегралы \int_a^b f(x) dx
\int\limits_a^b f(x)\,dx
\oint\limits_S \vec F \cdot d\vec s
abf(x)dxabf(x)dxSFds
Приращение функции \int_a^b f(x)\,dx = \Bigl[ F(x) \Bigr]_a^b = \Bigl. F(x) \Bigr|_a^b abf(x)dx=[F(x)]ab=F(x)|ab
Дроби \frac{x^2+1}{x^2-1}
\tfrac{x^2+1}{x^2-1}
x2+1x21x2+1x21
Скобки, модуль, норма \left ( \frac{x}{y} \right )

\left [ \frac{x}{y} \right ]
\left | \frac{x}{y} \right |
\left \| \frac{x}{y} \right \|
\left \{ \frac{x}{y} \right \}
\left \lfloor \frac{x}{y} \right \rfloor
\left \lceil \frac{x}{y} \right \rceil
\left \langle \frac{x}{y} \right \rangle

(xy)[xy]|xy|

xy{xy}xy
xyxy

Индексы над и под символами \overset{x}{y}

\stackrel{x}{y}
\underset{x}{y}

\overset{x}{\underset{y}{z}}

yx

yx
yx

zyx

См. также Википедия:Примеры оформления формул #Скобки для больших выражений.

Рекомендации по пробелам

  • Десятичную запятую в десятичных дробях рекомендуется заключать в фигурные скобки, чтобы избежать ненужного тонкого пробела после запятой. Сравните:
Шаблон:N <math>\pi=3,1415\dots</math> π=3,1415
Шаблон:Y <math>\pi=3{,}1415\dots</math> π=3,1415
  • При записи определения множества рекомендуется употреблять не знак вертикальной черты, а команду \mid, чтобы пробелы имели достаточную величину. Сравните:
Шаблон:N <math>M=\{x\in A | x>0\}</math> M={xA|x>0}
Шаблон:Y <math>M=\{x\in A \mid x>0\}</math> M={xAx>0}
  • Для обозначения матричных элементов (нотация бра и кет), наоборот, лучше использовать знак вертикальной черты | или команду \vert. Кроме того, не следует использовать знаки «больше» и «меньше» вместо угловых скобок (при записи матричных элементов, статистических средних и т. д.) — нужно использовать \langle и \rangle. Сравните:
Шаблон:N <math><m \mid \hat{A} \mid n></math> <mA^n>
Шаблон:Y <math>\langle m \vert \hat{A} \vert n\rangle</math> m|A^|n
Шаблон:N <math>S^2 = <(x-<x>)^2></math> S2=<(x<x>)2>
Шаблон:Y <math>S^2 = \langle(x-\langle x\rangle)^2\rangle</math> S2=(xx)2
Шаблон:Y <math>S^2 = \left\langle(x-\langle x\rangle)^2\right\rangle</math> S2=(xx)2
  • При записи нормы рекомендуется использовать не двойные вертикальные скобки, а команду \|. Сравните:
Шаблон:N <math>|| \mathbf{x} || = 1</math> ||𝐱||=1
Шаблон:Y <math>\| \mathbf{x} \| = 1</math> 𝐱=1
  • При записи отображений рекомендуется использовать не знак двоеточия, а команду \colon, чтобы избежать ненужного пробела перед двоеточием. Сравните:
Шаблон:N <math>f: X \to Y</math> f:XY
Шаблон:Y <math>f\colon X \to Y</math> f:XY

Химические формулы

С помощью тегов Шаблон:Tag можно записывать химические формулы, используя синтаксис, похожий на синтаксис Шаблон:TeX-овского пакета mhchem (следует учитывать, что некоторые возможности пакета могут не поддерживаться в ВП). При записи химических формул и соединений конструкция Шаблон:Tag более наглядная и короткая.

При этом внутри вики-тега Шаблон:Tag нужно писать то, что в Шаблон:TeX-документе нужно было бы писать внутри Шаблон:TeX-тега \ce{...}. В этом теге действуют совсем другие правила, нежели в обычных, математических формулах: пробелы имеют в большинстве случаев значение, скобки не всегда необходимы.

Примеры:

Если в формуле используются стрелки вверх или вниз, то приведённая конструкция может неправильно работать, например:

В этом случае нужно применять другую:

Для корректного отображения в химической формуле математических переменных (Шаблон:Math и т.п.) можно использовать Шаблон:TeX-тег \mathit{...}, например:

Конструкция Шаблон:Tag эквивалентна Шаблон:Tag. Последняя конструкция более длинная, менее ясная и потому менее удобная, но теоретически её можно использовать, чтобы смешать возможности обоих типов формул — например, поместить химические формулы в окружение align.

Русские буквы в формулах

Русские буквы (и вообще, символы, не входящие в US-ASCII) в формулы можно вставить с помощью \text{}:

Шаблон:Demo.

Цвета в формулах

Цветные символы можно вставить в формулу следующим образом:

  • { \color{red} x } x
  • {\color{Blue}x^2}+{\color{YellowOrange}2x}- {\color{OliveGreen}1} x2+2x1
  • x_{1,2}=\frac{-b\pm\sqrt{\color{Red}b^2-4ac}}{2a} x1,2=b±b24ac2a

Шаблон:Сокрытие

Проблемы

  • math в заголовках разделов отображается ошибкой phab:T295091. Помогает замена на символы Юникода — таблица математических символов.
  • переносы отрывают символы после math phab:T325625. Из-за этого запятую, скобку и т.д. заносили внутрь math. Локальный фикс special:diff/138085233 — поведение отображения и подход к оформлению кода math может отличаться в других вики (напр. при копировании между вики)

См. также

Примечания

Шаблон:Примечания

Ссылки

Шаблон:Правила Википедии

  1. В этом случае для правильного отображения символов может потребоваться установленный шрифт, содержащий математические символы Юникода, например, Code2000.
  2. Для вставки этого тега на панели инструментов редактирования есть специальная кнопка. Это, правда, соответствует «старой» панели редактирования, в новой же соответствующей кнопки нет. Чтобы посмотреть на старую панель, в ваших настройках во вкладке «Редактирование» можете снять галку с пункта «Включить улучшенную панель редактирования».
  3. В HTML они соответствуют «тегам».
  4. Ошибка с возможным переносом непробельного символа, следующего за формулой, была исправлена в 2024 году: Служебная:Diff/138085233
  5. Строчные буквы и цифры в этом шрифте отображаются как буквы и цифры при использовании «MathJax», но заменяются спецсимволами при генерации «png». Из-за этого несоответствия лучше вообще не использовать строчные буквы и цифры в начертании «mathcal».
  6. Шаблон:Статья
  7. Для создания третьей производной по времени (три точки над буквой) можно использовать выражение \stackrel{\ldots}{x} x