summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/quantumarticle/quantumview.cls
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/quantumarticle/quantumview.cls')
-rw-r--r--macros/latex/contrib/quantumarticle/quantumview.cls1004
1 files changed, 1004 insertions, 0 deletions
diff --git a/macros/latex/contrib/quantumarticle/quantumview.cls b/macros/latex/contrib/quantumarticle/quantumview.cls
new file mode 100644
index 0000000000..0b06f66ede
--- /dev/null
+++ b/macros/latex/contrib/quantumarticle/quantumview.cls
@@ -0,0 +1,1004 @@
+%%
+%% This is file `quantumview.cls',
+%% it provides the quantumview class for typesetting perspective articles in
+%% Quantum - the open journal for quantum science
+%%
+%% Copyright 2020, 2021
+%% Verein zur Förderung des Open Access Publizierens in den Quantenwissenschaften
+%% (https://quantum-journal.org/about/)
+%%
+%% It is derived from `quantumarticle.cls' available from Quantum.
+%%
+%% It 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}[1995/12/01]
+\def\quantumviewversion{5.1}
+\ProvidesClass{quantumview}
+[2020/10/27 v\quantumviewversion
+class for Quantum - the open journal for quantum science (https://quantum-journal.org)]
+\RequirePackage{xkeyval}
+\RequirePackage{etoolbox}
+
+\newcommand*\@ptsize{}
+
+\newtoggle{@restonecol}
+
+\newtoggle{@html}
+\togglefalse{@html}
+\DeclareOptionX{html}{\toggletrue{@html}}
+
+\setlength\paperheight{297mm}%
+\setlength\paperwidth{210mm}
+
+\renewcommand*\@ptsize{1}
+
+\ProcessOptionsX
+
+\input{size1\@ptsize.clo}
+
+\newcommand{\@tag}[2]{<#1>#2</#1>}
+
+\RequirePackage{soul}
+\newcommand{\corr}[2]{\textcolor{red}{\st{#1}}\textcolor{blue}{#2}}
+\newcommand{\ins}[1]{\textcolor{red}{#1}}
+
+\iftoggle{@html}{\renewcommand*\familydefault{\ttdefault}}{}
+
+\AtBeginDocument{
+ % avoid bitmap fonts by loading lmodern or at least checking for cm-super
+ \IfFileExists{lmodern.sty}{
+ \RequirePackage{lmodern}
+ }{}
+ % Define a revtex-style openone symbol
+ \IfFileExists{bbm.sty}{
+ \RequirePackage{bbm}
+ \DeclareRobustCommand\openone{\mathbbm{1}}
+ }{
+ \IfFileExists{dsfont.sty}{
+ \RequirePackage{dsfont}
+ \DeclareRobustCommand\openone{\mathds{1}}
+ }{
+ % This uses a similar technique to {revtex4-1}'s openone,
+ % namely two overstruck numeral 1s, but implemented using mboxes
+ % and math kerning as suggested by The Comprehensive LaTeX Symbol List.
+ \DeclareRobustCommand\openone{{\mbox{\small1}\mkern-5.5mu1}}
+ }
+ }
+ \RequirePackage{xcolor}
+ \definecolor{quantumviolet}{HTML}{53257F} %Quantum violet
+ \definecolor{quantumgray}{HTML}{555555} %Quantum gray
+ \iftoggle{@html}{
+ \RequirePackage{verbatim}
+ \RequirePackage[draft]{graphicx}
+ }{}
+}
+
+
+\AfterEndPreamble{
+ \iftoggle{@html}{
+ % remove stry hyphens in HTML
+ \righthyphenmin=62
+ \lefthyphenmin=62
+ % convert other commands
+ \renewcommand{\emph}[1]{\@tag{em}{#1}}
+ \renewcommand{\textit}[1]{\@tag{i}{#1}}
+ \renewcommand{\textbf}[1]{\@tag{b}{#1}}
+ \renewcommand{\texttt}[1]{\@tag{tt}{#1}}
+ \renewcommand{\textsuperscript}[1]{\@tag{sup}{#1}}
+ \renewcommand{\textsubscript}[1]{\@tag{sub}{#1}}
+ \renewcommand{\cite}[1]{{\textbackslash}cite\{\detokenize{#1}\}}
+ \renewcommand{\label}[1]{{\textbackslash}label\{\detokenize{#1}\}}
+ \renewcommand{\ref}[1]{{\textbackslash}ref\{\detokenize{#1}\}}
+ \renewcommand{\section}[1]{\noindent\@tag{h2}{#1}\\ }
+ \renewcommand{\subsection}[1]{\noindent\@tag{h3}{#1}\\ }
+ \renewcommand{\subsubsection}[1]{\noindent\@tag{h4}{#1}\\ }
+ \renewcommand{\paragraph}[1]{\par ~\\\noindent<br/>\@tag{b}{#1}}
+ \renewenvironment{equation}
+ {\endgraf \noindent {\textbackslash}begin\{equation\} \verbatim}
+ {\endverbatim {\textbackslash}end\{equation\} \endgraf}
+ \renewenvironment{align}
+ {\endgraf \noindent {\textbackslash}begin\{align\} \verbatim}
+ {\endverbatim {\textbackslash}end\{align\} \endgraf}
+ \renewenvironment{eqnarray}
+ {\endgraf \noindent {\textbackslash}begin\{eqnarray\} \verbatim}
+ {\endverbatim {\textbackslash}end\{eqnarray\} \endgraf}
+ % This solution for itemize and enumerate is due to David Carlisle from tex.stackexchange
+ \def\itemize{%
+ \par\noindent <ul>\let\zz\relax
+ \let\olditem\item
+ \def\item{\zz\par\indent<li>\def\zz{\ifhmode\unskip\fi</li>\par}}
+ }
+ \def\enditemize{\zz\endgraf\noindent</ul>\par \let\item\olditem}
+ \def\enumerate{%
+ \par\noindent <ol>\let\zz\relax
+ \let\olditem\item
+ \def\item{\zz\par\indent<li>\def\zz{\ifhmode\unskip\fi</li>\par}}
+ }
+ \def\endenumerate{\zz\endgraf\noindent</ol>\par \let\item\olditem}
+
+ \def\@@addnewlinebetween#1{#1 \\ \noindent }
+ \def\@affiliationsonly{\forlistloop{\@@addnewlinebetween}{\affiliations}}
+ \renewcommand{\@maketitle}{%
+ \noindent {\footnotesize Title:} \\
+ \noindent {\@title} \\
+ \noindent {\footnotesize Author:} \\
+ \noindent \@authorsonly \\
+ \noindent {\footnotesize Affiliations:} \\
+ \noindent \@affiliationsonly
+ \par\noindent\rule{\textwidth}{0.4pt}
+ \vspace{1.5em}
+ }
+ \renewcommand{\bibliography}[1]{~}
+ % convert links
+ \renewcommand{\href}[2]{<a href="#1">#2</a>}
+}{}
+}
+
+\setcounter{topnumber}{2}
+\renewcommand*\topfraction{.7}
+\setcounter{bottomnumber}{1}
+\renewcommand*\bottomfraction{.3}
+\setcounter{totalnumber}{3}
+\renewcommand*\textfraction{.2}
+\renewcommand*\floatpagefraction{.5}
+\setcounter{dbltopnumber}{2}
+\renewcommand*\dbltopfraction{.7}
+\renewcommand*\dblfloatpagefraction{.5}
+
+\def\ps@headings{%
+\let\@oddfoot\@empty
+\def\@oddhead{{\slshape\rightmark}\hfil\thepage}%
+\let\@mkboth\markboth
+\def\sectionmark##1{%
+ \markright {\MakeUppercase{%
+ \ifnumgreater{\c@secnumdepth}{\m@ne}
+ {\thesection\quad}
+ {}
+ ##1}}%
+ }%
+}%
+
+\def\ps@myheadings{%
+ \let\@oddfoot\@empty\let\@evenfoot\@empty
+ \def\@evenhead{\thepage\hfil\slshape\leftmark}%
+ \def\@oddhead{{\slshape\rightmark}\hfil\thepage}%
+ \let\@mkboth\@gobbletwo
+ \let\sectionmark\@gobble
+ \let\subsectionmark\@gobble
+}
+
+
+\newcommand\maketitle{\par
+\begingroup
+\renewcommand\thefootnote{\@fnsymbol\c@footnote}%
+\def\@makefnmark{\rlap{\@textsuperscript{\normalfont\@thefnmark}}}%
+\long\def\@makefntext##1{\parindent 1em\noindent
+\hb@xt@1.8em{%
+\hss\@textsuperscript{\normalfont\@thefnmark}}##1}%
+\global\@topnum\z@ % Prevents figures from going at top of page.
+\@maketitle
+\thispagestyle{fancy}%\@thanks
+\endgroup
+\setcounter{footnote}{0}%
+\global\let\thanks\relax
+\global\let\maketitle\relax
+\global\let\@maketitle\relax
+% \global\let\@thanks\@empty
+% \global\let\@author\@empty
+% \global\let\@date\@empty
+% \global\let\@title\@empty
+\global\let\title\relax
+\global\let\author\relax
+\global\let\date\relax
+\global\let\and\relax
+}
+
+\def\@maketitle{%
+ \sffamily
+ \null
+ \let \footnote \thanks
+ \noindent%
+ \begin{minipage}{\textwidth}%
+ \noindent{\huge\hyphenpenalty=5000 \@printtitle\par}%
+ \end{minipage}%
+ \vskip 1.5em%
+ \begin{flushleft}%
+ \noindent \@printauthors
+ \end{flushleft}%
+ \vskip 1em%
+ \noindent\@printaffiliations
+ \vskip 0em%
+ \ifdefempty{\@date}{}{\noindent{\footnotesize\color{quantumgray}\@date}}%
+ \par
+ \vskip 1.5em
+ \makeatletter%
+ \begingroup
+ \hypersetup{%
+ pdftitle={\detokenize\expandafter{\@title}},
+ pdfauthor={\@authorsonly},
+ pdfkeywords={\@keywords},
+ pdfcreator={LaTeX with hyperref package and class quantumview \csname ver@quantumview.cls\endcsname},
+ }%
+ \endgroup
+ \makeatother%
+}
+
+\setcounter{secnumdepth}{3}
+\newcounter {part}
+\newcounter {section}
+\newcounter {subsection}[section]
+\newcounter {subsubsection}[subsection]
+\newcounter {paragraph}[subsubsection]
+\newcounter {subparagraph}[paragraph]
+\renewcommand*\thepart {\@Roman\c@part}
+\renewcommand*\thesection {\@arabic\c@section}
+\renewcommand*\thesubsection {\thesection.\@arabic\c@subsection}
+\renewcommand*\thesubsubsection{\thesubsection.\@arabic\c@subsubsection}
+\renewcommand*\theparagraph {\thesubsubsection.\@arabic\c@paragraph}
+\renewcommand*\thesubparagraph {\theparagraph.\@arabic\c@subparagraph}
+\newcommand\part{%
+ \ifbool{@noskipsec}{\leavevmode}{}
+ \par
+ \addvspace{4ex}%
+ \boolfalse{@afterindent}
+ \secdef\@part\@spart}
+
+\def\@part[#1]#2{%
+\ifnumgreater{\c@secnumdepth}{\m@ne}
+ {\refstepcounter{part}\addcontentsline{toc}{part}{\thepart\hspace{1em}#1}}
+ {\addcontentsline{toc}{part}{#1}}
+{\parindent \z@ \raggedright
+\interlinepenalty \@M
+\normalfont
+\ifnumgreater{\c@secnumdepth}{\m@ne}{\Large\bfseries \partname\nobreakspace\thepart\par\nobreak}{}
+\huge \bfseries #2%
+\markboth{}{}\par}%
+\nobreak
+\vskip 3ex
+\@afterheading%
+}
+
+\def\@spart#1{%
+ {\parindent \z@ \raggedright
+ \interlinepenalty \@M
+ \normalfont
+ \huge \bfseries #1\par}%
+ \nobreak
+ \vskip 3ex
+ \@afterheading}
+
+\newcommand*\section{\@startsection {section}{1}{\z@}%
+ {-3.5ex \@plus -1ex \@minus -.2ex}%
+ {2.3ex \@plus.2ex}%
+ {\normalfont\Large\sffamily}}
+
+\newcommand*\subsection{\@startsection{subsection}{2}{\z@}%
+ {-3.25ex\@plus -1ex \@minus -.2ex}%
+ {1.5ex \@plus .2ex}%
+ {\normalfont\large\sffamily}}
+
+\newcommand*\subsubsection{\@startsection{subsubsection}{3}{\z@}%
+ {-3.25ex\@plus -1ex \@minus -.2ex}%
+ {1.5ex \@plus .2ex}%
+ {\normalfont\normalsize\sffamily}}
+
+\newcommand*\paragraph{\@startsection{paragraph}{4}{\z@}%
+ {3.25ex \@plus1ex \@minus.2ex}%
+ {-1em}%
+ {\normalfont\normalsize\bfseries}}
+
+\newcommand*\subparagraph{\@startsection{subparagraph}{5}{\parindent}%
+ {3.25ex \@plus1ex \@minus .2ex}%
+ {-1em}%
+ {\normalfont\normalsize\bfseries}}
+
+\setlength\leftmargini{2.5em}
+\leftmargin \leftmargini
+\setlength\leftmarginii {2.2em}
+\setlength\leftmarginiii {1.87em}
+\setlength\leftmarginiv {1.7em}
+
+\setlength\leftmarginv {1em}
+\setlength\leftmarginvi {1em}
+
+\setlength \labelsep {.5em}
+\setlength \labelwidth{\leftmargini}
+\addtolength\labelwidth{-\labelsep}
+\@beginparpenalty -\@lowpenalty
+\@endparpenalty -\@lowpenalty
+\@itempenalty -\@lowpenalty
+\renewcommand*\theenumi{\@arabic\c@enumi}
+\renewcommand*\theenumii{\@alph\c@enumii}
+\renewcommand*\theenumiii{\@roman\c@enumiii}
+\renewcommand*\theenumiv{\@Alph\c@enumiv}
+\newcommand*\labelenumi{\theenumi.}
+\newcommand*\labelenumii{(\theenumii)}
+\newcommand*\labelenumiii{\theenumiii.}
+\newcommand*\labelenumiv{\theenumiv.}
+\renewcommand*\p@enumii{\theenumi}
+\renewcommand*\p@enumiii{\theenumi(\theenumii)}
+\renewcommand*\p@enumiv{\p@enumiii\theenumiii}
+\newcommand*\labelitemi{\textbullet}
+\newcommand*\labelitemii{\normalfont\bfseries \textendash}
+\newcommand*\labelitemiii{\textasteriskcentered}
+\newcommand*\labelitemiv{\textperiodcentered}
+\newenvironment{description}
+{\list{}{\labelwidth\z@ \itemindent-\leftmargin
+ \let\makelabel\descriptionlabel}}
+{\endlist}
+\newcommand*\descriptionlabel[1]{\hspace\labelsep
+ \normalfont\bfseries #1}
+
+\newenvironment{abstract}{%
+ \ifdefempty{\maketitle}{\relax{}}{\maketitle}
+ \vskip 1em \quotation%
+}
+{
+ \endquotation\vskip 2em%
+}
+
+\newenvironment{verse}
+{\let\\\@centercr
+ \list{}{\itemsep \z@
+ \itemindent -1.5em%
+ \listparindent\itemindent
+ \rightmargin \leftmargin
+ \advance\leftmargin 1.5em}%
+ \item\relax}
+{\endlist}
+
+\newenvironment{quotation}
+{\list{}{\listparindent 1.5em%
+ \itemindent \listparindent
+ \rightmargin \leftmargin
+ \parsep \z@ \@plus\p@}%
+ \item\relax}
+{\endlist}
+
+\newenvironment{quote}
+{\list{}{\rightmargin\leftmargin}%
+ \item\relax}
+{\endlist}
+
+\newcommand*\appendix{\par
+ \setcounter{section}{0}%
+ \setcounter{subsection}{0}%
+ \gdef\thesection{\@Alph\c@section}}
+\setlength\arraycolsep{5\p@}
+\setlength\tabcolsep{6\p@}
+\setlength\arrayrulewidth{.4\p@}
+\setlength\doublerulesep{2\p@}
+\setlength\tabbingsep{\labelsep}
+\skip\@mpfootins = \skip\footins
+\setlength\fboxsep{3\p@}
+\setlength\fboxrule{.4\p@}
+\renewcommand*\theequation {\@arabic\c@equation}
+\newcounter{figure}
+\renewcommand*\thefigure {\@arabic\c@figure}
+\def\fps@figure{tbp}
+\def\ftype@figure{1}
+\def\ext@figure{lof}
+\def\fnum@figure{\figurename\nobreakspace\thefigure}
+
+\newenvironment{figure}
+{\@float{figure}}
+{\end@float}
+
+\newenvironment{figure*}
+{\@dblfloat{figure}}
+{\end@dblfloat}
+
+\newcounter{table}
+\renewcommand*\thetable{\@arabic\c@table}
+\def\fps@table{tbp}
+\def\ftype@table{2}
+\def\ext@table{lot}
+\def\fnum@table{\tablename\nobreakspace\thetable}
+
+\newenvironment{table}
+{\@float{table}}
+{\end@float}
+
+\newenvironment{table*}
+{\@dblfloat{table}}
+{\end@dblfloat}
+
+\newlength\abovecaptionskip
+\newlength\belowcaptionskip
+\setlength\abovecaptionskip{10\p@}
+\setlength\belowcaptionskip{0\p@}
+\long\def\@makecaption#1#2{%
+ \vskip\abovecaptionskip
+ \sbox\@tempboxa{#1: #2}%
+ \ifdimgreater{\wd\@tempboxa}{\hsize}
+ {#1: #2\par}
+ {\global\boolfalse{@minipage}
+ \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}}%
+ \vskip\belowcaptionskip}
+
+\DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm}
+\DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf}
+\DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt}
+\DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf}
+\DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit}
+\DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl}
+\DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc}
+\DeclareRobustCommand*\cal{\@fontswitch\relax\mathcal}
+\DeclareRobustCommand*\mit{\@fontswitch\relax\mathnormal}
+
+\newcommand*\@pnumwidth{1.55em}
+\newcommand*\@tocrmarg{2.55em}
+\newcommand*\@dotsep{4.5}
+\setcounter{tocdepth}{3}
+
+% We use a trick from Ivan Andrus (https://stackoverflow.com/a/2785740)
+% to hide the "\section*{Contents}" command from the table of contents
+% to avoid getting an ugly duplication of the Contents header inside
+% the table itself.
+%
+% This trick consists of temporarily redefining \addcontentsline to
+% do nothing during the expansion of the arguments to \tocless.
+\newcommand{\nocontentsline}[3]{}
+\newcommand{\tocless}[2]{\bgroup\let\addcontentsline=\nocontentsline#1{#2}\egroup}
+\newcommand\tableofcontents{%
+ \tocless{\section*}{\contentsname
+ \@mkboth{%
+ \MakeUppercase\contentsname}{\MakeUppercase\contentsname}}%
+ \@starttoc{toc}%
+}
+
+\newcommand*\l@part[2]{%
+ \ifnumgreater{\c@tocdepth}{-2}{\relax
+ \addpenalty\@secpenalty
+ \addvspace{2.25em \@plus\p@}%
+ \setlength\@tempdima{3em}%
+ \begingroup
+ \parindent \z@ \rightskip \@pnumwidth
+ \parfillskip -\@pnumwidth
+ {\leavevmode
+ \large \bfseries #1\hfil \hb@xt@\@pnumwidth{\hss #2}}\par
+ \nobreak
+ \endgroup
+ }{}%
+}
+
+\newcommand*\l@section[2]{%
+ \ifnumgreater{\c@tocdepth}{\z@}{
+ \addpenalty\@secpenalty
+ \addvspace{1.0em \@plus\p@}%
+ \setlength\@tempdima{1.5em}%
+ \begingroup
+ \parindent \z@ \rightskip \@pnumwidth
+ \parfillskip -\@pnumwidth
+ \leavevmode \bfseries
+ \advance\leftskip\@tempdima
+ \hskip -\leftskip
+ #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par
+ \endgroup
+ }{}%
+}
+
+\newcommand*\l@subsection{\@dottedtocline{2}{1.5em}{2.3em}}
+\newcommand*\l@subsubsection{\@dottedtocline{3}{3.8em}{3.2em}}
+\newcommand*\l@paragraph{\@dottedtocline{4}{7.0em}{4.1em}}
+\newcommand*\l@subparagraph{\@dottedtocline{5}{10em}{5em}}
+
+\newcommand\listoffigures{%
+ \section*{\listfigurename}%
+ \@mkboth{\MakeUppercase\listfigurename}%
+ {\MakeUppercase\listfigurename}%
+ \@starttoc{lof}%
+}
+
+\newcommand*\l@figure{\@dottedtocline{1}{1.5em}{2.3em}}
+\newcommand\listoftables{%
+ \section*{\listtablename}%
+ \@mkboth{%
+ \MakeUppercase\listtablename}%
+ {\MakeUppercase\listtablename}%
+ \@starttoc{lot}%
+}
+
+\let\l@table\l@figure
+% Declare a new \acknowledgements command for {revtex4-1}
+% compatability.
+\newcommand*{\acknowledgmentsname}{Acknowledgments}
+\newcommand{\acknowledgments}[1]{%
+ \section*{\acknowledgmentsname}%
+ #1%
+}
+
+\newdimen\bibindent
+\setlength\bibindent{1.5em}
+
+\newenvironment{thebibliography}[1]
+{%
+ \section*{\refname}%
+ \@mkboth{\MakeUppercase\refname}{\MakeUppercase\refname}%
+ \list{\@biblabel{\@arabic\c@enumiv}}%
+ {\settowidth\labelwidth{\@biblabel{#1}}%
+ \leftmargin\labelwidth
+ \advance\leftmargin\labelsep
+ \@openbib@code
+ \usecounter{enumiv}%
+ \let\p@enumiv\@empty
+ \renewcommand*\theenumiv{\@arabic\c@enumiv}}%
+ \sloppy
+ \clubpenalty4000
+ \@clubpenalty \clubpenalty
+ \widowpenalty4000%
+ \sfcode`\.\@m
+ \setlength{\itemsep}{0pt plus 0.3ex}
+}
+{\def\@noitemerr
+ {\@latex@warning{Empty `thebibliography' environment}}%
+ \endlist}
+
+\newcommand\newblock{\hskip .11em\@plus.33em\@minus.07em}
+\let\@openbib@code\@empty
+
+\newenvironment{theindex}{%
+ \toggletrue{@restonecol}
+ \twocolumn[\section*{\indexname}]%
+ \@mkboth{\MakeUppercase\indexname}%
+ {\MakeUppercase\indexname}%
+ \thispagestyle{fancy}\parindent\z@
+ \parskip\z@ \@plus .3\p@\relax
+ \columnseprule \z@
+ \columnsep 35\p@
+ \let\item\@idxitem%
+}
+{
+ \iftoggle{@restonecol}
+ {\onecolumn}
+ {\clearpage}
+}
+
+\newcommand\@idxitem{\par\hangindent 40\p@}
+\newcommand\subitem{\@idxitem \hspace*{20\p@}}
+\newcommand\subsubitem{\@idxitem \hspace*{30\p@}}
+\newcommand\indexspace{\par \vskip 10\p@ \@plus5\p@ \@minus3\p@\relax}
+
+\renewcommand*\footnoterule{%
+ \kern-3\p@
+ \hrule\@width.4\columnwidth
+ \kern2.6\p@}
+
+\newcommand*\@makefntext[1]{%
+\parindent 1em%
+\noindent
+\hb@xt@1.8em{\hss\@makefnmark}#1}
+
+\newcommand*\contentsname{Contents}
+\newcommand*\listfigurename{List of Figures}
+\newcommand*\listtablename{List of Tables}
+\newcommand*\refname{References}
+\newcommand*\indexname{Index}
+\newcommand*\figurename{Figure}
+\newcommand*\tablename{Table}
+\newcommand*\partname{Part}
+\newcommand*\appendixname{Appendix}
+\newcommand*\abstractname{Abstract}
+
+\def\today{\ifcase\month\or
+ January\or February\or March\or April\or May\or June\or
+ July\or August\or September\or October\or November\or December\fi
+ \space\number\day, \number\year}
+\setlength\columnsep{20\p@}
+\setlength\columnseprule{0\p@}
+\setlength{\footnotesep}{\baselineskip}
+\RequirePackage{fancyhdr}
+\pagestyle{fancy}
+\renewcommand{\headrule}{}
+\renewcommand{\footrule}{\vbox to 0pt{\hbox to\headwidth{\color{quantumgray}\leaders\hrule\hfil}\vss}}
+\fancyhf{}
+
+\pagenumbering{arabic}
+\raggedbottom
+\onecolumn
+
+%title
+\def\@printtitle{%
+ {%
+ \edef\@titleexpanded{\detokenize\expandafter{\@title}}%
+ \iftoggle{@xstring}%
+ {\saveexploremode\exploregroups\StrSubstitute{\@titleexpanded}{ }{\%20}[\@titleforurl]\restoreexploremode}%
+ {\gdef\@titleforurl{\@titleexpanded}}%
+ \href{https://quantum-journal.org/?s=\@titleforurl\&reason=title-click}{%
+ \color{quantumviolet}{%
+ \@printtitletextwithappropriatefontsize\unskip%
+ }%
+ }%
+ }%
+}
+% In the macro below we compute the appropriate font size of the title.
+% We use \Huge if the title fits on one line and \huge if it extends over more
+% than one line in font size \Huge
+\def\@titleatfontsize#1{%
+ #1%
+ \begingroup%
+ \raggedright%
+ \def\selectfont{\ClassError{quantumview}{When submitting to Quantum, you are not supposed to use \string\textbf{}, \string\bf, \string\textit{} or other font formating commands inside \string\title{}. Please remove all such commands from your \string\title{}. If you really have to change the font for some part of the title you can turn off this error by giving the option allowfontchangeintitle}{}}%solution from https://tex.stackexchange.com/questions/347596/disallowing-textbf-it-sffamily-in-argument-of-macro-or-environment
+ \@title%
+ \endgroup%
+}%
+
+\def\@printtitletextwithappropriatefontsize{%
+ \newsavebox{\@titelsaveboxHuge}%
+ \savebox{\@titelsaveboxHuge}{%
+ \parbox[b]{\linewidth}{%
+ \@titleatfontsize{\Huge}%
+ }%
+ }%
+ \newsavebox{\@titelsaveboxHugeoneline}%
+ \savebox{\@titelsaveboxHugeoneline}{%
+ \@titleatfontsize{\Huge}%
+ }%
+ \newsavebox{\@titelsaveboxhhuge}%
+ \savebox{\@titelsaveboxhhuge}{%
+ \parbox[b]{\linewidth}{%
+ \@titleatfontsize{\huge}%
+ }%
+ }%
+ \ifdimgreater{\ht\@titelsaveboxHuge}{\ht\@titelsaveboxHugeoneline}
+ {\@titleatfontsize{\huge}%\usebox{\@titelsaveboxhhuge}% using huge because \the\ht\@titelsaveboxHuge{} is larger than \the\ht\@titelsaveboxHugeoneline{}
+ }
+ {\@titleatfontsize{\Huge}% using Huge because \the\ht\@titelsaveboxHuge{} is not larger than \the\ht\@titelsaveboxHugeoneline{}
+ }
+}
+
+%renew \title to allow for and ignore an optional argument
+\renewcommand{\title}[2][]{\gdef\@title{#2}}
+% author handling
+\newcounter{@authorcounter}
+\csdef{@authors}{}
+\renewcommand{\author}[2][]{%
+ \ifstrempty{#1}{%
+ \internal@author{#2}%
+ }{%
+ \internal@elseauthor{#1}{#2}
+ }%
+ \csdef{@authorname\the@authorcounter}{#2}%
+ \def\@currentauthornumber{\the@authorcounter}%
+}%
+\def\addauthortolabel#1#2{%
+ \ifcsdef{authorswithlabel#2}{}{\csdef{authorswithlabel#2}{}}%
+ \listcsxadd{authorswithlabel#2}{#1}}%
+\def\internal@elseauthor#1#2{%
+ \stepcounter{@authorcounter}
+ \ifcsdef{@authors}{}{\csdef{@authors}{}}%
+ \listadd{\@authors}{#2}%
+ \forcsvlist{\addauthortolabel{\the@authorcounter}}{#1}%
+ \ifbool{@startnewauthorgroup}{\csundef{@authorgroup}}{}%
+ \ifcsdef{@authorgroup}{}{\csdef{@authorgroup}{}}%
+ \listxadd{\@authorgroup}{\the@authorcounter}%
+ \boolfalse{@startnewauthorgroup}%
+}%
+\def\internal@author#1{%
+ \stepcounter{@authorcounter}
+ \ifcsdef{@authors}{}{\csdef{@authors}{}}%
+ \listadd{\@authors}{#1}%
+ \ifbool{@startnewauthorgroup}{\csundef{@authorgroup}}{}
+ \ifcsdef{@authorgroup}{}{\csdef{@authorgroup}{}}%
+ \listxadd{\@authorgroup}{\the@authorcounter}
+ \boolfalse{@startnewauthorgroup}
+}
+\def\@@spaceafter#1{#1 }
+\def\@@@comma{\def\@@@comma{,}}
+\def\@@commaspacebefore#1{\@@@comma{}#1}
+\def\@printauthor#1#2{\def\footnote{\ClassError{quantumview}{You must not put a \string\footnote{} command inside the argument of \string\author}{}}\mbox{\ifcsdef{author#1orcid}{\href{https://orcid.org/\csname author#1orcid\endcsname}{\color{black}#2}}{#2}}\ifnumcomp{\the@affiliationcounter}{>}{1}{\textsuperscript{\forlistcsloop{\@@commaspacebefore}{author#1affiliations}\unskip}}{}\ifnumcomp{#1}{<}{\the@authorcounter-1}{, }{\ifnumcomp{#1}{=}{\the@authorcounter-1}{\ifnumcomp{#1}{=}{1}{ and }{, and }}{}}}
+\def\@printauthors{%
+ \newcounter{@authornum}%
+ \large\forlistloop{\stepcounter{@authornum}%
+ \ifcsdef{author\the@authornum hasextras}{%
+ \insert\footins{\footnotesize%
+ % \interlinepenalty\interfootnotelinepenalty
+ % \splittopskip\footnotesep
+ % \splitmaxdepth \dp\strutbox \floatingpenalty \@MM
+ \hsize\dimexpr \linewidth\relax \@parboxrestore%
+ % \flushleft%
+ % \baselineskip=0pt%
+ \@printauthorextrainfo{\the@authornum}\vspace{0.5\baselineskip}%
+ }}{}%
+ \@printauthor\the@authornum}{\@authors}%
+}
+\def\@@addcommabetween#1{#1, }%this adds an ugly extra comma at the end but the variant below is not expandable and therefore leads to ugly warnings: https://tex.stackexchange.com/questions/50978/macro-to-extract-typeset-plain-text-from-a-command
+%\def\@@addcommabetween#1{\ifdef{\firstauthoronly}{, }{\def\firstauthoronly{\empty}}#1}
+\def\@authorsonly{\forlistloop{\@@addcommabetween}{\@authors}}
+% affiliation handling
+\newbool{@startnewauthorgroup}
+\newcounter{@affiliationcounter}
+\def\@addaffiliation#1#2{
+ \ifcsdef{author#2affiliations}{}{\csdef{author#2affiliations}{}}%
+ \listcsgadd{author#2affiliations}{#1}
+}
+\newcommand{\address}[2][]{\affiliation[#1]{#2}}
+
+%for compatibility with authblk
+\newcommand{\affil}[2][]{
+ \affiliation[#1]{#2}}
+\newcommand{\affiliation}[2][]{%
+ \ifstrempty{#1}{%
+ \internal@affiliation{#2}%
+ }{%
+ \elseinternal@affiliation{#1}{#2}
+ }}%
+\def\elseinternal@affiliation#1#2{%
+ \booltrue{@startnewauthorgroup}
+ \ifcsdef{affiliations}{}{\csdef{affiliations}{}}%
+ \expandafter\def\csname\detokenize{#2}\endcsname{#2}%
+ \stepcounter{@affiliationcounter}%
+ \listxadd{\affiliations}{\iftoggle{@html}{#2}{\detokenize{#2}}}%
+ \csxdef{affiliation\detokenize{#2}number}{\the@affiliationcounter{}}%
+ \ifcsdef{authorswithlabel#1}{%
+ \forlistcsloop{\@addaffiliation{\csname affiliation\detokenize{#2}number\endcsname}}{authorswithlabel#1}%
+ }{}%
+}
+\def\internal@affiliation#1{%
+ \booltrue{@startnewauthorgroup}
+ \ifcsdef{affiliations}{}{\csdef{affiliations}{}}%
+ \expandafter\def\csname\detokenize{#1}\endcsname{#1} %to handle special characters such as \'a and \l we create a macro whose name is the detokenized version of #1 and that expands to #1 and later call it in \@printaffiliation
+ \xifinlist{\detokenize{#1}}{\affiliations}{}{\stepcounter{@affiliationcounter}\listxadd{\affiliations}{\iftoggle{@html}{#1}{\detokenize{#1}}}\csxdef{affiliation\detokenize{#1}number}{\the@affiliationcounter{}}}%
+ \forlistloop{\@addaffiliation{\csname affiliation\detokenize{#1}number\endcsname}}{\@authorgroup}%
+}
+\def\@printaffiliation#1#2{\ifnumcomp{\the@affiliationcounter}{>}{1}{\llap{\textsuperscript{#1}}}{}\csname #2\endcsname\ifnumcomp{#1}{<}{\the@affiliationcounter}{\newline}{}}
+\def\@printaffiliations{%
+ \ifcsdef{affiliations}{}{\csdef{affiliations}{}}%
+ \newcounter{@affiliationnum}%
+ \ifnumcomp{\the@affiliationcounter}{>}{1}{%
+ \settowidth{\leftskip}{\footnotesize\textsuperscript{\the@affiliationcounter}}%
+ }{}%
+ {\footnotesize\color{quantumgray}%
+ \forlistloop{\stepcounter{@affiliationnum}\@printaffiliation\the@affiliationnum}{\affiliations}}%
+}
+%collaboration and altaffiliation
+\newcommand{\collaboration}[1]{\author{#1}}
+\newcommand{\altaffiliation}[2][]{\affiliation{#1#2}}
+
+% email, homepage, and thanks handling
+% be careful - this section is highly sensitive to the positioning of the % marks
+\def\@printauthorextrainfo#1{
+ \csname @authorname#1\endcsname:
+ \ifcsdef{author#1emails}
+ {%
+ \forlistcsloop{\@@spaceafter}{author#1emails}%
+ }
+ {}%
+ \ifcsdef{author#1homepages}
+ {%
+ \ifcsdef{author#1emails}
+ {\unskip, }
+ {}%
+ \forlistcsloop{\@@spaceafter}{author#1homepages}%
+ }
+ {}%
+ \ifcsdef{author#1thanks}
+ {%
+ \ifcsdef{author#1emails}
+ {%
+ \ifcsdef{author#1homepages}
+ {\unskip, }
+ {\unskip, }%
+ }
+ {%
+ \ifcsdef{author#1homepages}
+ {\unskip, }
+ {}%
+ }%
+ \forlistcsloop{\@@spaceafter}{author#1thanks}%
+ }
+ {}%
+}
+
+\newcommand{\email}[2][]{%
+ \ifcsdef{@currentauthornumber}{}{\ClassError{quantumview}{\string\email{} may only appear after the first \string\author{} command}{}}
+ \@email{#1}{\href{mailto:#2}{#2}}}
+\newcommand{\homepage}[2][]{%
+ \ifcsdef{@currentauthornumber}{}{\ClassError{quantumview}{\string\homepage{} may only appear after the first \string\author{} command}{}}
+ \@homepage{#1}{\href{#2}{#2}}}
+\renewcommand{\thanks}[2][]{%
+ \ifcsdef{@currentauthornumber}{}{\ClassError{quantumview}{\string\thanks{} may only appear after the first \string\author{} command}{}}
+ \@thanks{#1}{#2}}
+\newcommand{\orcid}[2][]{%
+ \ifcsdef{@currentauthornumber}{}{\ClassError{quantumview}{\string\orcid{} may only appear after the first \string\author{} command}{}}
+ \@orcid{#1}{#2}}
+\def\@email#1#2{%}
+ \@addemail{#1#2}{\@currentauthornumber}
+ \csdef{author\@currentauthornumber hasextras}{}
+}
+\def\@homepage#1#2{%
+ \ifcsdef{@currentauthornumber}{}{\def\@currentauthornumber{0}}%in case \homepage is called before the first author
+ \@addhomepage{#1#2}{\@currentauthornumber}
+ \csdef{author\@currentauthornumber hasextras}{}
+}
+\def\@thanks#1#2{%
+ \ifcsdef{@currentauthornumber}{}{\def\@currentauthornumber{0}}%in case \thanks is called before the first author
+ \@addthanks{#1#2}{\@currentauthornumber}
+ \csdef{author\@currentauthornumber hasextras}{}
+}
+\def\@orcid#1#2{%
+ \ifcsdef{@currentauthornumber}{}{\def\@currentauthornumber{0}}%in case \orcid is called before the first author
+ \@addorcid{#1#2}{\@currentauthornumber}
+}
+\def\@addemail#1#2{
+ \ifcsdef{author#2emails}{}{\csdef{author#2emails}{}}%
+ \listcsgadd{author#2emails}{#1}
+}
+\def\@addhomepage#1#2{
+ \ifcsdef{author#2homepages}{}{\csdef{author#2homepages}{}}%
+ \listcsgadd{author#2homepages}{#1}
+}
+\def\@addthanks#1#2{
+ \ifcsdef{author#2thanks}{}{\csdef{author#2thanks}{}}%
+ \listcsgadd{author#2thanks}{#1}
+}
+\def\@addorcid#1#2{
+ \csdef{author#2orcid}{#1}%
+}
+
+\newtoggle{@tikz}
+\IfFileExists{tikz.sty}{\toggletrue{@tikz}}{\togglefalse{@tikz}}
+
+\newtoggle{@xstring}
+\IfFileExists{xstring.sty}{\toggletrue{@xstring}}{\togglefalse{@xstring}}
+
+\AtBeginDocument{
+ \iftoggle{@xstring}
+ {\RequirePackage{xstring}}
+ {}
+ \iftoggle{@tikz}
+ {%
+ \RequirePackage{tikz}
+ \usetikzlibrary{calc}
+ \newlength{\@eQ}%Capital Q height
+ \newlength{\@w}%line width
+ \newlength{\@rl}%rounding length
+ \newlength{\@cw}%character width
+ \newlength{\@ch}%lower case character height
+ \newlength{\@cr}%corner radius
+ \newlength{\@sl}%<> slant
+ \newlength{\@xt}%<> x thickeness
+
+ \DeclareRobustCommand{\Quantum}{%
+ {\sffamily%\color{quantumviolet}%
+ \setlength{\@eQ}{\dimexpr\fontcharht\font`Q\relax}%
+ \setlength{\@w}{0.088\@eQ}%
+ \setlength{\@rl}{0.2\@eQ}%
+ \setlength{\@cw}{0.5\@eQ}%
+ \setlength{\@ch}{0.65\@eQ}%
+ \setlength{\@cr}{0.3\@w}%
+ \setlength{\@sl}{0.22\@eQ}%
+ \setlength{\@xt}{1.113588507968435\@w}%=math.sqrt(1/(1-pow(22./50.,2)))*\@w
+ \tikz[baseline,x=\@eQ,y=\@eQ,every node/.append style={fill=none,inner sep=0pt,outer sep=0pt,node distance=0},rounded corners=\@cr]{%
+ % <> leg in back
+ % \fill[] (0,0.5) -- ++(\@sl,0.5) -- ++(\@xt,0) -- ++(-\@sl,-0.5) -- ++(\@sl,-0.5) -- ++(-\@xt,0) -- cycle;
+ % \fill[xshift=.95\@eQ] (0,0.5) node (eastend) {} -- ++(-\@sl,0.5) -- ++(-\@xt,0) -- ++(\@sl,-0.5) -- ++(-\@sl,-0.5) -- ++(\@xt,0) -- cycle;
+ % \begin{scope}
+ % \clip[xshift=.95\@eQ,overlay] (0.5\@xt,0.5) -- ++(-\@sl,-0.5) -- (0,0) -- (0.5\@xt,0.5) ++(-2\@xt,0) -- ++(-\@sl,-0.5) -- ($(-2*\@sl,0)$) -- ++(\@sl,0.5) --cycle;
+ % \fill[xshift=.95\@eQ] (0,0) -- ++(-\@sl,0.5) -- ++(-\@xt,0) -- ++(\@sl,-0.5) -- cycle;
+ % \end{scope}
+ \node[overlay,anchor=base west,opacity=0] {Q};
+ % <> leg in front
+ \fill[] (0,0.5) -- ++(\@sl,0.5) -- ++(\@xt,0) -- ++(-\@sl,-0.5) -- ++(\@sl,-0.5) -- ++(-\@xt,0) -- cycle;
+ \begin{scope}[xshift=\@eQ]
+ \fill (0,0) -- ++(-\@sl,0.5) -- ++(-\@xt,0) -- ++(\@sl,-0.5) -- cycle;
+ \clip[overlay,rounded corners=0] (-1.34\@xt,0) -- ++(-\@sl,0.5) -- ++(0,-0.5) -- cycle (0.34\@xt,0) -- ++($2*(-\@sl,0.5)$) -- (0.5\@xt,1) --cycle;
+ \fill (0,0.5) node (eastend) {} -- ++(-\@sl,0.5) -- ++(-\@xt,0) -- ++(\@sl,-0.5) -- ++(-\@sl,-0.5) -- ++(\@xt,0) -- cycle;
+ \end{scope}
+ % u
+ \def\@u##1{%
+ \fill[##1] (0,\@ch) -- (0,1.06\@rl) to[out=-90,in=184,looseness=1.2,overlay] ($(\@cw-\@w,0)$) -- ($(\@cw,0)$) -- ++(0,\@ch) -- ++(-\@w,0) -- ++($(0,-\@ch) + (0,\@w)$) -- ($(\@cw-\@w,\@w)$) to[out=184,in=-90,looseness=1.1] ($(\@w,1.06\@rl)$) -- (\@w,\@ch) --cycle;}
+ \@u{shift={($(current bounding box.south east)+(0.172\@eQ,0)$)}}
+ \node[overlay,anchor=base east,opacity=0] at (current bounding box.south east) {u};
+ % a
+ \fill[shift={($(current bounding box.south east)+(0.110\@eQ,0)$)}] (\@cw,0) -- ++($(0,\@ch)-(0,\@rl)$) to[out=90,in=0,looseness=1.22] ++($(-1.22\@rl,\@rl)$) -- ($(\@w,\@ch)$) -- ++(0,-\@w) -- ($(1.22\@rl,\@ch-\@w)$) to[out=0,in=90,looseness=1.3,rounded corners=0] ($(\@cw,\@ch)-(\@w,\@rl)$) -- ($(\@cw,0)-(\@w,-\@w)$) --
+ ($(\@rl,\@w)$) to[out=180,in=-100,looseness=0.95,rounded corners=0] ($(1.05\@w,0.33\@ch)$) to[out=80,in=176,looseness=1.0] ($(\@cw-\@w,0.47\@ch)$) to[rounded corners=0] ++(0,-\@cr) to[rounded corners=0] ++($(0,\@cr+\@w)$) to[out=176,in=0] ($(1.2\@rl,0.48\@ch)+(0,\@w)$) to[out=180,in=90,rounded corners=0] ($(0.05\@w,0.33\@ch)$) to[out=-90,in=180,looseness=1.1,rounded corners=0] ($(\@rl,0)$) -- cycle;
+ \node[overlay,anchor=base east,opacity=0] at (current bounding box.south east) {a};
+ % \fill[shift={($(current bounding box.south east)+(0.110\@eQ,0)$)}] (\@cw,0) -- ++($(0,\@ch)-(0,\@rl)$) to[out=90,in=0,looseness=1.22] ++($(-1.22\@rl,\@rl)$) -- ($(\@w,\@ch-0.1\@w)$) -- ++(0.1\@w,-\@w) -- ($(1.22\@rl,\@ch-\@w)$) to[out=0,in=90,looseness=1.3,rounded corners=0] ($(\@cw,\@ch)-(\@w,\@rl)$) -- ($(\@cw,0)-(\@w,-\@w)$) --
+ % ($(\@rl,\@w)$) to[out=180,in=-100,looseness=0.95,rounded corners=0] ($(1.05\@w,0.33\@ch)$) to[out=80,in=176,looseness=1.0] ($(\@cw-\@w,0.47\@ch)$) to[rounded corners=0] ++(0,-\@cr) to[rounded corners=0] ++($(0,\@cr+\@w)$) to[out=176,in=0] ($(1.2\@rl,0.48\@ch)+(0,\@w)$) to[out=180,in=90,rounded corners=0] ($(0.05\@w,0.33\@ch)$) to[out=-90,in=180,looseness=1.1,rounded corners=0] ($(\@rl,0)$) -- cycle;
+ % \node[overlay,anchor=base east,opacity=0] at (current bounding box.south east) {a};
+ %n
+ \fill[shift={($(current bounding box.south east)+(0.181\@eQ+\@cw,\@ch)$)},rotate=180] (0,\@ch) -- (0,\@rl) to[out=-90,in=180,looseness=1.22] ($(1.2\@rl,0)$) -- (\@cw,0) -- ++(0,\@ch) -- ++(-\@w,0) -- ++($(0,-\@ch) + (0,1.05\@w)$) to[out=182,in=-90,looseness=1.04] ($(\@w,\@rl)$) -- (\@w,\@ch) --cycle;
+ \node[overlay,anchor=base east,opacity=0] at (current bounding box.south east) {n};
+ % t
+ \fill[shift={($(current bounding box.south east)+(0.111\@eQ,0)$)}]
+ (\@w,0.9) [rounded corners=0] -- (\@w,\@ch) [rounded corners=\@cr] -- (0,\@ch) -- ++(0,-\@w) to[rounded corners=0] ++(\@w,0) -- (\@w,\@rl) to[out=-90,in=180,looseness=1.3,overlay] ($(\@w+\@rl,-0.07\@w)$) to[overlay] ++($(0.64\@cw-\@w-\@rl,0)$) -- ++(0,\@w) -- ++($(\@w+\@rl-0.64\@cw,0)$) to[out=180,in=-90,looseness=1.4] ($(2\@w,\@rl)$) -- ++($(0,\@ch-\@rl-\@w)$) -- ($(0.64\@cw,\@ch-\@w)$) -- ++(0,\@w) to[rounded corners=0] (2\@w,\@ch) -- ($(2\@w,0.9)$) --cycle;
+ \node[overlay,anchor=base east,opacity=0] at (current bounding box.south east) {t};
+ % u
+ \@u{shift={($(current bounding box.south east)+(0.125\@eQ,0)$)}}
+ % \fill[shift={($(current bounding box.south east)+(0.125\@eQ,0)$)}] (0,\@ch) -- (0,\@rl) to[out=-90,in=180] ($(\@rl,0)$) -- (\@cw,0) -- ++(0,\@ch) -- ++(-\@w,0) -- ++($(0,-\@ch) + (0,\@w)$) -- ($(\@rl,\@w)$) to[out=180,in=-90] ($(\@w,\@rl)$) -- (\@w,\@ch) --cycle;
+ \node[overlay,anchor=base east,opacity=0] at (current bounding box.south east) {u};
+ % m
+ \fill[shift={($(current bounding box.south east)+(0.16\@eQ+1.93*\@cw-\@w,\@ch)$)},rotate=180] (0,\@ch) -- (0,\@rl) to[out=-90,in=180,looseness=1.2] ($(1.2\@rl,0)$) -- ($(1.93\@cw,0)-(\@w,0)$) -- ++(0,\@ch) -- ++(-\@w,0) -- ++($(0,-\@ch) + (0,1.05\@w)$) to[out=184,in=-4] ($(0.97\@cw,1.05\@w)+(0,0)$) -- ++($(0,-1.05\@w)+(0,\@ch)$) -- ++($(-\@w,0)$) -- ++($(0,-\@ch)+(0,1.05\@w)$) to[out=182,in=-90,looseness=1.04] ($(\@w,\@rl)$) -- (\@w,\@ch) --cycle;
+ \node[overlay,anchor=base east,opacity=0] at (current bounding box.south east) {m};
+ }}}
+ }
+ {%
+ \ClassWarning{quantumview}{The tikz package could not be found and the \string\Quantum command will not produce the Quantum logo, but fall back to outputting simply the text Quantum.}
+ \DeclareRobustCommand{\Quantum}{Quantum}
+ }
+}
+%elsearticle style extra header information
+\newcommand{\ead}[2][]{
+ \ifstrempty{#1}{
+ \email{#2}
+ }{
+ \iftoggle{@xstring}
+ {\IfStrEq{#1}{url}{\homepage{#2}}{\email{#2}}}
+ {email{#2}}
+ }
+}
+\AtEndPreamble{
+ \providecommand{\@elsearticlecommandsnotsupportederror}{\ClassError{quantumview}{The elsearticle style \string\cortext{}, \string\corref{}, \string\fntext{}, \string\fnref{}, \string\tnotetext{}, and \string\tnoteref{} commands are not supported by quantumview. Please refrain from using footnotes in the title part of your document and use the \string\tahnks{} command for author footnotes instead.}{}}
+ \providecommand{\cortext}[2][]{\@elsearticlecommandsnotsupportederror} %corresponding author information
+ \providecommand{\corref}[1]{\@elsearticlecommandsnotsupportederror} %corresponding author information reference
+ \providecommand{\fntext}[2][]{\@elsearticlecommandsnotsupportederror} %author footnote
+ \providecommand{\fnref}[1]{\@elsearticlecommandsnotsupportederror} %author footnot reference
+ \providecommand{\tnotetext}[2][]{\@elsearticlecommandsnotsupportederror} %title footnote
+ \providecommand{\tnoteref}[1]{\@elsearticlecommandsnotsupportederror} %title footnote reference
+}
+
+% set default options for hyperref to make links more pretty
+\PassOptionsToPackage{colorlinks=true,hyperindex}{hyperref}
+
+\PassOptionsToPackage{allcolors=quantumviolet}{hyperref}
+
+%enable DOIs if biblatex is used by default
+\PassOptionsToPackage{doi=true}{biblatex}
+
+\AtBeginDocument{%
+
+ \RequirePackage{hyperref}%
+
+ \@ifpackageloaded{natbib}{%
+ \setlength{\bibsep}{0pt plus 0.3ex}
+ \@ifpackageloaded{doi}{}{%
+ \providecommand{\doi}[1]{}
+ \renewcommand{\doi}[1]{\href{https://doi.org/\detokenize{#1}}{DOI: \detokenize{#1}}}%
+ }%
+ }{%
+ \@ifpackageloaded{biblatex}{
+ \DeclareFieldFormat{doi}{\mkbibacro{DOI}\addcolon\space\href{https://doi.org/\detokenize{#1}}{\detokenize{#1}}}
+ \setcounter{biburllcpenalty}{1000}
+ \setcounter{biburlucpenalty}{1000}
+ \setcounter{biburlnumpenalty}{1000}
+ }{}%
+ }
+}
+
+\def\@keywords{}
+\providecommand{\keywords}{}
+\renewcommand{\keywords}[1]{\def\@keywords{#1}}
+
+\newenvironment{acknowledgements}{\section*{Acknowledgements}}{}
+
+\AtBeginDocument{%
+ \providecommand\text[1]{
+ \ClassError{quantumview}{To use the \string\text{} command please load the mathtools package}{}
+ }
+}
+
+\PassOptionsToPackage{font={small,sf}}{caption}
+
+\AtEndPreamble{
+ \RequirePackage{caption}
+}
+
+\begingroup
+\catcode`\$=\active
+\protected\gdef$#1${\$\detokenize{#1}\$}
+\endgroup
+
+\iftoggle{@html}{
+ \AtBeginDocument{\catcode`\$=\active}
+}{}
+
+\endinput
+%%
+%% End of file `quantumview.cls'.