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