source: anuga_work/publications/anuga_2007/elsart3p.cls @ 5599

Last change on this file since 5599 was 5324, checked in by ole, 16 years ago

Added Elsevier's elsart document class

File size: 13.7 KB
Line 
1%%
2%% This is file `elsart3p.cls',
3%% generated with the docstrip utility.
4%%
5%% The original source files were:
6%%
7%% esl.dtx  (with options: `package,elsauth,wrapper,SL3P')
8%%
9%% elsart3p.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\esp@fileversion{2.20}
25 \def\esp@filedate{2007/08/16}
26 \def\@journal{Elsevier} \def\@company{Elsevier}
27 \def\@issn{000-0000}
28 \def\@shortjid{elsart3p}
29\NeedsTeXFormat{LaTeX2e}[1995/12/01]
30\ProvidesClass{\@shortjid}[\esp@filedate, \esp@fileversion: \@journal]
31\let\@save@journal\@journal
32\let\@save@company\@company
33\let\@save@shortjid\@shortjid
34
35\DeclareOption{onecolumn}{\def\@xcolumn{onecolumn}}
36\DeclareOption{twocolumn}{\def\@xcolumn{twocolumn}}
37\def\@xcolumn{twocolumn}
38\DeclareOption{narrowdisplay}{}
39\DeclareOption*{\PassOptionsToClass{\CurrentOption}{elsart}}
40\ProcessOptions\relax
41 \LoadClass[\@xcolumn]{elsart}
42
43\let\@journal\@save@journal
44\let\@company\@save@company
45\let\@shortjid\@save@shortjid
46
47\def\@xiiipt{12}
48\def\@titlesize{\Large}
49\def\@bibitemsep{\z@ \@plus 0.5\p@ \@minus 0.5\p@}
50\def\captionwidth{.8\linewidth}
51\def\@abstractsize{\fontsize{\@ixpt}{11pt}\selectfont}
52\def\@articletypesize{\fontsize{\@xiiipt}{13pt}\selectfont}
53 \def\normalsize{\@setfontsize\normalsize\@xpt{12}%
54\def\@ptsize{0}
55\abovedisplayskip 5.75\p@ \@plus 2\p@ \@minus 2\p@%
56\belowdisplayskip \abovedisplayskip
57\abovedisplayshortskip \z@ \@plus 2\p@%
58\belowdisplayshortskip 3.5\p@ \@plus 2\p@ \@minus 2\p@
59\let\@listi\@listI}
60\def\small{\@setfontsize\small\@viiipt{10}%
61\abovedisplayskip 7\p@ \@plus 2\p@ \@minus 4\p@%
62\belowdisplayskip \abovedisplayskip
63\abovedisplayshortskip \z@ \@plus 1\p@%
64\belowdisplayshortskip 3\p@ \@plus 1\p@ \@minus 2\p@
65\def\@listi{\topsep 0.5\@bls \parsep\z@ \itemsep\parsep}}
66\let\footnotesize=\small
67\let\@xviiipt\@xviipt
68\def\scriptsize{\@setfontsize\scriptsize\@viiipt{9.5}}
69\def\tiny{\@setfontsize\tiny\@vipt{7}}
70\def\large{\@setfontsize\large\@xiiipt{14}}
71\def\Large{\@setfontsize\Large\@xviipt{20}}
72\def\LARGE{\@setfontsize\LARGE\@xviiipt{22}}
73\def\huge{\@setfontsize\huge\@xxpt{22}}
74\def\Huge{\@setfontsize\Huge\@xxvpt{27}}
75\normalsize                                % Choose the normalsize font.
76\if@twoside
77   \oddsidemargin    \z@
78   \evensidemargin   \z@
79   \marginparwidth  10\p@
80\else
81   \oddsidemargin    \z@
82   \evensidemargin   \z@
83   \marginparwidth   2pc
84\fi
85\marginparsep 20\p@          % Horizontal space between outer margin and
86                            % marginal note
87\topmargin \z@           %    Nominal distance from top of page to top of
88                         %    box containing running head.
89\headheight 10\p@         %
90 \headsep    11\p%
91 \footskip 23\p@
92\bigskipamount=\@bls \@plus 0.3\@bls \@minus 0.3\@bls % 1/1 line
93\medskipamount=0.5\bigskipamount                  % 1/2 line
94\smallskipamount=0.25\bigskipamount               % 1/4 line
95 \textheight 51\baselineskip
96\advance\textheight\topskip  % excl. running head and foot).
97 \textwidth 39pc              % \@Width of text line.
98                             % For two-column mode:
99 \columnsep 2pc               %   Space between columns
100\columnseprule \z@           %   \@Width of rule between columns.
101 \footnotesep 6.65\p@
102\skip\footins 12\p@ \@plus  8\p@          % Space between last line of text and
103                                      % top of first footnote.
104\floatsep 8\p@ \@plus 4\p@ \@minus 2\p@ % Space between adjacent floats moved
105                                         % to top or bottom of text page.
106\textfloatsep 8\p@ \@plus 4\p@ \@minus 2\p@ % Space between main text and floats
107                                         % at top or bottom of page.
108\intextsep 8\p@ \@plus 4\p@ \@minus 2\p@ % Space between in-text figures and
109                                         % text.
110\dblfloatsep      8\p@ \@plus 4\p@ \@minus 4\p@ % Same as \floatsep for double-column
111                                         % figures in two-column mode.
112\dbltextfloatsep 12\p@ \@plus 4\p@ \@minus 4\p@ % \textfloatsep for double-column
113                                         % floats.
114\@fptop \z@ \@plus 1fil    % Stretch at top of float page/column. (Must be
115                         % \z@ \@plus ...)
116\@fpsep 8\p@ \@plus 2fil    % Space between floats on float page/column.
117\@fpbot \z@ \@plus 1fil    % Stretch at bottom of float page/column. (Must be
118                         % \z@ \@plus ... )
119\@dblfptop \z@ \@plus 1fil % Stretch at top of float page. (Must be \z@ \@plus ...)
120\@dblfpsep 8\p@ \@plus 2fil % Space between floats on float page.
121\@dblfpbot \z@ \@plus 1fil % Stretch at bottom of float page. (Must be
122                         % \z@ \@plus ... )
123\marginparpush 5\p@       % Minimum vertical separation between two marginal
124                         % notes.
125\parskip \z@
126\parindent 1em
127 \eqntopsep 8\p@ \@plus 2\p@ \@minus 2\p@ %\parskip, added above and below
128\eqnarraycolsep 1\p@                 % in an \eqnarray.
129\def\part{\@startsection{part}{1}{\z@}{2\@bls \@plus
130  0.4\@bls}{\@bls}{\normalsize}}
131\def\partmark#1{}
132\if@ussrhead
133\def\section{\@startsection{section}{1}{\parindent}{\@bls
134 \@plus .3\@bls \@minus .1\@bls}{-0.00001pt}{\normalsize\bfseries\boldmath}{\relax}}
135\else
136\def\section{\@startsection{section}{1}{\z@}{\@bls
137   \@plus .3\@bls \@minus .1\@bls}{\@bls}{\normalsize\bfseries
138 \boldmath}}
139\fi
140\def\subsection{\@startsection{subsection}{2}{\z@}{\@bls
141  \@plus .3\@bls \@minus .1\@bls}{\@bls}{\normalsize\itshape}}
142\def\subsubsection{\@startsection{subsubsection}{3}{\z@}{\@bls
143  \@plus .2\@bls}{0.0001pt}{\normalsize\itshape}}
144\def\paragraph{\@startsection{paragraph}{4}{\z@}{3.25ex \@plus
145  2ex \@minus 0.2ex}{-1em}{\normalfont\normalsize\itshape}}
146\def\subparagraph{\@startsection{subparagraph}{5}{1em}{3.25ex \@plus
147  2ex \@minus 0.2ex}{-1em}{\normalfont\normalsize\itshape}}
148\def\@sect#1#2#3#4#5#6[#7]#8{%
149  \ifnum #2>\c@secnumdepth
150    \let\@svsec\@empty
151  \else
152    \refstepcounter{#1}\def\@tempa{#8}%
153    \ifx\@tempa\@empty
154      \edef\@svsec{\csname lb@empty@#1\endcsname}%
155    \else
156      \edef\@svsec{\csname lb@#1\endcsname}\fi\fi
157  \@tempskipa #5\relax
158  \ifdim \@tempskipa>\z@
159    \begingroup #6\relax
160\noindent \hskip #3\relax{\@secnumfont{#2}\@svsec}%
161  {\head@style\head@format{#2}{#8}\par}%
162    \endgroup
163    \csname #1mark\endcsname{#7}%
164    \addcontentsline{toc}{#1}{\ifnum #2>\c@secnumdepth \else
165     \protect\numberline{\csname the#1\endcsname}\fi #7}%
166  \else
167    \def\@svsechd{#6\hskip #3\relax {\@secnumfont{#2}\@svsec }%
168      {\head@style\head@format{#2}{#8}}\csname #1mark\endcsname{#7}%
169    \addcontentsline{toc}{#1}{\ifnum #2>\c@secnumdepth \else
170       \protect\numberline{\csname the#1\endcsname}\fi #7}}%
171  \fi
172  \@xsect{#5}}
173\def\@ssect#1#2#3#4#5#6{%
174  \@tempskipa #4\relax
175  \ifdim \@tempskipa>\z@
176    \begingroup
177      #5{%
178        \@hangfrom{\hskip #2}%
179          \interlinepenalty \@M \head@format{#1}{#6}\@@par}%
180    \endgroup
181  \else
182    \def\@svsechd{#5{\hskip #2\relax \head@format{#1}{#6}}}%
183  \fi
184  \@xsect{#4}}
185\def\@startsection#1#2#3#4#5#6{%
186  \if@noskipsec \leavevmode \fi
187  \par
188  \@tempskipa #4\relax
189  \@afterindenttrue
190  \ifdim \@tempskipa <\z@
191    \@tempskipa -\@tempskipa \@afterindentfalse
192  \fi
193  \if@nobreak
194    \everypar{}%
195  \else
196    \addpenalty\@secpenalty\addvspace\@tempskipa
197  \fi
198  \@ifstar
199    {\@ssect{#2}{#3}{#4}{#5}{#6}}%
200    {\@dblarg{\@sect{#1}{#2}{#3}{#4}{#5}{#6}}}}
201
202\@maxlistdepth=2
203\def\labelitemi{--}
204\def\labelitemii{$\cdot$}
205\def\labelenumi{(\theenumi)}        \def\theenumi{\roman{enumi}}
206\def\labelenumii{(\theenumii)}      \def\theenumii{\alph{enumii}}
207 \tabcolsep 1\p@           % idem in tabular environment.
208\def\@arrayclassz{\ifcase \@lastchclass \@acolampacol \or \@ampacol \or
209  \or \or \@addamp \or \@acolampacol \or \@firstampfalse \@acol \fi
210  \edef\@preamble{\@preamble
211  \ifcase \@chnum
212    \hfil$\relax\displaystyle\@sharp$\hfil \or
213    $\relax\displaystyle\@sharp$\hfil      \or
214    \hfil$\relax\displaystyle\@sharp$\fi}}
215\newdimen\Arrayrulewidth \Arrayrulewidth=1.0\p@
216\def\Hline{\noalign{\ifnum0=`}\fi\hrule \@height \Arrayrulewidth \futurelet
217   \@tempa\@xhline}
218\newdimen\crulepostskip \crulepostskip -7\p@
219\def\ccline#1{%
220  \noalign{\vskip\rulepreskip}%
221  \do@ccline(#1,1-0)\cr
222  \noalign{\vskip\crulepostskip}}
223\def\do@ccline(#1-#2,#3){%
224  \ifnum#1>#2\else\@cline[#1-#2]\do@ccline(#3,1-0)\fi
225  \ignorespaces}
226\newdimen\@Ldec \newdimen\@Rdec
227\def\dec #1.#2 {\hbox to\@Ldec{\hss#1}\def\@tempb{#2}%
228\ifx\@tempb\empty\hbox to\@Rdec{\hfill}\else\hbox to\@Rdec{.#2\hss}\fi}
229\def\setdec #1.#2 {\relax
230  \bgroup
231    \setbox0\hbox{\kern1pt\relax#1}\setbox1\hbox{\kern1pt\relax#2}%
232    \global\@Ldec\wd0\global\@Rdec\wd1
233  \egroup}
234\setdec 000.000 % default 3 digits on each side
235\newdimen\@Lpmdec \newdimen\@Rpmdec
236\def\pmdec #1.#2 {\hbox to\@Lpmdec{\hss#1}\def\@tempb{#2}%
237\ifx\@tempb\empty\hbox to\@Rpmdec{\hfill}\else\hbox to\@Rpmdec{.#2\hss}\fi}
238\def\setpmdec #1.#2 {\relax
239  \bgroup
240    \setbox0\hbox{\kern1pt\relax#1}\setbox1\hbox{\kern1pt\relax#2}%
241    \global\@Lpmdec\wd0\global\@Rpmdec\wd1
242  \egroup}
243\setpmdec 0.0 % default 1 digit on each side
244\def\add@thanksref#1{%
245  \global\advance\note@cnt\@ne
246  \def\@tempa{*}\def\@tempb{#1}%
247  \ifx\@tempa\@tempb
248    \ifnum\note@cnt>\@ne \add@xtok\t@loc@notes{\note@sep}\fi
249    \add@tok\t@loc@notes{*}%
250  \else
251    \ifnum\note@cnt>\@ne \add@xtok\t@loc@notes{\note@sep}\fi
252    \add@tok\t@loc@notes{%
253    \if@Elproofing#1\else\ref{#1}\fi
254    }%
255  \fi}
256\def\thanks@optarg[#1]#2{%
257  \def\@tempa{*}\def\@tempb{#1}%
258  \ifx\@tempa\@tempb
259    \@tempcnta=\c@footnote \c@footnote=-1 \label{#1}\c@footnote=\@tempcnta
260    \gdef\@corresp@note{\footnotetext[-1]{#2}}%
261  \else
262    \add@tok\t@glob@notes{\footnotetext}%
263    \refstepcounter{footnote}%
264    \if@Elproofing\else\if@tempswa\label{#1}\else\relax\fi\fi
265    \add@xtok\t@glob@notes{[\the\c@footnote]}%
266    \add@tok\t@glob@notes{{#2}}%
267  \fi
268  \ignorespaces}
269\def\frontmatter{%
270  \newif\if@hastoc\@hastocfalse
271  \let\ltx@tableofcontents\tableofcontents
272  \def\tableofcontents{\global\@hastoctrue}
273  \NoHyper
274  \let\@corresp@note\relax
275  \global\t@glob@notes={}\global\c@author\z@
276  \global\c@collab\z@ \global\c@address\z@
277  \sv@mathsurround\mathsurround \m@th
278  \global\n@author=0\n@author@\relax
279  \global\n@collab=0\n@collab@\relax
280  \global\advance\n@author\m@ne   % In comparisons later on we need
281  \global\advance\n@collab\m@ne   % n@author-1 and n@collab-1
282  \global\@firstauthortrue        % set to false by first \author or \collab
283  \global\@hasabstractfalse       % Default:  no abstract or keywords
284  \global\@haskeywordsfalse       % Default:  no abstract or keywords
285  \global\@prefacefalse           %           not preface
286  \ifnum\c@firstpage=\c@lastpage
287    \gdef\@pagerange{\@pagenumprefix\ESpagenumber{firstpage}}
288  \else
289    \gdef\@pagerange{\@pagenumprefix
290   \ESpagenumber{firstpage}--\@pagenumprefix\ESpagenumber{lastpage}}%
291  \fi
292  \@ifundefined{RIfM@}{}{\global\let\vec\@bfvec}%
293  \open@fm \ignorespaces}
294\t@xtheight\textheight \advance\t@xtheight-\splittopskip
295\def\title@fmt#1#2{%
296\@ifundefined{@runtitle}{\global\def\@runtitle{#1}}{}%
297 \vspace*{\@overtitleskip} % Vertical space above article type,
298  \@articletypesize                  % Size for article type
299  \leavevmode\vphantom{Aye!}
300  \@articletype
301  \vskip12\p@
302  {\@titlesize #1\,\hbox{$^{#2}$}\par}%
303  \vskip\@undertitleskip
304  }
305\def\address@fmt@init{%
306  \par                                % Start new paragraph
307  \vskip \@overaddressskip}               % Vertical space before addresses
308\def\@abstract[#1]{%
309  \global\@hasabstracttrue
310  \hyphenpenalty\sv@hyphenpenalty     % restore \hyphenpenalty
311  \global\setbox\t@abstract=\vbox\bgroup
312  \leftskip\z@
313  \@rightskip\z@ \rightskip\@rightskip \parfillskip\@flushglue
314   \@abstractsize                      % Text in 9/11
315  \parindent 1em                      % \parindent in abstract
316  \noindent {\bfseries\abstractname}  % caption `Abstract' (bold)
317  \vskip 0.5\@bls    % half a line of space below
318\noindent\ignorespaces
319}
320\def\@bfvec#1{\boldsymbol{#1}}
321\def\@pmbfvec#1{\pmb{#1}}
322\mathchardef\Gamma="0000
323\mathchardef\Delta="0001
324\mathchardef\Theta="0002
325\mathchardef\Lambda="0003
326\mathchardef\Xi="0004
327\mathchardef\Pi="0005
328\mathchardef\Sigma="0006
329\mathchardef\Upsilon="0007
330\mathchardef\Phi="0008
331\mathchardef\Psi="0009
332\mathchardef\Omega="000A
333\mathchardef\varGamma="0100
334\mathchardef\varDelta="0101
335\mathchardef\varTheta="0102
336\mathchardef\varLambda="0103
337\mathchardef\varXi="0104
338\mathchardef\varPi="0105
339\mathchardef\varSigma="0106
340\mathchardef\varUpsilon="0107
341\mathchardef\varPhi="0108
342\mathchardef\varPsi="0109
343\mathchardef\varOmega="010A
344\if@TwoColumn
345  \adjdemerits=100
346  \linepenalty=100
347  \doublehyphendemerits=5000        % experimental (1993-12-14)
348  \emergencystretch=1.6pc
349  \spaceskip=0.3em \@plus 0.17em \@minus 0.12em
350\fi
351\binoppenalty=300
352\relpenalty=100
353\clubpenalty=5000                % 'Club line'  at bottom of page.
354\widowpenalty=2000               % 'Widow line' at top of page.
355\displaywidowpenalty=1000        % Math display widow line.
356\predisplaypenalty=150           % Breaking before a math display.
357\postdisplaypenalty=50           % Breaking after a math display.
358\hfuzz=1\p@
359\hbadness=3000
360\@frontmatterwidth\textwidth
361\endinput
362%%
363%% End of file `elsart3p.cls'.
Note: See TracBrowser for help on using the repository browser.