diff options
author | Karl Berry <karl@freefriends.org> | 2019-03-21 20:53:53 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2019-03-21 20:53:53 +0000 |
commit | fd57fc78450f5089af3e89bdb28023e17ea181fd (patch) | |
tree | 66f86b8ae34c3c4f8f70d5e8e5cd2876f5b1729b /Master | |
parent | 2f67ef04c2e95c64f0a4e7395e0633710ab122a4 (diff) |
els-cas-template (21mar19)
git-svn-id: svn://tug.org/texlive/trunk@50508 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master')
33 files changed, 7177 insertions, 1 deletions
diff --git a/Master/texmf-dist/doc/latex/els-cas-template/README b/Master/texmf-dist/doc/latex/els-cas-template/README new file mode 100644 index 00000000000..3bd3727a466 --- /dev/null +++ b/Master/texmf-dist/doc/latex/els-cas-template/README @@ -0,0 +1,41 @@ +cas-sc.cls and cas-dc.cls are the two new class files created +for typesetting Elsevier's journal articles which go through +Complex Article Service (CAS) workflow. These are now accepted for +submitting articles, both in Elsevier's electronic submission system +and elsewhere. + +Bugs and problems with elsarticle.cls may be reported to the +developers of the class via elsarticle@stmdocs.in. + +The file manifest.txt provides a list of the files in the +elsarticle-cas bundle. The following are the main files available: + +- cas-sc-template.tex, template file for single column journals +- cas-dc-template.tex, template file for double column journals +- cas-sc-template.pdf, PDF of the cas-sc-template.tex +- cas-dc-template.pdf, PDF of the cas-ddc-template.tex +- cas-common.sty, additional macro package for formatting + model2-names.bst, BibTeX style file +- twitter.jpeg, linkedin.jpeg, url.jpeg, gplus.jpeg, facebook.jpeg, + email.jpeg - thumbnail images of social networking sites + +The documentation file is elsdoc-cas.tex in the doc directory. To +compile it: + +1. pdflatex elsdoc-cas +2. pdflatex elsdoc-cas +3. pdflatex elsdoc-cas + +or + +use the makefile. Use the target `all' (eg: make all) in doc +directory. + +The above procedure will create a print version, namely elsdoc-cas.pdf. + +Copyright 2019, Elsevier. Bugs, feature requests, suggestions and +comments may be mailed to elsarticle@stmdocs.in. elsarticle.cls, +related documentation and supporting packages are released under the +LATEX Project Public Licence, either version 1.3 or any later +version. This work has the LPPL maintenance status +'author-maintained'. diff --git a/Master/texmf-dist/doc/latex/els-cas-template/cas-dc-template.pdf b/Master/texmf-dist/doc/latex/els-cas-template/cas-dc-template.pdf Binary files differnew file mode 100644 index 00000000000..912309bf1a1 --- /dev/null +++ b/Master/texmf-dist/doc/latex/els-cas-template/cas-dc-template.pdf diff --git a/Master/texmf-dist/doc/latex/els-cas-template/cas-dc-template.tex b/Master/texmf-dist/doc/latex/els-cas-template/cas-dc-template.tex new file mode 100644 index 00000000000..e27b0e23b12 --- /dev/null +++ b/Master/texmf-dist/doc/latex/els-cas-template/cas-dc-template.tex @@ -0,0 +1,444 @@ +%% +%% Copyright 2019 Elsevier Ltd +%% +%% This file is part of the 'CAS Bundle'. +%% -------------------------------------- +%% +%% It may be distributed under the conditions of the LaTeX Project Public +%% License, either version 1.2 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.2 or later is part of all distributions of LaTeX +%% version 1999/12/01 or later. +%% +%% The list of all files belonging to the 'CAS Bundle' is +%% given in the file `manifest.txt'. +%% +%% Template article for cas-dc documentclass for +%% double column output. + +%\documentclass[a4paper,fleqn,longmktitle]{cas-dc} +\documentclass[a4paper,fleqn]{cas-dc} + +%\usepackage[authoryear,longnamesfirst]{natbib} +%\usepackage[authoryear]{natbib} +\usepackage[numbers]{natbib} + +%%%Author definitions +\def\tsc#1{\csdef{#1}{\textsc{\lowercase{#1}}\xspace}} +\tsc{WGM} +\tsc{QE} +\tsc{EP} +\tsc{PMS} +\tsc{BEC} +\tsc{DE} +%%% + +\begin{document} +\let\WriteBookmarks\relax +\def\floatpagepagefraction{1} +\def\textpagefraction{.001} +\shorttitle{Leveraging social media news} +\shortauthors{CV Radhakrishnan et~al.} + +\title [mode = title]{This is a specimen $a_b$ title} +\tnotemark[1,2] + +\tnotetext[1]{This document is the results of the research + project funded by the National Science Foundation.} + +\tnotetext[2]{The second title footnote which is a longer text matter + to fill through the whole text width and overflow into + another line in the footnotes area of the first page.} + + + +\author[1,3]{CV Radhakrishnan}[type=editor, + auid=000,bioid=1, + prefix=Sir, + role=Researcher, + orcid=0000-0001-7511-2910] +\cormark[1] +\fnmark[1] +\ead{cvr_1@tug.org.in} +\ead[url]{www.cvr.cc, cvr@sayahna.org} + +\credit{Conceptualization of this study, Methodology, Software} + +\address[1]{Elsevier B.V., Radarweg 29, 1043 NX Amsterdam, The Netherlands} + +\author[2,4]{Han Theh Thanh}[style=chinese] + +\author[2,3]{CV Rajagopal}[% + role=Co-ordinator, + suffix=Jr, + ] +\fnmark[2] +\ead{cvr3@sayahna.org} +\ead[URL]{www.sayahna.org} + +\credit{Data curation, Writing - Original draft preparation} + +\address[2]{Sayahna Foundation, Jagathy, Trivandrum 695014, India} + +\author% +[1,3] +{Rishi T.} +\cormark[2] +\fnmark[1,3] +\ead{rishi@stmdocs.in} +\ead[URL]{www.stmdocs.in} + +\address[3]{STM Document Engineering Pvt Ltd., Mepukada, + Malayinkil, Trivandrum 695571, India} + +\cortext[cor1]{Corresponding author} +\cortext[cor2]{Principal corresponding author} +\fntext[fn1]{This is the first author footnote. but is common to third + author as well.} +\fntext[fn2]{Another author footnote, this is a very long footnote and + it should be a really long footnote. But this footnote is not yet + sufficiently long enough to make two lines of footnote text.} + +\nonumnote{This note has no numbers. In this work we demonstrate $a_b$ + the formation Y\_1 of a new type of polariton on the interface + between a cuprous oxide slab and a polystyrene micro-sphere placed + on the slab. + } + +\begin{abstract} +This template helps you to create a properly formatted \LaTeX\ manuscript. + +\noindent\texttt{\textbackslash begin{abstract}} \dots +\texttt{\textbackslash end{abstract}} and +\verb+\begin{keyword}+ \verb+...+ \verb+\end{keyword}+ +which +contain the abstract and keywords respectively. + +\noindent Each keyword shall be separated by a \verb+\sep+ command. +\end{abstract} + +\begin{graphicalabstract} +\includegraphics{figs/grabs.pdf} +\end{graphicalabstract} + +\begin{highlights} +\item Research highlights item 1 +\item Research highlights item 2 +\item Research highlights item 3 +\end{highlights} + +\begin{keywords} +quadrupole exciton \sep polariton \sep \WGM \sep \BEC +\end{keywords} + + +\maketitle + +\section{Introduction} + +The Elsevier cas-dc class is based on the +standard article class and supports almost all of the functionality of +that class. In addition, it features commands and options to format the +\begin{itemize} \item document style \item baselineskip \item front +matter \item keywords and MSC codes \item theorems, definitions and +proofs \item lables of enumerations \item citation style and labeling. +\end{itemize} + +This class depends on the following packages +for its proper functioning: + +\begin{enumerate} +\itemsep=0pt +\item {natbib.sty} for citation processing; +\item {geometry.sty} for margin settings; +\item {fleqn.clo} for left aligned equations; +\item {graphicx.sty} for graphics inclusion; +\item {hyperref.sty} optional packages if hyperlinking is + required in the document; +\end{enumerate} + +All the above packages are part of any +standard \LaTeX{} installation. +Therefore, the users need not be +bothered about downloading any extra packages. + +\section{Installation} + +The package is available at author resources page at Elsevier +(\url{http://www.elsevier.com/locate/latex}). +The class may be moved or copied to a place, usually,\linebreak +\verb+$TEXMF/tex/latex/elsevier/+, %$%%%%%%%%%%%%%%%%%%%%%%%%%%%% +or a folder which will be read +by \LaTeX{} during document compilation. The \TeX{} file +database needs updation after moving/copying class file. Usually, +we use commands like \verb+mktexlsr+ or \verb+texhash+ depending +upon the distribution and operating system. + +\section{Front matter} + +The author names and affiliations could be formatted in two ways: +\begin{enumerate}[(1)] +\item Group the authors per affiliation. +\item Use footnotes to indicate the affiliations. +\end{enumerate} +See the front matter of this document for examples. +You are recommended to conform your choice to the journal you +are submitting to. + +\section{Bibliography styles} + +There are various bibliography styles available. You can select the +style of your choice in the preamble of this document. These styles are +Elsevier styles based on standard styles like Harvard and Vancouver. +Please use Bib\TeX\ to generate your bibliography and include DOIs +whenever available. + +Here are two sample references: +\cite{Fortunato2010} +\cite{Fortunato2010,NewmanGirvan2004} +\cite{Fortunato2010,Vehlowetal2013} + +\section{Floats} +{Figures} may be included using the command,\linebreak +\verb+\includegraphics+ in +combination with or without its several options to further control +graphic. \verb+\includegraphics+ is provided by {graphic[s,x].sty} +which is part of any standard \LaTeX{} distribution. +{graphicx.sty} is loaded by default. \LaTeX{} accepts figures in +the postscript format while pdf\LaTeX{} accepts {*.pdf}, +{*.mps} (metapost), {*.jpg} and {*.png} formats. +pdf\LaTeX{} does not accept graphic files in the postscript format. + +\begin{figure} + \centering + \includegraphics[scale=.75]{figs/Fig1.pdf} + \caption{The evanescent light - $1S$ quadrupole coupling + ($g_{1,l}$) scaled to the bulk exciton-photon coupling + ($g_{1,2}$). The size parameter $kr_{0}$ is denoted as $x$ and + the \PMS is placed directly on the cuprous oxide sample ($\delta + r=0$, See also Table \protect\ref{tbl1}).} + \label{FIG:1} +\end{figure} + + +The \verb+table+ environment is handy for marking up tabular +material. If users want to use {multirow.sty}, +{array.sty}, etc., to fine control/enhance the tables, they +are welcome to load any package of their choice and +{cas-dc.cls} will work in combination with all loaded +packages. + +\begin{table}[width=.9\linewidth,cols=4,pos=h] +\caption{This is a test caption. This is a test caption. This is a test +caption. This is a test caption.}\label{tbl1} +\begin{tabular*}{\tblwidth}{@{} LLLL@{} } +\toprule +Col 1 & Col 2 & Col 3 & Col4\\ +\midrule +12345 & 12345 & 123 & 12345 \\ +12345 & 12345 & 123 & 12345 \\ +12345 & 12345 & 123 & 12345 \\ +12345 & 12345 & 123 & 12345 \\ +12345 & 12345 & 123 & 12345 \\ +\bottomrule +\end{tabular*} +\end{table} + +\section[Theorem and ...]{Theorem and theorem like environments} + +{cas-dc.cls} provides a few shortcuts to format theorems and +theorem-like environments with ease. In all commands the options that +are used with the \verb+\newtheorem+ command will work exactly in the same +manner. {cas-dc.cls} provides three commands to format theorem or +theorem-like environments: + +\begin{verbatim} + \newtheorem{theorem}{Theorem} + \newtheorem{lemma}[theorem]{Lemma} + \newdefinition{rmk}{Remark} + \newproof{pf}{Proof} + \newproof{pot}{Proof of Theorem \ref{thm2}} +\end{verbatim} + + +The \verb+\newtheorem+ command formats a +theorem in \LaTeX's default style with italicized font, bold font +for theorem heading and theorem number at the right hand side of the +theorem heading. It also optionally accepts an argument which +will be printed as an extra heading in parentheses. + +\begin{verbatim} + \begin{theorem} + For system (8), consensus can be achieved with + $\|T_{\omega z}$ ... + \begin{eqnarray}\label{10} + .... + \end{eqnarray} + \end{theorem} +\end{verbatim} + + +\newtheorem{theorem}{Theorem} + +\begin{theorem} +For system (8), consensus can be achieved with +$\|T_{\omega z}$ ... +\begin{eqnarray}\label{10} +.... +\end{eqnarray} +\end{theorem} + +The \verb+\newdefinition+ command is the same in +all respects as its \verb+\newtheorem+ counterpart except that +the font shape is roman instead of italic. Both +\verb+\newdefinition+ and \verb+\newtheorem+ commands +automatically define counters for the environments defined. + +The \verb+\newproof+ command defines proof environments with +upright font shape. No counters are defined. + + +\section[Enumerated ...]{Enumerated and Itemized Lists} +{cas-dc.cls} provides an extended list processing macros +which makes the usage a bit more user friendly than the default +\LaTeX{} list macros. With an optional argument to the +\verb+\begin{enumerate}+ command, you can change the list counter +type and its attributes. + +\begin{verbatim} + \begin{enumerate}[1.] + \item The enumerate environment starts with an optional + argument `1.', so that the item counter will be suffixed + by a period. + \item You can use `a)' for alphabetical counter and '(i)' + for roman counter. + \begin{enumerate}[a)] + \item Another level of list with alphabetical counter. + \item One more item before we start another. + \item One more item before we start another. + \item One more item before we start another. + \item One more item before we start another. +\end{verbatim} + +Further, the enhanced list environment allows one to prefix a +string like `step' to all the item numbers. + +\begin{verbatim} + \begin{enumerate}[Step 1.] + \item This is the first step of the example list. + \item Obviously this is the second step. + \item The final step to wind up this example. + \end{enumerate} +\end{verbatim} + +\section{Cross-references} +In electronic publications, articles may be internally +hyperlinked. Hyperlinks are generated from proper +cross-references in the article. For example, the words +\textcolor{black!80}{Fig.~1} will never be more than simple text, +whereas the proper cross-reference \verb+\ref{tiger}+ may be +turned into a hyperlink to the figure itself: +\textcolor{blue}{Fig.~1}. In the same way, +the words \textcolor{blue}{Ref.~[1]} will fail to turn into a +hyperlink; the proper cross-reference is \verb+\cite{Knuth96}+. +Cross-referencing is possible in \LaTeX{} for sections, +subsections, formulae, figures, tables, and literature +references. + +\section{Bibliography} + +Two bibliographic style files (\verb+*.bst+) are provided --- +{model1-num-names.bst} and {model2-names.bst} --- the first one can be +used for the numbered scheme. This can also be used for the numbered +with new options of {natbib.sty}. The second one is for the author year +scheme. When you use model2-names.bst, the citation commands will be +like \verb+\citep+, \verb+\citet+, \verb+\citealt+ etc. However when +you use model1-num-names.bst, you may use only \verb+\cite+ command. + +\verb+thebibliography+ environment. Each reference is a\linebreak +\verb+\bibitem+ and each \verb+\bibitem+ is identified by a label, +by which it can be cited in the text: + +\noindent In connection with cross-referencing and +possible future hyperlinking it is not a good idea to collect +more that one literature item in one \verb+\bibitem+. The +so-called Harvard or author-year style of referencing is enabled +by the \LaTeX{} package {natbib}. With this package the +literature can be cited as follows: + +\begin{enumerate}[\textbullet] +\item Parenthetical: \verb+\citep{WB96}+ produces (Wettig \& Brown, 1996). +\item Textual: \verb+\citet{ESG96}+ produces Elson et al. (1996). +\item An affix and part of a reference:\break +\verb+\citep[e.g.][Ch. 2]{Gea97}+ produces (e.g. Governato et +al., 1997, Ch. 2). +\end{enumerate} + +In the numbered scheme of citation, \verb+\cite{<label>}+ is used, +since \verb+\citep+ or \verb+\citet+ has no relevance in the numbered +scheme. {natbib} package is loaded by {cas-dc} with +\verb+numbers+ as default option. You can change this to author-year +or harvard scheme by adding option \verb+authoryear+ in the class +loading command. If you want to use more options of the {natbib} +package, you can do so with the \verb+\biboptions+ command. For +details of various options of the {natbib} package, please take a +look at the {natbib} documentation, which is part of any standard +\LaTeX{} installation. + +\appendix +\section{My Appendix} +Appendix sections are coded under \verb+\appendix+. + +\verb+\printcredits+ command is used after appendix sections to list +author credit taxonomy contribution roles tagged using \verb+\credit+ +in frontmatter. + +\printcredits + +%% Loading bibliography style file +%\bibliographystyle{model1-num-names} +\bibliographystyle{model2-names} + +% Loading bibliography database +\bibliography{refs} + + +%\vskip3pt + +\bio{} +Author biography without author photo. +Author biography. Author biography. Author biography. +Author biography. Author biography. Author biography. +Author biography. Author biography. Author biography. +Author biography. Author biography. Author biography. +Author biography. Author biography. Author biography. +Author biography. Author biography. Author biography. +Author biography. Author biography. Author biography. +Author biography. Author biography. Author biography. +Author biography. Author biography. Author biography. +\endbio + +\bio{figs/pic1} +Author biography with author photo. +Author biography. Author biography. Author biography. +Author biography. Author biography. Author biography. +Author biography. Author biography. Author biography. +Author biography. Author biography. Author biography. +Author biography. Author biography. Author biography. +Author biography. Author biography. Author biography. +Author biography. Author biography. Author biography. +Author biography. Author biography. Author biography. +Author biography. Author biography. Author biography. +\endbio + +\bio{figs/pic1} +Author biography with author photo. +Author biography. Author biography. Author biography. +Author biography. Author biography. Author biography. +Author biography. Author biography. Author biography. +Author biography. Author biography. Author biography. +\endbio + +\end{document} + diff --git a/Master/texmf-dist/doc/latex/els-cas-template/cas-sc-template.pdf b/Master/texmf-dist/doc/latex/els-cas-template/cas-sc-template.pdf Binary files differnew file mode 100644 index 00000000000..35c5f9af0c2 --- /dev/null +++ b/Master/texmf-dist/doc/latex/els-cas-template/cas-sc-template.pdf diff --git a/Master/texmf-dist/doc/latex/els-cas-template/cas-sc-template.tex b/Master/texmf-dist/doc/latex/els-cas-template/cas-sc-template.tex new file mode 100644 index 00000000000..f418a9ccc3a --- /dev/null +++ b/Master/texmf-dist/doc/latex/els-cas-template/cas-sc-template.tex @@ -0,0 +1,445 @@ +%% +%% Copyright 2019 Elsevier Ltd +%% +%% This file is part of the 'CAS Bundle'. +%% -------------------------------------- +%% +%% It may be distributed under the conditions of the LaTeX Project Public +%% License, either version 1.2 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.2 or later is part of all distributions of LaTeX +%% version 1999/12/01 or later. +%% +%% The list of all files belonging to the 'CAS Bundle' is +%% given in the file `manifest.txt'. +%% +%% Template article for cas-sc documentclass for +%% single column output. + +%\documentclass[a4paper,fleqn,longmktitle]{cas-sc} +\documentclass[a4paper,fleqn]{cas-sc} + +%\usepackage[numbers]{natbib} +%\usepackage[authoryear]{natbib} +\usepackage[authoryear,longnamesfirst]{natbib} + +%%%Author macros +\def\tsc#1{\csdef{#1}{\textsc{\lowercase{#1}}\xspace}} +\tsc{WGM} +\tsc{QE} +\tsc{EP} +\tsc{PMS} +\tsc{BEC} +\tsc{DE} +%%% + +\begin{document} +\let\WriteBookmarks\relax +\def\floatpagepagefraction{1} +\def\textpagefraction{.001} +\shorttitle{Leveraging social media news} +\shortauthors{CV Radhakrishnan et~al.} +%\begin{frontmatter} + +\title [mode = title]{This is a specimen $a_b$ title} +\tnotemark[1,2] + +\tnotetext[1]{This document is the results of the research + project funded by the National Science Foundation.} + +\tnotetext[2]{The second title footnote which is a longer text matter + to fill through the whole text width and overflow into + another line in the footnotes area of the first page.} + + + +\author[1,3]{CV Radhakrishnan}[type=editor, + auid=000,bioid=1, + prefix=Sir, + role=Researcher, + orcid=0000-0001-7511-2910] +\cormark[1] +\fnmark[1] +\ead{cvr_1@tug.org.in} +\ead[url]{www.cvr.cc, cvr@sayahna.org} + +\credit{Conceptualization of this study, Methodology, Software} + +\address[1]{Elsevier B.V., Radarweg 29, 1043 NX Amsterdam, The Netherlands} + +\author[2,4]{Han Theh Thanh}[style=chinese] + +\author[2,3]{CV Rajagopal}[% + role=Co-ordinator, + suffix=Jr, + ] +\fnmark[2] +\ead{cvr3@sayahna.org} +\ead[URL]{www.sayahna.org} + +\credit{Data curation, Writing - Original draft preparation} + +\address[2]{Sayahna Foundation, Jagathy, Trivandrum 695014, India} + +\author% +[1,3] +{Rishi T.} +\cormark[2] +\fnmark[1,3] +\ead{rishi@stmdocs.in} +\ead[URL]{www.stmdocs.in} + +\address[3]{STM Document Engineering Pvt Ltd., Mepukada, + Malayinkil, Trivandrum 695571, India} + +\cortext[cor1]{Corresponding author} +\cortext[cor2]{Principal corresponding author} +\fntext[fn1]{This is the first author footnote. but is common to third + author as well.} +\fntext[fn2]{Another author footnote, this is a very long footnote and + it should be a really long footnote. But this footnote is not yet + sufficiently long enough to make two lines of footnote text.} + +\nonumnote{This note has no numbers. In this work we demonstrate $a_b$ + the formation Y\_1 of a new type of polariton on the interface + between a cuprous oxide slab and a polystyrene micro-sphere placed + on the slab. + } + +\begin{abstract} +This template helps you to create a properly formatted \LaTeX\ manuscript. + +\noindent\texttt{\textbackslash begin{abstract}} \dots +\texttt{\textbackslash end{abstract}} and +\verb+\begin{keyword}+ \verb+...+ \verb+\end{keyword}+ +which +contain the abstract and keywords respectively. +Each keyword shall be separated by a \verb+\sep+ command. +\end{abstract} + +\begin{graphicalabstract} +\includegraphics{figs/grabs.pdf} +\end{graphicalabstract} + +\begin{highlights} +\item Research highlights item 1 +\item Research highlights item 2 +\item Research highlights item 3 +\end{highlights} + +\begin{keywords} +quadrupole exciton \sep polariton \sep \WGM \sep \BEC +\end{keywords} + + +\maketitle + + +\section{Introduction} + +The Elsevier cas-sc class is based on the +standard article class and supports almost all of the functionality of +that class. In addition, it features commands and options to format the +\begin{itemize} \item document style \item baselineskip \item front +matter \item keywords and MSC codes \item theorems, definitions and +proofs \item lables of enumerations \item citation style and labeling. +\end{itemize} + +This class depends on the following packages +for its proper functioning: + +\begin{enumerate} +\itemsep=0pt +\item {natbib.sty} for citation processing; +\item {geometry.sty} for margin settings; +\item {fleqn.clo} for left aligned equations; +\item {graphicx.sty} for graphics inclusion; +\item {hyperref.sty} optional packages if hyperlinking is + required in the document; +\end{enumerate} + +All the above packages are part of any +standard \LaTeX{} installation. +Therefore, the users need not be +bothered about downloading any extra packages. + +\section{Installation} + +The package is available at author resources page at Elsevier +(\url{http://www.elsevier.com/locate/latex}). +The class may be moved or copied to a place, usually, +\verb+$TEXMF/tex/latex/elsevier/+, %$%%%%%%%%%%%%%%%%%%%%%%%%%%%% +or a folder which will be read +by \LaTeX{} during document compilation. The \TeX{} file +database needs updation after moving/copying class file. Usually, +we use commands like \verb+mktexlsr+ or \verb+texhash+ depending +upon the distribution and operating system. + +\section{Front matter} + +The author names and affiliations could be formatted in two ways: +\begin{enumerate}[(1)] +\item Group the authors per affiliation. +\item Use footnotes to indicate the affiliations. +\end{enumerate} +See the front matter of this document for examples. +You are recommended to conform your choice to the journal you +are submitting to. + +\section{Bibliography styles} + +There are various bibliography styles available. You can select the +style of your choice in the preamble of this document. These styles are +Elsevier styles based on standard styles like Harvard and Vancouver. +Please use Bib\TeX\ to generate your bibliography and include DOIs +whenever available. + +Here are two sample references: +See \citet{Fortunato2010}. Also refer \citet{Fortunato2010,NewmanGirvan2004}. +More citations are here \citep{Fortunato2010,Vehlowetal2013}. + +\section{Floats} +{Figures} may be included using the command, \verb+\includegraphics+ in +combination with or without its several options to further control +graphic. \verb+\includegraphics+ is provided by {graphic[s,x].sty} +which is part of any standard \LaTeX{} distribution. +{graphicx.sty} is loaded by default. \LaTeX{} accepts figures in +the postscript format while pdf\LaTeX{} accepts {*.pdf}, +{*.mps} (metapost), {*.jpg} and {*.png} formats. +pdf\LaTeX{} does not accept graphic files in the postscript format. + +\begin{figure} + \centering + \includegraphics[scale=.75]{figs/Fig1.pdf} + \caption{The evanescent light - $1S$ quadrupole coupling + ($g_{1,l}$) scaled to the bulk exciton-photon coupling + ($g_{1,2}$). The size parameter $kr_{0}$ is denoted as $x$ and + the \PMS is placed directly on the cuprous oxide sample ($\delta + r=0$, See also Table \protect\ref{tbl1}).} + \label{FIG:1} +\end{figure} + + +The \verb+table+ environment is handy for marking up tabular +material. If users want to use {multirow.sty}, +{array.sty}, etc., to fine control/enhance the tables, they +are welcome to load any package of their choice and +{cas-sc.cls} will work in combination with all loaded +packages. + +\begin{table}[width=.9\linewidth,cols=4,pos=h] +\caption{This is a test caption. This is a test caption. This is a test +caption. This is a test caption.}\label{tbl1} +\begin{tabular*}{\tblwidth}{@{} LLLL@{} } +\toprule +Col 1 & Col 2 & Col 3 & Col4\\ +\midrule +12345 & 12345 & 123 & 12345 \\ +12345 & 12345 & 123 & 12345 \\ +12345 & 12345 & 123 & 12345 \\ +12345 & 12345 & 123 & 12345 \\ +12345 & 12345 & 123 & 12345 \\ +\bottomrule +\end{tabular*} +\end{table} + +\section[Theorem and ...]{Theorem and theorem like environments} + +{cas-sc.cls} provides a few shortcuts to format theorems and +theorem-like environments with ease. In all commands the options that +are used with the \verb+\newtheorem+ command will work exactly in the same +manner. {cas-sc.cls} provides three commands to format theorem or +theorem-like environments: + +\begin{verbatim} + \newtheorem{theorem}{Theorem} + \newtheorem{lemma}[theorem]{Lemma} + \newdefinition{rmk}{Remark} + \newproof{pf}{Proof} + \newproof{pot}{Proof of Theorem \ref{thm2}} +\end{verbatim} + + +The \verb+\newtheorem+ command formats a +theorem in \LaTeX's default style with italicized font, bold font +for theorem heading and theorem number at the right hand side of the +theorem heading. It also optionally accepts an argument which +will be printed as an extra heading in parentheses. + +\begin{verbatim} + \begin{theorem} + For system (8), consensus can be achieved with + $\|T_{\omega z}$ ... + \begin{eqnarray}\label{10} + .... + \end{eqnarray} + \end{theorem} +\end{verbatim} + +\newtheorem{theorem}{Theorem} + +\begin{theorem} +For system (8), consensus can be achieved with +$\|T_{\omega z}$ ... +\begin{eqnarray}\label{10} +.... +\end{eqnarray} +\end{theorem} + +The \verb+\newdefinition+ command is the same in +all respects as its \verb+\newtheorem+ counterpart except that +the font shape is roman instead of italic. Both +\verb+\newdefinition+ and \verb+\newtheorem+ commands +automatically define counters for the environments defined. + +The \verb+\newproof+ command defines proof environments with +upright font shape. No counters are defined. + + +\section[Enumerated ...]{Enumerated and Itemized Lists} +{cas-sc.cls} provides an extended list processing macros +which makes the usage a bit more user friendly than the default +\LaTeX{} list macros. With an optional argument to the +\verb+\begin{enumerate}+ command, you can change the list counter +type and its attributes. + +\begin{verbatim} + \begin{enumerate}[1.] + \item The enumerate environment starts with an optional + argument `1.', so that the item counter will be suffixed + by a period. + \item You can use `a)' for alphabetical counter and '(i)' for + roman counter. + \begin{enumerate}[a)] + \item Another level of list with alphabetical counter. + \item One more item before we start another. + \item One more item before we start another. + \item One more item before we start another. + \item One more item before we start another. +\end{verbatim} + +Further, the enhanced list environment allows one to prefix a +string like `step' to all the item numbers. + +%\pagebreak +\begin{verbatim} + \begin{enumerate}[Step 1.] + \item This is the first step of the example list. + \item Obviously this is the second step. + \item The final step to wind up this example. + \end{enumerate} +\end{verbatim} + +\section{Cross-references} +In electronic publications, articles may be internally +hyperlinked. Hyperlinks are generated from proper +cross-references in the article. For example, the words +\textcolor{black!80}{Fig.~1} will never be more than simple text, +whereas the proper cross-reference \verb+\ref{tiger}+ may be +turned into a hyperlink to the figure itself: +\textcolor{blue}{Fig.~1}. In the same way, +the words \textcolor{blue}{Ref.~[1]} will fail to turn into a +hyperlink; the proper cross-reference is \verb+\cite{Knuth96}+. +Cross-referencing is possible in \LaTeX{} for sections, +subsections, formulae, figures, tables, and literature +references. + +\section{Bibliography} + +Two bibliographic style files (\verb+*.bst+) are provided --- +{model1-num-names.bst} and {model2-names.bst} --- the first one can be +used for the numbered scheme. This can also be used for the numbered +with new options of {natbib.sty}. The second one is for the author year +scheme. When you use model2-names.bst, the citation commands will be +like \verb+\citep+, \verb+\citet+, \verb+\citealt+ etc. However when +you use model1-num-names.bst, you may use only \verb+\cite+ command. + +\verb+thebibliography+ environment. Each reference is a +\verb+\bibitem+ and each \verb+\bibitem+ is identified by a label, +by which it can be cited in the text: + +\noindent In connection with cross-referencing and +possible future hyperlinking it is not a good idea to collect +more that one literature item in one \verb+\bibitem+. The +so-called Harvard or author-year style of referencing is enabled +by the \LaTeX{} package {natbib}. With this package the +literature can be cited as follows: + + +\begin{enumerate}[\textbullet] +\item Parenthetical: \verb+\citep{WB96}+ produces (Wettig \& Brown, 1996). +\item Textual: \verb+\citet{ESG96}+ produces Elson et al. (1996). +\item An affix and part of a reference: +\verb+\citep[e.g.][Ch. 2]{Gea97}+ produces (e.g. Governato et +al., 1997, Ch. 2). +\end{enumerate} + +In the numbered scheme of citation, \verb+\cite{<label>}+ is used, +since \verb+\citep+ or \verb+\citet+ has no relevance in the numbered +scheme. {natbib} package is loaded by {cas-sc} with +\verb+numbers+ as default option. You can change this to author-year +or harvard scheme by adding option \verb+authoryear+ in the class +loading command. If you want to use more options of the {natbib} +package, you can do so with the \verb+\biboptions+ command. For +details of various options of the {natbib} package, please take a +look at the {natbib} documentation, which is part of any standard +\LaTeX{} installation. + +\appendix +\section{My Appendix} +Appendix sections are coded under \verb+\appendix+. + +\verb+\printcredits+ command is used after appendix sections to list +author credit taxonomy contribution roles tagged using \verb+\credit+ +in frontmatter. + +\printcredits + +%% Loading bibliography style file +%\bibliographystyle{model1-num-names} +\bibliographystyle{model2-names} + +% Loading bibliography database +\bibliography{refs} + + +%\vskip3pt + +\bio{} +Author biography without author photo. +Author biography. Author biography. Author biography. +Author biography. Author biography. Author biography. +Author biography. Author biography. Author biography. +Author biography. Author biography. Author biography. +Author biography. Author biography. Author biography. +Author biography. Author biography. Author biography. +Author biography. Author biography. Author biography. +Author biography. Author biography. Author biography. +Author biography. Author biography. Author biography. +\endbio + +\bio{figs/pic1} +Author biography with author photo. +Author biography. Author biography. Author biography. +Author biography. Author biography. Author biography. +Author biography. Author biography. Author biography. +Author biography. Author biography. Author biography. +Author biography. Author biography. Author biography. +Author biography. Author biography. Author biography. +Author biography. Author biography. Author biography. +Author biography. Author biography. Author biography. +Author biography. Author biography. Author biography. +\endbio + +\bio{figs/pic1} +Author biography with author photo. +Author biography. Author biography. Author biography. +Author biography. Author biography. Author biography. +Author biography. Author biography. Author biography. +Author biography. Author biography. Author biography. +\endbio + + +\end{document} + diff --git a/Master/texmf-dist/doc/latex/els-cas-template/doc/dc-sample.pdf b/Master/texmf-dist/doc/latex/els-cas-template/doc/dc-sample.pdf Binary files differnew file mode 100644 index 00000000000..3e0999a9e3d --- /dev/null +++ b/Master/texmf-dist/doc/latex/els-cas-template/doc/dc-sample.pdf diff --git a/Master/texmf-dist/doc/latex/els-cas-template/doc/elsdoc-cas.pdf b/Master/texmf-dist/doc/latex/els-cas-template/doc/elsdoc-cas.pdf Binary files differnew file mode 100644 index 00000000000..c21899a5419 --- /dev/null +++ b/Master/texmf-dist/doc/latex/els-cas-template/doc/elsdoc-cas.pdf diff --git a/Master/texmf-dist/doc/latex/els-cas-template/doc/elsdoc-cas.tex b/Master/texmf-dist/doc/latex/els-cas-template/doc/elsdoc-cas.tex new file mode 100644 index 00000000000..3aeb8470ac9 --- /dev/null +++ b/Master/texmf-dist/doc/latex/els-cas-template/doc/elsdoc-cas.tex @@ -0,0 +1,599 @@ +%% +%% Copyright 2019 Elsevier Ltd +%% +%% This file is part of the 'CAS Bundle'. +%% --------------------------------------------- +%% +%% It may be distributed under the conditions of the LaTeX Project Public +%% License, either version 1.2 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.2 or later is part of all distributions of LaTeX +%% version 1999/12/01 or later. +%% +%% The list of all files belonging to the 'CAS Bundle' is +%% given in the file `manifest.txt'. +%% +%% $Id: elsdoc-cas.tex 4 2019-02-11 10:03:00Z rishi $ +%% +\documentclass[a4paper,12pt]{article} + +\usepackage[xcolor,qtwo]{rvdtx} +\usepackage{multicol} +\usepackage{color} +\usepackage{xspace} +\usepackage{pdfwidgets} +\usepackage{enumerate} + +\def\ttdefault{cmtt} + +\headsep4pc + +\makeatletter +\def\bs{\expandafter\@gobble\string\\} +\def\lb{\expandafter\@gobble\string\{} +\def\rb{\expandafter\@gobble\string\}} +\def\@pdfauthor{C.V.Radhakrishnan} +\def\@pdftitle{CAS templates: A documentation} +\def\@pdfsubject{Document formatting with CAS template} +\def\@pdfkeywords{LaTeX, Elsevier Ltd, document class} +\def\file#1{\textsf{#1}\xspace} + +%\def\LastPage{19} + +\DeclareRobustCommand{\LaTeX}{L\kern-.26em% + {\sbox\z@ T% + \vbox to\ht\z@{\hbox{\check@mathfonts + \fontsize\sf@size\z@ + \math@fontsfalse\selectfont + A\,}% + \vss}% + }% + \kern-.15em% + \TeX} +\makeatother + +\def\figurename{Clip} + +\setcounter{tocdepth}{1} + + +\AtBeginDocument{ + \setcounter{topnumber}{2} + \setcounter{bottomnumber}{2} + \setcounter{totalnumber}{4} + \renewcommand{\topfraction}{0.85} + \renewcommand{\bottomfraction}{0.85} + \renewcommand{\textfraction}{0.15} + \renewcommand{\floatpagefraction}{0.7} +} + +\begin{document} + +\def\testa{This is a specimen document. } +\def\testc{\testa\testa\testa\testa} +\def\testb{\testc\testc\testc\testc\testc} +\long\def\test{\testb\par\testb\par\testb\par} + +\pinclude{\copy\contbox\printSq{\LastPage}} + +\title{Documentation for Elsevier's Complex Article Service (CAS) +\LaTeX\ template} + +\author{Elsevier Ltd} +\contact{elsarticle@stmdocs.in} + +\version{1.0} +\date{\today} +\maketitle + +\section{Introduction} +Two classfiles namely \file{cas-sc.cls} and \file{cas-dc.cls} were +written for typesetting articles submitted in journals of Elsevier's +Complex Article Service (CAS) workflow. + +\subsection{Usage} +\begin{enumerate} +\item \file{cas-sc.cls} for single column journals. + +\begin{vquote} + \documentclass[<options>]{cas-sc} +\end{vquote} +\item \file{cas-dc.cls} for single column journals. + +\begin{vquote} + \documentclass[<options>]{cas-dc} +\end{vquote} +\end{enumerate} +and have an option longmktitle to handle long front matter. + +\section{Front matter} + +\begin{vquote} +\title [mode = title]{This is a specimen $a_b$ title} +\tnotemark[1,2] + +\tnotetext[1]{This document is the results of the research + project funded by the National Science Foundation.} + +\tnotetext[2]{The second title footnote which is a longer text + matter to fill through the whole text width and overflow into + another line in the footnotes area of the first page.} + +\author[1,3]{CV Radhakrishnan}[type=editor, + auid=000,bioid=1, + prefix=Sir, + role=Researcher, + orcid=0000-0001-7511-2910] +\cormark[1] +\fnmark[1] +\ead{cvr_1@tug.org.in} +\ead[url]{www.cvr.cc, cvr@sayahna.org} +\end{vquote} + +\begin{vquote} + +\credit{Conceptualization of this study, Methodology, + Software} + +\address[1]{Elsevier B.V., Radarweg 29, 1043 NX Amsterdam, + The Netherlands} + +\author[2,4]{Han Theh Thanh}[style=chinese] + +\author[2,3]{CV Rajagopal}[% + role=Co-ordinator, + suffix=Jr, + ] +\fnmark[2] +\ead{cvr3@sayahna.org} +\ead[URL]{www.sayahna.org} + +\credit{Data curation, Writing - Original draft preparation} + +\address[2]{Sayahna Foundation, Jagathy, Trivandrum 695014, + India} + +\author[1,3]{Rishi T.} +\cormark[2] +\fnmark[1,3] +\ead{rishi@stmdocs.in} +\ead[URL]{www.stmdocs.in} + +\address[3]{STM Document Engineering Pvt Ltd., Mepukada, + Malayinkil, Trivandrum 695571, India} + +\cortext[cor1]{Corresponding author} +\cortext[cor2]{Principal corresponding author} +\fntext[fn1]{This is the first author footnote. but is common + to third author as well.} +\fntext[fn2]{Another author footnote, this is a very long + footnote and it should be a really long footnote. But this + footnote is not yet sufficiently long enough to make two lines + of footnote text.} +\end{vquote} + +\begin{vquote} +\nonumnote{This note has no numbers. In this work we + demonstrate $a_b$ the formation Y\_1 of a new type of + polariton on the interface between a cuprous oxide slab + and a polystyrene micro-sphere placed on the slab. + } + +\begin{abstract}[S U M M A R Y] +This template helps you to create a properly formatted + \LaTeX\ manuscript. + +\noindent\texttt{\textbackslash begin{abstract}} \dots +\texttt{\textbackslash end{abstract}} and +\verb+\begin{keyword}+ \verb+...+ \verb+\end{keyword}+ +which contain the abstract and keywords respectively. +Each keyword shall be separated by a \verb+\sep+ command. +\end{abstract} + +\begin{keywords} +quadrupole exciton \sep polariton \sep \WGM \sep \BEC +\end{keywords} + +\maketitle +\end{vquote} + +\begin{figure} +\includegraphics[width=\textwidth]{sc-sample.pdf} +\caption{Single column output (classfile: cas-sc.cls).} +\end{figure} + +\begin{figure} +\includegraphics[width=\textwidth]{dc-sample.pdf} +\caption{Double column output (classfile: cas-dc.cls).} +\end{figure} + +\subsection{Title} + +\verb+\title+ command have the below options: +\begin{enumerate} +\item \verb+title:+ Document title +\item \verb+alt:+ Alternate title +\item \verb+sub:+ Sub title +\item \verb+trans:+ Translated title +\item \verb+transsub:+ Translated sub title +\end{enumerate} + +\begin{vquote} + \title[mode=title]{This is a title} + \title[mode=alt]{This is a alternate title} + \title[mode=sub]{This is a sub title} + \title[mode=trans]{This is a translated title} + \title[mode=transsub]{This is a translated sub title} +\end{vquote} + + +\subsection{Author} +\verb+\author+ command have the below options: + +\begin{enumerate} +\item \verb+auid:+ Author id +\item \verb+bioid:+ Biography id +\item \verb+alt:+ Alternate author +\item \verb+style:+ Style of author name chinese +\item \verb+prefix:+ Prefix Sir +\item \verb+suffix:+ Suffix +\item \verb+degree:+ Degree +\item \verb+role:+ Role +\item \verb+orcid:+ ORCID +\item \verb+collab:+ Collaboration +\item \verb+anon:+ Anonymous author +\item \verb+deceased:+ Deceased author +\item \verb+twitter:+ Twitter account +\item \verb+facebook:+ Facebook account +\item \verb+linkedin:+ LinkedIn account +\item \verb+plus:+ Google plus account +\item \verb+gplus:+ Google plus account +\end{enumerate} + +\begin{vquote} +\author[1,3]{Author Name}[type=editor, + auid=000,bioid=1, + prefix=Sir, + role=Researcher, + orcid=0000-0001-7511-2910, + facebook=<facebook id>, + twitter=<twitter id>, + linkedin=<linkedin id>, + gplus=<gplus id>] +\end{vquote} + +\subsection{Various Marks in the Front Matter} + +The front matter becomes complicated due to various kinds +of notes and marks to the title and author names. Marks in +the title will be denoted by a star ($\star$) mark; +footnotes are denoted by super scripted Arabic numerals, +corresponding author by of an Conformal asterisk (*) mark. + +\subsubsection{Title marks} + +Title mark can be entered by the command, \verb+\tnotemark[<num>]+ +and the corresponding text can be entered with the command +\verb+\tnotetext[<num>]+ \verb+{<text>}+. An example will be: + +\begin{vquote} +\title[mode=title]{Leveraging social media news to predict + stock index movement using RNN-boost} + +\tnotemark[1,2] + +\tnotetext[1]{This document is the results of the research + project funded by the National Science Foundation.} + +\tnotetext[2]{The second title footnote which is a longer + text matter to fill through the whole text width and + overflow into another line in the footnotes area of + the first page.} +\end{vquote} + +\verb+\tnotetext+ and \verb+\tnotemark+ can be anywhere in +the front matter, but shall be before \verb+\maketitle+ command. + +\subsubsection{Author marks} + +Author names can have many kinds of marks and notes: + +\begin{vquote} + footnote mark : \fnmark[<num>] + footnote text : \fntext[<num>]{<text>} + affiliation mark : \author[<num>] + email : \ead{<emailid>} + url : \ead[url]{<url>} + corresponding author mark : \cormark[<num>] + corresponding author text : \cortext[<num>]{<text>} +\end{vquote} + +\subsubsection{Other marks} + +At times, authors want footnotes which leave no marks in +the author names. The note text shall be listed as part of +the front matter notes. Class files provides +\verb+\nonumnote+ for this purpose. The usage + +\begin{vquote} +\nonumnote{<text>} +\end{vquote} + +\noindent and should be entered anywhere before the \verb+\maketitle+ +command for this to take effect. + +\subsection{Abstract and Keywords} + +Abstract shall be entered in an environment that starts +with \verb+\begin{abstract}+ and ends with +\verb+\end{abstract}+. Longer abstracts spanning more than +one page is also possible in Class file even in double +column mode. We need to invoke longmktitle option in the +class loading line for this to happen smoothly. + +The key words are enclosed in a \verb+{keyword}+ +environment. + +\begin{vquote} +\begin{abstract} + This is a abstract. \lipsum[3] +\end{abstract} + +\begin{keywords} + First keyword \sep Second keyword \sep Third + keyword \sep Fourth keyword +\end{keywords} +\end{vquote} + +\section{Main Matter} +\subsection{Tables} +\subsubsection{Normal tables} + +\begin{vquote} +\begin{table} + \caption{This is a test caption.} + \begin{tabular*}{\tblwidth}{@{} LLLL@{} } + \toprule + Col 1 & Col 2\\ + \midrule + 12345 & 12345\\ + 12345 & 12345\\ + 12345 & 12345\\ + \bottomrule + \end{tabular*} +\end{table} +\end{vquote} + +\subsubsection{Span tables} + +\begin{vquote} +\begin{table*}[width=.9\textwidth,cols=4,pos=h] + \caption{This is a test caption.} + \begin{tabular*}{\tblwidth}{@{} LLLLLL@{} } + \toprule + Col 1 & Col 2 & Col 3 & Col4 & Col5 & Col6 & Col7\\ + \midrule + 12345 & 12345 & 123 & 12345 & 123 & 12345 & 123 \\ + 12345 & 12345 & 123 & 12345 & 123 & 12345 & 123 \\ + 12345 & 12345 & 123 & 12345 & 123 & 12345 & 123 \\ + \bottomrule + \end{tabular*} +\end{table*} +\end{vquote} + +\subsection{Figures} +\subsubsection{Normal figures} +\begin{vquote} +\begin{figure} + \centering + \includegraphics[scale=.75]{Fig1.pdf} + \caption{The evanescent light - $1S$ quadrupole coupling + ($g_{1,l}$) scaled to the bulk exciton-photon coupling + ($g_{1,2}$). The size parameter $kr_{0}$ is denoted as $x$ and + the \PMS is placed directly on the cuprous oxide sample ($\delta + r=0$, See also Fig. \protect\ref{FIG:2}).} + \label{FIG:1} +\end{figure} +\end{vquote} + +\subsubsection{Span figures} + +\begin{vquote} +\begin{figure*} + \centering + \includegraphics[width=\textwidth,height=2in]{Fig2.pdf} + \caption{Schematic of formation of the evanescent polariton on + linear chain of \PMS. The actual dispersion is determined by + the ratio of two coupling parameters such as exciton-\WGM + coupling and \WGM-\WGM coupling between the microspheres.} + \label{FIG:2} +\end{figure*}\end{vquote} + +\subsection{Theorem and theorem like environments} + +CAS class file provides a few hooks to format theorems and +theorem like environments with ease. All commands the +options that are used with \verb+\newtheorem+ command will work +exactly in the same manner. Class file provides three +commands to format theorem or theorem like environments: + +\begin{enumerate} +\item \verb+\newtheorem+ command formats a theorem in +\LaTeX's default style with italicized font for theorem +statement, bold weight for theorem heading and theorem +number typeset at the right of theorem heading. It also +optionally accepts an argument which will be printed as an +extra heading in parentheses. Here is an example coding and +output: + +\begin{vquote} +\newtheorem{theorem}{Theorem} +\begin{theorem}\label{thm} + The \WGM evanescent field penetration depth into the + cuprous oxide adjacent crystal is much larger than the + \QE radius: + \begin{equation*} + \lambda_{1S}/2 \pi \left({\epsilon_{Cu2O}-1} + \right)^{1/2} = 414 \mbox{ \AA} \gg a_B = 4.6 + \mbox{ \AA} + \end{equation*} +\end{theorem} +\end{vquote} + +\item \verb+\newdefinition+ command does exactly the same +thing as with except that the body font is up-shape instead +of italic. See the example below: + +\begin{vquote} +\newdefinition{definition}{Definition} +\begin{definition} + The bulk and evanescent polaritons in cuprous oxide + are formed through the quadrupole part of the light-matter + interaction: + \begin{equation*} + H_{int} = \frac{i e }{m \omega_{1S}} {\bf E}_{i,s} + \cdot {\bf p} + \end{equation*} +\end{definition} +\end{vquote} + +\item \verb+\newproof+ command helps to define proof and +custom proof environments without counters as provided in +the example code. Given below is an example of proof of +theorem kind. + +\begin{vquote} +\newproof{pot}{Proof of Theorem \ref{thm}} +\begin{pot} + The photon part of the polariton trapped inside the \PMS + moves as it would move in a micro-cavity of the effective + modal volume $V \ll 4 \pi r_{0}^{3} /3$. Consequently, it + can escape through the evanescent field. This evanescent + field essentially has a quantum origin and is due to + tunneling through the potential caused by dielectric + mismatch on the \PMS surface. Therefore, we define the + \emph{evanescent} polariton (\EP) as an evanescent light - + \QE coherent superposition. +\end{pot} +\end{vquote} + +\end{enumerate} + +\subsection{Enumerated and Itemized Lists} + +CAS class files provides an extended list processing macros +which makes the usage a bit more user friendly than the +default LaTeX list macros. With an optional argument to the +\verb+\begin{enumerate}+ command, you can change the list +counter type and its attributes. You can see the coding and +typeset copy. + +\begin{vquote} +\begin{enumerate}[1.] + \item The enumerate environment starts with an optional + argument `1.' so that the item counter will be suffixed + by a period as in the optional argument. + \item If you provide a closing parenthesis to the number in the + optional argument, the output will have closing + parenthesis for all the item counters. + \item You can use `(a)' for alphabetical counter and `(i)' for + roman counter. + \begin{enumerate}[a)] + \item Another level of list with alphabetical counter. + \item One more item before we start another. + \begin{enumerate}[(i)] + \item This item has roman numeral counter. +\end{vquote} + +\begin{vquote} + \item Another one before we close the third level. + \end{enumerate} + \item Third item in second level. + \end{enumerate} + \item All list items conclude with this step. +\end{enumerate} + +\section{Biography} + +\verb+\bio+ command have the below options: +\begin{enumerate} + \item \verb+width:+ Width of the author photo (default is 1in). + \item \verb+pos:+ Position of author photo. +\end{enumerate} + +\begin{vquote} +\bio[width=10mm,pos=l]{tuglogo.jpg} + \textbf{Another Biography:} + Recent experimental \cite{HARA:2005} and theoretical + \cite{DEYCH:2006} studies have shown that the \WGM can travel + along the chain as "heavy photons". Therefore the \WGM + acquires the spatial dispersion, and the evanescent + quadrupole polariton has the form (See Fig.\ref{FIG:3}): +\endbio +\end{vquote} + +\section[CRediT...]{CRediT authorship contribution statement} + +Give the authorship contribution after each author as + +\begin{vquote} + \credit{Conceptualization of this study, Methodology, + Software} +\end{vquote} + +To print the details use \verb+\printcredits+ + +\begin{vquote} + \author[1,3]{V. {{\=A}}nand Rawat}[auid=000, + bioid=1, + prefix=Sir, + role=Researcher, + orcid=0000-0001-7511-2910] +\end{vquote} + +\begin{vquote} + \cormark[1] + \fnmark[1] + \ead{cvr_1@tug.org.in} + \ead[url]{www.cvr.cc, www.tug.org.in} + + \credit{Conceptualization of this study, Methodology, + Software} + + \address[1]{Indian \TeX{} Users Group, Trivandrum 695014, + India} + + \author[2,4]{Han Theh Thanh}[style=chinese] + + \author[2,3]{T. Rishi Nair}[role=Co-ordinator, + suffix=Jr] + \fnmark[2] + \ead{rishi@sayahna.org} + \ead[URL]{www.sayahna.org} + + \credit{Data curation, Writing - Original draft preparation} + + . . . + . . . + . . . + \printcredits +\end{vquote} + +\section{Bibliography} + +For CAS categories, two reference models are recommended. +They are \file{model1-num-names.bst} and \file{model2-names.bst}. +Former will format the reference list and their citations according to +numbered scheme whereas the latter will format according name-date or +author-year style. Authors are requested to choose any one of these +according to the journal style. You may download these from + +The above bsts are available in the following location for you to +download: + +\url{https://support.stmdocs.in/wiki/index.php?title=Model-wise_bibliographic_style_files} +\hfill $\Box$ + +\end{document} + diff --git a/Master/texmf-dist/doc/latex/els-cas-template/doc/makefile b/Master/texmf-dist/doc/latex/els-cas-template/doc/makefile new file mode 100644 index 00000000000..6a34191b710 --- /dev/null +++ b/Master/texmf-dist/doc/latex/els-cas-template/doc/makefile @@ -0,0 +1,40 @@ +# $Id: makefile 5 2019-02-11 10:03:21Z rishi $ + +file=elsdoc-cas + + +all: pdf out + make pdf + make pdf + +out: + if [ -f $(file).out ] ; then cp $(file).out tmp.out; fi ; + sed 's/BOOKMARK/dtxmark/g;' tmp.out > x.out; mv x.out tmp.out ; + +pdf: + pdflatex $(file).tex + +index: + makeindex -s gind.ist -o $(file).ind $(file).idx + +changes: + makeindex -s gglo.ist -o $(file).gls $(file).glo + +xview: + xpdf -z 200 $(file).pdf &>/dev/null + +view: + open -a 'Adobe Reader.app' $(file).pdf + +ins: + latex $(file).ins + +diff: + diff $(file).sty ../$(file).sty |less + +copy: + cp $(file).sty ../ + + + + diff --git a/Master/texmf-dist/doc/latex/els-cas-template/doc/pdfwidgets.sty b/Master/texmf-dist/doc/latex/els-cas-template/doc/pdfwidgets.sty new file mode 100644 index 00000000000..68d07a8b45c --- /dev/null +++ b/Master/texmf-dist/doc/latex/els-cas-template/doc/pdfwidgets.sty @@ -0,0 +1,384 @@ +%% +%% pdfwidgets.sty +%% +%% $Id: pdfwidgets.sty,v 1.2 2007-10-22 09:45:17 cvr Exp $ +%% +%% (c) C. V. Radhakrishnan <cvr@river-valley.org> +%% +%% This package may be distributed under the terms of the LaTeX Project +%% Public License, as described in lppl.txt in the base LaTeX distribution. +%% Either version 1.0 or, at your option, any later version. +%% +%\RequirePackage[oldstyle]{minion} +%\RequirePackage[scaled=.8]{prima} +%\RequirePackage[scaled=.9]{lfr} +\usepackage[dvipsnames,svgnames]{xcolor} +\RequirePackage{graphicx} +\RequirePackage{tikz} +\usetikzlibrary{backgrounds} + +%\def\thesection{\ifnum\c@section<10 +% \protect\phantom{0}\fi\arabic{section}} + +\newdimen\lmrgn +\def\rulecolor{orange} +\def\rulewidth{1pt} +\pgfdeclareshape{filledbox}{% + \inheritsavedanchors[from=rectangle] % this is nearly a rectangle + \inheritanchorborder[from=rectangle] + \inheritanchor[from=rectangle]{center} + \inheritanchor[from=rectangle]{north} + \inheritanchor[from=rectangle]{south} + \inheritanchor[from=rectangle]{west} + \inheritanchor[from=rectangle]{east} + % ... and possibly more + \backgroundpath{% this is new + % store lower right in xa/ya and upper right in xb/yb + \southwest \pgf@xa=\pgf@x \pgf@ya=\pgf@y + \northeast \pgf@xb=\pgf@x \pgf@yb=\pgf@y + % compute corner of ``flipped page'' + \pgf@xc=\pgf@xb \advance\pgf@xc by-5pt % this should be a parameter + \pgf@yc=\pgf@yb \advance\pgf@yc by-5pt + % construct main path + \pgfsetlinewidth{\rulewidth} + \pgfsetstrokecolor{\rulecolor} + \pgfpathmoveto{\pgfpoint{\pgf@xa}{\pgf@ya}} + \pgfsetcornersarced{\pgfpoint{9pt}{9pt}} + \pgfpathlineto{\pgfpoint{\pgf@xa}{\pgf@yb}} +% \pgfsetcornersarced{\pgforigin} + \pgfsetcornersarced{\pgfpoint{9pt}{9pt}} + \pgfpathlineto{\pgfpoint{\pgf@xb}{\pgf@yb}} + \pgfsetcornersarced{\pgfpoint{9pt}{9pt}} + \pgfpathlineto{\pgfpoint{\pgf@xb}{\pgf@ya}} + \pgfsetcornersarced{\pgforigin} + \pgfpathclose ; +% \draw(\pgf@xa,\pgf@ya) -- (\pgf@xa,\pgf@yb) ; + }% +} +\pgfdeclareshape{roundedbox}{% + \inheritsavedanchors[from=rectangle] % this is nearly a rectangle + \inheritanchorborder[from=rectangle] + \inheritanchor[from=rectangle]{center} + \inheritanchor[from=rectangle]{north} + \inheritanchor[from=rectangle]{south} + \inheritanchor[from=rectangle]{west} + \inheritanchor[from=rectangle]{east} + % ... and possibly more + \backgroundpath{% this is new + % store lower right in xa/ya and upper right in xb/yb + \southwest \pgf@xa=\pgf@x \pgf@ya=\pgf@y + \northeast \pgf@xb=\pgf@x \pgf@yb=\pgf@y + % compute corner of ``flipped page'' + \pgf@xc=\pgf@xb \advance\pgf@xc by-5pt % this should be a parameter + \pgf@yc=\pgf@yb \advance\pgf@yc by-5pt + % construct main path + \pgfsetlinewidth{\rulewidth} + \pgfsetstrokecolor{\rulecolor} + \pgfpathmoveto{\pgfpoint{\pgf@xa}{\pgf@ya}} + \pgfsetcornersarced{\pgfpoint{4pt}{4pt}} + \pgfpathlineto{\pgfpoint{\pgf@xa}{\pgf@yb}} +% \pgfsetcornersarced{\pgforigin} + \pgfsetcornersarced{\pgfpoint{4pt}{4pt}} + \pgfpathlineto{\pgfpoint{\pgf@xb}{\pgf@yb}} + \pgfsetcornersarced{\pgfpoint{4pt}{4pt}} + \pgfpathlineto{\pgfpoint{\pgf@xb}{\pgf@ya}} +% \pgfsetcornersarced{\pgforigin} + \pgfsetcornersarced{\pgfpoint{4pt}{4pt}} + \pgfpathclose ; +% \draw(\pgf@xa,\pgf@ya) -- (\pgf@xa,\pgf@yb) ; + }% +} + + + + +\pgfdeclareshape{buttonbox}{% + \inheritsavedanchors[from=rectangle] % this is nearly a rectangle + \inheritanchorborder[from=rectangle] + \inheritanchor[from=rectangle]{center} + \inheritanchor[from=rectangle]{north} + \inheritanchor[from=rectangle]{south} + \inheritanchor[from=rectangle]{west} + \inheritanchor[from=rectangle]{east} + % ... and possibly more + \backgroundpath{% this is new + % store lower right in xa/ya and upper right in xb/yb + \southwest \pgf@xa=\pgf@x \pgf@ya=\pgf@y + \northeast \pgf@xb=\pgf@x \pgf@yb=\pgf@y + % compute corner of ``flipped page'' + \pgf@xc=\pgf@xb \advance\pgf@xc by-5pt % this should be a parameter + \pgf@yc=\pgf@yb \advance\pgf@yc by-5pt + % construct main path + \pgfsetlinewidth{1pt} + \pgfsetstrokecolor{blue!10} + \pgfpathmoveto{\pgfpoint{\pgf@xa}{\pgf@ya}} + \pgfsetcornersarced{\pgfpoint{4pt}{4pt}} + \pgfpathlineto{\pgfpoint{\pgf@xa}{\pgf@yb}} +% \pgfsetcornersarced{\pgforigin} + \pgfsetcornersarced{\pgfpoint{4pt}{4pt}} + \pgfpathlineto{\pgfpoint{\pgf@xb}{\pgf@yb}} + \pgfsetcornersarced{\pgforigin} +% \pgfsetcornersarced{\pgfpoint{9pt}{9pt}} + \pgfpathlineto{\pgfpoint{\pgf@xb}{\pgf@ya}} + \pgfsetcornersarced{\pgforigin} + \pgfpathclose ; +% \draw(\pgf@xa,\pgf@ya) -- (\pgf@xa,\pgf@yb) ; + }% +} +\pgfdeclareshape{quotedbox}{% + \inheritsavedanchors[from=rectangle] % this is nearly a rectangle + \inheritanchorborder[from=rectangle] + \inheritanchor[from=rectangle]{center} + \inheritanchor[from=rectangle]{north} + \inheritanchor[from=rectangle]{south} + \inheritanchor[from=rectangle]{west} + \inheritanchor[from=rectangle]{east} + % ... and possibly more + \backgroundpath{% this is new + % store lower right in xa/ya and upper right in xb/yb + \southwest \pgf@xa=\pgf@x \pgf@ya=\pgf@y + \northeast \pgf@xb=\pgf@x \pgf@yb=\pgf@y + % compute corner of ``flipped page'' + \pgf@xc=\pgf@xb \advance\pgf@xc by-5pt % this should be a parameter + \pgf@yc=\pgf@yb \advance\pgf@yc by-5pt + % construct main path + \pgfsetlinewidth{\rulewidth} + \pgfsetstrokecolor{\rulecolor} + \pgfpathmoveto{\pgfpoint{\pgf@xa}{\pgf@ya}} + \pgfsetcornersarced{\pgfpoint{9pt}{9pt}} + \pgfpathlineto{\pgfpoint{\pgf@xa}{\pgf@yb}} + \pgfsetcornersarced{\pgforigin} +% \pgfsetcornersarced{\pgfpoint{4pt}{4pt}} + \pgfpathlineto{\pgfpoint{\pgf@xb}{\pgf@yb}} + \pgfsetcornersarced{\pgforigin} +% \pgfsetcornersarced{\pgfpoint{9pt}{9pt}} + \pgfpathlineto{\pgfpoint{\pgf@xb}{\pgf@ya}} + \pgfsetcornersarced{\pgforigin} + \pgfpathclose ; +% \draw(\pgf@xa,\pgf@ya) -- (\pgf@xa,\pgf@yb) ; + }% +} + +\newcounter{clip} +\newdimen\mywidth +\mywidth=\linewidth + +\def\src#1{\gdef\@src{#1}}\let\@src\@empty +\def\includeclip{\@ifnextchar[{\@includeclip}{\@includeclip[]}} +\def\@includeclip[#1]#2#3#4{\par +% \vskip.75\baselineskip plus 3pt minus 1pt + \computeLinewidth{\mywidth}% + \begingroup\color{white}% + \noindent% + \begin{tikzpicture} + %\node[fill=black!10,draw,shape=filledbox, + \node[fill=black!10,% + draw, + shade,% + top color=blue!10, + bottom color=cyan!5, + shape=filledbox, + inner sep=\Sep, + text width=\Linewidth] (x) + {\parbox{\Linewidth} + {\ifx\@src\@empty\else\refstepcounter{clip}\label{clip\theclip}% + {\par\vskip6pt\color{orange}\sffamily\small + ~Clip \theclip:\space\@src.}% + \par\vskip3pt\fi\normalcolor + \includegraphics[width=\Linewidth,page={#2},% + viewport={#3},clip=true,#1]{#4}} + \hspace*{-10pt}}; + \end{tikzpicture} + \endgroup +% \par\vskip.5\baselineskip +% plus 3pt minus 1pt + } +%% +%% include clippings from a pdf document: +%% #1 => Optional argument for \includegraphics +%% #2 => page number +%% #3 => co-ordinates +%% #4 => file name + +\newenvironment{quoted}{%\bigskip + \computeLinewidth{.95\linewidth}% + \global\setbox0=\hbox\bgroup + \begin{minipage}{.95\linewidth}\color{brown}% + \footnotesize\ttfamily\obeyspaces\obeylines} + {\end{minipage}\egroup + \vskip12pt plus 3pt minus 3pt\noindent\begin{tikzpicture} + \node[fill=blue!10,draw,shade,top color=orange!10, + bottom color=white,shape=filledbox, + inner sep=8pt,text width=\Linewidth] (x) {\box0} ; + \end{tikzpicture}% + \vskip12pt plus 3pt minus 3pt} + +\newdimen\Linewidth +\newdimen\Sep +\def\computeLinewidth#1{\global\setlength\Linewidth{#1}% + \global\addtolength{\Linewidth}{-2\Sep}} + +\newdimen\npskip +\npskip=0mm + +\long\def\NavigationPanel{% + \global\setbox0=\hbox\bgroup + \begin{minipage}[t][.8125\panelheight][t]{.9\panelwidth}\color{brown}% + %\centering + \ifx\@pinclude\empty\relax\par\vfill\else + \@pinclude\fi + %River Valley Technologies + \end{minipage}\egroup + \Sep=.5cm + \@tempdima=\panelwidth + \advance\@tempdima-1cm + \computeLinewidth{\@tempdima}% + \def\rulewidth{.2pt}% + \noindent\begin{tikzpicture} + \node[fill=blue!10,draw,shade,bottom color=brown!30, + top color=white,shape=filledbox, + inner sep=\the\Sep,text width=\Linewidth] (x) + {\hspace*{\npskip}\box0} ; + \end{tikzpicture}% + \vspace*{.0125\panelheight} +} + +\long\def\pinclude#1{\gdef\@pinclude{#1}} +\let\@pinclude\empty + +\def\Strut{\vrule depth 2pt height 10pt width 0pt} +\def\pdfButton#1#2{\begin{tikzpicture} + \node[fill=blue!10,draw,shade,top color=blue!50, + bottom color=white,shape=buttonbox, + inner sep=2pt,text width=#1](x) + {\parbox{#1}{\centering\Strut#2}}; \end{tikzpicture}} + +\def\vpanel{\def\@linkcolor{blue}% + \def\@urlcolor{blue}% + \def\@menucolor{blue}% + \begin{minipage}[t][\vpanelheight][c]{\paperwidth}% + \normalsfcodes% + \hspace*{.25cm} + \begin{minipage}[c][\vpanelheight][c]{17cm} + \parbox[c][27mm][b]{15mm}% +% {\includegraphics[width=15mm]{logo4.pdf}}\hfill%\hspace{1cm} + {\def\rulecolor{Goldenrod}% + \def\rulewidth{1pt}% + \begin{tikzpicture}% + %\node[fill=black!10,draw,shape=filledbox, + \node[fill=white!10,% + draw, +% shade,% +% top color=blue!10, +% bottom color=white, + shape=roundedbox, + inner sep=2mm, + text width=13mm] (x) + {\includegraphics[width=13mm]{els-logo.pdf}}; + \end{tikzpicture}}\hfill +% + \parbox[c][24mm][b]{145mm}% + {{\fontsize{30}{30}\selectfont\textsf{\color{white}elsarticle.cls}} + \quad{\fontsize{14}{14}\selectfont\sffamily\color{blue!50} + A better way to format your submission}} + \end{minipage} + \hfill + \begin{minipage}[c][\vpanelheight][b]{7.9cm} + \sffamily\footnotesize + \pdfButton{2cm}{\href{mailto:elsarticle@river-valley.com}{BUGS}} + \pdfButton{2cm}{\href{http://support.river-valley.com}{SUPPORT}} + \pdfButton{2cm}% + {\href{http://www.elsevier.com/locate/latex}% + {RESOURCES}} +% \pdfButton{2cm}{\Acrobatmenu{GoToPage}{GoTo}} + \end{minipage}\\ + \rule{\paperwidth}{0.1pt} + \end{minipage}% +} + +\@ifundefined{backgroundcolor}% + {\def\backgroundcolor#1{\gdef\@backgroundcolor{#1}}}{} +\colorlet{panelbackground}{orange!10} +\backgroundcolor{orange!10} +\def\@urlcolor{brown} +\def\@linkcolor{brown} +\def\@menucolor{brown} + +\RequirePackage{moreverb} + +\newenvironment{vquote}% + {\medskip + \verbatimwrite{tmp.tex}} + {\endverbatimwrite + \aftergroup\printBox} + +\def\printBox{\bgroup\def\rulecolor{orange}% + \def\rulewidth{.2pt}% + \noindent\begin{tikzpicture} + \node[fill=blue!10,draw,shade,top color=white!10, + bottom color=cyan!5,shape=quotedbox, + inner sep=8pt,text width=.95\linewidth] + {\color{orange}\vspace*{-1pc}% + \verbatiminput{tmp.tex}% + \vspace*{-\baselineskip}% + } ; + \end{tikzpicture}% + \egroup + \medskip +} +\def\red{\color{Sepia}} +\def\verbatim@font{\red\normalfont\ttfamily} + +\def\verbatimcontinuewrite{% + \@bsphack +% \verbatim@out=#1 + \let\do\@makeother\dospecials + \obeyspaces\catcode`\^^M\active \catcode`\^^I=12 + \def\verbatim@processline{% + \immediate\write\verbatim@out + {\the\verbatim@line}}% + \verbatim@start} + +\def\@@@lbr{\expandafter\@gobble\string\{} +\def\@@@rbr{\expandafter\@gobble\string\}} +\def\@@@pcr{\expandafter\@gobble\string\%} + + +%\immediate\write18{touch mytool.tex +% ^^J rm mytool.tex ^^J touch mytool.tex} + +\newenvironment{toolwrite}[1]% + {\@tempdima=#1 + \verbatimwrite{xx}} + {\endverbatimwrite + \immediate\write18{echo + "\string\Clear\@@@lbr\the\@tempdima\@@@rbr\@@@lbr\@@@pcr">>mytool.tex^^J + cat xx.tex >> mytool.tex ^^J + echo "\@@@rbr" >> mytool.tex}} + +\tikzstyle{place}=[scale=.39,rectangle,draw=blue!90,fill=blue!30,thin,% + minimum height=1mm,minimum width=13mm] +\tikzstyle{trans}=[scale=.39,rectangle,draw=Olive,fill=Olive!20,thin,% + minimum height=1mm,minimum width=13mm] +\tikzstyle{past}=[scale=.39,rectangle,draw=Olive,fill=Olive!60,thin,% + minimum height=1mm,minimum width=13mm] + +\def\printSq#1{\parbox{107mm}{\@tempcnta=1 + \let\printfill\@empty + \loop\ifnum\@tempcnta<#1 + {\printfill\ifnum\c@page=\@tempcnta + \tikz\node at(0,0) [place]{};\else + \ifnum\c@page<\@tempcnta + \hyperlink{page.\the\@tempcnta}{\tikz\node at(0,0) + [trans]{};}% + \else + \hyperlink{page.\the\@tempcnta}{\tikz\node at(0,0) + [past]{};}% + \fi\fi}% + \advance\@tempcnta 1 \let\printfill\,\repeat}} + + +\endinput + + + diff --git a/Master/texmf-dist/doc/latex/els-cas-template/doc/rvdtx.sty b/Master/texmf-dist/doc/latex/els-cas-template/doc/rvdtx.sty new file mode 100644 index 00000000000..3f16af71969 --- /dev/null +++ b/Master/texmf-dist/doc/latex/els-cas-template/doc/rvdtx.sty @@ -0,0 +1,476 @@ +% +% +% File: rvdtx.sty +% +% Auxiliary package to format *.dtx documents. +% +% Copyright (c) 2008-2019 CV Radhakrishnan <cvr@stmdocs.in>, +% +% This file may be distributed and/or modified under the conditions +% of the LaTeX Project Public License, either version 1.2 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.2 or later is part of all distributions of LaTeX +% version 1999/12/01 or later. +% +% +\newcounter{colorscheme} + +\newif\if@xcolor \@xcolorfalse +\newif\if@mylogo \@mylogofalse + +\DeclareOption{mylogo}{\global\@mylogotrue} +\DeclareOption{green}{\setcounter{colorscheme}{1}} +\DeclareOption{orange}{\setcounter{colorscheme}{0}} +\DeclareOption{xcolor}{\global\@xcolortrue} +\DeclareOption{qone}{\AtEndOfPackage{\global\let\dtxmark\dtxmarkone}} +\DeclareOption{qtwo}{\AtEndOfPackage{\global\let\dtxmark\dtxmarktwo}} + +\ProcessOptions +\def\loadXcolor{\if@xcolor\RequirePackage[dvipsnames,svgnames]{xcolor}\fi} + +\loadXcolor +\ifcase\thecolorscheme +% +% Orange color spec (default) +% + \colorlet{itemcolor}{brown} + \colorlet{verbcolor}{Sepia} + \colorlet{botrulecolor}{orange!25} + \colorlet{botbgcolor}{orange!15} + \colorlet{botcolor}{orange!80} + \colorlet{pgrulecolor}{orange} + \colorlet{pgbgcolor}{white} + + \colorlet{quicklinkrulecolor}{orange!40} + \colorlet{quicklinkcolor}{brown} + \colorlet{topverticalrule}{brown} + \colorlet{titlecolor}{brown} + \colorlet{hlinkcolor}{brown} + \colorlet{hlinktricolor}{orange!70} + \colorlet{linkcolor}{brown} + \colorlet{urlcolor}{brown} + +% \colorlet{arrayrulecolor}{olive!30} + \colorlet{seccolor}{brown} + + \colorlet{toprulecolor}{orange!30} + \colorlet{topbgcolor}{orange!10} + \colorlet{topcolor}{brown!80} +% +% +\or% Green color specs +% +% + \colorlet{itemcolor}{OliveGreen} + \colorlet{verbcolor}{OliveGreen} + \colorlet{botrulecolor}{GreenYellow!25} + \colorlet{botbgcolor}{GreenYellow!30} + \colorlet{botcolor}{Green!80} + \colorlet{pgrulecolor}{GreenYellow} + \colorlet{pgbgcolor}{white} + + \colorlet{quicklinkrulecolor}{Green!40} + \colorlet{quicklinkcolor}{Green} + \colorlet{topverticalrule}{Green} + \colorlet{titlecolor}{DarkOliveGreen} + \colorlet{hlinkcolor}{DarkOliveGreen} + \colorlet{hlinktricolor}{Green!70} + \colorlet{linkcolor}{OliveGreen} + \colorlet{urlcolor}{OliveGreen} + +% \colorlet{arrayrulecolor}{olive!30} + \colorlet{seccolor}{OliveGreen} + + \colorlet{toprulecolor}{GreenYellow!50} + \colorlet{topbgcolor}{GreenYellow!20} + \colorlet{topcolor}{GreenYellow!80} +\fi + +\def\floatpagefraction{.99} +\usepackage{geometry} +\geometry{top=2in, + bottom=1in, + left=2in, + right=1in, + a4paper} + +%\DeclareRobustCommand{\LaTeX}{L\kern-.25em% +% {\sbox\z@ T% +% \vbox to\ht\z@{% +% {\check@mathfonts +% \fontsize\sf@size\z@ +% \math@fontsfalse\selectfont +% A}% +% \vss}% +% }%-.10em% +% \TeX +%} +\DeclareRobustCommand{\LaTeX}{L\kern-.25em% + {\sbox\z@ T% + \vbox to\ht\z@{% + \hbox{% + \check@mathfonts + \fontsize\sf@size\z@ + \math@fontsfalse\selectfont + A}% + \vss}% + }% + \kern-.10em% + \TeX} + +\RequirePackage{pdfwidgets} + +\RequirePackage{comment,xspace} +\def\xml{\textsc{xml}\xspace} +\def\latex{\LaTeX\xspace} +\def\pdf{\textsc{pdf}\xspace} +\def\pdfa{\textsc{pdf/a-1}b\xspace} +\def\pdfx{\textsc{pdf/x-1}a\xspace} +\def\xmp{\textsc{xmp}\xspace} +\def\pdftex{\textsc{pdf\TeX}\xspace} +\def\defmacro#1{\texttt{\@bsl#1}} +\def\thanh{H\`an Th\^e Th\`anh\xspace} +\def\gnulinux{\textsc{gnu/linux}\xspace} + +\let\@DRAFTout@Hook\@empty +\newcommand{\DRAFTout}{\g@addto@macro\@DRAFTout@Hook} +\newcommand{\@DRAFTout@Out}{% + \afterassignment\@DRAFTout@Test + \global\setbox\@cclv= + } +\newcommand{\@DRAFTout@Test}{% + \ifvoid\@cclv\relax + \aftergroup\@DRAFTout@Output + \else + \@DRAFTout@Output + \fi% + } +\newcommand{\@DRAFTout@Output}{% + \@DRAFTout@Hook% + \@DRAFTout@Org@Out\box\@cclv% + } +\newcommand{\@DRAFTout@Org@Out}{} +\newcommand*{\@DRAFTout@Init}{% + \let\@DRAFTout@Org@Out\shipout + \let\shipout\@DRAFTout@Out + } +\newdimen\OHeight +\setlength\OHeight{\textheight} +\addtolength\OHeight{\headheight} +\addtolength\OHeight{\headsep} +\addtolength\OHeight{\footskip} + + +\newif\ifoverlay\overlayfalse + +\AtBeginDocument{\@DRAFTout@Init} +\newcommand{\@DraftOverlay@Hook}{} +\newcommand{\AddToDraftOverlay}{\g@addto@macro\@DraftOverlay@Hook} +\newcommand{\ClearDraftOverlay}{\let\@DraftOverlay@Hook\@empty} +\newcommand{\@DraftOverlay}{% + \ifx\@DraftOverlay@Hook\@empty + \else + \bgroup + \@tempdima=1in + \@tempcnta=\@tempdima + \@tempcntb=-\@tempdima + \advance\@tempcntb\paperheight + \ifoverlay + \global\setbox\@cclv\vbox{% + \box\@cclv + \vbox{\let\protect\relax% + \unitlength=1pt% + \pictur@(0,0)(\strip@pt\@tempdima,\strip@pt\@tempdimb)% + \@DraftOverlay@Hook% + \endpicture}}% + \else + \global\setbox\@cclv\vbox{% + \vbox{\let\protect\relax% + \unitlength=1sp% + \pictur@(0,0)(\@tempcnta,\@tempcntb)% + \@DraftOverlay@Hook% + \endpicture}% + \box\@cclv}% + \fi + \egroup + \fi +} + +\definecolor{gray30}{gray}{.7} +\definecolor{gray20}{gray}{.8} +\definecolor{gray10}{gray}{.9} + +\DRAFTout{\@DraftOverlay} +\long\def\puttext(#1)#2{\AddToDraftOverlay{% + \setlength{\unitlength}{1pt}\thinlines% + \put(#1){#2}}} + +\RequirePackage{shortvrb} +\MakeShortVerb{\|} +\RequirePackage{amsfonts,amssymb} +\IfFileExists{pxfonts.sty}{\RequirePackage{pxfonts}}{} +%\IfFileExists{charter.sty}{\RequirePackage{charter}}{} +\IfFileExists{lfr.sty}{\RequirePackage[scaled=.85]{lfr}}{} +%\IfFileExists{prima.sty}{\RequirePackage[scaled=.8]{prima}}{} + +\def\theCodelineNo{\reset@font\tiny\arabic{CodelineNo}} + +\def\@seccntformat#1{\llap{\csname the#1\endcsname.\hspace*{6pt}}} +\def\section{\@startsection {section}{1}{\z@}% + {-3.5ex \@plus -1ex \@minus -.2ex}% + {2.3ex \@plus.2ex}% + {\normalfont\large\bfseries\color{seccolor}}} +\def\subsection{\@startsection{subsection}{2}{\z@}% + {-2.25ex\@plus -1ex \@minus -.2ex}% + {1.5ex \@plus .2ex}% + {\normalfont\normalsize\bfseries\color{seccolor}}} +\def\subsubsection{\@startsection{subsubsection}{3}{\z@}% + {-1.25ex\@plus -1ex \@minus -.2ex}% + {1.5ex \@plus .2ex}% + {\normalfont\normalsize\bfseries\color{seccolor}}} + +%\RequirePackage[draft]{pdfdraftcopy} +% \draftstring{} + \puttext(0,36){\botstring}% + \puttext(0,840){\copy\topbox} +\if@mylogo + \puttext(531,829){\cvrlogo} +\fi + +\RequirePackage{colortbl} +%\arrayrulecolor{arrayrulecolor} +\let\shline\hline +\def\hline{\noalign{\vskip3pt}\shline\noalign{\vskip4pt}} + +\RequirePackage[pdftex,colorlinks]{hyperref} +\def\Hlink#1#2{\hyperlink{#2}{\color{hlinktricolor}% + $\blacktriangleright$~\color{hlinkcolor}#1}} + \def\@linkcolor{linkcolor} + \def\@urlcolor{urlcolor} + +\pagestyle{empty} +\def\version#1{\gdef\@version{#1}} +\def\@version{1.0} +\def\contact#1{\gdef\@contact{#1}} +\def\author#1{\gdef\@author{#1}} +\def\@author{STM Document Engineering Pvt Ltd.} +\def\@contact{\texttt{support@stmdocs.in}} +\def\keywords#1{\gdef\@keywords{#1}} +\def\@keywords{\LaTeX, \xml} + +\long\def\Hrule{\\[-4pt]\hspace*{-3em}% + {\color{quicklinkrulecolor}\rule{\linewidth}{.1pt}}\\} + +\long\def\dtxmarkone[#1][#2]#3#4#5{\def\next{#1}% + \ifcase\next\or\Hlink{#4}{#3}\Hrule \fi} + +\newcounter{dtx} + +\long\def\dtxmarktwo[#1][#2]#3#4#5{\def\next{#1}% + \stepcounter{dtx}\parbox{.45\linewidth}% + {\ifcase\next\or\Hlink{#4}{#3}\fi}% + \ifodd\thedtx\relax\else\Hrule\fi} + +\let\dtxmark\dtxmarkone + +\newbox\topbox +\long\def\maketitle{\global\setbox\topbox=\vbox{\hsize=\paperwidth + \parindent=0pt + \fcolorbox{toprulecolor}{topbgcolor}% + {\parbox[t][2in][c]{\paperwidth}% + {\hspace*{15mm}% + \parbox[c]{.35\paperwidth}{\fontsize{18pt}{20pt}% + \raggedright\normalfont\sffamily \selectfont + \color{titlecolor} \@title\\[6pt] + {\normalsize\rmfamily\scshape\@author}}% +% {\footnotesize\textsc{keywords:} \@keywords}}% + \hfill + \parbox[c][2in][c]{1mm}{\color{topverticalrule}% + \rule{.1pt}{2in}}% + \hfill + \parbox[c][2in][c]{.35\paperwidth}% + {\normalfont\footnotesize\sffamily\color{quicklinkcolor}% + \advance\baselineskip-3pt% + \vspace*{6pt} QUICK LINKS\Hrule + \IfFileExists{tmp.out}{\input tmp.out}{}% + }\hspace*{5mm}% + }% + }% + }% +} +\gdef\botstring{\fcolorbox{botrulecolor}{botbgcolor}% + {\parbox[t][.5in][t]{\paperwidth}% + {\normalfont\sffamily\footnotesize% + \color{botcolor}% + \hspace*{5mm}\parbox[c][.5in][c]{.45\paperwidth}% + {\raggedright \textcopyright\ 2019, Elsevier Ltd. + Bugs, feature requests, suggestions and comments %\\ + shall be mailed to \href{mailto:elsarticle@stmdocs.in} + {$<$elsarticle@stmdocs.in$>$}. + }\hfill% + \parbox[c][.5in][c]{1cm} + {\centering\sffamily\mdseries + \fcolorbox{pgrulecolor}{pgbgcolor}{\thepage}% + }\hfill + \parbox[c][.5in][c]{.45\paperwidth} + {\raggedleft\begin{tabular}{rl}% + Version:&\@version\\ + Date:&\@date\\ + Contact:&\@contact + \end{tabular}\hspace*{5mm}% + }% + }% + }% + } + +\def\MacroFont{\fontencoding\encodingdefault + \fontfamily\ttdefault + \fontseries\mddefault + \fontshape\updefault + \color{verbcolor}\small}% + +\def\verbatim@font{\normalfont\color{verbcolor}\ttfamily} + +\def\verb{\relax\ifmmode\hbox\else\leavevmode\null\fi + \bgroup + \verb@eol@error \let\do\@makeother \dospecials + \verbatim@font\@noligs + \@ifstar\@sverb\@verb} + + +\def\@lbr{\expandafter\@gobble\string\{} +\def\@rbr{\expandafter\@gobble\string\}} +\def\@bsl{\expandafter\@gobble\string\\} +\def\@Bsl#1{\texttt{\@bsl#1}\xspace} +\def\trics#1{\protect\@Bsl{#1}} +\def\onecs#1{\protect\@Bsl{#1}} +%\let\trics\onecs +\@ifundefined{c@Glossary}{}{\c@GlossaryColumns=1 + \c@IndexColumns=2} + +\def\index@prologue{\section{Index}% + \markboth{Index}{Index}% +% Numbers written in italic refer to the page +% where the corresponding entry is described; +% numbers underlined refer to the +% \ifcodeline@index +% code line of the +% \fi +% definition; numbers in roman refer to the +% \ifcodeline@index +% code lines +% \else +% pages +% \fi +% where the entry is used. + } + +\@ifundefined{theglossary}{}{% +\renewenvironment{theglossary}{% + \glossary@prologue%][\GlossaryMin]% + \GlossaryParms \let\item\@idxitem \ignorespaces}% + {}} + +\newenvironment{decl}[1][]% + {\par\small\addvspace{1.5ex plus 1ex}% + \vskip -\parskip + \ifx\relax#1\relax + \def\@decl@date{}% + \else + \def\@decl@date{\NEWfeature{#1}}% + \fi + \noindent%\hspace{-\leftmargini}% + \begin{tabular}{l}\hline\ignorespaces}% + {\\\hline\end{tabular}\nobreak\@decl@date\par\nobreak + \vspace{0.75ex}\vskip -\parskip\ignorespacesafterend\noindent} + +\newif\ifhave@multicol +\newif\ifcodeline@index + +\IfFileExists{multicol.sty}{\have@multicoltrue + \RequirePackage{multicol}% + }{} + +\newdimen\IndexMin \IndexMin = 80pt +\newcount\c@IndexColumns \c@IndexColumns = 2 +\ifhave@multicol + \renewenvironment{theindex} + {\begin{multicols}\c@IndexColumns[\index@prologue][\IndexMin]% + \IndexParms \let\item\@idxitem \ignorespaces}% + {\end{multicols}} +\else + \typeout{Can't find multicol.sty -- will use normal index layout if + necessary.} + \def\theindex{\@restonecoltrue\if@twocolumn\@restonecolfalse\fi + \columnseprule \z@ \columnsep 35\p@ + \twocolumn[\index@prologue]% + \IndexParms \let\item\@idxitem \ignorespaces} + \def\endtheindex{\if@restonecol\onecolumn\else\clearpage\fi} +\fi +\long\def\IndexPrologue#1{\@bsphack\def\index@prologue{#1}\@esphack} +\@ifundefined{index@prologue} + {\def\index@prologue{\section{Index}% + \markboth{Index}{Index}% +% Numbers written in italic refer to the page +% where the corresponding entry is described; +% numbers underlined refer to the +% \ifcodeline@index +% code line of the +% \fi +% definition; numbers in roman refer to the +% \ifcodeline@index +% code lines +% \else +% pages +% \fi +% where the entry is used. + }}{} +\@ifundefined{IndexParms} + {\def\IndexParms{% + \parindent \z@ + \columnsep 15pt + \parskip 0pt plus 1pt + \rightskip 15pt + \mathsurround \z@ + \parfillskip=-15pt + \footnotesize + \def\@idxitem{\par\hangindent 30pt}% + \def\subitem{\@idxitem\hspace*{15pt}}% + \def\subsubitem{\@idxitem\hspace*{25pt}}% + \def\indexspace{\par\vspace{10pt plus 2pt minus 3pt}}% + }}{} +\def\efill{\hfill\nopagebreak}% +\def\dotfill{\leaders\hbox to.6em{\hss .\hss}\hskip\z@ plus 1fill}% +\def\dotfil{\leaders\hbox to.6em{\hss .\hss}\hfil}% +\def\pfill{\unskip~\dotfill\penalty500\strut\nobreak + \dotfil~\ignorespaces}% + +\let\scan@allowedfalse\relax + +\def\tlformat#1{\begingroup\Large + \parbox[c][1.25em][c]{1.25em}{\centering\fontfamily{phv} + \fontseries{m}% + \selectfont\color{white}\huge#1}% + \endgroup} +\def\tlFormat#1{\begingroup\Large + \parbox[c][1.25em][c]{1.25em}{\centering\fontfamily{phv} + \fontseries{m}% + \selectfont\color{black}\huge#1}% + \endgroup} +\def\cvrlogo{\begingroup\fboxsep=2pt + \colorbox{olive}{\tlformat{c}}% + \colorbox{blue}{\tlformat{v}}% + \colorbox{red}{\tlformat{r}} + \endgroup} + + +\endinput + +%% +%% End of file 'rvdtx.sty' +%% + diff --git a/Master/texmf-dist/doc/latex/els-cas-template/doc/sc-sample.pdf b/Master/texmf-dist/doc/latex/els-cas-template/doc/sc-sample.pdf Binary files differnew file mode 100644 index 00000000000..151f4350685 --- /dev/null +++ b/Master/texmf-dist/doc/latex/els-cas-template/doc/sc-sample.pdf diff --git a/Master/texmf-dist/doc/latex/els-cas-template/figs/Fig1.pdf b/Master/texmf-dist/doc/latex/els-cas-template/figs/Fig1.pdf Binary files differnew file mode 100644 index 00000000000..97471d0bdd8 --- /dev/null +++ b/Master/texmf-dist/doc/latex/els-cas-template/figs/Fig1.pdf diff --git a/Master/texmf-dist/doc/latex/els-cas-template/figs/Fig2.pdf b/Master/texmf-dist/doc/latex/els-cas-template/figs/Fig2.pdf Binary files differnew file mode 100644 index 00000000000..08b6906f410 --- /dev/null +++ b/Master/texmf-dist/doc/latex/els-cas-template/figs/Fig2.pdf diff --git a/Master/texmf-dist/doc/latex/els-cas-template/figs/Fig3.pdf b/Master/texmf-dist/doc/latex/els-cas-template/figs/Fig3.pdf Binary files differnew file mode 100644 index 00000000000..4697145a775 --- /dev/null +++ b/Master/texmf-dist/doc/latex/els-cas-template/figs/Fig3.pdf diff --git a/Master/texmf-dist/doc/latex/els-cas-template/figs/grabs.pdf b/Master/texmf-dist/doc/latex/els-cas-template/figs/grabs.pdf Binary files differnew file mode 100644 index 00000000000..a1ff5be7a51 --- /dev/null +++ b/Master/texmf-dist/doc/latex/els-cas-template/figs/grabs.pdf diff --git a/Master/texmf-dist/doc/latex/els-cas-template/figs/pic1.pdf b/Master/texmf-dist/doc/latex/els-cas-template/figs/pic1.pdf Binary files differnew file mode 100644 index 00000000000..97471d0bdd8 --- /dev/null +++ b/Master/texmf-dist/doc/latex/els-cas-template/figs/pic1.pdf diff --git a/Master/texmf-dist/doc/latex/els-cas-template/manifest.txt b/Master/texmf-dist/doc/latex/els-cas-template/manifest.txt new file mode 100644 index 00000000000..8932a2f958c --- /dev/null +++ b/Master/texmf-dist/doc/latex/els-cas-template/manifest.txt @@ -0,0 +1,94 @@ +% Copyright 2019 Elsevier Ltd +% +% This file is part of the 'CAS Bundle'. +% -------------------------------------- +% +% It may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.2 +% 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.2 or later is part of all distributions of LaTeX +% version 1999/12/01 or later. +% +% The list of all files belonging to the LaTeX 'CAS Bundle' is +% given in the file `manifest.txt'. +% +% CONTENTS OF THE CAS BUNDLE +% ========================== + +Directory elsevier-cas-template/ + +cas-sc.cls + Classfile to be used for single column format + +cas-dc.cls + Classfile to be used for double column format + +model2-names.bst + BibTeX style file + +cas-sc-template.tex + TeX template + +cas-sc-template.pdf + PDF output of the above template + +cas-dc-template.tex + TeX template + +cas-dc-template.pdf + PDF output of the above template + +manifest.txt + this file + +README + small readme documentation + +Directory doc/ + +The following files are graphic files needed for creating pdf output +of the documentation from elsdoc.tex: + + dc-sample.pdf + sc-sample.pdf + +elsdoc-cas.tex -- LaTeX source file of documentation +elsdoc-cas.pdf -- documentation for elsarticle.cls + +Directory thumbnails/ + +Contains thumbnail images which will be included in the +typeset PDF. + + email.jpeg + facebook.jpeg + gplus.jpeg + linkedin.jpeg + twitter.jpeg + url.jpeg + +Directory figs/ + +Dummy figures used in the template files. + + Fig1.pdf + Fig2.pdf + Fig3.pdf + grabs.pdf + pic1.pdf + +The following files are files written out every time elsdoc.tex is +compiled: + + elsdoc-cas.aux + elsdoc-cas.log + elsdoc-cas.out + tmp-cas.tex + +Auxiliary packages needed to generate pdf output from elsdoc.tex: + + rvdtx.sty + pdfwidgets.sty + diff --git a/Master/texmf-dist/doc/latex/els-cas-template/model2-names.bst b/Master/texmf-dist/doc/latex/els-cas-template/model2-names.bst new file mode 100644 index 00000000000..95e05260965 --- /dev/null +++ b/Master/texmf-dist/doc/latex/els-cas-template/model2-names.bst @@ -0,0 +1,1656 @@ +%% +%% This is file `model2-names.bst' (Version 2.0), +%% +%% Copyright 2009-2013 Elsevier Ltd +%% +%% This file is part of the 'Elsarticle Bundle'. +%% --------------------------------------------- +%% +%% It may be distributed under the conditions of the LaTeX Project Public +%% License, either version 1.2 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.2 or later is part of all distributions of LaTeX +%% version 1999/12/01 or later. +%% +%% $Id: model2-names.bst 217 2013-03-13 11:50:49Z rishi $ +%% +%% $URL: http://lenova.river-valley.com/svn/elsbst/trunk/New-Model-2/model2-names.bst $ +%% + +ENTRY + { address + archive + author + booktitle + chapter + collaboration + edition + editor + howpublished + institution + journal + key + month + note + number + organization + pages + publisher + school + series + title + type + volume + year + url + doi + eprint + pubmed + } + {} + { label extra.label sort.label short.list } + +INTEGERS { output.state before.all mid.sentence after.sentence after.block } + +STRINGS { urlprefix doiprefix eprintprefix pubmedprefix } + +FUNCTION {init.web.variables} +{ + "\URLprefix " 'urlprefix := + "\DOIprefix" 'doiprefix := + "\ArXivprefix " 'eprintprefix := + "\Pubmedprefix " 'pubmedprefix := +} + +FUNCTION {init.state.consts} +{ #0 'before.all := + #1 'mid.sentence := + #2 'after.sentence := + #3 'after.block := +} +STRINGS { s t} +FUNCTION {output.comma} +{ ", " * write$} + +FUNCTION {output.nonnull} +{ 's := + output.state mid.sentence = + { ". " * write$ } + { output.state after.block = + { add.period$ write$ + newline$ + "\newblock " write$ + } + { output.state before.all = + 'write$ + { ", " * write$ } + if$ + } + if$ + mid.sentence 'output.state := + } + if$ + s +} +FUNCTION {output.commanull} +{ 's := + output.state mid.sentence = + { ", " * write$ } + { output.state after.block = + { ", " * write$ + newline$ + "\newblock " write$ + } + { output.state before.all = + 'write$ + { add.period$ " " * write$ } + if$ + } + if$ + mid.sentence 'output.state := + } + if$ + s +} +FUNCTION {output} +{ duplicate$ empty$ + 'pop$ + 'output.nonnull + if$ +} +FUNCTION {output.check} +{ 't := + duplicate$ empty$ + { pop$ "empty " t * " in " * cite$ * warning$ } + 'output.nonnull + if$ +} +FUNCTION {output.book.check} +{ 't := + duplicate$ empty$ + { pop$ "empty " t * " in " * cite$ * warning$ } + 'output.nonnull + if$ +} +FUNCTION {fin.entry} +{ add.period$ + write$ + newline$ +} + +FUNCTION {new.block} +{ output.state before.all = + 'skip$ + { after.block 'output.state := } + if$ +} +FUNCTION {new.sentence} +{ output.state after.block = + 'skip$ + { output.state before.all = + 'skip$ + { after.sentence 'output.state := } + if$ + } + if$ +} +FUNCTION {add.blank} +{ " " * before.all 'output.state := +} + +FUNCTION {date.block} +{ + new.block +} + +FUNCTION {not} +{ { #0 } + { #1 } + if$ +} +FUNCTION {and} +{ 'skip$ + { pop$ #0 } + if$ +} +FUNCTION {or} +{ { pop$ #1 } + 'skip$ + if$ +} +FUNCTION {new.block.checkb} +{ empty$ + swap$ empty$ + and + 'skip$ + 'new.block + if$ +} +FUNCTION {field.or.null} +{ duplicate$ empty$ + { pop$ "" } + 'skip$ + if$ +} +FUNCTION {emphasize} +{ duplicate$ empty$ + { pop$ "" } + { "\textit{" swap$ * "}" * } + if$ +} +FUNCTION {tie.or.space.prefix} +{ duplicate$ text.length$ #3 < + { "~" } + { " " } + if$ + swap$ +} + +FUNCTION {capitalize} +{ "u" change.case$ "t" change.case$ } + +FUNCTION {space.word} +{ " " swap$ * " " * } + % Here are the language-specific definitions for explicit words. + % Each function has a name bbl.xxx where xxx is the English word. + % The language selected here is ENGLISH +FUNCTION {bbl.and} +{ "and"} + +FUNCTION {bbl.etal} +{ "et~al." } + +FUNCTION {bbl.editors} +{ "Eds." } + +FUNCTION {bbl.editor} +{ "Ed." } + +FUNCTION {bbl.edby} +{ "edited by" } + +FUNCTION {bbl.edition} +{ "ed." } + +FUNCTION {bbl.volume} +{ "volume" } + +FUNCTION {bbl.of} +{ "of" } + +FUNCTION {bbl.number} +{ "number" } + +FUNCTION {bbl.nr} +{ "no." } + +FUNCTION {bbl.in} +{ "in" } + +FUNCTION {bbl.pages} +{ "pp." } + +FUNCTION {bbl.page} +{ "p." } + +FUNCTION {bbl.chapter} +{ "chapter" } + +FUNCTION {bbl.techrep} +{ "Technical Report" } + +FUNCTION {bbl.mthesis} +{ "Master's thesis" } + +FUNCTION {bbl.phdthesis} +{ "Ph.D. thesis" } + +MACRO {jan} {"January"} + +MACRO {feb} {"February"} + +MACRO {mar} {"March"} + +MACRO {apr} {"April"} + +MACRO {may} {"May"} + +MACRO {jun} {"June"} + +MACRO {jul} {"July"} + +MACRO {aug} {"August"} + +MACRO {sep} {"September"} + +MACRO {oct} {"October"} + +MACRO {nov} {"November"} + +MACRO {dec} {"December"} + +MACRO {acmcs} {"ACM Comput. Surv."} + +MACRO {acta} {"Acta Inf."} + +MACRO {cacm} {"Commun. ACM"} + +MACRO {ibmjrd} {"IBM J. Res. Dev."} + +MACRO {ibmsj} {"IBM Syst.~J."} + +MACRO {ieeese} {"IEEE Trans. Software Eng."} + +MACRO {ieeetc} {"IEEE Trans. Comput."} + +MACRO {ieeetcad} + {"IEEE Trans. Comput. Aid. Des."} + +MACRO {ipl} {"Inf. Process. Lett."} + +MACRO {jacm} {"J.~ACM"} + +MACRO {jcss} {"J.~Comput. Syst. Sci."} + +MACRO {scp} {"Sci. Comput. Program."} + +MACRO {sicomp} {"SIAM J. Comput."} + +MACRO {tocs} {"ACM Trans. Comput. Syst."} + +MACRO {tods} {"ACM Trans. Database Syst."} + +MACRO {tog} {"ACM Trans. Graphic."} + +MACRO {toms} {"ACM Trans. Math. Software"} + +MACRO {toois} {"ACM Trans. Office Inf. Syst."} + +MACRO {toplas} {"ACM Trans. Progr. Lang. Syst."} + +MACRO {tcs} {"Theor. Comput. Sci."} + +%% Begin - Added on March 13, 2013 + +MACRO {aj} {"Astron. J."} +MACRO {actaa} {"Acta Astron."} +MACRO {araa} {"Annu. Rev. Astron. Astrophys."} +MACRO {apj} {"Astrophys. J."} +MACRO {apjl} {"Astrophys. J. Lett."} +MACRO {apjs} {"Astrophys. J. Suppl. S"} +MACRO {ao} {"Appl. Optics"} +MACRO {apss} {"Astrophys. Space Sci."} +MACRO {aap} {"Astronom. Astrophys."} +MACRO {aapr} {"Astron. Astrophys Rev"} +MACRO {aaps} {"Astron. Astrophys. Sup."} +MACRO {azh} {"Astron. Zh+"} +MACRO {caa} {"Chinese Astron. Astr."} +MACRO {icarus} {"Icarus"} +MACRO {jcap} {"J. Cosmol. Astropart. Phys."} +MACRO {jrasc} {"J. Roy. Astron. Soc. Can."} +MACRO {memras} {"Memoirs of the RAS"} +MACRO {mnras} {"Mon. Not. R. Astron. Soc."} +MACRO {na} {"New Astron."} +MACRO {nar} {"New Astron. Rev."} +MACRO {pra} {"Phys. Rev. A"} +MACRO {prb} {"Phys. Rev. B"} +MACRO {prc} {"Phys. Rev. C"} +MACRO {prd} {"Phys. Rev. D"} +MACRO {pre} {"Phys. Rev. E"} +MACRO {prl} {"Phys. Rev. Lett"} +MACRO {pasa} {"Publ. Astron. Soc. Aust."} +MACRO {pasp} {"Publ. Astron. Soc. Pac."} +MACRO {pasj} {"Publ. Astron. Soc. Jpn."} +MACRO {rmxaa} {"Rev. Mex. Astron. Astr."} +MACRO {rjras} {"Q. J. Roy. Astron. Soc."} +MACRO {skytel} {"Sky Telescope"} +MACRO {solphys} {"Sol. Phys."} +MACRO {sovast} {"Sov. Astron."} +MACRO {ssr} {"Space Sci. Rev."} +MACRO {zap} {"Zeitschrift fuer Astrophysik"} +MACRO {nat} {"Nature"} +MACRO {iaucirc} {"IAU Cirulars"} +MACRO {gca} {"Geochim. Cosmochim. Ac."} +MACRO {grl} {"Geophys. Res. Lett."} +MACRO {jcp} {"J. Chem. Phys."} +MACRO {jgr} {"J. Geophys. Res."} +MACRO {jqsrt} {"J. Quant. Spectrosc. RA"} +MACRO {nphysa} {"Nucl. Phys. A"} +MACRO {physrep} {"Phys. Rep."} +MACRO {physscr} {"Phys. Scrip."} +MACRO {planss} {"Planet. Space Sci."} +MACRO {baas} {"Bull. Aust. Acoust. Soc"} +MACRO {aplett} {"Astrophys. Lett."} +MACRO {procspie} {"Proc. SPIE"} +MACRO {cjaa} {"Chinese J. Astron. Ast."} +MACRO {fcp} {"Fundam. Cosm. Phys."} +MACRO {memsai} {"Mem. Soc. Astron. Ital."} +MACRO {bain} {"Bull. Astron. Inst. Neth., Suppl. Ser."} + +%% End - Added on March 13, 2013 + + +FUNCTION {bibinfo.check} +{ swap$ + duplicate$ missing$ + { + pop$ pop$ + "" + } + { duplicate$ empty$ + { + swap$ pop$ + } + { swap$ + "\bibinfo{" swap$ * "}{" * swap$ * "}" * + } + if$ + } + if$ +} +FUNCTION {bibinfo.warn} +{ swap$ + duplicate$ missing$ + { + swap$ "missing " swap$ * " in " * cite$ * warning$ pop$ + "" + } + { duplicate$ empty$ + { + swap$ "empty " swap$ * " in " * cite$ * warning$ + } + { swap$ + pop$ + } + if$ + } + if$ +} + +STRINGS { bibinfo} + +INTEGERS { nameptr namesleft numnames } + +FUNCTION {format.names} +{ 'bibinfo := + duplicate$ empty$ 'skip$ { + 's := + "" 't := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + "{vv~}{ll}{, jj}{, f{.}.}" + format.name$ + bibinfo bibinfo.check + 't := + nameptr #1 > + { + namesleft #1 > + { ", " * t * } + { + "," * + s nameptr "{ll}" format.name$ duplicate$ "others" = + { 't := } + { pop$ } + if$ + t "others" = + { + " " * bbl.etal * + } + { " " * t * } + if$ + } + if$ + } + 't + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ + } if$ +} +FUNCTION {format.names.ed} +{ + format.names +} +FUNCTION {format.key} +{ empty$ + { key field.or.null } + { "" } + if$ +} + +FUNCTION {format.authors} +{ author "author" format.names + duplicate$ empty$ 'skip$ + { collaboration "collaboration" bibinfo.check + duplicate$ empty$ 'skip$ + { " (" swap$ * ")" * } + if$ + * + } + if$ +} + +FUNCTION {get.bbl.editor} +{ editor num.names$ #1 > 'bbl.editors 'bbl.editor if$ } + +FUNCTION {format.editors} +{ editor "editor" format.names duplicate$ empty$ 'skip$ + { + " " * + get.bbl.editor + capitalize + "(" swap$ * ")" * + * + } + if$ +} +FUNCTION {format.note} +{ + note empty$ + { "" } + { note #1 #1 substring$ + duplicate$ "{" = + 'skip$ + { output.state mid.sentence = + { "l" } + { "u" } + if$ + change.case$ + } + if$ + note #2 global.max$ substring$ * "note" bibinfo.check + } + if$ +} + +FUNCTION {format.title} +{ title + duplicate$ empty$ 'skip$ + { "t" change.case$ } + if$ + "title" bibinfo.check +} +FUNCTION {format.full.names} +{'s := + "" 't := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + "{vv~}{ll}" format.name$ + 't := + nameptr #1 > + { + namesleft #1 > + { ", " * t * } + { + s nameptr "{ll}" format.name$ duplicate$ "others" = + { 't := } + { pop$ } + if$ + t "others" = + { + " " * bbl.etal * + } + { + bbl.and + space.word * t * + } + if$ + } + if$ + } + 't + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ +} + +FUNCTION {author.editor.key.full} +{ author empty$ + { editor empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { editor format.full.names } + if$ + } + { author format.full.names } + if$ +} + +FUNCTION {author.key.full} +{ author empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { author format.full.names } + if$ +} + +FUNCTION {editor.key.full} +{ editor empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { editor format.full.names } + if$ +} + +FUNCTION {make.full.names} +{ type$ "book" = + type$ "inbook" = + or + 'author.editor.key.full + { type$ "proceedings" = + 'editor.key.full + 'author.key.full + if$ + } + if$ +} + +FUNCTION {output.bibitem} +{ newline$ + "\bibitem[{" write$ + label write$ + ")" make.full.names duplicate$ short.list = + { pop$ } + { * } + if$ + "}]{" * write$ + cite$ write$ + "}" write$ + newline$ + "" + before.all 'output.state := +} + +FUNCTION {n.dashify} +{ + 't := + "" + { t empty$ not } + { t #1 #1 substring$ "-" = + { t #1 #2 substring$ "--" = not + { "--" * + t #2 global.max$ substring$ 't := + } + { { t #1 #1 substring$ "-" = } + { "-" * + t #2 global.max$ substring$ 't := + } + while$ + } + if$ + } + { t #1 #1 substring$ * + t #2 global.max$ substring$ 't := + } + if$ + } + while$ +} + +FUNCTION {word.in} +{ bbl.in %capitalize + ":" * + " " * } + +FUNCTION {format.date} +{ year "year" bibinfo.check duplicate$ empty$ + { + } + 'skip$ + if$ + extra.label * + before.all 'output.state := + ", " swap$ * +} +FUNCTION {format.btitle} +{ title "title" bibinfo.check + duplicate$ empty$ 'skip$ + { + } + if$ +} +FUNCTION {either.or.check} +{ empty$ + 'pop$ + { "can't use both " swap$ * " fields in " * cite$ * warning$ } + if$ +} +FUNCTION {format.bvolume} +{ volume empty$ + { "" } + { bbl.volume volume tie.or.space.prefix + "volume" bibinfo.check * * + series "series" bibinfo.check + duplicate$ empty$ 'pop$ + { swap$ bbl.of space.word * swap$ + emphasize * } + if$ + "volume and number" number either.or.check + } + if$ +} +FUNCTION {format.number.series} +{ volume empty$ + { number empty$ + { series field.or.null } + { series empty$ + { number "number" bibinfo.check } + { output.state mid.sentence = + { bbl.number } + { bbl.number capitalize } + if$ + number tie.or.space.prefix "number" bibinfo.check * * + bbl.in space.word * + series "series" bibinfo.check * + } + if$ + } + if$ + } + { "" } + if$ +} + +FUNCTION {format.edition} +{ edition duplicate$ empty$ 'skip$ + { + output.state mid.sentence = + { "l" } + { "t" } + if$ change.case$ + "edition" bibinfo.check + " " * bbl.edition * + } + if$ +} +INTEGERS { multiresult } +FUNCTION {multi.page.check} +{ 't := + #0 'multiresult := + { multiresult not + t empty$ not + and + } + { t #1 #1 substring$ + duplicate$ "-" = + swap$ duplicate$ "," = + swap$ "+" = + or or + { #1 'multiresult := } + { t #2 global.max$ substring$ 't := } + if$ + } + while$ + multiresult +} +%FUNCTION {format.pages} +%{ pages duplicate$ empty$ 'skip$ +% { duplicate$ multi.page.check +% { +% n.dashify +% } +% { +% } +% if$ +% "pages" bibinfo.check +% } +% if$ +%} + +FUNCTION {format.pages} +{ pages duplicate$ empty$ 'skip$ + { duplicate$ multi.page.check + { + bbl.pages swap$ + n.dashify + } + { + bbl.page swap$ + } + if$ + tie.or.space.prefix + "pages" bibinfo.check + * * + } + if$ +} + +FUNCTION {format.journal.pages} +{ pages duplicate$ empty$ 'pop$ + { swap$ duplicate$ empty$ + { pop$ pop$ format.pages } + { + ", " * + swap$ + n.dashify + "pages" bibinfo.check + * + } + if$ + } + if$ +} +FUNCTION {format.vol.num.pages} +{ volume field.or.null + duplicate$ empty$ 'skip$ + { + "volume" bibinfo.check + } + if$ +} + +FUNCTION {format.chapter.pages} +{ chapter empty$ + { "" } + { type empty$ + { bbl.chapter } + { type "l" change.case$ + "type" bibinfo.check + } + if$ + chapter tie.or.space.prefix + "chapter" bibinfo.check + * * + } + if$ +} + +FUNCTION {format.booktitle} +{ + booktitle "booktitle" bibinfo.check +} +FUNCTION {format.in.ed.booktitle} +{ format.booktitle duplicate$ empty$ 'skip$ + { + editor "editor" format.names.ed duplicate$ empty$ 'pop$ + { + " " * + get.bbl.editor + capitalize + "(" swap$ * "), " * + * swap$ + * } + if$ + word.in swap$ * + } + if$ +} +FUNCTION {format.thesis.type} +{ type duplicate$ empty$ + 'pop$ + { swap$ pop$ + "t" change.case$ "type" bibinfo.check + } + if$ +} +FUNCTION {format.tr.number} +{ number "number" bibinfo.check + type duplicate$ empty$ + { pop$ bbl.techrep } + 'skip$ + if$ + "type" bibinfo.check + swap$ duplicate$ empty$ + { pop$ "t" change.case$ } + { tie.or.space.prefix * * } + if$ +} +FUNCTION {format.article.crossref} +{ + word.in + " \cite{" * crossref * "}" * +} +FUNCTION {format.book.crossref} +{ volume duplicate$ empty$ + { "empty volume in " cite$ * "'s crossref of " * crossref * warning$ + pop$ word.in + } + { bbl.volume + capitalize + swap$ tie.or.space.prefix "volume" bibinfo.check * * bbl.of space.word * + } + if$ + " \cite{" * crossref * "}" * +} +FUNCTION {format.incoll.inproc.crossref} +{ + word.in + " \cite{" * crossref * "}" * +} +FUNCTION {format.org.or.pub} +{ 't := + "" + address empty$ t empty$ and + 'skip$ + { + t empty$ + { address "address" bibinfo.check * + } + { t * + address empty$ + 'skip$ + { ", " * address "address" bibinfo.check * } + if$ + } + if$ + } + if$ +} +FUNCTION {format.publisher.address} +{ publisher "publisher" bibinfo.check format.org.or.pub +} + +FUNCTION {format.organization.address} +{ organization "organization" bibinfo.check format.org.or.pub +} + +FUNCTION {print.url} + {url duplicate$ empty$ + { pop$ "" } + { new.sentence + urlprefix "\url{" * swap$ * "}" * + } + if$ + } + +FUNCTION {print.doi} + {doi duplicate$ empty$ + { pop$ "" } + { new.sentence + doiprefix "\doi{" * swap$ * "}" * + } + if$ + } + +FUNCTION {print.eprint} + {eprint duplicate$ empty$ + { pop$ "" } + { new.sentence + duplicate$ "\href{http://arxiv.org/abs/" swap$ * "}{\tt arXiv:" * swap$ * "}" * } + if$ + } + +FUNCTION {print.pubmed} + {pubmed duplicate$ empty$ + { pop$ "" } + { new.sentence + pubmedprefix "\Pubmed{" * swap$ * "}" * + } + if$ + } + +FUNCTION {webpage} +{ "%Type = Webpage" write$ + output.bibitem + format.authors "author" output.check + author format.key output + author empty$ + { + format.title "title" output.check + new.block + format.date "year" output.check + date.block + } + { + format.date "year" output.check + date.block + format.title "title" output.check + new.block +} + if$ + print.url output + fin.entry +} + + +FUNCTION {article} +{ "%Type = Article" write$ + output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.title "title" output.check + new.block + crossref missing$ + { + journal + "journal" bibinfo.check + "journal" output.check + add.blank + format.vol.num.pages output + } + { format.article.crossref output.nonnull + } + if$ + format.journal.pages + new.block + print.url output + print.doi output + print.eprint output + print.pubmed output + format.note output + fin.entry +} + +FUNCTION {book} +{ "%Type = Book" write$ + output.bibitem + author empty$ + { format.editors "author and editor" output.check + editor format.key output + } + { format.authors output.nonnull + crossref missing$ + { "author and editor" editor either.or.check } + 'skip$ + if$ + } + if$ + format.date "year" output.check + date.block + format.btitle "title" output.check + crossref missing$ + { format.bvolume output + new.block + format.number.series output + format.edition output + new.sentence + format.publisher.address output + } + { + new.block + format.book.crossref output.nonnull + } + if$ + new.block + print.url output + print.doi output + print.eprint output + print.pubmed output + format.note output + fin.entry +} + +FUNCTION {booklet} +{ "%Type = Booklet" write$ + output.bibitem + format.authors output + author format.key output + format.date "year" output.check + date.block + format.title "title" output.check + new.block + howpublished "howpublished" bibinfo.check output + address "address" bibinfo.check output + new.block + print.url output + print.doi output + print.eprint output + print.pubmed output + format.note output + fin.entry +} + +FUNCTION {inbook} +{ "%Type = Inbook" write$ + output.bibitem + author empty$ + { format.editors "author and editor" output.check + editor format.key output + } + { format.authors output.nonnull + crossref missing$ + { "author and editor" editor either.or.check } + 'skip$ + if$ + } + if$ + format.date "year" output.check + date.block + format.btitle "title" output.check + format.edition output + crossref missing$ + { + format.publisher.address output + format.bvolume output + format.chapter.pages "chapter and pages" output.check + new.block + format.number.series output + new.sentence + } + { + format.chapter.pages "chapter and pages" output.check + new.block + format.book.crossref output.nonnull + } + if$ + format.pages "pages" output.check + new.block + print.url output + print.doi output + print.eprint output + print.pubmed output + format.note output + fin.entry +} + +FUNCTION {incollection} +{ "%Type = Incollection" write$ + output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.title "title" output.book.check + new.sentence + crossref missing$ + { format.in.ed.booktitle "booktitle" output.book.check + format.edition output + format.publisher.address output + format.bvolume output + format.number.series output + format.chapter.pages output + new.sentence + } + { format.incoll.inproc.crossref output.nonnull + format.chapter.pages output + } + if$ + format.pages "pages" output.check + new.block + print.url output + print.doi output + print.eprint output + print.pubmed output + format.note output + fin.entry +} + +FUNCTION {inproceedings} +{ "%Type = Inproceedings" write$ + output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.title "title" output.book.check + new.sentence + crossref missing$ + { format.in.ed.booktitle "booktitle" output.check + new.sentence + publisher empty$ + { format.organization.address output } + { organization "organization" bibinfo.check output + format.publisher.address output + } + if$ +% format.bvolume output +% format.number.series output +% format.pages output + } + { format.incoll.inproc.crossref output.nonnull + format.pages output + } + if$ + format.pages "pages" output.check + new.block + print.url output + print.doi output + print.eprint output + print.pubmed output + format.note output + fin.entry +} + +FUNCTION {conference} { inproceedings } + +FUNCTION {manual} +{ "%Type = Manual" write$ + output.bibitem + format.authors output + author format.key output + format.date "year" output.check + date.block + format.btitle "title" output.check + format.edition output + organization address new.block.checkb + organization "organization" bibinfo.check output + address "address" bibinfo.check output + new.block + print.url output + print.doi output + print.eprint output + print.pubmed output + format.note output + fin.entry +} + +FUNCTION {mastersthesis} +{ "%Type = Masterthesis" write$ + output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.btitle + "title" output.check + new.block + bbl.mthesis format.thesis.type output.nonnull + school "school" bibinfo.warn output + address "address" bibinfo.check output + new.block + print.url output + print.doi output + print.eprint output + print.pubmed output + format.note output + fin.entry +} + +FUNCTION {misc} +{ "%Type = Misc" write$ + output.bibitem + format.authors output + author format.key output + format.date "year" output.check + date.block + format.title output + new.block + howpublished "howpublished" bibinfo.check output + new.block + print.url output + print.doi output + print.eprint output + print.pubmed output + format.note output + fin.entry +} + +FUNCTION {phdthesis} +{ "%Type = Phdthesis" write$ + output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.btitle + "title" output.check + new.block + bbl.phdthesis format.thesis.type output.nonnull + school "school" bibinfo.warn output + address "address" bibinfo.check output + new.block + print.url output + print.doi output + print.eprint output + print.pubmed output + format.note output + fin.entry +} + +FUNCTION {proceedings} +{ "%Type = Proceedings" write$ + output.bibitem + format.editors output + editor format.key output + format.date "year" output.check + date.block + format.btitle "title" output.check + format.bvolume output + format.number.series output + new.sentence + publisher empty$ + { format.organization.address output } + { organization "organization" bibinfo.check output + format.publisher.address output + } + if$ + new.block + print.url output + print.doi output + print.eprint output + print.pubmed output + format.note output + fin.entry +} + +FUNCTION {techreport} +{ "%Type = Techreport" write$ + output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.btitle + "title" output.check + new.block + format.tr.number output.nonnull + institution "institution" bibinfo.warn output + address "address" bibinfo.check output + new.block + print.url output + print.doi output + print.eprint output + print.pubmed output + format.note output + fin.entry +} + +FUNCTION {unpublished} +{ "%Type = Unpublished" write$ + output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.title "title" output.check + new.block + print.url output + print.doi output + print.eprint output + print.pubmed output + format.note "note" output.check + fin.entry +} + +FUNCTION {default.type} { misc } +READ +FUNCTION {sortify} +{ purify$ + "l" change.case$ +} +INTEGERS { len } +FUNCTION {chop.word} +{ 's := + 'len := + s #1 len substring$ = + { s len #1 + global.max$ substring$ } + 's + if$ +} +FUNCTION {format.lab.names} +{ 's := + "" 't := + s #1 "{vv~}{ll}" format.name$ + s num.names$ duplicate$ + #2 > + { pop$ + " " * bbl.etal * + } + { #2 < + 'skip$ + { s #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" = + { + " " * bbl.etal * + } + { bbl.and space.word * s #2 "{vv~}{ll}" format.name$ + * } + if$ + } + if$ + } + if$ +} + +FUNCTION {author.key.label} +{ author empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { author format.lab.names } + if$ +} + +FUNCTION {author.editor.key.label} +{ author empty$ + { editor empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { editor format.lab.names } + if$ + } + { author format.lab.names } + if$ +} + +FUNCTION {editor.key.label} +{ editor empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { editor format.lab.names } + if$ +} + +FUNCTION {calc.short.authors} +{ type$ "book" = + type$ "inbook" = + or + 'author.editor.key.label + { type$ "proceedings" = + 'editor.key.label + 'author.key.label + if$ + } + if$ + 'short.list := +} + +FUNCTION {calc.label} +{ calc.short.authors + short.list + "(" + * + year duplicate$ empty$ + short.list key field.or.null = or + { pop$ "" } + 'skip$ + if$ + * + 'label := +} + +FUNCTION {sort.format.names} +{ 's := + #1 'nameptr := + "" + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + "{ll{ }}{ f{ }}{ jj{ }}" + format.name$ 't := + nameptr #1 > + { + " " * + namesleft #1 = t "others" = and + { "zzzzz" * } + { t sortify * } + if$ + } + { t sortify * } + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ +} + +FUNCTION {sort.format.title} +{ 't := + "A " #2 + "An " #3 + "The " #4 t chop.word + chop.word + chop.word + sortify + #1 global.max$ substring$ +} +FUNCTION {author.sort} +{ author empty$ + { key empty$ + { "to sort, need author or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { author sort.format.names } + if$ +} +FUNCTION {author.editor.sort} +{ author empty$ + { editor empty$ + { key empty$ + { "to sort, need author, editor, or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { editor sort.format.names } + if$ + } + { author sort.format.names } + if$ +} +FUNCTION {editor.sort} +{ editor empty$ + { key empty$ + { "to sort, need editor or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { editor sort.format.names } + if$ +} +FUNCTION {presort} +{ calc.label + label sortify + " " + * + type$ "book" = + type$ "inbook" = + or + 'author.editor.sort + { type$ "proceedings" = + 'editor.sort + 'author.sort + if$ + } + if$ + #1 entry.max$ substring$ + 'sort.label := + sort.label + * + " " + * + title field.or.null + sort.format.title + * + #1 entry.max$ substring$ + 'sort.key$ := +} + +ITERATE {presort} +SORT +STRINGS { last.label next.extra } +INTEGERS { last.extra.num number.label } +FUNCTION {initialize.extra.label.stuff} +{ #0 int.to.chr$ 'last.label := + "" 'next.extra := + #0 'last.extra.num := + #0 'number.label := +} +FUNCTION {forward.pass} +{ last.label label = + { last.extra.num #1 + 'last.extra.num := + last.extra.num int.to.chr$ 'extra.label := + } + { "a" chr.to.int$ 'last.extra.num := + "" 'extra.label := + label 'last.label := + } + if$ + number.label #1 + 'number.label := +} +FUNCTION {reverse.pass} +{ next.extra "b" = + { "a" 'extra.label := } + 'skip$ + if$ + extra.label 'next.extra := + extra.label + duplicate$ empty$ + 'skip$ +% { "{\natexlab{" swap$ * "}}" * } + { "" swap$ * "" * } + if$ + 'extra.label := + label extra.label * 'label := +} +EXECUTE {initialize.extra.label.stuff} +ITERATE {forward.pass} +REVERSE {reverse.pass} +FUNCTION {bib.sort.order} +{ sort.label + " " + * + year field.or.null sortify + * + " " + * + title field.or.null + sort.format.title + * + #1 entry.max$ substring$ + 'sort.key$ := +} +ITERATE {bib.sort.order} +SORT +FUNCTION {begin.bib} +{ preamble$ empty$ + 'skip$ + { preamble$ write$ newline$ } + if$ + "\begin{thebibliography}{" number.label int.to.str$ * "}" * + write$ newline$ + "\expandafter\ifx\csname natexlab\endcsname\relax\def\natexlab#1{#1}\fi" + write$ newline$ + "\providecommand{\url}[1]{\texttt{#1}}" + write$ newline$ + "\providecommand{\href}[2]{#2}" + write$ newline$ + "\providecommand{\path}[1]{#1}" + write$ newline$ + "\providecommand{\DOIprefix}{doi:}" + write$ newline$ + "\providecommand{\ArXivprefix}{arXiv:}" + write$ newline$ + "\providecommand{\URLprefix}{URL: }" + write$ newline$ + "\providecommand{\Pubmedprefix}{pmid:}" + write$ newline$ + "\providecommand{\doi}[1]{\href{http://dx.doi.org/#1}{\path{#1}}}" + write$ newline$ + "\providecommand{\Pubmed}[1]{\href{pmid:#1}{\path{#1}}}" + write$ newline$ + "\providecommand{\bibinfo}[2]{#2}" + write$ newline$ + "\ifx\xfnm\relax \def\xfnm[#1]{\unskip,\space#1}\fi" + write$ newline$ +} +EXECUTE {begin.bib} +EXECUTE {init.state.consts} +EXECUTE {init.web.variables} +ITERATE {call.type$} +FUNCTION {end.bib} +{ newline$ + "\end{thebibliography}" write$ newline$ +} +EXECUTE {end.bib} +%% End of customized bst file +%% +%% End of file `model2-names.bst'. +%% +%% Change log: +%% ----------- +%% 22.04.2011 +%% +%% 10.08.2012 +%% a. doi, url, eprint, pmid added +%% b. Bibtype `webpage' defined +%% +%% 30.08.2012 +%% a. collaboration added. +%% diff --git a/Master/texmf-dist/doc/latex/els-cas-template/refs.bib b/Master/texmf-dist/doc/latex/els-cas-template/refs.bib new file mode 100644 index 00000000000..ba1cb22d730 --- /dev/null +++ b/Master/texmf-dist/doc/latex/els-cas-template/refs.bib @@ -0,0 +1,283 @@ +@ARTICLE{Fortunato2010, + author = {Fortunato, S.}, + title = {Community detection in graphs}, + journal = {Phys. Rep.-Rev. Sec. Phys. Lett.}, + volume = {486}, + year = {2010}, + pages = {75-174} +} + +@ARTICLE{NewmanGirvan2004, + author = {Newman, M. E. J. and Girvan, M.}, + title = {Finding and evaluating community structure in networks}, + journal = {Phys. Rev. E.}, + volume = {69}, + year = {2004}, + pages = {026113} +} + +@ARTICLE{Vehlowetal2013, + author = {Vehlow, C. and Reinhardt, T. and Weiskopf, D.}, + title = {Visualizing Fuzzy Overlapping Communities in Networks}, + journal = {IEEE Trans. Vis. Comput. Graph.}, + volume = {19}, + year = {2013}, + pages = {2486-2495} +} + +@ARTICLE{Raghavanetal2007, + author = {Raghavan, U. and Albert, R. and Kumara, S.}, + title = {Near linear time algorithm to detect community structures in large-scale networks}, + journal = {Phys. Rev E.}, + volume = {76}, + year = {2007}, + pages = {036106} +} + +@ARTICLE{SubeljBajec2011a, + author = {\v{S}ubelj, L. and Bajec, M.}, + title = {Robust network community detection using balanced propagation}, + journal = {Eur. Phys. J. B.}, + volume = {81}, + year = {2011}, + pages = {353-362} +} + +@ARTICLE{Louetal2013, + author = {Lou, H. and Li, S. and Zhao, Y.}, + title = {Detecting community structure using label propagation with weighted coherent neighborhood propinquity}, + journal = {Physica A.}, + volume = {392}, + year = {2013}, + pages = {3095-3105} +} + +@ARTICLE{Clausetetal2004, + author = {Clauset, A. and Newman, M. E. J. and Moore, C.}, + title = {Finding community structure in very large networks}, + journal = {Phys. Rev. E.}, + volume = {70}, + year = {2004}, + pages = {066111} +} + +@ARTICLE{Blondeletal2008, + author = {Blondel, V. D. and Guillaume, J. L. and Lambiotte, R. and Lefebvre, E.}, + title = {Fast unfolding of communities in large networks}, + journal = {J. Stat. Mech.-Theory Exp.}, + volume = {2008}, + year = {2008}, + pages = {P10008} +} + +@ARTICLE{SobolevskyCampari2014, + author = {Sobolevsky, S. and Campari, R.}, + title = {General optimization technique for high-quality community detection in complex networks}, + journal = {Phys. Rev. E.}, + volume = {90}, + year = {2014}, + pages = {012811} +} + +@ARTICLE{FortunatoBarthelemy2007, + author = {Fortunato, S. and Barthelemy, M.}, + title = {Resolution limit in community detection}, + journal = {Proc. Natl. Acad. Sci. U. S. A.}, + volume = {104}, + year = {2007}, + pages = {36-41} +} + +@ARTICLE{SubeljBajec2011b, + author = {\v{S}ubelj, L. and Bajec, M.}, + title = {Unfolding communities in large complex networks: Combining defensive and offensive label propagation for core extraction}, + journal = {Phys. Rev. E.}, + volume = {83}, + year = {2011}, + pages = {036103} +} + +@ARTICLE{WangLi2013, + author = {Wang, X. and Li, J.}, + title = {Detecting communities by the core-vertex and intimate degree in complex networks}, + journal = {Physica A.}, + volume = {392}, + year = {2013}, + pages = {2555-2563} +} + +@ARTICLE{Lietal2013, + author = {Li, J. and Wang, X. and Eustace, J.}, + title = {Detecting overlapping communities by seed community in weighted complex networks}, + journal = {Physica A.}, + volume = {392}, + year = {2013}, + pages = {6125-6134} +} + +@ARTICLE{Fabioetal2013, + author = {Fabio, D. R. and Fabio, D. and Carlo, P.}, + title = {Profiling core-periphery network structure by random walkers}, + journal = {Sci. Rep.}, + volume = {3}, + year = {2013}, + pages = {1467} +} + +@ARTICLE{Chenetal2013, + author = {Chen, Q. and Wu, T. T. and Fang, M.}, + title = {Detecting local community structure in complex networks based on local degree central nodes}, + journal = {Physica A.}, + volume = {392}, + year = {2013}, + pages = {529-537} +} + +@ARTICLE{Zhangetal2007, + author = {Zhang, S. and Wang, R. and Zhang, X.}, + title = {Identification of overlapping community structure in complex networks using fuzzy c-means clustering}, + journal = {Physica A.}, + volume = {374}, + year = {2007}, + pages = {483-490} +} + +@ARTICLE{Nepuszetal2008, + author = {Nepusz, T. and Petr\'oczi, A. and N\'egyessy, L. and Bazs\'o, F.}, + title = {Fuzzy communities and the concept of bridgeness in complex networks}, + journal = {Phys. Rev. E.}, + volume = {77}, + year = {2008}, + pages = {016107} +} + +@ARTICLE{FabricioLiang2013, + author = {Fabricio, B. and Liang, Z.}, + title = {Fuzzy community structure detection by particle competition and cooperation}, + journal = {Soft Comput.}, + volume = {17}, + year = {2013}, + pages = {659-673} +} + +@ARTICLE{Sunetal2011, + author = {Sun, P. and Gao, L. and Han, S.}, + title = {Identification of overlapping and non-overlapping community structure by fuzzy clustering in complex networks}, + journal = {Inf. Sci.}, + volume = {181}, + year = {2011}, + pages = {1060-1071} +} + +@ARTICLE{Wangetal2013, + author = {Wang, W. and Liu, D. and Liu, X. and Pan, L.}, + title = {Fuzzy overlapping community detection based on local random walk and multidimensional scaling}, + journal = {Physica A.}, + volume = {392}, + year = {2013}, + pages = {6578-6586} +} + +@ARTICLE{Psorakisetal2011, + author = {Psorakis, I. and Roberts, S. and Ebden, M. and Sheldon, B.}, + title = {Overlapping community detection using Bayesian non-negative matrix factorization}, + journal = {Phys. Rev. E.}, + volume = {83}, + year = {2011}, + pages = {066114} +} + +@CONFERENCE{ZhangYeung2012, + author = {Zhang, Y. and Yeung, D.}, + title = {Overlapping Community Detection via Bounded Nonnegative Matrix Tri-Factorization}, + booktitle = {In Proc. ACM SIGKDD Conf.}, + year = {2012}, + pages = {606-614} +} + +@ARTICLE{Liu2010, + author = {Liu, J.}, + title = {Fuzzy modularity and fuzzy community structure in networks}, + journal = {Eur. Phys. J. B.}, + volume = {77}, + year = {2010}, + pages = {547-557} +} + +@ARTICLE{Havensetal2013, + author = {Havens, T. C. and Bezdek, J. C. and Leckie, C., Ramamohanarao, K. and Palaniswami, M.}, + title = {A Soft Modularity Function For Detecting Fuzzy Communities in Social Networks}, + journal = {IEEE Trans. Fuzzy Syst.}, + volume = {21}, + year = {2013}, + pages = {1170-1175} +} + +@misc{Newman2013, + author = {Newman, M. E. J.}, + title = {Network data}, + howpublished = "\url{http://www-personal.umich.edu/~mejn/netdata/}", + year = {2013} +} + +@ARTICLE{SubeljBajec2012, + author = {\v{S}ubelj, L. and Bajec, M.}, + title = {Ubiquitousness of link-density and link-pattern communities in real-world networks}, + journal = {Eur. Phys. J. B.}, + volume = {85}, + year = {2012}, + pages = {1-11} +} + +@ARTICLE{Lancichinettietal2008, + author = {Lancichinetti, A. and Fortunato, S. and Radicchi, F.}, + title = {Benchmark graphs for testing community detection algorithms}, + journal = {Phys. Rev. E.}, + volume = {78}, + year = {2008}, + pages = {046110} +} + +@ARTICLE{Liuetal2014, + author = {Liu, W. and Pellegrini, M. and Wang, X.}, + title = {Detecting Communities Based on Network Topology}, + journal = {Sci. Rep.}, + volume = {4}, + year = {2014}, + pages = {5739} +} + +@ARTICLE{Danonetal2005, + author = {Danon, L. and Diaz-Guilera, A. and Duch, J. and Arenas, A.}, + title = {Comparing community structure identification}, + journal = {J. Stat. Mech.-Theory Exp.}, + volume = {}, + year = {2005}, + pages = {P09008} +} + +@ARTICLE{Gregory2011, + author = {Gregory, S.}, + title = {Fuzzy overlapping communities in networks}, + journal = {J. Stat. Mech.-Theory Exp.}, + volume = {}, + year = {2011}, + pages = {P02017} +} + +@ARTICLE{LancichinettiFortunato2009, + author = {Lancichinetti, A. and Fortunato, S.}, + title = {Benchmarks for testing community detection algorithms on directed and weighted graphs with overlapping communities}, + journal = {Phys. Rev. E.}, + volume = {80}, + year = {2009}, + pages = {016118} +} + +@CONFERENCE{HullermeierRifqi2009, + author = {Hullermeier, E. and Rifqi, M.}, + title = {A Fuzzy Variant of the Rand Index for Comparing Clustering Structures}, + booktitle = {in Proc. IFSA/EUSFLAT Conf.}, + year = {2009}, + pages = {1294-1298} +} diff --git a/Master/texmf-dist/doc/latex/els-cas-template/thumbnails/email.jpeg b/Master/texmf-dist/doc/latex/els-cas-template/thumbnails/email.jpeg Binary files differnew file mode 100644 index 00000000000..a403e1ff107 --- /dev/null +++ b/Master/texmf-dist/doc/latex/els-cas-template/thumbnails/email.jpeg diff --git a/Master/texmf-dist/doc/latex/els-cas-template/thumbnails/facebook.jpeg b/Master/texmf-dist/doc/latex/els-cas-template/thumbnails/facebook.jpeg Binary files differnew file mode 100644 index 00000000000..0d2ce9e8d63 --- /dev/null +++ b/Master/texmf-dist/doc/latex/els-cas-template/thumbnails/facebook.jpeg diff --git a/Master/texmf-dist/doc/latex/els-cas-template/thumbnails/gplus.jpeg b/Master/texmf-dist/doc/latex/els-cas-template/thumbnails/gplus.jpeg Binary files differnew file mode 100644 index 00000000000..54e2a08f06f --- /dev/null +++ b/Master/texmf-dist/doc/latex/els-cas-template/thumbnails/gplus.jpeg diff --git a/Master/texmf-dist/doc/latex/els-cas-template/thumbnails/linkedin.jpeg b/Master/texmf-dist/doc/latex/els-cas-template/thumbnails/linkedin.jpeg Binary files differnew file mode 100644 index 00000000000..9108517f72f --- /dev/null +++ b/Master/texmf-dist/doc/latex/els-cas-template/thumbnails/linkedin.jpeg diff --git a/Master/texmf-dist/doc/latex/els-cas-template/thumbnails/twitter.jpeg b/Master/texmf-dist/doc/latex/els-cas-template/thumbnails/twitter.jpeg Binary files differnew file mode 100644 index 00000000000..055617dff76 --- /dev/null +++ b/Master/texmf-dist/doc/latex/els-cas-template/thumbnails/twitter.jpeg diff --git a/Master/texmf-dist/doc/latex/els-cas-template/thumbnails/url.jpeg b/Master/texmf-dist/doc/latex/els-cas-template/thumbnails/url.jpeg Binary files differnew file mode 100644 index 00000000000..dfd411e0109 --- /dev/null +++ b/Master/texmf-dist/doc/latex/els-cas-template/thumbnails/url.jpeg diff --git a/Master/texmf-dist/tex/latex/els-cas-template/cas-common.sty b/Master/texmf-dist/tex/latex/els-cas-template/cas-common.sty new file mode 100644 index 00000000000..688390fce95 --- /dev/null +++ b/Master/texmf-dist/tex/latex/els-cas-template/cas-common.sty @@ -0,0 +1,2359 @@ +%% +%% This is file `cas-common.sty', +%% +%% This file is part of the 'CAS Bundle'. +%% ...................................... +%% +%% It may be distributed under the conditions of the LaTeX Project Public +%% License, either version 1.2 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.2 or later is part of all distributions of LaTeX +%% version 1999/12/01 or later. +%% +%% The list of all files belonging to the 'CAS Bundle' is +%% given in the file `manifest.txt'. +%% + +% $Id: cas-common.sty 12 2019-03-19 06:03:53Z rishi $ + + \def\RCSfile{cas-common}% + \def\RCSversion{1.0}% + \def\RCSdate{2019/02/11}% +\NeedsTeXFormat{LaTeX2e}[1995/12/01] + +\ExplSyntaxOn +\makeatletter +% +% Front matter macros +% +% The front matter macros are derived/adopted from stm-prelims.sty +% written by CV Radhakrishnan <cvr@cvr.cc> and copyrighted by him. +% Usage of those macros and methods are gratefully acknowledged. +% + +\keys_define:nn { stm / title } + { + mode .choice: , + mode / title .meta:n = + { + type = title , + size = \LARGE , + shape = \upshape , + weight = \mdseries , + color = black , + before = 0pt , + after = 0pt , + align = \raggedright , + } , + mode / alt .meta:n = + { + type = alt , + size = \large , + shape = \upshape , + weight = \mdseries , + color = black , + before = 6pt , + after = 0pt , + align = \raggedright , + } , + mode / sub .meta:n = + { + type = sub , + size = \large , + shape = \upshape , + weight = \mdseries , + color = black!80 , + before = 6pt , + after = 0pt , + align = \raggedright , + } , + mode / trans .meta:n = + { + type = trans , + size = \normalsize , + shape = \upshape , + weight = \mdseries , + color = black!60 , + before = 6pt , + after = 0pt , + align = \raggedright , + } , + mode / transsub .meta:n = + { + type = transsub , + size = \small , + shape = \upshape , + weight = \mdseries , + color = black!50 , + before = 6pt , + after = 0pt , + align = \raggedright , + } , + mode / ascii .meta:n = + { + type = ascii , + size = \small\ttfamily , + shape = \upshape , + weight = \mdseries , + color = black , + before = 12pt , + after = 0pt , + align = \raggedright , + } , + type .tl_set:N = \l_stm_title_type_tl , + size .tl_set:N = \l_stm_title_size_tl , + shape .tl_set:N = \l_stm_title_shape_tl , + weight .tl_set:N = \l_stm_title_weight_tl , + before .dim_set:N = \l_stm_title_before_dim , + after .dim_set:N = \l_stm_title_after_dim , + align .tl_set:N = \l_stm_title_align_tl , + color .tl_set:N = \l_stm_title_color_tl , + } + +\NewDocumentCommand \processTmarks { } + { + \cs_if_free:cTF { mark@title } + { \ignorespaces } + { \tl_set:Nx \l_tmpa_tl { \cs:w mark@title\cs_end: } + \clist_map_inline:cn { mark@title } + { + \str_case:nn { ##1 } + { + { 1 } { $^\star$ } + { 2 } { $^{,\star\star}$ } + { 3 } { $^{,\star\star\star}$ } + } + } + } + } + +\RenewDocumentCommand \title { O{} m } + { + \pdfstringdef \@pdftitle { #2 } + \csgdef { casprelimstitle } { #2 } + \keys_set:nn { stm / title } { #1 } + \seq_gput_right:Nn \g_stm_title_seq + { + \keys_set:nn { stm / title } { #1 } +% \msg_term:n { MODE:~\l_stm_title_mode_tl ~ ~ [#2]} + \par \vskip \l_stm_title_before_dim + \l_stm_title_align_tl + \l_stm_title_size_tl + \l_stm_title_shape_tl + \l_stm_title_weight_tl + \color { \l_stm_title_color_tl } + #2 + \tl_set:Nn \l_tmpa_tl { title } + \tl_if_eq:NNTF \l_stm_title_type_tl \l_tmpa_tl + { \processTmarks } { } + \par \vskip \l_stm_title_after_dim + \normalcolor \normalsize \normalfont + } + } + +% \gappto\usestmtitle{#1}% + +\renewcommand \@title { \seq_use:Nn \g_stm_title_seq { } } + +\NewDocumentCommand \wrAun { m } % unexpanded write to aux + { \iow_now:Nn \@auxout { #1 } } +\NewDocumentCommand \wrAux { m } % expanded write to aux + { \iow_now:Nx \@auxout { #1 } } + +\NewDocumentCommand \wrShipAux { m } % expanded write at shipout + { \iow_shipout:Nx \@auxout { #1 } } +\NewDocumentCommand \wrShipAun { m } % unexpanded write at shipout + { \iow_shipout:Nn \@auxout { #1 } } + +\NewDocumentCommand \stmLabel { m } + { + \@bsphack \wrAux + { \token_to_str:N \NewLabel { #1 } + { \@currentlabel } + } \@esphack + } +\NewDocumentCommand \NewLabel { m m } + { + \cs_if_free:cTF { X@#1: } + { \cs_new:cx { X@#1: } { #2 } } + { \cs_set:cx { X@#1: } { #2 } } + } +\NewDocumentCommand \stmRef { m } + { + \cs_if_free:cTF { X@#1: } + { 0 } {\use:c {X@#1:} } + } + +\seq_clear_new:N \l_fnmk_seq +\NewDocumentCommand \processFnRef { m } + { + \seq_clear:N \l_fnmk_seq + \clist_map_inline:nn { #1 } + { \seq_put_right:Nx \l_fnmk_seq + {\cs_if_free:cTF { X@##1: } {0} { \use:c {X@##1:} }} + } + } + +\NewDocumentCommand \fnmark { O{} } + { \writemarks { fnau\theau@ } { #1 } } + + +\NewDocumentCommand \fnref { m } + { + \processFnRef { #1 } + \wrAux { \token_to_str:N \csxdef {mark@fnau\theau@} + { \seq_use:Nn \l_fnmk_seq { , } } } + } + +\NewDocumentCommand \corref { m } + { + \str_set:Nx \l_tmpa_str { \stmRef { #1 } } + \wrAux { \token_to_str:N \csxdef { mark@corau\theau@ } + { + \cs_if_free:cTF { X@#1: } {0} { \use:c {X@#1:} } + } + } + } + +\NewDocumentCommand \cormark { O{} } + { + \@cormarktrue + \writemarks {corau\theau@} { #1 } + } + +\seq_new:N \l_stm_au_seq +\seq_new:N \l_stm_au_sn_seq +\seq_new:N \l_stm_au_fn_seq +\seq_new:N \l_stm_au_ead_seq +\seq_new:N \l_stm_au_orcid_seq +\seq_new:N \l_stm_au_contrib_role_seq + +\NewDocumentCommand \parsename { m } + { \seq_set_split:Nnn \l_stm_au_seq { ~ } {#1} + \seq_pop_right:NN \l_stm_au_seq \l_stm_au_sn_seq + \seq_map_inline:Nn \l_stm_au_seq + { \seq_put_right:Nx \l_stm_au_ead_seq + { \tl_head:n { #1 }. } } + } + +\NewDocumentCommand \invparsename { m } + { \seq_set_split:Nnn \l_stm_au_seq { ~ } {#1} + \seq_pop_left:NN \l_stm_au_seq \l_stm_au_sn_seq + \seq_map_inline:Nn \l_stm_au_seq + { \seq_put_right:Nx \l_stm_au_ead_seq + { \tl_head:n { #1 }. } } + } + + +\NewDocumentCommand \surname {} { \l_stm_au_sn_seq } +\NewDocumentCommand \firstname {} + { \seq_use:Nn \l_stm_au_seq { ~ } } +\NewDocumentCommand \eadauthor {} + { \seq_map_inline:Nn \l_stm_au_seq + { \regex_match:nnTF { \. } { ##1 } + { ##1 } + { \tl_head:n {##1}. } + } + {~} \l_stm_au_sn_seq + } +\cs_set_eq:NN \shortauthor \eadauthor + +\seq_clear_new:N \l_affmk_seq +\NewDocumentCommand \processAffRef { m } + { + \seq_clear:N \l_affmk_seq + \clist_map_inline:nn { #1 } + { + \seq_put_right:Nx \l_affmk_seq + {\stmRef{##1}} + } + } + +\NewDocumentCommand \processAffNum { m } + { + \seq_clear:N \l_affmk_seq + \clist_map_inline:nn { #1 } + { + \seq_put_right:Nn \l_affmk_seq + { \int_to_alph:n {##1} } + } + } + +\NewDocumentCommand \listAff { } + { + \tl_if_blank:nTF { \l_affmk_seq } + { \tl_gset:Nn \g_stm_comma_tl { 0 } } + { + \seq_use:Nn \l_affmk_seq { , } + \tex_def:D \sep{\unskip,} + } + } + +\NewDocumentCommand \ead { O{} m } + { + \tl_if_empty:nTF { #1 } { \@ead {#2} } { \@uad[#1]{#2} } + } + +\NewDocumentCommand \eadsep { } { } + +\int_new:N \g_ead_int +\seq_new:N \g_stm_ead_seq +\int_new:N \g_uad_int +\seq_new:N \g_stm_uad_seq +\seq_new:N \g_stm_orcid_seq +\seq_new:N \g_stm_contrib_role_seq + +\newcommand\theead { \int_use:N \g_ead_int } + +\NewDocumentCommand \@uad { O{} m } + { + \group_begin: + \wrAux { \token_to_str:N \urlauthor + { \exp_not:n {#2}}{\the\@eadauthor}}% + \group_end: + } + +\NewDocumentCommand \urlauthor { m m } + { + \int_gincr:N \g_uad_int + \seq_gput_right:Nn \g_stm_uad_seq + { + { %\ttfamily \tl_to_str:n + \url{ #1 } } + \parsename { #2 } + \space(\eadauthor) + } + } +\NewDocumentCommand \@stmuads { } + { \seq_use:Nn \g_stm_uad_seq { ;~ } } + +\NewDocumentCommand \@ead { m } + { + \group_begin: + \wrAux { \token_to_str:N \emailauthor + { \exp_not:n { #1 }}{ \the\@eadauthor }} + \group_end: + } + +\newtoks \@eadauthor +\newbool{@cormark} + +\NewDocumentCommand \emailauthor { m m } + { + \int_gincr:N \g_ead_int + \seq_gput_right:Nn \g_stm_ead_seq + { + { \ttfamily \tl_to_str:n { #1 } } + \parsename { #2 } + \space(\eadauthor)% + } + } + +\NewDocumentCommand \@elseads { } + { \seq_use:Nn \g_stm_ead_seq { ;~ } } + + +\NewDocumentCommand \printemails { } +{ + \group_begin: + \int_compare:nNnTF { \int_use:N \g_ead_int } > { 0 } + { + \tex_let:D \thefootnote \relax \footnotetext + { + \raggedright + \bool_if:NTF \g_stm_nologo_bool + { + \int_compare:nTF { \g_ead_int = 1 } + { \textit{Email~address:\c_space_token} } + { \textit{Email~addresses:\c_space_token} } + } + { \includegraphics[height=8pt]{thumbnails/email.jpeg}\c_space_token } + \seq_use:Nn \g_stm_ead_seq { ;~ } + } + } + { } + \group_end: +} + +\NewDocumentCommand \printurls { } +{ + \group_begin: + \int_compare:nTF { \g_uad_int > 0 } + { + \tex_let:D \thefootnote \relax \footnotetext + { + \raggedright + \bool_if:NTF \g_stm_nologo_bool + { \textit{URL:\c_space_token} } + { \includegraphics[height=8pt]{thumbnails/url.jpeg}\c_space_token } + \seq_use:Nn \g_stm_uad_seq { ;~ } + } + } + { } + \group_end: +} + +% +% orcid +% +\NewDocumentCommand \orcidauthor { m m } + { + \seq_gput_right:Nn \g_stm_orcid_seq + { + { \ttfamily \tl_to_str:n { #1 } } + \parsename{#2} + \space(\eadauthor) + } + } + +\NewDocumentCommand \printorcid { } +{ + \group_begin: + \tex_let:D \thefootnote \relax \footnotetext + { + \raggedright + \textsc{orcid}(s):\c_space_token + \seq_use:Nn \g_stm_orcid_seq { ;~ } + } + \group_end: +} + +% +% Contrib Role +% + +\seq_gclear_new:N \g_stm_credits_seq + +\NewDocumentCommand \ContribRole { m } +{ + \wrAux { \token_to_str:N \creditauthor + { #1 } { \the\@eadauthor } } +} + +\NewDocumentCommand \creditauthor { m m } +{ + \seq_gput_right:Nx \g_stm_credits_seq + { { \exp_not:N\bfseries #2 :}\space #1 } +} + +\cs_set_eq:NN \credit \ContribRole + +\NewDocumentCommand \printcredits { } +{ + \seq_if_empty:NF \g_stm_credits_seq + { + \section*{CRediT ~authorship ~contribution ~statement} + \seq_use:Nn \g_stm_credits_seq { .~ }. + } +} + +\NewDocumentCommand \writemarks { m m } + { \wrAux { \token_to_str:N \csgdef{mark@#1}{#2} } } + +\seq_new:N \g_stm_title_seq + +\NewDocumentCommand \tnotemark { O{} } + { \writemarks { title } { #1 } } + +\NewDocumentCommand \@tnoteref { m } + { \int_set:Nn \l_tmpa_int { 0 } + \clist_map_inline:nn { #1 } + { +% \msg_term:n { ##1 .. [\cs:w X@##1:\cs_end:] } + \cs_if_free:cTF { X@##1: } + { \csdef{X@##1:}{0} } + { + \tl_set:Nx \l_tmpa_tl { \cs:w X@##1:\cs_end: } + \int_case:nn { \l_tmpa_tl } + { + { 1 } { $^\star$ } + { 2 } { $^{,\star\star}$ } + { 3 } { $^{,\star\star\star}$ } + } + } + } + } + +\seq_new:N \g_stm_tnote_seq +\int_new:N \g_stm_tnote_int + +\NewDocumentCommand \tnotetext { O{} m } + { + \tl_if_head_eq_catcode:nNTF { #1 } a + { + \msg_term:n { [TNOTE:~alpha] }% + \seq_gput_right:Nn \g_stm_tnote_seq + { \int_incr:N \g_stm_tnote_int + \str_set:Nx \@currentlabel { \int_use:N \g_stm_tnote_int } + \stmLabel { #1 } + \renewcommand\thefootnote + { \int_case:nn { \g_stm_tnote_int } + { + { 1 } { $^\star$ } + { 2 } { $^{\star\star}$ } + { 3 } { $^{\star\star\star}$ } + } + } + \footnotetext { #2 } + } + } + { + \msg_term:n { [TNOTE:~Number] } + \seq_gput_right:Nn \g_stm_tnote_seq + { + \int_set:Nn \l_tmpa_int { #1 } + \renewcommand\thefootnote + { \int_case:nn { \l_tmpa_int } + { + { 1 } { $^\star$ } + { 2 } { $^{\star\star}$ } + { 3 } { $^{\star\star\star}$ } + } + } + \footnotetext { #2 } + } + } + } + +\newcommand \printtnotes { \seq_use:Nn \g_stm_tnote_seq { \par } } + +\seq_new:N \g_stm_nonumnote_seq + +\NewDocumentCommand \nonumnote { m } +{ + \group_begin: + \seq_gput_right:Nn \g_stm_nonumnote_seq + { + \tex_def:D \thefootnote { } + \footnotetext{#1} + } + \group_end: +} + +\newcommand \printnonumnotes { \seq_use:Nn \g_stm_nonumnote_seq { \par } } + +\seq_new:N \g_stm_fnote_seq +\int_new:N \g_stm_fnote_int + +\NewDocumentCommand \fntext { O{} m } +{ + \tl_if_head_eq_catcode:nNTF { #1 } a + { + \msg_term:n { [FN:~alpha] }% + \seq_gput_right:Nn \g_stm_fnote_seq + { \int_incr:N \g_stm_fnote_int + \str_set:Nx \@currentlabel { \int_use:N \g_stm_fnote_int } + \stmLabel { #1 } + \tex_def:D \thefootnote { \int_use:N \g_stm_fnote_int } + \footnotetext { #2 } + } + } + { + \msg_term:n { [FN:~Number] } + \seq_gput_right:Nn \g_stm_fnote_seq + { + \int_set:Nn \l_tmpa_int { #1 } + \tex_def:D \thefootnote { \int_use:N \l_tmpa_int } + \footnotetext { #2 } + } + } +} + +\newcommand \printfnotes { \seq_use:Nn \g_stm_fnote_seq { \par } } + +\seq_new:N \g_stm_cor_seq +\int_new:N \g_stm_cor_int + +\NewDocumentCommand \cortext { O{} m } +{ + \tl_if_head_eq_catcode:nNTF { #1 } a + { + \msg_term:n { [COR:~alpha] }% + \seq_gput_right:Nn \g_stm_cor_seq + { \int_incr:N \g_stm_cor_int + \str_set:Nx \@currentlabel { \int_use:N \g_stm_cor_int } + \stmLabel { #1 } + \tex_def:D \thefootnote + { \int_case:nn { \g_stm_cor_int } + { + { 1 } { $\ast$ } + { 2 } { $\ast\!\ast$ } + { 3 } { $\ast\!\ast\!\ast$ } + } + } + \footnotetext { #2 } + } + } + { + \msg_term:n { [COR:~Number] } + \seq_gput_right:Nn \g_stm_cor_seq + { + \int_set:Nn \l_tmpa_int { #1 } + \tex_def:D \thefootnote + { \int_case:nn { \l_tmpa_int } + { + { 1 } { $\ast$ } + { 2 } { $\ast\!\ast$ } + { 3 } { $\ast\!\ast\!\ast$ } + } + } + \footnotetext { #2 } + } + } +} + +\newcommand \printcornotes { \seq_use:Nn \g_stm_cor_seq { \par } } + +\NewDocumentCommand \process@marks { } + { + \cs_if_free:cTF { mark@corau\theauthor } + { \ignorespaces } + { \str_set:Nx \l_tmpa_str { \use:c{ mark@corau\theauthor } } + \int_case:nn { \l_tmpa_str } + { + { 1 } { \sep$\ast$ } + { 2 } { \sep$\ast\ast$ } + { 3 } { \sep$\ast\!\ast\!\ast$ } + } + \tex_def:D \sep{\unskip,} + } + \cs_if_free:cTF { mark@fnau\theauthor } + { \ignorespaces } + { \sep\use:c { mark@fnau\theauthor } + \tex_def:D \sep{\unskip,} + } + } + + +% +% Author macros +% +\seq_new:c { g_stm_au0_seq } +\seq_new:c { g_stm_clau0_seq } +\int_new:N \g_stm_au_int +\int_new:N \g_stm_aau_int + +\NewDocumentCommand \ResetMarks { } + { + \keys_set:nn { stm / author } + { + auid = {} , + bioid = {} , + alt = {} , + style = { normal } , + prefix = {} , + suffix = {} , + degree = {} , + role = {} , + orcid = {} , + collab = { false } , + type = { author } , + anon = { false } , + deceased = { false } , + twitter = {} , + facebook = {} , + linkedin = {} , + plus = {} , + gplus = {} , + } + \tex_gdef:D \sep{} + \tex_gdef:D \stm@corref{} + \tex_gdef:D \@fnmark {} + } + + +\int_new:N \l_autype_int +\keys_define:nn { stm / author } + { + auid .tl_set:N = \l_stm_au_id_tl , + bioid .tl_set:N = \l_stm_au_bioid_tl , + alt .tl_set:N = \l_stm_au_alt_tl , + style .tl_set:N = \l_stm_au_style_tl , + prefix .tl_set:N = \l_stm_au_prefix_tl , + suffix .tl_set:N = \l_stm_au_suffix_tl , + degree .tl_set:N = \l_stm_au_degree_tl , + role .tl_set:N = \l_stm_au_role_tl , + orcid .tl_set:N = \l_stm_au_orcid_tl , + collab .bool_set:N = \l_stm_au_collab_bool , + type .multichoice:, + type/author .code:n = { \int_set:Nn \l_autype_int { 0 } }, + type/editor .code:n = { \int_set:Nn \l_autype_int { 1 } }, + type/collab .code:n = { \int_set:Nn \l_autype_int { 2 } }, + type/anon .code:n = { \int_set:Nn \l_autype_int { 3 } }, +% type/collab .bool_set:N = \l_stm_au_collab_bool , +% type/anon .bool_set:N = \l_stm_au_anon_bool , + anon .bool_set:N = \l_stm_au_anon_bool , + deceased .bool_set:N = \l_stm_au_deceased_bool , + twitter .tl_set:N = \l_stm_au_twitter_tl , + facebook .tl_set:N = \l_stm_au_facebook_tl , + linkedin .tl_set:N = \l_stm_au_linkedin_tl , + plus .tl_set:N = \l_stm_au_gplus_tl , + gplus .tl_set:N = \l_stm_au_gplus_tl , + } + +\keys_set:nn { stm / author } + { + auid = {} , + bioid = {} , + alt = {} , + style = { normal } , + prefix = {} , + suffix = {} , + degree = {} , + role = {} , + orcid = {} , + collab = { false } , + type = { author } , + anon = { false } , + deceased = { false } , + twitter = {} , + facebook = {} , + linkedin = {} , + plus = {} , + gplus = {} , + } + +\keys_define:nn { stm / ausetup } + { + type .choice: , + type / authors .meta:n = + { + size = \large , + shape = \upshape , + weight = \mdseries , + before = \bigskipamount , + after = 0pt , + align = \raggedright , + color = black , + lskip = 0pt , + rskip = 0pt , + } , + type / collaboration .meta:n = + { + size = \Large , + shape = \upshape , + weight = \mdseries , + before = \bigskipamount , + after = 0pt , + align = \raggedright , + color = black , + lskip = 0pt , + rskip = 0pt , + } , + size .tl_set:N = \l_stm_augroup_size_tl , + shape .tl_set:N = \l_stm_augroup_shape_tl , + weight .tl_set:N = \l_stm_augroup_weight_tl , + before .dim_set:N = \l_stm_augroup_before_dim , + after .dim_set:N = \l_stm_augroup_after_dim , + align .tl_set:N = \l_stm_augroup_align_tl , + color .tl_set:N = \l_stm_augroup_color_tl , + lskip .dim_set:N = \l_stm_augroup_lskip_tl , + rskip .dim_set:N = \l_stm_augroup_rskip_tl , + } + +\DeclareDocumentCommand \stmAuthorSetup { m } + { \keys_set:nn { stm / ausetup } { #1 } } +\DeclareDocumentCommand \stmausetup { m } + { \tl_set:Nn \l_stm_au_setup_tl + { \keys_set:nn { stm / ausetup } { #1 } } + } +\DeclareDocumentCommand \stmclbsetup { m } + { \tl_set:Nn \l_stm_clb_setup_tl + { \keys_set:nn { stm / ausetup } { #1 } } + } + +\stmausetup { } +\stmclbsetup { } + +\seq_new:N \g_stm_maltese_seq +\seq_new:N \g_stm_facebook_seq +\seq_new:N \g_stm_twitter_seq +\seq_new:N \g_stm_gplus_seq +\seq_new:N \g_stm_linkedin_seq +\bool_new:N \g_stm_nologo_bool +\bool_gset_false:N \g_stm_nologo_bool + +\NewDocumentCommand \twitterauthor { m m } + { + \seq_gput_right:Nn \g_stm_twitter_seq + { + \parsename { #2 } + \url{https://twitter.com/\tl_to_str:n{#1}}\space(\eadauthor) + } + } +\NewDocumentCommand \facebookauthor { m m } + { + \seq_gput_right:Nn \g_stm_facebook_seq + { + \parsename { #2 } + \url{https://www.facebook.com/\tl_to_str:n{#1}}\space(\eadauthor) % + } + } +\NewDocumentCommand \gplusauthor { m m } + { + \seq_gput_right:Nn \g_stm_gplus_seq + { + \parsename { #2 } + \url{https://plus.google.com/\tl_to_str:n{#1}}\space(\eadauthor)% + } + } +\NewDocumentCommand \linkedinauthor { m m } + { + \seq_gput_right:Nn \g_stm_linkedin_seq + { + \parsename { #2 } + \url{https://www.linkedin.com/profile/view?id=\tl_to_str:n{#1}}% + \space(\eadauthor) + } + } + +\NewDocumentCommand \printmaltese { } + { + \seq_use:Nn { \g_stm_maltese_seq } { } + } +\NewDocumentCommand \printfacebook { } + { + \seq_if_empty:NTF \g_stm_facebook_seq { } + { + \tex_def:D \thefootnote{} + \footnotetext + { + \bool_if:NTF \g_stm_nologo_bool + { Facebook:\c_space_token } + { \includegraphics[height=8pt]{thumbnails/facebook.jpeg}\c_space_token } + \seq_use:Nn \g_stm_facebook_seq {,\c_space_token } + } + } + } +\NewDocumentCommand \printtwitter { } + { + \seq_if_empty:NTF \g_stm_twitter_seq { } + { + \tex_def:D \thefootnote{} + \footnotetext + { + \bool_if:NTF \g_stm_nologo_bool + { Twitter:\c_space_token } + { \includegraphics[height=8pt]{thumbnails/twitter.jpeg}\c_space_token } + \seq_use:Nn \g_stm_twitter_seq {,\c_space_token } + } + } + } +\NewDocumentCommand \printgplus { } + { + \seq_if_empty:NTF \g_stm_gplus_seq { } + { + \tex_def:D \thefootnote{} + \footnotetext + { + \bool_if:NTF \g_stm_nologo_bool + { Google+:\c_space_token } + { \includegraphics[height=8pt]{thumbnails/gplus.jpeg}\c_space_token } + \seq_use:Nn \g_stm_gplus_seq {,\c_space_token } + } + } + } +\NewDocumentCommand \printlinkedin { } + { + \seq_if_empty:NTF \g_stm_linkedin_seq { } + { + \tex_def:D \thefootnote{} + \footnotetext + { + \bool_if:NTF \g_stm_nologo_bool + { LinkedIn:\c_space_token } + { \includegraphics[height=8pt]{thumbnails/linkedin.jpeg}\c_space_token } + \seq_use:Nn \g_stm_linkedin_seq {,\c_space_token } + } + } + } + +\seq_new:N \g_stm_prelimsau_seq + +\csxdef{infoauthors}{} +\cs_new:Nn \no_break_space: { \nobreak{~} \penalty 10000 } +\RenewDocumentCommand \author { O{} m O{} } + { + \ResetMarks + \tl_if_blank:nTF { #3 } { } + { \keys_set:nn { stm / author } { #3 } } +% + \int_gincr:N \g_stm_au_int + \tex_gdef:D \theau@ { \int_use:N \g_stm_au_int } +% + \seq_gput_right:Nn \g_stm_prelimsau_seq { #2 } + \bool_if:NTF \l_stm_au_collab_bool + { \seq_gput_right:cn { g_stm_clau\int_use:N \g_stm_augr_int _seq } } + { \seq_gput_right:cn { g_stm_au\int_use:N \g_stm_augr_int _seq } } + { + \int_gincr:N \g_stm_aau_int + \tex_gdef:D \theauthor {\int_use:N \g_stm_aau_int } + \keys_set:nn { stm /author } { #3 } + \tl_if_head_eq_catcode:nNTF { #1 } a + { \processAffRef { #1 } } + { \processAffNum { #1 } } + \tl_if_empty:NF \l_stm_au_prefix + { \l_stm_au_prefix_tl \c_space_token } + \str_if_eq:VnTF \l_stm_au_style_tl { chinese } + { %\msg_term:n {STYLE~T=\l_stm_au_style_tl........} + \invparsename { #2 } + \textcolor{\l_stm_augroup_color_tl}{\surname} + \no_break_space: + \textcolor{\l_stm_augroup_color_tl !50}{\firstname} + } + { %\msg_term:n {STYLE~F=\l_stm_au_style_tl........} + \parsename { #2 } + \textcolor{\l_stm_augroup_color_tl !50}{\firstname} + \no_break_space: + \textcolor{\l_stm_augroup_color_tl}{\surname} + } + \tl_if_empty:NF \l_stm_au_suffix_tl + { \c_space_token \l_stm_au_suffix_tl } + \unskip + \textsuperscript + { + \tl_if_blank:nTF { #1 } + { \tex_def:D \sep{} } + { {\itshape\listAff} \tex_def:D \sep{\unskip,} } + \process@marks + \bool_if:NT \l_stm_au_deceased_bool + { \sep \maltese + \tex_def:D \sep { \unksip, } + } + } + \tl_if_empty:NF \l_stm_au_degree_tl + { ,\c_space_token \l_stm_au_degree_tl } + \tl_if_empty:NF \l_stm_au_role_tl + { \c_space_token (\l_stm_au_role_tl) } +% + \ResetMarks + } +% + \bool_if:NT \l_stm_au_deceased_bool + { + \seq_gput_right:Nn \g_stm_maltese_seq + { + \tex_def:D \thefootnote { \maltese } + \footnotetext{Deceased~author.} + } + } +% various social media + \tl_if_empty:NTF \l_stm_au_facebook_tl { } + { + \wrAux { \token_to_str:N \facebookauthor + { \l_stm_au_facebook_tl } { \exp_not:n {#2} } } + } + \tl_if_empty:NF \l_stm_au_twitter_tl + { + \wrAux { \token_to_str:N \twitterauthor + { \l_stm_au_twitter_tl } { \exp_not:n {#2} } } + } + \tl_if_empty:NF \l_stm_au_gplus_tl + { + \wrAux { \token_to_str:N \gplusauthor + { \l_stm_au_gplus_tl } { \exp_not:n {#2} } } + } + \tl_if_empty:NF \l_stm_au_linkedin_tl + { + \wrAux { \token_to_str:N \linkedinauthor + { \l_stm_au_linkedin_tl } { \exp_not:n {#2} } } + } + \tl_if_empty:NF \l_stm_au_orcid_tl + { + \wrAux { \token_to_str:N \orcidauthor + { \l_stm_au_orcid_tl } { \exp_not:n {#2} } } + } +% + \@eadauthor={#2} + \pdfstringdef\__info_au: { #2 } + \int_compare:nNnTF { \theau@ } < { 4 } + { \xappto \infoauthors { \__info_au: , ~ } } + { + \int_compare:nNnTF { \theau@ } = { 4 } + { \xappto \infoauthors { et~al. } } + { } + } + } + +\NewDocumentCommand \stmauthors { } + { + \group_begin: + \stmAuthorSetup { type = authors } + \l_stm_au_setup_tl + \par \vskip\l_stm_augroup_before_dim + \l_stm_augroup_align_tl + \l_stm_augroup_size_tl + \l_stm_augroup_shape_tl + \l_stm_augroup_weight_tl + \color{ \l_stm_augroup_color_tl } + \bool_if:NTF \g_stm_augr_bool + { \seq_use:Nn \g_stm_augr_seq { \par } } + { + \seq_use:cnnn { g_stm_au\int_use:N\g_stm_augr_int _seq } + { ,~ } { ,~ } { ~and~ } + } + \par\vskip\l_stm_augroup_after_dim + \group_end: + } + +\seq_new:c { g_stm_collab0_seq } +\bool_new:N \g_stm_in_clau_bool + +\NewDocumentCommand \stmcollab { } + { + \bool_if:NTF \g_stm_augr_bool + { } + { + \group_begin: + \stmAuthorSetup { type = collaboration } + \l_stm_clb_setup_tl + \par \vskip \l_stm_augroup_before_dim + \l_stm_augroup_align_tl + \l_stm_augroup_size_tl + \l_stm_augroup_shape_tl + \l_stm_augroup_weight_tl + \color{ \l_stm_augroup_color_tl } + \seq_use:cn {g_stm_collab\int_use:N \g_stm_aaugr_int _seq} { } + \seq_use:cnnn {g_stm_clau\int_use:N \g_stm_aaugr_int _seq} + { ~and~ } { ,~ } { ~and~ } + \par \vskip \l_stm_augroup_after_dim + \group_end: + } + } + +\newenvironment{collaboration}[1][] + { + \seq_gput_right:cn {g_stm_collab\int_use:N \g_stm_augr_int _seq} + { \textit{Collaboration:~} #1 \par \smallskip } + } + { } + +\NewDocumentCommand \dept { m } { #1 } +\NewDocumentCommand \divn { m } { #1 } +\NewDocumentCommand \aline { m } { #1 } +\NewDocumentCommand \city { m } { #1 } +\NewDocumentCommand \cnty { m } { #1 } +\NewDocumentCommand \phone { m } { #1 } +\NewDocumentCommand \fax { m } { #1 } +\NewDocumentCommand \aurl { m } { #1 } + +\seq_new:c { g_stm_aff0_seq } +\int_new:N \g_stm_aff_int +\tl_new:N \l_addrtype_tl + +\keys_define:nn { stm / address } + { + foot .bool_gset:N = \g_stm_addr_foot_bool , + name .tl_set:N = \l_stm_addr_name_tl , + type .multichoice: , + type/alt .code:n = { \tl_set:Nn \l_stm_addr_type_tl + { Alternate~address } } , + type/addl .code:n = { \tl_set:Nn \l_stm_addr_type_tl + { Additional~address } } , + type/regular .code:n = { \tl_set:Nn \l_stm_addr_type_tl + { } } , + type/custom .code:n = { \tl_set:Nn \l_stm_addr_type_tl + { \l_stm_addr_name_tl } } , + } +\DeclareDocumentCommand \stmAddrSetup { m } + { \keys_set:nn { stm / address } { #1 } } + +\keys_set:nn { stm / address } +{ + foot = { false } , + type = { regular } , + name = { Alternate~address } , +} + +\cs_new:Nn \__reset_addr: +{ + \bool_gset_false:N \g_stm_addr_foot_bool + \tl_set:Nn \l_stm_addr_type_tl { } + \tl_set:Nn \l_stm_addr_name_tl { Alternate~address } +} + +\seq_new:N \g_stm_aff_foot_seq + +\NewDocumentCommand \printaddrinfoot { } + { + { \seq_use:Nn \g_stm_aff_foot_seq { \par } } + } + +\NewDocumentCommand \address { O{} m O{} } + { + \__reset_addr: + \keys_set:nn { stm / address } { #3 } + \bool_if:NTF \g_stm_addr_foot_bool + { \__foot_address:nnn [#1]{#2}[#3] } + { + \seq_gput_right:cn { g_stm_aff\int_use:N \g_stm_augr_int _seq } + { \tl_if_blank:nTF { #1 } + { + \tex_xdef:D \thefootnote{} + { #2 } + } + { + \tl_if_head_eq_catcode:nNTF { #1 } a + { + \int_gincr:N \g_stm_aff_int + \tex_xdef:D \@currentlabel + { \int_to_alph:n { \int_use:N \g_stm_aff_int } } + \stmLabel {#1} + \textsuperscript{\itshape\@currentlabel} #2 + } + { + \int_gset:Nn \g_stm_aff_int { #1 } + \tex_xdef:D \@currentlabel + { \int_to_alph:n { \int_use:N \g_stm_aff_int } } + \textsuperscript{\itshape\@currentlabel} #2 + } + } + } + } + } + +\cs_new:Npn \__foot_address:nnn [#1]#2[#3] +{ + \keys_set:nn { stm / address } { #3 } + \seq_gput_right:cn { g_stm_aff_foot_seq } + { + \tl_if_empty:nTF { #1 } + { + \tl_if_empty:NTF \l_stm_addr_type_tl + { \footnotetext{#2} } + { + \footnotetext{\textit{\l_stm_addr_type_tl}: + \c_space_token #2 } + } + } + { + \tl_if_head_eq_catcode:nNTF { #1 } a + % + { + \tex_def:D \thefootnote{\itshape\@currentlabel} + \tl_if_empty:NTF \l_stm_addr_type_tl + { \footnotetext{#2} } + { \footnotetext{\textit{\l_stm_addr_type_tl}: \c_space_token #2} } + } + { + \tex_def:D \thefootnote { \itshape\int_to_alph:n { #1 } } + \tl_if_empty:NTF \l_stm_addr_type_tl + { \footnotetext{#2} } + { \footnotetext{\textit{\l_stm_addr_type_tl}: + \c_space_token #2 } } + } + } + } +} + +\keys_define:nn { stm / affsetup } + { + type .choice: , + type / normal .code:n = + { \tl_set:Nn \l_stm_aff_type_tl { 0 } } , + type / nonum .code:n = + { \tl_set:Nn \l_stm_aff_type_tl { 1 } } , + + size .tl_set:N = \l_stm_aff_size_tl , + shape .tl_set:N = \l_stm_aff_shape_tl , + weight .tl_set:N = \l_stm_aff_weight_tl , + before .dim_set:N = \l_stm_aff_before_dim , + after .dim_set:N = \l_stm_aff_after_dim , + align .tl_set:N = \l_stm_aff_align_tl , + color .tl_set:N = \l_stm_aff_color_tl , + lskip .dim_set:N = \l_stm_aff_lskip_dim , + rskip .dim_set:N = \l_stm_aff_rskip_dim , + } + +\DeclareDocumentCommand \stmAffSetup { m } + { \keys_set:nn { stm / affsetup } { #1 } } +\DeclareDocumentCommand \stmaffsetup { m } + { \tl_set:Nn \l_stm_aff_setup_tl + { \keys_set:nn { stm / affsetup } { #1 } } + } +\stmaffsetup { + size = \footnotesize, + shape = \itshape, + color = black, + before = 0pt, + weight = \mdseries, + align = \raggedright, + } + +\NewDocumentCommand \stmaddress { } + { + \bool_if:NTF \g_stm_augr_bool + { } + { + \group_begin: + \stmAffSetup { type = normal } + \l_stm_aff_setup_tl + \par \vskip\l_stm_aff_before_dim + \l_stm_aff_align_tl + \l_stm_aff_size_tl + \l_stm_aff_shape_tl + \l_stm_aff_weight_tl + \color{ \l_stm_aff_color_tl } + \seq_use:cn { g_stm_aff\int_use:N \g_stm_aaugr_int _seq } + { \par\vskip2pt } + \par\vskip\l_stm_aff_after_dim + \group_end: + } + } + +\int_new:N \g_stm_augr_int +\seq_new:N \g_stm_augr_seq +\int_new:N \g_stm_aaugr_int +\bool_new:N \g_stm_augr_bool + +\NewDocumentEnvironment { augroup } { } + { + \bool_gset_true:N \g_stm_augr_bool + \int_gincr:N \g_stm_augr_int + \seq_new:c {g_stm_au\int_use:N \g_stm_augr_int _seq} + \seq_new:c {g_stm_aff\int_use:N \g_stm_augr_int _seq} + \seq_new:c {g_stm_collab\int_use:N \g_stm_augr_int _seq} + \seq_new:c {g_stm_clau\int_use:N \g_stm_augr_int _seq} + \msg_term:n { AUGR:~\int_use:N \g_stm_augr_int ... } + } + { + \seq_gput_right:Nn \g_stm_augr_seq + { + \int_gincr:N \g_stm_aaugr_int + \group_begin: + \stmAuthorSetup { type = collaboration } + \l_stm_clb_setup_tl + \par \vskip \l_stm_augroup_before_dim + \l_stm_augroup_align_tl + \l_stm_augroup_size_tl + \l_stm_augroup_shape_tl + \l_stm_augroup_weight_tl + \color{ \l_stm_augroup_color_tl } + \seq_use:cnnn { g_stm_au\int_use:N \g_stm_aaugr_int _seq } + { ~and~ } { ,~ } { ~and~ } + \par \vskip \l_stm_augroup_after_dim + \group_end: +% + \group_begin: + \stmAffSetup { type = normal } + \l_stm_aff_setup_tl + \par \vskip\l_stm_aff_before_dim + \l_stm_aff_align_tl + \l_stm_aff_size_tl + \l_stm_aff_shape_tl + \l_stm_aff_weight_tl + \color{ \l_stm_aff_color_tl } + \seq_use:cn { g_stm_aff\int_use:N \g_stm_aaugr_int _seq } + { \par \smallskip } + \par\vskip\l_stm_aff_after_dim + \msg_term:n { AAUGR:~\int_use:N \g_stm_aaugr_int ... } + \group_end: +% + \group_begin: + \stmAuthorSetup { type = collaboration } + \l_stm_clb_setup_tl + \par \vskip \l_stm_augroup_before_dim + \l_stm_augroup_align_tl + \l_stm_augroup_size_tl + \l_stm_augroup_shape_tl + \l_stm_augroup_weight_tl + \color{ \l_stm_augroup_color_tl } + \seq_use:cn {g_stm_collab\int_use:N \g_stm_aaugr_int _seq} { } + \seq_use:cnnn {g_stm_clau\int_use:N \g_stm_aaugr_int _seq} + { ~and~ } { ,~ } { ~and~ } + \par\vskip \l_stm_augroup_after_dim + \group_end: + } + } + +% +% Abstract +% +\RequirePackage{moreverb} + +\tex_gdef:D \abstractname { A\,B\,S\,T\,R\,A\,C\,T } +\tl_new:N \l_stm_abs_title_tl +\box_new:N \g_stm_abs_box + +\NewDocumentEnvironment { Abstract } { o } +{ +% \global\setbox \g_stm_abs_box = \vtop \bgroup +% \hsize = .65 \textwidth \parindent \z@ + \group_begin: + \IfNoValueTF { #1 } { } + { \tex_gdef:D \abstractname { #1 } } + \parindent \z@ + \box_if_empty:NTF \g_stm_key_box + { \leftskip = .35 \textwidth } + { + \dim_gset:Nn \l_tmpa_dim { \box_ht:N \g_stm_key_box } + \dim_gadd:Nn \l_tmpa_dim { \box_dp:N \g_stm_key_box } + \leftskip .35\textwidth + \hspace*{-.35 \textwidth } + \noindent\hbox_to_wd:nn { \z@ } { \box \g_stm_key_box } + \skip_vertical:n { - \l_tmpa_dim } + } + \noindent \abstractname \par + \skip_vertical:n { -4pt} + \noindent \rule{.65\textwidth}{.2pt}\par \footnotesize + \ignorespaces \everypar { \parindent=1.5em } +} +{ \par \group_end: } + +\NewDocumentEnvironment { PrelimsAbstract } { O{} } + {\parindent=0pt + { \fontsize{14pt}{16pt}\selectfont #1 }\par + \vskip12pt + { \fontsize{12pt}{14pt}\bfseries\selectfont\casprelimstitle } \par + \vskip6pt + \seq_use:Nn \g_stm_prelimsau_seq { , } + \vskip12pt + \par + } + {} + +\RenewDocumentEnvironment { abstract } { o } +{ + \IfNoValueTF { #1 } { } + { \tex_gdef:D \abstracttitle { #1 } } + \verbatimwrite{\jobname.abs} +} +{ \endverbatimwrite } + +\newbox\casgrabsbox +\newbox\casauhlbox +\newbool { usecasgrabsbox } +\newbool { usecashlsbox } + +\DeclareDocumentEnvironment { graphicalabstract } { O{Graphical~Abstract} } +{ + \global \booltrue { usecasgrabsbox } + \global\setbox\casgrabsbox=\vbox\bgroup + \begin{PrelimsAbstract}[#1] + \noindent \ignorespaces +} +{ + \end{PrelimsAbstract} + \egroup +} + +\DeclareDocumentEnvironment { highlights } { O{Highlights} } +{ + \global \booltrue { usecashlsbox } + \global\setbox\casauhlbox=\vbox\bgroup + \begin{PrelimsAbstract}[#1] + \noindent \ignorespaces + \begin{itemize} +} +{ + \end{itemize} + \end{PrelimsAbstract} + \egroup +} + + +\NewDocumentCommand \dashrule { O{.4pt} m m } + { + \color{black!50} + \skip_vertical:n { #2 } + \noindent \rule { \linewidth } { #1} + \normalcolor \skip_vertical:n { #3 } + } + +\NewDocumentCommand \keywordtitle { } { Keywords } +\NewDocumentCommand \keywordtitlesep { } {:\c_space_token } +\box_new:N \g_stm_key_box + +\NewDocumentCommand \MSC { O{} m } + { + \par\noindent \textit { #1\c_space_token MSC:\c_space_token } #2 + } +\NewDocumentCommand \JEL { m } + { + \par\noindent \textit { JEL:\c_space_token } #1 + } +\NewDocumentCommand \PACS { m } + { + \par\noindent \textit { PACS:\c_space_token } #1 + } + +\NewDocumentEnvironment { keywords } { O{ Keywords } } + { + \tex_global:D \tex_setbox:D \g_stm_key_box = \vtop \bgroup + \hsize=.25 \textwidth + \cs_new:Nn \sep: { \par } + \cs_set_eq:NN \sep \sep: + \parindent \z@ + A\,R\,T\,I\,C\,L\,E\ \ I\,N\,F\,O \par \skip_vertical:n { -3pt } + \rule{.25 \textwidth}{.2pt}\par\footnotesize + \noindent \textit { #1 }: \par + } + { \egroup } + + +% +% Print all footnotes in the title page +% + +\bool_new:N \g_stm_longmktitle_bool +\int_new:N \g_stm_jtype_int +\int_new:N \g_stm_blind_int + +\NewDocumentCommand \printFirstPageNotes { } + { + \bool_if:NTF \g_stm_longmktitle_bool + { \tex_let:D \columnwidth = \textwidth } + { } + \int_compare:nTF { \g_stm_jtype_int > 5 } + { \stmaddress } + { } + \printtnotes + \printnonumnotes + \bool_if:NTF \g_stm_blind_bool + { } + { + \printcornotes + \printmaltese + \printaddrinfoot + \printemails + \printurls + \printorcid + \printfacebook + \printtwitter + \printgplus + \printlinkedin + \printfnotes + } + \bool_if:NTF \g_stm_longmktitle_bool + { + \if@twocolumn + \tex_let:D \columnwidth = \Columnwidth \fi + } + { } + \normalcolor + } + +% +% Date History +% +\tl_new:N \g_stm_recd_tl +\tl_new:N \g_stm_accd_tl +\tl_new:N \g_stm_revd_tl +\tl_new:N \g_stm_pub_online_tl +\tl_new:N \g_stm_pub_print_tl + +\cs_new:Npn \date_parse:n #1 { \date_parse_aux:w #1 \q_stop } +\cs_new:Npn \date_parse_aux:w #1 / #2 / #3 \q_stop +{ <do something with the date> } + +\NewDocumentCommand \received { m } + { \tl_gput_right:Nn \g_stm_recd_tl { #1 } } +\NewDocumentCommand \accepted { m } + { \tl_gput_right:Nn \g_stm_accd_tl { #1 } } +\NewDocumentCommand \revised { m } + { \tl_gput_right:Nn \g_stm_revd_tl { #1 } } +\NewDocumentCommand \published { O{} m } +{ + \tl_if_eq:nnTF { #1 } { online } + { \tl_if_gput_right:Nn \g_stm_pub_online_tl { #2 } } + { \tl_if_gput_right:Nn \g_stm_pub_print_tl { #2 } } +} + +% +% Verse/Recto +% +\tl_new:N \l_stm_verso_tl +\tl_new:N \l_stm_recto_tl + +\NewDocumentCommand \verso { m } +{ \tl_set:Nn \l_stm_verso_tl { #1 } } +\NewDocumentCommand \recto { m } +{ \tl_set:Nn \l_stm_recto_tl { #1 } } + +% +% Maketitle +% + +\newcounter{au} +\newcounter{cnote} +\newcounter{tnote} +\newcounter{fnote} +\newcounter{aff} + +\cs_new:Nn \__reset_title_counters: +{ + \setcounter{cnote}{0} + \setcounter{fnote}{0} + \setcounter{tnote}{0} + \setcounter{footnote}{0} +} + +\keys_define:nn { stm / mktitle } +{ + blind .bool_gset:N = \g_stm_blind_bool , + footer .multichoice:, + footer/default .tl_gset:N = \g_stm_footer_default_tl , + footer/custom .tl_gset:N = \g_stm_footer_custom_tl , + longtitle .bool_gset:N = \g_stm_longtitle_bool , + longabstract .bool_gset:N = \g_stm_longtitle_bool , + breakafter .clist_gset:N = \g_stm_breakafter_clist , + nologo .bool_gset:N = \g_stm_nologo_bool , +} + +\bool_new:N \g_stm_breakafter_title_bool +\bool_new:N \g_stm_breakafter_auaff_bool +\bool_new:N \g_stm_breakafter_abstract_bool + +\NewDocumentCommand \processbreakafter { } +{ + \clist_if_empty:NTF \g_stm_breakafter_clist { } + { + \clist_map_inline:Nn \g_stm_breakafter_clist + { \bool_gset_true:c { g_stm_breakafter_##1_bool } } + } +} + +\NewDocumentCommand \pprintMaketitle { O{} } +{ + \tl_if_blank:nTF { #1 } { } + { \keys_set:nn { stm / mktitle } { #1 } } + \processbreakafter + \clearpage + \__reset_title_counters: + \tex_def:D \baselinestretch { 1 } + \printFirstPageNotes + \thispagestyle{pprintTitle}% + \group_begin: + \@title + \group_end: + \bool_if:NTF \g_stm_breakafter_title_bool + { \newpage } { } + % + \bool_if:NTF \g_stm_blind_bool + { \vspace* { 10 mm } } + { + \group_begin: + \normalsize \stmauthors \par + \stmcollab \par + \footnotesize \itshape \stmaddress \par \vskip36pt + \group_end: + \bool_if:NTF \g_stm_breakafter_auaff_bool + { \newpage } { } + } + % + \printabsbox + \printkeybox + \bool_if:NTF \g_stm_breakafter_abstract_bool + { \newpage } { } + % + \setcounter{footnote}{\c@fnote} + \tex_gdef:D \thefootnote { \arabic{footnote} } + \tex_def:D \baselinestretch { \@blstr } + \normalfont \normalsize +} + +\NewDocumentCommand \MaketitleBox { } +{ + \tex_def:D \baselinestretch{1} + \group_begin: + \@title + \group_end: + % + \bool_if:NTF \g_stm_blind_bool + { \vspace* { 10 mm } } + { + \group_begin: + \normalsize \stmauthors \par + \stmcollab \par + \footnotesize \itshape \stmaddress \par + \group_end: + \bool_if:NTF \g_stm_breakafter_auaff_bool + { \newpage } { } + } + % \printFirstPageNotes + % + \dashrule{0pt}{3pt} + \begin{Abstract} + \noindent \ignorespaces + \file_if_exist:nT { \jobname.abs } { \file_input:n { \jobname.abs } } + \end{Abstract} + \dashrule{6pt}{3pt} + \bool_if:NTF \g_stm_breakafter_abstract_bool + { \newpage } { } +} + +\box_new:N \g_stm_notes_box +\box_new:N \g_stm_front_box +\cs_set:Npn \__fn_text:n #1 +{ \group_begin:\vbox_top:n { \footnotesize #1 } \group_end:\par} + +\NewDocumentCommand \LongMaketitleBox { } +{ + \vbox_gset:Nn \g_stm_front_box + { + \tex_def:D \baselinestretch{1} + \group_begin: + \@title + \group_end: + % + \group_begin: + \normalsize \stmauthors \par + \stmcollab \par + \footnotesize \itshape \stmaddress \par + \group_end: + % + \dashrule{0pt}{3pt} + \begin{Abstract} + \noindent \ignorespaces + \file_if_exist:nT { \jobname.abs } { \file_input:n { \jobname.abs } } + \end{Abstract} + \dashrule{3pt}{3pt} + } + \vbox_gset:Nn \g_stm_notes_box + { \cs_set_eq:NN \footnotetext \__fn_text:n \printFirstPageNotes } + \dim_gset:Nn \g_tmpb_dim { \box_ht:N \g_stm_notes_box } + % \iow_term:x { ...~[ht: \dim_use:N \g_tmpb_dim ] } + \dim_gadd:Nn \g_tmpb_dim { \box_dp:N \g_stm_notes_box } + % \iow_term:x { ...~[ht+dp: \dim_use:N \g_tmpb_dim ] } + \ifbool{sc}{\dim_gadd:Nn \g_tmpb_dim { 12pt } } { } + +} + +\NewDocumentCommand \ProcessLongTitleBox { } +{ + % \vbox_gset:Nn \g_stm_notes_box + % { \cs_set_eq:NN \footnotetext \__fn_text:n \printFirstPageNotes } + % \dim_gset:Nn \g_tmpb_dim { \box_ht:N \g_stm_notes_box } + % % \iow_term:x { ...~[ht: \dim_use:N \g_tmpb_dim ] } + % \dim_gadd:Nn \g_tmpb_dim { \box_dp:N \g_stm_notes_box } + % % \iow_term:x { ...~[ht+dp: \dim_use:N \g_tmpb_dim ] } + % + \dim_gset:Nn \g_tmpa_dim { \textheight } +% \vbox_unpack:N \g_stm_notes_box + % \iow_term:x { ...~[tmpa:~ \dim_use:N \g_tmpa_dim ] } + % \dim_gsub:Nn \g_tmpa_dim { \box_ht:N \g_stm_notes_box } + % \iow_term:x { ...~[tmpa-noteht:~ \dim_use:N \g_tmpa_dim ] } + % \dim_gsub:Nn \g_tmpa_dim { \box_dp:N \g_stm_notes_box } + % \iow_term:x { ...~[tmpa-notedp:~ \dim_use:N \g_tmpa_dim ] } + \dim_gsub:Nn \g_tmpa_dim { \g_tmpb_dim } + \vbox_set_split_to_ht:NNn \g_tmpb_box \g_stm_front_box { \g_tmpa_dim } + \noindent \vbox_unpack_clear:N \g_tmpb_box + \printFirstPageNotes + \dim_gzero:N \g_tmpa_dim + \dim_gset:Nn \g_tmpa_dim { \box_ht:N \g_stm_front_box } + % \iow_term:x { ...~[tmpa-ht:~ \dim_use:N \g_tmpa_dim ] } + \dim_gadd:Nn \g_tmpa_dim { \box_dp:N \g_stm_front_box } + % \iow_term:x { ...~[tmpa-ht+dp:~ \dim_use:N \g_tmpa_dim ~+~\the\textheight] } + \dim_compare:nNnTF { \dim_use:N \g_tmpa_dim } > { \the\textheight } + { + \vbox_set_split_to_ht:NNn \g_tmpb_box \g_stm_front_box { \textheight } + \vbox_unpack_clear:N \g_tmpb_box + \ifbool{dc} + { \twocolumn[{\vbox_unpack_clear:N \g_stm_front_box}] } + { \vbox_unpack_clear:N \g_stm_front_box } + } + { + \ifbool{dc} + { \twocolumn[{\vbox_unpack_clear:N \g_stm_front_box}] } + { \vbox_unpack_clear:N \g_stm_front_box } + } + \normalcolor \normalfont +} +\ExplSyntaxOff + +% +% Headings +% +\def\@seccntDot{.} +\def\@seccntformat#1{\csname the#1\endcsname\@seccntDot\hskip 0.5em} + +\newdimen\paraindent \paraindent=\parindent +\newdimen\subparaindent \subparaindent=\parindent +\def\ssssparaindent{} +\def\sectionfont{\rmfamily\fontsize{12pt}{14pt}% + \bfseries} +\def\ssectionfont{\rmfamily\fontsize{11pt}{13pt}% + \bfseries\selectfont} +\def\sssectionfont{\rmfamily\fontsize{10.5pt}{12pt}% + \fontseries{b}\fontshape{it}\selectfont} +\def\ssssectionfont{\rmfamily\fontsize{11pt}{10pt}\itshape\selectfont} +\def\sssssectionfont{\rmfamily\fontsize{11pt}{10pt}\selectfont}% + +\AtBeginDocument{\global\@afterindentfalse} + +\renewcommand\section{\@startsection{section}{1}{\z@}% + {15pt \@plus 3\p@ \@minus 3\p@}% + {4\p@}% + {%\let\@hangfrom\relax + \sectionfont\raggedright\hst[13pt]}} + +\renewcommand\subsection{\@startsection{subsection}{2}{\z@}% + {10pt \@plus 3\p@ \@minus 2\p@}% + {.1\p@}% + {%\let\@hangfrom\relax + \ssectionfont\raggedright }} + +\renewcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}% + {10pt \@plus 1\p@ \@minus .3\p@}% + {.1\p@}% + {%\let\@hangfrom\relax + \sssectionfont\raggedright}} + +\renewcommand\paragraph{\@startsection{paragraph}{4}{\parindent}% + {10pt \@plus0.01pt \@minus0.01pt}% + {-6pt}% + {\ssssparaindent% + \ssssectionfont\itshape\raggedright}} + +\renewcommand\subparagraph{\@startsection{subparagraph}{5}{\parindent}% + {0pt \@plus0.1pt \@minus0.1pt}% + {-6pt}% + {\hspace*{\subparaindent} + \sssssectionfont\raggedright}} + +\def\thesubsection{\thesection.\arabic{subsection}} +\def\thesubsubsection{\thesubsection.\arabic{subsubsection}} + +% +% Sundry lengths +% +\def\xstrut#1#2{\vrule height#1 depth #2 width\z@} +\def\hstrut#1{\vrule height#1 depth \z@ width 0pt} +\def\dstrut#1{\vrule height0pt depth#1 width 0pt} +\def\hst[#1]{\vrule height#1 depth \z@ width \z@} +\def\dst[#1]{\vrule height0pt depth#1 width 0pt} +\def\xst[#1][#2]{\vrule height#1 depth #2 width\z@} + +\def\lastpage{100} + +\AtEndDocument{% +% \clearpage + \immediate\write\@auxout{\string\csxdef{lastpage}{\thepage}} +} + +\ExplSyntaxOn + +% +% pagestyle +% + +\cs_new:Npn \__first_footerline: +{ + \group_begin: + \small + \sffamily \__short_authors: :~ + { \rmfamily \itshape Preprint~ submitted ~to ~Elsevier } + \group_end: +} + +\cs_new:Npn \__first_head: +{ + \parbox[t]{\textwidth} + { + \color{black!20} + \rule{\textwidth}{0pt} + } +} + + +\cs_new:Npn \__first_foot: +{ + \parbox[t]{\textwidth} + { + \rule{\textwidth}{.2pt}\\ + \__first_footerline: \hfill Page~ \thepage {} ~of~ \lastpage } +} + + +\cs_new:Npn \__cas_head: +{ + \parbox{\textwidth} + { + \sffamily\small\centering + \__short_title: + } + } + + +\cs_new:Npn \__cas_foot: +{ + \parbox[t]{\textwidth} + { + \rule{\textwidth}{.2pt}\\ + \sffamily\small + \__first_footerline: + \hfill Page~\thepage {}~of~ \lastpage + } +} + +\newcommand \ps@first + { + \cs_set_eq:NN \@oddhead \__first_head: + \cs_set_eq:NN \@evenhead \__first_head: + \cs_set_eq:NN \@evenfoot \__first_foot: + \cs_set_eq:NN \@oddfoot \__first_foot: + } + + +\newcommand \ps@cas +{ + \cs_set_eq:NN \@oddhead \__cas_head: + \cs_set_eq:NN \@evenhead \__cas_head: + \cs_set_eq:NN \@evenfoot \__cas_foot: + \cs_set_eq:NN \@oddfoot \__cas_foot: +} + +\ps@cas + + +% +% Floats +% + +\def\topfraction{.9} +\def\bottomfraction{.9} +\setcounter{topnumber}{4} +\setcounter{bottomnumber}{3} +\setcounter{totalnumber}{5} +\renewcommand\textfraction{.1} +\renewcommand\floatpagefraction{.9} +\setcounter{dbltopnumber}{2} +\renewcommand\dbltopfraction{.9} +\renewcommand\dblfloatpagefraction{.95} +\newdimen \FullWidth +\FullWidth=\textwidth + +\newcolumntype{L}{@{\extracolsep{\fill}}l} +\newcolumntype{R}{@{\extracolsep{\fill}}r} +\newcolumntype{C}{@{\extracolsep{\fill}}c} + +\cs_gset_eq:NN \thead \toprule +\cs_gset_eq:NN \endthead \midrule +\cs_gset_eq:NN \tabref \ref + +\dim_new:N \l_tbl_width_dim +\dim_set:Nn \l_tbl_width_dim { \linewidth } + +\cs_new:Npn \__make_tbl_caption:nn #1#2 +{ + \l_tbl_align_tl + \skip_vertical:N \l_tbl_abovecap_skip + % \bool_if:NTF \g_tbl_full_bool + % { + % \color{scolor!70}\rule{\FullWidth}{2pt}\normalcolor\\ + % } + % { \color{scolor!70}\rule{\tblwidth}{2pt}\normalcolor\\ } + % \fboxsep=4pt + % \colorbox{white} + {\parbox{ \dimexpr(\l_tbl_width_dim)} + {\rightskip=0pt\sffamily\small\textbf{\color{scolor}#1}\par#2\par\vskip4pt }} + \skip_vertical:N \l_tbl_belowcap_skip +} + +\keys_define:nn { cas / tbl } +{ + width .dim_set:N = \l_tbl_width_dim , + pos .tl_set:N = \l_tbl_pos_tl , + cols .tl_set:N = \l_tbl_cols_tl , + align .tl_set:N = \l_tbl_align_tl, + abovecap .skip_set:N = \l_tbl_abovecap_skip , + belowcap .skip_set:N = \l_tbl_belowcap_skip , + abovetbl .skip_set:N = \l_tbl_abovetbl_skip , + belowtbl .skip_set:N = \l_tbl_belowtbl_skip , + full .bool_gset:N = \g_tbl_full_bool , +} + +\cs_set:Npn \__reset_tbl: +{ + \tl_set:Nx \l_tbl_pos_tl { t } + \tl_set:Nx \l_tbl_cols_tl { 1 } + \tl_set:Nn \l_tbl_align_tl { \centering } + \skip_set:Nn \l_tbl_abovecap_skip { 6pt } + \skip_set:Nn \l_tbl_belowcap_skip { 0pt } + \skip_set:Nn \l_tbl_abovetbl_skip { 6pt } + \skip_set:Nn \l_tbl_belowtbl_skip { 6pt } + +} + +\RenewDocumentEnvironment { table } { O{} } +{ + \__reset_tbl: + \bool_gset_false:N \g_tbl_full_bool + \dim_set:Nn \l_tbl_width_dim { \linewidth } + \keys_set:nn { cas / tbl } { #1 } + \csxdef{fps@table}{\l_tbl_pos_tl} + \csgdef{tblwidth}{\dim_use:N \l_tbl_width_dim} + \cs_set_eq:NN \@makecaption \__make_tbl_caption:nn + \@float{table} + \l_tbl_align_tl + \sffamily\small +} +{ +\end@float +} + + +\RenewDocumentEnvironment { table* } { O{width=\FullWidth} } + { + \__reset_tbl: + \bool_gset_true:N \g_tbl_full_bool + \dim_set:Nn \l_tbl_width_dim { \FullWidth } + \keys_set:nn { cas / tbl } { #1 } + \csxdef{fps@table}{\l_tbl_pos_tl} + \csgdef{tblwidth}{\dim_use:N \l_tbl_width_dim} + \cs_set_eq:NN \@makecaption \__make_tbl_caption:nn + \@dblfloat{table} + \l_tbl_align_tl + \sffamily\small + % \leftskip=-\FullWidth + } + { + \end@dblfloat + } + + +\dim_new:N \l_fig_width_dim +\dim_set:Nn \l_fig_width_dim { \linewidth } + +\cs_new:Npn \__make_fig_caption:nn #1#2 +{ + \l_fig_align_tl + \skip_vertical:N \l_fig_abovecap_skip +% \bool_if:NTF \g_fig_full_bool +% { \skip_horizontal:n { -\FullWidth } } { } + \parbox{ \l_fig_width_dim } + {\rightskip=0pt\sffamily\small\textbf{\color{scolor}#1:}~#2\par } + \skip_vertical:N \l_fig_belowcap_skip +} + +\keys_define:nn { cas / fig } +{ + width .dim_set:N = \l_fig_width_dim , + pos .tl_set:N = \l_fig_pos_tl , + cols .tl_set:N = \l_fig_cols_tl , + align .tl_set:N = \l_fig_align_tl, + abovecap .skip_set:N = \l_fig_abovecap_skip , + belowcap .skip_set:N = \l_fig_belowcap_skip , + abovefig .skip_set:N = \l_fig_abovefig_skip , + belowfig .skip_set:N = \l_fig_belowfig_skip , + full .bool_gset:N = \g_fig_full_bool , +} + +\cs_set:Npn \__reset_fig: +{ + \tl_set:Nx \l_fig_pos_tl { t } + \tl_set:Nx \l_fig_cols_tl { 1 } + \tl_set:Nn \l_fig_align_tl { \raggedleft } + \skip_set:Nn \l_fig_abovecap_skip { 6pt } + \skip_set:Nn \l_fig_belowcap_skip { 6pt } + \skip_set:Nn \l_fig_abovefig_skip { 6pt } + \skip_set:Nn \l_fig_belowfig_skip { 6pt } + +} + +\RenewDocumentEnvironment { figure } { O{} } + { + \__reset_fig: + \bool_gset_false:N \g_fig_full_bool + \dim_set:Nn \l_fig_width_dim { \linewidth } + \keys_set:nn { cas / fig } { #1 } + \csxdef{fps@figure}{\l_fig_pos_tl} + \csgdef{figwidth}{\dim_use:N \l_fig_width_dim} + \cs_set_eq:NN \@makecaption \__make_fig_caption:nn + \@float{figure} + \l_fig_align_tl + \sffamily\small + } + { + \end@float + } + + +\RenewDocumentEnvironment { figure* } { O{width=\textwidth} } +{ + \__reset_fig: + \bool_gset_true:N \g_fig_full_bool + \dim_set:Nn \l_fig_width_dim { \FullWidth } + \keys_set:nn { cas / fig } { #1 } + \csxdef{fps@figure}{\l_fig_pos_tl} + \csgdef{figwidth}{\dim_use:N \l_fig_width_dim} + \cs_set_eq:NN \@makecaption \__make_fig_caption:nn + \@dblfloat{figure} + \l_fig_align_tl + \sffamily\small +% \leftskip=-\FullWidth +} +{ \end@dblfloat } + +% +% wrapped figure +% +\RequirePackage{wrapfig} + +\dim_new:N \l_wrap_figwidth_dim +\dim_new:N \l_wrap_fighspace_dim +\dim_new:N \l_wrap_figvspace_dim +\dim_new:N \l_wrap_fighcorr_dim +\dim_new:N \l_wrap_figvcorr_dim +\dim_new:N \l_above_bio_dim +\int_new:N \l_wrap_figlcorr_int +\int_new:N \l_wrap_figlines_int +\tl_new:N \l_wrap_figfile_tl + +\NewDocumentCommand \wfigwidth { m } + { \dim_set:Nn \l_wrap_figwidth_dim { #1 } } +\NewDocumentCommand \wfighspace { m } + { \dim_set:Nn \l_wrap_fighspace_dim { #1 } } +\NewDocumentCommand \wfigvspace { m } + { \dim_set:Nn \l_wrap_figvspace_dim { #1 } } +\NewDocumentCommand \wfighcorr { m } + { \dim_set:Nn \l_wrap_fighcorr_dim { #1 } } +\NewDocumentCommand \wfigvcorr { m } + { \dim_set:Nn \l_wrap_figvcorr_dim { #1 } } +\NewDocumentCommand \addfiglines { m } + { \int_set:Nn \l_wrap_figlcorr_int { #1 } } +\NewDocumentCommand \abovebioskip { m } + { \dim_set:Nn \l_above_bio_dim { #1 } } + +\cs_new:Nn \__fig_defaults: + { + \wfigwidth { 25.5mm } + \wfighspace { 0mm } + \wfigvspace { 0mm } + \wfighcorr { 0pt } + \wfigvcorr { -12pt } + \wfigvcorr { 0pt } + \abovebioskip { 12pt } + \tl_set:Nn \l_wrap_figpos_tl { l } + \int_set:Nn \l_wrap_figlines_int { 3 } + \int_set:Nn \l_wrap_figlcorr_int { 1 } + \tl_clear:N \l_wrap_figcap_tl + } + +\__fig_defaults: + +\keys_define:nn { wrap / fig } +{ + width .dim_set:N = \l_wrap_figwidth_dim , + hspace .dim_set:N = \l_wrap_fighspace_dim , + vspace .dim_set:N = \l_wrap_figvspace_dim , + hcorr .dim_set:N = \l_wrap_fighcorr_dim , + vcorr .dim_set:N = \l_wrap_figvcorr_dim , + lcorr .int_set:N = \l_wrap_figlcorr_int , + pos .tl_set:N = \l_wrap_figpos_tl , + lines .int_set:N = \l_wrap_figlines_int , + cap .tl_set:N = \l_wrap_figcap_tl , +} + +\cs_new:Npn \__find_fig_height:n #1 +{ + \box_clear:N \g_tmpa_box + \hbox_gset:Nn \g_tmpa_box + { \includegraphics [ width = \l_wrap_figwidth_dim ] { #1 } } + \dim_zero:N \l_tmpa_dim + \dim_set:Nn \l_tmpa_dim { \box_ht:N \g_tmpa_box } + \dim_add:Nn \l_tmpa_dim { \box_dp:N \g_tmpa_box } + \fp_set:Nn \l_tmpa_fp { \dim_to_fp:n { \l_tmpa_dim } } + \fp_set:Nn \l_tmpb_fp { \dim_to_fp:n { \baselineskip } } +% + \fp_set:Nn \l_wrap_figlines_fp + { \fp_eval:n { ( \l_tmpa_fp / \l_tmpb_fp ) + .5 } } + \int_set:Nn \l_wrap_figlines_int + { \fp_to_int:N \l_wrap_figlines_fp } +% + \iow_term:x { ...~wr-fig:~[BL:~\the\baselineskip] ~ ...} + \iow_term:x { ...~wr-fig:~[LINE-FP:~ \fp_use:N \l_wrap_figlines_fp]~ ...} + \iow_term:x { ...~wr-fig:~[LINE-INT:~ \int_use:N \l_wrap_figlines_int]~ ...} +} + +\newbox \l_bio_text_box + +\NewDocumentCommand \WrapFigure { o m } +{ + \__fig_defaults: + \IfNoValueTF { #1 } { } { \keys_set:nn { wrap / fig } { #1 } } + \stepcounter { ca_biography_ctr } + \__find_fig_height:n { #2 } + \dim_zero:N \l_tmpb_dim + \dim_set:Nn \l_tmpb_dim + { \l_wrap_figwidth_dim + \l_wrap_fighspace_dim } + \int_gadd:Nn \l_wrap_figlines_int { \int_use:N \l_wrap_figlcorr_int } + \setlength { \columnsep } { 5pt } + \setlength { \intextsep } { 0pt } +% \mbox{} + \ifbool { dc } + { \xdef\Columnwidth{238.25pt} } + { \xdef\Columnwidth{\the\textwidth} } + \ifcsundef { cabio\theca_biography_ctr lines } + { + \setbox \l_bio_text_box = \vbox \bgroup + \hsize = \dimexpr ( \Columnwidth - 72.28pt ) + } + { + \ifbool { dc } { + \int_gset:Nn \l_wrap_figlines_int + { \csuse { cabio\theca_biography_ctr lines } } + } { } + \skip_vertical:N \l_above_bio_dim + \begin{wrapfigure}[\int_use:N \l_wrap_figlines_int] + { \l_wrap_figpos_tl } + [ \dim_use:N \l_wrap_fighcorr_dim ] + { \dim_use:N \l_tmpb_dim } + %\skip_vertical:N \l_wrap_figvcorr_dim + \includegraphics[width=\l_wrap_figwidth_dim]{#2} + \end{wrapfigure} + \setbox \l_bio_text_box = \vbox \bgroup + \hsize = \dimexpr ( \Columnwidth ) + } +} + +\cs_set:Nn \__fwidth: { 1in } +\cs_set:Nn \__fpos: { l } + +% +% short authors/title +% + +\newcommand\shortauthors[1]{ \cs_gset:Nn \__short_authors: { #1 } } +\newcommand\shorttitle[1]{ \cs_gset:Nn \__short_title: { #1 } } + +\shortauthors{First~Author~et~al.} +\shorttitle{Short ~Title ~of~the~Article} + +\newcounter { ca_biography_ctr } +\newbool { cas_no_pic_bio } +\boolfalse { cas_no_pic_bio } + +\NewDocumentCommand \bio { O{} m } +{ + \global \boolfalse { cas_no_pic_bio } + \casbiographyfont + \par \medskip \tl_set:Nn \l_tmpa_tl { #2 } + \tl_if_empty:NTF \l_tmpa_tl + { \global \booltrue { cas_no_pic_bio } } + { \WrapFigure [ #1 ]{ #2 } } + \noindent \ignorespaces +} + +\int_new:N \l_ca_temp_inta + +\NewDocumentCommand \endbio { } { + \ifbool{ cas_no_pic_bio } { } { + \egroup +% \fp_set:Nn \l_wrap_figlines_fp +% { \fp_eval:n { ( ( \l_tmpa_fp + +% \numexpr\dimexpr\the\ht\l_bio_text_box ) +% / \l_tmpb_fp ) + .5 } } + \int_gset:Nn \l_ca_temp_inta + { \numexpr\dimexpr(\the\ht\l_bio_text_box + 2\baselineskip )/ + \dimexpr\the\baselineskip } + \iow_now:Nx \@auxout { + \string\csgdef{cabio\theca_biography_ctr lines} + { \int_use:N \l_ca_temp_inta } } +\mbox{}\vspace*{-4.5pt}\noindent +\unvbox \l_bio_text_box } +} + +\let\casbiographyfont\relax + +\NewDocumentEnvironment { biography } { o m } +{ + \IfValueTF { #1 } + { \par\medskip \noindent \includegraphics[width=1in]{#1} } + { } + \par\smallskip + \noindent \textbf{#2:}\enspace +} +{ } + +\ExplSyntaxOff + +% +% Customized Enumeration +% +\def\blstr#1{\gdef\@bslstr{#1}} +\def\@blstr{1} +\newdimen\leftMargin +\leftMargin=2em +\newtoks\@enLab %\newtoks\@enfont +\def\@enQmark{?} +\def\@enLabel#1#2{% + \edef\@enThe{\noexpand#1{\@enumctr}}% + \@enLab\expandafter{\the\@enLab\csname the\@enumctr\endcsname}% + \@enloop} +\def\@enSpace{\afterassignment\@enSp@ce\let\@tempa= } +\def\@enSp@ce{\@enLab\expandafter{\the\@enLab\space}\@enloop} +\def\@enGroup#1{\@enLab\expandafter{\the\@enLab{#1}}\@enloop} +\def\@enOther#1{\@enLab\expandafter{\the\@enLab#1}\@enloop} +\def\@enloop{\futurelet\@entemp\@enloop@} +\def\@enloop@{% + \ifx A\@entemp \def\@tempa{\@enLabel\Alph }\else + \ifx a\@entemp \def\@tempa{\@enLabel\alph }\else + \ifx i\@entemp \def\@tempa{\@enLabel\roman }\else + \ifx I\@entemp \def\@tempa{\@enLabel\Roman }\else + \ifx 1\@entemp \def\@tempa{\@enLabel\arabic}\else + \ifx \@sptoken\@entemp \let\@tempa\@enSpace \else + \ifx \bgroup\@entemp \let\@tempa\@enGroup \else + \ifx \@enum@\@entemp \let\@tempa\@gobble \else + \let\@tempa\@enOther + \fi\fi\fi\fi\fi\fi\fi\fi + \@tempa} +\newlength{\@sep} \newlength{\@@sep} +\setlength{\@sep}{.5\baselineskip plus.2\baselineskip + minus.2\baselineskip} +\setlength{\@@sep}{.1\baselineskip plus.01\baselineskip + minus.05\baselineskip} +\providecommand{\sfbc}{\rmfamily\upshape} +\providecommand{\sfn}{\rmfamily\upshape} +\def\@enfont{\ifnum \@enumdepth >1\let\@nxt\sfn \else\let\@nxt\sfbc \fi\@nxt} +\def\enumerate{% + \ifnum \@enumdepth >3 \@toodeep\else + \advance\@enumdepth \@ne + \edef\@enumctr{enum\romannumeral\the\@enumdepth}\fi + \@ifnextchar[{\@@enum@}{\@enum@}} +\def\@@enum@[#1]{% + \@enLab{}\let\@enThe\@enQmark + \@enloop#1\@enum@ + \ifx\@enThe\@enQmark\@warning{The counter will not be printed.% + ^^J\space\@spaces\@spaces\@spaces The label is: \the\@enLab}\fi + \expandafter\edef\csname label\@enumctr\endcsname{\the\@enLab}% + \expandafter\let\csname the\@enumctr\endcsname\@enThe + \csname c@\@enumctr\endcsname7 + \expandafter\settowidth + \csname leftmargin\romannumeral\@enumdepth\endcsname + {\the\@enLab\hskip\labelsep}% + \@enum@} +\def\@enum@{\list{{\@enfont\csname label\@enumctr\endcsname}}% + {\usecounter{\@enumctr}\def\makelabel##1{\hss\llap{##1}}% + \ifnum \@enumdepth>1\setlength{\topsep}{\@@sep}\else + \setlength{\topsep}{\@sep}\fi + \ifnum \@enumdepth>1\setlength{\itemsep}{0pt plus1pt minus1pt}% + \else \setlength{\itemsep}{\@@sep}\fi + %\setlength\leftmargin{\leftMargin}%%%{1.8em} + \setlength{\parsep}{0pt plus1pt minus1pt}% + \setlength{\parskip}{0pt plus1pt minus1pt} + }} + +\def\endenumerate{\par\ifnum \@enumdepth >1\addvspace{\@@sep}\else + \addvspace{\@sep}\fi \endlist} + +\def\sitem{\@noitemargtrue\@item[\@itemlabel *]} + +\def\itemize{\@ifnextchar[{\@Itemize}{\@Itemize[]}} + +\def\@Itemize[#1]{\def\next{#1}% + \ifnum \@itemdepth >\thr@@\@toodeep\else + \advance\@itemdepth\@ne + \ifx\next\@empty\else\expandafter\def\csname + labelitem\romannumeral\the\@itemdepth\endcsname{#1}\fi% + \edef\@itemitem{labelitem\romannumeral\the\@itemdepth}% + \expandafter\list\csname\@itemitem\endcsname + {\def\makelabel##1{\hss\llap{##1}}}% + \fi} + +% +% Customized theorem +% (non-italic enunciations) +% + +\def\newdefinition#1{% + \@ifnextchar[{\@odfn{#1}}{\@ndfn{#1}}}%] +\def\@ndfn#1#2{% + \@ifnextchar[{\@xndfn{#1}{#2}}{\@yndfn{#1}{#2}}} +\def\@xndfn#1#2[#3]{% + \expandafter\@ifdefinable\csname #1\endcsname + {\@definecounter{#1}\@newctr{#1}[#3]% + \expandafter\xdef\csname the#1\endcsname{% + \expandafter\noexpand\csname the#3\endcsname \@dfncountersep + \@dfncounter{#1}}% + \global\@namedef{#1}{\@dfn{#1}{#2}}% + \global\@namedef{end#1}{\@enddefinition}}} +\def\@yndfn#1#2{% + \expandafter\@ifdefinable\csname #1\endcsname + {\@definecounter{#1}% + \expandafter\xdef\csname the#1\endcsname{\@dfncounter{#1}}% + \global\@namedef{#1}{\@dfn{#1}{#2}}% + \global\@namedef{end#1}{\@enddefinition}}} +\def\@odfn#1[#2]#3{% + \@ifundefined{c@#2}{\@nocounterr{#2}}% + {\expandafter\@ifdefinable\csname #1\endcsname + {\global\@namedef{the#1}{\@nameuse{the#2}} + \global\@namedef{#1}{\@dfn{#2}{#3}}% + \global\@namedef{end#1}{\@enddefinition}}}} +\def\@dfn#1#2{% + \refstepcounter{#1}% + \@ifnextchar[{\@ydfn{#1}{#2}}{\@xdfn{#1}{#2}}} +\def\@xdfn#1#2{% + \@begindefinition{#2}{\csname the#1\endcsname}\ignorespaces} +\def\@ydfn#1#2[#3]{% + \@opargbegindefinition{#2}{\csname the#1\endcsname}{#3}\ignorespaces} +\def\@dfncounter#1{\noexpand\arabic{#1}} +\def\@dfncountersep{.} +\def\@begindefinition#1#2{\trivlist + \item[\hskip\labelsep{\bfseries #1\ #2.}]\upshape} +\def\@opargbegindefinition#1#2#3{\trivlist + \item[\hskip\labelsep{\bfseries #1\ #2\ (#3).}]\upshape} +\def\@enddefinition{\endtrivlist} + +\def\@begintheorem#1#2{\trivlist + \let\baselinestretch\@blstr + \item[\hskip \labelsep{\bfseries #1\ #2.}]\itshape} +\def\@opargbegintheorem#1#2#3{\trivlist + \let\baselinestretch\@blstr + \item[\hskip \labelsep{\bfseries #1\ #2\ (#3).}]\itshape} +% +% Unnumbered roman proofs +% +\def\newproof#1{% + \@ifnextchar[{\@oprf{#1}}{\@nprf{#1}}} +\def\@nprf#1#2{% + \@ifnextchar[{\@xnprf{#1}{#2}}{\@ynprf{#1}{#2}}} +\def\@xnprf#1#2[#3]{% + \expandafter\@ifdefinable\csname #1\endcsname + {\@definecounter{#1}\@newctr{#1}[#3]% + \expandafter\xdef\csname the#1\endcsname{% + \expandafter\noexpand\csname the#3\endcsname \@prfcountersep + \@prfcounter{#1}}% + \global\@namedef{#1}{\@prf{#1}{#2}}% + \global\@namedef{end#1}{\@endproof}}} +\def\@ynprf#1#2{% + \expandafter\@ifdefinable\csname #1\endcsname + {\@definecounter{#1}% + \expandafter\xdef\csname the#1\endcsname{\@prfcounter{#1}}% + \global\@namedef{#1}{\@prf{#1}{#2}}% + \global\@namedef{end#1}{\@endproof}}} +\def\@oprf#1[#2]#3{% + \@ifundefined{c@#2}{\@nocounterr{#2}}% + {\expandafter\@ifdefinable\csname #1\endcsname + {\global\@namedef{the#1}{\@nameuse{the#2}}% + \global\@namedef{#1}{\@prf{#2}{#3}}% + \global\@namedef{end#1}{\@endproof}}}} +\def\@prf#1#2{% + \refstepcounter{#1}% + \@ifnextchar[{\@yprf{#1}{#2}}{\@xprf{#1}{#2}}} +\def\@xprf#1#2{% + \@beginproof{#2}{\csname the#1\endcsname}\ignorespaces} +\def\@yprf#1#2[#3]{% + \@opargbeginproof{#2}{\csname the#1\endcsname}{#3}\ignorespaces} +\def\@prfcounter#1{\noexpand\arabic{#1}} +\def\@prfcountersep{.} +\def\@beginproof#1#2{\trivlist\let\baselinestretch\@blstr + \item[\hskip \labelsep{\scshape #1.}]\rmfamily} +\def\@opargbeginproof#1#2#3{\trivlist\let\baselinestretch\@blstr + \item[\hskip \labelsep{\scshape #1\ (#3).}]\rmfamily} +\def\@endproof{\endtrivlist} +\newcommand*{\qed}{\hbox{}\hfill$\Box$} + +\xspaceaddexceptions{]} + +\ABD{\bibsep=0pt} +%\ifbool{casfinallayout} +% {% + \ABD{\gdef\bibfont{\fontsize{8pt}{10pt}\selectfont}% + \gdef\casbiographyfont{\fontsize{8pt}{10pt}\selectfont}% + }% +% } +% {} + +\endinput diff --git a/Master/texmf-dist/tex/latex/els-cas-template/cas-dc.cls b/Master/texmf-dist/tex/latex/els-cas-template/cas-dc.cls new file mode 100644 index 00000000000..82352b5db68 --- /dev/null +++ b/Master/texmf-dist/tex/latex/els-cas-template/cas-dc.cls @@ -0,0 +1,175 @@ +%% +%% This is file `cas-sc.cls'. +%% +%% This file is part of the 'CAS Bundle'. +%% ...................................... +%% +%% It may be distributed under the conditions of the LaTeX Project Public +%% License, either version 1.2 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.2 or later is part of all distributions of LaTeX +%% version 1999/12/01 or later. +%% +%% The list of all files belonging to the 'CAS Bundle' is +%% given in the file `manifest.txt'. +%% + +%% $Id: cas-dc.cls 7 2019-02-13 12:02:17Z apu.v $ + + \def\RCSfile{cas-dc}% + \def\RCSversion{1.0}% + \def\RCSdate{2019/02/11}% +\NeedsTeXFormat{LaTeX2e}[1995/12/01] +\ProvidesClass{\RCSfile}[\RCSdate, \RCSversion: Formatting class + for CAS double column articles] +% +\def\ABD{\AtBeginDocument} +% +% switches +% +\newif\iflongmktitle \longmktitlefalse +\newif\ifdc \global\dctrue +\newif\ifsc \global\scfalse +\newif\ifcasreviewlayout \global\casreviewlayoutfalse +\newif\ifcasfinallayout \global\casfinallayoutfalse + +\newcounter{blind} +\setcounter{blind}{0} + +\def\blstr#1{\gdef\@blstr{#1}} +\def\@blstr{1} +\newdimen\@bls +\@bls=\baselineskip + +\DeclareOption{singleblind}{\setcounter{blind}{1}} +\DeclareOption{doubleblind}{\setcounter{blind}{2}} +\DeclareOption{longmktitle}{\global\longmktitletrue} +\DeclareOption{final}{\global\casfinallayouttrue} +\DeclareOption{review}{\global\casreviewlayouttrue} + +\ExecuteOptions{a4paper,10pt,oneside,fleqn,review} +\DeclareOption*{\PassOptionsToClass{\CurrentOption}{article}} +\ProcessOptions +\LoadClass{article} + +\RequirePackage{graphicx} +\RequirePackage{amsmath,amsfonts,amssymb} +\allowdisplaybreaks + +\RequirePackage{expl3,xparse} +\@ifundefined{regex_match:nnTF}{\RequirePackage{l3regex}}{} +\RequirePackage{etoolbox,balance} +\RequirePackage{booktabs,makecell,multirow,array,colortbl,dcolumn,stfloats} +\RequirePackage{xspace,xstring,footmisc} +\RequirePackage[svgnames,dvipsnames]{xcolor} + +\RequirePackage[colorlinks]{hyperref} +\colorlet{scolor}{black} +\colorlet{hscolor}{DarkSlateGrey} +\hypersetup{% + pdftitle={\csuse{__short_title:}}, + pdfauthor={\csuse{__short_authors:}}, + pdfcreator={LaTeX3; cas-sc.cls; hyperref.sty}, + pdfproducer={pdfTeX;}, + linkcolor={hscolor}, + urlcolor={hscolor}, + citecolor={hscolor}, + filecolor={hscolor}, + menucolor={hscolor}, + } + + \let\comma\@empty +\let\tnotesep\@empty +\let\@title\@empty +% +% Load Common items +% + +\RequirePackage{cas-common} + +% +% Specific to Single Column +% +\ExplSyntaxOn + +\RenewDocumentCommand \maketitle { } +{ + \ifbool { usecasgrabsbox } + { + \setcounter{page}{0} + \thispagestyle{empty} + \unvbox\casgrabsbox + } { } + \pagebreak + \ifbool { usecashlsbox } + { + \setcounter{page}{0} + \thispagestyle{empty} + \unvbox\casauhlbox + } { } + \pagebreak + \thispagestyle{first} + \ifbool{longmktitle} + { + \LongMaketitleBox + \ProcessLongTitleBox + } + { + \twocolumn[\MaketitleBox] + \printFirstPageNotes + } + \setcounter{footnote}{\int_use:N \g_stm_fnote_int} + \renewcommand\thefootnote{\arabic{footnote}} + \gdef\@pdfauthor{\infoauthors} + \gdef\@pdfsubject{Complex ~STM ~Content} +} + +% +% Fonts +% +\RequirePackage[T1]{fontenc} + +\file_if_exist:nTF { stix.sty } +{ + \file_if_exist:nTF { charis.sty } + { + \RequirePackage[notext]{stix} + \RequirePackage{charis} + } + { \RequirePackage{stix} } +} +{ + \iow_term:x { *********************************************************** } + \iow_term:x { ~Stix ~ and ~ Charis~ fonts ~ are ~ not ~ available ~ } + \iow_term:x { ~ in ~TeX~system.~Hence~CMR~ fonts~ are ~ used. } + \iow_term:x { *********************************************************** } +} + +\file_if_exist:nTF { inconsolata.sty } +{ \RequirePackage[scaled=.85]{inconsolata} } +{ \tex_gdef:D \ttdefault { cmtt } } + + +\ExplSyntaxOff + +% +% Page geometry +% +\usepackage[% + paperwidth=210mm, + paperheight=280mm, + vmargin={19.5mm,18.2mm}, + hmargin={18.1mm,18.1mm}, + headsep=12pt, + footskip=12pt, + columnsep=18pt +]{geometry} + + +\endinput + +% +% End of class 'cas-sc' +% + diff --git a/Master/texmf-dist/tex/latex/els-cas-template/cas-sc.cls b/Master/texmf-dist/tex/latex/els-cas-template/cas-sc.cls new file mode 100644 index 00000000000..3345e1c398f --- /dev/null +++ b/Master/texmf-dist/tex/latex/els-cas-template/cas-sc.cls @@ -0,0 +1,178 @@ +%% +%% This is file `cas-dc.cls'. +%% +%% This file is part of the 'CAS Bundle'. +%% ...................................... +%% +%% It may be distributed under the conditions of the LaTeX Project Public +%% License, either version 1.2 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.2 or later is part of all distributions of LaTeX +%% version 1999/12/01 or later. +%% +%% The list of all files belonging to the 'CAS Bundle' is +%% given in the file `manifest.txt'. +%% + +%% $Id: cas-sc.cls 7 2019-02-13 12:02:17Z apu.v $ + + \def\RCSfile{cas-sc}% + \def\RCSversion{1.0}% + \def\RCSdate{2018/09/22}% +\NeedsTeXFormat{LaTeX2e}[1995/12/01] +\ProvidesClass{\RCSfile}[\RCSdate, \RCSversion: Formatting class + for CAS single column articles] +% +\def\ABD{\AtBeginDocument} +% +% switches +% +\newif\iflongmktitle \longmktitlefalse +\newif\ifdc \global\dcfalse +\newif\ifsc \global\sctrue +\newif\ifcasreviewlayout \global\casreviewlayoutfalse +\newif\ifcasfinallayout \global\casfinallayoutfalse + +\newcounter{blind} +\setcounter{blind}{0} + +\def\blstr#1{\gdef\@blstr{#1}} +\def\@blstr{1} +\newdimen\@bls +\@bls=\baselineskip + +\DeclareOption{singleblind}{\setcounter{blind}{1}} +\DeclareOption{doubleblind}{\setcounter{blind}{2}} +\DeclareOption{longmktitle}{\global\longmktitletrue} +\DeclareOption{final}{\global\casfinallayouttrue} +\DeclareOption{review}{\global\casreviewlayouttrue} + +\ExecuteOptions{a4paper,10pt,oneside,fleqn,review} +\DeclareOption*{\PassOptionsToClass{\CurrentOption}{article}} +\ProcessOptions +\LoadClass{article} + +\RequirePackage{graphicx} +\RequirePackage{amsmath,amsfonts,amssymb} +\allowdisplaybreaks + +\RequirePackage{expl3,xparse} +\@ifundefined{regex_match:nnTF}{\RequirePackage{l3regex}}{} +\RequirePackage{etoolbox} +\RequirePackage{booktabs,makecell,multirow,array,colortbl,dcolumn,stfloats} +\RequirePackage{xspace,xstring,footmisc} +\RequirePackage[svgnames,dvipsnames]{xcolor} + +\RequirePackage[colorlinks]{hyperref} +\colorlet{scolor}{black} +\colorlet{hscolor}{DarkSlateGrey} +\hypersetup{% + pdfcreator={LaTeX3; cas-sc.cls; hyperref.sty}, + pdfproducer={pdfTeX;}, + linkcolor={hscolor}, + urlcolor={hscolor}, + citecolor={hscolor}, + filecolor={hscolor}, + menucolor={hscolor}, +} +% \AtEndDocument{\hypersetup +% {pdftitle={\csuse{__short_title:}}, +% pdfauthor={\csuse{__short_authors:}}}} + + \let\comma\@empty +\let\tnotesep\@empty +\let\@title\@empty +% +% Load Common items +% + +\RequirePackage{cas-common} + +% +% Specific to Single Column +% +\ExplSyntaxOn + +\RenewDocumentCommand \maketitle {} +{ + \ifbool { usecasgrabsbox } + { + \setcounter{page}{0} + \thispagestyle{empty} + \unvbox\casgrabsbox + } { } + \pagebreak + \ifbool { usecashlsbox } + { + \setcounter{page}{0} + \thispagestyle{empty} + \unvbox\casauhlbox + } { } + \pagebreak + \thispagestyle{first} + \ifbool{longmktitle} + { + \LongMaketitleBox + \ProcessLongTitleBox + } + { + \MaketitleBox + \printFirstPageNotes + } + \normalcolor \normalfont + \setcounter{footnote}{\int_use:N \g_stm_fnote_int} + \renewcommand\thefootnote{\arabic{footnote}} + \gdef\@pdfauthor{\infoauthors} + \gdef\@pdfsubject{Complex ~STM ~Content} +} + +% +% Fonts +% +\RequirePackage[T1]{fontenc} + +\file_if_exist:nTF { stix.sty } +{ + \file_if_exist:nTF { charis.sty } + { + \RequirePackage[notext]{stix} + \RequirePackage{charis} + } + { \RequirePackage{stix} } +} +{ + \iow_term:x { *********************************************************** } + \iow_term:x { ~Stix ~ and ~ Charis~ fonts ~ are ~ not ~ available ~ } + \iow_term:x { ~ in ~TeX~system.~Hence~CMR~ fonts~ are ~ used. } + \iow_term:x { *********************************************************** } +} + +\file_if_exist:nTF { inconsolata } +{ \RequirePackage[scaled=.85]{inconsolata} } +{ \tex_gdef:D \ttdefault { cmtt } } + + +\ExplSyntaxOff + +% +% Page geometry +% + +\usepackage[% + paperwidth=192mm, + paperheight=262mm, +% vmargin={12.4mm,11.5mm}, + vmargin={19mm,19mm}, + hmargin={13.7mm,13.7mm}, + headsep=12pt, + footskip=12pt, +]{geometry} + + +\endinput + +% +% End of class 'cas-sc' +% + diff --git a/Master/tlpkg/bin/tlpkg-ctan-check b/Master/tlpkg/bin/tlpkg-ctan-check index 0cb2490c44b..8c584ed1b3b 100755 --- a/Master/tlpkg/bin/tlpkg-ctan-check +++ b/Master/tlpkg/bin/tlpkg-ctan-check @@ -245,7 +245,7 @@ my @TLP_working = qw( elbioimp electrum eledform eledmac elegantbook elegantnote elegantpaper elements ellipse ellipsis - elmath elocalloc elpres elsarticle + elmath elocalloc elpres els-cas-template elsarticle elteikthesis eltex elvish elzcards emarks embedall embrac emf emisa emptypage emulateapj emp enctex encxvlna endfloat endheads endiagram endnotes endnotesj endofproofwd diff --git a/Master/tlpkg/libexec/ctan2tds b/Master/tlpkg/libexec/ctan2tds index 27d889fbd2a..7ff3f29dd3c 100755 --- a/Master/tlpkg/libexec/ctan2tds +++ b/Master/tlpkg/libexec/ctan2tds @@ -2766,6 +2766,7 @@ $standardbst='\.bst$'; %specialbst = ( 'einfuehrung' => 'NULL', 'einfuehrung2' => 'NULL', + 'els-cas-template' => 'NULL', 'feupphdteses' => 'NULL', 'latex-bib-ex' => 'NULL', 'latex-bib2-ex' => 'NULL', diff --git a/Master/tlpkg/tlpsrc/collection-publishers.tlpsrc b/Master/tlpkg/tlpsrc/collection-publishers.tlpsrc index e2eb0daaa32..d7d1e40a645 100644 --- a/Master/tlpkg/tlpsrc/collection-publishers.tlpsrc +++ b/Master/tlpkg/tlpsrc/collection-publishers.tlpsrc @@ -55,6 +55,7 @@ depend ecothesis depend ejpecp depend ekaia depend elbioimp +depend els-cas-template depend elsarticle depend elteikthesis depend emisa diff --git a/Master/tlpkg/tlpsrc/els-cas-template.tlpsrc b/Master/tlpkg/tlpsrc/els-cas-template.tlpsrc new file mode 100644 index 00000000000..e69de29bb2d --- /dev/null +++ b/Master/tlpkg/tlpsrc/els-cas-template.tlpsrc |