source: trunk/ICRC_01/icrc.cls@ 827

Last change on this file since 827 was 783, checked in by harald, 23 years ago
No comment
File size: 38.3 KB
Line 
1%% File: icrc.cls
2%% =============================================
3%% IMPORTANT NOTICE:
4%% See the copyright conditions below.
5%% =============================================
6%% EGS LaTeX2e Class file
7%% ---------------------------------
8%% LaTeX2e class file for contributions to ICRC
9%% ---------------------------------
10%% Author:
11%% Dieter Schmitt
12%% Copernicus Gesellschaft
13%% Max-Planck-Str. 13
14%% D-37191 Katlenburg-Lindau
15%% Germany
16%%
17%% based on egs.cls by Patrick W. Daly
18%%
19%% Email: egs@copernicus.org
20%% Internet: http://www.copernicus.org/EGS/EGS.html
21%%
22%% This consists of several modules, each with its separate copywrite
23%% The modules that are specific to EGS publications are
24%% Copyright (C) 1994-2000 Copernicus Gesellschaft
25%%
26%% The entire package is available from
27%% http://www.copernicus.org/COPERNICUS/latex/latex.htm
28
29\NeedsTeXFormat{LaTeX2e}[1994/06/01]
30\ProvidesClass{icrc}
31 [2000/11/22 (DS)]
32
33% This is a LaTeX2e class file, to be invoked as
34% \documentclass{isss}
35% It requires the local files
36% article.cls size10.clo fleqn.clo
37
38\newif\if@headers \@headerstrue
39\DeclareOption{fleqn}{\relax}
40\DeclareOption{twoside}{\relax}
41\DeclareOption{twocolumn}{\relax}
42\DeclareOption{titlepage}{\relax}
43\DeclareOption{headers}{\@headerstrue}
44\DeclareOption{noheaders}{\@headersfalse}
45\DeclareOption*{\PassOptionsToClass{\CurrentOption}{article}}
46\ProcessOptions
47\LoadClass[fleqn,a4paper]{article}
48\paperheight=277mm\paperwidth=210mm
49\IfFileExists{times.sty}{\RequirePackage{times}}{}
50
51\@twosidefalse
52
53\renewcommand{\vec}[1]{\ensuremath{\mathchoice{\mbox{\boldmath$\displaystyle#1$}}
54 {\mbox{\boldmath$\textstyle#1$}}
55 {\mbox{\boldmath$\scriptstyle#1$}}
56 {\mbox{\boldmath$\scriptscriptstyle#1$}}}}
57
58\def\refname{References}
59\def\figurename{Fig.}
60\def\tablename{Table}
61\def\fnum@figure{\figurename~\thefigure}
62\def\fnum@table{\tablename~\thetable}
63
64\def\abstractname{Abstract}
65
66\def\acknowname{Acknowledgement}
67\def\acknowsname{Acknowledgements}
68
69\def\@normalsize{\@setsize\normalsize{12pt}\xpt\@xpt
70\abovedisplayskip 10\p@ plus2\p@ minus5\p@
71\belowdisplayskip \abovedisplayskip
72\abovedisplayshortskip \z@ plus3\p@
73\belowdisplayshortskip 6\p@ plus3\p@ minus3\p@
74\let\@listi\@listI}
75
76\def\small{\@setsize\small{11pt}\ixpt\@ixpt
77\abovedisplayskip 8.5\p@ plus3\p@ minus4\p@
78\belowdisplayskip \abovedisplayskip
79\abovedisplayshortskip \z@ plus2\p@
80\belowdisplayshortskip 4\p@ plus2\p@ minus2\p@
81\def\@listi{\leftmargin\leftmargini
82\topsep 4\p@ plus2\p@ minus2\p@\parsep 2\p@ plus\p@ minus\p@
83\itemsep \parsep}}
84
85\let\footnotesize=\small
86
87\def\scriptsize{\@setsize\scriptsize{8pt}\viipt\@viipt}
88\def\tiny{\@setsize\tiny{6pt}\vpt\@vpt}
89\def\large{\@setsize\large{14pt}\xiipt\@xiipt}
90\def\Large{\@setsize\Large{18pt}\xivpt\@xivpt}
91\def\LARGE{\@setsize\LARGE{22pt}\xviipt\@xviipt}
92\def\huge{\@setsize\huge{25pt}\pt\@xxpt}
93\def\Huge{\@setsize\Huge{30pt}\xxvpt\@xxvpt}
94
95\normalsize
96\oddsidemargin -0.9cm
97\evensidemargin -0.9cm
98\topmargin -3.0cm
99\headheight 2cm
100\headsep 0.5cm
101\topskip = 12pt
102\footskip 30pt
103
104\textwidth 17.7cm
105\textheight = 56\baselineskip
106
107\advance\textheight by \topskip
108\columnsep 0.7cm
109\columnseprule 0pt
110
111\parindent 1em
112\parskip 0pt plus 1pt
113
114\def\section{\@startsection {section}{1}{\z@}{-2em plus-1ex minus
115 -.2ex}{1em plus.2ex}{\reset@font\normalsize
116 \bfseries
117}}
118\def\subsection{\@startsection{subsection}{2}{\z@}{-1em plus-0.25ex
119 minus-.2ex}{1em plus.2ex}{\reset@font\normalsize
120 \rmfamily
121}}
122\def\subsubsection{\@startsection{subsubsection}{3}{\z@}{-1em plus
123 -0.25ex minus-.2ex}{1em plus.2ex}{\reset@font\normalsize
124 \rmfamily
125}}
126
127\let\paragraph=\subsubsection
128\let\subparagraph=\paragraph
129
130\@ifundefined{reset@font}{\let\reset@font=\relax}{}
131\setcounter{secnumdepth}{3}
132\def\desfont{\itshape}
133\def\descriptionlabel#1{\hspace\labelsep \desfont #1.}
134\def\description{\list{}{\labelwidth\z@ \leftmargin\z@ \itemindent-\leftmargin
135 \let\makelabel\descriptionlabel\reset@font\small}}
136\let\enddescription\endlist
137
138\setcounter{topnumber}{1}
139\def\topfraction{.7}
140\setcounter{bottomnumber}{1}
141\def\bottomfraction{.3}
142\setcounter{totalnumber}{3}
143\def\textfraction{0}
144\def\floatpagefraction{.5}
145\setcounter{dbltopnumber}{2}
146\def\dbltopfraction{.7}
147\def\dblfloatpagefraction{.5}
148
149\long\def\@makecaption#1#2{%
150 \vskip 10\p@
151 {\reset@font\small{\bf #1.} #2\par}}
152
153\long\def\@makenarrowcap#1#2{\hfill\vbox to \z@{\hsize=5cm \vss
154 \reset@font\small{\bf #1.} #2\par\null}}
155\def\figbox{\@ifstar{\let\egsbox\makebox\@figbox}
156 {\let\egsbox\framebox\@figbox}}
157\def\@figbox#1#2#3{\setbox\@tempboxa=\hbox{%
158 \if!#1!\egsbox{#3}\else
159 \egsbox[#1][c]{\if!#2!#3\else\@tempdima#2\relax
160 \divide\@tempdima by2\relax
161 \advance\@tempdima by-\fboxsep \advance\@tempdima by-\fboxrule
162 \vrule\@height\@tempdima\@depth\@tempdima\@width\z@
163 \vbox to \z@{\vss\hbox{#3}\vss}\fi}\fi}%
164 \@tempdima=\hsize \advance\@tempdima by-\wd\@tempboxa
165 \box\@tempboxa
166 \ifdim\@tempdima>5.5cm \let\@makecaption=\@makenarrowcap\fi
167 }
168\let\@oxfloat=\@xfloat
169\def\@xfloat#1[#2]{\@oxfloat#1[#2]\small}
170
171\leftmargini 2em
172\leftmarginii 1.75em
173\leftmarginiii 1.5em
174\leftmarginiv 1em
175\leftmarginv .5em
176\leftmarginvi .5em
177
178\def\labelitemi{\bf --}
179\def\labelitemii{\bf --}
180\def\labelitemiii{$\m@th\bullet$}
181\def\labelitemiv{$\m@th\cdot$}
182\def\maketitle{\setcounter{Maxaffil}{1}
183
184\if@headers\setcounter{page}{\@fpage}
185\thispagestyle{default}
186%\xdef\@temp{\@journal}
187%\ifx\@temp\ISSS6\thispagestyle{isss6}\fi
188\fi
189
190\setcounter{footnote}{0}
191\begingroup
192\def\@thanks{}\parindent=0pt
193
194\twocolumn[
195 {\begin{minipage}[b][\@tithei][s]{\hsize}
196 \null\vfil
197 \begin{minipage}{\hsize}
198 \raggedright
199 \let\footnotesize\normalsize
200 \let\footnoterule\relax
201 \def\thefootnote{\fnsymbol{footnote}}%
202 \def\@mpfn{footnote}%
203 \let\thempfn=\thefootnote
204 \renewcommand\@makefntext[1]{%
205 \parindent 1em \noindent
206 \@makefnmark##1}
207 {\LARGE\bfseries \@title\par}
208 \vspace{10pt}
209 {\normalsize
210 \renewcommand{\Authfont}{\bfseries}%
211 \renewcommand{\Affilfont}{\mdseries}%
212 \setlength{\affilsep}{4pt}%
213 \baselineskip 15pt
214 \let\and=\sw@and
215 \begin{minipage}[t]{\hsize}\flushleft\baselineskip=12pt%
216 \@author
217 \end{minipage}\par}%
218 \@thanks
219 \end{minipage}
220 \vspace{20pt}
221 \end{minipage}
222}]
223
224\renewcommand\@makefntext[1]{\parindent 1em \noindent ##1}%
225\let\footnotesize\normalsize
226
227\if!\@corresp!\else
228\footnotetext{\textit{Correspondence to:} \@corresp}%
229\fi
230\endgroup
231
232\setcounter{footnote}{0}
233\let\thanks\relax
234\gdef\@thanks{}\gdef\@author{}\gdef\@title{}\let\maketitle\relax
235}
236
237\renewcommand\and{\@centercr}
238\newcommand\sw@and{\end{minipage}\\[1em]\begin{minipage}[t]{\hsize}%
239 \flushleft\baselineskip12pt}
240%\def\journal#1{\def\@journal{#1}}
241%\let\booktitle=\journal
242% \def\@journal{???}
243
244
245\def\correspondence#1{\def\@corresp{#1} \def\offsets##1{\def\@offsets{##1}}}
246 \def\@corresp{}
247
248\def\pubyear#1{\def\@pyear{#1}} \def\@pyear{2001}
249\def\titleheight#1{\def\@tithei{#1}} \def\@tithei{7.5cm}
250
251\def\firstpage#1{\def\@fpage{#1}} \def\@fpage{1}
252\def\runninghead#1{\def\@runhd{}} \def\@runhd{}
253%\def\lastpage@putlabel{\addtocounter{page}{-1}
254% \immediate\write\@auxout{\string
255% \newlabel{LastPage}{{}{\thepage}}}
256% \addtocounter{page}{1}}
257%\AtEndDocument{\clearpage\lastpage@putlabel}
258%\def\@lpage{\pageref{LastPage}}
259
260\renewenvironment{abstract}{
261 \reset@font\normalsize\par\noindent
262 {\bfseries \abstractname.}
263 \ignorespaces
264}{\newline\null\par\hrule}
265
266\newenvironment{acknowledgements}{\begin{description}\item[\acknowsname]}
267 {\end{description}}
268\newenvironment{acknowledgement}{\begin{description}\item[\acknowname]}
269 {\end{description}}
270
271\def\ps@runninghead{\let\@mkboth\@gobbletwo
272%\def\@oddhead{\@runhd\hfil\makebox[\z@][r]{\thepage}}
273%\def\@evenhead{\makebox[\z@][l]{\thepage}\hfil\@runhd}
274 \def\@oddhead{\hfil\thepage\hfil}
275 \def\@evenhead{\hfil\thepage\hfil}
276 \def\@oddfoot{}\def\@evenfoot{}}
277
278\def\ps@default{\let\@mkboth\@gobbletwo
279 \def\@oddhead{Proceedings of ICRC\ \@pyear:\
280 \@fpage\ \copyright\ Copernicus Gesellschaft 2001
281 \hfil\scalebox{0.8}[1.0]{\@icrclogo}}
282 \def\@oddfoot{}}
283
284\def\logo@font{\fontfamily{\sfdefault}\fontseries{\seriesdefault}}
285\def\logo@width{18.75pc}
286
287\def\@icrclogo{\parbox[t][\z@][t]{\logo@width}
288 {\vspace{-.7\baselineskip}
289 \rule{\linewidth}{1\p@}\\\logo@font
290 \fontsize{46}{3}\selectfont
291 ICRC\ 2001\par
292 \rule{\linewidth}{1\p@}}}
293
294\flushbottom
295
296\pagenumbering{arabic}
297\flushbottom
298
299\if@headers\@twosidetrue\ps@runninghead
300 \else\ps@cameraready\fi
301
302\newcommand\fncomma{\textsuperscript{,}}
303\AtBeginDocument{\mathindent\z@}
304
305%% Copyright 1997-1999 Patrick W Daly
306%% Max-Planck-Institut f\"ur Aeronomie
307%% Max-Planck-Str. 2
308%% D-37191 Katlenburg-Lindau
309%% Germany
310%% E-mail: daly@linmpi.mpg.de
311\def\ModuleVersion#1[#2]{}
312 \ModuleVersion{authblk}
313 [1999/02/23 1.2 (PWD)]
314%% authblk coding copyright (C) 1997 Patrick W. Daly
315\newcommand\Authfont{\normalfont}
316\newcommand\Affilfont{\normalfont}
317\newcommand\Authsep{, }
318\newcommand\Authands{, and }
319\newcommand\Authand{ and }
320\newlength{\affilsep}\setlength{\affilsep}{1em}
321\newlength{\@affilsep}
322\newcounter{Maxaffil}
323\setcounter{Maxaffil}{2}
324\newcounter{authors}
325\newcounter{affil}
326\newif\ifnewaffil \newaffiltrue
327\newcommand\AB@authnote[1]{\textsuperscript{\normalfont#1}}
328\newcommand\AB@affilnote[1]{\textsuperscript{\normalfont#1}}
329\providecommand\textsuperscript[1]{$^{#1}$}
330\newcommand\AB@blk@and{\protect\Authfont\protect\AB@setsep}
331\newcommand\AB@pand{\protect\and \protect\Authfont \protect\AB@setsep}
332\@namedef{@sep1}{}
333\@namedef{@sep2}{\Authand}
334\newcommand\AB@affilsep{\protect\Affilfont}
335\newcommand\AB@affilsepx{\protect\\\protect\Affilfont}
336\newcommand\AB@setsep{\setlength{\@affilsep}{\affilsep}}
337\newcommand\AB@resetsep{\setlength{\@affilsep}{\z@}}
338\newcommand\AB@authlist{}
339\newcommand\AB@affillist{}
340\newcommand\AB@authors{}
341\newcommand\AB@empty{}
342\xdef\AB@author{\noexpand\AB@blk@and\@author}
343\renewcommand\author[2][]%
344 {\ifnewaffil\addtocounter{affil}{1}%
345 \edef\AB@thenote{\arabic{affil}}\fi
346 \if\relax#1\relax\def\AB@note{\AB@thenote}\else\def\AB@note{#1}%
347 \setcounter{Maxaffil}{0}\fi
348 \ifnum\value{authors}>1\relax
349 \@namedef{@sep\number\c@authors}{\Authsep}\fi
350 \addtocounter{authors}{1}%
351 \begingroup
352 \let\protect\@unexpandable@protect \let\and\AB@pand
353 \def\thanks{\protect\thanks}\def\footnote{\protect\footnote}%
354 \@temptokena=\expandafter{\AB@authors}%
355 {\def\\{\protect\\[\@affilsep]\protect\Affilfont
356 \protect\AB@resetsep}%
357 \xdef\AB@author{\AB@blk@and#2}%
358 \ifnewaffil\gdef\AB@las{}\gdef\AB@lasx{\protect\Authand}\gdef\AB@as{}%
359 \xdef\AB@authors{\the\@temptokena\AB@blk@and}%
360 \else
361 \xdef\AB@authors{\the\@temptokena\AB@as\AB@au@str}%
362 \global\let\AB@las\AB@lasx\gdef\AB@lasx{\protect\Authands}%
363 \gdef\AB@as{\Authsep}%
364 \fi
365 \gdef\AB@au@str{#2}}%
366 \@temptokena=\expandafter{\AB@authlist}%
367 \let\\=\authorcr
368 \xdef\AB@authlist{\the\@temptokena
369 \protect\@nameuse{@sep\number\c@authors}%
370 \protect\Authfont#2\AB@authnote{\AB@note}}%
371 \endgroup
372 \ifnum\value{authors}>2\relax
373 \@namedef{@sep\number\c@authors}{\Authands}\fi
374 \newaffilfalse
375}
376\newcommand\authorcr{\protect\\ \protect\Authfont \protect\AB@setsep}%
377\newcommand\affil[2][]%
378 {\newaffiltrue\let\AB@blk@and\AB@pand
379 \if\relax#1\relax\def\AB@note{\AB@thenote}\else\def\AB@note{#1}%
380 \setcounter{Maxaffil}{0}\fi
381 \begingroup
382 \let\protect\@unexpandable@protect
383 \def\thanks{\protect\thanks}\def\footnote{\protect\footnote}%
384 \@temptokena=\expandafter{\AB@authors}%
385 {\def\\{\protect\\\protect\Affilfont}\xdef\AB@temp{#2}}%
386 \xdef\AB@authors{\the\@temptokena\AB@las\AB@au@str
387 \protect\\[\affilsep]\protect\Affilfont\AB@temp}%
388 \gdef\AB@las{}\gdef\AB@au@str{}%
389 {\def\\{, \ignorespaces}\xdef\AB@temp{#2}}%
390 \@temptokena=\expandafter{\AB@affillist}%
391 \xdef\AB@affillist{\the\@temptokena \AB@affilsep
392 \AB@affilnote{\AB@note}\protect\Affilfont\AB@temp}%
393 \endgroup
394 \let\AB@affilsep\AB@affilsepx
395}
396\def\@author{}
397\renewcommand\@author{\ifx\AB@affillist\AB@empty\AB@author\else
398 \ifnum\value{affil}>\value{Maxaffil}\def\rlap##1{##1}%
399 \AB@authlist\\[\affilsep]\AB@affillist
400 \else \AB@authors\fi\fi}
401%% Copyright 1993-1999 Patrick W Daly
402%% Max-Planck-Institut f\"ur Aeronomie
403%% Max-Planck-Str. 2
404%% D-37191 Katlenburg-Lindau
405%% Germany
406%% E-mail: daly@linmpi.mpg.de
407\def\ModuleVersion#1[#2]{}
408 \ModuleVersion{appendix}
409 [1999/02/23 2.1 (PWD)]
410\@ifundefined{iffigcaps}{}
411 {\PackageWarningNoLine{appendix}
412 {***********************************\MessageBreak
413 This package read in after `figcaps'\MessageBreak
414 There could be problems with sublabelled\MessageBreak
415 figure and table numbers.\MessageBreak
416 ***********************************}}
417\providecommand{\appendixname}{Appendix}
418\let\orisection=\section
419\let\theolds=\thesection
420\let\theoldss=\thesubsection
421\def\appendix{\par
422 \setcounter{section}{0}
423 \setcounter{subsection}{0}
424 \def\thesection{\Alph{section}}
425 \def\thesubsection{\thesection\arabic{subsection}}
426 \setcounter{secnumdepth}{4}
427 \@addtoreset{equation}{section}
428 \setcounter{equation}{0}
429 \def\theequation{\thesection\arabic{equation}}
430 \@addtoreset{figure}{section}
431 \setcounter{figure}{0}
432 \def\thefigure{\thesection\arabic{figure}}
433 \@addtoreset{table}{section}
434 \def\thetable{\thesection\arabic{table}}
435 \setcounter{table}{0}
436 \def\@Alph##1{\ifcase##1A\or A\or B\or C\or D\else\@Ialph{##1}\fi}
437 \def\section{\@startsection {section}{1}{\z@}{-2em plus
438 -1ex minus-.2ex}{1em plus.2ex}{\reset@font
439 \normalsize
440 \bfseries\noindent \appendixname~}}
441}
442\def\noappendix{\setcounter{secnumdepth}{0}
443 \global\let\section=\orisection
444 \global\let\thesection=\theolds
445 \global\let\thesubsection=\theoldss
446}
447%% Copyright 1993-1999 Patrick W Daly
448%% Max-Planck-Institut f\"ur Aeronomie
449%% Max-Planck-Str. 2
450%% D-37191 Katlenburg-Lindau
451%% Germany
452%% E-mail: daly@linmpi.mpg.de
453\def\ModuleVersion#1[#2]{}
454 \ModuleVersion{figcaps}
455 [1999/02/23 4.7 (PWD)]
456\@ifundefined{chapter}{}{%
457 \PackageError{figcaps}
458 {`figcaps' may only be used with article-like classes}
459 {There is no help. You just cannot use `figcaps'}}
460\newif\iffigcaps \figcapstrue
461\newif\iffigmark \figmarkfalse
462\newif\if@figpage \@figpagefalse
463\@ifundefined{figurecapname}{\def\figurecapname{Figure Captions}}{}
464\@ifundefined{tablepagename}{\def\tablepagename{Tables}}{}
465\@ifundefined{figurepagename}{\def\figurepagename{Figures}}{}
466\begingroup
467 \catcode `|=0 \catcode `[= 1
468 \catcode`]=2 \catcode `\{=12 \catcode `\}=12
469 \catcode`\^^M=13 \catcode`\\=12 %
470|long|gdef|@vfig#1\end{figure}[|def|@term[\end{figure}]%
471 |expandafter|writelof#1^^M\end{figure}^^M|end[figure]]%
472|long|gdef|@vsfig#1\end{figure*}[|def|@term[\end{figure*}]%
473 |expandafter|writelof#1^^M\end{figure*}^^M|end[figure*]]%
474|long|gdef|@vtab#1\end{table}[|def|@term[\end{table}]%
475 |expandafter|writelot#1^^M\end{table}^^M|end[table]]%
476|long|gdef|@vstab#1\end{table*}[|def|@term[\end{table*}]%
477 |expandafter|writelot#1^^M\end{table*}^^M|end[table*]]%
478|long|gdef|@fcaponly#1\caption[|endgroup|@fcaption]%
479|long|gdef|@feject#1\end{figure}[|end[figure]]%
480 |endgroup
481\long\def\FC@writefile#1#2{\@ifundefined{tf@#1}{}{%
482 \immediate\write\csname tf@#1\endcsname{#2}}}
483\def\lof{lof} \def\lot{lot}
484
485{\catcode`\^^M=13%
486 \long\gdef\writelof#1^^M{\def\@tempb{#1}%
487 \ifx\@tempb\@term\let\@tempa\relax\else
488 \if@filesw\FC@writefile{pof}{#1}\fi\let\@tempa\writelof\fi \@tempa}
489 \long\gdef\writelot#1^^M{\def\@tempb{#1}%
490 \ifx\@tempb\@term\let\@tempa\relax\else
491 \if@filesw\FC@writefile{pot}{#1}\fi\let\@tempa\writelot\fi \@tempa}
492}
493\def\@fcaption{\refstepcounter\@captype \@ifnextchar[{\@@fcapopt}{\@@fcap}}
494\def\@@fcapopt[#1]#2{\@caption\@captype[]{#2}\begingroup\set@literal\@feject}
495\def\@@fcap#1{\@caption\@captype[]{#1}\begingroup\set@literal\@feject}
496\def\figcapson{\figcapstrue}
497\def\figcapsoff{\figcapsfalse}
498\def\figmarkon{\figmarktrue}
499\def\figmarkoff{\figmarkfalse}
500\def\figure{\iffigcaps \let\@tempb=\@zfigure \else \let\@tempb=\@float\fi
501 \@tempb{figure}}
502\def\@zfigure#1{\begingroup\set@literal\@ifnextchar[{\@figure}{\@figure[]}}
503\def\@figure[#1]{\@ifundefined{tf@pof}{\newwrite\tf@pof
504 \if@filesw\immediate\openout\tf@pof\jobname.\lof\relax
505 \ifFC@appendix\FC@writefile{pof}{\string\doappendix}\fi\fi}{}%
506 \refstepcounter{figure}\iffigmark\marginpar{\fbox{\fnum@figure}}\fi
507 \def\@captype{figure}\if@filesw\FC@writefile{pof}{\string\begin{figure}}\fi
508 \@vfig}
509
510\def\endfigure{\iffigcaps
511 \endgroup\if@filesw\FC@writefile{pof}{\string\end{figure}}\fi\else
512 \end@float\fi}
513
514\@namedef{figure*}{\iffigcaps \let\@tempb=\@zsfigure \else
515 \let\@tempb=\@dblfloat\fi \@tempb{figure}}
516\def\@zsfigure#1{\begingroup\set@literal\@ifnextchar[{\@sfigure}{\@sfigure[]}}
517\def\@sfigure[#1]{\@ifundefined{tf@pof}{\newwrite\tf@pof
518 \if@filesw\immediate\openout\tf@pof\jobname.\lof\relax
519 \ifFC@appendix\FC@writefile{pof}{\string\doappendix}\fi\fi}{}%
520 \refstepcounter{figure}\iffigmark\marginpar{\fbox{\fnum@figure}}\fi
521 \def\@captype{figure}\if@filesw\FC@writefile{pof}{\string\begin{figure}}\fi
522 \@vsfig}
523
524\@namedef{endfigure*}{\iffigcaps\endfigure\else\end@dblfloat\fi}
525\def\table{\iffigcaps \let\@tempb=\@ztable \else \let\@tempb=\@float\fi
526 \@tempb{table}}
527\def\@ztable#1{\begingroup\set@literal\@ifnextchar[{\@table}{\@table[]}}
528\def\@table[#1]{\@ifundefined{tf@pot}{\newwrite\tf@pot
529 \if@filesw\immediate\openout\tf@pot\jobname.\lot\relax
530 \ifFC@appendix\FC@writefile{pot}{\string\doappendix}\fi\fi}{}%
531 \refstepcounter{table}\iffigmark\marginpar{\fbox{\fnum@table}}\fi
532 \def\@captype{table}\if@filesw\FC@writefile{pot}{\string\begin{table}}\fi
533 \@vtab}
534
535\def\endtable{\iffigcaps
536 \endgroup\if@filesw\FC@writefile{pot}{\string\end{table}}\fi\else
537 \end@float\fi}
538
539\@namedef{table*}{\iffigcaps \let\@tempb=\@zstable \else
540 \let\@tempb=\@dblfloat\fi \@tempb{table}}
541\def\@zstable#1{\begingroup\set@literal\@ifnextchar[{\@stable}{\@stable[]}}
542\def\@stable[#1]{\@ifundefined{tf@pot}{\newwrite\tf@pot
543 \if@filesw\immediate\openout\tf@pot\jobname.\lot\relax
544 \ifFC@appendix\FC@writefile{pot}{\string\doappendix}\fi\fi}{}%
545 \refstepcounter{table}\iffigmark\marginpar{\fbox{\fnum@table}}\fi
546 \def\@captype{table}\if@filesw\FC@writefile{pot}
547 {\string\begin{table}}%
548 \fi\@vstab}
549
550\@namedef{endtable*}{\iffigcaps\endtable\else
551 \end@dblfloat\fi}
552\def\tableofcontents{%
553 \PackageWarningNoLine{figcaps}
554 {Ignored: \protect\tableofcontents\space command}}
555\def\listoffigures{%
556 \PackageWarningNoLine{figcaps}
557 {Ignored: \protect\listoffigures\space command}}
558\def\listoftables{%
559 \PackageWarningNoLine{figcaps}
560 {Ignored: \protect\listoftables\space command}}
561\def\addtocontents#1#2{\relax}
562\def\addcontentsline#1#2#3{\relax}
563{\catcode`\^^M=\active \gdef\cr@relax{\catcode`\^^M=\active \let^^M=\relax}}
564\def\set@literal{\cr@relax \let\do\@makeother\dospecials}
565\def\@figurecaps{\@ifundefined{tf@pof}{}{\if@filesw
566 \immediate\closeout\tf@pof\fi
567 \@ifundefined{appendixname}{}{\def\appendixname{}}
568 \parindent\z@
569 \reset@figtab\clearpage\section*{\figurecapname}\vspace{1cm}%
570 \@mkboth{\uppercase{\figurecapname}}{\uppercase{\figurecapname}}%
571 \addcontentsline{toc}{section}{\figurecapname}%
572 \def\figure{\def\addcontentsline####1####2####3{}%
573 \def\@captype{figure}%
574 \begingroup\set@literal\@fcaponly
575 }\def\endfigure{\endgroup\bigskip}%
576 {\let\@makecaption=\@makefcaption
577 \@input{\jobname.\lof}}%
578 \clearpage}}%
579\def\@tablepage{\@ifundefined{tf@pot}{}{\if@filesw
580 \immediate\closeout\tf@pot\fi
581 \@ifundefined{appendixname}{}{\def\appendixname{}}
582 \parindent\z@
583 \reset@figtab\clearpage\section*{\tablepagename}
584 \@mkboth{\uppercase{\tablepagename}}{\uppercase{\tablepagename}}%
585 \def\table{\def\@captype{table}\vbox\bgroup
586 \small
587 }\def\endtable{\egroup\bigskip}%
588 \@input{\jobname.\lot}
589 \clearpage}}
590\def\printfigures{\@figpagetrue}
591\def\@figurepage{\if@figpage\@ifundefined{tf@pof}{}{%
592 \@ifundefined{appendixname}{}{\def\appendixname{}}
593 \reset@figtab\clearpage\section*{\figurepagename}%
594 \@mkboth{\uppercase{\figurepagename}}{\uppercase{\figurepagename}}%
595 \begingroup
596 \def\figure{\def\@captype{figure}\vbox\bgroup}\def\endfigure{\egroup
597 \vspace{20pt}}%
598 \def\label##1{}%
599 \@input{\jobname.\lof}\newpage\endgroup}\fi}
600\def\reset@figtab{%
601 \setcounter{figure}{0}\setcounter{table}{0}
602}
603\AtEndDocument{\iffigcaps\@tablepage\@figurecaps\@figurepage\fi}
604\let\@appendix=\appendix
605\newif\ifFC@appendix \FC@appendixfalse
606\def\appendix{\FC@appendixtrue
607 \@ifundefined{tf@pof}{}{\if@filesw\FC@writefile{pof}{\string\doappendix}\fi}%
608 \@ifundefined{tf@pot}{}{\if@filesw\FC@writefile{pot}{\string\doappendix}\fi}%
609 \global\let\@section=\section
610 \doappendix
611 \let\@@section=\section
612 \def\section{%
613 \@ifundefined{tf@pof}{}{\if@filesw\FC@writefile{pof}{\string
614 \stepcounter{section}}\fi}%
615 \@ifundefined{tf@pot}{}{\if@filesw\FC@writefile{pot}{\string
616 \stepcounter{section}}\fi}%
617 \@@section}
618 \global\let\reset@figtab=\@unappendix}
619\def\doappendix{%
620 \global\let\@thefigure=\thefigure
621 \global\let\@thetable=\thetable
622 \global\let\@cl@section=\cl@section
623 \@appendix
624}
625\def\@unappendix{\FC@appendixfalse
626 \setcounter{figure}{0}\setcounter{table}{0}
627 \let\thefigure=\@thefigure
628 \let\thetable=\@thetable
629 \let\cl@section=\@cl@section
630 \let\section=\@section
631}
632\let\@makefcaption=\@makecaption
633%\if@draft\figcapstrue\else\figcapsfalse\fi
634\figcapsfalse
635%% Copyright 1993-1999 Patrick W Daly
636%% Max-Planck-Institut f\"ur Aeronomie
637%% Max-Planck-Str. 2
638%% D-37191 Katlenburg-Lindau
639%% Germany
640%% E-mail: daly@linmpi.mpg.de
641\def\ModuleVersion#1[#2]{}
642 \ModuleVersion{natbib}
643 [1999/05/28 7.0 (PWD)]
644\def\NAT@sort{0}
645\newcommand\NAT@open{(} \newcommand\NAT@close{)}
646\newcommand\NAT@sep{;} \newcommand\NAT@cmt{, }
647\newcommand\NAT@aysep{,} \newcommand\NAT@yrsep{,}
648\def\NAT@nmfmt#1{{\NAT@up#1}}
649\renewcommand\@cite%
650 [3]{\ifNAT@swa\NAT@@open\if*#2*\else#2\ \fi
651 #1\if*#3*\else\NAT@cmt#3\fi\NAT@@close\else#1\fi\endgroup}
652\providecommand\@firstofone[1]{#1}
653\let\citenumfont=\relax
654\def\@citex%
655 [#1][#2]#3{%
656 \NAT@sort@cites{#3}%
657 \let\@citea\@empty
658 \@cite{\let\NAT@nm\@empty\let\NAT@year\@empty
659 \@for\@citeb:=\NAT@cite@list\do
660 {\edef\@citeb{\expandafter\@firstofone\@citeb}%
661 \if@filesw\immediate\write\@auxout{\string\citation{\@citeb}}\fi
662 \@ifundefined{b@\@citeb\@extra@b@citeb}{\@citea%
663 {\reset@font\bfseries ?}\NAT@citeundefined
664 \PackageWarning{natbib}%
665 {Citation `\@citeb' on page \thepage \space undefined}\def\NAT@date{}}%
666 {\let\NAT@last@nm=\NAT@nm\let\NAT@last@yr=\NAT@year
667 \NAT@parse{\@citeb}%
668 \ifNAT@full\let\NAT@nm\NAT@all@names\else
669 \let\NAT@nm\NAT@name\fi
670 \ifNAT@swa\ifcase\NAT@ctype
671 \if\relax\NAT@date\relax
672 \@citea\hyper@natlinkstart{\@citeb\@extra@b@citeb}%
673 \NAT@nmfmt{\NAT@nm}\NAT@date\hyper@natlinkend
674 \else
675 \ifx\NAT@last@nm\NAT@nm\NAT@yrsep
676 \ifx\NAT@last@yr\NAT@year
677 \hyper@natlinkstart{\@citeb\@extra@b@citeb}\NAT@exlab
678 \hyper@natlinkend
679 \else\unskip\
680 \hyper@natlinkstart{\@citeb\@extra@b@citeb}\NAT@date
681 \hyper@natlinkend
682 \fi
683 \else\@citea\hyper@natlinkstart{\@citeb\@extra@b@citeb}%
684 \NAT@nmfmt{\NAT@nm}%
685 \hyper@natlinkbreak{\NAT@aysep\ }{\@citeb\@extra@b@citeb}%
686 \NAT@date\hyper@natlinkend
687 \fi
688 \fi
689 \or\@citea\hyper@natlinkstart{\@citeb\@extra@b@citeb}%
690 \NAT@nmfmt{\NAT@nm}\hyper@natlinkend
691 \or\@citea\hyper@natlinkstart{\@citeb\@extra@b@citeb}%
692 \NAT@date\hyper@natlinkend
693 \or\@citea\hyper@natlinkstart{\@citeb\@extra@b@citeb}%
694 \NAT@alias\hyper@natlinkend
695 \fi \def\@citea{\NAT@sep\ }%
696 \else\ifcase\NAT@ctype
697 \if\relax\NAT@date\relax
698 \@citea\hyper@natlinkstart{\@citeb\@extra@b@citeb}%
699 \NAT@nmfmt{\NAT@nm}\hyper@natlinkend
700 \else
701 \ifx\NAT@last@nm\NAT@nm\NAT@yrsep
702 \ifx\NAT@last@yr\NAT@year
703 \hyper@natlinkstart{\@citeb\@extra@b@citeb}\NAT@exlab
704 \hyper@natlinkend
705 \else\unskip\
706 \hyper@natlinkstart{\@citeb\@extra@b@citeb}\NAT@date
707 \hyper@natlinkend
708 \fi
709 \else\@citea\hyper@natlinkstart{\@citeb\@extra@b@citeb}%
710 \NAT@nmfmt{\NAT@nm}%
711 \hyper@natlinkbreak{\ \NAT@@open\if*#1*\else#1\ \fi}%
712 {\@citeb\@extra@b@citeb}%
713 \NAT@date\hyper@natlinkend\fi
714 \fi
715 \or\@citea\hyper@natlinkstart{\@citeb\@extra@b@citeb}%
716 \NAT@nmfmt{\NAT@nm}\hyper@natlinkend
717 \or\@citea\hyper@natlinkstart{\@citeb\@extra@b@citeb}%
718 \NAT@date\hyper@natlinkend
719 \or\@citea\hyper@natlinkstart{\@citeb\@extra@b@citeb}%
720 \NAT@alias\hyper@natlinkend
721 \fi \if\relax\NAT@date\relax\def\@citea{\NAT@sep\ }%
722 \else\def\@citea{\NAT@@close\NAT@sep\ }\fi
723 \fi
724 }}\ifNAT@swa\else\if*#2*\else\NAT@cmt#2\fi
725 \if\relax\NAT@date\relax\else\NAT@@close\fi\fi}{#1}{#2}}
726\newif\ifNAT@par \NAT@partrue
727\newcommand\NAT@@open{\ifNAT@par\NAT@open\fi}
728\newcommand\NAT@@close{\ifNAT@par\NAT@close\fi}
729\newcommand\NAT@alias{\@ifundefined{al@\@citeb\@extra@b@citeb}{%
730 {\reset@font\bfseries(alias?)}\PackageWarning{natbib}
731 {Alias undefined for citation `\@citeb'
732 \MessageBreak on page \thepage}}{\@nameuse{al@\@citeb\@extra@b@citeb}}}
733\let\NAT@up\relax
734\newcommand\NAT@Up[1]{{\let\protect\@unexpandable@protect\let~\relax
735 \expandafter\NAT@deftemp#1}\expandafter\NAT@UP\NAT@temp}
736\newcommand\NAT@deftemp[1]{\xdef\NAT@temp{#1}}
737\newcommand\NAT@UP[1]{\let\@tempa\NAT@UP\ifcat a#1\MakeUppercase{#1}%
738 \let\@tempa\relax\else#1\fi\@tempa}
739\renewcommand\@biblabel[1]{\hfill}
740\newlength{\bibhang}
741\setlength{\bibhang}{1em}
742\newlength{\bibsep}
743\setlength{\bibsep}{\z@}
744
745\newcommand\@bibsetup%
746 [1]{\setlength{\leftmargin}{\bibhang}\setlength{\itemindent}{-\leftmargin}%
747 \setlength{\itemsep}{\bibsep}\setlength{\parsep}{\z@}}
748\AtBeginDocument{\ifx\SK@def\@undefined\else
749\ifx\SK@cite\@empty\else
750 \SK@def\@citex[#1][#2]#3{\SK@\SK@@ref{#3}\SK@@citex[#1][#2]{#3}}\fi
751\ifx\SK@citeauthor\@undefined\def\HAR@checkdef{}\else
752 \let\citeauthor\SK@citeauthor
753 \let\citefullauthor\SK@citefullauthor
754 \let\citeyear\SK@citeyear\fi
755\fi}
756\newif\ifNAT@full\NAT@fullfalse
757\newif\ifNAT@swa
758\DeclareRobustCommand\citet
759 {\begingroup\NAT@swafalse\def\NAT@ctype{0}\NAT@partrue
760 \@ifstar{\NAT@fulltrue\NAT@citetp}{\NAT@fullfalse\NAT@citetp}}
761\newcommand\NAT@citetp{\@ifnextchar[{\NAT@@citetp}{\NAT@@citetp[]}}
762\newcommand\NAT@@citetp{}
763\def\NAT@@citetp[#1]{\@ifnextchar[{\@citex[#1]}{\@citex[][#1]}}
764\DeclareRobustCommand\citep
765 {\begingroup\NAT@swatrue\def\NAT@ctype{0}\NAT@partrue
766 \@ifstar{\NAT@fulltrue\NAT@citetp}{\NAT@fullfalse\NAT@citetp}}
767\DeclareRobustCommand\cite
768 {\begingroup\def\NAT@ctype{0}\NAT@partrue\NAT@swatrue
769 \@ifstar{\NAT@fulltrue\NAT@cites}{\NAT@fullfalse\NAT@cites}}
770\newcommand\NAT@cites{\@ifnextchar [{\NAT@@citetp}{%
771 \NAT@swafalse
772 \NAT@@citetp[]}}
773\DeclareRobustCommand\citealt
774 {\begingroup\NAT@swafalse\def\NAT@ctype{0}\NAT@parfalse
775 \@ifstar{\NAT@fulltrue\NAT@citetp}{\NAT@fullfalse\NAT@citetp}}
776\DeclareRobustCommand\citealp
777 {\begingroup\NAT@swatrue\def\NAT@ctype{0}\NAT@parfalse
778 \@ifstar{\NAT@fulltrue\NAT@citetp}{\NAT@fullfalse\NAT@citetp}}
779\DeclareRobustCommand\citeauthor
780 {\begingroup\NAT@swafalse\def\NAT@ctype{1}\NAT@parfalse
781 \@ifstar{\NAT@fulltrue\NAT@citetp}{\NAT@fullfalse\NAT@citetp}}
782\DeclareRobustCommand\Citet
783 {\begingroup\NAT@swafalse\def\NAT@ctype{0}\NAT@partrue
784 \let\NAT@up\NAT@Up
785 \@ifstar{\NAT@fulltrue\NAT@citetp}{\NAT@fullfalse\NAT@citetp}}
786\DeclareRobustCommand\Citep
787 {\begingroup\NAT@swatrue\def\NAT@ctype{0}\NAT@partrue
788 \let\NAT@up\NAT@Up
789 \@ifstar{\NAT@fulltrue\NAT@citetp}{\NAT@fullfalse\NAT@citetp}}
790\DeclareRobustCommand\Citeauthor
791 {\begingroup\NAT@swafalse\def\NAT@ctype{1}\NAT@parfalse
792 \let\NAT@up\NAT@Up
793 \@ifstar{\NAT@fulltrue\NAT@citetp}{\NAT@fullfalse\NAT@citetp}}
794\DeclareRobustCommand\citeyear
795 {\begingroup\NAT@swafalse\def\NAT@ctype{2}\NAT@parfalse\NAT@citetp}
796\DeclareRobustCommand\citeyearpar
797 {\begingroup\NAT@swatrue\def\NAT@ctype{2}\NAT@partrue\NAT@citetp}
798\newcommand\citetext[1]{\NAT@open#1\NAT@close}
799\DeclareRobustCommand\citefullauthor
800 {\citeauthor*}
801\newcommand\defcitealias[2]{%
802 \@ifundefined{al@#1\@extra@b@citeb}{}
803 {\PackageWarning{natbib}{Overwriting existing alias for citation #1}}
804 \@namedef{al@#1\@extra@b@citeb}{#2}}
805\DeclareRobustCommand\citetalias{\begingroup
806 \NAT@swafalse\def\NAT@ctype{3}\NAT@parfalse\NAT@citetp}
807\DeclareRobustCommand\citepalias{\begingroup
808 \NAT@swatrue\def\NAT@ctype{3}\NAT@partrue\NAT@citetp}
809\renewcommand\nocite[1]{\@bsphack
810 \@for\@citeb:=#1\do{%
811 \edef\@citeb{\expandafter\@firstofone\@citeb}%
812 \if@filesw\immediate\write\@auxout{\string\citation{\@citeb}}\fi
813 \if*\@citeb\else
814 \@ifundefined{b@\@citeb\@extra@b@citeb}{%
815 \NAT@citeundefined \PackageWarning{natbib}%
816 {Citation `\@citeb' undefined}}{}\fi}%
817 \@esphack}
818\newcommand\NAT@parse[1]{{%
819 \let\protect=\@unexpandable@protect\let~\relax
820 \let\active@prefix=\@gobble
821 \xdef\NAT@temp{\csname b@#1\@extra@b@citeb\endcsname}}%
822 \expandafter\NAT@split\NAT@temp
823 \expandafter\NAT@parse@date\NAT@date??????@@%
824}
825\newcommand\NAT@split[4]{%
826 \gdef\NAT@num{#1}\gdef\NAT@name{#3}\gdef\NAT@date{#2}%
827 \gdef\NAT@all@names{#4}%
828 \ifx\NAT@noname\NAT@all@names \gdef\NAT@all@names{#3}\fi}
829\newcommand\NAT@parse@date{}
830\def\NAT@parse@date#1#2#3#4#5#6@@{%
831 \ifnum\the\catcode`#1=11\def\NAT@year{}\def\NAT@exlab{#1}\else
832 \ifnum\the\catcode`#2=11\def\NAT@year{#1}\def\NAT@exlab{#2}\else
833 \ifnum\the\catcode`#3=11\def\NAT@year{#1#2}\def\NAT@exlab{#3}\else
834 \ifnum\the\catcode`#4=11\def\NAT@year{#1#2#3}\def\NAT@exlab{#4}\else
835 \def\NAT@year{#1#2#3#4}\def\NAT@exlab{{#5}}\fi\fi\fi\fi}
836\newcommand\NAT@ifcmd{\futurelet\NAT@temp\NAT@ifxcmd}
837\newcommand\NAT@ifxcmd{\ifx\NAT@temp\relax\else\expandafter\NAT@bare\fi}
838\def\NAT@bare#1(#2)#3(@)#4\@nil#5{%
839 \stepcounter{NAT@ctr}%
840 \NAT@wrout{\arabic {NAT@ctr}}{#2}{#1}{#3}{#5}
841}
842\newcommand\NAT@wrout[5]{%
843\if@filesw
844 {\let\protect\noexpand\let~\relax
845 \immediate
846 \write\@auxout{\string\bibcite{#5}{{#1}{#2}{{#3}}{{#4}}}}}\fi
847\ignorespaces}
848\def\NAT@noname{{}}
849\renewcommand\bibitem{%
850 \@ifnextchar[{\@lbibitem}{%
851 \stepcounter{NAT@ctr}\@lbibitem[\arabic{NAT@ctr}]}}
852\def\@lbibitem[#1]#2{%
853 \if\relax\@extra@b@citeb\relax\else
854 \@ifundefined{br@#2\@extra@b@citeb}{}{%
855 \@namedef{br@#2}{\@nameuse{br@#2\@extra@b@citeb}}}\fi
856 \@ifundefined{b@#2\@extra@b@citeb}{\def\NAT@num{}}{\NAT@parse{#2}}%
857 \item[\hfil\hyper@natanchorstart{#2\@extra@b@citeb}\@biblabel{\NAT@num}%
858 \hyper@natanchorend]%
859 \NAT@ifcmd#1(@)(@)\@nil{#2}}
860\ifx\SK@lbibitem\@undefined\else
861 \let\SK@lbibitem\@lbibitem
862 \def\@lbibitem[#1]#2{%
863 \SK@lbibitem[#1]{#2}\SK@\SK@@label{#2}\ignorespaces}\fi
864\providecommand\bibcite{}
865\renewcommand\bibcite[2]{\@ifundefined{b@#1\@extra@binfo}\relax
866 {\NAT@citemultiple
867 \PackageWarningNoLine{natbib}{Citation `#1' multiply defined}}%
868 \global\@namedef{b@#1\@extra@binfo}{#2}}
869\AtEndDocument{\NAT@swatrue\let\bibcite\NAT@testdef}
870\newcommand\NAT@testdef[2]{%
871 \def\NAT@temp{#2}\expandafter \ifx \csname b@#1\@extra@binfo\endcsname
872 \NAT@temp \else \ifNAT@swa \NAT@swafalse
873 \PackageWarningNoLine{natbib}{Citation(s) may have
874 changed.\MessageBreak
875 Rerun to get citations correct}\fi\fi}
876\def\bibsection{%\if@draft\newpage\fi
877 \noappendix\section*{\refname}}
878\newcounter{NAT@ctr}
879\renewenvironment{thebibliography}[1]{%
880 \bibsection\parindent \z@\bibpreamble\bibfont\list
881 {\@biblabel{\arabic{NAT@ctr}}}{\@bibsetup{#1}%
882 \setcounter{NAT@ctr}{0}}%
883 \def\newblock{\hskip .11em plus.33em minus.07em}%
884 \sloppy\clubpenalty4000\widowpenalty4000
885 \sfcode`\.=1000\relax
886 }{\def\@noitemerr{%
887 \PackageWarning{natbib}
888 {Empty `thebibliography' environment}}%
889 \endlist\vskip-\lastskip}
890\let\bibfont\small
891\let\bibpreamble\relax
892\providecommand\reset@font{\relax}
893\providecommand\bibname{Bibliography}
894\providecommand\refname{References}
895\newcommand\NAT@citeundefined{\gdef \NAT@undefined {%
896 \PackageWarningNoLine{natbib}{There were undefined citations}}}
897\let \NAT@undefined \relax
898\newcommand\NAT@citemultiple{\gdef \NAT@multiple {%
899 \PackageWarningNoLine{natbib}{There were multiply defined citations}}}
900\let \NAT@multiple \relax
901\AtEndDocument{\NAT@undefined\NAT@multiple}
902\providecommand\@mkboth[2]{}
903\providecommand\MakeUppercase{\uppercase}
904\providecommand{\@extra@b@citeb}{}
905\gdef\@extra@binfo{}
906\providecommand\hyper@natanchorstart[1]{}
907\providecommand\hyper@natanchorend{}
908\providecommand\hyper@natlinkstart[1]{}
909\providecommand\hyper@natlinkend{}
910\providecommand\hyper@natlinkbreak[2]{#1}
911\AtBeginDocument{\@ifundefined{bbl@redefine}{}{%
912\let\@citex\org@@citex
913\bbl@redefine\@citex[#1][#2]#3{%
914 \@safe@activestrue\org@@citex[#1][#2]{#3}\@safe@activesfalse}%
915\bbl@redefine\NAT@testdef#1#2{%
916 \@safe@activestrue\org@NAT@testdef{#1}{#2}\@safe@activesfalse}%
917\@ifundefined{org@@lbibitem}{%
918\bbl@redefine\@lbibitem[#1]#2{%
919 \@safe@activestrue\org@@lbibitem[#1]{#2}\@safe@activesfalse}}{}%
920}}
921\ifnum\NAT@sort>0
922\newcommand\NAT@sort@cites[1]{%
923\@tempcntb\m@ne
924\let\@celt\delimiter
925\def\NAT@num@list{}%
926\def\NAT@cite@list{}%
927\def\NAT@nonsort@list{}%
928\@for \@citeb:=#1\do{\NAT@make@cite@list}%
929\edef\NAT@cite@list{\NAT@cite@list\NAT@nonsort@list}%
930\edef\NAT@cite@list{\expandafter\NAT@xcom\NAT@cite@list @@}}
931\begingroup \catcode`\_=8
932\gdef\NAT@make@cite@list{%
933 \edef\@citeb{\expandafter\@firstofone\@citeb}%
934 \@ifundefined{b@\@citeb\@extra@b@citeb}{\def\NAT@num{A}}%
935 {\NAT@parse{\@citeb}}%
936 \ifcat _\ifnum\z@<0\NAT@num _\else A\fi
937 \@tempcnta\NAT@num \relax
938 \ifnum \@tempcnta>\@tempcntb
939 \edef\NAT@num@list{\NAT@num@list \@celt{\NAT@num}}%
940 \edef\NAT@cite@list{\NAT@cite@list\@citeb,}%
941 \@tempcntb\@tempcnta
942 \else
943 \let\NAT@@cite@list=\NAT@cite@list \def\NAT@cite@list{}%
944 \edef\NAT@num@list{\expandafter\NAT@num@celt \NAT@num@list \@gobble @}%
945 {\let\@celt=\NAT@celt\NAT@num@list}%
946 \fi
947 \else
948 \edef\NAT@nonsort@list{\NAT@nonsort@list\@citeb,}%
949 \fi}
950\endgroup
951\def\NAT@celt#1{\ifnum #1<\@tempcnta
952 \xdef\NAT@cite@list{\NAT@cite@list\expandafter\NAT@nextc\NAT@@cite@list @@}%
953 \xdef\NAT@@cite@list{\expandafter\NAT@restc\NAT@@cite@list}%
954 \else
955 \xdef\NAT@cite@list{\NAT@cite@list\@citeb,\NAT@@cite@list}\let\@celt\@gobble%
956 \fi}
957\def\NAT@num@celt#1#2{\ifx \@celt #1%
958 \ifnum #2<\@tempcnta
959 \@celt{#2}%
960 \expandafter\expandafter\expandafter\NAT@num@celt
961 \else
962 \@celt{\number\@tempcnta}\@celt{#2}%
963 \fi\fi}
964\def\NAT@nextc#1,#2@@{#1,}
965\def\NAT@restc#1,#2{#2}
966\def\NAT@xcom#1,@@{#1}
967\else
968 \newcommand\NAT@sort@cites[1]{\edef\NAT@cite@list{#1}}\fi
969%% Copyright 1993-1999 Patrick W Daly
970%% Max-Planck-Institut f\"ur Aeronomie
971%% Max-Planck-Str. 2
972%% D-37191 Katlenburg-Lindau
973%% Germany
974%% E-mail: daly@linmpi.mpg.de
975\def\ModuleVersion#1[#2]{}
976 \ModuleVersion{balance}
977 [1999/02/23 4.3 (PWD)]
978\newcommand{\@BAlancecol}{\if@twocolumn
979 \setbox0=\vbox{\unvbox\@outputbox} \@tempdima=\ht0
980 \advance\@tempdima by \topskip \advance\@tempdima
981 by -\baselineskip \divide\@tempdima by 2
982 \splittopskip=\topskip
983 {\vbadness=\@M \loop \global\setbox3=\copy0
984 \global\setbox1=\vsplit3 to \@tempdima
985 \ifdim\ht3>\@tempdima \global\advance\@tempdima by 1pt \repeat}
986 \setbox\@leftcolumn=\vbox to \@tempdima{\unvbox1\vfil}
987 \setbox\@outputbox=\vbox to \@tempdima
988 {\dimen2=\dp3\unvbox3\kern-\dimen2
989 \vfil}
990 \fi}
991\newif\if@BAlanceone
992\global\@BAlanceonefalse
993\newdimen\oldvsize
994\newcommand{\@BAdblcol}{\if@firstcolumn
995 \unvbox\@outputbox \penalty\outputpenalty
996 \global\oldvsize=\@colht \global\multiply \@colht by 2
997 \global\@BAlanceonetrue
998 \global\@firstcolumnfalse
999 \else \global\@firstcolumntrue
1000 \if@BAlanceone
1001 \global\@BAlanceonefalse\@BAlancecol
1002 \global\@colht=\oldvsize \else
1003 \PackageWarningNoLine{balance}
1004 {You have called \protect\balance\space
1005 in second column\MessageBreak
1006 Columns might not be balanced}\fi
1007 \setbox\@outputbox\vbox to \@colht{\hbox to\textwidth
1008 {\hbox to\columnwidth {\box\@leftcolumn \hss}\hfil
1009 \vrule width\columnseprule\hfil \hbox to\columnwidth
1010 {\box\@outputbox \hss}}\vfil}\@combinedblfloats
1011 \@outputpage \begingroup \@dblfloatplacement
1012 \@startdblcolumn \@whilesw\if@fcolmade \fi
1013 {\@outputpage\@startdblcolumn}\endgroup
1014 \fi}
1015\newcommand{\@BAcleardblpage}{\clearpage\if@twoside \ifodd\c@page\else
1016 \hbox{}\newpage\fi\fi}
1017\newcommand{\@@cleardblpage}{}
1018\let\@@cleardblpage=\cleardoublepage
1019
1020\newcommand{\@@utputdblcol}{}
1021\let\@@utputdblcol=\@outputdblcol
1022\newcommand{\balance}{\global\let\@outputdblcol=\@BAdblcol
1023 \global\let\cleardoublepage=\@BAcleardblpage}
1024\newcommand{\nobalance}{\global\let\@outputdblcol=\@@utputdblcol
1025 \global\let\cleardoublepage=\@@cleardblpage}
1026\endinput
1027%%
1028%% End of file `isss.cls'.
Note: See TracBrowser for help on using the repository browser.