%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % Simpler-Wick % Simpler Wick contractions in LaTeX % Copyright (C) 2015 Joshua Ellis % % % This LaTeX file is free: you can redistribute it and/or modify it under the % terms of the GNU General Public License as published by the Free Software % Foundation, either version 3 of the License, or (at your option) any later % version. % % This is distributed in the hope that it will be useful, but WITHOUT ANY % WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR % A PARTICULAR PURPOSE. See the GNU General Public License for more details. % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% HEADER %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \def\pgfautoxrefs{1} \documentclass[a4paper,final]{ltxdoc} \usepackage{etex} %% Formatting %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \usepackage[vmargin=4cm, hmargin=3cm]{geometry} % Customize text width, page height, margins, etc. % \usepackage{multicol} % {multicols}{n} environment % \usepackage{pdflscape} % {landscape} environment %\usepackage{setspace} % Line spacing %\singlespacing % 1-spacing (default) %\onehalfspacing % 1,5-spacing %\doublespacing % 2-spacing \usepackage{fontspec} % Allows other fonts to be specified \setmainfont{EB Garamond}[ Contextuals={Alternate}, Numbers=OldStyle, ] \setmonofont{Inconsolata-g}[ Scale=MatchLowercase, ] \newfontface\swshape{EB Garamond 12 Italic}[Style=Swash] \usepackage{microtype} % Fine small typographical details \usepackage{titlesec} % Change section heading font \titleformat*{\section}{\huge\scshape} \titleformat*{\subsection}{\Large\scshape} \titleformat*{\subsubsection}{\large\scshape} \titleformat*{\paragraph}{\scshape} \usepackage[symbol*,perpage]{footmisc} \usepackage{enumitem} % Easily customize lists \setlist[description]{font=\normalfont\scshape} %% Change the Table of Contents fonts \usepackage{tocloft} \renewcommand{\cftsecfont}{\normalfont\scshape} \setlength\cftbeforesecskip{0pt} \setcounter{tocdepth}{2} %% Language %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \usepackage[UKenglish]{babel} % Set up the language \usepackage{csquotes} \usepackage{siunitx} % Provides \SI{1}{\metre}, also \ang{90}. \usepackage{textcomp} %% Graphics & Figure %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \usepackage{graphicx} % Allow graphics to be included \usepackage{xcolor} % Define and use colours % \usepackage{subcaption} % Subfigures inside a figure % Keep all pictures in the './img/' sub-directory. \graphicspath{{./img/}} %% Math Packages %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \usepackage{amsmath} % The core math package \usepackage{amssymb} % Defines additional math fonts \usepackage{mathtools} % Various extra maths functions % \usepackage{cancel} % Show cancellations with \cancel{} % \usepackage{autonum} % Only number referenced equations (must be loaded after cleverref) \usepackage{dsfont} \usepackage{simpler-wick} \usepackage[cmintegrals,varg]{newtxmath} % Nice math with Garamond %% Define \withnumber which forces the line to have number \newcommand{\withnumber}{\refstepcounter{equation}\tag{\theequation}} %% Allows page breaks in math (1 = avoid if possible, 4 = whenever) %% Page breaks can be avoided at particular places by using \\* \allowdisplaybreaks[2] %% Tables %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \usepackage{array} % New column types, including >{}x<{} \usepackage{booktabs} % Provides nicer horizontal lines \usepackage{multirow} % Allows cells to span multiple rows %\usepackage{longtable} % Allows for tables to span multiple pages %% Define the maths version of clr columns. \newcolumntype{C}{>{\(}c<{\)}} \newcolumntype{L}{>{\(}l<{\)}} \newcolumntype{R}{>{\(}r<{\)}} %% Other Packages %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \usepackage{listings} % Code listings \usepackage{minted} % Use Pygments \usepackage{fp} % Floating point arithmetics \usepackage{makeidx} % Index creation \usepackage{xr} % Cross-referencing \usepackage{hyperref} % Automatically inserts hyperlinks. \usepackage{cleveref} % Use `\cref{}` to reference anything \usepackage{autonum} %% Other modifications %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Modify the skip after each paragraph \setlength{\parskip}{1ex plus 0.5ex minus 0.2ex} \setlength{\parindent}{0pt} \providecommand\href[2]{\texttt{#1}} \providecommand\hypertarget[2]{\texttt{#1}} \providecommand\hyperlink[2]{\texttt{#1}} \newenvironment{example} {\VerbatimEnvironment \begin{VerbatimOut}{example.out}} {\end{VerbatimOut}% \vspace{1ex}% \setlength{\parindent}{0pt}% \fbox{\begin{minipage}{0.5\linewidth}% \inputminted[resetmargins]{latex}{example.out}% \end{minipage}% \hspace{0.05\linewidth}% \begin{minipage}{0.43\linewidth}% \input{example.out}% \end{minipage}% \vspace{1ex}}} \let\origtexttt=\texttt \def\texttt#1{{\def\textunderscore{\char`\_}\def\textbraceleft{\char`\{}\def\textbraceright{\char`\}}\origtexttt{#1}}} \def\exclamationmarktext{!} \def\atmarktext{@} { \catcode`\|=12 \gdef\pgfmanualnormalbar{|} \catcode`\|=13 \AtBeginDocument{\gdef|{\ifmmode\pgfmanualnormalbar\else\expandafter\verb\expandafter|\fi}} } \makeatother \makeindex %% Define some slightly nicer colors \definecolor{link-color}{RGB}{96 0 0} \definecolor{cite-color}{RGB}{0 96 0} \definecolor{file-color}{RGB}{0 0 96} \definecolor{url-color}{RGB}{0 0 96} \definecolor{link-border-color}{RGB}{255 159 159} \definecolor{cite-border-color}{RGB}{159 255 159} \definecolor{file-border-color}{RGB}{159 159 255} \definecolor{url-border-color}{RGB}{159 159 255} \hypersetup{ pdfborder=0 0 0, } %% Document Information %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \makeatletter \newcommand{\@keywords}{} \newcommand{\keywords}[1]{\renewcommand{\@keywords}{#1}} \newcommand{\@version}{} \newcommand{\version}[1]{\renewcommand{\@version}{#1}} \AtBeginDocument{ \hypersetup{ pdftitle={\@title}, pdfauthor={\@author}, pdfkeywords={\@keywords}, } } \makeatother \title{Simpler-Wick} \version{1.0.0} \author{Joshua \textsc{Ellis}} \keywords{Wick contractions; TeX; LaTeX; TikZ; Simpler-Wick} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% DOCUMENT %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \begin{document} \begin{titlepage} \makeatletter \begin{center} \vspace*{1em} \tikz\node[scale=1.5]{% \color{gray}\Huge\ttfamily \char`\{\textcolor{red!75!black}{\@title}\char`\}}; \vspace{0.5em} {\Large\bfseries Simpler Wick Contractions} \vspace{0.7em} {Version \@version \qquad \today} \vspace{1.3em} {by \@author} \end{center} \makeatother \vfill \begin{VerbatimOut}{example.out} \(\wick{\c1Simp\c2le\c3r\ \c2Wick\ \c3Contractio\c1n}\) \end{VerbatimOut} \begin{center} \tikzexternaldisable \tikz\node[scale=2]{\input{example.out}}; \tikzexternalenable \begin{minipage}{0.65\linewidth} \inputminted{latex}{example.out} \end{minipage} \end{center} \vfill \tableofcontents \end{titlepage} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% CONTENT %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \newpage \section{Introduction} \label{sec:introduction} This package provides simple way of inserting Wick contractions. If you have any suggestions or have found any bugs, please feel free to create a new issue or pull request on the Github page: \href{https://www.github.com/JP-Ellis/simpler-wick}{|https://www.github.com/JP-Ellis/simpler-wick|}. \subsection{Installation} \label{subsec:installation} In order to use this as it is, simply download |simpler-wick.sty| and place it in the same directory as your \TeX~file and include it using the usual |\usepackage{simpler-wick}|. Alternatively, it is also possible to install |simpler-wick| system-wide by placing it inside \TeX's search path (which will vary based on your operating system). This package is also available through \href{https:/ctan.org}{\textsc{ctan}}. \section{Usage} \label{sec:usage} The package is imported by adding |\usepackage{simpler-wick}| to your preamble. In your math environment, you can now use the |\wick| command in combination with |\c|: \begin{example} \begin{equation} \wick{\c\phi A \c\phi} \end{equation} \end{example} If you wish to have multiple contractions, then follow |\c| with a number between 1 and 9; the first occurrence of |\cN| will start the Wick contraction, and the second occurrence of |\cN| will end it. After you have ended a contraction, |\cN| start another contraction. \begin{example} \begin{equation} \wick{ \c1 a \c2 b \c3 c \c1 a \c4 d \c1 e \c1 e \c1 a \c2 b \c3 c \c1 a } \end{equation} \end{example} The package has two options: |sep| and |offset|. |sep| is the distance separating each level and |offset| is the base offset. By default, |\sep=3pt| and |\offset=1em|, but they can be changed globally by specifying them as package variables: \begin{minted}{latex} \usepackage[sep=5pt, offset=1.5em]{simpler-wick} \end{minted} Or you can specify them as optional argument to |\wick|. This is particularly useful if you have some tall symbols within your Wick contraction: \begin{example} \begin{equation} \wick[offset=2em]{\c\phi \int \frac{dx}{x} \c\phi} \end{equation} \end{example} \end{document} %%% Local Variables: %%% TeX-master: t %%% End: