2 %% This is file `elsart.cls',
\r
3 %% generated with the docstrip utility.
\r
5 %% The original source files were:
\r
7 %% esl.dtx (with options: `package,elsart,ONECOL,DEEPLIST')
\r
9 %% elsart.cls Copyright (C) 1994-2006 Elsevier Science
\r
11 %% This file may be distributed and/or modified under the
\r
12 %% conditions of the LaTeX Project Public License, either version 1.2
\r
13 %% of this license or (at your option) any later version.
\r
14 %% The latest version of this license is in
\r
15 %% http://www.latex-project.org/lppl.txt
\r
16 %% and version 1.2 or later is part of all distributions of LaTeX
\r
17 %% version 1999/12/01 or later.
\r
19 \def\readRCS$#1: #2 #3 #4 #5${%
\r
21 \def\RCSversion{#3}%
\r
24 \def\@shortjnl{\relax}
\r
25 \def\esp@fileversion{2.19}
\r
26 \def\esp@filedate{2006/05/01}
\r
27 \def\@journal{Elsevier} \def\@company{Elsevier}
\r
28 \def\@issn{000-0000}
\r
29 \def\@shortjid{elsart}
\r
30 \NeedsTeXFormat{LaTeX2e}[1995/12/01]
\r
31 \ProvidesClass{\@shortjid}[\esp@filedate, \esp@fileversion: \@journal]
\r
37 \newif\if@Elproofing
\r
39 \DeclareOption{12pt}{}
\r
40 \DeclareOption{11pt}{}
\r
41 \DeclareOption{10pt}{}
\r
42 \DeclareOption{oneside}{\@twosidefalse \@mparswitchfalse}
\r
43 \DeclareOption{twoside}{\@twosidetrue \@mparswitchtrue}
\r
45 \DeclareOption{onecolumn}{\@twocolumnfalse\@TwoColumnfalse}
\r
46 \DeclareOption{twocolumn}{\@twocolumntrue\@TwoColumntrue}
\r
47 \newif\if@narrowdisplay
\r
48 \@narrowdisplayfalse
\r
49 \DeclareOption{narrowdisplay}{\@narrowdisplaytrue}
\r
50 \newif\if@draft\@draftfalse
\r
51 \DeclareOption{draft}{%
\r
53 \overfullrule 5\p@ % to indicate overfull boxes
\r
55 \DeclareOption{final}{%
\r
59 \let\snm\relax \let\cty\relax \let\cny\relax\let\jr\relax
\r
60 \newif\if@ussrhead \@ussrheadfalse
\r
61 \DeclareOption{ussrhead}{\@ussrheadtrue}
\r
62 \@seceqnfalse % Default: equation numbering is not
\r
63 \DeclareOption{seceqn}{\@seceqntrue} % reset at beginning of each section
\r
65 \DeclareOption{secthm}{\@secthmtrue}
\r
67 \DeclareOption{nameyear}{\@nameyeartrue}
\r
69 \DeclareOption{doublespacing}{\def\@blstr{1.7}}
\r
70 \DeclareOption{reviewcopy}{\def\@blstr{1.7}}
\r
71 \newif\if@symbold\@symboldfalse
\r
72 \DeclareOption{symbold}{\@symboldtrue}
\r
73 \newif\if@amsthm\@amsthmfalse
\r
74 \DeclareOption{amsthm}{\@amsthmtrue}
\r
75 \ExecuteOptions{oneside}
\r
76 \ExecuteOptions{onecolumn,final}
\r
78 \if@TwoColumn\@narrowdisplayfalse\fi
\r
79 \if@draft\else\@narrowdisplayfalse\fi
\r
80 \def\@pagenumprefix{}
\r
83 \def\appendixname{Appendix}
\r
84 \def\contentsname{Contents}
\r
85 \def\listfigurename{List of Figures}
\r
86 \def\listtablename{List of Tables}
\r
87 \def\refname{References}
\r
88 \def\indexname{Index}
\r
89 \def\figurename{Fig.}
\r
90 \def\tablename{Table}
\r
91 \def\abstractname{Abstract}
\r
93 \normallineskip 1\p@
\r
94 \def\baselinestretch{1}
\r
96 \def\cropwidth{297mm}
\r
97 \def\cropheight{210mm}
\r
100 \def\FullCopyrightText{}
\r
101 \def\copyrightholder#1{\def\@copyrightholder{#1}}
\r
102 \newdimen\@frontmatterwidth
\r
103 \def\@overtitleskip{69\p@}
\r
104 \def\@overhistoryskip{\z@}
\r
105 \def\@undertitleskip{\z@}
\r
106 \def\@overkeywordskip{12\p@}
\r
107 \def\@overabstractskip{8\p@}
\r
108 \def\@overcaptionskip{8\p@}
\r
109 \def\@preabstractskip{24\p@ \@plus 6\p@ \@minus 3\p@}
\r
110 \def\@belowfmskip{18\p@}
\r
111 \def\@bibliosize{\small}
\r
112 \def\@historysize{\small}
\r
113 \def\@keywordsize{\small}
\r
114 \def\@overaddressskip{2pt}
\r
115 \def\@titlesize{\Large\bfseries}
\r
116 \def\@bibitemsep{0.3\@bls \@plus 0.1\@bls \@minus 0.1\@bls}
\r
117 \def\@authorsize{\large}
\r
118 \def\@keywordheading{{\it Key words: \ }}
\r
119 \def\@addressstyle{\small\itshape}
\r
120 \def\@captionsize{\small}
\r
121 \def\@tablecaptionsize{\@captionsize}
\r
122 \def\@figurecaptionsize{\@captionsize}
\r
123 \def\@tablesize{\small}
\r
124 \def\@keywordwidth{.8\textwidth}
\r
125 \def\@abstractwidth{.8\textwidth}
\r
126 \def\@fignumfont#1{#1}
\r
127 \def\@secnumfont#1{\upshape}
\r
128 \def\@catchlinesize{\footnotesize}
\r
129 \def\@runheadsize{\normalsize}
\r
130 \def\@narrowdisplaywidth{259pt}
\r
133 \def\@Colofonheight{1cm}
\r
134 \def\@abstractsize{\fontsize{\@ixpt}{11pt}\selectfont}
\r
135 \def\@articletypesize{\fontsize{\@xiiipt}{13pt}\selectfont}
\r
136 \def\normalsize{\@setfontsize\normalsize\@xiipt{14.5}%
\r
137 \abovedisplayskip 12\p@ \@plus 2\p@ \@minus 2\p@%
\r
138 \belowdisplayskip \abovedisplayskip
\r
139 \abovedisplayshortskip \z@ \@plus 2\p@%
\r
140 \belowdisplayshortskip 3.5\p@ \@plus 2\p@ \@minus 2\p@
\r
141 \let\@listi\@listI}
\r
142 \def\small{\@setfontsize\small\@xipt{13.6}%
\r
143 \abovedisplayskip 11\p@ \@plus3\p@ minus6\p@
\r
144 \belowdisplayskip \abovedisplayskip
\r
145 \abovedisplayshortskip \z@ \@plus3\p@
\r
146 \belowdisplayshortskip 6.5\p@ \@plus3.5\p@ minus3\p@
\r
147 \def\@listi{\leftmargin\leftmargini
\r
148 \parsep 4.5\p@ \@plus2\p@ minus\p@ \itemsep \parsep
\r
149 \topsep 9\p@ \@plus3\p@ minus5\p@}}
\r
150 \let\footnotesize=\small
\r
151 \let\@xviiipt\@xviipt
\r
152 \def\scriptsize{\@setfontsize\scriptsize\@viiipt{9.5}}
\r
153 \def\tiny{\@setfontsize\tiny\@vipt{7}}
\r
154 \def\large{\@setfontsize\large\@xivpt{18}}
\r
155 \def\Large{\@setfontsize\Large\@xviipt{22}}
\r
156 \def\LARGE{\@setfontsize\LARGE\@xxpt{22}}
\r
157 \def\huge{\@setfontsize\huge\@xxvpt{27}}
\r
159 \normalsize % Choose the normalsize font.
\r
160 \newdimen\@bls % Several dimensions are
\r
161 \@bls=\baselineskip % expressed in terms of this.
\r
162 \if@twoside % Values for two-sided printing:
\r
163 \oddsidemargin 20\p@ % Left margin on odd-numbered pages.
\r
164 \evensidemargin 20\p@ % Left margin on even-numbered pages.
\r
165 \marginparwidth 10\p@ % \@Width of marginal notes.
\r
166 \else % Values for one-sided printing:
\r
167 \oddsidemargin 20\p@ % Left margin on odd-numbered pages.
\r
168 \evensidemargin 20\p@ % Left margin on even-numbered pages.
\r
169 \marginparwidth 2pc
\r
171 \marginparsep 20\p@ % Horizontal space between outer margin and
\r
173 \topmargin \z@ % Nominal distance from top of page to top of
\r
174 % box containing running head.
\r
175 \headheight \z@ % \@Height of box containing running head.
\r
176 \headsep \z@ % Space between running head and text.
\r
178 \bigskipamount=\@bls \@plus 0.3\@bls \@minus 0.3\@bls % 1/1 line
\r
179 \medskipamount=0.5\bigskipamount % 1/2 line
\r
180 \smallskipamount=0.25\bigskipamount % 1/4 line
\r
181 \@tempdima=651pt \advance\@tempdima -\topskip \@tempcnta=\@tempdima
\r
182 \@tempdimb=\@blstr\@bls \@tempcntb=\@tempdimb
\r
183 \divide\@tempcnta\@tempcntb
\r
184 \textheight\@tempdimb \multiply\textheight\@tempcnta
\r
185 \advance\textheight\topskip
\r
186 \textwidth 33pc % \@Width of text line.
\r
187 % For two-column mode:
\r
188 \columnsep 2pc % Space between columns
\r
189 \columnseprule \z@ % \@Width of rule between columns.
\r
190 \footnotesep 8.4\p@
\r
191 \skip\footins 12\p@ \@plus 8\p@ % Space between last line of text and
\r
192 % top of first footnote.
\r
193 \floatsep 8\p@ \@plus 4\p@ \@minus 2\p@ % Space between adjacent floats moved
\r
194 % to top or bottom of text page.
\r
195 \textfloatsep 8\p@ \@plus 4\p@ \@minus 2\p@ % Space between main text and floats
\r
196 % at top or bottom of page.
\r
197 \intextsep 8\p@ \@plus 4\p@ \@minus 2\p@ % Space between in-text figures and
\r
199 \dblfloatsep 8\p@ \@plus 4\p@ \@minus 4\p@ % Same as \floatsep for double-column
\r
200 % figures in two-column mode.
\r
201 \dbltextfloatsep 12\p@ \@plus 4\p@ \@minus 4\p@ % \textfloatsep for double-column
\r
203 \@fptop \z@ \@plus 1fil % Stretch at top of float page/column. (Must be
\r
205 \@fpsep 8\p@ \@plus 2fil % Space between floats on float page/column.
\r
206 \@fpbot \z@ \@plus 1fil % Stretch at bottom of float page/column. (Must be
\r
208 \@dblfptop \z@ \@plus 1fil % Stretch at top of float page. (Must be \z@ \@plus ...)
\r
209 \@dblfpsep 8\p@ \@plus 2fil % Space between floats on float page.
\r
210 \@dblfpbot \z@ \@plus 1fil % Stretch at bottom of float page. (Must be
\r
212 \marginparpush 5\p@ % Minimum vertical separation between two marginal
\r
214 \parskip 1pc \@plus 1\p@ % Extra vertical space between paragraphs.
\r
215 \parindent \z@ % Indentation of each paragraph.
\r
216 \newskip\eqntopsep % Extra vertical space, in addition to
\r
217 \eqntopsep 12\p@ \@plus 2\p@ \@minus 2\p@ %\parskip, added above and below
\r
218 \newdimen\eqnarraycolsep % Half the space between columns
\r
219 \eqnarraycolsep 1\p@ % in an \eqnarray.
\r
220 \@lowpenalty 51 % Produced by \nopagebreak[1] or \nolinebreak[1]
\r
221 \@medpenalty 151 % Produced by \nopagebreak[2] or \nolinebreak[2]
\r
222 \@highpenalty 301 % Produced by \nopagebreak[3] or \nolinebreak[3]
\r
223 \@beginparpenalty -\@lowpenalty % Before a list or paragraph environment.
\r
224 \@endparpenalty -\@lowpenalty % After a list or paragraph environment.
\r
225 \@itempenalty -\@lowpenalty % Between list items.
\r
226 \def\section{\@startsection{section}{1}{\z@}{1.5\@bls
\r
227 \@plus .4\@bls \@minus .1\@bls}{\@bls}{\normalsize\bfseries}}
\r
228 \def\subsection{\@startsection{subsection}{2}{\z@}{\@bls
\r
229 \@plus .3\@bls \@minus .1\@bls}{\@bls}{\normalsize\itshape}}
\r
230 \def\subsubsection{\@startsection{subsubsection}{3}{\z@}{\@bls
\r
231 \@plus .2\@bls}{0.0001pt}{\normalsize\itshape}}
\r
232 \def\paragraph{\@startsection{paragraph}{4}{\z@}{3.25ex \@plus
\r
233 2ex \@minus 0.2ex}{-1em}{\normalsize\bfseries}}
\r
234 \setcounter{secnumdepth}{4}
\r
235 \def\half@em{\hskip 0.5em}
\r
236 \def\lb@part{PART \thepart.\half@em}
\r
237 \def\lb@empty@part{PART \thepart}
\r
238 \def\lb@section{\thesection.\half@em}
\r
239 \def\lb@empty@section{\thesection}
\r
240 \def\lb@subsection{\thesubsection.\half@em}
\r
241 \def\lb@empty@subsection{\thesubsection}
\r
242 \def\lb@subsubsection{\thesubsubsection.\half@em}
\r
243 \def\lb@empty@subsubsection{\thesubsubsection}
\r
244 \def\lb@paragraph{\theparagraph.\half@em}
\r
245 \def\lb@empty@paragraph{\theparagraph}
\r
246 \def\lb@subparagraph{\thesubparagraph.\half@em}
\r
247 \def\lb@empty@subparagraph{\thesubparagraph}
\r
248 \def\head@format#1#2{#2}
\r
249 \def\head@style{\interlinepenalty\@M
\r
250 \hyphenpenalty\@M \exhyphenpenalty\@M
\r
251 \rightskip \z@ \@plus 0.5\hsize \relax
\r
253 \def\app@number#1{\setcounter{#1}{0}%
\r
254 \@addtoreset{#1}{section}%
\r
255 \@namedef{the#1}{\thesection.\arabic{#1}}}
\r
256 \def\appendix{\@ifstar{\appendix@star}{\appendix@nostar}}
\r
257 \def\appendix@nostar{%
\r
258 \def\lb@section{\appendixname\ \thesection.\half@em}
\r
259 \def\lb@empty@section{\appendixname\ \thesection}
\r
260 \setcounter{section}{0}\def\thesection{\Alph{section}}%
\r
261 \setcounter{subsection}{0}%
\r
262 \setcounter{subsubsection}{0}%
\r
263 \setcounter{paragraph}{0}%
\r
264 \app@number{equation}\app@number{figure}\app@number{table}}
\r
265 \def\appendix@star{%
\r
266 \def\lb@section{\appendixname}\let\lb@empty@section\lb@section
\r
267 \setcounter{section}{0}\def\thesection{\Alph{section}}%
\r
268 \setcounter{subsection}{0}%
\r
269 \setcounter{subsubsection}{0}%
\r
270 \setcounter{paragraph}{0}%
\r
271 \app@number{equation}\app@number{figure}\app@number{table}}
\r
272 \def\ack{\section*{Acknowledgements}%
\r
273 \addtocontents{toc}{\protect\vspace{6pt}}%
\r
274 \addcontentsline{toc}{section}{Acknowledgements}%
\r
276 \@namedef{ack*}{\par\vskip 3.0ex \@plus 1.0ex \@minus 1.0ex}
\r
278 \@namedef{endack*}{\par}
\r
279 \newdimen\labelwidthi
\r
280 \newdimen\labelwidthii
\r
281 \newdimen\labelwidthiii
\r
282 \newdimen\labelwidthiv
\r
283 \def\normal@labelsep{0.5em}
\r
284 \labelsep\normal@labelsep
\r
285 \settowidth{\labelwidthi}{(iii)}
\r
286 \settowidth{\labelwidthii}{(d)}
\r
287 \settowidth{\labelwidthiii}{(iii)}
\r
288 \settowidth{\labelwidthiv}{(M)}
\r
289 \leftmargini\labelwidthi \advance\leftmargini\labelsep
\r
290 \leftmarginii\labelwidthii \advance\leftmarginii\labelsep
\r
291 \leftmarginiii\labelwidthiii \advance\leftmarginiii\labelsep
\r
292 \leftmarginiv\labelwidthiv \advance\leftmarginiv\labelsep
\r
293 \def\setleftmargin#1#2{\settowidth{\@tempdima}{#2}\labelsep\normal@labelsep
\r
294 \csname labelwidth#1\endcsname\@tempdima
\r
295 \@tempdimb\@tempdima \advance\@tempdimb\labelsep
\r
296 \csname leftmargin#1\endcsname\@tempdimb}
\r
297 \def\@listI{\leftmargin\leftmargini
\r
298 \labelwidth\labelwidthi \labelsep\normal@labelsep
\r
299 \topsep \z@ \partopsep\z@ \parsep\z@ \itemsep\z@
\r
300 \listparindent 1em}
\r
301 \def\@listii{\leftmargin\leftmarginii
\r
302 \labelwidth\labelwidthii \labelsep\normal@labelsep
\r
303 \topsep\z@ \partopsep\z@ \parsep\z@ \itemsep\z@
\r
304 \listparindent 1em}
\r
305 \def\@listiii{\leftmargin\leftmarginiii
\r
306 \labelwidth\labelwidthiii \labelsep\normal@labelsep
\r
307 \topsep\z@ \partopsep\z@ \parsep\z@ \itemsep\z@
\r
308 \listparindent 1em}
\r
309 \def\@listiv{\leftmargin\leftmarginiv
\r
310 \labelwidth\labelwidthiv \labelsep\normal@labelsep
\r
311 \topsep\z@ \partopsep\z@ \parsep\z@ \itemsep\z@
\r
312 \listparindent 1em}
\r
315 \def\left@label#1{{#1}\hss}
\r
316 \def\right@label#1{\hss\llap{#1}}
\r
317 \def\thick@label#1{\hspace\labelsep #1}
\r
318 \newcount\@maxlistdepth
\r
320 \def\labelitemi{$\bullet$} \def\labelitemii{$\cdot$}
\r
321 \def\labelenumi{(\theenumi)} \def\theenumi{\arabic{enumi}}
\r
322 \def\labelenumii{(\alph{enumii})} \def\theenumii{\theenumi\alph{enumii}}
\r
323 \def\labelenumiii{(\roman{enumiii})}\def\theenumiii{\theenumii.\roman{enumiii}}
\r
324 \def\labelenumiv{(\Alph{enumiv})} \def\theenumiv{\theenumiii.\Alph{enumiv}}
\r
326 \ifnum \@enumdepth >\@maxlistdepth
\r
329 \advance\@enumdepth \@ne
\r
330 \edef\@enumctr{enum\romannumeral\the\@enumdepth}%
\r
331 \list{\csname label\@enumctr\endcsname}%
\r
332 {\usecounter{\@enumctr}
\r
333 \let\makelabel=\right@label}
\r
336 \ifnum \@itemdepth >\@maxlistdepth
\r
339 \advance\@itemdepth \@ne
\r
340 \edef\@itemitem{labelitem\romannumeral\the\@itemdepth}%
\r
341 \setleftmargin{i}{--}%
\r
342 \setleftmargin{ii}{$\cdot$}%
\r
343 \list{\csname\@itemitem\endcsname}%
\r
344 {\let\makelabel\right@label}
\r
346 \def\verse{\let\\=\@centercr
\r
347 \list{}{\itemsep\z@
\r
351 \leftmargin \rightmargin}\item[]}
\r
352 \let\endverse\endlist
\r
353 \def\quotation{\list{}{\itemindent\z@
\r
354 \leftmargin 1em \rightmargin \z@
\r
355 \parsep \z@ \@plus 1pt}\item[]}
\r
356 \let\endquotation=\endlist
\r
357 \def\quote{\list{}{\itemindent\z@
\r
358 \leftmargin 1em \rightmargin \z@}%
\r
360 \let\endquote=\endlist
\r
361 \def\descriptionlabel#1{\hspace\labelsep \bfseries #1}
\r
362 \def\description{\list{}{\labelwidth\z@
\r
363 \leftmargin 1em \itemindent-\leftmargin
\r
364 \let\makelabel\descriptionlabel}}
\r
365 \let\enddescription\endlist
\r
366 \def\@atfmtname{atlplain}
\r
367 \ifx\fmtname\@atfmtname
\r
368 \def\neq{\not\nobreak\mkern -2mu =}%
\r
371 \def\operatorname#1{\mathop{\mathrm{#1}}\nolimits}
\r
372 \def\lefteqn#1{\hbox to\z@{$\displaystyle {#1}$\hss}}
\r
373 \newskip\eqnbaselineskip % Standard interline spacing in an {eqnarray}
\r
375 \newskip\eqnlineskip % Minimal space between the bottom of
\r
376 % a line and the top of the next line.
\r
377 \eqnbaselineskip=14\p@ \eqnlineskip=2\p@
\r
378 \newdimen\mathindent
\r
385 \def\calcmathindent{%
\r
386 \mathindent\linewidth\relax
\r
387 \advance\mathindent-\@narrowdisplaywidth}
\r
389 \let\calcmathindent\relax
\r
391 \def\[{\relax\ifmmode\@badmath
\r
392 \else%\bgroup removed on request from BW (1993-05-17)
\r
393 \@beginparpenalty\predisplaypenalty
\r
394 \@endparpenalty\postdisplaypenalty
\r
396 \begin{trivlist}\@topsep \eqntopsep % used by first \item
\r
397 \@topsepadd \eqntopsep % used by \@endparenv
\r
399 \hbox to\linewidth\bgroup$ \displaystyle
\r
400 \hskip\mathindent\bgroup\fi}
\r
401 \def\]{\relax\ifmmode \egroup $\hfil \egroup
\r
402 \end{trivlist}% \egroup removed on request from BW (1993-05-17)
\r
403 \else \@badmath \fi}
\r
404 \def\equation{\@beginparpenalty\predisplaypenalty
\r
405 \@endparpenalty\postdisplaypenalty
\r
406 \refstepcounter{equation}\trivlist
\r
407 \@topsep \eqntopsep % used by first \item
\r
408 \@topsepadd \eqntopsep % used by \@endparenv
\r
411 \hbox to\linewidth\bgroup $ \displaystyle \hskip\mathindent\bgroup}
\r
412 \def\endequation{\egroup$\hfil \displaywidth\linewidth
\r
413 \@eqnnum\egroup \endtrivlist}
\r
417 \baselineskip\eqnbaselineskip\lineskip\eqnlineskip %BW
\r
418 \lineskiplimit\eqnlineskip %BW
\r
420 \stepcounter{equation}%
\r
421 \let\@currentlabel=\theequation
\r
424 \tabskip\mathindent
\r
426 \abovedisplayskip\eqntopsep\ifvmode\advance\abovedisplayskip\partopsep\fi
\r
427 \belowdisplayskip\abovedisplayskip
\r
428 \belowdisplayshortskip\abovedisplayskip
\r
429 \abovedisplayshortskip\abovedisplayskip
\r
430 $$\halign to \displaywidth\bgroup\@eqnsel
\r
431 \pre@coli$\displaystyle\tabskip\z@{##}$\post@coli
\r
432 &\global\@eqcnt\@ne
\r
433 \pre@colii$\displaystyle{##}$\post@colii
\r
434 &\global\@eqcnt\tw@
\r
435 \pre@coliii $\displaystyle\tabskip\z@{##}$\post@coliii
\r
436 \tabskip\@centering&\llap{##}\tabskip\z@\cr
\r
438 \def\endeqnarray{\@@eqncr\egroup
\r
439 \global\advance\c@equation\m@ne$$\global\@ignoretrue }
\r
440 \def\pre@coli{\hskip\@centering} \def\post@coli{}
\r
441 \def\pre@colii{\hskip 2\eqnarraycolsep \hfil} \def\post@colii{\hfil}
\r
442 \def\pre@coliii{\hskip 2\eqnarraycolsep} \def\post@coliii{\hfil}
\r
443 \arraycolsep 2\p@ % Half the space between columns in array environment.
\r
444 \tabcolsep 6\p@ % idem in tabular environment.
\r
445 \def\arraystretch{1.5} % More vertical space in tables
\r
446 \arrayrulewidth 0.4\p@ % \@Width of rules and space between adjacent
\r
447 \doublerulesep 2\p@ % rules in any of these two environments.
\r
448 \newdimen\rulepreskip \newdimen\rulepostskip
\r
449 \rulepreskip=4\p@ \rulepostskip=6\p@
\r
450 \tabbingsep \labelsep % Space used by the \' command. (See LaTeX{} manual.)
\r
451 \skip\@mpfootins = 6\p@ \@plus 2\p@ % Space between last line of text and
\r
452 % top of first footnote.
\r
453 \fboxsep = 7\p@ % Space left between box and text by \fbox and \framebox.
\r
454 \fboxrule = 0.4\p@ % \@Width of rules in box made by \fbox and \framebox.
\r
455 \newcounter{section}
\r
456 \newcounter{subsection}[section]
\r
457 \newcounter{subsubsection}[subsection]
\r
458 \newcounter{paragraph}[subsubsection]
\r
459 \newcounter{subparagraph}[paragraph]
\r
461 \@addtoreset{equation}{section}
\r
462 \def\theequation{\arabic{section}.\arabic{equation}}
\r
464 \def\theequation{\arabic{equation}}
\r
466 \def\thesection {\arabic{section}}
\r
467 \def\thesubsection {\thesection.\arabic{subsection}}
\r
468 \def\thesubsubsection{\thesubsection.\arabic{subsubsection}}
\r
469 \def\theparagraph {\thesubsubsection.\arabic{paragraph}}
\r
470 \def\thesubparagraph {\theparagraph.\arabic{subparagraph}}
\r
471 \@addtoreset{section}{part} % reset section numbers at beginning of part
\r
473 \DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm}
\r
474 \DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf}
\r
475 \DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt}
\r
476 \DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf}
\r
477 \DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit}
\r
478 \DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl}
\r
479 \DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc}
\r
480 \DeclareRobustCommand*\cal{\@fontswitch\relax\mathcal}
\r
481 \DeclareRobustCommand*\mit{\@fontswitch\relax\mathnormal}
\r
482 \RequirePackage{latexsym}
\r
483 \def\qed{\relax\ifmmode\hskip2em \Box\else\unskip\nobreak\hskip1em $\Box$\fi}
\r
484 \def\proof@headerfont{\upshape\bfseries}
\r
486 \RequirePackage{amsthm}%
\r
488 \thm@preskip\parskip
\r
490 \itshape % body font
\r
492 \def\th@definition{%
\r
493 \thm@preskip\parskip
\r
495 \normalfont % body font
\r
498 \thm@headfont{\itshape}%
\r
499 \normalfont % body font
\r
500 \thm@preskip\parskip \divide\thm@preskip\tw@
\r
503 \else\let\theoremstyle\@gobble\fi
\r
504 \newenvironment{pf}%
\r
505 {\par\addvspace{\@bls \@plus 0.5\@bls \@minus 0.1\@bls}\noindent
\r
506 {\bfseries\Elproofname}\enspace\ignorespaces}%
\r
507 {\par\addvspace{\@bls \@plus 0.5\@bls \@minus 0.1\@bls}}
\r
508 \def\Elproofname{PROOF.}
\r
509 \@namedef{pf*}#1{\par\begingroup\def\Elproofname{#1}\pf\endgroup\ignorespaces}
\r
510 \expandafter\let\csname endpf*\endcsname=\endpf
\r
511 \theoremstyle{plain}
\r
513 \newtheorem{thm}{Theorem}[section]
\r
514 \@addtoreset{thm}{section}
\r
516 \newtheorem{thm}{Theorem}
\r
518 \newtheorem{cor}[thm]{Corollary}
\r
519 \newtheorem{lem}[thm]{Lemma}
\r
520 \newtheorem{claim}[thm]{Claim}
\r
521 \newtheorem{axiom}[thm]{Axiom}
\r
522 \newtheorem{conj}[thm]{Conjecture}
\r
523 \newtheorem{fact}[thm]{Fact}
\r
524 \newtheorem{hypo}[thm]{Hypothesis}
\r
525 \newtheorem{assum}[thm]{Assumption}
\r
526 \newtheorem{prop}[thm]{Proposition}
\r
527 \newtheorem{crit}[thm]{Criterion}
\r
528 \theoremstyle{definition}
\r
529 \newtheorem{defn}[thm]{Definition}
\r
530 \newtheorem{exmp}[thm]{Example}
\r
531 \newtheorem{rem}[thm]{Remark}
\r
532 \newtheorem{prob}[thm]{Problem}
\r
533 \newtheorem{prin}[thm]{Principle}
\r
534 \newtheorem{alg}{Algorithm}
\r
535 \long\def\@makealgocaption#1#2{\vskip 2ex \small
\r
536 \hbox to \hsize{\parbox[t]{\hsize}{{\bfseries #1.} #2}}}
\r
537 \newcounter{algorithm}
\r
538 \def\thealgorithm{\@arabic\c@algorithm}
\r
539 \def\fps@algorithm{tbp}
\r
540 \def\ftype@algorithm{4}
\r
541 \def\ext@algorithm{lof}
\r
542 \def\fnum@algorithm{Algorithm \thealgorithm}
\r
543 \def\algorithm{\let\@makecaption\@makealgocaption\@float{algorithm}}
\r
544 \let\endalgorithm\end@float
\r
545 \newtheorem{note}{Note}
\r
546 \newtheorem{summ}{Summary}
\r
547 \newtheorem{case}{Case}
\r
548 \def\@pnumwidth{2.55em}
\r
549 \def\@tocrmarg{2.55em \@plus 5em}
\r
551 \setcounter{tocdepth}{2}
\r
552 \newcommand\listoffigures{%
\r
553 \section*{\listfigurename
\r
554 \@mkboth{\MakeUppercase\listfigurename}%
\r
555 {\MakeUppercase\listfigurename}}%
\r
558 \newcommand*\l@figure{\@dottedtocline{1}{1.5em}{2.3em}}
\r
559 \newcommand\listoftables{%
\r
560 \section*{\listtablename
\r
562 \MakeUppercase\listtablename}{\MakeUppercase\listtablename}}%
\r
565 \let\l@table\l@figure
\r
566 \def\tableofcontents{%
\r
568 \leftline {{\bfseries \contentsname\/}}
\r
569 \setcounter{secnumdepth}{4}%
\r
570 \setcounter{tocdepth}{2}%
\r
574 \newcommand*\l@section{\@dottedtocline{1}{1.5em}{2.3em}}
\r
575 \newcommand*\l@subsection{\@dottedtocline{2}{1.5em}{2.3em}}
\r
576 \newcommand*\l@subsubsection{\@dottedtocline{3}{3.8em}{3.2em}}
\r
577 \newcommand*\l@paragraph{\@dottedtocline{4}{7.0em}{4.1em}}
\r
578 \newcommand*\l@subparagraph{\@dottedtocline{5}{10em}{5em}}
\r
580 \def\thebibliography{%
\r
581 \@startsection{section}{1}{\z@}{20\p@ \@plus 8\p@ \@minus 4pt}
\r
582 {\@bls}{\normalsize\bfseries}*{\refname}%
\r
583 \addcontentsline{toc}{section}{\refname}%
\r
585 \let\endthebibliography=\endlist
\r
586 \def\@thebibliography#1{\@bibliosize
\r
587 \list{\@biblabel{\arabic{enumiv}}}{\settowidth\labelwidth{\@biblabel{#1}}
\r
589 \labelwidth\z@ \labelsep\z@ \leftmargin\parindent
\r
590 \itemindent-\parindent
\r
592 \labelsep 3\p@ \itemindent\z@
\r
593 \leftmargin\labelwidth \advance\leftmargin\labelsep
\r
595 \itemsep\@bibitemsep
\r
596 \usecounter{enumiv}\let\p@enumiv\@empty
\r
597 \def\theenumiv{\arabic{enumiv}}}%
\r
600 \hbadness5000 \sfcode`\.=1000\relax}
\r
601 \newcommand\newblock{\hskip .11em\@plus.33em\@minus.07em}
\r
605 \def\@biblabel#1{[#1]\hskip \z@ \@plus 1filll}
\r
607 \let\make@bb@error\relax
\r
608 \def\@mkbberr{\def\bibitem{\ClassError{elsart}%
\r
609 {Bibitem after note}%
\r
610 {You are using a bibitem after a note in a subbibitems
\r
611 environment;\MessageBreak
\r
612 note should the last item in a subbibitems environment}}}
\r
613 \def\@itemnote{\make@bb@error\item[]}
\r
614 \def\mk@noitemnote{\ifx\@tempa\note \let\note\@noitemnote \fi}
\r
615 \def\@noitemnote{\let\note\@itemnote}
\r
617 \let\nopeek@bibitem\@bibitem
\r
618 \let\nopeek@lbibitem\@lbibitem
\r
619 \def\@bibitem#1{\let\note\@itemnote\nopeek@bibitem{#1}%
\r
620 \futurelet\@tempa\mk@noitemnote}
\r
621 \def\@lbibitem[#1]#2{\let\note\@itemnote\nopeek@lbibitem[#1]{#2}%
\r
622 \futurelet\@tempa\mk@noitemnote}
\r
624 \newif\if@natbibloaded\@natbibloadedfalse
\r
625 \AtBeginDocument{\@ifpackageloaded{natbib}{\@natbibloadedtrue}{}}
\r
626 \newenvironment{subbibitems}[1]{%
\r
627 \if@natbibloaded\def\bib@ctr{NAT@ctr}\else\def\bib@ctr{enumiv}\fi
\r
628 \if@filesw {\let \protect \noexpand \immediate \write \@auxout
\r
629 {\string \nocollapse@cites}%
\r
630 \global\let\nocollapse@cites\relax}\fi
\r
631 \def\@itemslabel{#1}%
\r
632 \stepcounter{\bib@ctr}%
\r
633 \edef\main@bibnum{\the\value{\bib@ctr}}%
\r
634 \setcounter{\bib@ctr}{0}%
\r
635 \def\thebib@ctr{\main@bibnum\alph{\bib@ctr}}%
\r
637 \def\bibitem{\@ifnextchar [{\@lbibitem }{\global \NAT@stdbsttrue
\r
638 \stepcounter {\bib@ctr}\@lbibitem [\thebib@ctr]}}%
\r
640 \def\@bibitem##1{\stepcounter{\bib@ctr}\@lbibitem[\thebib@ctr]{##1}}%
\r
642 \let\make@bb@error\@mkbberr
\r
646 \let\protect\noexpand
\r
647 \immediate\write\@auxout {\string\bibcite{\@itemslabel}%
\r
648 {{\main@bibnum a--\alph {\bib@ctr}}{}{{}}{{}}}}%
\r
649 \immediate\write\@auxout {\string\bibcite{\@itemslabel :s}%
\r
650 {{\main@bibnum}{}{{}}{{}}}}%
\r
652 \let\protect\noexpand
\r
653 \immediate\write\@auxout {\string\bibcite{\@itemslabel}%
\r
654 {\main@bibnum a--\alph{\bib@ctr}}}%
\r
655 \immediate\write\@auxout {\string\bibcite{\@itemslabel :s}%
\r
659 \setcounter{\bib@ctr}{\main@bibnum}%
\r
661 \let\nocollapse@citex\@citex
\r
662 \newcount\@tempcntc
\r
663 \def\collapse@citex[#1]#2{\if@filesw\immediate\write\@auxout{\string\citation{#2}}\fi
\r
664 \@tempcnta\z@\@tempcntb\m@ne\def\@citea{}\@cite{\@for\@citeb:=#2\do
\r
665 {\edef\@citeb{\expandafter\@firstofone\@citeb\@empty}%
\r
667 {b@\@citeb}{\@citeo\@tempcntb\m@ne\@citea\def\@citea{,}{\bfseries ?}\@warning
\r
668 {Citation `\@citeb' on page \thepage \space undefined}}%
\r
669 {\setbox\z@\hbox{\global\@tempcntc0\csname b@\@citeb\endcsname\relax}%
\r
670 \ifnum\@tempcntc=\z@ \@citeo\@tempcntb\m@ne
\r
671 \@citea\def\@citea{,}\hbox{\csname b@\@citeb\endcsname}%
\r
673 \advance\@tempcntb\@ne
\r
674 \ifnum\@tempcntb=\@tempcntc
\r
675 \else\advance\@tempcntb\m@ne\@citeo
\r
676 \@tempcnta\@tempcntc\@tempcntb\@tempcntc\fi\fi}}\@citeo}{#1}}
\r
677 \let\@citex\collapse@citex
\r
678 \def\nocollapse@cites{%
\r
679 \@ifpackageloaded{hyperref}{}{\global\let\@citex\nocollapse@citex}%
\r
680 \global\let\nocollapse@cites\relax}
\r
681 \def\@citeo{\ifnum\@tempcnta>\@tempcntb\else\@citea\def\@citea{,}%
\r
682 \ifnum\@tempcnta=\@tempcntb\the\@tempcnta\else
\r
683 {\advance\@tempcnta\@ne\ifnum\@tempcnta=\@tempcntb \else \def\@citea{--}\fi
\r
684 \advance\@tempcnta\m@ne\the\@tempcnta\@citea\the\@tempcntb}\fi\fi}
\r
685 \@namedef{cv*}{\section*{Curriculum Vitae}\cv}
\r
686 \def\cv{\hangindent=7pc \hangafter=-12 \parskip\bigskipamount \small}
\r
687 \def\footnote{\@ifnextchar[{\@xfootnote}{\refstepcounter
\r
688 {\@mpfn}\protected@xdef\@thefnmark{\thempfn}\@footnotemark\@footnotetext}}
\r
689 \def\footnotemark{\@ifnextchar[{\@xfootnotemark
\r
690 }{\refstepcounter{footnote}\xdef\@thefnmark{\thefootnote}\@footnotemark}}
\r
691 \def\footnoterule{\kern-3\p@
\r
692 \hrule \@width 3pc % The \hrule has default \@height of 0.4pt.
\r
694 \def\thempfootnote{\alph{mpfootnote}}
\r
695 \def\mpfootnotemark{%
\r
696 \@ifnextchar[{\@xmpfootnotemark}{\stepcounter{mpfootnote}%
\r
698 \let\protect\noexpand
\r
699 \xdef\@thefnmark{\thempfootnote}%
\r
702 \def\@xmpfootnotemark[#1]{%
\r
704 \c@mpfootnote #1\relax
\r
705 \let\protect\noexpand
\r
706 \xdef\@thefnmark{\thempfootnote}%
\r
709 \def\@mpmakefnmark{\,\hbox{$^{\mathrm{\@thefnmark}}$}}
\r
710 \long\def\@mpmakefntext#1{\noindent
\r
711 \hbox{$^{\mathrm{\@thefnmark}}$} #1}
\r
712 \def\@iiiminipage#1#2[#3]#4{%
\r
715 \setlength\@tempdima{#4}%
\r
716 \def\@mpargs{{#1}{#2}[#3]{#4}}%
\r
717 \setbox\@tempboxa\vbox\bgroup
\r
720 \textwidth\hsize \columnwidth\hsize
\r
722 \def\@mpfn{mpfootnote}\def\thempfn{\thempfootnote}\c@mpfootnote\z@
\r
723 \let\@footnotetext\@mpfootnotetext
\r
724 \let\@makefntext\@mpmakefntext
\r
725 \let\@makefnmark\@mpmakefnmark
\r
726 \let\@listdepth\@mplistdepth \@mplistdepth\z@
\r
727 \@minipagerestore\global\@minipagetrue %% \global added 24 May 89
\r
728 \everypar{\global\@minipagefalse\everypar{}}}
\r
730 \long\def\@makefntext#1{\noindent\hbox to 1em
\r
731 {$^{\fn@presym\mathrm{\@thefnmark}}$\hss}#1}
\r
732 \def\@makefnmark{\,\hbox{$^{\fn@presym\mathrm{\@thefnmark}}$}\,}
\r
733 \def\patched@end@dblfloat{%
\r
735 \par\vskip\z@skip %% \par\vskip\z@ added 15 Dec 87
\r
736 \global\@minipagefalse
\r
738 \egroup %% end of vbox
\r
740 \ifnum\@floatpenalty <\z@
\r
742 \@cons\@dbldeferlist\@currbox
\r
744 \ifnum \@floatpenalty =-\@Mii \@Esphack\fi
\r
749 \setcounter{topnumber}{5}
\r
750 \def\topfraction{0.99}
\r
751 \def\textfraction{0.05}
\r
752 \def\floatpagefraction{0.9}
\r
753 \setcounter{bottomnumber}{5}
\r
754 \def\bottomfraction{0.99}
\r
755 \setcounter{totalnumber}{10}
\r
756 \def\dbltopfraction{0.99}
\r
757 \def\dblfloatpagefraction{0.8}
\r
758 \setcounter{dbltopnumber}{5}
\r
759 \long\def\@maketablecaption#1#2{\@tablecaptionsize
\r
760 \global \@minipagefalse
\r
761 \hbox to \hsize{\parbox[t]{\hsize}{#1 \\ #2}}}
\r
762 \long\def\@makefigurecaption#1#2{\@figurecaptionsize
\r
763 \vskip \@overcaptionskip
\r
764 \setbox\@tempboxa\hbox{#1. #2}
\r
765 \ifdim \wd\@tempboxa >\hsize % IF longer than one line THEN
\r
766 \unhbox\@tempboxa\par % set as justified paragraph
\r
768 \global \@minipagefalse
\r
769 \hbox to\hsize{\hfil\box\@tempboxa\hfil}% center single line.
\r
771 \def\@makecaption{\@makefigurecaption}
\r
772 \def\conttablecaption{\par \begingroup \@parboxrestore \normalsize
\r
773 \@makecaption{\fnum@table\,---\,continued}{}\par
\r
774 \vskip-1pc \endgroup}
\r
775 \def\contfigurecaption{\vskip-1pc \par \begingroup \@parboxrestore
\r
777 \@makecaption{\fnum@figure\,---\,continued}{}\par
\r
779 \newcounter{figure}
\r
780 \def\thefigure{\@arabic\c@figure}
\r
781 \def\fps@figure{tbp}
\r
782 \def\ftype@figure{1}
\r
783 \def\ext@figure{lof}
\r
784 \def\fnum@figure{\figurename~\thefigure}
\r
786 \let\@makecaption\@makefigurecaption
\r
787 \let\contcaption\contfigurecaption \@float{figure}}
\r
788 \let\endfigure\end@float
\r
789 \@namedef{figure*}{%
\r
790 \let\@makecaption\@makefigurecaption
\r
791 \let\contcaption\contfigurecaption \@dblfloat{figure}}
\r
792 \@namedef{endfigure*}{\end@dblfloat}
\r
794 \def\thetable{\@arabic\c@table}
\r
795 \def\fps@table{tbp}
\r
796 \def\ftype@table{2}
\r
797 \def\ext@table{lot}
\r
798 \def\fnum@table{\tablename~\thetable}
\r
799 \let\old@floatboxreset\@floatboxreset
\r
801 \let\@makecaption\@maketablecaption
\r
802 \def\@floatboxreset{%
\r
806 \let\footnoterule\relax
\r
807 \let\contcaption\conttablecaption \@float{table}}
\r
808 \let\endtable\end@float
\r
809 \@namedef{table*}{%
\r
810 \let\@makecaption\@maketablecaption
\r
811 \def\@floatboxreset{%
\r
815 \let\footnoterule\relax
\r
816 \let\contcaption\conttablecaption \@dblfloat{table}}
\r
817 \@namedef{endtable*}{\end@dblfloat}
\r
818 \newtoks\t@glob@notes % List of all notes
\r
819 \newtoks\t@loc@notes % List of notes for one element
\r
820 \newcount\note@cnt % Number of notes per element
\r
821 \newtoks\corauth@text
\r
822 \newtoks\email@text
\r
824 \newcounter{corauth}
\r
825 \newcounter{author} % Author counter
\r
826 \newcount\n@author % Total number of authors
\r
827 \def\n@author@{1} % idem, read from .aux file
\r
828 \newcounter{collab} % Collaboration counter
\r
829 \newcount\n@collab % Total number of collaborations
\r
830 \def\n@collab@{} % idem, read from .aux file
\r
831 \newcounter{address} % Address counter
\r
832 \def\theHaddress{\arabic{address}}% for hyperref
\r
833 \newdimen\sv@mathsurround % Dimen register to save \mathsurround
\r
834 \newcount\sv@hyphenpenalty % Count register to save \hyphenpenalty
\r
835 \newcount\prev@elem \prev@elem=0 % Variables to keep track of
\r
836 \newcount\cur@elem \cur@elem=0 % types of elements that are processed
\r
838 \chardef\e@subtitle=1
\r
839 \chardef\e@author=2
\r
840 \chardef\e@collab=3
\r
841 \chardef\e@address=4
\r
842 \newif\if@newelem % Switch to new type of element?
\r
843 \newif\if@firstauthor % First author or collaboration?
\r
844 \newif\if@preface % If preface: omit history and abstract
\r
845 \newif\if@hasabstract % If abstract / keywords: do not omit rules
\r
846 \newif\if@haskeywords % If abstract / keywords: do not omit rules
\r
847 \newbox\fm@box % Box for collected front matter
\r
848 \newdimen\fm@size % Total height of \fm@box
\r
849 \newbox\t@abstract % Box for abstract
\r
850 \newbox\t@keyword % Box for keyword abstract
\r
851 \let\report@elt\@gobble
\r
852 \def\add@tok#1#2{\global#1\expandafter{\the#1#2}}
\r
853 \def\add@xtok#1#2{\begingroup
\r
855 \xdef\@act{\global\noexpand#1{\the#1#2}}\@act
\r
857 \def\beg@elem{\global\t@loc@notes={}\global\note@cnt\z@}
\r
858 \def\@xnamedef#1{\expandafter\xdef\csname #1\endcsname}
\r
860 \let\\=\relax \let\rm\relax
\r
861 \let\ss=\relax \let\ae=\relax \let\oe=\relax
\r
862 \let\AE=\relax \let\OE=\relax
\r
863 \let\o=\relax \let\O=\relax
\r
864 \let\i=\relax \let\j=\relax
\r
865 \let\aa=\relax \let\AA=\relax
\r
866 \let\l=\relax \let\L=\relax
\r
867 \let\d=\relax \let\b=\relax \let\c=\relax
\r
869 \def\protect{\noexpand\protect\noexpand}}
\r
870 \def\proc@elem#1#2{\begingroup
\r
871 \no@harm % make a few instructions harmless
\r
872 \let\thanksref\@gobble % remove \thanksref from element
\r
873 \let\corauthref\@gobble
\r
874 \@xnamedef{@#1}{#2}% % and store as \@#1
\r
875 \let\thanksref\add@thanksref
\r
876 \let\corauthref\add@thanksref
\r
877 \setbox\@tempboxa\hbox{#2}%
\r
879 \prev@elem=\cur@elem % keep track of type of previous
\r
880 \cur@elem=\csname e@#1\endcsname % and current element
\r
882 \def\add@thanksref#1{\global\advance\note@cnt\@ne
\r
883 \ifnum\note@cnt>\@ne \add@xtok\t@loc@notes{\note@sep}\fi
\r
884 \add@tok\t@loc@notes{\ref{#1}}}
\r
886 \def\thanks{\@ifnextchar[{\@tempswatrue
\r
887 \thanks@optarg}{\@tempswafalse\thanks@optarg[]}}
\r
888 \def\thanks@optarg[#1]#2{\refstepcounter{footnote}%
\r
889 \if@tempswa\label{#1}\else\relax\fi
\r
890 \add@tok\t@glob@notes{\footnotetext}%
\r
891 \add@xtok\t@glob@notes{[\the\c@footnote]}%
\r
892 \add@tok\t@glob@notes{{#2}}%
\r
894 \def\corauth{\@ifnextchar[{\@tempswatrue
\r
895 \corauth@optarg}{\@tempswafalse\corauth@optarg[]}}
\r
896 \def\corauth@optarg[#1]#2{\refstepcounter{corauth}%
\r
897 \if@tempswa\label{#1}\else\relax\fi
\r
898 \add@tok\corauth@text{\footnotetext}%
\r
899 \add@xtok\corauth@text{[\the\c@corauth]}%
\r
900 \add@tok\corauth@text{{#2}}\ignorespaces}
\r
901 \newcommand\ead[1][email]{%
\r
903 \expandafter\ifcase\csname has@ead@#1\endcsname
\r
904 \expandafter\global\expandafter\chardef
\r
905 \csname has@ead@#1\endcsname=1\relax\else
\r
906 \expandafter\global\expandafter\chardef
\r
907 \csname has@ead@#1\endcsname=2\relax\fi
\r
911 \expandafter\add@tok\csname #1@text\endcsname{\texttt{#2}\ead@au}%
\r
912 \expandafter\add@xtok\csname #1@text\endcsname{{\@author}}%
\r
915 \def\add@eadcomma#1{%
\r
916 \expandafter\ifcase\csname has@ead@#1\endcsname\else
\r
917 \expandafter\add@tok\csname #1@text\endcsname{, }\fi
\r
919 \let\@ead@au\@empty
\r
920 \def\ead@newau{\ifx\@ead@au\@empty\else\ead@addau\@ead@au
\r
921 \let\@ead@au\@empty\fi}
\r
922 \let\ead@endau\ead@newau
\r
923 \def\ead@addau#1{ (#1)}
\r
924 \def\ead@au#1{\def\@ead@au{#1}}
\r
925 \def\email@name{Email address}
\r
926 \def\emails@name{Email addresses}
\r
927 \chardef\has@ead@email=0
\r
929 \def\urls@name{URLs}
\r
930 \chardef\has@ead@url=0
\r
931 \let\real@refstepcounter\refstepcounter
\r
932 \def\footnote{\@ifnextchar[{\@xfootnote}{\real@refstepcounter
\r
933 {\@mpfn}\protected@xdef\@thefnmark{\thempfn}\@footnotemark\@footnotetext}}
\r
934 \def\footnotemark{\@ifnextchar[{\@xfootnotemark
\r
935 }{\real@refstepcounter{footnote}\xdef\@thefnmark{\thefootnote}\@footnotemark}}
\r
936 \def\footnoterule{\kern-3\p@
\r
937 \hrule \@width 3pc % The \hrule has default \@height of 0.4pt.
\r
939 \let\report@elt\@gobble
\r
940 \newenvironment{NoHyper}{}{}
\r
943 \let\@corresp@note\relax
\r
944 \global\t@glob@notes={}\global\c@author\z@
\r
945 \global\c@collab\z@ \global\c@address\z@
\r
946 \sv@mathsurround\mathsurround \m@th
\r
947 \global\n@author=0\n@author@\relax
\r
948 \global\n@collab=0\n@collab@\relax
\r
949 \global\advance\n@author\m@ne % In comparisons later on we need
\r
950 \global\advance\n@collab\m@ne % n@author-1 and n@collab-1
\r
951 \global\@firstauthortrue % set to false by first \author or \collab
\r
952 \global\@hasabstractfalse % Default: no abstract or keywords
\r
953 \global\@haskeywordsfalse % Default: no abstract or keywords
\r
954 \global\@prefacefalse % not preface
\r
955 \ifnum\c@firstpage=\c@lastpage
\r
956 \gdef\@pagerange{\@pagenumprefix\ESpagenumber{firstpage}}
\r
958 \gdef\@pagerange{\@pagenumprefix
\r
959 \ESpagenumber{firstpage}--\@pagenumprefix\ESpagenumber{lastpage}}%
\r
962 \open@fm \ignorespaces}
\r
963 \def\preface{\@prefacetrue}
\r
964 \def\endfrontmatter{%
\r
965 \ifx\@runauthor\relax
\r
966 \global\let\@runauthor\@runningauthor
\r
968 \global\n@author=\c@author
\r
969 \global\n@collab=\c@collab \@writecount
\r
971 \thispagestyle{copyright}% % Format rest of front matter:
\r
972 \if@preface \else % IF not preface THEN
\r
973 \vskip \@overhistoryskip
\r
974 \history@fmt % print history (received, ...)
\r
975 \newcount\c@sv@footnote
\r
976 \global\c@sv@footnote=\c@footnote % save current footnote number
\r
977 \if@hasabstract % IF abstract/ keywords THEN
\r
978 \vskip \@preabstractskip % Space above rule
\r
979 \hrule height 0.4\p@ % Rule above abstract/keywords
\r
981 \unvbox\t@abstract % print abstract, if any
\r
983 \if@haskeywords % IF keywords THEN
\r
984 \vskip \@overkeywordskip
\r
985 \unvbox\t@keyword % Keyword abstract, if any
\r
988 \hrule height 0.4\p@ % rule below abstract/keywords
\r
989 \dedicated@fmt % print dedication
\r
990 \vskip \@belowfmskip % Vertical space below frontmatter
\r
992 \close@fm % Close front matter material.
\r
993 \output@glob@notes % Put notes at bottom of 1st page
\r
994 \global\c@footnote=\c@sv@footnote % restore footnote number
\r
995 \global\@prefacefalse
\r
996 \global\leftskip\z@ % Restore the normal values of
\r
997 \global\@rightskip\z@ % \leftskip,
\r
998 \global\rightskip\@rightskip % \rightskip and
\r
999 \global\mathsurround\sv@mathsurround % \mathsurround.
\r
1000 \let\title\relax \let\author\relax
\r
1001 \let\collab\relax \let\address\relax
\r
1002 \let\frontmatter\relax \let\endfrontmatter\relax
\r
1003 \let\@maketitle\relax \let\@@maketitle\relax
\r
1006 \let\maketitle\relax
\r
1007 \newdimen\t@xtheight
\r
1008 \t@xtheight\textheight \advance\t@xtheight-\splittopskip
\r
1009 \def\open@fm{\global\setbox\fm@box=\vbox\bgroup
\r
1010 \hsize=\@frontmatterwidth % Front matter is page-wide by default
\r
1011 \centering % and centered
\r
1012 \sv@hyphenpenalty\hyphenpenalty % (save \hyphenpenalty)
\r
1013 \hyphenpenalty\@M} % and not hyphenated
\r
1014 \def\close@fm{\egroup % close \vbox (\fm@box)
\r
1015 \fm@size=\dp\fm@box \advance\fm@size by \ht\fm@box
\r
1016 \@whiledim\fm@size>\t@xtheight \do{%
\r
1017 \global\setbox\@tempboxa=\vsplit\fm@box to \t@xtheight
\r
1018 \unvbox\@tempboxa \newpage
\r
1019 \fm@size=\dp\fm@box \advance\fm@size by \ht\fm@box}
\r
1021 \emergencystretch=1pc \twocolumn[\unvbox\fm@box]
\r
1025 \def\output@glob@notes{\bgroup
\r
1028 \def\justify@off{\let\\=\@normalcr
\r
1029 \leftskip\z@ \@rightskip\@flushglue \rightskip\@rightskip}
\r
1030 \def\justify@on{\let\\=\@normalcr
\r
1031 \leftskip\z@ \@rightskip\z@ \rightskip\@rightskip}
\r
1032 \def\normal@text{\global\let\\=\@normalcr
\r
1033 \global\leftskip\z@ \global\@rightskip\z@ \global\rightskip\@rightskip
\r
1034 \global\parfillskip\@flushglue}
\r
1035 \def\@writecount{\write\@mainaux{\string\global
\r
1036 \string\@namedef{n@author@}{\the\n@author}}%
\r
1037 \write\@mainaux{\string\global\string
\r
1038 \@namedef{n@collab@}{\the\n@collab}}}
\r
1041 \title@note@fmt % formatting instruction
\r
1042 \add@tok\t@glob@notes % for \thanks commands
\r
1043 {\title@note@fmt}%
\r
1044 \proc@elem{title}{#1}%
\r
1045 \def\title@notes{\the\t@loc@notes}% % store the notes of the title,
\r
1046 \title@fmt{\@title}{\title@notes}% % print the title
\r
1050 \proc@elem{subtitle}{#1}%
\r
1051 \def\title@notes{\the\t@loc@notes}% % store the notes of the title,
\r
1052 \subtitle@fmt{\@subtitle}{\title@notes}% print the title
\r
1054 \newdimen \@logoheight \@logoheight 5pc
\r
1055 \def\@Lhook{\vrule \@height \@logoheight \@width \z@ \vrule \@height 10\p@ \@width 0.2\p@ \vrule \@height 0.2\p@ \@width 10pt}
\r
1056 \def\@Rhook{\vrule \@height 0.2\p@ \@width 10\p@ \vrule \@height 10\p@ \@width 0.2\p@ \vrule \@height \@logoheight \@width \z@}
\r
1057 \def\title@fmt#1#2{%
\r
1058 \@ifundefined{@runtitle}{\global\def\@runtitle{#1}}{}%
\r
1059 \vspace*{12pt} % Vertical space above title
\r
1060 {\@titlesize #1\,\hbox{$^{#2}$}\par}%
\r
1061 \vskip\@undertitleskip
\r
1062 \vskip24\p@ % Vertical space below title
\r
1064 \def\subtitle@fmt#1#2{% % No vertical space above sub-title
\r
1065 {\@titlesize #1\,\hbox{$^{#2}$}}\par}
\r
1066 \def\title@note@fmt{\def\thefootnote{\fnstar{footnote}}}
\r
1067 \def\author{\@ifnextchar[{\author@optarg}{\author@optarg[]}}
\r
1068 \def\author@optarg[#1]#2{\stepcounter{author}%
\r
1070 \add@tok\email@text{\ead@newau}%
\r
1071 \add@tok\url@text{\ead@newau}%
\r
1072 \@for\@tempa:=#1\do{\expandafter\add@thanksref\expandafter{\@tempa}}%
\r
1073 \report@elt{author}\proc@elem{author}{#2}%
\r
1074 \ifnum0\n@collab@=\z@ \runningauthor@fmt \fi
\r
1075 \author@fmt{\the\c@author}{\the\t@loc@notes}{\@author}%
\r
1077 \def\runningauthor@fmt{%
\r
1078 \begingroup\no@harm
\r
1080 \ifnum0\n@author@ > 2
\r
1081 \global\edef\@runningauthor{\@author\ et al.}%
\r
1083 \global\let\@runningauthor\@author%
\r
1085 \else % \c@author > 1
\r
1086 \ifnum0\n@author@ = 2
\r
1087 \global\edef\@runningauthor{\@runningauthor\ \& \noexpand\@author}%
\r
1092 \def\author@fmt#1#2#3{\@newelemtrue
\r
1094 \first@author \global\@firstauthorfalse \fi
\r
1095 \ifnum\prev@elem=\e@author \global\@newelemfalse \fi
\r
1096 \if@newelem \author@fmt@init \fi
\r
1097 \edef\@tempb{#2}\ifx\@tempb\@empty
\r
1098 \hbox{{\author@font #3}}\else
\r
1099 \hbox{{\author@font #3}\,$^{\mathrm{#2}}$}%
\r
1101 \def\first@author{\author@note@fmt
\r
1103 \add@tok\t@glob@notes
\r
1104 {\output@corauth@text
\r
1105 \output@ead@text{email}%
\r
1106 \output@ead@text{url}%
\r
1107 \author@note@fmt}%
\r
1109 \def\author@fmt@init{%
\r
1111 \vskip 8\p@ \@plus 4\p@ \@minus 2\p@
\r
1113 \leavevmode} % Vertical space above author list
\r
1114 \def\and{\unskip~and~}
\r
1115 \def\collab{\@ifstar{\collab@arg}{\collab@arg}}
\r
1116 \let\collaboration=\collab
\r
1117 \def\collab@arg#1{\stepcounter{collab}%
\r
1118 \if@firstauthor \first@author \global\@firstauthorfalse \fi
\r
1119 \gdef\@runningauthor{#1}%
\r
1121 \proc@elem{collab}{#1}%
\r
1122 \collab@fmt{\the\c@collab}{\the\t@loc@notes}{\@collab}%
\r
1124 \def\collab@fmt#1#2#3{\@newelemtrue
\r
1125 \ifnum\prev@elem=\e@collab \global\@newelemfalse \fi
\r
1126 \if@newelem \collab@fmt@init \fi
\r
1127 \par % Start new paragraph
\r
1128 \edef\@tempb{#2}\ifx\@tempb\@empty
\r
1129 {\@authorsize #3}\else
\r
1130 {\@authorsize #3\,$^{\mathrm{#2}}$}}
\r
1131 \def\collab@fmt@init{\vskip 1em} % Vertical space above list
\r
1132 \def\author@note@fmt{\setcounter{footnote}{0}%
\r
1133 \def\thefootnote{\xarabic{footnote}}}
\r
1134 \let\collab@note@fmt=\author@note@fmt
\r
1135 \def\corauth@mark@fmt{\def\thecorauth{\astsymbol{corauth}}}
\r
1136 \def\output@corauth@text{\def\thefootnote{\astsymbol{footnote}}%
\r
1137 \the\corauth@text}
\r
1138 \def\output@ead@text#1{%
\r
1139 \expandafter\add@tok\csname #1@text\endcsname{\ead@endau}%
\r
1140 \expandafter\ifcase\csname has@ead@#1\endcsname\else
\r
1141 {\let\thefootnote\relax
\r
1142 \footnotetext[0]{\raggedright\textit{%
\r
1143 \expandafter\ifcase\csname has@ead@#1\endcsname\or
\r
1144 \csname #1@name\endcsname\else
\r
1145 \csname #1s@name\endcsname\fi
\r
1147 \expandafter\the\csname #1@text\endcsname.}}%
\r
1150 \expandafter\expandafter\expandafter\ifnum\expandafter\the\@nameuse{c@#1}<0
\r
1151 *\else\arabic{#1} \fi}
\r
1153 \expandafter\expandafter\expandafter\ifnum\expandafter\the\@nameuse{c@#1}<0
\r
1154 *\else\alph{#1} \fi}
\r
1155 \def\xfnsymbol#1{%
\r
1156 \expandafter\expandafter\expandafter\ifnum\expandafter\the\@nameuse{c@#1}<0
\r
1157 *\else\fnsymbol{#1} \fi}
\r
1158 \def\address{\@ifstar{\address@star}%
\r
1159 {\@ifnextchar[{\address@optarg}{\address@noptarg}}}
\r
1160 \def\address@optarg[#1]#2{\real@refstepcounter{address}%
\r
1162 \report@elt{address}\proc@elem{address}{#2}%
\r
1163 \address@fmt{\c@address}{\the\t@loc@notes}{\@address}{#1}%
\r
1164 \if@Elproofing\else\label{#1}\fi
\r
1166 \def\address@noptarg#1{\real@refstepcounter{address}%
\r
1168 \proc@elem{address}{#1}%
\r
1169 \address@fmt{\z@}{\the\t@loc@notes}{\@address}{\theaddress}%
\r
1171 \def\address@star#1{%
\r
1173 \proc@elem{address}{#1}%
\r
1174 \address@fmt{\m@ne}{\the\t@loc@notes}{\@address}{*}%
\r
1176 \def\theaddress{\alph{address}}
\r
1177 \def\address@fmt#1#2#3#4{\@newelemtrue
\r
1178 \if@Elproofing\def\@eltag{#4}\else\def\@eltag{\theaddress}\fi
\r
1179 \ifnum\prev@elem=\e@address \@newelemfalse \fi
\r
1180 \if@newelem \address@fmt@init \fi
\r
1181 \noindent \bgroup \@addressstyle
\r
1183 #3\,$^{\mathrm{#2}}$\space%
\r
1186 $^{\phantom{\mathrm{\@eltag}}}$\space #3\,$^{\mathrm{#2}}$%
\r
1188 $^{\mathrm{\@eltag}}\space$#3\,$^{\mathrm{#2}}$%
\r
1192 \def\address@fmt@init{%
\r
1193 \par % Start new paragraph
\r
1194 \vskip 6\p@ \@plus 3\p@ \@minus 1.5pt}
\r
1195 \def\abstract{\@ifnextchar[{\@abstract}{\@abstract[]}}
\r
1196 \def\@abstract[#1]{%
\r
1197 \global\@hasabstracttrue
\r
1198 \hyphenpenalty\sv@hyphenpenalty % restore \hyphenpenalty
\r
1199 \global\setbox\t@abstract=\vbox\bgroup
\r
1201 \@rightskip\z@ \rightskip\@rightskip \parfillskip\@flushglue
\r
1203 \parindent 1em % \parindent in abstract
\r
1204 \noindent {\bfseries\abstractname} % caption `Abstract' (bold)
\r
1205 \vskip 0.5\@bls % half a line of space below
\r
1206 \noindent\ignorespaces
\r
1208 \def\endabstract{\par \egroup}
\r
1210 \global\@haskeywordstrue % Implies rules are to be printed
\r
1211 \hyphenpenalty\sv@hyphenpenalty % restore \hyphenpenalty
\r
1212 \def\sep{\unskip, } % separator for multiple keywords
\r
1213 \def\MSC{\par\leavevmode\hbox {\it 1991 MSC:\ }}%
\r
1214 \def\PACS{\par\leavevmode\hbox {\it PACS:\ }}%
\r
1215 \global\setbox\t@keyword=\vbox\bgroup
\r
1218 \vskip 10\p@ \@plus 2\p@ \@minus 2\p@ % One line of space above keywords.
\r
1219 \noindent\@keywordheading
\r
1220 \justify@off % Keywords are not justified.
\r
1222 \def\endkeyword{\par \egroup}
\r
1223 \def\runtitle#1{\gdef\@runtitle{#1}}
\r
1224 \def\runauthor#1{\gdef\@runauthor{#1}}
\r
1225 \let\@runauthor\relax
\r
1226 \let\@runtitle\relax
\r
1227 \let\@runningauthor\relax
\r
1231 \def\journal#1{\gdef\@journal{#1}}
\r
1232 \def\volume#1{\gdef\@volume{#1}} \def\@volume{0}
\r
1233 \def\issue#1{\gdef\@issue{#1}} \def\@issue{0}
\r
1234 \newcount\@pubyear
\r
1235 \@pubyear=\number\year
\r
1236 \def\company#1{\def\@company{#1}}
\r
1237 \def\@copyrightyear{\number\year}
\r
1238 \def\@shortenyear#1#2#3#4\\{\global\def\@shortyear{#3#4}}
\r
1239 \expandafter\@shortenyear\the\@pubyear\\
\r
1240 \def\pubyear#1{\global\@pubyear#1
\r
1241 \expandafter\@shortenyear\the\@pubyear\\%
\r
1244 \gdef\@copyrightyear{#1}%
\r
1246 \let\copyrightyear\copyear
\r
1247 \newcounter{firstpage}
\r
1248 \newcounter{lastpage}
\r
1249 \let\ESpagenumber\arabic
\r
1250 \def\firstpage#1{\def\@tempa{#1}\ifx\@tempa\@empty\else
\r
1251 \setcounter{firstpage}{#1}%
\r
1252 \global\c@page=#1 \ignorespaces\fi}
\r
1253 \setcounter{firstpage}{1}
\r
1254 \let\realpageref\pageref
\r
1255 \setcounter{lastpage}{0}
\r
1256 \def\lastpage#1{\def\@tempa{#1}\ifx\@tempa\@empty\else
\r
1257 \setcounter{lastpage}{#1}\ignorespaces\fi
\r
1261 \addtocounter{page}{-1}%
\r
1262 \immediate\write\@auxout{%
\r
1263 \string\global\string\c@lastpage=\the\c@page}%
\r
1264 \addtocounter{page}{1}%
\r
1266 \def\date#1{\gdef\@date{#1}} \def\@date{\today}
\r
1269 \def\received#1{\def\@tempa{#1}\ifx\@tempa\@empty\else\gdef\@received{#1}\fi}
\r
1270 \def\@received{\relax}
\r
1271 \def\revised#1{\def\@tempa{#1}\ifx\@tempa\@empty\else\gdef\@revised{#1}\fi}
\r
1272 \def\@revised{\relax}
\r
1273 \def\accepted#1{\def\@tempa{#1}\ifx\@tempa\@empty\else\gdef\@accepted{#1}\fi}
\r
1274 \def\@accepted{\relax}
\r
1275 \def\communicated#1{\def\@tempa{#1}\ifx\@tempa\@empty\else\gdef\@communicated{#1}\fi}
\r
1276 \def\@communicated{\relax}
\r
1277 \def\dedicated#1{\def\@tempa{#1}\ifx\@tempa\@empty\else\gdef\@dedicated{#1}\fi}
\r
1278 \def\@dedicated{\relax}
\r
1279 \def\presented#1{\def\@tempa{#1}\ifx\@tempa\@empty\else\gdef\@presented{#1}\fi}
\r
1280 \def\@presented{\relax}
\r
1281 \def\articletype#1{\gdef\@articletype{#1}}
\r
1282 \@ifundefined{@articletype}{\def\@articletype{}}{}
\r
1283 \def\received@prefix{Received~}
\r
1284 \def\revised@prefix{; revised~}
\r
1285 \def\accepted@prefix{; accepted~}
\r
1286 \def\communicated@prefix{; communicated~by~}
\r
1287 \def\history@prefix{}
\r
1288 \def\received@postfix{}
\r
1289 \def\revised@postfix{}
\r
1290 \def\accepted@postfix{}
\r
1291 \def\communicated@postfix{}
\r
1292 \def\history@postfix{}
\r
1293 \def\empty@data{\relax}
\r
1294 \def\history@fmt{%
\r
1297 \vskip 6\p@ \@plus 2\p@ \@minus 1\p@ % Vertical space above history
\r
1298 \ifx\@received\empty@data \else % If there is no \received,
\r
1299 % do not print anything
\r
1302 \received@prefix\@received \received@postfix%
\r
1303 \ifx\@revised\empty@data \else
\r
1304 \revised@prefix\@revised \revised@postfix%
\r
1306 \ifx\@accepted\empty@data \else
\r
1307 \accepted@prefix\@accepted \accepted@postfix%
\r
1309 \ifx\@communicated\empty@data \else
\r
1310 \communicated@prefix\@communicated \communicated@postfix%
\r
1315 \def\dedicated@fmt{%
\r
1316 \ifx\@dedicated\empty@data \else
\r
1317 \vskip 4\p@ \@plus 3\p@
\r
1318 \normalsize\it\centering \@dedicated
\r
1320 \def\@alph#1{\ifcase#1\or a\or b\or c\or d\or e\or f\or g\or h\or i\or
\r
1321 j\or k\or \ensuremath{\ell}\or m\or n\or o\or p\or q\or r\or s\or t\or
\r
1322 u\or v\or w\or x\or y\or z\or aa\or ab\or ac\or ad\or ae\or af\or ag\or
\r
1323 ah\or ai\or aj\or ak\or a\ensuremath{\ell}\or am\or an\or ao\or ap\or
\r
1324 aq\or ar\or as\or at\or au\or av\or aw\or ay\or az\or ba\or bb\or bc\or
\r
1325 bd\or be\or bf\or bg\or bh\or bi\or bj\or bk\or b\ensuremath{\ell}\or
\r
1326 bm\or bn\or bo\or bp\or bq\or br\or bs\or bt\or bu\or bw\or bx\or by\or
\r
1327 bz\or ca\or cb\or cc\or cd\or ce\or cf\or cg\or ch\or ci\or cj\or ck\or
\r
1328 c\ensuremath{\ell}\or cm\or cn\or co\or cp\or cq\or cr\or cs\or ct\or
\r
1329 cu\or cw\or cx\or cy\or cz\or da\or db\or dc\or dd\or de\or df\or dg\or
\r
1330 dh\or di\or dj\or dk\or d\ensuremath{\ell}\or dm\or dn\or do\or dp\or
\r
1331 dq\or dr\or ds\or dt\or du\or dw\or dx\or dy\or dz\or ea\or eb\or ec\or
\r
1332 ed\or ee\or ef\or eg\or eh\or ei\or ej\or ek\or e\ensuremath{\ell}\or
\r
1333 em\or en\or eo\or ep\or eq\or er\or es\or et\or eu\or ew\or ex\or ey\or
\r
1334 ez\else\@ctrerr\fi}
\r
1335 \def\fnstar#1{\@fnstar{\@nameuse{c@#1}}}
\r
1336 \def\@fnstar#1{\ifcase#1\or
\r
1338 \hbox{$\star\star$}\or
\r
1339 \hbox{$\star\star\star$}\or
\r
1340 \hbox{$\star\star\star\star$}\or
\r
1341 \hbox{$\star\star\star\star\star$}\or
\r
1342 \hbox{$\star\star\star\star\star\star$}
\r
1347 \def\astsymbol#1{\@astsymbol{\@nameuse{c@#1}}}
\r
1348 \def\@astsymbol#1{\ifcase#1\or
\r
1350 \hbox{$\ast\ast$}\or
\r
1351 \hbox{$\ast\ast\ast$}\or
\r
1352 \hbox{$\ast\ast\ast\ast$}\or
\r
1353 \hbox{$\ast\ast\ast\ast\ast$}\or
\r
1354 \hbox{$\ast\ast\ast\ast\ast\ast$}%
\r
1359 \mark{{}{}} % Initializes TeX's marks
\r
1360 \def\ps@plain{\let\@mkboth\@gobbletwo
\r
1363 \def\@oddfoot{\hfil {\rmfamily\thepage} \hfil}%
\r
1364 \let\@evenfoot\@oddfoot}
\r
1365 \def\@copyright{\@issn/\@shortyear/\$\@price\ $\copyright$\ \the\@pubyear\
\r
1366 \@company{} All rights reserved}
\r
1367 \def\@jou@vol@pag{\@journal\ \@volume\ (\the\@pubyear)\ \@pagerange}
\r
1368 \def\sectionmark#1{}
\r
1369 \def\subsectionmark#1{}
\r
1370 \let\@j@v@p\@jou@vol@pag % long journal title appears in reprint line
\r
1371 \let\@@j@v@p\@jou@vol@pag % long journal title appears in running headline
\r
1372 \def\sectionmark#1{}
\r
1373 \def\subsectionmark#1{}
\r
1374 \def\ps@copyright{\let\@mkboth\@gobbletwo
\r
1376 \let\@evenhead\@oddhead
\r
1377 \def\@oddfoot{\small\slshape
\r
1379 \ifx\@volume\@tempa
\r
1380 Preprint submitted to \@journal\hfil\@date\/%
\r
1382 Article published in \@jou@vol@pag\hfil\hbox{}\fi}%
\r
1383 \let\@evenfoot\@oddfoot
\r
1385 \let\ps@noissn\ps@empty
\r
1386 \let\ps@headings\ps@plain
\r
1387 \def\today{\number\day\space\ifcase\month\or
\r
1388 January\or February\or March\or April\or May\or June\or
\r
1389 July\or August\or September\or October\or November\or December\fi
\r
1390 \space\number\year}
\r
1391 \def\nuc#1#2{\relax\ifmmode{}^{#1}{\protect\text{#2}}\else${}^{#1}$#2\fi}
\r
1392 \def\itnuc#1#2{\setbox\@tempboxa=\hbox{\scriptsize\it #1}
\r
1393 \def\@tempa{{}^{\box\@tempboxa}\!\protect\text{\it #2}}\relax
\r
1394 \ifmmode \@tempa \else $\@tempa$\fi}
\r
1395 \let\old@vec\vec % save old definition of \vec
\r
1396 \def\pol#1{\old@vec{#1}}
\r
1397 \def\half{{\textstyle\frac{1}{2}}}
\r
1398 \def\threehalf{{\textstyle\frac{3}{2}}}
\r
1399 \def\quart{{\textstyle\frac{1}{4}}}
\r
1400 \if@symbold\else\def\d{\,\mathrm{d}}\fi
\r
1401 \def\e{\mathop{\mathrm{e}}\nolimits}
\r
1403 \def\oint{\ointop}
\r
1404 \newbox\slashbox \setbox\slashbox=\hbox{$/$}
\r
1405 \newbox\Slashbox \setbox\Slashbox=\hbox{\large$/$}
\r
1406 \def\pFMslash#1{\setbox\@tempboxa=\hbox{$#1$}
\r
1407 \@tempdima=0.5\wd\slashbox \advance\@tempdima 0.5\wd\@tempboxa
\r
1408 \copy\slashbox \kern-\@tempdima \box\@tempboxa}
\r
1409 \def\pFMSlash#1{\setbox\@tempboxa=\hbox{$#1$}
\r
1410 \@tempdima=0.5\wd\Slashbox \advance\@tempdima 0.5\wd\@tempboxa
\r
1411 \copy\Slashbox \kern-\@tempdima \box\@tempboxa}
\r
1412 \def\FMslash{\protect\pFMslash}
\r
1413 \def\FMSlash{\protect\pFMSlash}
\r
1414 \def\Cset{\mathbb{C}}
\r
1415 \def\Hset{\mathbb{H}}
\r
1416 \def\Nset{\mathbb{N}}
\r
1417 \def\Qset{\mathbb{Q}}
\r
1418 \def\Rset{\mathbb{R}}
\r
1419 \def\Zset{\mathbb{Z}}
\r
1423 \doublehyphendemerits=5000 % experimental (1993-12-14)
\r
1424 \emergencystretch=1.6pc
\r
1425 \spaceskip=0.3em \@plus 0.17em \@minus 0.12em
\r
1427 \@frontmatterwidth\textwidth
\r
1428 \ps@headings % 'headings' page style
\r
1429 \pagenumbering{arabic} % Arabic page numbers
\r
1430 \def\thepage{\@pagenumprefix\ESpagenumber{page}} % preceded by \@pagenumprefix
\r
1431 \let\baselinestretch\@blstr
\r
1432 \InputIfFileExists{\@shortjid.cfg}{}{}
\r
1435 %% End of file `elsart.cls'.
\r