summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/hep-paper/hep-math.sty
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/hep-paper/hep-math.sty')
-rw-r--r--Master/texmf-dist/tex/latex/hep-paper/hep-math.sty284
1 files changed, 284 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/hep-paper/hep-math.sty b/Master/texmf-dist/tex/latex/hep-paper/hep-math.sty
new file mode 100644
index 00000000000..65e057596f4
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/hep-paper/hep-math.sty
@@ -0,0 +1,284 @@
+%%
+%% This is file `hep-math.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% hep-paper-implementation.dtx (with options: `math')
+%% This is a generated file.
+%% Copyright (C) 2019-2020 by Jan Hajer
+%% This file may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either
+%% version 1.3c of this license or (at your option) any later
+%% version. The latest version of this license is in:
+%% http://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of
+%% LaTeX version 2005/12/01 or later.
+
+\NeedsTeXFormat{LaTeX2e}[2005/12/01]
+\ProvidesPackage{hep-math}[2021/08/01 v1.8 Font adjustments for publications in High Energy Physics]
+
+\newif\ifhep@lining\hep@liningtrue
+\newif\ifhep@eqnarray\hep@eqnarraytrue
+\RequirePackage{mathtools}
+\allowdisplaybreaks[1]
+\thickmuskip=5mu plus 3mu minus 1mu
+\medmuskip=4mu plus 2mu minus 3mu
+\RequirePackage{xparse}
+\DeclareDocumentCommand{\mathdef}{mO{0}m}{%
+ \expandafter\let\csname hep@text\string#1\endcsname=#1
+ \expandafter\newcommand\csname hep@math\string#1\endcsname[#2]{#3}
+ \DeclareRobustCommand#1{%
+ \ifmmode
+ \expandafter\let\expandafter\next\csname%
+ hep@math\string#1\endcsname%
+ \else
+ \expandafter\let\expandafter\next\csname%
+ hep@text\string#1\endcsname%
+ \fi
+ \next
+ }%
+}
+\AtBeginDocument{\mathdef{\i}{\operatorname{i}}}
+\RequirePackage{ulem}
+\def\overline#1{{\renewcommand{\ULdepth}{-1.9ex}{}\uline{#1}}}
+\DeclareRobustCommand{\over@line}[1]{\@@overline{#1}}
+\mathdef{\overline}{\over@line}
+\newcommand{\oset}[3][-1pt]{%
+ \text{\raisebox{.2ex}{$\mathop{#3}\limits^{%
+ \vbox to#1{\kern-2\ex@\hbox{$\scriptscriptstyle#2$}\vss}%
+ }$}}%
+}
+\newcommand{\overleftright}[1]{\oset{\leftrightarrow}{#1}}
+\ifhep@eqnarray\else
+ \let\eqnarray\@undefined
+ \let\endeqnarray\@undefined
+\fi
+\DeclareMathOperator{\tr}{tr}
+\DeclareMathOperator{\Tr}{Tr}
+\DeclareMathOperator{\rank}{rank}
+\DeclareMathOperator{\erf}{erf}
+\DeclareMathOperator{\Res}{Res}
+\DeclareMathOperator{\sgn}{sgn}
+\DeclareMathOperator{\diag}{diag}
+
+\let\Re\relax\DeclareMathOperator{\Re}{Re}
+\let\Im\relax\DeclareMathOperator{\Im}{Im}
+
+\let\cos\undefined\DeclareMathOperator{\cos}{cos\vphantom{i}}
+\let\tan\undefined\DeclareMathOperator{\tan}{tan\vphantom{i}}
+\DeclareMathOperator{\arccsc}{arccsc}
+\DeclareMathOperator{\arcsec}{arcsec}
+\DeclareMathOperator{\arccot}{arccot}
+\DeclareMathOperator{\asin}{asin}
+\DeclareMathOperator{\acos}{acos}
+\DeclareMathOperator{\atan}{atan}
+\DeclareMathOperator{\acsc}{acsc}
+\DeclareMathOperator{\asec}{asec}
+\DeclareMathOperator{\acot}{acot}
+\DeclareMathOperator{\csch}{csch}
+\DeclareMathOperator{\sech}{sech}
+\RequirePackage{units}
+\RequirePackage{xpatch}
+\ifhep@lining\else
+ \xpatchcmd{\unit}{\else#1}{%
+ \else\ifthenelse{\boolean{mmode}}{#1}{\textl{#1}}%
+ }{}{}
+ \xpatchcmd{\unitfrac}{\else#1}{%
+ \else\ifthenelse{\boolean{mmode}}{#1}{\textl{#1}}%
+ }{}{}
+\fi
+\newcommand{\inv}[2][1]{#2\ensuremath{^{-#1}}}
+\DeclarePairedDelimiterX{\hep@flatfrac}[2]{.}{.}{%
+ #1\delimsize/\makeleftdelim#2%
+}
+\NewDocumentCommand{\flatfrac}{somm}{%
+ \IfBooleanTF{#1}{%
+ \hep@flatfrac*{#3}{#4}%
+ }{%
+ \IfNoValueTF{#2}{\,\makeleftdelim#3/\makeleftdelim#4\,%
+ }{%
+ \hep@flatfrac[#2]{#3}{#4}%
+ }%
+ }%
+}
+\newcommand{\textfrac}[2]{\ensuremath{\nicefrac{\text{#1}}{\text{#2}}}}
+\newcommand{\makedifferential}[1]{\mathop{}\!#1}
+\providecommand{\differentialsymbol}{d}
+\newcommand{\differential}{\makedifferential\differentialsymbol}
+\AtBeginDocument{\mathdef{\d}{\differential}}
+
+\newcommand\makederivative[2]{
+ \NewDocumentCommand{#1}{somso}{%
+ \IfBooleanTF{##4}{%
+ \IfBooleanTF{##1}{\nicefrac}{\frac}%
+ }{%
+ \IfBooleanTF{##1}{\flatfrac}{\dfrac}%
+ }{%
+ \makedifferential#2\IfValueT{##2}{^{##2}}\IfValueT{##5}{##5}%
+ }{%
+ \makedifferential#2{##3}\IfValueT{##2}{^{##2}}%
+ }%
+ }
+}
+\makederivative{\derivative}{d}
+\newcommand\dv{\derivative}
+
+\newcommand\variation{\makedifferential\delta}
+\newcommand\var{\variation}
+
+\makederivative{\functionalderivative}{\delta}
+\newcommand\fdv{\functionalderivative}
+
+\RequirePackage{etoolbox}
+\newcommand\makepartialderivative[2]{
+ \NewDocumentCommand{#1}{sO{}O{}msoo}{%
+ \IfBooleanTF{##5}{%
+ \IfBooleanTF{##1}{\nicefrac}{\frac}%
+ }{%
+ \IfBooleanTF{##1}{\flatfrac}{\dfrac}%
+ }{%
+ \makedifferential#2\IfValueTF{##7}{%
+ \ifblank{##2}{
+ \ifblank{##3}{^2}{^{\the\numexpr##3+1\relax}}%
+ }{%
+ \ifblank{##3}{%
+ ^{\the\numexpr##2+1\relax}}{^{{\the\numexpr##2+##3\relax}}%
+ }%
+ }%
+ }{\IfValueT{##2}{^{##2}}}\IfValueT{##6}{##6}%
+ }{%
+ \makedifferential#2{##4}\IfValueT{##2}{^{##2}}%
+ \IfValueT{##7}{#2##7\IfValueT{##3}{^{##3}}}%
+ }%
+ }
+}
+
+\makepartialderivative{\partialderivative}{\partial}
+\newcommand\pdv{\partialderivative}
+\RequirePackage{cancel}
+\RequirePackage{slashed}
+\RequirePackage{mleftright}
+\mleftright
+\newcommand{\noargumentsymbol}{\:\cdot\:}
+\newcommand{\optionalargument}[1]{\ifblank{#1}{\noargumentsymbol}{#1}}
+\DeclarePairedDelimiterX\abs[1]\lvert\rvert{\optionalargument{#1}}
+\DeclarePairedDelimiterX\norm[1]\lVert\rVert{\optionalargument{#1}}
+\DeclarePairedDelimiterXPP\hep@pnorm[2]{}\lVert\rVert{_{#1}}{#2}
+\NewDocumentCommand{\pnorm}{som}{%
+ \IfValueTF{#2}{%
+ \IfBooleanTF{#1}{\hep@pnorm*}{\hep@pnorm}{#2}%
+ }{%
+ \IfBooleanTF{#1}{\norm*}{\norm}%
+ }{\optionalargument{#3}}%
+}
+
+\providecommand{\ordersymbol}{\mathcal{O}}
+\DeclarePairedDelimiterXPP\order[1]{\ordersymbol}(){}{#1}
+
+\DeclarePairedDelimiter{\hep@evaluated}{.}{\rvert}
+\NewDocumentCommand{\evaluated}{som}{%
+ \IfBooleanTF{#1}{%
+ \hep@evaluated*{#3}%
+ }{%
+ \IfNoValueTF{#2}{#3\rvert}{\hep@evaluated[#2]{#3}}%
+ }%
+}
+\newcommand\eval{\evaluated}
+
+\newcommand\makeleftdelim{\mathopen{}}
+\providecommand{\midbar}[1][]{%
+ \nonscript\:#1\vert\allowbreak\nonscript\:\makeleftdelim%
+}
+
+\providecommand\suchthat{\midbar}
+\DeclarePairedDelimiterX\set[1]\{\}{%
+ \renewcommand\suchthat{\midbar[\delimsize]}#1%
+}
+
+\providecommand{\probabilitysymbol}{\operatorname{Pr}}
+\providecommand\given{\midbar}
+\DeclarePairedDelimiterXPP\hep@Pr[1]{%
+ \probabilitysymbol}(){}{%
+ \renewcommand\given{\midbar[\delimsize]}#1%
+}
+\let\Pr\relax
+\NewDocumentCommand{\Pr}{so}{%
+ \IfValueTF{#2}{%
+ \IfBooleanTF{#1}{\hep@Pr*}{\hep@Pr}{#2}%
+ }{%
+ \probabilitysymbol%
+ }%
+}
+
+\DeclarePairedDelimiterX\innerproduct[2]{%
+ \langle}{\rangle}{\optionalargument{#1},\optionalargument{#2}%
+}
+\DeclarePairedDelimiterX\poissonbracket[2]{%
+ \lbrace}{\rbrace}{\optionalargument{#1},\optionalargument{#2}%
+}
+\newcommand\pb{\poissonbracket}
+\DeclarePairedDelimiterX\commutator[2]{%
+ \lbrack}{\rbrack}{\optionalargument{#1},\optionalargument{#2}%
+}
+\newcommand\comm{\commutator}
+\DeclarePairedDelimiterX\anticommutator[2]{%
+ \lbrace}{\rbrace}{\optionalargument{#1},\optionalargument{#2}%
+}
+\newcommand\acomm{\anticommutator}
+\providecommand\braketspace{\mskip1mu}
+\newcommand\hep@midvert{%
+ \braketspace\delimsize\vert\braketspace\makeleftdelim%
+}
+\DeclarePairedDelimiterX\braket[2]{\langle}{\rangle}{\braketspace#1\hep@midvert#2\braketspace}
+
+\DeclarePairedDelimiterXPP\hep@bra[1]{%
+ }{\langle}{\rvert}{\braketspace}{\braketspace#1\braketspace%
+}
+\NewDocumentCommand{\bra}{smt\ket sgt\ketbra sgg}{%
+ \IfBooleanTF{#6}{%
+ \IfBooleanTF{#1}{\braket*{#2}{#8}}{\braket{#2}{#8}}%
+ \IfBooleanTF{#7}{\bra*{#9}}{\bra{#9}}%
+ }{
+ \IfBooleanTF{#3}{%
+ \IfBooleanTF{#1}{\braket*}{%
+ \IfBooleanTF{#4}{\braket*}{\braket}}{#2}{#5%
+ }%
+ }{%
+ \IfBooleanTF{#1}{\hep@bra*}{\hep@bra}{#2}%
+ }%
+ }%
+}
+
+\DeclarePairedDelimiterXPP\ket[1]{%
+ \braketspace}{\lvert}{\rangle}{}{\braketspace\makeleftdelim#1\braketspace%
+}
+
+\NewDocumentCommand{\ketbra}{smm}{%
+ \IfBooleanTF{#1}{%
+ \ket*{#2}\bra*{#3}%
+ }{%
+ \ket{#2}\bra{#3}%
+ }%
+}
+
+\DeclarePairedDelimiterX\matrixelement[3]{%
+ \langle}{\rangle}{\braketspace#1\hep@midvert#2\hep@midvert#3\braketspace%
+}
+\newcommand\matrixel{\matrixelement}
+\newcommand\mel{\matrixelement}
+
+\DeclarePairedDelimiterX\hep@expvalue[1]{\langle}{\rangle}{\braketspace#1\braketspace}
+\NewDocumentCommand{\expectationvalue}{som}{%
+ \IfNoValueTF{#2}{%
+ \IfBooleanTF{#1}{\hep@expvalue*}{\hep@expvalue}{#3}%
+ }{%
+ \IfBooleanTF{#1}{\matrixelement*}{\matrixelement}{#2}{#3}{#2}%
+ }%
+}
+\newcommand\ev{\expectationvalue}
+\newcommand\vev[1]{\expectationvalue[0]{#1}}
+
+\endinput
+%%
+%% End of file `hep-math.sty'.