diff options
Diffstat (limited to 'macros/latex/contrib/springer/svjour/agp')
-rw-r--r-- | macros/latex/contrib/springer/svjour/agp/agpguide.dvi | bin | 0 -> 7508 bytes | |||
-rw-r--r-- | macros/latex/contrib/springer/svjour/agp/agpguide.tex | 195 | ||||
-rw-r--r-- | macros/latex/contrib/springer/svjour/agp/example/example.dvi | bin | 0 -> 72068 bytes | |||
-rw-r--r-- | macros/latex/contrib/springer/svjour/agp/example/example.tex | 1277 | ||||
-rw-r--r-- | macros/latex/contrib/springer/svjour/agp/natbib.dtx | 3221 | ||||
-rw-r--r-- | macros/latex/contrib/springer/svjour/agp/natbib.ins | 57 | ||||
-rw-r--r-- | macros/latex/contrib/springer/svjour/agp/read.me | 32 | ||||
-rw-r--r-- | macros/latex/contrib/springer/svjour/agp/svagp.clo | 333 | ||||
-rw-r--r-- | macros/latex/contrib/springer/svjour/agp/svjour.cls | 1236 | ||||
-rw-r--r-- | macros/latex/contrib/springer/svjour/agp/template.tex | 136 | ||||
-rw-r--r-- | macros/latex/contrib/springer/svjour/agp/usrguide.dvi | bin | 0 -> 28500 bytes | |||
-rw-r--r-- | macros/latex/contrib/springer/svjour/agp/usrguide.pdf | bin | 0 -> 197756 bytes |
12 files changed, 6487 insertions, 0 deletions
diff --git a/macros/latex/contrib/springer/svjour/agp/agpguide.dvi b/macros/latex/contrib/springer/svjour/agp/agpguide.dvi Binary files differnew file mode 100644 index 0000000000..828904a4d9 --- /dev/null +++ b/macros/latex/contrib/springer/svjour/agp/agpguide.dvi diff --git a/macros/latex/contrib/springer/svjour/agp/agpguide.tex b/macros/latex/contrib/springer/svjour/agp/agpguide.tex new file mode 100644 index 0000000000..8a67975aaa --- /dev/null +++ b/macros/latex/contrib/springer/svjour/agp/agpguide.tex @@ -0,0 +1,195 @@ +\NeedsTeXFormat{LaTeX2e}[1995/12/01] + +\documentclass[final]{ltxguide}[1995/11/28] +%\usepackage{draftcopy} + +\makeatletter +\def\setitemindent#1{\settowidth{\labelwidth}{#1}% + \leftmargini\labelwidth + \advance\leftmargini\labelsep + \def\@listi{\leftmargin\leftmargini + \labelwidth\leftmargini\advance\labelwidth by -\labelsep}} +\def\setitemitemindent#1{\settowidth{\labelwidth}{#1}% + \leftmarginii\labelwidth + \advance\leftmarginii\labelsep +\def\@listii{\leftmargin\leftmarginii + \labelwidth\leftmarginii\advance\labelwidth by -\labelsep + \parsep=\parskip + \topsep=\z@ + \itemsep=\parskip \advance\itemsep by -\parsep}} +% +% adjusted environment "description" +% if an optional parameter (at the first two levels of lists) +% is present, its width is considered to be the widest mark +% throughout the current list. +\def\description{\@ifnextchar[{\@describe}{\list{}{\labelwidth\z@ + \itemindent-\leftmargin \let\makelabel\descriptionlabel}}} +% +\def\describelabel#1{#1\hfil} +\def\@describe[#1]{\relax\ifnum\@listdepth=0 +\setitemindent{#1}\else\ifnum\@listdepth=1 +\setitemitemindent{#1}\fi\fi +\list{--}{\let\makelabel\describelabel}} +\DeleteShortVerb{\|} +\renewenvironment{decl}[1][]% + {\par\small\addvspace{2.3ex}% + \vskip -\parskip + \ifx\relax#1\relax + \def\@decl@date{}% + \else + \def\@decl@date{\NEWfeature{#1}}% + \fi + \noindent\hspace{-\leftmargini}% + \begin{tabular}{|l|}\hline\ignorespaces}% + {\\\hline\end{tabular}\nobreak\@decl@date\par\nobreak + \vspace{2.3ex plus 1ex}\vskip -\parskip} +\MakeShortVerb{\|} +% +\def\@listI{\leftmargin\leftmargini + \parskip 0\p@ \@plus 1\p@ + \parsep 0\p@ \@plus\p@ + \topsep 2\p@ \@plus\p@ + \itemsep0\p@\relax} +\@listI +\setlength{\parskip}{\medskipamount} +\makeatother +\newcommand{\SJour}{\textsc{SVJour}} + +\title{The \SJour\ document class users guide\\supplement for\\ +\textit{Annales Geophysicae}} + +\author{\copyright~1999, Springer Verlag Heidelberg\\ + All rights reserved.} + +\date{05 January 1999} + +\begin{document} + +\maketitle + +\section{Introduction} +\label{sec:intro} +This document describes the \textit{agp} option for the +\SJour\ \LaTeXe\ document class. For details on +manuscript handling and the review process we refer to the +\emph{Instructions for authors} in the printed journal. For style +matters please consult previous issues of the journal. + +\section{Initializing the class} +\label{sec:opt} + +As explained in the main \emph{Users guide} you can +begin a document for \emph{Annales Geophysicae} by including +\begin{verbatim} + \documentclass[agp]{svjour} +\end{verbatim} +as the first line in your text. All other options are also described in +the main \emph{User guide}. + +\section{Changes to the \SJour\ class standard} + +As the abstract of your article is to appear in the header section, +it must be coded before the \verb|\maketitle| command. Do not use the +\verb|\begin{abstract}| \dots \verb|\end{abstract}| environment of +standard \LaTeX. Instead proceed as you do for the other +front matter declarations: +\begin{decl} +|\abstract| \arg{Text of your abstract} +\end{decl} +The standard key words are also part of the frontmatter please code +them at the end but still inside the \verb|\abstract{...}| area. + +\section{Changed bibliographic environment\\ +for {\tt natbib} usage} + +\subsection*{Overview} + +The {\tt natbib}\footnote{Natbib coding copyright (C) 1994--1998 Patrick +W. Daly. This file may be used for non-profit purposes. It may not be +distributed in exchange for money, other than distribution costs.} +package is a reimplementation of the \LaTeX\ \verb|\cite|\ +command, to work with author-year citations. It is compatible with the +standard bibliographic style files, such as {\tt plain.bst}, as well as +ith those of {\tt harvard, apalike, chicago, astron, authordate}, and of +course {\tt natbib}. + +\subsection*{Loading} + +A Loading with \verb|\usepackage[|{\it options}\verb|]{natbib}| is not +needed. All {\tt natbib} options and citations styles are implemented +for usage with the {\tt agp}-option. + +\subsection*{Basic commands} + +The {\tt natbib} package has two basic citation commands, \verb|\citet| +and \verb|\citep| for {\it textual} and {\it parenthetical} citations, +respectively. All of these may take one or two optional arguments to add +some text before and after the citation. + +\begin{tabular}{l@{\hspace{10pt}$\Rightarrow$\hspace{10pt}}l} +\verb|\citet{jon90}| &Jones et al. (1990)\\ +\verb|\citet[chap.~2]{jon90}| &Jones et al. (1990, chap. 2)\\ +\noalign{\smallskip} +\verb|\citep{jon90}| &(Jones et al., 1990)\\ +\verb|\citep[chap.~2]{jon90}| &(Jones et al., 1990, chap. 2)\\ +\verb|\citep[see][]{jon90}| &(see Jones et al., 1990)\\ +\verb|\citep[see][chap.~2]{jon90}| &(see Jones et al., 1990, chap. 2)\\ +\end{tabular} + +\subsection*{Multiple citations} + +Multiple citations may be made as usual, by including more than one citation +key in the \verb|\cite| command argument. + +\begin{tabular}{l@{\hspace{10pt}$\Rightarrow$\hspace{10pt}}l} +\verb|\citet{jon90,jon91}| &Jones et al. (1990); James et al. (1991)\\ +\verb|\citep{jon90,jam91}| &(Jones et al., 1990; James et al. 1991)\\ +\verb|\citep{jon90,jon91}| &(Jones et al., 1990, 1991)\\ +\verb|\citep{jon90a,jon90b}| &(Jones et al., 1990a,b)\\ +\multicolumn{2}{c}{}\\ +\multicolumn{2}{c}{}\\ +\multicolumn{2}{c}{}\\ +\end{tabular} + +\subsection*{Bibliography} + +Use the \verb|\bibitem| macro in the following way: + +\begin{tabular}{l} +\verb|\bibitem[Jones \etal (1990)]{jon90} {\bf Jones ...|\\ +\verb|\bibitem[Jones \etal (1991)]{jon91} {\bf Jones ...|\\ +\verb|\bibitem[James \etal (1991)]{jam91} {\bf James ...|\\ +\end{tabular} + +\section{Changes using Postscript fonts} + +The journal `Annales Geophysicae' is typeset using the +Postscript\footnote{PostScript is a trademark of Adobe.} Times fonts for the +main text and math. As the use of PostScript fonts results in different line and page +breaks than when using Computer Modern fonts, we encourage you to use our +document class together with the psnfss package times and if available the +mathtime package. This packages does all necessary font replacements to show +you the page make-up as it will be printed. Ask your local \TeX pert for +details. PostScript previewing is possible on most systems. On some +installations, however, on-screen previewing may be possible only with +CM fonts. + +If, for technical reasons, you are not able to use the PS fonts, it is also +possible to use our document class together with the ordinary Computer Modern +fonts. Note, however, that in this case line and page breaks will change when +we re\TeX\ your file with PS fonts, making it necessary for you to check them +again once you receive the proofs from the printer. + + +\section{Notes} + +Again we strongly suggest to use the \verb|\bibitem - \cite| as well as +the \verb|\label -| \verb|\ref| mechanism of \LaTeX\ for your cross +references throughout your document. + +\section{Installation} + +Following packages should be installed: \verb|times|, \verb|natbib|, +\verb|amsmath|. + +\end{document} diff --git a/macros/latex/contrib/springer/svjour/agp/example/example.dvi b/macros/latex/contrib/springer/svjour/agp/example/example.dvi Binary files differnew file mode 100644 index 0000000000..cc385dd228 --- /dev/null +++ b/macros/latex/contrib/springer/svjour/agp/example/example.dvi diff --git a/macros/latex/contrib/springer/svjour/agp/example/example.tex b/macros/latex/contrib/springer/svjour/agp/example/example.tex new file mode 100644 index 0000000000..90fc830bbf --- /dev/null +++ b/macros/latex/contrib/springer/svjour/agp/example/example.tex @@ -0,0 +1,1277 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% An example input file demonstrating the agp option of the SVJour % +% document class for the journal: Annales Geophysicae % +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% +\documentclass[agp]{svjour} + +\usepackage{graphics} +\usepackage{epsfig} +\usepackage{times} +% \usepackage{mathtime} +% +\sloppy +% +\journalname{Ann. Geophysicae} +% +\begin{document} +\title{On the regional climatic impact of contrails:} +\subtitle{microphysical and radiative properties of contrails and +natural cirrus clouds} +\author{B. Strauss\inst{1} \and +R. Meerkoetter\inst{1} \and +B. Wissinger\inst{1} \and +P. Wendling\inst{1} \and +M. Hess\inst{2}} +\institute{Deutsche Forschungsanstalt fuer Luft- und Raumfahrt (DLR), +Institut fuer Physik der Atmosphaere, Oberpfaffenhofen, D-82234 Wessling, +Germany +\and +Meteorologisches Institut der Universitaet Muenchen, Muenchen, Germany} +\mail{B. Strauss\\ +e-mail: pal3@opasul.pa.op.dir.de} +\date{Received: 17 November 1995 / Revised: 12 May 1997 / +Accepted: 6 June 1997} +\titlerunning{On the climatic impact of contrails} +\authorrunning{B. Strauss \etal} + +\maketitle + +\abstract{The impact of contrail induced cirrus clouds on regional +climate is estimated for mean atmospheric conditions of Southern Germany +in the months of July and October. This is done by use of a regionalized +one-dimensional radiative convective model (RCM). The influence of an +increased ice cloud cover is studied by comparing RCM results +representing climatological values with a modified case. In order to +study the sensitivity of this effect on the radiative characteristics of +the ice cloud, two types of additional ice clouds were modelled: cirrus +and contrails, the latter cloud type containing a higher number of +smaller and less of the larger cloud particles. Ice cloud parameters are +calculated on the basis of a particle size distribution which covers the +range from 2 to 2000\,$\mu$m\,, taking into consideration recent +measurements which show a remarkable amount of particles smaller than +20\,$\mu$m. It turns out that a 10\% increase in ice cloud cover leads +to a surface temperature increase in the order of 1\,K\,, ranging from +1.1 to 1.2\,K in July and from 0.8 to 0.9\,K in October depending on the +radiative characteristics of the air-traffic-induced ice clouds. +Modelling the current contrail cloud cover which is near 0.5\% over +Europe yields a surface temperature increase in the order of 0.05\,K. +\keywords{Insert keyword here}} + +\strich + +%%%%%%%%%%%%%%% +%% Section 1 %% +%%%%%%%%%%%%%%% + +\section{Introduction} +\label{sec:1} + +Air traffic influences the atmosphere through the emission of various +gases and particles. Among these, water vapour and aerosol particles +acting as cloud nuclei are of special interest because they support +cloud formation thus modifying an important climate factor. Therefore, +the impact of contrails, or better `air-traffic-induced cirrus clouds' +was discussed recently within the scope of air traffic and climate in +general \citep{Schu94}. \citet{Li90} studied the global influence of +contrails within a case study, using a two-dimensinal climate model. +They found an increase in surface temperature of 1\,K in the case of an +increase in cloud cover by 5\% between 20$^\circ$ and 70$^\circ$ N. +\citet{Po96} studied the influence of an increase in water vapour and in +cirrus cloud cover induced by air traffic using a three-dimensional GCM. +They showed that a significant climatic effect is more likely to occur +on the basis of contrail cloud cover rather than on the basis of +additional water vapour due to air traffic. The GCM results show an +increase in surface temperature of 1\,K at 50$^{\circ}$N for a contrail +cloud cover of 5\%. + +However, one may expect contrails to have a stronger impact on a +regional scale than on a global scale. To estimate this, a case study is +carried out within this paper for an area of increased air traffic in +southern Germany. This is done by use of a one-dimensional radiative +convective model (RCM), originally developed by \citet{Li83} and +modified to allow modelling of regional climate by taking into account +advection as a third energy flux besides radiation and convection. The +effects of an increased ice cloud cloud cover on the equilibrium +temperature profile of a mean July and October atmosphere were +simulated. + +\begin{figure*} +\sidecaption +\unitlength0.9cm +\begin{picture}(12,7) +\framebox(12,7){} +\end{picture} +\caption{Ice replicator mounted on the DLR research aircraft `Falcon'} +\label{fig:1} +\end{figure*} + +Special emphasis is laid on the parameterization of the radiative +characteristics of ice clouds. There are two types of ice cloud used in +the model: cirrus and contrail. An increase in ice cloud cover is +modelled twice, using both cloud types, in order to estimate the +influence of the cloud radiative characteristics on the results. +Corresponding RCM input parameters are the transmittance and the +reflectance in the solar, and the emittance, the transmittance and the +reflectance in the terrestrial spectral range. Values of these +quantities are obtained by radiative transfer model (RTM) calculations. +Ice clouds in the model are assumed to consist of particles in the range +2--2000\,$\mu$m. The size distribution for particles smaller than +20\,$\mu$m is based on recent in situ measurements which are presented +in Sect.~\ref{sec:2}, for particles greater than 20\,$\mu$m a parameterization +of \citet{He84} is used. Contrails are assumed to consist of a larger +portion of smaller particles and less of the bigger ones compared to +natural cirrus clouds. The ice water content, however, is assumed to be +the same in both cloud types, for reasons of better comparability. It is +anticipated that the portion of small particles has an appreciable +influence on the radiative properties of ice clouds \citep{Ar94}. +Section~\ref{sec:3} describes the model modifications, Sect.~\ref{sec:4} +presents and discusses the resulting equilibrium temperature profiles. + +%%%%%%%%%%%%%%% +%% Section 2 %% +%%%%%%%%%%%%%%% + +\section{Measurements of microphysical properties in cirrus clouds and +contrails} +\label{sec:2} + +In situ measurements by use of an ice replicator [built by J. Hallett, +Desert Research Institute (DRI), Reno, Nevada, USA] were carried out in +both natural cirrus and aged contrails. This was done within the +campaign `CIRRUS '92' organized by `Deutsche Forschungsanstalt f\"ur +Luft- und Raumfahrt' (DLR). It took place between 1 and 19 October 1992 +in South Germany. On 15 October measurements were taken in a natural +cirrostratus cloud located ahead of a frontal system related to a strong +low over Denmark. On 9 October measurements were taken in contrails with +ages in the order of half an hour embedded in arising cirrus. In this +case a high was located over Central Europe, a low over the +Mediterranean Sea and advection of warm air in southern Germany just +started from the south. A comparison of these two measurements is of +special interest with regard to a possible difference in the +microphysical behaviour of these two cloud types. The question of how +representative these two clouds were remains open up to now. + +The principle of the ice replicator (see Fig.~\ref{fig:1}) is quite easy: +the particles fly through an inlet situated at the tip of the +instrument, sized 2 $\times$ 7\,mm$^2$, and impact on a coated leader +film which is transported just behind that entrance. The impacts of the +particles are conserved in the coating and are analysed by microscopy, +digitization of the microscope pictures and image processing software. +Thus information on particle shapes, sizes, concentration and size +distribution is obtained. The lower resolution of the instrument is +about 4\,$\mu$m, depending on the quality of the coating which does not +always have the same characteristics. A source of uncertainty concerning +absolute particle numbers is the uncertainty due to the collection +efficiency for particles smaller than approximately 10\,$\mu$m, which is +not known accurately. Particles larger than approximately 100\,$\mu$m +normally break by impaction and information on these particles is +therefore weak. Regions showing fragments of broken particles were +excluded from evaluation. Nevertheless, there remains an uncertainty due +to misclassification of some broken material. This effect is contrary to +the collection efficiency effect. Figure~\ref{fig:2} shows eight size +distributions of the cirrus cloud measured on 15 October 1992 taken from +eight different parts of this cloud, thus representing a measure of the +natural variability. Also shown is a parameterization for cirrus cloud +particles larger than 20\,$\mu$m in size for temperatures of +$-55^{\circ}$C and $-40^{\circ}$C \citep{He84,Li92}. The temperature in +the cloud was about $-55$ to $-57^{\circ}$C. One can see three important +features: + +\begin{enumerate} +\item there are many `small' particles, i.e. particles smaller than about +20\,$\mu$m in size; +\item the measured size distributions coincide with the parameterization +of Heymsfield and Platt in the overlap size regime; +\item the variability is in the order of one magnitude. +\end{enumerate} + +\begin{figure} +\unitlength0.9cm +\begin{picture}(8.575,7) +\framebox(8.575,7){} +\end{picture} +\caption{Size distributions in a cirrostratus cloud measured on 15 +October 1992 over Southern Germany. The eight curves represent eight +different parts of the cloud and thereby give a measure of the natural +variability. The two lines represent parameterizations for particles +larger than 20\,$\mu$m for $-55\,^{\circ}$C ({\it solid}) and +$-40\,^{\circ}$C ({\it dash -- three dots}) after Heymsfield and Platt +(1984)} +\label{fig:2} +\end{figure} + +The strong fluctuations at sizes larger than about 20$\mu$m are due to +the size of sampling volume which is comperatively small for particles +of this size regime. It is in the order of several thousand cm$^{3}$. +The collection efficiency is assumed to be 1 for all sizes, i.e. numbers +for particles smaller than approximately 10\,$\mu$m are probably +slightly underestimated. Integration gives a mean particle concentration +of 0.7\,cm$^{-3}$ with values ranging from 0.5 to 1.1\,cm$^{-3}$. + +These values can be compared to data obtained by measurements with a +Counterflow Virtual Impactor (CVI) in natural cirrus clouds, as +presented by \citet{St93}. The CVI detects ice particles up to +30\,$\mu$m by measuring the concentration of the nuclei and the ice +water content of the particles. CVI values range from 0.1 to +1\,cm$^{-3}$ and therefore confirm the replicator data. + +Figure~\ref{fig:3} shows the corresponding results for the aged contrails +on 9 October. The temperature in these contrails was between +$-37^{\circ}$C and $-45^{\circ}$C. The mean concentration value is found +to be 1.3\,cm$^{-3}$, again assuming a collection efficiency of 1, with +values ranging from 0.8 to 1.6\,cm$^{-3}$. A comparison of the two +clouds is shown in Fig.~\ref{fig:4}. The two curves represent mean +values of the size distribution for the two cloud types. One can see +that the particle concentration for the aged contrails is larger for all +sizes measured by the ice replicator. But the difference is +significantly less than the variability of each of the two clouds. + +\begin{figure} +\unitlength0.9cm +\begin{picture}(8.575,7) +\framebox(8.575,7){} +\end{picture} +\caption{Size distributions measured in aged contrails on 9 October 1992 +over Southern +Germany. Lines as in Fig.~\ref{fig:2}} +\label{fig:3} +\end{figure} + +\begin{figure} +\unitlength0.9cm +\begin{picture}(8.575,7) +\framebox(8.575,7){} +\end{picture} +\caption{Comparison of size distribution for natural cirrus (15 October 1992, +{\it thick}) and aged contrails (9 October 1992, {\it thin}). Lines as in +Fig.~\ref{fig:2}} +\label{fig:4} +\end{figure} + +%%%%%%%%%%%%%%% +%% Section 3 %% +%%%%%%%%%%%%%%% + +\section{The radiative convective model and its modification} +\label{sec:3} + +The RCM output of the original model version represents an atmospheric +state of long-term and global averaging. It divides the atmosphere into +21 layers containing three cloud layers and calculates a temperature +profile representing an equilibrium state between radiation and +convection within each layer. The whole spectral range comprises six +spectral intervals in the solar and five intervals in the terrestrial +region. + +The temperature profile is computed on the basis of the Curtis matrix +principle, i.e. starting with an emittance, reflectance and +transmittance value and a first-guess temperature value for each +atmospheric model layer and then applying a perturbation scheme. This +immediately gives the equilibrium state temperature profile, i.e. no +time-stepping method is used. Values in cloudy layers are assumed to be +dominated by the cloud particles. Figure~\ref{fig:5} gives an overview of +the procedure. For more details see \citet{Li83}. + +\begin{figure*} +\sidecaption +\unitlength0.9cm +\begin{picture}(12,7) +\framebox(12,7){} +\end{picture} +\caption{Flow diagram showing the principle procedure of the RCM. Each +iteration repeats the calculations of the vertical exchange coefficient +and of the profile of the radiative fluxes on the basis of the new +temperature profile. Advection is taken into consideration as a third +energy flux besides radiation and convection in the modified version of +the RCM which is used in this study} +\label{fig:5} +\end{figure*} + +To permit simulations on a regional scale and for limited time periods, +advection has to be taken into consideration. Furthermore, the following +variables have to be specified for the considered region and time: (1) +solar zenith angle, (2) water vapour profile, (3) ozone profile, (4) +cloud cover, (5) surface albedo, (6) Bowen ratio. + +All of these values except the cloud cover are assumed to be constant in +the frame of this study. Cloud cover values for mid-level and low clouds +are fixed, whereas high cloud cover is varied. More details are given in +Appendix~B. + +Special emphasis is given to the parameterization of the optical +properties of ice clouds. In the model's original version, ice clouds +consist of cylindrically shaped monodisperse ice particles with a mean +length of 200\,$\mu$m, a mean radius of 30\,$\mu$m and a mean +concentration of 0.05\,cm$^{-3}$. + +However, recent research results force these assumptions to be modified. +It turned out that models tend to underestimate the solar ice cloud +albedo when compared to measurements \citep{St91}. As a consequence, two +hypotheses are made to explain this discrepancy: in today's models, +particles are usually described as spheres or hexagons. Hypothesis (1) +says that particle shapes have to be modelled more precisely with +respect to multibranched particles which are regularly found in ice +clouds and which could cause increased backscattering as compared to +simple hexagonally shaped columns and plates \citep{Wi90}. Hypothesis +(2) concerns the particle size. Little is known about particles smaller +than 50\,$\mu$m due to the lower resolution of instruments usually +employed for in situ measurements of ice particles. Ice cloud models +usually assume particles with a minimum size of 20\,$\mu$m or even +larger. Hypothesis (2) says that a significant amount of smaller +particles have an appreciable influence on the radiative characteristics +of ice clouds by enlarging the number of backscattered photons and +herewith increasing cloud albedo. Model calculations +\citep{Ma93,Ia95,St96} make hypothesis (1) appear unlikely, whereas +recent in situ measurements as presented in the previous section support +hypothesis (2). Therefore, the ice cloud parameterization used in the +RCM was modified by assuming hexagonally shaped ice particles in the +solar spectral range, and cirrus particle size distributions in the +small-particle regime as based on our measurements (see Sect.~\ref{sec:2}) +and those of \citet{He84}. In the terrestrial spectral range, +Mie-calculations were carried out for volume equivalent spheres. + +The following two subsections describe the parameterization of the +optical properties of ice clouds and of the advection in detail. + +\subsection{Calculation of the radiative properties of ice clouds} + +\subsubsection{Procedure.} +% +Radiative properties of ice clouds in the RCM are described by the +broadband transmittance and reflectance in the solar spectral range and +in addition the emittance in the terrestrial spectral range. These +quantities were calculated with a separate radiation transfer model +(RTM) based on the Matrix Operator Method \citep{Pl73} by the following +steps: + +\begin{enumerate} +\item Calculation of the phase function $\phi$ (solar region), asymmetry +factor $g$ (terrestrial region), volume extinction coefficient $\sigma$, +and single scattering albedo $\omega$ on the basis of the particle-size +distribution and the spectral complex refractive index of ice \citep{Wa84}. +In the solar region these parameters are derived for hexagonally shaped +particles under the assumption of geometrical optics \citep{He94}. In the +terrestrial spectral range Mie-calculations have been performed for volume +equivalent spheres. +\item Calculation of spectral downward- and upward-directed radiative fluxes +at cloud top and base with an RTM. The ice cloud layer is embedded between +9.6 and 11.0\,km. +\item Calculation of broadband transmittance, reflectance and emittance by +use of wavelength integrated fluxes at cloud top and base within the solar +and terrestrial spectral range. +\end{enumerate} + +\begin{table}[b] +\caption[]{Modelled size distribution of cirrus cloud particles. The particle +concentration is 0.58\,cm$^{-3}$, the ice water content $2.077 \cdot +10^{-3}$\,gm$^{-3}$} +\begin{tabular*}{84.22mm}{@{\hspace{0pt}\extracolsep{-1.75pt}}lcccc} +\hline +\noalign{\smallskip} +size class & represented size range & $A$ & $B$ & particle number \\ + & $\mu$m & $\mu$m & $\mu$m & m$^{-3}$ \\ +\noalign{\smallskip} +\hline +\noalign{\smallskip} +I & 2 -- 6 & \phantom{.}1.4 & \phantom{1.}3.5 & $1.69\cdot 10^5 $ \\ +II & \phantom{1}6 -- 20 & \phantom{11}4 & \phantom{11}10 & $3.87\cdot 10^5 $ \\ +III & 20 -- 40 & \phantom{1}10 & \phantom{11}30 & $1.77\cdot 10^4 $ \\ +IV & 40 -- 90 & \phantom{1}22 & \phantom{11}60 & $3.19\cdot 10^3 $ \\ +V & \phantom{1}90 -- 200 & \phantom{1}41 & 130 & $1.40\cdot 10^3 $ \\ +VI & 200 -- 400 & \phantom{1}60 & \phantom{1}300 & $1.75\cdot 10^2 $ \\ +VII & 400 -- 900 & \phantom{1}80 & \phantom{1}600 & $3.16\cdot 10^1 $ \\ +VIII & \phantom{1}900 -- 2000 & 110 & 1300 & $3.99\cdot 10^0 $ \\ +\noalign{\smallskip} +\hline +\end{tabular*} +\label{tab:1} +\end{table} + +\subsubsection{Microphysical properties of cirrus and contrails.} +% +Size distributions are specified for two cloud types: cirrus and +contrails. Table~\ref{tab:1} gives the discretized cirrus size distribution +as derived from two separate data sources. A and B designate the half +width and the length of the representative hexagonal ice particles. For +cirrus cloud particles smaller than 20\,$\mu$m the size distribution is +based on in situ measurements as presented in Sect.~\ref{sec:2}. For cirrus +cloud particles larger than 20\,$\mu$m the size distribution is based on a +parameterization of \citet{He84} (using a revised version in +\citet{Li92}), which is a function of temperature. For reasons of +consistency, the range $-55^{\circ}$C to $-60^{\circ}$C is used here, +because temperature values within this range were measured during the +flight in the cloud on 15 October 1992. Taking the particle numbers of +\citet{He84,Li92} directly, however, leads to a significantly smaller +ice water content than that measured by these two papers, which is +$2.077 \cdot 10^{-3}$gm$^{-3}$. We assume that this discrepancy is due +to the assumption that particles in our model have hexagonal shapes in +all size classes, whereas the measurements show aggregates in the range +of larger particles. For a certain diameter, an aggregate contains a +significantly larger volume than a column. In order to adjust the ice +water content value in the model to the measured value, particle numbers +in size classes V to VIII were increased by a factor of 3.47. + +For consistency of the following comparison the ice water content within +contrails is assumed to be the same as that for the natural cirrus case. +Having no precise information on particle number densities for sizes +larger than 20\,$\mu$m, we assume that the relative particle size +distribution is the same as that for the natural cirrus case +(Table~\ref{tab:1}), through, with an upper size limit of 200\,$\mu$m. This +gives also qualitative agreement with the measurements of \citet{Ga96}. +As a result of the adjustment of the ice water content there are more +small particles in contrails than in natural cirrus, which is consistent +with our measurements. + +\begin{table} +\caption[]{Modeled size distribution of contrail particles. The particle +concentration is 1.0\,cm$^{-3}$, the ice water content $2.077 \cdot +10^{-3}$\,gm$^{-3}$} +\begin{tabular*}{84.22mm}{@{\hspace{0pt}\extracolsep{-1.75pt}}lcccc} +\hline +\noalign{\smallskip} +size class & represented size range & $A$ & $B$ & particle number \\ +& $\mu$m & $\mu$m & $\mu$m & m$^{-3}$ \\ +\noalign{\smallskip} +\hline +\noalign{\smallskip} +I & 2 -- 6 & \phantom{.}1.4 & \phantom{.}3.5 & $2.91\cdot 10^5 $ \\ +II & \phantom{1}6 -- 20 & \phantom{11}4 & \phantom{11}10 & $6.67\cdot 10^5 $ \\ +III & 20 -- 40 & \phantom{1}10 & \phantom{11}30 & $3.05\cdot 10^4 $ \\ +IV & 40 -- 90 & \phantom{1}22 & \phantom{11}60 & $5.51\cdot 10^3 $ \\ +V & \phantom{1}90 -- 200 & \phantom{1}41 & \phantom{1}130 & $2.42\cdot 10^3 $ \\ +VI & 200 -- 400 & \phantom{1}60 & \phantom{1}300 & $0 $ \\ +VII & 400 -- 900 & \phantom{1}80 & \phantom{1}600 & $0 $ \\ +VIII & \phantom{1}900 -- 2000 & 110 & 1300 & $0 $ \\ +\noalign{\smallskip} +\hline +\end{tabular*} +\label{tab:2} +\end{table} + +\begin{figure}[b] +\unitlength0.9cm +\begin{picture}(8.575,7) +\framebox(8.575,7){} +\end{picture} +\caption{Modelled size distributions ({\it steps}) for natural cirrus ({\it +solid}) and contrails ({\it dashed}). Also shown are replicator measured size +distributions as indicted in Fig.~\ref{fig:4} for natural cirrus ({\it +solid}) and contrails ({\it dashed})} +\label{fig:6} +\end{figure} + +\subsubsection{Radiative properties of contrails and natural cirrus clouds.} +% +The radiative transfer model adopted to calculate vertical profiles of +upward- and downward-directed fluxes is based on the matrix operator +theory \citep{Pl73}. This RTM accounts for processes of multiple +scattering, absorption and thermal emission. The cloud optical +properties are described by $\phi$ (solar), $g$ (terrestrial), $\sigma$ +and $\omega$. Besides the cloud parameters, the RTM needs the +corresponding optical parameters for aerosol particles. Furthermore, the +vertical profiles of temperature, pressure and air density, as well as +the absorber masses of the relevant gases, characterize the atmospheric +state. These meteorological parameters are given for our model +atmospheres in Appendix~B. Table~\ref{tab:6} in Appendix~A shows the +spectral resolution within the solar spectral range as used in the RTM. + +In the solar region, the sharp forward peak of the cirrus phase function +is truncated by applying the delta-function approximation. In the +terrestrial range, a Henyey-Greenstein approximation of the phase +function is adopted which depends only on the asymmetry factor. The +transmission functions of the relevant gases valid in the spectral +subintervals are approximated by exponential sum fitting. + +Table~\ref{tab:7} in Appendix~A gives the values of $C$, $g$ and +$\omega$ for the cirrus and contrail cloud as calculated for hexagonally +shaped particles with geometrical optics. $C$ designates the extinction +cross-section and equals the extinction coefficient normalized to one +particle per cm$^{-3}$. Note that the $g$ values are shown in the table +but subsequently are not used. For the model calculations, the complete +phase function is used. Note that the spectral resolution is not +identical to that in the RTM (see Table~\ref{tab:6}), however, it accounts +for a proper representation of the radiative properties which in turn +mainly follow the spectral behaviour of the complex refractive index of +ice. Phase functions are calculated at wavelengths 0.550, 1.100, 1.400, +1.905, 2.600 and 3.077$\mu$m. These wavelengths are chosen as +representative with respect to the spectral behaviour of the refractive +index of ice. + +To obtain the analogous values for the RTM input spectral intervals +(Table~\ref{tab:6}), a proper mean value is calculated by +\begin{equation} +\overline{x_j} = \frac{\sum_{i} x_i E_i \Delta \lambda_{i,j}}{\sum_{i} E_i +\Delta \lambda_{i,j}}, +\label{eq:1} +\end{equation} +where $x$ represents the variables $\sigma$ and $\omega$, +$\overline{x_j}$ designates the mean value of the $j$th spectral +interval $\sum_{i} \Delta \lambda_{i,j}$ within the solar spectral +range. The variable $E_i$ is the solar constant at the wavelength $i$. + +The first column in Table~\ref{tab:8} in Appendix~A shows the spectral +resolution in the terrestrial region used by the RTM. In order to obtain +$\sigma$, $g$ and $\omega$ values in the terrestrial region, +Mie-calculations for corresponding spherical particles were carried out +within each spectral interval at its central wavelength given in +Table~\ref{tab:8}, where the conversion from hexagonal particles into +corresponding spheres is done by calculation of equivalent volume. It is +expected that such spheres give better $\omega$ values compared to +spheres of equal surface \citep{Ta89}. + +Downward- and upward-directed solar fluxes at cloud top and base result +from RTM calculations for the isolated cloud layer as radiative transfer +medium. In a next step, the cloud transmittance is derived by relating +the downward directed fluxes at cloud top and base, respectively. The +ratio of upward and downward flux at cloud top correspondingly gives the +cloud reflectance. Solar zenith angles are cosine weighted means over +the solar day for July and October in Munich. Results are shown in +Table~\ref{tab:3}. + +\begin{table} +\caption{Solar radiative properties of cirrus and contrails as derived from +RTM calculations (Jci: July, cirrus, Jco: July, contrails, Oci: October, +cirrus, Oco: October, contrails)} +\begin{tabular*}{84.22mm}{@{\hspace{0pt}\extracolsep{\fill}}cccc@{\hspace{0pt}}} +\hline +\noalign{\smallskip} +case & solar zenith angle & transmittance & reflectance \\ +\noalign{\smallskip} +\hline +\noalign{\smallskip} +Jci & 58.71 $^{\circ}$ &0.932 & 0.057 \\ +Jco & 58.71 $^{\circ}$ &0.908 & 0.080 \\ +Oci & 69.78 $^{\circ}$ &0.891 & 0.095 \\ +Oco & 69.78 $^{\circ}$ &0.855 & 0.131 \\ +\noalign{\smallskip} +\hline +\end{tabular*} +\label{tab:3} +\end{table} + +As expected, transmittances increase and reflectances decrease with +decreasing particle concentration. The extinction coefficient value is +found to be 0.130 and 0.198\,km$^{-1}$ for cirrus and contrails, +respectively, at a wavelength of 0.55\,$\mu$m. Values of the cloud +optical thickness at a wavelength of 0.55\,$\mu$m are 0.18 and 0.28 for +cirrus and contrails, respectively. + +To obtain emittance, transmittance and reflectance in the terrestrial +spectral range, RTM calculations were carried out for two different +vertical atmospheric segments: (1) the atmosphere between surface and +cloud top and (2) the cloud layer only. The first serves to obtain the +upward fluxes at cloud top $f_{top} \uparrow $ and cloud base $f_{base} +\uparrow $, the latter gives the fluxes emitted by the cloud layer +itself, designated as $fcl_{top} \uparrow $ and $fcl_{base} \downarrow +$. The upward-directed emittance is calculated according to $fcl_{top} +\uparrow $ / $\varsigma T_{top}^4$ , where $\varsigma$ denotes the +Stefan--Boltzmann constant and $T_{top}$ the temperature at cloud top. +The downward-directed emittance is calculated analogously. In the RCM +the mean of these two emittance values is used. The transmittance is +given by $(f_{top} \uparrow - fcl_{top} \uparrow )/f_{base} \uparrow$, +the reflectance by $( f_{base} \downarrow - fcl_{base} \downarrow +)/f_{base} \uparrow$. Table~\ref{tab:4} lists the results, Table~\ref{tab:5} +presents the derived values for cloud emittance, transmittance and +reflectance. + +\begin{table} +\caption{Radiative fluxes in the terrestrial spectral range; $f_{top} +\uparrow$: upward flux at cloud top, $f_{base} \uparrow$: upward flux at +cloud base, $f_{base} \downarrow$: downward flux at cloud base, +$fcl_{top} \uparrow$: upward flux at cloud top (cloud only), $fcl_{base} +\downarrow$: downward flux at cloud base (cloud only), other +designations as in Table~\ref{tab:3}} +\begin{tabular*}{84.22mm}{@{\hspace{0pt}\extracolsep{\fill}}cccccc@{\hspace{0pt}}} +\hline +\noalign{\smallskip} +case & $f_{top} \uparrow $ & $f_{base} \uparrow $ & $ f_{base} \downarrow $ +& $fcl_{top} \uparrow $ & $fcl_{base} \downarrow $ \\ +& Wm$^{-2}$ & Wm$^{-2}$ & Wm$^{-2}$ & Wm$^{-2}$ & Wm$^{-2}$ \\ +\noalign{\smallskip} +\hline +\noalign{\smallskip} +Jci & 245.1 & 286.7 & 75.5 & 57.0 & 59.9 \\ +Jco & 231.8 & 286.7 & 86.3 & 62.2 & 65.3 \\ +Oci & 238.5 & 272.3 & 54.4 & 43.4 & 45.5 \\ +Oco & 227.8 & 272.3 & 62.9 & 48.7 & 51.0 \\ +\noalign{\smallskip} +\hline +\end{tabular*} +\label{tab:4} +\end{table} + +\begin{table}[b] +\caption{Derived ice cloud radiative properties in the terrestrial spectral +range} +\begin{tabular*}{84.22mm}{@{\hspace{0pt}\extracolsep{\fill}}lccc@{\hspace{0pt}}} +\hline +\noalign{\smallskip} +case & emittance & transmittance & reflectance \\ +\noalign{\smallskip} +\hline +\noalign{\smallskip} +Jci & 0.386 & 0.656 & 0.054 \\ +Jco & 0.421 & 0.592 & 0.073 \\ +Oci & 0.320 & 0.716 & 0.033 \\ +Oco & 0.359 & 0.658 & 0.044 \\ +\noalign{\smallskip} +\hline +\end{tabular*} +\label{tab:5} +\end{table} + +As expected, emittances and reflectances increase with increasing particle +concentration whereas transmittances decrease with increasing particle +concentrations. + +\subsection{Parameterization of advection} + +\subsubsection{Method.} +% +In our case study an atmospheric segment with vertical boundaries along +the region of southern Germany is modelled. For simplicity it is called +in the following an `atmospheric box'. In contrast to modelling on a +global scale, net fluxes of energy through the lateral boundaries of +this atmospheric box have to be taken into account. It is assumed that +the net energy flux which leaves the top of the box as radiation (in the +considered time period) equals the energy flux which is gained through +the lateral faces as advection. The profile of advected energy is set +proportional to the wind profile. The value of the energy flux leaving +the atmospheric box at the top is taken from ERBE (Earth Radiation +Budget Experiment) satellite data. This flux is $-59$ and 97\,Wm$^{-2}$ +in the months of July and October, respectively, the minus sign in the +July case representing an energy gain for the box. More details +concerning the satellite data are given in Appendix~B. Values for the +vertical profile of the wind speed are taken from radiosonde data, +'Munich' station, averaged for the years 1981--1985. + +Within the frame of this study, no feedback mechanisms concerning +advection are taken into consideration. + +\subsubsection{Results of regionalization.} +% +Figure~\ref{fig:7} shows RCM results for the reference case, i.e. the case +with climatological values of cirrus cloud cover in July. Two +temperature profiles are shown: one results from including advection as +already outlined, whereas the other results from neglecting it. For +comparison, the climatological July values as derived from radiosonde +data are shown. + +\begin{figure}[b] +\unitlength0.9cm +\begin{picture}(8.575,7) +\framebox(8.575,7){} +\end{picture} +\caption{Modelled temperature profiles for July with ({\it solid}) and without +({\it dashed}) advection compared to radiosonde measurements ({\it triangles})} +\label{fig:7} +\end{figure} + +Calculated temperatures fit quite well throughout the whole troposphere. +A small inversion layer is modelled at the surface but not seen in the +climatology values. This indicates that the Bowen ratio might not be +representative for this case, however, in this study only temperature +differences are of interest. + +\begin{figure} +\unitlength0.9cm +\begin{picture}(8.575,7) +\framebox(8.575,7){} +\end{picture} +\caption{As in Fig.~\ref{fig:1}., but for October conditions} +\label{fig:8} +\end{figure} + +Figure~\ref{fig:8} shows corresponding temperature profiles for October +conditions. Noteworthy is the great influence of advection inducing a +temperature difference of approximately 25\,K throughout the +troposphere. It is important to note that the uncertainty of the +satellite data is in the order of 10\,Wm$^{-2}$ which corresponds to an +uncertainty in the temperature profile in the order of only 3\,K. + +%%%%%%%%%%%%% +% Section 4 % +%%%%%%%%%%%%% + +\section{Results and discussion} +\label{sec:4} + +The impact of ice clouds induced by air traffic is estimated by +comparing the RCM results for an increased high cloud cover with those +for the reference cases in July and October. It is assumed that the ice +cloud cover increases at the expense of the uncovered area. + +The surface temperature results are shown in Fig.~\ref{fig:9}. An ice +cloud cover increase due to contrails by 10\% causes surface temperature +increases of 1.1 and 0.8\,K\, in July and October, respectively. +Assuming that the increased cloud cover is due to clouds which have +natural cirrus properties, these values are 1.2 and 0.9\,K, +respectively. Thus, for both months the increase in high cloud cover due +to natural cirrus warms the surface more than the increase due to +contrails. Obviously, the primarily larger shortwave albedo of the +contrails due to more smaller particles leads to less warming than in +the case of natural cirrus, even if the emittance of contrails is larger +than that of natural cirrus. Figure~\ref{fig:9} shows a linear relation +between cloud cover and surface temperature, because the RCM weights +flux linearly with cloud cover. Part of the contrails certainly will +occur over mid- and low-level clouds. Since the RCM does not consider +overlapping effects of several cloud layers, our values for surface +warming represent an upper limit. + +\begin{figure} +\unitlength0.9cm +\begin{picture}(8.575,7) +\framebox(8.575,7){} +\end{picture} +\caption{Increase in surface temperature $\Delta T_{surf} $ in +dependence on additional ice cloud cover $\eta $ due to contrails and +cirrus in the case of mean July and October conditions over southern +Germany. {\it Solid}: July, cirrus; {\it dotted}: July, contrails; {\it +dashed}: October, cirrus; {\it dash-dotted}: October, contrails} +\label{fig:9} +\end{figure} + +As a further result the radiative forcing at the top of the atmosphere +with a fixed temperature and humidity profile is obtained. In the July +case the upward terrestrial flux at the top af the atmosphere is reduced +by 3.3\,Wm\,$^{-2}$ in the case of a 10\% increase in cirrus cloud +cover. The corresponding decrease in the solar flux is 0.5\,Wm\,$^{-2}$. +In the October case, the terrestrial flux is reduced by +2.6\,Wm\,$^{-2}$, and the solar flux by 0.1\,Wm\,$^{-2}$. The values in +the contrail cases are slightly lower. + +The current cloud cover which is due to contrails and thereby obviously +due to air traffic is estimated to be in the order of 0.5\% over Europe +\citep{Ba94}. This increase in cloud cover might be regarded as the +minimum amount of air traffic induced cloud cover. Therefore it is +expected that the increases in surface temperature are approximately +0.06 and 0.05\,K in July and October, respectively. + +With regard to the uncertainty in our results, we varied the advection +term by 10\,Wm$^{-2}$ (that corresponds to an uncertainty of +10\,Wm$^{-2}$ in the satellite radiation measurement), the resulting +uncertainty in the surface temperature is about 0.02\,K (change from +96.75 to 106.75\,Wm$^{-2}$ in the satellite measured net radiative flux +for the October case). Assuming a doubling of the latent heat flux at +surface (which is much more than a realistic assumption), the resulting +uncertainty in the surface temperature is about 0.01\,K (in the October +case). These values show that these uncertainties have no important +influence on the results. + +In comparison to a corresponding global sensitivity study for the +climatic effect of an additional contrail cloudiness in the North +Atlantic region \citep{Po96}, our value for the increase in the surface +temperature in July is larger (1.2\,K compared to 1\,K). However, in +this GCM calculation, the ocean temperature was fixed, and so the true +response of additional cloudiness is slightly underestimated. + +The question of the climatic importance is relative: compared to an +increase in the temperature of 1\,K between the Middle Ages and today, +our 0.05\,K value is surely not significant. On the other hand, climate +change is a composite of multiple effects and one should keep air +traffic in mind as being one of these. Furthermore, our results +represent equilibrium conditions, and the question of possible effects +in the non-equilibrium state remains open, e.g. influences in the +day-to-night differences in temperature. + +The results give an idea of how sensitive the regional temperature +profile reacts on changes in the ice cloud layer which are due to +changes in cloud cover, radiative properties of the ice clouds and solar +zenith angle. However, we must keep in mind that our results are based +on the assumption that the radiation balance on top of the atmosphere is +fixed to the value that belongs to the undisturbed case and further that +large-scale advection of energy into the area does not change. In view +of the small temperature changes induced by the changes in cirrus cloud +cover, these assumptions are expected to be fulfilled to a first order, +and our results represent an upper limit of the regional effects of an +additional cloudiness caused by air traffic. This is also supported by +the results from a three-dimensional GCM which include feedback +mechanisms and show the same order of magnitude \citep{Po96}. + +\begin{acknowledgement} +For friendly help concerning the albedo values and discussions on +aerosol distributions we thank W. Thomas. Concerning ERBE data our +thanks are given to M. Rieland and K. Standfuss (Meteorologisches +Institut der Universitaet Hamburg). Last but not least we are very +grateful to K.N. Liou and S.C. Ou for having made available to us a +version of their radiative convective model. This work was supported by +the Bavarian regional climate research programme (BayFORKLIM), which was +funded by the 'Bayerisches Ministerium fuer Landesentwicklung und +Umweltfragen'. Their financial support is greatly acknowledged. Topical +Editor L. Eymard thanks P. Hignett and S. Kinne for their help in +evaluating this paper. +\end{acknowledgement} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% Correct space for this article! %% +\vspace{-5pt} %% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{table}[b] +\caption[]{Spectral resolution in the solar spectral range} +\begin{tabular*}{84.22mm}{@{\hspace{0pt}\extracolsep{10pt}}cc@{\hspace{0pt}}} +\hline +\noalign{\smallskip} +interval number & wavelength range \\ +& $\mu$m \\ +\noalign{\smallskip} +\hline +\noalign{\smallskip} +1 & 0.20 -- 0.30 \\ +2 & 0.30 -- 0.35 \\ +3 & 0.35 -- 0.40 \\ +4 & 0.40 -- 0.45 \\ +5 & 0.45 -- 0.50 \\ +6 & 0.50 -- 0.55 \\ +7 & 0.55 -- 0.60 \\ +8 & 0.60 -- 0.80 \\ +9 & 0.80 -- 0.90 \\ +10 & 0.90 -- 1.00 \\ +11 & 1.00 -- 1.20 \\ +12 & 1.20 -- 1.60 \\ +13 & 1.60 -- 2.20 \\ +14 & 2.20 -- 3.00 \\ +15 & 3.00 -- 3.40 \\ +\noalign{\smallskip} +\hline +\end{tabular*} +\label{tab:6} +\end{table} + +\begin{appendix} + +\section*{Appendix A} +\label{sec:a} + +\subsection*{Tables indicating RTM calculations} + +These tables, referred to in the text, are put in an Appendix for +reasons of clarity and readability. + +\begin{table} +\caption[]{Optical parameters of cirrus and contrail used in the solar +region. Symbols without a hat denote cirrus parameters, symbols with a +hat denote contrail parameters} +\begin{tabular*}{84.22mm}{@{\hspace{0pt}\extracolsep{-.8pt}}ccccccc@{\hspace{0pt}}} +\hline +\noalign{\smallskip} +$\lambda$& $C$ & $\hat{C}$ & $g$ & $\hat{g}$ & $\omega $ & $\hat{\omega}$ \\ +$\mu$m & m$^{-1}cm^3$ & m$^{-1}cm^3$ & & & & \\ +\noalign{\smallskip} +\hline +\noalign{\smallskip} +0.423 & 2.25$\cdot 10^{-4}$ & 1.99$\cdot 10^{-4}$ & 0.752 & 0.746 & 1.000 & 1.000 \\ +0.550 & 2.25$\cdot 10^{-4}$ & 1.99$\cdot 10^{-4}$ & 0.757 & 0.751 & 1.000 & 1.000 \\ +0.635 & 2.25$\cdot 10^{-4}$ & 1.99$\cdot 10^{-4}$ & 0.760 & 0.753 & 1.000 & 1.000 \\ +0.780 & 2.26$\cdot 10^{-4}$ & 1.99$\cdot 10^{-4}$ & 0.762 & 0.755 & 1.000 & 1.000 \\ +0.830 & 2.26$\cdot 10^{-4}$ & 1.99$\cdot 10^{-4}$ & 0.762 & 0.754 & 1.000 & 1.000 \\ +0.015 & 2.26$\cdot 10^{-4}$ & 1.99$\cdot 10^{-4}$ & 0.764 & 0.756 & 0.999 & 1.000 \\ +1.100 & 2.26$\cdot 10^{-4}$ & 1.99$\cdot 10^{-4}$ & 0.766 & 0.759 & 0.999 & 1.000 \\ +1.200 & 2.26$\cdot 10^{-4}$ & 1.99$\cdot 10^{-4}$ & 0.768 & 0.761 & 0.998 & 0.999 \\ +1.400 & 2.26$\cdot 10^{-4}$ & 2.00$\cdot 10^{-4}$ & 0.771 & 0.764 & 0.995 & 0.997 \\ +1.449 & 2.29$\cdot 10^{-4}$ & 2.02$\cdot 10^{-4}$ & 0.789 & 0.778 & 0.943 & 0.959 \\ +1.504 & 2.32$\cdot 10^{-4}$ & 2.03$\cdot 10^{-4}$ & 0.804 & 0.792 & 0.900 & 0.924 \\ +1.615 & 2.30$\cdot 10^{-4}$ & 2.02$\cdot 10^{-4}$ & 0.791 & 0.779 & 0.939 & 0.956 \\ +1.850 & 2.27$\cdot 10^{-4}$ & 2.00$\cdot 10^{-4}$ & 0.785 & 0.777 & 0.985 & 0.990 \\ +1.905 & 2.31$\cdot 10^{-4}$ & 2.03$\cdot 10^{-4}$ & 0.803 & 0.793 & 0.930 & 0.950 \\ +2.000 & 2.37$\cdot 10^{-4}$ & 2.07$\cdot 10^{-4}$ & 0.831 & 0.819 & 0.844 & 0.874 \\ +2.190 & 2.30$\cdot 10^{-4}$ & 2.02$\cdot 10^{-4}$ & 0.807 & 0.798 & 0.959 & 0.972 \\ +2.600 & 2.35$\cdot 10^{-4}$ & 2.06$\cdot 10^{-4}$ & 0.867 & 0.859 & 0.910 & 0.933 \\ +3.077 & 2.59$\cdot 10^{-4}$ & 2.28$\cdot 10^{-4}$ & 0.941 & 0.938 & 0.534 & 0.534 \\ +3.413 & 2.52$\cdot 10^{-4}$ & 2.21$\cdot 10^{-4}$ & 0.878 & 0.869 & 0.606 & 0.614 \\ +\noalign{\smallskip} +\hline +\end{tabular*} +\label{tab:7} +\end{table} + +\begin{table} +\caption[]{Optical parameters of cirrus and contrail cloud models in the +terrestrial region. Symbols without a hat denote cirrus parameters, +symbols with a hat denote contrail parameters} +\begin{tabular*}{84.22mm}{@{\hspace{0pt}\extracolsep{\fill}}ccccccc@{\hspace{0pt}}} +\hline +\noalign{\smallskip} +$\lambda$& $\sigma$ & $\hat{\sigma}$ & $g$ & $\hat{g}$ & $\omega $ & $\hat{\omega}$ \\ +$\mu$m & km$^{-1}$ & km$^{-1}$ &-&-&-&-\\ +\noalign{\smallskip} +\hline +\noalign{\smallskip} +\phantom{1}4.08 &0.1623 &0.2553 &0.830 &0.820 &0.748 &0.769 \\ +\phantom{1}4.26 &0.1728 &0.2715 &0.852 &0.844 &0.727 &0.746 \\ +\phantom{1}4.40 &0.1696 &0.2669 &0.875 &0.868 &0.693 &0.709 \\ +\phantom{1}4.49 &0.1783 &0.2813 &0.880 &0.874 &0.676 &0.690 \\ +\phantom{1}4.65 &0.1732 &0.2722 &0.874 &0.867 &0.701 &0.718 \\ +\phantom{1}4.88 &0.1938 &0.3082 &0.863 &0.857 &0.783 &0.804 \\ +\phantom{1}5.13 &0.1895 &0.3010 &0.871 &0.866 &0.791 &0.813 \\ +\phantom{1}5.41 &0.1951 &0.3091 &0.886 &0.881 &0.764 &0.785 \\ +\phantom{1}5.71 &0.1748 &0.2768 &0.909 &0.905 &0.684 &0.698 \\ +\phantom{1}6.06 &0.1727 &0.2742 &0.918 &0.914 &0.608 &0.615 \\ +\phantom{1}6.45 &0.1742 &0.2763 &0.904 &0.899 &0.638 &0.648 \\ +\phantom{1}6.90 &0.1639 &0.2574 &0.904 &0.898 &0.634 &0.645 \\ +\phantom{1}7.41 &0.1670 &0.2618 &0.896 &0.889 &0.649 &0.661 \\ +\phantom{1}8.00 &0.1628 &0.2557 &0.891 &0.884 &0.669 &0.683 \\ +\phantom{1}8.70 &0.1485 &0.2300 &0.897 &0.890 &0.671 &0.688 \\ +\phantom{1}9.30 &0.1429 &0.2197 &0.902 &0.894 &0.639 &0.654 \\ +\phantom{1}9.76 &0.1266 &0.2927 &0.913 &0.905 &0.612 &0.625 \\ +10.53 &0.1048 &0.2541 &0.947 &0.938 &0.426 &0.412 \\ +11.76 &0.1399 &0.2138 &0.883 &0.871 &0.441 &0.429 \\ +12.90 &0.1597 &0.2496 &0.846 &0.835 &0.468 &0.460 \\ +13.79 &0.1570 &0.2429 &0.841 &0.829 &0.500 &0.495 \\ +14.81 &0.1845 &0.2889 &0.804 &0.790 &0.547 &0.548 \\ +16.00 &0.1686 &0.2627 &0.798 &0.783 &0.580 &0.586 \\ +18.18 &0.1449 &0.2188 &0.768 &0.747 &0.629 &0.644 \\ +22.22 &0.1193 &0.1747 &0.752 &0.729 &0.732 &0.763 \\ +28.57 &0.0902 &0.1232 &0.793 &0.763 &0.605 &0.631 \\ +40.00 &0.0829 &0.1148 &0.847 &0.811 &0.350 &0.314 \\ +66.67 &0.1107 &0.1511 &0.684 &0.621 &0.406 &0.380 \\ +\noalign{\smallskip} +\hline +\end{tabular*} +\label{tab:8} +\end{table} + +\section*{Appendix B} +\label{sec:b} + +\subsection*{Input parameters for the radiative convective model and the +matrix operator model} + +This appendix summarizes the input parameters describing atmospheric +conditions for the RCM as well as for the matrix operator model in the +cases of both months studied, July and October. + +Tables~\ref{tab:9} and~\ref{tab:10} list the input parameters concerning +the atmospheric conditions in the case of July and October, respectively +from radiosonde data. Temperatures are used as starting point for the +RCM calculations and data for modelling the optical properties of the +cirrus cloud layer. The data are taken from radiosonde measurements +averaged over the years 1981 to 1985, DWD (Deutscher Wetterdienst) +station Munich, except the humidity values in 100 and 150\,hPa, which +are averages from 1987 to 1989 due to lack of corresponding values in +the mentioned time-period. + +\begin{table}[b] +\caption[]{Radiosonde values over southern Germany in the month of July, +averages from 1981 to 1985} +\begin{tabular*}{84.22mm}{@{\hspace{0pt}\extracolsep{\fill}}ccccc@{\hspace{0pt}}} +\hline +\noalign{\smallskip} +height & pressure & temperature & air density & +humidity \\ km & hPa & K & g\,cm$^{-3}$ & \% \\ +\noalign{\smallskip} +\hline +\noalign{\smallskip} +31.85 & \phantom{1}10 & 233.6 & 14.91 & \\ +27.13 & \phantom{1}20 & 227.4 & 30.64 & \\ +24.43 & \phantom{1}30 & 223.9 & 46.68 & \\ +21.09 & \phantom{1}50 & 220.4 & 79.03 & \\ +18.91 & \phantom{1}70 & 218.5 & 111.6 & \\ +16.62 & 100 & 218.1 & 159.7 & 19.5 \\ +14.01 & 150 & 220.0 & 237.5 & 20.6 \\ +12.15 & 200 & 220.1 & 316.5 & 40.3 \\ +10.70 & 250 & 224.2 & 388.4 & 44.5 \\ +\phantom{1}9.47 & 300 & 232.5 & 449.5 & 44.4 \\ +\phantom{1}7.44 & 400 & 248.1 & 561.5 & 42.9 \\ +\phantom{1}5.78 & 500 & 259.7 & 670.2 & 44.2 \\ +\phantom{1}3.13 & 700 & 275.5 & 883.1 & 58.5 \\ +\phantom{1}1.54 & 850 & 285.2 & 1033.8 & 67.6\\ +\noalign{\smallskip} +\hline +\end{tabular*} +\label{tab:9} +\end{table} + +\begin{table}[b] +\caption[]{Radiosonde values over southern Germany in the month of +October, averages from 1981 to 1985} +\begin{tabular*}{84.22mm}{@{\hspace{0pt}\extracolsep{\fill}}ccccc@{\hspace{0pt}}} +\hline +\noalign{\smallskip} +height & pressure & temperature & air density & humidity \\ +km & hPa & K & g\,cm$^{-3}$ & \% \\ +\noalign{\smallskip} +\hline +\noalign{\smallskip} +31.01 & \phantom{1}10 & 222.5 & 15.66 & \\ +26.50 & \phantom{1}20 & 218.2 & 31.93 & \\ +23.91 & \phantom{1}30 & 216.0 & 48.38 & \\ +20.67 & \phantom{1}50 & 214.3 & 81.28 & \\ +18.55 & \phantom{1}70 & 213.9 & 114.0 & \\ +16.30 & 100 & 213.4 & 163.2 & 18.9 \\ +13.75 & 150 & 213.8 & 244.4 & 20.8 \\ +11.94 & 200 & 215.2 & 323.8 & 33.2 \\ +10.52 & 250 & 220.8 & 394.4 & 35.2 \\ +\phantom{1}9.31 & 300 & 228.7 & 457.0 & 37.6 \\ +\phantom{1}7.32 & 400 & 243.9 & 571.3 & 34.1 \\ +\phantom{1}5.68 & 500 & 255.7 & 681.2 & 35.7 \\ +\phantom{1}3.08 & 700 & 271.2 & 899.2 & 46.3 \\ +\phantom{1}1.51 & 850 & 279.5 & 1059. & 56.1 \\ +\noalign{\smallskip} +\hline +\end{tabular*} +\label{tab:10} +\end{table} + +Humidity values above 100\,hPa as well as all other values above 10\,hPa +are taken from McClatchey et al. (1972), mid-latitude summer atmosphere, +1962 and US standard atmosphere for July and October, respectively. +Surface values are 1981 to 1985 averages from the `Europaeischer +Wetterbericht' \citep{DWD}, and ozone data are from DWD station +Hohenpeissenberg (also 1981 to 1985). + +\subsection*{Cloud cover and liquid water path} + +Cloud cover values are taken from \citet{Wa88}. Values are based on +ground observation averages between 1971 and 1981. Spatial resolution of +these data is $5^{\circ} \times 5^{\circ}$, temporal resolution is 3 +months. The following classification is used: Cu, Cb, St, Ns, As, Ac, +and Ci. To get cloud cover values for the three cloud layers in the RCM, +Cu, Cb, St, Ns are chosen to give the low cloud cover, Cb, Ns, As, Ac to +give the mid-level cloud cover and Ci to give the high cloud cover, +following a procedure used by Liou in the original version of the RCM +\citep{Li85}. This leads to cloud cover values 0.31, 0.21, 0.07 and 0.41 +for low, middle, high clouds and clear sky, respectively in the month of +July. The corresponding values for October are 0.56, 0.34, 0.16 and +0.59, respectively. + +The RCM is unable to calculate interactions between clouds. Therefore, +the radiative flux computations are performed for different atmospheres +containing one cloud layer each for low, middle and high clouds and one +clear atmosphere are calculated separately and radiation fluxes are +weighted afterwards with the corresponding cloud-cover values. For this +reason, the cloud-cover values given are compacted in the RCM. This is +done by multiplication with a constant factor (less than 1) in the way +that the sum of the cloud cover and the clear sky fraction add up to 1. +Note, however, that the interaction between a single cloud layer and the +surface is taken into consideration. + +The liquid water path value of low clouds is taken from \citet{Li83} as +60.411\,g\,m$^{-2}$, that for mid-level clouds to 54.06\,g\,m$^{-2}$ in +the present study. The ice water path for cirrus cloud is assumed to be +2.908\,g\,m$^{-2}$ according to measurements of \citet{He84}. + +\subsection*{Surface albedo} + +The surface solar albedo values are taken from \citet{Ko92}. These +values are based on satellite measurements. In the case of October, +values from 10:00, 13:00 and 16:00 local time are available, +corresponding to sun elevations of 26.87$^{\circ}$, 31.06$^{\circ}$ and +12.29$^{\circ}$, respectively. Interpolation to 20.22$^{\circ}$ +elevation angle which is used in the RCM leads to an albedo of 11.3\%. +This value is used for the October calculations. + +In the case of July, only the 13:00 local time value was available. This +value is 15.6\%. Due to the fact that the albedo has a minimum value at +the time of the highest sun elevation angles, an albedo value slightly +higher than this value was chosen as representative in the July +calculations. The value was estimated to be 17\% (W. Thomas, personal +communication). + +\subsection*{Aerosol data} + +Aerosol data are chosen to represent continental conditions for both +months studied, July and October (M. Hess and P. Koepke, personal +communication). Table~\ref{tab:11} shows the assumed aerosol components +and particle numbers. These values are valid for sea level. The dependence +on altitude is modeled after +\begin{equation} +n(h) = n(0)exp(-h/Z), +\label{eq:2} +\end{equation} +where $n$ denotes the particle number, $h$ the altitude and $Z$ a reference +altitude which is 8\,km. For more details, including refractive indices, +see \citet{WM83}. + +\begin{table} +\caption[]{Aerosol conditions used for calculations} +\begin{tabular*}{84.22mm}{@{\hspace{0pt}\extracolsep{\fill}}llll@{\hspace{0pt}}} +\noalign{\smallskip} +\hline +\noalign{\smallskip} +height & aerosol type & number & mode radius \\ +km & & cm$^{-3}$ & $\mu$m \\ +\noalign{\smallskip}\hline\noalign{\smallskip} +- 2 & water soluble (70\%)& 7000 & 0.0285 \\ +& insoluble & 0.4 & 0.471 \\ +& soot & 8300 & 0.0118 \\ +2-12 & water soluble (50\%)& 438 & 0.0262 \\ +& insoluble & 1.24$\cdot 10^{-3}$ & 0.471 \\ +& soot & 292 & 0.0118 \\ +\noalign{\smallskip} +\hline +\end{tabular*} +\label{tab:11} +\end{table} + +\subsection*{Satellite data used for parameterization of advection} + +Satellite data are taken from ERBE (Earth Radiation Budget Experiment) +via the `Meteorologisches Institut der Universitaet Hamburg'. Spatial +resolution of these data is $2.5^{\circ} \times 2.5^{\circ}$. The data +are taken from 47.5$^{\circ}$ to 50.0$^{\circ}$N and 10.0$^{\circ}$ to +12.5$^{\circ}$E and cover quite accurately the area of Bavaria, southern +Germany. In the case of July, a 5-year average of monthly averaged net +fluxes (top of atmosphere) is used (1985--1989). Values are 68.75, +55.96, 54.63, 61.94 and 51.80\,Wm$^{-2}$ for the 5 months, respectively. +The mean value used is 58.62\,Wm$^{-2}$. For October, corresponding data +from 2 years 1985 and 1986 are used. Values are $-99.00$\,Wm and +$-94.50$\,Wm$^{-2}$, respectively, and the mean value +$-96.75$\,Wm$^{-2}$ is used. + +\subsection*{Bowen ratio data} + +The relation ship between surface fluxes of sensible and latent heat +strongly dominates the temperature profile near surface. Values were +taken from \citet{Be69}. These values were measured in 1964 on the area +of a meteorological research station of the University of Munich, +Germany, located in the surroundings of the city. It is not clear how +representative they are these values are for whole southern Germany and +how representative they are for a monthly mean averaged over many years. +However, due to lack of better data these values, given in Table~\ref{tab:12} +are used in the calculations. + +\begin{table}[t] +\caption[]{Bowen ratios for July and October, southern Germany used in +the calculations} +\begin{tabular*}{84.22mm}{@{\hspace{0pt}\extracolsep{10pt}}cc@{\hspace{0pt}}} +\hline +\noalign{\smallskip} +month & sensible heat / latent heat \\ +& $\rm Wm\it^{-2} /\rm Wm\it^{-2} $ \\ +\noalign{\smallskip} +\hline +\noalign{\smallskip} +July & 24 / 130 \\ +October & 9 / 31 \\ +\noalign{\smallskip} +\hline +\end{tabular*} +\label{tab:12} +\end{table} + +\end{appendix} + +\begin{thebibliography}{} + +\bibitem[Arnott \etal(1994)]{Ar94} {\bf Arnott, W.P., Y.Y. Dong, J. +Hallett, and M.R. Poellot}, Role of small ice crystals in radiative +properties of cirrus: a case-study, FIRE II, November 22, 1991, {\it J. +Geophys. Res.}, {\bf 99}, 1371--1381, 1994. + +\bibitem[Bakan \etal(1994)]{Ba94} {\bf Bakan, S., M. Betancor, V. +Gayler, and H. Grassl}, Contrail frequency over Europe from +NOAA-satellite images, {\it Ann. Geophysicae}, {\bf 12}, 962--968, 1994. + +\bibitem[Berz(1969)]{Be69} {\bf Berz, G.}, {\it Energiehaushalt der +Bodenoberfl\"ache}, {\it Meteorologisches Institut der Universit\"at +M\"unchen}, 1969. + +\bibitem[Deepak and Gerber(1983)]{WM83} {\bf Deepak, A., and H.E. Gerber +(eds.)}, Report of the expert meeting on aerosols and their climatic +effects, {\bf WCP-55}, 1983 + +\bibitem[Deutscher Wetterdienst(1981)]{DWD} {\bf Europaeischer +Wetterbericht}, DWD, Amtsblatt des Deutschen Wetterdienstes, D6168, ISSN +0341-2970, 1981--1985. + +\bibitem[Gayet \etal(1996)]{Ga96} {\bf Gayet, J.-F., G. Febvre, G. +Brogniez, H. Chepfer, W. Renger, and P. Wendling}, Microphysical and +optical properties of cirrus and contrails: cloud field study on 13 +October 1989, {\it J. Atmos. Sci.}, {\bf 53}, 126--138, 1996. + +\bibitem[Hess and Wiegner(1994)]{He94} {\bf Hess, M., and M. Wiegner}, +COP: Data library of optical properties of hexagonal ice crystals, {\it +Appl. Opt.}, {\bf 33}, 7740--7746, 1994. + +\bibitem[Heymsfield and Platt(1984)]{He84} {\bf Heymsfield, A.J., and +C.M.R. Platt}, A parameterization of the particle size spectrum of ice +clouds in terms of the ambient temperature and the ice water content, +{\it J. Atmos. Sci.}, {\bf 41}, 846--855, 1984. + +\bibitem[Iaquinta \etal(1995)]{Ia95} {\bf Iaquinta, J., H. Isaka, and P. +Personne}, Scattering phase function of bullet rosette ice crystals, +{\it J. Atmos. Sci.}, {\bf 52}, 1401--1413, 1995. + +\bibitem[Koepke(1992)]{Ko92} {\bf Koepke, P., R. Meerkoetter, W. Thomas, +and B. Vogel}, Albedo in Mitteleuropa aus METEOSAT-Minimumcounts, {\it +Meteorologisches Institut der Universit\"at M\"unchen, Forschungsbericht +`MIM-FB92-S4'}, 1992. + +\bibitem[Liou(1992)]{Li92} {\bf Liou, K.N.}, {\it Radiation and cloud +processes in the atmosphere}, Oxford University Press, Oxford, 1992. + +\bibitem[Liou and Ou(1983)]{Li83} {\bf Liou, K.N., and S.C. Ou}, Theory +of equilibrium temperatures in radiative-turbulent atmospheres, {\it J. +Atmos. Sci.}, {\bf 40}, 214--229, 1983. + +\bibitem[Liou \etal(1985)]{Li85} {\bf Liou, K.N., S.C. Ou, and P.J. Lu}, +Interactive cloud formation and climatic temperature perturbations, {\it +J. Atmos. Sci.}, {\bf 42}, 1969--1981, 1985. + +\bibitem[Liou \etal(1990)]{Li90} {\bf Liou, K.N., S.C. Ou, and G. +Koenig}, An investigation on the climatic effect of contrail cirrus, in: +{\it Air traffic and the environment -- background, tendencies and +potential global atmospheric effects, Ed. U. Schumann, Proc. DLR Int. +Coll., Bonn, Germany}, Springer, Berlin Heidelberg New York 1990. + +\bibitem[McClatchey \etal(1972)]{MC72} {\bf McClatchey, R.A., R.W. Fenn, +J.E.A. Selby, F.E. Volz, and J.S. Garing}, Optical properties of the +atmosphere (third edition), {\it Air Force Systems Command, United +States Air Force, AFCRL-72-0497}, 1972. + +\bibitem[Macke(1993)]{Ma93} {\bf Macke, A.}, Scattering of light by +polyhedral ice crystals, {\it Appl. Opt.}, {\bf 32}, 2780--2788, 1993. + +\bibitem[Plass \etal(1973)]{Pl73} {\bf Plass, G.N., G.W. Kattawar, and +F.E. Catchings}, Matrix operator theory of radiative transfer. 1: +Rayleigh scattering, {\it Appl. Opt.}, {\bf 12}, 314--329, 1973. + +\bibitem[Ponater \etal(1996)]{Po96} {\bf Ponater, M., S. Brinkop, R. +Sausen, and U. Schumann}, Simulating the global atmospheric response to +aircraft water vapour emissions and contrails: a first approach using a +GCM, {\it Ann. Geophysicae}, {\bf 14}, 941--960, 1996. + +\bibitem[Schumann(1994)]{Schu94} {\bf Schumann, U.}, On the effect of +emissions from aircraft engines on the state of the atmosphere, {\it +Ann. Geophysicae}, {\bf 12}, 365--384,\break 1994. + +\bibitem[Stackhouse and Stephens(1991)]{St91} {\bf Stackhouse, P.W., and +G.L. Stephens}, A theoretical and observational study of the radiative +properties of cirrus: results from FIRE 1986, {\it J. Atmos. Sci.}, {\bf +48}, 2044--2059, 1991. + +\bibitem[Strauss(1996)]{St96} {\bf Strauss, B.}, On the scattering +behaviour of bullet-rosette and bullet-shaped ice crystals, {\it Ann. +Geophysicae}, {\bf 14}, 566--573, 1996. + +\bibitem[Stroem(1993)]{St93} {\bf Stroem, J.}, Numerical and airborne +experimental studies of aerosol and cloud properties in the troposphere, +{\it Dissertation, Dep.\break Meteorology, Stockholm University, ISBN +91-7153-168-8},\break 1993. + +\bibitem[Takano and Liou(1989)]{Ta89} {\bf Takano, Y.,and K.-N. Liou}, +Solar radiative transfer in cirrus clouds. Part I: single--scattering +and optical properties of hexagonal ice crystals, {\it J. Atmos. Sci.}, +{\bf 46}, 3--19, 1989. + +\bibitem[Warren(1984)]{Wa84} {\bf Warren, S.G.}, Optical constants of +ice from the ultraviolet to the microwave, {\it Appl. Opt.}, {\bf 23}, +1206--1223, 1984. + +\bibitem[Warren \etal(1988)]{Wa88} {\bf Warren, S.G., C.J. Hahn, J. +London, R.M. Chervin, and R.L. Jenne}, Global distribution of total +cloud cover and cloud type amounts over land, {\it NCAR, Technical +Notes}, 1988. + +\bibitem[Wielicki \etal(1990)]{Wi90} {\bf Wielicki, B.A., J.T. Suttles, +A.J. Heymsfield, R.M. Welch, J.D. Spinhirne, M.C. Wu, D.O'C. Starr, L. +Parker, and R.F. Arduini}, The 27--28 October 1986 FIRE IFO cirrus +study: comparison of radiative transfer theory with observations by +satellite and aircraft, {\it Mon. Wea. Rev.}, {\bf 118}, 2356--2376, +1990. + +\end{thebibliography} + +\end{document} diff --git a/macros/latex/contrib/springer/svjour/agp/natbib.dtx b/macros/latex/contrib/springer/svjour/agp/natbib.dtx new file mode 100644 index 0000000000..33bdffdaca --- /dev/null +++ b/macros/latex/contrib/springer/svjour/agp/natbib.dtx @@ -0,0 +1,3221 @@ +% \iffalse THIS IS A META-COMMENT +%<*dtx> +\ProvidesFile +%======================================================================== + {NATBIB.DTX} +%======================================================================== +%</dtx> +% This is a LaTeX package to modify \cite and \thebibliography for author-year +% systems of bibliographic citation; will also work with +% numerical systems, allowing simplified style changes for them too. +% Installation: +% LaTeX this file: creates docstrip installation file natbib.ins +% AND the (LaTeX2e) documentation +% (La)TeX natbib.ins: creates package file natbib.sty +% and optionally the LaTeX 2.09 style natbib209.sty +% and doc driver natbib.drv +% (natbib.ins may be edited as needed) +% Docstrip options available: +% package - to produce a (LaTeX2e) package .sty file +% driver - to produce a driver file to print the documentation +% 209 - (with package) for style file that runs under LaTeX 2.09 +% subpack - (with package) for coding included in other packages +% all - (with package) to include all author-year systems +% else individually with: +% apalike, newapa, chicago, harvard, authordate, astron +% agu - (with package,subpack) for inclusion in aguplus package +% egs- (with package,subpack) for inclusion in egs package +% nopreonly - allows \citestyle and \bibpunct to be used anywhere +%-------------------------------------------------------------------------- +%<*!subpack> +%<package&209>\def\ProvidesPackage#1#2] +%<package&209> {\typeout{Style option `#1'#2]}} +% +% *** Identify the package file:- +%<package&!209>\NeedsTeXFormat{LaTeX2e}[1994/06/01] +%<package>\ProvidesPackage{natbib} +%</!subpack> +% +% *** Provide command to dislay module version +%<package&subpack>\def\ModuleVersion#1[#2]{} +%<package&subpack> \ModuleVersion{natbib} +% +% *** Identify the driver file:- +%<driver>\NeedsTeXFormat{LaTeX2e} +%<driver>\ProvidesFile{natbib.drv} +% +% *** The DATE, VERSION, and other INFO +%\fi +%\ProvidesFile{natbib} + [1997/02/05 6.5 (PWD)] +%\iffalse +%<*package> +%<*!subpack> +%%------------------------------------------------------------------- +%% NOTICE: +%% This file may be used for non-profit purposes. +%% It may not be distributed in exchange for money, +%% other than distribution costs. +%% +%% The author provides it `as is' and does not guarantee it in any way. +%% +%</!subpack> +%</package> +%% Natbib coding copyright (C) 1994--1997 Patrick W. Daly +%<*package> +%<*!subpack> +%% Max-Planck-Institut f\"ur Aeronomie +%% Postfach 20 +%% D-37189 Katlenburg-Lindau +%% Germany +%% +%% E-mail: +%% Internet-- daly@linmpi.dnet.gwdg.de +%%----------------------------------------------------------- +%</!subpack> +%</package> +% END META-COMMENT \fi +% \changes{4.0}{1993 Aug 19}{First documented release} +% \changes{4.1}{1993 Oct 4}{Simplification of \cs{@citeapalk}} +% \changes{4.1a}{1993 Oct 14}{Add \texttt{rev} option for reversed comments +% in \cs{cite}} +% \changes{4.1b}{1993 Oct 18}{Add \cs{bibfont} to list definition =\cs{relax}} +% \changes{4.2}{1993 Oct 22}{Add coding for AGU, NLINPROC} +% \changes{4.2}{1993 Nov 20}{Add more coding for AGU} +% \changes{4.3a}{1994 Feb 24}{First additions for \LaTeXe} +% \changes{5.0}{1994 May 18}{Revised for \LaTeXe{} and 2.09} +% \changes{5.0}{1994 May 18}{Remove obsolete JGR, GRL coding} +% \changes{5.0}{1994 May 18}{Add \cs{citeauthor}, \cs{citeyear}} +% \changes{5.0}{1994 May 18}{Two optional texts for \cs{cite} so \texttt{rev} +% option obsolete} +% \changes{5.0}{1994 May 18}{\LaTeXe\ options to select punctuation} +% \changes{5.1}{1994 Jun 22}{Conform to first official release of \LaTeXe} +% \changes{5.1}{1994 Jun 22}{Separate \LaTeX\ and 2.09 files} +% \changes{5.1}{1994 Jun 22}{Put doc driver first} +% \changes{5.2}{1994 Aug 25}{Fix up 2.09 style to run in compatibility mode} +% \changes{5.2}{1994 Aug 25}{\cs{citeauthor}, \cs{citeyear} make BibTeX +% entry in aux file} +% \changes{5.2}{1994 Aug 25}{\cs{@citex} defined as in \LaTeXe} +% \changes{5.2}{1994 Aug 25}{Local config file \texttt{natbib.cfg} read in} +% \changes{5.3}{1994 Sep 13}{Add \cs{citefullauthor}, options \texttt{angle}, +% \texttt{curly}} +% \changes{5.3}{1994 Sep 19}{Add star version of \cs{cite} for full authors} +% \changes{5.3}{1994 Sep 26}{Fix accents in citations with proper definition +% of \cs{protect}} +% \changes{5.4}{1994 Nov 24}{Add space in \cs{@citex} for text cites} +% \changes{5.4}{1994 Nov 24}{Replace \cs{if@tempswa} by \cs{ifNAT@swa}} +% \changes{5.4}{1994 Nov 24}{Add superscript citation type to \cs{bibpunct}} +% \changes{5.4}{1994 Nov 24}{Add \cs{@citesuper}, fix up bugs in superscripts} +% \changes{5.4}{1994 Nov 24}{Define \cs{@citexnum} as in \LaTeXe} +% \changes{5.4}{1995 Feb 03}{Add \cs{citestyle} same as \cs{bibstyle}} +% \changes{5.4}{1995 Feb 08}{For repeated years and authors, print just letter} +% \changes{5.5}{1995 Mar 13}{Add \cs{bibhang} and command space in +% \cs{@cite}} +% \changes{5.5}{1995 Mar 16}{Add \cs{citealt} for citation with no +% parentheses} +% \changes{5.5}{1995 Mar 24}{Reorganize internal commands, using \cs{NAT@} +% prefixes} +% \changes{5.5}{1995 Mar 24}{Punctuation selection commands \cs{bibpunct}, +% \cs{citestyle} are now preamble only, whereas previously they had to +% come after the preamble} +% \changes{5.5}{1995 May 14}{Change names of punctuation commands to +% \cs{NAT@...}} +% \changes{6.0}{1995 Sep 4}{Allow numerical styles with author-year +% \texttt{bst} files} +% \changes{6.0}{1995 Sep 21}{Add automatic indexing of citations} +% \changes{6.0}{1995 Sep 29}{Accommodate \texttt{index} package} +% \changes{6.1}{1995 Nov 22}{Fixed for \LaTeXe\ \texttt{1995/12/01}} +% \changes{6.1}{1995 Dec 4}{Make more robust against changes to internals} +% \changes{6.1a}{1995 Dec 19}{Fix test for changed citations} +% \changes{6.2}{1996 Jan 10}{Replace all \cs{uppercase}} +% \changes{6.2}{1996 Jan 11}{Add \cs{citet}} +% \changes{6.2}{1996 Feb 2}{Fix superscript size} +% \changes{6.2}{1996 Mar 05}{Add length \cs{bibsep} for linespacing between +% references} +% \changes{6.2}{1996 Apr 15}{Fix clash with \texttt{amsart} and +% \texttt{amsbook}} +% \changes{6.3}{1996 Jun 10}{Allow \texttt{showkeys} to be loaded first} +% \changes{6.3}{1996 Jun 17}{Fix punctuation for \texttt{plainnat}} +% \changes{6.3}{1996 Jun 17}{Suppress extra labels with numericals} +% \changes{6.4}{1996 Jun 18}{Provide \cs{bibname} and \cs{refname}} +% \changes{6.4}{1996 Jun 27}{Change \texttt{nlinproc} option to \texttt{egs}} +% \changes{6.4}{1996 Sep 1}{Make compatible with \texttt{chapterbib.sty}} +% \changes{6.4}{1996 Sep 12}{Fix spacing for superscripts} +% \changes{6.4}{1996 Sep 12}{Extra letter printed with \cs{citeyear}} +% \changes{6.4}{1996 Sep 13}{Add compression and sorting of numerical citations} +% \changes{6.4}{1996 Oct 2}{Make compatible with \texttt{hyperref.sty}} +% \changes{6.5}{1996 Dec 11}{KOMA script compatibility} +% \changes{6.5}{1997 Jan 10}{For EGS, no blank line between references} +% \changes{6.5}{1997 Jan 30}{Recode notes so they work with \cs{citet} and +% \cs{citep}; change documentation to stress these commands over \cs{cite}} +% \changes{6.5}{1997 Feb 5}{Fix KOMA script properly} +% +% \CheckSum{1706} +% \CharacterTable +% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z +% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z +% Digits \0\1\2\3\4\5\6\7\8\9 +% Exclamation \! Double quote \" Hash (number) \# +% Dollar \$ Percent \% Ampersand \& +% Acute accent \' Left paren \( Right paren \) +% Asterisk \* Plus \+ Comma \, +% Minus \- Point \. Solidus \/ +% Colon \: Semicolon \; Less than \< +% Equals \= Greater than \> Question mark \? +% Commercial at \@ Left bracket \[ Backslash \\ +% Right bracket \] Circumflex \^ Underscore \_ +% Grave accent \` Left brace \{ Vertical bar \| +% Right brace \} Tilde \~} +% +% \iffalse +%<*install> +%^^A ============================================= +%^^A Here is the docstrip installation file +%^^A It is written on first LaTeX run +%^^A ============================================= +\begin{filecontents}{natbib.ins} +% Simply TeX or LaTeX this file to extract various files from +% the source file `natbib.dtx' +% Comment out the \generateFile lines for any files you do not want. + +\def\batchfile{natbib.ins} +\input docstrip + +\preamble + +Only a few abbreviated comments remain here to describe the usage. + +\endpreamble +\postamble +<<<<< End of decommented file <<<<<< +\endpostamble +\keepsilent + +\generateFile{natbib.sty}{f}{\from{natbib.dtx}{package,all}} + +\preamble + +This is the LaTeX 2.09 version of the package. +It will not be maintained forever. +Please upgrade to LaTeX2e so that you may use the proper package. + +Only a few abbreviated comments remain here to describe the usage. + +\endpreamble + +% Activate the next line to get a version for running under LaTeX 2.09 +%\generateFile{natbib209.sty}{f}{\from{natbib.dtx}{package,all,209}} + +\preamble + +This is the driver file to produce the LaTeX documentation from the +source file \inFileName. +Make changes to it as needed. (Never change the \inFileName file!) +\endpreamble +\postamble + +End of documentation driver file. +\endpostamble + +% Activate the next line for a documentation driver +% that you can configure yourself. +%\generateFile{natbib.drv}{f}{\from{natbib.dtx}{driver}} + +\obeyspaces +\Msg{*******************************************}% +\Msg{* For documentation, process natbib.dtx *}% +\Msg{* or the driver file natbib.drv *}% +\Msg{* (LaTeX2e only!) *}% +\Msg{*******************************************} +\end{filecontents} +%</install> +%<*driver> +\documentclass{ltxdoc} +%<driver>%\documentclass[twoside]{ltxdoc} +%<driver>%\documentclass[a4paper]{ltxdoc} +%<driver>%\documentclass[twoside,a4paper]{ltxdoc} +\raggedbottom + + %** To include the detailed explanation of the coding, comment out + %** the next line +\OnlyDescription + + %** To produce a command index: add the following line for one run, + %** then run makeindex -s gind.ist natbib + %** and reprocess, with or without this line (much faster without) +%<driver>% \EnableCrossrefs\CodelineIndex + + %** To produce a change history: add the following line for one run, + %** then run makeindex -s gglo.ist -o natbib.gls natbib.glo + %** and reprocess, with or without this line (faster without) +%<driver>% \RecordChanges + +\DisableCrossrefs %May stay; zapped by \EnableCrossrefs +\CodelineNumbered %May stay + +\begin{document} + \DocInput{natbib.dtx} +\end{document} +%</driver> +%\fi +% +% \DoNotIndex{\begin,\CodelineIndex,\CodelineNumbered,\def,\DisableCrossrefs} +% \DoNotIndex{\DocInput,\documentclass,\EnableCrossrefs,\end,\GetFileInfo} +% \DoNotIndex{\NeedsTeXFormat,\OnlyDescription,\RecordChanges,\usepackage} +% \DoNotIndex{\ProvidesClass,\ProvidesPackage,\ProvidesFile,\RequirePackage} +% \DoNotIndex{\LoadClass,\PassOptionsToClass,\PassOptionsToPackage} +% \DoNotIndex{\DeclareOption,\CurrentOption,\ProcessOptions,\ExecuteOptions} +% \DoNotIndex{\AtEndOfClass,\AtEndOfPackage,\AtBeginDocument,\AtEndDocument} +% \DoNotIndex{\InputIfFileExists,\IfFileExists,\ClassError,\PackageError} +% \DoNotIndex{\ClassWarning,\PackageWarning,\ClassWarningNoLine} +% \DoNotIndex{\PackageWarningNoLine,\ClassInfo,\PackageInfo,\MessageBreak} +% \DoNotIndex{\space,\protect,\DeclareRobustCommand,\CheckCommand} +% \DoNotIndex{\newcommand,\renewcommand,\providecommand,\newenvironment} +% \DoNotIndex{\renewenvironment,\newif,\newlength,\newcounter,\setlength} +% \DoNotIndex{\setcounter,\if,\ifx,\ifcase,\ifnum,\ifdim,\else,\fi} +% \DoNotIndex{\texttt,\textbf,\textrm,\textsl,\textsc,\reset@font} +% \DoNotIndex{\textup,\textit,\textmd,\textsf,\emph,\futurelet} +% \DoNotIndex{\ttfamily,\rmfamily,\sffamily,\mdseries,\bfseries,\upshape} +% \DoNotIndex{\slshape,\scshape,\itshape,\em,\LaTeX,\LaTeXe} +% \DoNotIndex{\filename,\fileversion,\filedate,\let,\makeindex} +% \DoNotIndex{\@auxout,\@for,\@gobble,\@ifnextchar,\@m,\@mkboth,\@nil} +% \DoNotIndex{\@noitemerr,\@tempa,\@tempswafalse,\@tempswatrue,\@warning} +% \DoNotIndex{\advance,\arabic,\AtBeginDocument,\bf,\bibname,\chapter} +% \DoNotIndex{\citation,\clubpenalty,\CodelineNumbered,\csname} +% \DoNotIndex{\DisableCrossrefs,\do,\edef,\else,\endcsname,\endlist} +% \DoNotIndex{\expandafter,\fi,\gdef,\global,\hbox,\hfill,\hskip,\hspace} +% \DoNotIndex{\if,\if@filesw,\if@tempswa,\ifx,\immediate,\itemindent,\labelsep} +% \DoNotIndex{\labelwidth,\lastskip,\leftmargin,\list,\mbox,\newblock} +% \DoNotIndex{\newpage,\p@enumiv,\parindent,\penalty,\refname} +% \DoNotIndex{\relax,\section,\settowidth,\sfcode,\sloppy,\small,\string} +% \DoNotIndex{\theenumiv,\thepage,\unskip,\uppercase,\usecounter,\vskip} +% \DoNotIndex{\widowpenalty,\write,\xdef,\z@,\catcode,\ifnum,\the} +% \DoNotIndex{\.,\@empty,\@ifundefined,\@latex@warning,\@minus,\@plus,\ } +% \DoNotIndex{\document,\@namedef,\@listi} +% \DoNotIndex{\listparindent,\noexpand,\par,\parsep,\pb,\pbf,\pbfseries} +% \DoNotIndex{\pc,\pd,\pem,\pit,\pitshape,\pmdseries,\prm,\prmfamily,\psc} +% \DoNotIndex{\pscshape,\psf,\psffamily,\psl,\pslshape,\ptt,\pttfamily} +% \DoNotIndex{\pupshape,\@iden,\@firstofone,\@unexpandable@protect} +% \DoNotIndex{\&,\{,\},\bibitem,\bibindent,\if@draft,\typeout} +% \DoNotIndex{\@ifclassloaded,\@ifstar,\@onlypreamble,\@preamblecmds} +% \DoNotIndex{\addtolength,\endinput,\@bsphack,\begingroup,\@wrindex} +% \DoNotIndex{\@listctr,\bibname,\enddocument,\hfil,\ignorespaces,\item} +% \DoNotIndex{\NAT@temp,\refname,\stepcounter,\@ifpackageloaded} +% \DoNotIndex{\@gobbletwo,\index,\itemsep,\markright,\scriptsize} +% \DoNotIndex{\textsuperscript} +% +% \setcounter{IndexColumns}{2} +% \setlength{\IndexMin}{10cm} +% \setcounter{StandardModuleDepth}{1} +% +% \hyphenation{par-en-the-ti-cal} +% +% \GetFileInfo{natbib} +% +% \title{{\bfseries Natural Sciences Citations and References}\\ +% (Author--Year and Numerical Schemes)} +% +% \author{Patrick W. Daly} +% +% \date{This paper describes package \texttt{\filename}\\ +% version \fileversion{} from \filedate\\[1ex] +%^^A \textsl{It is part of the \texttt{preprint} collection of packages}\\ +% \textbf{It is intended for \LaTeXe} +% \\ (but does include a variant for \LaTeX~2.09) +% } +% +% \maketitle +% +% \pagestyle{myheadings} +% \markboth{P. W. Daly}{NATURAL SCIENCES CITATIONS AND REFERENCES} +% +% \newcommand{\btx}{\textsc{Bib}\TeX} +% \newcommand{\thestyle}{\texttt{\filename}} +% +%^^A In order to keep all marginal notes on the one (left) side: +%^^A (otherwise they switch sides disasterously with twoside option) +% \makeatletter \@mparswitchfalse \makeatother +% +% \begin{abstract} +% Journals in the natural sciences tend to use the author--year style of +% literature citations, in contrast to the numerical style supported by +% \LaTeX{} and \btx. A number of contributed packages exist to accommodate this +% citation mode, but each one is tailored to a limited number of \btx\ style +% (\texttt{.bst} files. The reason is that each one reads in the author--year +% information in different formats for the |\bibitem| commands. +% In contrast, +% the \thestyle{} package supports not only the various author--year +% bibliography styles, but also those for standard numerical citations. In +% fact, it can also produce numerical citations even with an author--year +% bibliographic style, something that permits easy switching between the +% two citation modes. To this end, replacements for the standard +% \LaTeX\ \texttt{.bst} files are also provided. +% +% It is possible to define the citation \emph{style} (type of brackets and +% punctuation between citations) and even to associate it with the name of the +% bibliographic style so that it is automatically activated. Citation styles +% can be defined for local \texttt{.bst} files by means of a configuration file +% \thestyle\texttt{.cfg}. +% +% It is compatible with the packages: \texttt{index}, \texttt{showkeys}, +% \texttt{chapterbib}, \texttt{hyperref}, +% and with the classes \texttt{amsbook} and +% \texttt{amsart}. It can also emulate the sorting and compressing +% functions of the \texttt{cite} package (with which it is otherwise +% incompatible). +% +% The \thestyle\ package therefore acts as a single, flexible interface for +% most of the available bibliographic styles. +% +% \end{abstract} +% +% \section{Introduction} +% The first problem of using author--year literature citations with standard +% \LaTeX{} is that the two forms of citations are not supported. These are: +% \begin{quote} +% textual: \dots\ as shown by Jones et al. (1990) \dots\\ +% parenthetical: It has been shown (Jones et al., 1990) that \dots +% \end{quote} +% There is only one |\cite| command to do both jobs. +% +% A second problem is that the \texttt{thebibliography} environment for +% listing the references insists on including the {\em labels\/} in the +% list. These labels are normally the numbers, needed for referencing. In +% the author--year system, they are superfluous and should be left off. +% Thus, if one were to make up a bibliography with the author--year as +% label, as +% \begin{quote} +% \begin{verbatim} +% \begin{thebibliography}{...} +% \bibitem[Jones et al., 1990]{jon90} +% Jones, P. K., . . . +% \end{thebibliography} +% \end{verbatim} +% \end{quote} +% then |\cite{jon90}| produces the parenthetical citation [Jones et al., +% 1990], but there is no way to get the textual citation. Furthermore, +% the citation text will also be included in the list of references. +% +% The final problem is to find a \btx{} bibliography style that will be +% suitable. +% +% \section{Previous Solutions} +% \begin{quote}\slshape +% This section may not be of interest to all users. To find out how to use +% \thestyle\ without reading about the historical background, go to +% Section~\ref{sec:usage}. +% \end{quote} +% +% Although the author--year citation mode is not supported by +% \emph{standard} \LaTeX, there are a number of contributed packages that +% try to solve this problem. The various bibliographic styles +% (\texttt{.bst} files) that exist are usually tailored to be used with a +% particular \LaTeX{} package. +% +% I have found a large number of \texttt{.bst} files on file servers that may +% act as indicators of the various systems available. +% +% \subsection{The \texttt{natsci.bst} Style} +% What gave me my first inspiration was Stephen Gildea's \texttt{natsci.bst} +% for use with his \texttt{agujgr.sty} file. This showed me that the problem +% was solvable. However, Gildea's style formats |\bibitem| just as I +% illustrated above: with an optional label consisting of abbreviated +% authors and year. Thus only parenthetical citations can be accommodated. +% The list of references, however, is fixed up in his style files. +% +% \subsection{The \texttt{apalike.bst} Style} +% Oren Patashnik, the originator of \btx{} and the standard \texttt{.bst} +% files, has also worked on an author--year style, called \texttt{apalike.bst} +% with a corresponding \texttt{apalike.sty} to support it. Again, only the +% parenthetical citation is provided. Except for the fact that his style +% works with version~0.99 of \btx, its functionality is identical to that +% of the \texttt{natsci} files. +% +% Patashnik does not like author--year citations. He makes this very clear +% in his \btx{} manuals and in the header to \texttt{apalike.bst}. +% Nevertheless, one should respect his work in this area, simply because he +% should be the best expert on matters of \btx. Thus \texttt{apalike.bst} +% could be the basis for other styles. +% +% The form of the \texttt{thebibliography} entries in this system is +% \begin{quote} +% |\bibitem[Jones et al., 1990]{jon90}...| +% \end{quote} +% the same as I illustrated earlier. This is the most minimal form that can +% be given. I name it the \texttt{apalike} variant, after Patashnik's +% \texttt{apalike.bst} and \texttt{apalike.sty}. However, there could be many +% independent \texttt{.bst} files that follow this line. +% +% The bibliography style files belonging to this group include: +% \begin{quote} +% \texttt{apalike}, \texttt{apalike2}, \texttt{cea}, \texttt{cell}, +% \texttt{jmb}, \texttt{phapalik}, \texttt{phppcf}, \texttt{phrmp} +% \end{quote} +% +% \subsection{The \texttt{newapa} Style} +% A major improvement has been achieved with \texttt{newapa.bst} and the +% accompanying \texttt{newapa.sty} files by Stephen N. Spencer and Young U. +% Ryu. Under their system, three separate items of information are included +% in the |\bibitem| label, to be used as required. These are: the full +% author list, the abbreviated list, and the year. This is accomplished by +% means of a |\citeauthoryear| command included in the label, as +% \begin{quote} +% |\bibitem[\protect\citeauthoryear{Jones, Barker,|\\ +% | and Williams}{Jones et al.}{1990}]{jon90}...| +% \end{quote} +% Actually, this only illustrates the basic structure of |\citeauthoryear|; +% the \texttt{newapa} files go even further to replace some words and +% punctuation +% with commands. For example, the word `and' above is really +% |\betweenauthors|, something that must be defined in the \texttt{.sty} file. +% Of course, |\citeauthoryear| is also defined in that file. A +% number of different |\cite| commands are available to print out the +% citation with complete author list, with the short list, with or without +% the date, the textual or parenthetical form. +% +% Thus the |\citeauthoryear| entry in |\bibitem| is very flexible, +% permitting the style file to generate every citation form that one might +% want. It is used by a number of other styles, with corresponding +% \texttt{.sty} files. They all appear to have been inspired by +% \texttt{newapa.bst}, although they lack the extra punctuation commands. +% +% Bibliographic style files belonging to the \texttt{newapa} group include +% \begin{quote} +% \texttt{newapa}, \texttt{chicago}, \texttt{chicagoa}, \texttt{jas99}, +% \texttt{named} +% \end{quote} +% Note: the last of these, \texttt{named.bst}, uses |\citeauthoryear| in a +% slightly different manner, with only two arguments: the short list and +% year. +% +% \subsection{The Harvard Family} +% The same effect is achieved by a different approach in the Harvard family +% of bibliographic styles. Here a substitute for |\bibitem| is used, as +% \begin{quote} +% |\harvarditem[Jones et al.]{Jones, Baker, and|\\ +% | Williams}{1990}{jon90}...| +% \end{quote} +% The accompanying interface package file is called \texttt{harvard.sty} +% and is written by Peter Williams and Thorsten Schnier. It +% defines |\harvarditem| as well as the citation commands |\cite|, for +% parenthentical, and |\citeasnoun|, for textual citations. The first +% citation uses the long author list, following ones the shorter list, if +% it has been given in the optional argument to |\harvarditem|. +% +% Bibliography styles belonging to the Harvard family are +% \begin{quote} +% \texttt{agsm}, \texttt{dcu}, \texttt{kluwer} +% \end{quote} +% +% This package has been updated for \LaTeXe, with many additions to +% add flexibility. The result is a powerful interface that should meet most +% citation needs. (It does not suppress repeated authors, though, +% as \thestyle{} does.) +% +% \subsection{The Astronomy Style} +% Apparently realizing the limitations of his \texttt{apalike} system, Oren +% Patashnik went on to develop a `true' \texttt{apa} bibliographic style, +% making use of the method already employed by an astronomy journal. This +% is actually very similar to the \texttt{newapa} label but with only the +% short list of authors: +% \begin{quote} +% |\bibitem[\protect\astroncite{Jones et al.}{1990}]{jon90}|\\ +% | ...| +% \end{quote} +% It requires the package file \texttt{astron.sty} +% or any other style that defines |\astroncite| appropriately. +% +% Bibliographic styles belonging to the astronomy group are +% \begin{quote} +% \texttt{apa}, \texttt{astron}, \texttt{bbs}, \texttt{cbe}, +% \texttt{humanbio}, \texttt{humannat}, \texttt{jtb} +% \end{quote} +% +% This is as good as the |\citeauthoryear| command, although not as +% flexible since the full list of authors is missing. +% +% \subsection{The \texttt{authordate} Style} +% Finally, I have also found some packages making use of a label command +% called |\citename| in the form +% \begin{quote} +% |\bibitem[\protect\citename{Jones et al., }1990]{jon90}|\\ +% | ...| +% \end{quote} +% +% This is not a good system since the author list and date are not cleanly +% separated as individual arguments, and since the punctuation is included +% in the label text. It is better to keep the punctuation fully removed, as +% part of the definitions in the \texttt{.sty} file, for complete flexibility. +% +% Bibliographic styles belonging to this group are +% \begin{quote} +% \texttt{authordate1}, \texttt{authordate2}, \texttt{authordate3}, +% \texttt{authordate4}, \texttt{aaai-named} +% \end{quote} +% with accompanying style file \texttt{authordate1-4.sty}. +% +% \section{The \thestyle{} System} +% The form of the |\bibitem| entry that I have used for all my +% bibliographic styles is only slightly more complicated than the minimal +% one, but allows a clean separation between authors and date: +% \begin{quote} +% |\bibitem[Jones et al.(1990)]{jon90}...|\\[1ex] +% or alternatively\\[1ex] +% |\bibitem[Jones et al.(1990)Jones, Baker, |\\ +% \hspace*{2em}|and Williams]{jon90}...| +% \end{quote} +% +% (One weakness of the \thestyle{} format is that it fails if the author +% list itself contains parentheses! This may be fixed up if the author list +% is grouped in curly braces.) +% +% I wanted to name the system something like `natural sciences bibliography', +% intending it to be a variant of \texttt{natsci.sty}. Since that name +% was already taken, I resorted to the rather cryptic, and definitely ugly, +% \thestyle. +% +% The \thestyle\texttt{.sty} package\footnote{Formerly called a \emph{style +% file} in the older \LaTeX~2.09 terminology.} +% supports not only my own |\bibitem| format, but +% also all the others described here, plus numerical citation modes. +% The additional questions of citation style (type of brackets, commas or +% semi-colons between citations) can be defined once and for all for each +% \texttt{.bst} file and need never be specified explicitly in the source text. +% The use of |\cite| is the same for all citation styles, meaning that the +% additional features that might be available in the `proper' \texttt{.sty} +% file will be missing. (This could be changed later.) The result is a +% single \LaTeX{} package to handle {\em all\/} the bibliographic +% styles in a uniform manner. +% +% As of version 5.1 (1994 June 22), the source file contains coding for a +% \LaTeXe{} package file (the new standard) as well as that for an older +% \LaTeX~2.09 style option file. The latter is extracted with the +% \texttt{docstrip} option \texttt{209}. +% +% \begin{quote}\slshape +% \textbf{New to version 6.0}: (1995 Sep 29) \\ +% In previous versions, each \texttt{.bst} file was either numerical or +% author--year only. Applying the wrong mode led to grotesque results, and +% the mode could not always be selected automatically. With version~6.0, +% all the author--year bibliographic style files can also be used for +% \emph{numerical} citations, by simply selecting the mode in one of the +% ways described in Sections~\ref{sec:bibpunct} and \ref{sec:opts}. It is +% not possible to employ author-year citations with pure numerical +% \texttt{.bst} files, and never will be. +% +% See Section~\ref{sec:6.0} for more information. +% \end{quote} +% +% \section{Using this Package}\label{sec:usage} +% +% In this paper, I distinguish between the citation \emph{mode} (author--year +% or numerical) and citation \emph{style} (the type of punctuation used for +% citations). The citation style is something that is independent of the +% bibliography style and is not programmed in the \texttt{.bst} files. +% +% \subsection{Basic Citation Commands} +% +% \DescribeMacro{\citet} +% \DescribeMacro{\citep} +% The \thestyle{} package has two basic citation commands, |\citet| and +% |\citep| for \emph{textual} and \emph{parenthetical} citations, respectively. +% There also exist the starred versions |\citet*| and |\citep*| that print +% the full author list, and not just the abbreviated one. +% All of these may take one or two optional arguments to add some text before +% and after the citation. +% \begin{quote} +% \begin{tabular}{l@{\quad$\Rightarrow$\quad}l} +% |\citet{jon90}| & Jones et al. (1990)\\ +% |\citet[chap.~2]{jon90}| & Jones et al. (1990, chap.~2)\\[0.5ex] +% |\citep{jon90}| & (Jones et al., 1990)\\ +% |\citep[chap.~2]{jon90}| & (Jones et al., 1990, chap.~2)\\ +% |\citep[see][]{jon90}| & (see Jones et al., 1990)\\ +% |\citep[see][chap.~2]{jon90}| & (see Jones et al., 1990, chap.~2)\\[0.5ex] +% |\citet*{jon90}| & Jones, Baker, and Williams (1990)\\ +% |\citep*{jon90}| & (Jones, Baker, and Williams, 1990) +% \end{tabular} +% \end{quote} +% The starred versions can only list the full authors if the \texttt{.bst} +% file supports this feature; otherwise, the abbreviated list is printed. +% +% In standard \LaTeX, the |\cite| command can only take a single optional +% text for a note after the citation; here, a single optional text is a +% post-note, while two are the pre- and post-note. To have only a pre-note, it +% is necessary to provide an empty post-note text, as shown above. +% +% Multiple citations may be made as usual, by including more than one +% citation key in the |\cite| command argument. \textsl{If adjacent citations +% have the same author designation but different years, then the author +% names are not reprinted.} +% \begin{quote} +% \begin{tabular}{l@{\quad$\Rightarrow$\quad}l} +% |\citet{jon90,jam91}| & Jones et al. (1990); James et al. (1991)\\ +% |\citep{jon90,jam91}| & (Jones et al., 1990; James et al. 1991)\\ +% |\citep{jon90,jon91}| & (Jones et al., 1990, 1991)\\ +% |\citep{jon90a,jon90b}| & (Jones et al., 1990a,b) +% \end{tabular} +% \end{quote} +% +% These examples are for author--year citation mode. In numerical mode, the +% results are different. +% \begin{quote} +% \begin{tabular}{l@{\quad$\Rightarrow$\quad}l} +% |\citet{jon90}| & Jones et al. [21]\\ +% |\citet[chap.~2]{jon90}| & Jones et al. [21, chap.~2]\\[0.5ex] +% |\citep{jon90}| & [21]\\ +% |\citep[chap.~2]{jon90}| & [21, chap.~2]\\ +% |\citep[see][]{jon90}| & [see 21, 1990]\\ +% |\citep[see][chap.~2]{jon90}| & [see 21, chap.~2]\\[0.5ex] +% |\citep{jon90a,jon90b}| & [21, 32] +% \end{tabular} +% \end{quote} +% The authors can only be listed if the \texttt{.bst} file supports +% author--year citations. The standard \texttt{.bst} files, such as +% \texttt{plain.bst} are numerical only and transfer no author--year +% information to \LaTeX. In this case, |\citet| prints ``\textbf{(author?)} +% [21].'' +% +% {\slshape Do not use multiple citations with the |\citet| command in +% numerical mode!} +% +% \DescribeMacro{\cite} +% In the original versions of \thestyle, the traditional |\cite| command was +% used for both textual and parenthetical citations. The presence of an empty +% optional text in square brackets signaled parenthetical. This syntax has been +% retained for compatibility, but is no longer encouraged. +% +% This means that |\cite| (without notes) is the same as |\citet| in +% author--year mode, whereas in numerical mode, it is the same as |\citep|. +% The starred version, as well as the one or two optional notes, may also be +% used. +% +% \subsection{Extended Citation Commands} +% +% \DescribeMacro{\citealt} +% As an alternative form of citation, |\citealt| is the same as |\citet| +% but \emph{without any parentheses}. Multiple references and the +% starred variant also exist. +% \begin{quote} +% \begin{tabular}{l@{\quad$\Rightarrow$\quad}l} +% |\citealt{jon90}| & Jones et al. 1990\\ +% |\citealt*{jon90}| & Jones, Baker, and Williams 1990\\ +% |\citealt{jon90,jam91}| & Jones et al. 1990; James et al. 1991 +% \end{tabular} +% \end{quote} +% +% \DescribeMacro{\citeauthor} +% \DescribeMacro{\citeyear} +% \DescribeMacro{\citefullauthor} +% In author--year schemes, it is sometimes desirable to be able to refer to +% the authors without the year, or vice versa. This is provided with three +% extra commands +% \begin{quote} +% \begin{tabular}{l@{\quad$\Rightarrow$\quad}l} +% |\citeauthor{jon90}| & Jones et al.\\ +% |\citefullauthor{jon90}| & Jones, Baker, and Williams\\ +% |\citeyear{jon90}| & 1990 +% \end{tabular} +% \end{quote} +% If the full author information is missing, then |\citefullauthor| is +% the same as |\citeauthor|, printing only the abbreviated list. +% This also applies to the starred versions of |\citet| and |\citep|. +% +% If the author or year information is missing (as is the case with the +% standard \LaTeX{} \texttt{.bst} files), these commands issue a warning. +% +% As of version~6.0, these commands may also be used with numerical +% citations, provided an author--year \texttt{.bst} file is being employed. +% +% The native \thestyle{} form of the |\bibitem| entry now +% also supports the full author list. +% +% \textsl{Multiple citations are \emph{not} allowed with these commands.} +% +% \subsection{Selecting Citation Punctuation}\label{sec:bibpunct} +% +% \DescribeMacro{\bibpunct} +% The above examples have been printed with the default citation style. +% It is possible to change this, as well as to select numerical or +% author--year mode, by means of the |\bibpunct| command, which takes +% one optional and 6 mandatory arguments. The mandatory ones are: +% \begin{enumerate} +% \item the opening bracket symbol, default = ( +% \item the closing bracket symbol, default = ) +% \item the punctuation between multiple citations, default = ; +% \item the letter `n' for numerical style, or `s' for numerical superscript +% style, any other letter for +% author--year, default = author--year; note, it is not necessary to +% specify which author--year interface is being used, for all will be +% recognized; +% \item the punctuation that comes between the author names and the year +% (parenthetical case only), default = , +% \item the punctuation that comes between years when common author lists +% are suppressed (default = ,); if both authors and years are common, +% the citation is printed as `1994a,b', but if a space is wanted between +% the extra letters, then include the space in the argument, as |{,~}|. +% \end{enumerate} +% +% The optional argument is the character preceding a post-note, default is a +% comma. +% +% The |\bibpunct| command must be issued in the preamble, that is, +% before |\begin{document}|. (\textbf{Note:} in versions 5.4 or earlier, this +% declaration had to be given after the preamble!) +% +% Example~1, |\bibpunct{[}{]}{,}{a}{}{;}| changes the output of +% \begin{quote} +% |\citep{jon90,jon91,jam92}| +% \end{quote} +% into [Jones et al. 1990; 1991, James et al. 1992]. +% +% Example~2, |\bibpunct[;]{(}{)}{,}{a}{}{;}| changes the output of +% \begin{quote} +% |\citep[and references therein]{jon90}| +% \end{quote} +% into (Jones et al. 1990; and references therein). +% +% \DescribeMacro{\bibstyle@xxx} +% Usually the citation style is determined by the journal +% for which one is writing, and is as much a part of the bibliography style +% as everything else. The \thestyle{} package allows +% punctuation definitions to be directly coupled to the +% |\bibliographystyle| command that must always be present when \btx{} is +% used. It is this command that selects the \texttt{.bst} file; by adding such +% a coupling to \thestyle{} for every \texttt{.bst} file that one might +% want to use, it is not necessary to add |\bibpunct| explicitly in the +% document itself, unless of course one wishes to override the preset +% values. +% +% Such a coupling is achieved by defining a command |\bibstyle@|{\em bst}, +% where {\em bst\/} stands for the name of the \texttt{.bst} file. For example, +% the American Geophysical Union (AGU) demands in its publications that +% citations be made with square brackets and separated by semi-colons. I +% have an \texttt{agu.bst} file to accomplish most of the formatting, but such +% punctuations are not included in it. Instead, \thestyle{} has the +% definition +% \begin{quote} +% |\newcommand{\bibstyle@agu}{\bibpunct{[}{]}{;}{a}{,}{,~}}| +% \end{quote} +% +% These style defining commands may contain more than just |\bibpunct|. +% Some numerical citation scheme require even more changes. For example, +% the journal \textsl{Nature} not only uses superscripted numbers for +% citations, it also prints the numbers in the list of references without +% the normal square brackets. To +% accommodate this, \thestyle{} contains the style definition +% \begin{quote}\begin{verbatim} +% \newcommand{\bibstyle@nature}{\bibpunct{}{}{,}{s}{}{}% +% \gdef\NAT@biblabelnum##1{##1.}} +% \end{verbatim} +% \end{quote} +% The redefined |\NAT@biblabelnum| command specifies how the reference numbers +% are to be formatted in the list of references itself. +% The redefinition must be made with |\gdef|, not |\def| or +% |\renewcommand|. +% +% The selected punctuation style and other redefinitions will not be in +% effect on the first \LaTeX{} run, for they are stored to the auxiliary +% file for the subsequent run. +% +% The user may add more such definitions of his own, to accommodate those +% journals and \texttt{.bst} files that he has. He may either add them to +% his local copy of \thestyle\texttt{.sty}, or better put them into a file +% named \thestyle\texttt{.cfg}. This file will be read in if it exists, +% adding any local configurations. Thus such configurations can survive +% future updates of the package. (This is for \LaTeXe{} only.) +% +% \medskip +% \noindent\textbf{Note:} +% with version~6.0, any explicit call to |\bibpunct| has priority over the +% predefined citation styles. +% +% \DescribeMacro{\citestyle} +% A preprogrammed citation style is normally invoked by the command +% |\bibliographystyle|, as described above. However, it may be that +% one wants to apply a certain citation style to another bibliography +% style. This may be done with |\citestyle|, given \emph{before} +% |\begin{document}|. For example, to use the +% \texttt{plain} bibliography style (for the list of references) with the +% \textsl{Nature} style of citations (superscripts), +% \begin{quote} +% |\documentclass{article}|\\ +% |\usepackage{|\thestyle|}|\\ +% |. . . . .|\\ +% |\citestyle{nature}|\\ +% |\begin{document}|\\ +% |\bibliographystyle{plain}|\\ +% |. . . . .| +% \end{quote} +% +% \noindent +% \textbf{Note:} for versions 5.5 and later, all changes to the citation +% style, including punctuation, must be made before |\begin{document}|, +% which freezes the citation style. +% +% \subsection{Priority of Style Commands}\label{sec:priority} +% The citation style (punctuation and mode) can be selected by means of the +% |\bibpunct|, |\citestyle|, and predefined |\bibstyle@|\textit{bst} +% commands. They can also be selected by \LaTeXe{} options +% (Section~\ref{sec:opts}). What happens if there are several conflicting +% selections? +% +% The lowest priority is assigned to the predefined |\bibstyle@|\textit{bst} +% commands, since they are implicit and not obvious to the user. The +% \LaTeXe{} options have the next priority. Finally, any selection by +% |\bibpunct| and/or |\citestyle| overrides those of the other methods. +% +% \subsection{Other Formatting Options} +% +% \DescribeMacro{\bibsection} +% The list of references normally appears as a |\section*| or |\chapter*|, +% depending on the main class. If one wants to redesign one's own heading, +% say as a numbered section with |\section|, then |\bibsection| may be +% redefined by the user accordingly. +% +% \DescribeMacro{\bibfont} +% The list of references is normally printed in the same font size and +% style as the main body. However, it is possible to define |\bibfont| +% to be font commands that are in effect within the \texttt{thebibliography} +% environment. +% +% \DescribeMacro{\bibhang} +% The list of references for author--year styles uses a hanging indentation +% format: the first line of each reference is flush left, the following lines +% are set with an indentation from the left margin. This indentation is 1~em +% by default but may be changed by redefining (with |\setlength|) the +% length parameter |\bibhang|. +% +% \DescribeMacro{\bibsep} +% The vertical spacing between references in the list, whether author--year +% or numerical, is controlled by the length |\bibsep|. If this is set to +% 0~pt, there is no extra line spacing between references. The default +% spacing depends on the font size selected in |\documentclass|, and is +% almost a full blank line. Change this by redefining |\bibsep| with +% |\setlength| command. +% +% \subsection{Automatic Indexing of Citations} +% +% (New to version 6.0; applies to \LaTeXe\ only)\\[1ex] +% \DescribeMacro{\citeindextrue} +% \DescribeMacro{\citeindexfalse} +% If one wishes to have the citations entered in the \texttt{.idx} indexing +% file, it is only necessary to issue |\citeindextrue| at any point in the +% document. All following |\cite| commands, of all variations, then insert +% the corresponding entry to that file. With |\citeindexfalse|, these +% entries will no longer be made. +% +% The |\bibitem| commands in the \texttt{thebibliography} environment will +% also make index entries. If this is not desired, then issue +% |\citeindexfalse| before |\bibliography| or |\begin{thebibliography}|. +% +% Of course, |\makeindex| must also be issued in the preamble to activate +% indexing, as usual. Otherwise, no indexing is done at all. +% +% Make sure that the document has been processed at least twice after the +% last \btx\ run before running the \texttt{makeindex} program. +% +% \DescribeMacro{\NAT@idxtxt} +% The form of the index entries is set by the internal |\NAT@idxtxt|, which +% can be redefined by hackers if wanted (in the \thestyle\texttt{.cfg} file +% please). By default, it prints the short author list plus date in the +% current parenthesis style. +% +% The \thestyle\ package can also be used with the \texttt{index} package of +% David~M. Jones. The order in which the packages are loaded is not +% important. +% +% \DescribeMacro{\citeindextype} +% In that package, multiple index lists may be made by means of a |\newindex| +% command. For example, it may be desirable to put all the citation indexing +% into a separate list. First that list must be initiated with, e.g., +% \begin{quote} +% |\newindex{cite}{ctx}{cnd}{List of Citations}| +% \end{quote} +% and then the automatic citation indexing associated with this list with the +% \thestyle\ command +% \begin{quote} +% |\renewcommand{\citeindextype}{cite}| +% \end{quote} +% See the documentation for \texttt{index.sty} for details. +% +% \subsection{Hyper\TeX\ Compatibility} +% As of version~6.4, \thestyle\ is compatible with the \texttt{hyperref} +% package of Sebastian Rahtz and Yannis Haralambous, for use with +% Hyper\TeX. The compatibility is of a mutual nature: both packages contain +% coding that interact with that of the other. Thus the version of +% \texttt{hyperref} must be more recent than 1996 Oct~8. +% ^^A Update the date when it is better known, after checking with Rahtz. +% +% \subsection{Multiple Bibliographies in One Document}\label{sec:chapbib} +% +% As of version 6.4, \thestyle\ is compatible with the \texttt{chapterbib} +% package of Donald Arseneau and Niel Kempson,\relax +% \footnote{I have used version 1.5 from 1995/10/09; cannot guarantee +% earlier versions.} +% which makes it possible to have several +% bibliographies in one document. The usual application is to have +% bibliographies in each chapter of a book, especially if they have been +% written by different authors. +% +% The \texttt{chapterbib} package works in a very natural way for the +% author; only the editor who puts all the chapters together into one book +% has to do some extra work. +% +% The package makes use of the |\include| command, and it is in fact every +% |\include|d file that has its own bibliography. For large books, it makes +% very good sense to take advantage of this feature in any case. +% +% To review the use of |\include|, recall that the main file +% \begin{verbatim} +% \documentclass{...} +% \includeonly{ch2} +% \begin{document} +% \include{ch1} +% \include{ch2} +% \include{ch3} +% \end{document} +% \end{verbatim} +% will process only the file \texttt{ch2.tex} as though the files +% \texttt{ch1.tex} and \texttt{ch3.tex} were also present. That is, all +% counters, especially the page and section numbers, as well as +% cross-referencing definitions, will function as if the whole document +% were processed. The trick is that each |\include|d file has it own +% \texttt{.aux} file containing these definitions, and they are all read +% in every time, even if the corresponding \texttt{.tex} file is not. The +% \texttt{.aux} files also contain the citation information for \btx, +% something that the \texttt{chapterbib} package exploits. +% +% If |\usepackage{chapterbib}| has been given, the keys in each |\cite| +% and |\bibitem| command are associated with the current |\include|d file +% and are distinguished from the identical key in a different file. Each of +% these files must contain its own |\bibliography| and |\bibliographystyle| +% commands. One processes \btx\ on each file separately before processing +% it under \LaTeX\ (at least twice). +% +% \subsubsection{Special Considerations for \thestyle\ and +% \texttt{chapterbib}} +% +% The order in which the \texttt{chapterbib} and \thestyle\ packages are loaded +% is unimportant. +% +% The \texttt{chapterbib} package provides an option \texttt{sectionbib} +% that puts the bibliography in a |\section*| instead of |\chapter*|, +% something that makes sense if there is a bibliography in each chapter. +% This option will not work when \thestyle\ is also loaded; instead, add +% the option to \thestyle. (The \texttt{sectionbib} option can always be +% given, but it only has meaning for the \texttt{book} and \texttt{report} +% classes, or for classes derived from them.) +% +% Every |\include|d file (with citations) must contain its own +% |\bibliography| command where the bibliography is to appear. The database +% files listed as arguments to this command can be different in each file, +% of course. However, what is not so obvious, is that each file must also +% contain a |\bibliographystyle| command, \emph{preferably with the same +% style argument}. If different bibliography styles are specified for +% different files, then the preprogrammed citation style (punctuation and +% citation mode) will be that of the first bibliography style given. The +% preprogrammed citation styles can only be changed in the preamble (see +% Section~\ref{sec:priority}), something that guarantees a uniform style +% for the entire document.\relax +% \footnote{It would be relatively easy to allow changes in style anywhere +% in the document, but this strikes me as bad policy. However, it is +% provided for with the \texttt{docstrip} option \texttt{nopreonly}.} +% +% \subsection{Sorting and Compressing Numerical Citations} +% +% Another package by Donald Arseneau, \texttt{cite.sty}, reimplements the +% entire (numerical) citation system such that one can control the +% punctuation and citation format, all of which is done by \thestyle\ as +% well. However, it also can sort and compress numerical citations, +% something that is required by some journals. +% +% What this means is that when multiple citations are given with a single +% |\cite| command, the normal order of the numbers is in the sequence +% given. This is usually a wild list of numbers, such as [4,2,8,3]. With +% the \texttt{cite} package, this list becomes [2--4,8]. +% +% It is impossible to make the \texttt{cite} and \thestyle\ packages +% compatible, since both reimplement |\cite| from scratch. Instead, I have +% taken the necessary coding from \texttt{cite.sty} and modified it for +% \thestyle{}. This coding becomes activated +% by including the option \texttt{sort} in the |\usepackage| command. +% It only affects numerical +% citations, and has no influence on the author--year ones. +% +% \section{Numerical Citations with Author--Year Styles}\label{sec:6.0} +% +% (New to version 6.0)\\[1ex] +% In earlier versions, each \texttt{.bst} file could be used either for +% numerical or author--year citation mode, without any possibility of +% switching. Obviously numerical \texttt{.bst} files can never be used for +% author--year citations (the information is missing in the auxiliary file) +% but there is no reason why the converse should not work. +% +% I have been frequently asked if I could implement this feature, and I at +% first replied that it would be quite easy. That was a mistake. The +% numerical information was missing in the auxiliary files, so the +% |\cite| commands could never access it. +% +% \subsection{New Coding} +% I have now recoded \thestyle{} so that the separation of author and year +% information comes before the information is written to the auxiliary +% file, and furthermore, a sequential number is also written. This permits +% numerical citations with \emph{any} of the author--year bibliographic style +% files. +% +% The recoding has made fewer internal changes than I expected. Any users +% who have local redefinitions of my internals should be aware that of the +% citation commands, only |\NAT@citexnum| has been altered. Otherwise the +% changes are in the parsing commands |\NAT@parse| and |\NAT@parse@date|. +% Of the external commands, |\bibitem| is completely redefined, and +% |\citeauthor|, |\citeyear|, and |\citefullauthor| are different. +% +% Version~5.5 actually made far more internal changes: all internal +% commands were renamed to conform to recommended \LaTeX{} coding +% practices. +% +% \subsection{Selecting Numerical Mode} +% By default, \thestyle{} is in author--year mode. This can be changed by +% \begin{enumerate} +% \item selecting a numerical bibliography style with predefined +% citation style, defined either in the package or in the local +% configuration file; +% +% \item giving options \texttt{numbers} or \texttt{super} to the +% |\usepackage| command; +% +% \item issuing |\bibpunct| with the 4th mandatory argument set to \texttt{n} +% or \texttt{s}; +% +% \item issuing |\citestyle| with the name of a predefined numerical +% bibliography style. +% \end{enumerate} +% The methods are listed in order of increasing priority. +% +% The \thestyle{} package will automatically switch to numerical mode if +% any one of the |\bibitem| entries fails to conform to the possible +% author--year formats. There is no way to override this, since such an +% entry would cause trouble in the author--year mode. +% +% There are certain special `numerical' styles, like that of the standard +% \texttt{alpha.bst}, which include a non-numerical label in place of the +% number, in the form +% \begin{quote} |\bibitem[ABC95]{able95}| \end{quote} +% As far as \thestyle\ is concerned, this label does not conform to the +% author--year possibilities and is therefore considered to be numerical. +% The citation mode switches to numerical, and |\cite{able95}| prints +% [ABC95]. +% +% \subsection{New Bibliography Styles} +% I provided three new \texttt{.bst} files to replace the standard \LaTeX\ +% numerical ones: +% \begin{quote}\ttfamily +% plainnat.bst \qquad abbrvnat.bst \qquad unsrtnat.bst +% \end{quote} +% These produce reference lists in the same style as the corresponding +% standard \texttt{.bst} file, but can only be used with \thestyle{}. The +% advantage is that they can be used in both numerical and author--year +% mode. +% +% In fact, \texttt{unsrtnat.bst} is rather silly for author--year +% citations: the references are listed in the order they were cited, which +% makes it difficult to find them. It is only included in case an author +% wishes to switch from \texttt{plainnat} (author--year) to the unsorted +% numerical mode, retaining the |\citeauthor| and |\citeyear| commands in +% his paper. +% +% It is not possible to produce a modified version of \texttt{alpha.bst} +% since it would conflict with the |\bibitem| format of \thestyle. +% +% The sample bibliography style file \texttt{natbib.bst} will no longer be +% distributed. It merely represented a demonstration of the |\bibitem| +% syntax for \thestyle, a function that is now taken over by +% \texttt{plainnat.bst} and friends. +% +% \section{Local Configuration} +% For \LaTeXe, it is possible to add a local configuration file +% \thestyle\texttt{.cfg}, which is read in, if it exists, at +% the end of the package. It may thus contain coding to supecede that in +% the package, although its main purpose is to allow the user to add his +% own |\bibstyle@|\textit{bst} definitions to couple citation punctuation +% with local bibliography styles. +% +% \section{Options with \LaTeXe}\label{sec:opts} +% One of the new features of \LaTeXe{} is \emph{options} for the packages, +% in the same way as main styles (now called \emph{classes}) can take +% options. This package is now installed with +% \begin{quote} +% |\documentclass[..]{...}|\\ +% |\usepackage[|\emph{options}|]{|\thestyle|}| +% \end{quote} +% The options available provide another means of specifying the +% punctuation for citations: +% \begin{description} +% \item[\ttfamily round] (default) for round parentheses; +% \item[\ttfamily square] for square brackets; +% \item[\ttfamily curly] for curly braces; +% \item[\ttfamily angle] for angle brackets; +% \item[\ttfamily colon] (default) to separate multiple citations with +% colons; +% \item[\ttfamily comma] to use commas as separaters; +% \item[\ttfamily authoryear] (default) for author--year citations; +% \item[\ttfamily numbers] for numerical citations; +% \item[\ttfamily super] for superscripted numerical citations, as in +% \textsl{Nature}; +% \item[\ttfamily sort] puts multiple numerical citations in order and +% compresses them if possible (as 3--6, 15); +% \item[\ttfamily sectionbib] redefines |\thebibliography| to issue +% |\section*| instead of |\chapter*|; valid only for classes with a +% |\chapter| command; to be used with the \texttt{chapterbib} package. +% \end{description} +% +% If any of these options are selected, the predefined citation styles in +% the commands |\bibstyle@|\textit{bst} will be no longer be effective. +% If either |\bibpunct| or |\citestyle| is given in the preamble, the above +% punctuation options will no longer hold. +% +% \section{As Module to Journal-Specific Styles} +% Although \thestyle{} is meant to be an all-purpose bibliographic style +% \emph{package}, it may also be incorporated as a module to other +% packages for specific journals. In this case, many of the general features may +% be left off. This is allowed for with \texttt{docstrip} options that not +% only leave off certain codelines, but also include extra ones. So far, +% options exist for +% \begin{description} +% \item[\ttfamily subpack] produces a basic version with author--year only, +% fixed citation punctuation, no |\bibpunct| nor |\citestyle| nor +% predefined styles; +% \item[\ttfamily subpack,egs] for journals of the \textsl{European Geophysical +% Society}, in particular \textsl{Nonlinear Processes in Geophysics}; +% \item[\ttfamily subpack,agu] for \textsl{American Geophysical Union} journals. +% \end{description} +% The \texttt{subpack} option must always be used with \texttt{package}. +% +% Previous options \texttt{jgr} and \texttt{grl} have become obsolete due +% to revisions in these journals; they have been replaced by the more +% general \texttt{agu} option. +% +% \section{Summary} +% +% The following summary is included as comments at the beginning of the +% \thestyle\texttt{.sty} file, for quick reference. Certain lines are +% dependent on the \texttt{docstrip} options. +% +% \iffalse +%<*package&!subpack> +% \fi +% \begin{verbatim} + % This package reimplements the LaTeX \cite command to be used for various + % citation styles, both author-year and numerical. It accepts BibTeX + % output intended for many other packages, and therefore acts as a + % general, all-purpose citation-style interface. + % + % With standard numerical .bst files, only numerical citations are + % possible. With an author-year .bst file, both numerical and + % author-year citations are possible. + % + % If author-year citations are selected, \bibitem must have one of the + % following forms: + % \bibitem[Jones et al.(1990)]{key}... + % \bibitem[Jones et al.(1990)Jones, Baker, and Williams]{key}... +%<*apalike|all> + % \bibitem[Jones et al., 1990]{key}... +%</apalike|all> +%<*newapa|chicago|all> + % \bibitem[\protect\citeauthoryear{Jones, Baker, and Williams}{Jones + % et al.}{1990}]{key}... + % \bibitem[\protect\citeauthoryear{Jones et al.}{1990}]{key}... +%</newapa|chicago|all> +%<*astron|all> + % \bibitem[\protect\astroncite{Jones et al.}{1990}]{key}... +%</astron|all> +%<*authordate|all> + % \bibitem[\protect\citename{Jones et al., }1990]{key}... +%</authordate|all> +%<*harvard|all> + % \harvarditem[Jones et al.]{Jones, Baker, and Williams}{1990}{key}... +%</harvard|all> + % + % This is either to be made up manually, or to be generated by an + % appropriate .bst file with BibTeX. + % Author-year mode || Numerical mode + % Then, \citet{key} ==>> Jones et al. (1990) || Jones et al. [21] + % \citep{key} ==>> (Jones et al., 1990) || [21] + % Multiple citations as normal: + % \citep{key1,key2} ==>> (Jones et al., 1990; Smith, 1989) || [21,24] + % or (Jones et al., 1990, 1991) || [21,24] + % or (Jones et al., 1990a,b) || [21,24] + % \cite{key} is the equivalent of \citet{key} in author-year mode + % and of \citep{key} in numerical mode + % Full author lists may be forced with \citet* or \citep*, e.g. + % \citep*{key} ==>> (Jones, Baker, and Williams, 1990) + % Optional notes as: + % \citep[chap. 2]{key} ==>> (Jones et al., 1990, chap. 2) + % \citep[e.g.,][]{key} ==>> (e.g., Jones et al., 1990) + % \citep[see][pg. 34]{key}==>> (see Jones et al., 1990, pg. 34) + % (Note: in standard LaTeX, only one note is allowed, after the ref. + % Here, one note is like the standard, two make pre- and post-notes.) + % \citealt{key} ==>> Jones et al. 1990 + % \citealt*{key} ==>> Jones, Baker, and Williams 1990 + % \citealt{key1,key2} ==>> Jones et al. 1990; Smith 1989 + % Additional citation possibilities (both author-year and numerical modes) + % \citeauthor{key} ==>> Jones et al. + % \citeyear{key} ==>> 1990 + % \citefullauthor{key} ==>> Jones, Baker, and Williams + % (Multiple keys NOT allowed!) + % Note: full author lists depends on whether the bib style supports them; + % if not, the abbreviated list is printed even when full requested. + % + % Defining the citation style of a given bib style: +%<!nopreonly> % Use \bibpunct (in the preamble only) with 6 mandatory arguments: +%<nopreonly> % Use \bibpunct (anywhere in the text) with 6 mandatory arguments: + % 1. opening bracket for citation + % 2. closing bracket + % 3. citation separator (for multiple citations in one \cite) + % 4. the letter n for numerical styles, s for superscripts + % else anything for author-year + % 5. punctuation between authors and date + % 6. punctuation between years when common authors missing + % One optional argument is the character coming before post-notes. It + % appears in square braces before all other arguments. May be left off. + % Example (and default) \bibpunct[,]{(}{)}{;}{a}{,}{,} + % + % To make this automatic for a given bib style, named newbib, say, make + % a local configuration file, natbib.cfg, with the definition + % \newcommand{\bibstyle@newbib}{\bibpunct...} + % Then the \bibliographystyle{newbib} will cause \bibstyle@newbib to + % be called on THE NEXT LATEX RUN (via the aux file). + % +%<!nopreonly> % Such preprogrammed definitions may be invoked in the text (preamble only) +%<nopreonly> % Such preprogrammed definitions may be invoked anywhere in the text + % by calling \citestyle{newbib}. This is only useful if the style specified + % differs from that in \bibliographystyle. + % +%<*!209> + % With \citeindextrue and \citeindexfalse, one can control whether the + % \cite commands make an automatic entry of the citation in the .idx + % indexing file. For this, \makeindex must also be given in the preamble. + % + % LaTeX2e Options: (for selecting punctuation) + % round - round parentheses are used (default) + % square - square brackets are used [option] + % curly - curly braces are used {option} + % angle - angle brackets are used <option> + % colon - multiple citations separated by colon (default) + % comma - separated by comma + % authoryear - selects author-year citations (default) + % numbers- selects numerical citations + % super - numerical citations as superscripts + % sort - sorts and compresses numerical citations + % sectionbib - puts bibliography in a \section* instead of \chapter* + % Punctuation so selected dominates over any predefined ones. + % LaTeX2e options are called as, e.g. + % \usepackage[square,comma]{natbib} +%</!209> +% \end{verbatim} +% \iffalse + % LaTeX the source file natbib.dtx to obtain more details. + %----------------------------------------------------------- +%</package&!subpack> +% \fi +% +% \section{Options with \texttt{docstrip}} +% The source \texttt{.dtx} file is meant to be processed with +% \texttt{docstrip}, for which a number of options are available: +% \begin{description} +% \item[\ttfamily all] includes all of the other interfaces; +% +% \item[\ttfamily apalike] allows interpretation of minimal \texttt{apalike} +% form of |\bibitem|; +% +% \item[\ttfamily newapa] allows |\citeauthoryear| to be in the optional +% argument of |\bibitem| along with the punctuation commands of +% \texttt{newapa.sty}; +% +% \item[\ttfamily chicago] is the same as \texttt{newapa}; +% +% \item[\ttfamily harvard] includes interpretation of |\harvarditem|; +% +% \item[\ttfamily astron] allows |\astroncite| to appear in the optional +% argument of |\bibitem|; +% +% \item[\ttfamily authordate] adds the syntax of the |\citename| command. +% +% \end{description} +% +% This package file is intended to act as a module for other class files +% written for specific journals, in which case the flexible +% |\bibstyle@|{\em bst\/} commands are not wanted. Punctuation and +% other style features are to be rigidly fixed. These journal options are +% \begin{description} +% \item[\ttfamily agu] for journals of the \textsl{American Geophysical +% Union}; +% +% \item[\ttfamily egs] for journals of the \textsl{European Geophysical +% Society}, in particular \textsl{Nonlinear Processes in Geophysics}. +% +% \end{description} +% +% The remaining options are: +% \begin{description} +% \item[\ttfamily package] to produce a \texttt{.sty} package file with most +% comments removed; +% +% \item[\ttfamily 209] (together with \texttt{package}) for a style option +% file that will run under the older \LaTeX~2.09; +% +% \item[\ttfamily subpack] (together with \texttt{package}) for coding that +% is to be included inside a larger package; even more comments are +% removed, as well as \LaTeXe{} option handling and identification; +% produces a basic \thestyle\ package for author--year only, fixed +% citation style (punctuation); +% +% \item[\ttfamily nopreonly] allows |\citestyle| and |\bibpunct| to be +% called anywhere in the text; this is considered possibly useful +% with the \texttt{chapterbib} package where different chapters might +% have different bibliography and citation styles; is only provided +% in case I change my mind about this feature, but for now I +% refuse to implement it; +% +% \item[\ttfamily driver] to produce a driver \texttt{.drv} file that will +% print out the documentation under \LaTeXe. The documentation cannot +% be printed under \LaTeX~2.09. +% +% \end{description} +% The source file \texttt{\filename.dtx} is itself a driver file and can +% be processed directly by \LaTeXe. +% +% \StopEventually{\PrintIndex\PrintChanges} +% +% \section{The Coding} +% This section presents and explains the actual coding of the macros. +% It is nested between |%<*package>| and |%</package>|, which +% are indicators to \texttt{docstrip} that this coding belongs to the package +% file. +% +% The \texttt{docstrip} option |<subpack>| should only be called if the +% coding is to be included as part of another package, in which case the +% announcement text and \LaTeXe{} options are suppressed. +% +% An alternative version of this coding is provided for running as a +% style file under \LaTeX~2.09. Code lines belonging to this are +% indicated with guard |<209>|; those for LaTeXe{} only with |<!209>|. +% +% With \LaTeX\ release from \texttt{1995/12/01}, |\cite| is made robust, +% something that I have adopted as well. +% +% Another change in the above release is that +% |\G@refundefinedtrue|\footnote{In fact, it was only proposed to be +% removed, but because several packages, including this one, were +% adversely affected, the name was retained for the new coding.} +% and the |\if@openbib| flag have been removed. +% New, more effective, and compact, coding has replaced them. Rather than +% relying on the kernel coding, I make \thestyle\ more +% self-reliant. +% +% \subsection{Test for Specific Journals} +% This package should not be loaded with the specific journal packages that +% already include it; it is superfluous and can lead to contradictions. +% \begin{macrocode} +%<*package> +%<*!209&!subpack> +\@ifclassloaded{aguplus}{\PackageError{natbib} + {The aguplus class already includes natbib coding,\MessageBreak + so you should not add it explicitly} + {Type <Return> for now, but then later remove\MessageBreak + the command \protect\usepackage{natbib} from the document} + \endinput}{} +\@ifclassloaded{nlinproc}{\PackageError{natbib} + {The nlinproc class already includes natbib coding,\MessageBreak + so you should not add it explicitly} + {Type <Return> for now, but then later remove\MessageBreak + the command \protect\usepackage{natbib} from the document} + \endinput}{} +\@ifclassloaded{egs}{\PackageError{natbib} + {The egs class already includes natbib coding,\MessageBreak + so you should not add it explicitly} + {Type <Return> for now, but then later remove\MessageBreak + the command \protect\usepackage{natbib} from the document} + \endinput}{} +%</!209&!subpack> +% \end{macrocode} +% +% \subsection{Selecting Citation Punctuation and Other Modifications} +% \begin{macro}{\bibstyle@xxx} +% \changes{5.3}{1994 Sep 13}{Add \texttt{agsm} and \texttt{dcu} punctuation +% styles from \texttt{harvard} series} +% We begin by defining a number of punctuation styles for specific +% author--year \texttt{.bst} files that I use. +% They are placed here, near the beginning, so that another +% user can easily find them to add his own. Some comments remain in the +% stripped version too. +% \begin{macrocode} +%<*!subpack> + % Define citation punctuation for some author-year styles + % One may add and delete at this point +%<!209> % Or put additions into local configuration file natbib.cfg +\newcommand\bibstyle@chicago{\bibpunct{(}{)}{;}{a}{,}{,}} +\newcommand\bibstyle@named{\bibpunct{[}{]}{;}{a}{,}{,}} +\newcommand\bibstyle@agu{\bibpunct{[}{]}{;}{a}{,}{,~}}%Amer. Geophys. Union +\newcommand\bibstyle@egs{\bibpunct{(}{)}{;}{a}{,}{,}}%Eur. Geophys. Soc. +%<*all|harvard> +\newcommand\bibstyle@agsm{\bibpunct{(}{)}{,}{a}{}{,}\gdef\harvardand{\&}} +\newcommand\bibstyle@kluwer{\bibpunct{(}{)}{,}{a}{}{,}\gdef\harvardand{\&}} +\newcommand\bibstyle@dcu{\bibpunct{(}{)}{;}{a}{;}{,}\gdef\harvardand{and}} +%</all|harvard> +% \end{macrocode} +% +% Here give the explicit punctuation for the specific journals; their +% coding need not contain the punctuation macros |\bibpunct| and +% |\bibstyle@xxx| since the punctuation is fixed for them. +% \begin{macrocode} +\newcommand\bibstyle@aa{\bibpunct{(}{)}{;}{a}{}{,}} %Astronomy & Astrophysics +\newcommand\bibstyle@pass{\bibpunct{(}{)}{;}{a}{,}{,}}%Planet. & Space Sci +\newcommand\bibstyle@anngeo{\bibpunct{(}{)}{;}{a}{,}{,}}%Annales Geophysicae +\newcommand\bibstyle@nlinproc{\bibpunct{(}{)}{;}{a}{,}{,}}%Nonlin.Proc.Geophys. +%</!subpack> +%<agu>\newcommand\NAT@open{[} \newcommand\NAT@close{]} +%<agu>\newcommand\NAT@sep{;} \newcommand\NAT@cmt{,} +%<agu>\newcommand\NAT@aysep{,} \newcommand\NAT@yrsep{,~} +%<egs>\newcommand\NAT@open{(} \newcommand\NAT@close{)} +%<egs>\newcommand\NAT@sep{;} \newcommand\NAT@cmt{,} +%<egs>\newcommand\NAT@aysep{,} \newcommand\NAT@yrsep{,} +% \end{macrocode} +% +% \changes{6.5}{1997 Jan 30}{Fix \texttt{esa} style for new note system} +% Next, the same thing is done for some numerical styles. A major +% difference here is that the |\@biblabel| and |\@cite| commands must also +% be redefined in many cases. These redefinitions must be made with the +% |\gdef| (global definition) command. +% \begin{macrocode} +%<*!subpack> + % Define citation punctuation for some numerical styles +\newcommand\bibstyle@cospar{\bibpunct{/}{/}{,}{n}{}{}% + \gdef\NAT@biblabelnum##1{##1.}} +\newcommand\bibstyle@esa{\bibpunct{(}{)}{,}{n}{}{}% + \gdef\NAT@biblabelnum##1{##1.\hspace{1em}}% + \gdef\NAT@citenum##1##2##3{\NAT@open \if\relax##2\relax\else + ##2\ \fi Ref.~##1\if\relax##3\relax\else\NAT@cmt\ ##3\fi\NAT@close}} +\newcommand\bibstyle@nature{\bibpunct{}{}{,}{s}{}{}% + \gdef\NAT@biblabelnum##1{##1.}} +% \end{macrocode} +% +% Finally, the standard \LaTeX{} (numerical) citation styles are included +% along with their \thestyle\ modifications (author--year). +% \begin{macrocode} + % The standard LaTeX styles +\newcommand\bibstyle@plain{\bibpunct{[}{]}{,}{n}{}{}} +\let\bibstyle@alpha=\bibstyle@plain +\let\bibstyle@abbrv=\bibstyle@plain +\let\bibstyle@unsrt=\bibstyle@plain + % The author-year modifications of the standard styles +\newcommand\bibstyle@plainnat{\bibpunct{[}{]}{,}{a}{,}{,}} +\let\bibstyle@abbrvnat=\bibstyle@plainnat +\let\bibstyle@unsrtnat=\bibstyle@plainnat +% \end{macrocode} +% \end{macro} +% +% \subsection{\LaTeXe{} Options} +% \begin{macro}{\ifNAT@numbers} +% \changes{5.5}{1995 Mar 21}{Add flag for switching between cite styles} +% \begin{macro}{\ifNAT@super} +% \changes{5.5}{1995 Mar 21}{Add flag for switching between cite styles} +% Two flags are used to keep track of the citation style. The flag +% |\ifNAT@numbers| is \meta{false} by default (author--year) and switches +% to \meta{true} for numerical citations. The flag |\ifNAT@super| indicates +% if the numerical citation is to be done with superscripts. +% \begin{macrocode} +\newif\ifNAT@numbers \NAT@numbersfalse +\newif\ifNAT@super \NAT@superfalse +%</!subpack> +% \end{macrocode} +% \end{macro}\end{macro} +% +% \begin{macro}{\DeclareOption} +% \changes{5.0}{1994 May 18}{Add \LaTeXe{} options.} +% \changes{5.3}{1994 Sep 13}{Add options \texttt{angle} and \texttt{curly}} +% \changes{6.0}{1995 Sep 6}{Add option \texttt{bibstyle}} +% \changes{6.0}{1995 Sep 6}{Execute \texttt{nobibstyle} with all options} +% \changes{6.1}{1995 Nov 27}{Add option \texttt{openbib}} +% \changes{6.4}{1996 Sep 1}{Add option \texttt{sectionbib}} +% \changes{6.4}{1996 Sep 13}{Add option \texttt{sort}} +% For \LaTeXe, we can define some options to be used with the |\usepackage| +% command that loads the \thestyle{} package. These are an additional means +% of specifying the citation punctuation and scheme. +% +% The standard option \texttt{openbib} is also defined here so that its +% behaviour is entirely under my control. Relying on the standard classes +% can lead to trouble. +% \begin{macrocode} +%<*!subpack&!209> +\DeclareOption{numbers}{\NAT@numberstrue + \ExecuteOptions{square,comma,nobibstyle}} +\DeclareOption{super}{\NAT@supertrue\NAT@numberstrue + \ExecuteOptions{nobibstyle}} +\DeclareOption{authoryear}{\NAT@numbersfalse + \ExecuteOptions{round,colon,bibstyle}} +\DeclareOption{round}{% + \renewcommand\NAT@open{(} \renewcommand\NAT@close{)} + \ExecuteOptions{nobibstyle}} +\DeclareOption{square}{% + \renewcommand\NAT@open{[} \renewcommand\NAT@close{]} + \ExecuteOptions{nobibstyle}} +\DeclareOption{angle}{% + \renewcommand\NAT@open{$<$} \renewcommand\NAT@close{$>$} + \ExecuteOptions{nobibstyle}} +\DeclareOption{curly}{% + \renewcommand\NAT@open{\{} \renewcommand\NAT@close{\}} + \ExecuteOptions{nobibstyle}} +\DeclareOption{comma}{\renewcommand\NAT@sep{,} + \ExecuteOptions{nobibstyle}} +\DeclareOption{colon}{\renewcommand\NAT@sep{;} + \ExecuteOptions{nobibstyle}} +\DeclareOption{nobibstyle}{\let\bibstyle=\@gobble} +\DeclareOption{bibstyle}{\let\bibstyle=\@citestyle} +\newif\ifNAT@openbib \NAT@openbibfalse +\DeclareOption{openbib}{\NAT@openbibtrue} +\DeclareOption{sectionbib}{\def\NAT@sectionbib{on}} +\def\NAT@sort{0} +\DeclareOption{sort}{\def\NAT@sort{1}} +\@ifpackageloaded{cite}{\PackageWarningNoLine{natbib} + {The `cite' package should not be used\MessageBreak + with natbib. Use option `sort' instead}\ExecuteOptions{sort}}{} +%</!subpack&!209> +% \end{macrocode} +% Before version~6.0, the punctuation options had the lowest priority, +% being overridden by any |\bibstyle@|\textit{bst} command. It was necessary +% to add the option \texttt{nobibstyle} to make them effective. Now this +% option is automatically executed whenever a punctuation option is chosen. +% The reason is that \texttt{nobibstyle} is either superfluous (no +% predefined citation style is present) or always necessary to make the +% other options meaningful. +% +% It seems to be better practice to make any explicit choices to have +% higher priority over implicit ones. +% +% The option \texttt{bibstyle} reactivates the predefined commands, just in +% case this is needed, as it is for the option \texttt{authoryear}. This +% leaves the predefined styles functioning, since it does not really +% determine the citation style, but rather establishes a default which may +% be overwritten by a prestored one. For this reason, this option must be +% defined very early so that any explicit punctuation options overwrite the +% defaults. (Options are executed in the order defined.) +% +% \end{macro} +% +% \subsection{Selecting Citation Punctuation and Other Modifications} +% \begin{macro}{\bibstyle} +% \changes{5.4}{1994 Nov 24}{Move \cs{ProcessOptions} to after definition +% of \cs{bibstyle}} +% The pre-defined punctuation styles are associated with particular +% \texttt{.bst} files. This is implemented by means of the standard +% |\bibliographystyle| command that specifies the name of the \texttt{.bst} +% file that is to be used by \btx. Some \LaTeX{} manuals erroneously state +% that this command must be issued prior to any |\cite| commands. If that +% were the case, the task of invoking the style definitions would be much +% easier, for they certainly must be issued before the first |\cite|. +% However, I have always called |\bibliographystyle| together with +% |\bibliography|, well after all |\cite| commands. +% +% In fact, all that |\bibliographystyle|\marg{bst} does is to write +% |\bibstyle|\marg{bst} to the auxiliary file. This file, and all its +% contents, will be read in at the beginning of the next \LaTeX{} run; to +% be precise, it is read in by |\begin{document}|. The command |\bibstyle| is +% then executed at that point on the next run. However, it is +% defined to do nothing more than to swallow up its argument! In other +% words, the combination |\bibliographystyle| and |\bibstyle| do absolutely +% nothing to the \LaTeX{} runs. In fact, |\bibstyle| is a command for +% \btx{} alone. +% +% I have taken advantage of this to redefine |\bibstyle| to execute the +% \texttt{bst}-specific definitions. This definition is made here before +% |\ExecuteOptions| so that options may make use of it; the option +% \texttt{nobibstyle} turns it off, for example. +% \begin{macrocode} +%<*!subpack> +\renewcommand\bibstyle[1]{\@ifundefined{bibstyle@#1}{\relax} + {\csname bibstyle@#1\endcsname}} +% \end{macrocode} +% This is executed only when the auxiliary file is read in, and that is +% when |\begin{document}| is issued. Thus this is well before any |\cite| +% commands. It is for this reason that any definitions in the +% |\bibstyle@xxx| commands must be global. +% +% A minor problem arises in that the auxiliary file is read in a second +% time, at the end of the run, to check whether any labels have changed. +% Sometimes, re-executing the |\bibstyle@xxx| command at this point +% produces error messages. To avoid this, |\bibstyle| is reset to its +% normal, do-nothing, definition after |\begin{document}|. +% +% \LaTeXe{} provides a better way of adding commands to |\document|, +% which is then exploited here. Paradoxically, the problem with re-reading +% the auxiliary file does not seem to arise for this version. +% +% (|\NAT@set@cites| must also be executed at the start of the document; for +% \LaTeXe, this is added later when the macro is defined.) +% \begin{macrocode} +%<*209> +\let\ori@document=\document +\renewcommand\document{\ori@document\global\let\bibstyle=\@gobble + \NAT@set@cites} +%</209> +%<!209>\AtBeginDocument{\global\let\bibstyle=\@gobble} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\citestyle} +% \changes{5.4}{1995 Feb 03}{Add macro} +% \changes{5.5}{1995 Mar 24}{Make preamble only} +% To allow one to invoke preprogrammed punctuation styles that are +% different from the name of the bibliography style specified by +% |\bibliographystyle|, call |\citestyle| in the preamble. This then +% deactivates |\bibstyle| so that any preprogrammed punctuations become +% ineffective. +% +% This, and all other punctuation (citation style) declarations, may only +% be used in the preamble, as of version 5.5. (Previously they could only +% be used after the preamble, but the preamble is more logical.) +% \begin{macrocode} +\let\@citestyle\bibstyle +\newcommand\citestyle[1]{\@citestyle{#1}\let\bibstyle\@gobble} +%<!209&!nopreonly>\@onlypreamble{\citestyle}\@onlypreamble{\@citestyle} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\bibpunct} +% \changes{5.4}{1994 Nov 24}{Add superscript style of citations} +% \changes{5.5}{1995 Mar 21}{Use flags to select citation style} +% \changes{5.5}{1995 Mar 24}{Make preamble only} +% \changes{6.0}{1995 Sep 6}{Sets \cs{bibstyle} to \cs{@gobble}} +% \changes{6.0}{1995 Sep 6}{Declare \cs{NAT@numbersfalse} before testing 4th +% argument} +% \changes{6.0}{1995 Sep 19}{Add optional argument for \cs{NAT@cmt}} +% Now |\bibpunct| is defined. It sets various punctuation commands equal to +% its arguments. It also switches to numerical style if that is specified +% by the fourth argument. This is done by setting the citation style +% flag |NAT@numbers| accordingly. The internal cite macros are later +% set to the style-dependent definitions by calling |\NAT@set@cites|. +% +% The fourth argument can also be \texttt{s} for superscript, which +% sets both the numerical and the |\NAT@super| flags. +% +% An optional argument has been added to determine the punctuation that +% precedes a trailing note. This makes the counting of mandatory arguments +% somewhat confused, since the fourth argument is now |#5|. +% +% \begin{macrocode} +%<!209>\newcommand\bibpunct[7][,]% +%<209>\newcommand\bibpunct{\@ifnextchar[{\@bibpunct}{\@bibpunct[,]}} +%<209>\def\@bibpunct[#1]#2#3#4#5#6#7% + {\gdef\NAT@open{#2}\gdef\NAT@close{#3}\gdef + \NAT@sep{#4}\global\NAT@numbersfalse\ifx #5n\global\NAT@numberstrue + \else + \ifx #5s\global\NAT@numberstrue\global\NAT@supertrue + \fi\fi + \gdef\NAT@aysep{#6}\gdef\NAT@yrsep{#7}% + \gdef\NAT@cmt{#1}% + \global\let\bibstyle\@gobble +%<nopreonly> \NAT@set@cites + } +%<*!nopreonly> +%<!209>\@onlypreamble{\bibpunct} +%<209>\def\do{\noexpand\do\noexpand} +%<209>\edef\@preamblecmds{\@preamblecmds \do\bibpunct \do\citestyle} +%</!nopreonly> +%</!subpack> +% \end{macrocode} +% The command turns off |\bibstyle| so that the predefined +% |\bibstyle@|\textit{bst} commands no longer work. Thus |\bibpunct| has +% priority over the predefined styles. +% \end{macro} +% +% \subsection{Setting the Defaults} +% For \LaTeXe, the defaults (punctuation and scheme type) are set with the +% |\ExecuteOptions| command. For \LaTeX~2.09, the default scheme is +% author--year, and punctuation can only be set with |\bibpunct|. +% +% \begin{macro}{\NAT@open} +% \changes{5.5}{1995 May 14}{Renamed from \cs{@citebegin}} +% \begin{macro}{\NAT@close} +% \changes{5.5}{1995 May 14}{Renamed from \cs{@citeend}} +% \begin{macro}{\NAT@sep} +% \changes{5.5}{1995 May 14}{Renamed from \cs{@citesep}} +% \begin{macro}{\NAT@aysep} +% \changes{5.5}{1995 May 14}{Renamed from \cs{@auyrsep}} +% \begin{macro}{\NAT@yrsep} +% \changes{5.5}{1995 May 14}{Renamed from \cs{@yrsep}} +% \begin{macro}{\NAT@cmt} +% \changes{6.0}{1995 Sep 19}{Add macro} +% The five punctuation characters for citations are the start and stop +% brackets, the character between multiple citations, the character between +% the authors and year (parenthetical only), and the character between +% adjacent years when the common author list is omitted. +% A sixth one has been added: the character preceding post-notes. +% Define their default values. +% \begin{macrocode} +%<!agu&!egs>\newcommand\NAT@open{(} \newcommand\NAT@close{)} +%<!agu&!egs>\newcommand\NAT@sep{;} +% \end{macrocode} +% \end{macro}\end{macro}\end{macro}\end{macro}\end{macro}\end{macro} +% \changes{6.0}{1995 Sep 19}{Remove \cs{ExecuteOptions} since default +% style determined by definitions} +% The option \texttt{authoryear} was originally provided to serve as the +% default; hence its definition includes \texttt{bibstyle}. However, this +% is not necessary since all the appropriate parameters are set to these +% values anyway. (One could consider removing \texttt{bibstyle}.) +% \begin{macrocode} +%<*!subpack&!209> +%\ExecuteOptions{authoryear} +\ProcessOptions +%</!subpack&!209> +%<!agu&!egs>\newcommand\NAT@aysep{,} \newcommand\NAT@yrsep{,} +%<!agu&!egs>\newcommand\NAT@cmt{,} +% \end{macrocode} +% +% \subsection{Internal Citing Macros} +% A number of internal macros (|\@citex|, |\@cite|, |\@biblabel|, and +% |\@bibsetup|) need to have different definitions for author--year and +% numerical schemes. They are defined here for the two different styles, +% with different names, and which ones become active depend on the citation +% style flags |\ifNAT@numbers| and |\ifNAT@super|. +% +% The coding for the journals always defines the internal macros directly +% as the author--year version, since they can never do any switching. +% +% \begin{macro}{\@cite} +% \changes{5.5}{1995 Mar 21}{Is \cs{let} equal to the numerical or +% author--year definition} +% \begin{macro}{\NAT@cite} +% \changes{4.2}{1993 Dec 2}{Reversed optional text no longer needs to include +% a trailing blank} +% \changes{5.0}{1994 May 18}{Add optional notes after as well as before +% citation.} +% \changes{5.5}{1995 Mar 13}{Add command space in place of space} +% \changes{5.5}{1995 Mar 13}{Use \cs{if}\cs{relax}\texttt{\#2}\cs{relax} +% in place of \cs{if}\texttt{\#2}\cs{@empty}} +% \changes{5.5}{1995 Mar 21}{Renamed from \cs{@cite}} +% \begin{macro}{\NAT@citenum} +% \changes{5.0}{1994 May 18}{Add optional notes after as well as before +% citation.} +% \changes{5.5}{1995 Mar 13}{Add command space in place of space} +% \changes{5.5}{1995 Mar 13}{Use \cs{if}\cs{relax}\texttt{\#2}\cs{relax} +% in place of \cs{if}\texttt{\#2}\cs{@empty}} +% \changes{5.5}{1995 Mar 21}{Renamed from \cs{@citenum}} +% \begin{macro}{\NAT@citesuper} +% \changes{5.4}{1994 Nov 24}{Add macro for superscripts} +% \changes{5.5}{1995 Mar 21}{Renamed from \cs{@citesuper}} +% \changes{5.5}{1995 Mar 27}{Prints post-note only if present} +% \changes{6.2}{1995 Feb 2}{Get superscript font size right; use +% \cs{textsuperscript}} +% \changes{6.5}{1997 Jan 30}{Numericals always print notes if present, do not +% test for any flag first} +% Define the internal |\@cite| commands that prints the assembled string +% of citation label texts, plus possible optional notes, before and after. +% The numerical version is almost the same, except that the brackets +% |\NAT@open| and |\NAT@close| are always present and the optional notes are +% included if they are present. For author-year, the notes are included (if +% present) here only for parenthetical citations (|\ifNAT@swa| if \meta{true}) +% and for textual citations, they are printed by the |\NAT@citex|. +% +% The superscript citation prints only the following, not the preceding, +% note, and then only if it is present. +% \begin{macrocode} +%<subpack>\renewcommand\@cite% +%<!subpack>\newcommand\NAT@cite% + [3]{\ifNAT@swa\NAT@open\if\relax#2\relax\else#2\ \fi + #1\if\relax#3\relax\else\NAT@cmt\ #3\fi\NAT@close\else#1\fi} +%<*!subpack> +\newcommand\NAT@citenum[3]{\NAT@open\if\relax#2\relax\else + #2\ \fi #1\if\relax#3\relax\else\NAT@cmt\ #3\fi\NAT@close} +\newcommand\NAT@citesuper[3]{\unskip\hspace{1pt}\textsuperscript{#1}% + \if\relax#3\relax\else\ (#3)\fi} +%<!209>\providecommand +%<209>\newcommand + \textsuperscript[1]{\mbox{$^{\mbox{\scriptsize#1}}$}} +%</!subpack> +% \end{macrocode} +% \end{macro}\end{macro}\end{macro}\end{macro} +% +% \begin{macro}{\@citex} +% \changes{5.5}{1995 Mar 21}{Is \cs{let} equal to the numerical or +% author--year definition} +% \changes{6.1}{1995 Nov 22}{Use \cs{NAT@citeundefined}} +% \begin{macro}{\NAT@citexnum} +% \changes{5.4}{1994 Nov 24}{Make like \LaTeXe{} definition instead of 2.09} +% \changes{5.5}{1995 Mar 21}{Renamed from \cs{@citexnum}} +% \changes{6.0}{1995 Sep 4}{Prints \cs{NAT@num} instead of \cs{b@citeb}} +% \changes{6.4}{1996 Sep 12}{Add \cs{NAT@space} for variable spacing between +% numericals and superscripts} +% \changes{6.4}{1996 Oct 2}{Add dummy macros for \texttt{hyperref.sty}} +% The original definition of |\@citex| is now used to define |\NAT@citexnum|, +% the version for numerical citations. What it does is to write a +% |\citation| command to the auxiliary file (for \btx), and then parses the +% second argument, the list of citation keys. These keys have to be decoded +% into the actual label text contained in |\b@|\emph{key} (a number or +% author--year), and put together as the argument of |\@cite|. +% +% The temporary command |\@citeb| takes on the value of each of the keys in +% turn; |\@citea| is the separator between multiple citations, initially +% set to nothing, becoming |\NAT@sep| plus line-break suppression +% afterwards. The |\@firstofone| macro removes any leading blanks in +% |\@citeb|, making |\cite{key1, key2}| possible. If |\b@|\emph{key} is +% not defined (as on the first run, for example), a warning is printed, and +% a question mark inserted. Finally, the decoded label text is placed into +% an |\hbox| to prevent it from being split. +% +% As of version 6.0, the numerical label text is to be found in |\NAT@num|, +% whereas previously it was the entire label, |\b@|\emph{key}. +% +% Note that here, and in later coding, internal names beginning with +% |\@cite..| are employed; these names are used in the original \LaTeX{} +% coding for the same functions. Therefore, if there are other packages +% that have name conflicts with \thestyle, they will also have conflicts with +% standard \LaTeX\ too. +% +% For compatibility with the \texttt{chapterbib} package of Donald Arseneau, +% add |\@extra@b@citeb| to the cite key; this contains the number of the +% included file in order to distinguish the same citation in separate files +% which then belong to different bibliography listings. +% \begin{macrocode} +%<209>\let\@firstofone\@iden +%<!209>\providecommand\@firstofone[1]{#1} +%<*!subpack> +\newcommand\NAT@citexnum{} +\def\NAT@citexnum[#1][#2]#3{\let\@citea\@empty + \@cite{\@for\@citeb:=#3\do + {\@citea\def\@citea{\NAT@sep\penalty\@m\NAT@space}% + \edef\@citeb{\expandafter\@firstofone\@citeb}% + \if@filesw\immediate\write\@auxout{\string\citation{\@citeb}}\fi + \@ifundefined{b@\@citeb\@extra@b@citeb}{% +%<209> {\reset@font\bf ?}\@warning +%<!209>{\reset@font\bfseries?} +%<!209> \NAT@citeundefined\PackageWarning{natbib}% + {Citation `\@citeb' on page \thepage \space undefined}}% + {\NAT@parse{\@citeb}\hbox{\hyper@natlinkstart{\@citeb}% + \NAT@num\hyper@natlinkend}}}}{#1}{#2}} +%</!subpack> +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\NAT@citex} +% \changes{5.2}{1994 Aug 25}{Make like \LaTeXe{} definition instead of 2.09} +% \changes{5.4}{1994 Nov 24}{Change space to command space for text cites} +% \changes{5.4}{1995 Feb 6}{Add test for adjacent citations having equal +% authors and years} +% \changes{5.5}{1995 Mar 21}{Renamed from \cs{@citex}} +% \changes{6.0}{1995 Sep 21}{Move \cs{ifNAT@full} test from +% \cs{NAT@parse} to here} +% \changes{6.4}{1996 Oct 2}{Add dummy macros for \texttt{hyperref.sty}} +% The author--year version of |\@citex| is now defined. +% It starts off much the same as the numerical version. However, it wants +% the authors and year for each decoded label text to be separated into +% |\NAT@nm| and |\NAT@date|. This is done by the routine |\NAT@parse|. +% The names of the authors in the previous key are stored in +% |\NAT@last@nm|, +% and if that is the same as the current names, it is not printed again. +% The output citation text is not put into an |\hbox| since line division +% may occur within the author--year citation. The output is formatted +% differently for parenthetical (|\NAT@swa| \meta{true}) and textual +% (|\NAT@swa| \meta{false}) cases. +% +% |\NAT@nm| will contain either |\NAT@name| or |\NAT@all@names| depending +% on the state of |\ifNAT@full|. +% \begin{macrocode} +%<subpack>\def\@citex% +%<!subpack>\newcommand\NAT@citex{} +%<!subpack>\def\NAT@citex% + [#1][#2]#3{\let\@citea\@empty + \@cite{\let\NAT@nm\@empty\let\NAT@year\@empty + \@for\@citeb:=#3\do + {\edef\@citeb{\expandafter\@firstofone\@citeb}% + \if@filesw\immediate\write\@auxout{\string\citation{\@citeb}}\fi + \@ifundefined{b@\@citeb\@extra@b@citeb}{\@citea% +%<209> {\reset@font\bf ?}\@warning +%<!209> {\reset@font\bfseries ?}\NAT@citeundefined +%<!209> \PackageWarning{natbib}% + {Citation `\@citeb' on page \thepage \space undefined}}% + {\hyper@natlinkstart{\@citeb}% + \let\NAT@last@nm=\NAT@nm\let\NAT@last@yr=\NAT@year + \NAT@parse{\@citeb}\ifNAT@full\let\NAT@nm\NAT@all@names\else + \let\NAT@nm\NAT@name\fi +% \end{macrocode} +% Begin parenthetical citation. Check if author names the same as in the +% previous citation, and if so, also check if the years are the same. +% \changes{5.4}{1995 Feb 8}{Add \cs{unskip} to avoid double spacing +% between years} +% \changes{6.5}{1997 Jan 30}{Add optional notes for textual citations} +% If so, citations are printed `1994a,b'; if a space is wanted between +% the letters, as `1994a,~b', then give |\NAT@yrsep| as |{,~}|. For this +% reason, the |\unskip| is needed when the space between years is printed +% to avoid two spaces. +% \begin{macrocode} + \ifNAT@swa + \ifx\NAT@last@nm\NAT@nm\NAT@yrsep + \ifx\NAT@last@yr\NAT@year \NAT@exlab\else\unskip\ \NAT@date\fi + \else\@citea{\NAT@nm}\NAT@aysep + \ \NAT@date \fi \def\@citea{\NAT@sep\ }% +% \end{macrocode} +% Begin textual citation. Do same checks for repeated names and years. +% Optional notes are added here, not in |\NAT@cite|, which means for +% multiple citations, each one will receive the notes in the year part. +% (Pre-notes are questionable for this, but include them anyway.) +% \begin{macrocode} + \else + \ifx\NAT@last@nm\NAT@nm\NAT@yrsep\ifx\NAT@last@yr\NAT@year + \NAT@exlab\else \unskip\ \NAT@date\fi + \else\@citea{\NAT@nm}\ \NAT@open\if\relax#1\relax\else#1\ \fi + \NAT@date\fi + \def\@citea{\NAT@close\NAT@sep\ }% + \fi \hyper@natlinkend + }}\ifNAT@swa\else\if\relax#2\relax\else\NAT@cmt\ #2\fi + \NAT@close\fi}{#1}{#2}} +% \end{macrocode} +% +% \end{macro}\end{macro} +% +% \begin{macro}{\@biblabel} +% \changes{5.5}{1995 Mar 21}{Is \cs{let} equal to the numerical or +% author--year definition} +% \begin{macro}{\NAT@biblabel} +% \changes{5.5}{1995 Mar 21}{Renamed from \cs{@biblabel}} +% \begin{macro}{\NAT@biblabelnum} +% \changes{5.5}{1995 Mar 21}{Renamed from \cs{@biblabelnum}} +% Similarly for the |\@biblabel| command, that is used to format the +% citation label in the list of references, define the author--year +% and the numerical versions. For the former, no labels are +% printed in the list of references. +% \begin{macrocode} +%<subpack>\renewcommand\@biblabel[1]{\hfill} +%<*!subpack> +\newcommand\NAT@biblabel[1]{\hfill} +\newcommand\NAT@biblabelnum[1]{[#1]} +%</!subpack> +% \end{macrocode} +% \end{macro}\end{macro}\end{macro} +% +% \begin{macro}{\@bibsetup} +% \changes{5.5}{1995 Mar 21}{Is \cs{let} equal to the numerical or +% author--year definition} +% \begin{macro}{\NAT@bibsetup} +% \changes{5.5}{1995 Mar 13}{Add \cs{bibhang} for variable hanging +% indentation} +% \changes{5.5}{1995 Mar 21}{Renamed from \cs{@bibsetup}} +% \begin{macro}{\NAT@bibsetnum} +% \changes{5.1}{1994 Jun 22}{Add \cmd{\if@openbib} as in \LaTeXe} +% \changes{5.5}{1995 Mar 21}{Renamed from \cs{@bibsetnum}} +% \changes{6.1}{1995 Nov 22}{Use \cs{ifNAT@openbib}} +% \changes{6.2}{1996 Mar 05}{Add \cs{bibsep} for linespacing between +% references} +% \changes{6.5}{1997 Jan 10}{Set \cs{bibsep} to 0 for EGS} +% The macro |\@bibsetup| is called by |\thebibliography| and contains any +% coding for formatting the list of references that may be different for +% numerical and author--year schemes. For numerical citations, the +% |\labelwidth| must be set to the size of the longest label (the argument +% of |\thebibliography|), and the |\leftmargin| adjusted accordingly. For +% author--year, there are no labels, so |\labelwidth| is zero, all lines +% after the first are indented by 1~em. +% +% Since |\thebibliography| is not included in the \textsl{AGU} package, +% this macro is left off here too. +% \begin{macrocode} +%<*!agu> +%<*!egs> +%<*!subpack> +\newcommand\NAT@bibsetnum[1]{\settowidth\labelwidth{\@biblabel{#1}}% + \setlength{\leftmargin}{\labelwidth}\addtolength{\leftmargin}{\labelsep}% + \setlength{\itemsep}{\bibsep}\setlength{\parsep}{\z@}% +%<*!209> + \ifNAT@openbib + \addtolength{\leftmargin}{\bibindent}% + \setlength{\itemindent}{-\bibindent}% + \setlength{\listparindent}{\itemindent}% + \setlength{\parsep}{0pt}% + \fi +%</!209> +} +%</!subpack> +%</!egs> +\newlength{\bibhang} +\setlength{\bibhang}{1em} +% \end{macrocode} +% +% The length |\bibsep| is to be the spacing between listed references. +% This is normally the regular line spacing between |\item|s in a +% \texttt{list} environment, which is |\itemsep| + |\parsep|. These are set +% by |\@listi|. Therefore, in order to set |\bibsep| to the default value, +% call |\@listi| locally and globally set it. +% +% \begin{macrocode} +\newlength{\bibsep} +%<!egs>{\@listi \global\bibsep\itemsep \global\advance\bibsep by\parsep} +%<egs>\setlength{\bibsep}{\z@} + +%<subpack>\newcommand\@bibsetup% +%<!subpack>\newcommand\NAT@bibsetup% + [1]{\setlength{\leftmargin}{\bibhang}\setlength{\itemindent}{-\leftmargin}% + \setlength{\itemsep}{\bibsep}\setlength{\parsep}{\z@}} +%</!agu> +% \end{macrocode} +% \end{macro}\end{macro}\end{macro} +% +% \begin{macro}{\NAT@set@cites} +% \changes{5.5}{1995 Mar 21}{New macro to set the internal macros to +% numerical or author--year} +% \changes{6.3}{1996 Jun 17}{Add \cs{natexlab}} +% \changes{6.4}{1996 Sep 12}{Remove \cs{global} from definitions and \cs{let}} +% \changes{6.4}{1996 Sep 12}{Define \cs{NAT@space} differently for +% numericals and superscripts} +% The four internal macros that have different definitions depending on the +% citation style have been defined with different names; now set the macros +% to be executed to that set that is actually wanted. This is determined by +% the flags |\ifNAT@numbers| and |\ifNAT@super|. The setting command +% |\NAT@set@cites| is executed by |\begin{document}|, after which point, +% the citation style should be frozen. +% +% The command |\natexlab| is used in the \texttt{.bst} files to enclose the +% extra labels (the letters added to the dates); these are to be suppressed +% for numerical citations. +% \begin{macrocode} +%<*!subpack> +\newcommand\NAT@set@cites{\ifNAT@numbers + \ifNAT@super \let\@cite\NAT@citesuper + \let\NAT@space\relax\else + \let\@cite\NAT@citenum \def\NAT@space{ }\fi + \let\@citex\NAT@citexnum + \let\@biblabel\NAT@biblabelnum + \let\@bibsetup\NAT@bibsetnum + \def\natexlab##1{}% + \else + \let\@cite\NAT@cite + \let\@citex\NAT@citex + \let\@biblabel\NAT@biblabel + \let\@bibsetup\NAT@bibsetup + \def\natexlab##1{##1}% + \fi} +%<!209>\AtBeginDocument{\NAT@set@cites} +%</!subpack> +% \end{macrocode} +% \end{macro} +% +% \changes{6.5}{1997 Jan 30}{Add \texttt{showkeys} coding for \cs{@citex}} +% Since |\citep|, |\citet|, and |\citealt| are all ultimately defined in +% terms of the |\@citex| command, the best way to get the \texttt{showkeys} +% package to handle these is to let it accommodate only |\@citex|. David +% Carlisle has allowed for \thestyle, but only for |\cite| with variable number +% of arguments, |\citeauthor|, |\citefullauthor|, and |\citeyear|. Add the +% necessary coding at the beginning, after we know if \texttt{showkeys} +% has been loaded or not, and |\@citex| has its final definition. +% \begin{macrocode} +%<*!209> +\AtBeginDocument{\@ifpackageloaded{showkeys}{% +\let\SK@citex\@citex + \def\@citex[#1][#2]#3{\SK@\SK@@ref{#3}\SK@citex[#1][#2]{#3}} +}{}} +%</!209> +% \end{macrocode} +% +% \subsection{The Citations} +% +% \begin{macro}{\citet} +% \changes{6.2}{1996 Jan 11}{Add macro for textual cite in numerical mode} +% \changes{6.5}{1997 Jan 30}{Make this standard textual citation, with notes} +% Textual citations are made with the |\citet| command, which has a starred +% form for full authors, and may have one or two optional arguments for notes. +% +% This command is equivalent to the older syntex |\cite|\marg{key} without +% optional arguments, at least in author--year mode. In numerical mode, +% it prints the authors and then the numerical reference, whereas |\cite| +% will only print the number. This simplifies the switching between the two +% modes with minimal changes in text. One wants to replace ``as shown by Jones +% et~al.\ (1990)'' with ``as shown by Jones et~al.\ [21]''; with |\cite|, +% one would get ``as shown by [21]''. +% +% This is such a practical idea, that I have decided to make it the standard +% means of textual citing. It now even allows optional notes in textual cites, +% something that I have been asked to provide, and which is impossible under +% the old syntex with |\cite|. +% +% Note that the flag |\ifNAT@swa| determines if the citation is textual or +% parenthetical, and |\ifNAT@full| whether abbreviated or full author names +% are to be printed. +% \begin{macrocode} +\newif\ifNAT@full\NAT@fullfalse +\newif\ifNAT@swa +%<209>\renewcommand\citet +%<!209>\DeclareRobustCommand\citet + {\NAT@swafalse + \@ifstar{\NAT@fulltrue\NAT@citet}{\NAT@fullfalse\NAT@citet}} +\newcommand\NAT@citet{\@ifnextchar[{\NAT@@citet}{\NAT@@citet[]}} +\newcommand\NAT@@citet{} +\def\NAT@@citet[#1]{\@ifnextchar[{\NAT@@@citet[#1]}{\NAT@@@citet[][#1]}} +\newcommand\NAT@@@citet{} +\def\NAT@@@citet[#1][#2]#3{% +%<!subpack> \ifNAT@numbers\ifNAT@full\citefullauthor{#3}\else +%<!subpack> \citeauthor{#3}\fi\ \fi + \@citex[#1][#2]{#3}} +% \end{macrocode} +% This command can only handle single keys (in numerical mode). +% \end{macro} +% +% \begin{macro}{\citep} +% \changes{5.5}{1995 Mar 27}{Add macro as shorthand for \cs{cite[]}} +% \changes{6.5}{1997 Jan 30}{Make this standard parenthetical citation, +% with notes} +% Parenthetical citations are made with the |\citep| command, which has a +% starred +% form for full authors, and may have one or two optional arguments for notes. +% +% This command was originally added by special request to be a simplification +% for |\cite[]|\marg{key}, and I added it grudgingly. After I reprogrammed +% \thestyle\ to handle author--year and numerical citations with the same +% \texttt{.bst} file, I needed to add the |\citet| command, and this one +% became an obvious companion for parenthetical citations. I have now altered +% its coding to be the standard, being fully equivalent in functionality +% to the older syntax |\cite|\oarg{pre}\oarg{post}\marg{key}. +% \begin{macrocode} +%<209>\renewcommand\citep +%<!209>\DeclareRobustCommand\citep + {\NAT@swatrue + \@ifstar{\NAT@fulltrue\NAT@citep}{\NAT@fullfalse\NAT@citep}} +\newcommand\NAT@citep{\@ifnextchar[{\NAT@@citep}{\NAT@@citep[]}} +\newcommand\NAT@@citep{} +\def\NAT@@citep[#1]{\@ifnextchar [{\@citex[#1]}{\@citex[][#1]}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\cite} +% \changes{5.0}{1994 May 18}{Add a second optional argument.} +% \changes{5.3}{1994 Sep 19}{Add starred version to print full author list.} +% \changes{5.4}{1994 Nov 24}{Replace \cmd{\if@tempswa} with \cmd{\ifNAT@swa}.} +% \changes{6.5}{1997 Jan 30}{Declare obsolete, retained for compatibility} +% The |\cite| command was originally used to produce both textual and +% parenthetical citations; with an option argument, even an empty one, +% the citation was parenthical. I now recommend the use of |\citet| and +% |\citep| instead, retaining |\cite| only for compatibility. +% +% It is equivalent to |\citep| in numerical mode, so it can in fact be +% used as standard \LaTeX\ syntax with numerical citations. +% \begin{macrocode} +%<209>\renewcommand\cite +%<!209>\DeclareRobustCommand\cite + {\@ifstar{\NAT@fulltrue\NAT@cites}{\NAT@fullfalse\NAT@cites}} +\newcommand\NAT@cites{\@ifnextchar [{\NAT@swatrue\NAT@@citep}{\NAT@swafalse + \NAT@@citep[]}} +% \end{macro} +% +% \begin{macro}{\citealt} +% \changes{5.5}{1995 Mar 16}{Add macro} +% \changes{6.5}{1997 Jan 30}{Uses \cs{citet} instead of \cs{cite}} +% An alternative form of citation is one in which the parentheses are not +% printed. Since the effect of this command is exactly the same as the +% regular |\citet| but with |\NAT@open| and |\NAT@close| set to blank, +% define it just in that way. The starred version for full authors can be +% retained. Notes are not possible, and would be unnecessary without braces. +% +% This form has been added at the request of Alexander Holt, who wishes to +% be able to print all three flavours: parenthetical, textual with +% parentheses, and textual without. The |\citealt| command must be able to +% handle multiple references and use the same punctuation scheme as +% |\citet|. +% +% By defining |\citealt| in terms of |\citet|, not only do I save +% considerable programming effort, but David Carlisle's \texttt{showkeys} +% package will work with this command too. +% \begin{macrocode} +%<*!subpack> +%<209>\renewcommand\citealt +%<!209>\DeclareRobustCommand\citealt + {\@ifstar{\NAT@alts}{\NAT@alt}} +\newcommand\NAT@alt[1]{{\ifNAT@numbers\else + \renewcommand\NAT@open{}\renewcommand\NAT@close{}\fi\cite{#1}}} +\newcommand\NAT@alts[1]{{\ifNAT@numbers\else + \renewcommand\NAT@open{}\renewcommand\NAT@close{}\fi\cite*{#1}}} +%</!subpack> +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\citeauthor} +% \changes{5.0}{1994 May 18}{Add means to cite authors only.} +% \changes{5.2}{1994 Aug 25}{Enclose \cs{@citenm} in braces.} +% \changes{5.2}{1994 Aug 25}{Add auxiliary file entry.} +% \changes{6.0}{1995 Sep 4}{Check for empty author} +% \changes{6.4}{1996 Oct 2}{Add dummy macros for \texttt{hyperref.sty}} +% \begin{macro}{\citeyear} +% \changes{5.0}{1994 May 18}{Add means to cite year only.} +% \changes{5.2}{1994 Aug 25}{Add auxiliary file entry.} +% \changes{6.0}{1995 Sep 4}{Check for empty year} +% \changes{6.4}{1996 Sep 12}{Extra letter also printed with year number} +% \changes{6.4}{1996 Oct 2}{Add dummy macros for \texttt{hyperref.sty}} +% In an author--year scheme, it is sometimes necessary to refer to the +% authors of a work without the year. It might even be necessary to refer +% to the year alone, but I can hardly imagine that. Both possibilities are +% allowed for here. +% \begin{macrocode} +\newcommand\citeauthor[1]{\if@filesw\immediate\write + \@auxout{\string\citation{#1}}\fi + \@ifundefined{b@#1\@extra@b@citeb}{% +%<209> {\reset@font\bf ?}\@warning +%<!209> {\reset@font\bfseries ?}\NAT@citeundefined +%<!209> \PackageWarning{natbib}% + {Citation `#1' on page \thepage \space undefined}}% + {\NAT@parse{#1}\ifx\NAT@noname\NAT@name +%<209> {\reset@font\bf(author?)}\@warning +%<!209> {\reset@font\bfseries(author?)}\PackageWarning{natbib} + {Author undefined for citation `#1' +%<209> ^^J +%<!209> \MessageBreak + on page \thepage}\else + {\hyper@natlinkstart{#1}\NAT@name\hyper@natlinkend}\fi}% +} +\newcommand\citeyear[1]{\if@filesw\immediate\write + \@auxout{\string\citation{#1}}\fi + \@ifundefined{b@#1\@extra@b@citeb}{% +%<209> {\reset@font\bf ?}\@warning +%<!209> {\reset@font\bfseries ?}\NAT@citeundefined +%<!209> \PackageWarning{natbib}% + {Citation `#1' on page \thepage \space undefined}}% + {\NAT@parse{#1}\if\relax\NAT@date\relax +%<209> {\reset@font\bf(year?)}\@warning +%<!209> {\reset@font\bfseries(year?)}\PackageWarning{natbib} + {Year undefined for citation `#1' +%<209> ^^J +%<!209> \MessageBreak + on page \thepage}\else + {\hyper@natlinkstart{#1}\NAT@date\hyper@natlinkend}\fi}% +} +% \end{macrocode} +% \end{macro}\end{macro} +% +% \begin{macro}{\citefullauthor} +% \changes{5.3}{1994 Sep 13}{Add macro for those bib styles with full author +% list available} +% \changes{6.0}{1995 Sep 4}{Check for empty author} +% \changes{6.4}{1996 Oct 2}{Add dummy macros for \texttt{hyperref.sty}} +% Some of the author--year bibliography styles supported here (\texttt{harvard} +% and \texttt{newapa}) allow a citation with the full author list, because +% they have the necessary information in the |\bibitem| entry. With +% version~5.3, I change the native form of this entry to allow +% full authors too. +% +% Since I now have a starred form of |\cite| for the full author list, it +% might be reasonable to use a starred |\citeauthor| instead of +% |\citefullauthor|. However, that will conflict with the provisions for +% \thestyle{} to be found in Carlisle's \texttt{showkeys} package. That's life. +% \begin{macrocode} +\newcommand\citefullauthor[1]{\if@filesw\immediate\write + \@auxout{\string\citation{#1}}\fi + \@ifundefined{b@#1\@extra@b@citeb}{% +%<209> {\reset@font\bf ?}\@warning +%<!209> {\reset@font\bfseries ?}\NAT@citeundefined +%<!209> \PackageWarning{natbib}% + {Citation `#1' on page \thepage \space undefined}}% + {\NAT@parse{#1}\ifx\NAT@noname\NAT@all@names +%<209> {\reset@font\bf(author?)}\@warning +%<!209> {\reset@font\bfseries(author?)}\PackageWarning{natbib} + {Author undefined for citation `#1' +%<209> ^^J +%<!209> \MessageBreak + on page \thepage}\else + {\hyper@natlinkstart{#1}\NAT@all@names\hyper@natlinkend}\fi}% +} +% \end{macrocode} +% \end{macro} +% +% \subsection{Parsing the Author--Year Entries} +% \begin{macro}{\NAT@parse} +% \changes{5.0}{1994 May 18}{Add parsing command, with additional +% font and sub-accent commands relaxed} +% \changes{5.1}{1994 Jun 22}{For \LaTeXe{} of \texttt{1994/06/01}, +% can protect font and sub-accents much better} +% \changes{5.2}{1994 Aug 24}{2.09 version to run in compatibility mode} +% \changes{5.3}{1994 Sep 13}{Add full author list} +% \changes{5.3}{1994 Sep 19}{Support starred version of \cs{cite} for full +% author list} +% \changes{5.3}{1994 Sep 26}{Use \cs{@unexpandable@protect} in place of +% \cs{noexpand}} +% \changes{5.4}{1995 Feb 6}{Call \cs{@parse@date} to split date into year and +% extra label} +% \changes{5.5}{1995 May 18}{Rename from \cs{@cite@parse}} +% \changes{6.0}{1995 Sep 4}{Remove \cs{relax} from expanded \cs{@tempa} +% definition; no longer needed under new system} +% \changes{6.0}{1995 Sep 21}{Prevent expansion of forced space (tilde)} +% The |\bibcite| commands in the auxiliary file associate the numerical and +% author--year information with the |\bibitem| key, which is the argument to +% |\NAT@parse|. As of version~6.0, the information is stored in +% |\b@|\emph{key} for each citation, as four separate items. +% \begin{quote}\begin{tabular}{lll} +% 1. & |\NAT@num| & sequence number or non-author--year label \\ +% 2. & |\NAT@date| & year, with possible extra label \\ +% 3. & |\NAT@name| & short author list \\ +% 4. & |\NAT@all@names| & long author list (optional) +% \end{tabular}\end{quote} +% In order to define each of the above commands as the appropriate item, it +% is first necessary to expand |\b@|\emph{key} into a temporary command +% |\NAT@temp|, which is then used as the argument of |\NAT@split|, which +% makes the individual assignments. +% +% \begin{macrocode} +\newcommand\NAT@parse[1]{{% +%<*209> + \@ifundefined{documentclass} + {\let\prm=\relax\let\psf=\relax\let\ptt=\relax\let\pbf=\relax + \let\psl=\relax\let\psc=\relax\let\pit=\relax\let\pem=\relax + \let\prmfamily=\relax\let\psffamily=\relax\let\pttfamily=\relax + \let\pbfseries=\relax\let\pslshape=\relax\let\pscshape=\relax + \let\pitshape=\relax\let\pmdseries=\relax\let\pupshape=\relax + \let\pc=\relax \let\pd=\relax \let\pb=\relax} + {\let\protect=\@unexpandable@protect\let~\relax}% +%</209> +%<!209> \let\protect=\@unexpandable@protect\let~\relax + \xdef\NAT@temp{\csname b@#1\@extra@b@citeb\endcsname}}% + \expandafter\NAT@split\NAT@temp + \expandafter\NAT@parse@date\NAT@date??????@@% +%<!subpack&!209> \ifciteindex\NAT@index\fi +} +% \end{macrocode} +% Some further notes on the above: for 2.09 it is necessary to turn off all the +% protected font commands |\prm| etc.\ when the label text is expanded into +% |\NAT@temp|, for otherwise there will be problems with the New Font +% Selection Scheme (NFSS); the protected sub-accent commands (protected +% versions of |\c|, |\d|, and |\b|) also cause troubles on expansion. +% Admittedly, this is not a good solution, for the list of problem commands +% might be much longer, but for the meantime, this will have to do. +% +% For \LaTeXe, at least after the official release of +% \texttt{1994/06/01}, commands are made robust in a totally different +% manner, no longer by adding a \texttt{p} in front, but by adding a space +% afterwards. This means the commands in the auxiliary files look like the +% protected version once again, and not raw commands. They are infinitely +% protected. The above problem is easily overcome by making |\protect| +% equal to |\@unexpandable@protect|. A definitive list of commands to +% protect is no longer necessary. (Initially I used |\noexpand|, but +% that only worked for font commands, not accents. Reading the documentation +% in \texttt{ltdefns.dtx} indicated that this is the better redefinition +% of |\protect|.) +% +% This trick is also applied to the 2.09 version for when it is running +% in the compatibility mode of \LaTeXe. This is needed for the +% journal-specific coding, more than for the normal package. +% +% The automatic indexing of citations (|\NAT@index|) is described in +% Section~\ref{sec:idx}. +% +% \end{macro} +% +% \begin{macro}{\NAT@split} +% \changes{5.3}{1994 Sep 13}{Changed to support full author list} +% \changes{5.5}{1995 May 14}{Fix coding slightly} +% \changes{5.5}{1995 May 18}{Renamed from \cs{@citez}} +% \changes{6.0}{1995 Sep 4}{Recode for new \cs{bibcite} structure} +% The actual assignments of the author--year and numerical label texts to +% the corresponding commands is carried out by |\NAT@split|. If the long +% author list is missing (argument |#4|), it is set equal to the short +% list. +% \begin{macrocode} +\newcommand\NAT@split[4]{% + \gdef\NAT@num{#1}\gdef\NAT@name{#3}\gdef\NAT@date{#2}% + \gdef\NAT@all@names{#4}% + \ifx\NAT@noname\NAT@all@names \gdef\NAT@all@names{#3}\fi} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\NAT@parse@date} +% \changes{5.4}{1995 Feb 6}{Add macro to split date into year and extra label} +% \changes{5.5}{1995 Mar 24}{Put extra label in braces to localize any font +% changes} +% \changes{5.5}{1995 May 18}{Rename from \cs{@parse@date}} +% With version 5.4, add the macro |\NAT@parse@date| that splits the date up +% into year and extra label, putting them into |\NAT@year| and |\NAT@exlab|. +% This is used to test if authors and years are equal for two adjacent +% citations, in which case, only the extra label is printed. The +% macro searches the first 4 characters of the date for a letter +% (|\catcode|=11) which then becomes the extra label. If there are only +% numerals in the first 4 positions (more precisely, non-letters), the 5th +% character is taken as extra label. If there is none, this will be a +% question mark. +% \begin{macrocode} +\newcommand\NAT@parse@date{} +\def\NAT@parse@date#1#2#3#4#5#6@@{% + \ifnum\the\catcode`#1=11\def\NAT@year{}\def\NAT@exlab{#1}\else + \ifnum\the\catcode`#2=11\def\NAT@year{#1}\def\NAT@exlab{#2}\else + \ifnum\the\catcode`#3=11\def\NAT@year{#1#2}\def\NAT@exlab{#3}\else + \ifnum\the\catcode`#4=11\def\NAT@year{#1#2#3}\def\NAT@exlab{#4}\else + \def\NAT@year{#1#2#3#4}\def\NAT@exlab{{#5}}\fi\fi\fi\fi} +% \end{macrocode} +% \end{macro} +% +% \subsection{Automatic Index Entries for Citations}\label{sec:idx} +% +% \begin{macro}{\NAT@idxtxt} +% \changes{6.0}{1995 Sep 21}{Add macro} +% \begin{macro}{\NAT@index} +% \changes{6.0}{1995 Sep 21}{Add macro} +% To make an entry in the index for every citation, I have added +% |\NAT@index| to the |\NAT@parse| command. This will do nothing unless +% |\makeindex| has been issued in the preamble, in which case it writes the +% citation information to the \texttt{.idx} file by means of the standard +% \LaTeX\ internal |\@wrindex|. The actual format of the citation +% information is contained in |\NAT@idxtxt| which a user may redefine if +% needed. +% \begin{macrocode} +%<*!subpack&!209> +\newcommand\NAT@index{} +\let\NAT@makeindex=\makeindex +\renewcommand\makeindex{\NAT@makeindex + \renewcommand\NAT@index{\@bsphack\begingroup + \def~{\string~}\@wrindex{\NAT@idxtxt}}} +\newcommand\NAT@idxtxt{\NAT@name\ \NAT@open\NAT@date\NAT@close} +% \end{macrocode} +% \end{macro}\end{macro} +% \begin{macro}{\ifciteindex} +% \changes{6.0}{1995 Sep 21}{Add flag} +% The switch for activating automatic citation indexing is defined here. +% \begin{macrocode} +\newif\ifciteindex \citeindexfalse +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\citeindextype} +% \changes{6.0}{1995 Sep 29}{Add macro} +% \begin{macro}{\NAT@index@alt} +% \changes{6.0}{1995 Sep 29}{Add macro} +% The above coding will not work with the package \texttt{index.sty} by +% David~M. Jones. For that package, an alternative definition of |\NAT@index| +% is needed which is activated at the beginning of the document if +% \texttt{index} has been loaded. It thus does not matter in which order +% \thestyle\ or \texttt{index} are loaded. +% +% With the \texttt{index} package, it is possible to have several index +% files, defined by a |\newindex| command that associates a name with two +% file extensions. By default, the name \texttt{default} is associated with +% \texttt{.idx} and \texttt{.ind}. To make the automatic index entries go to +% a different set, redefine |\citeindextype|. +% +% \begin{macrocode} +\newcommand\citeindextype{default} +\newcommand\NAT@index@alt{{\let\protect=\noexpand\let~\relax + \xdef\NAT@temp{\NAT@idxtxt}}\expandafter\NAT@exp\NAT@temp\@nil} +\newcommand\NAT@exp{} +\def\NAT@exp#1\@nil{\index[\citeindextype]{#1}} + +\AtBeginDocument{% +\@ifpackageloaded{index}{\let\NAT@index=\NAT@index@alt}{}} +%</!subpack&!209> +% \end{macrocode} +% \end{macro}\end{macro} +% +% \subsection{Writing the Entries to the Auxiliary File} +% +% \noindent(New to version 6.0.) +% +% The author--year information is transferred from the \btx{} database to +% the document via |\bibitem| commands in the |thebibliography| +% environment. Standard \LaTeX\ simply assigns a running number to these +% entries, and writes that number with the citation key to the auxiliary +% file. For author--year citations, the author list and year must be written +% somehow to the auxiliary file. The form for this is to be +% \begin{quote} +% |\bibcite|\marg{key}|{|\marg{num}\marg{year}\marg{short}\marg{long}|}| +% \end{quote} +% This is the same form as in standard \LaTeX, except that the second +% argument becomes a set of 4 items. Here \emph{num} is the sequential +% number that is to be used if a numerical style is selected, \emph{short} +% is the abbreviate author list (Jones et al.), \emph{long} the full author +% list. +% +% The author--year information is contained in the optional argument to +% |\bibitem|, but just how it is formatted depends on the system used. The +% native \thestyle\ syntax is +% \begin{quote} +% |\bibitem[|\emph{short}|(|\emph{year}|)|\emph{long}|]|\marg{key} +% \end{quote} +% while the \texttt{chicago} system is +% \begin{quote} +% |\bibitem[\protect\citeauthoryear|\marg{long}\marg{short}\marg{year}|]|% +% \marg{key} +% \end{quote} +% +% \begin{macro}{\NAT@ifcmd} +% \changes{6.0}{1995 Sep 4}{Add macro} +% \begin{macro}{\NAT@ifxcmd} +% \changes{6.0}{1995 Sep 4}{Add macro} +% It is necessary to process the optional argument by first testing if it +% contains a command, and if so, to execute that command. Otherwise, insert +% our own command to process the following text. +% \begin{macrocode} +\newcommand\NAT@ifcmd{\futurelet\NAT@temp\NAT@ifxcmd} +\newcommand\NAT@ifxcmd{\ifx\NAT@temp\relax\else\expandafter\NAT@bare\fi} +% \end{macrocode} +% This actually only tests if the next token expands to |\relax|, which is +% what |\protect| will be at this point. If so, just procede: the command +% itself follows. Otherwise, insert |\NAT@bare|. (Note, we must also define +% the possible commands like |\citeauthoryear| to do what we want.) +% \end{macro}\end{macro} +% +% \begin{macro}{\NAT@bare} +% \changes{6.0}{1995 Sep 4}{Add macro} +% The command that is inserted if none is present must parse the native +% syntax for the author--year information. The template is somewhat complex +% because it must be able to test if there are no parentheses at all, in +% which case it activates the alternative, |\NAT@apalk| for the +% \texttt{apalike} syntax. When |\NAT@ifcmd| is invoked, it adds +% |()()\@nil| in order to provide the full template of |\NAT@bare|; if the +% argument itself contains no text in parentheses (not \thestyle{} +% syntax) then |#2| will be empty; otherwise, |#4| catches the extra +% parentheses. +% \begin{macrocode} +\def\NAT@bare#1(#2)#3()#4\@nil#5{% +%<*all|apalike|authordate> + \if\relax#2\relax + \expandafter\NAT@apalk#1, , \@nil{#5}\else + \stepcounter{NAT@ctr}% +%</all|apalike|authordate> + \NAT@wrout{\arabic {NAT@ctr}}{#2}{#1}{#3}{#5} +%<all|apalike|authordate>\fi +} +% \end{macrocode} +% The |NAT@ctr| above contains the designation of whatever counter is +% selected in the list environment for the \texttt{thebibliography}; it is +% the sequential counter for the entries. +% \end{macro} +% +% \begin{macro}{\NAT@wrout} +% \changes{6.0}{1995 Sep 4}{Add macro} +% \begin{macro}{\NAT@noname} +% \changes{6.0}{1995 Sep 6}{Add macro} +% \changes{6.0}{1995 Sep 21}{Prevent expansion of forced space (tilde)} +% Write the information to the auxiliary file as two arguments to |\bibcite|. +% +% Note: the 5 arguments are: counter, year, short list, long list, key. +% The two author lists are written enclosed in braces to make sure any +% font commands are kept local. Otherwise, one level of braces disappears for +% authors like |{\em Jones}|. +% +% To test later for the absence of names, define |\NAT@noname| here. +% Define it with |\def|, otherwise it will be `long' and will not test +% correctly with |\NAT@all@names| which is defined with |\gdef|. +% \begin{macrocode} +\newcommand\NAT@wrout[5]{% +\if@filesw + {\let\protect\noexpand\let~\relax + \immediate + \write\@auxout{\string\bibcite{#5}{{#1}{#2}{{#3}}{{#4}}}}}\fi +\ignorespaces} +\def\NAT@noname{{}} +% \end{macrocode} +% \end{macro}\end{macro} +% +% \begin{macro}{\bibitem} +% \changes{6.0}{1995 Sep 4}{Recode from standard} +% \begin{macro}{\@lbibitem} +% \changes{6.0}{1995 Sep 4}{Recode from standard} +% \changes{6.4}{1996 Oct 2}{Add dummy macros for \texttt{hyperref.sty}} +% The above commands are initiated with |\NAT@ifcmd| which decides whether +% |\NAT@bare| or one of the other commands is to be executed on the +% following arguments. It is actually |\@lbibitem| that calls |\NAT@ifcmd|, +% which in turn is invoked by the user command |\bibitem|. +% +% If |\bibitem| has no optional argument, then we have a numerical citation +% style, which is to be forced by setting |\NAT@stdbst|. Put the sequential +% counter value in as the argument to |\@lbibitem| which is then treated as +% a non-author--year label. +% \begin{macrocode} +\renewcommand\bibitem{% + \@ifnextchar[{\@lbibitem}{% +%<!subpack> \global\NAT@stdbsttrue + \stepcounter{NAT@ctr}\@lbibitem[\arabic{NAT@ctr}]}} +% \end{macrocode} +% Write the label with |\item| in the bibliography listing with the current +% value of |\NAT@num|, if it exists. This will either be the sequential +% number or whatever non-author--year text that was given as a special +% `numerical'. Since |\@biblabel| outputs only in numerical mode, this +% label vanishes for author--year mode. +% +% Finally invoke |\NAT@ifcmd| with the funny template to activate +% |\NAT@bare| or some alternative. +% \begin{macrocode} +\def\@lbibitem[#1]#2{% + \@ifundefined{b@#2\@extra@b@citeb}{\def\NAT@num{}}{\NAT@parse{#2}}% + \item[\hfil\hyper@natanchorstart{#2}\@biblabel{\NAT@num}% + \hyper@natanchorend]% + \NAT@ifcmd#1()()\@nil{#2}} +% \end{macrocode} +% Note: in standard \LaTeX, the sequential list counter is printed directly +% with |\item|, and then written to the auxiliary file so that |\cite| can +% refer to it on the next run. Here, |\item| prints exactly the same thing +% as |\cite| on the current run, if we are in numerical mode, otherwise +% nothing. +% +% \changes{6.3}{1996 Jun 10}{Include \texttt{showkeys} coding if already +% loaded} +% \changes{6.4}{1996 Jun 27}{Remove from 2.09 coding} +% If the \texttt{showkeys} package has already been loaded, the revised +% version of |\@lbibitem| will not have been saved. In this case, rerun some +% of the coding from that package. (If \texttt{showkeys} is loaded after +% \thestyle, there is no problem.) +% \begin{macrocode} +%<*!209> +\@ifpackageloaded{showkeys}{% + \let\SK@lbibitem\@lbibitem + \def\@lbibitem[#1]#2{% + \SK@lbibitem[#1]{#2}\SK@\SK@@label{#2}\ignorespaces}}{} +%</!209> +% \end{macrocode} +% \end{macro}\end{macro} +% +% \begin{macro}{\ifNAT@stdbst} +% \changes{6.0}{1995 Sep 4}{Add flag} +% If any non-author--year |\bibitem|s have been issued, then force +% numerical mode, since the author--year |\bibitem|s can handle this, but +% the numerical ones cannot work in author--year mode. Do this by inserting +% |\NAT@numberstrue| in the auxiliary file. +% \begin{macrocode} +%<*!subpack> +\newif\ifNAT@stdbst \NAT@stdbstfalse + +%<209>\let\NAT@enddoc=\enddocument +%<209>\def\enddocument +%<!209>\AtEndDocument + {\ifNAT@stdbst\if@filesw\immediate\write\@auxout{\string + \global\string\NAT@numberstrue}\fi\fi +%<209>\NAT@enddoc + } +%</!subpack> +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\bibcite} +% \changes{6.1}{1995 Dec 5}{Add own coding for this macro} +% \changes{6.1a}{1995 Dec 19}{Add own test for changed citations} +% Not wanting to rely on the coding for |\bibcite| in the kernel, I define +% it myself. It is not enough just to `provide' it, for it must do the +% right thing: write a label named |\b@|\emph{key}. The \LaTeX3 boys +% might decide to keep the command, but have it store the citations with +% a different prefix. +% +% (I outsmarted myself here again. The test for changed citations and +% references involves reading in the auxiliary file with revised +% definitions for |\label| and |\bibcite|. The December~1995 release does +% this via a generalized labelling command |\@newl@bel|. As a result, I +% must add this test myself. Not so bad, because the warning comes from +% \thestyle\ and explicitly refers to citations instead of just +% `references'.) +% \begin{macrocode} +%<*!209> +\providecommand\bibcite{} +\renewcommand\bibcite[2]{\@ifundefined{b@#1\@extra@binfo}\relax + {\NAT@citemultiple + \PackageWarningNoLine{natbib}{Citation `#1' multiply defined}}% + \global\@namedef{b@#1\@extra@binfo}{#2}} +\AtEndDocument{\NAT@swatrue\renewcommand\bibcite[2]% + {\NAT@testdef{#1}{#2}}} +\newcommand\NAT@testdef[2]{% + \def\NAT@temp{#2}\expandafter \ifx \csname b@#1\@extra@binfo\endcsname + \NAT@temp \else \ifNAT@swa \NAT@swafalse + \PackageWarningNoLine{natbib}{Citation(s) may have + changed.\MessageBreak + Rerun to get citations correct}\fi\fi} +%</!209> +%<209>\renewcommand\bibcite[2]{\global\@namedef{b@#1\@extra@binfo}{#2}} +% \end{macrocode} +% \end{macro} +% +% \subsection{Other Author--Year Schemes} +% \begin{macro}{\NAT@apalk} +% \changes{4.1}{1993 Oct 4}{Simplify by using comma-space as separator} +% \changes{5.3}{1994 Sep 13}{Full author list equals short list} +% \changes{5.5}{1995 May 18}{Renamed from \cs{@citeapalk}} +% \changes{6.0}{1995 Sep 4}{Recoded for version~6.0} +% If the argument of |\bibitem| contains no command, and if it does not +% conform to the \thestyle{} syntax, then try the \texttt{apalike} +% syntax (\emph{short}\texttt{, }\emph{year}). This has a funny template +% too in order to test for different syntax, which is indicated when |#2| +% is empty. In this case, give up trying to fit it to author--year formats, +% and go over to `numerical' with a special label. Set the flag +% |\NAT@stdbst| to mark this. This forces a numerical citation style. +% \begin{macrocode} +%<*all|apalike|authordate> +\newcommand\NAT@apalk{} +\def\NAT@apalk#1, #2, #3\@nil#4{\if\relax#2\relax +%<!subpack> \global\NAT@stdbsttrue + \NAT@wrout{#1}{}{}{}{#4}\else + \stepcounter{NAT@ctr}% + \NAT@wrout{\arabic {NAT@ctr}}{#2}{#1}{}{#4}\fi} +%</all|apalike|authordate> +% \end{macrocode} +% Note: the |NAT@ctr| is stepped here and everywhere else it is used, +% except when a special `numerical' label is being used. This conforms to +% standard \LaTeX\ which only increments the counter for pure numerical +% labels, without an optional argument to |\bibitem|. +% \end{macro} +% +% The other schemes of citation labelling may also be accommodated, more +% easily than \texttt{apalike}. It is just necessary to define the particular +% commands, like |\citeauthoryear| to write the arguments to the +% auxiliary file in the required. These commands are detected by +% |\NAT@ifcmd| and simply left to be executed. +% +% The only complication is that |\citeauthoryear| may be given with two or +% three arguments. This is accommodated by testing the |#3| and changing +% the form of the write command accordingly. +% +% The form of the template is the same as for |\NAT@bare|, since this +% command is inserted in its place and must therefore conform to its +% syntax. +% +% \begin{macro}{\citeauthoryear} +% \changes{5.3}{1994 Sep 13}{Allow full authors in citation} +% \changes{6.0}{1995 Sep 4}{Recode for version 6.0} +% For \texttt{newapa.bst} itself, the commands |\citestarts|, |\citeends|, +% as well as |\betweenauthors| must be defined; for others in this group, +% these commands are not needed. +% \begin{macrocode} +%<*newapa|chicago|all> +\newcommand\citeauthoryear{} +\def\citeauthoryear#1#2#3()()\@nil#4{\stepcounter{NAT@ctr}\if\relax#3\relax + \NAT@wrout{\arabic {NAT@ctr}}{#2}{#1}{}{#4}\else + \NAT@wrout{\arabic {NAT@ctr}}{#3}{#2}{#1}{#4}\fi} +\newcommand\citestarts{\NAT@open} +\newcommand\citeends{\NAT@close} +\newcommand\betweenauthors{and} +%</newapa|chicago|all> +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\astroncite} +% \changes{6.0}{1995 Sep 4}{Recode for version 6.0} +% The |\astroncite| command must similarly conform to |\NAT@bare| syntax +% and put its arguments into the auxiliary file in the correct order. +% \begin{macrocode} +%<*astron|all> +\newcommand\astroncite{} +\def\astroncite#1#2()()\@nil#3{\stepcounter{NAT@ctr}\NAT@wrout{\arabic +{NAT@ctr}}{#2}{#1}{}{#3}} +%</astron|all> +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\citename} +% \changes{6.0}{1995 Sep 4}{Recode for version 6.0} +% The |\citename| command just converts its arguments to the |\NAT@apalk| +% syntax, since its first argument should end in \verb*!, ! as for +% \texttt{apalike}. By making use of |\NAT@apalk| here, it is also possible +% to check for non-conformity of the syntax. +% \begin{macrocode} +%<*authordate|all> +\newcommand\citename{} +\def\citename#1#2()()\@nil#3{\expandafter\NAT@apalk#1#2, \@nil{#3}} +%</authordate|all> +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\harvarditem} +% \changes{5.3}{1994 Sep 13}{Allow full authors in citation} +% \changes{5.5}{1995 May 18}{Defined in \LaTeXe\ terms} +% The Harvard family is allowed for simply by defining |\harvarditem| in +% terms of |\bibitem| with the \thestyle{} form. +% +% The |\harvarditem| must allow for the optional argument, which is +% the short author list. Use the short list in |\bibitem| if it is there, +% otherwise the long list must be taken. +% +% \begin{macrocode} +%<*harvard|all> +%<!209>\newcommand\harvarditem[4][]% +%<209>\def\harvarditem{\@ifnextchar[{\@harvarditem}{\@harvarditem[]}} +%<209>\def\@harvarditem[#1]#2#3#4% + {\if\relax#1\relax\bibitem[#2(#3)]{#4}\else + \bibitem[#1(#3)#2]{#4}\fi } +% \end{macrocode} +% The command |\citeasnoun| must be defined since \texttt{harvard.bst} +% can add it for cross-referencing. +% \end{macro} +% +% \begin{macro}{\harvardleft} +% \changes{5.3}{1994 Sep 13}{Add macro} +% \begin{macro}{\harvardright} +% \changes{5.3}{1994 Sep 13}{Add macro} +% \begin{macro}{\harvardyearleft} +% \changes{5.3}{1994 Sep 13}{Add macro} +% \begin{macro}{\harvardyearright} +% \changes{5.3}{1994 Sep 13}{Add macro} +% \begin{macro}{\harvardand} +% \changes{5.3}{1994 Sep 13}{Add macro} +% \begin{macro}{\harvardurl} +% \changes{5.3}{1994 Sep 13}{Add macro} +% The \texttt{harvard} package has been updated for \LaTeXe, and includes +% some new punctuation commands in the accompanying \texttt{bst} files. +% (Maybe they were always there and I overlooked them.) In order for +% \thestyle{} to work with these, it needs to define them. The |left| and +% |right| commands have equivalents already; |\harvardurl| is defined +% as in \texttt{harvard.sty}. It is necessary to define |\harvardand| +% conditionally, and only later, in case it has already been set to +% something else by a |\bibstyle@xxx| (e.g., \texttt{agsm} sets it +% to |\&|.) +% \begin{macrocode} +\newcommand\harvardleft{\NAT@open} +\newcommand\harvardright{\NAT@close} +\newcommand\harvardyearleft{\NAT@open} +\newcommand\harvardyearright{\NAT@close} +%<!209>\AtBeginDocument{\providecommand{\harvardand}{and}} +%<209>\def\harvardand{and} +\newcommand\harvardurl[1]{\textbf{URL:} \textit{##1}} +%</harvard|all> +% \end{macrocode} +% \end{macro}\end{macro}\end{macro}\end{macro}\end{macro}\end{macro} +% +% \subsection{The Bibliography Listing} +% Changes must be made to the \texttt{thebibliography} environment for +% author--year citations. This is done be defining the environment with the +% features common to both schemes, and then by invoking |\@bibsetup|, which +% is either the author--year or numerical version. +% +% \begin{macro}{\bibsection} +% \changes{4.2}{1993 Oct 22}{Make specific for JGR, GRL, NLINPROC} +% \changes{5.5}{1995 May 18}{Use \cs{renewcommand}} +% \changes{6.2}{1996 Apr 15}{Modified for \texttt{amsart} and \texttt{amsbook}} +% \changes{6.4}{1996 Sep 1}{Modified for \texttt{sectionbib} option} +% \changes{6.5}{1997 Feb 5}{Allow for \cs{bib@headings} in KOMA scripts} +% First, |\bibsection| is defined according to the main style: if chapters +% exist, then the bibliography is a numberless chapter, otherwise a +% numberless section. For the specific journals, |\bibsection| takes on +% special definitions. +% +% Since the AMS classes \texttt{amsart} and \texttt{amsbook} redefine +% |\section*| in a way that is incompatible with the way it is used in +% the \texttt{bibliographystyle} environment, it is necessary to remove the +% |\@mkboth| from the section title. Since these classes do not use this +% command at this point, there is no loss of functionality. +% +% The packages of the KOMA scripts make use of |\bib@heading| which functions +% much like |\bibsection|. If it is defined, let |\bibsection| be equal to it. +% \begin{macrocode} +%<*!agu&!egs> +%<!209>\providecommand\bibsection{} +%<209>\def\bibsection{} +\@ifundefined{chapter}% + {\renewcommand\bibsection{\section*{\refname + \@mkboth{\MakeUppercase{\refname}}{\MakeUppercase{\refname}}}}} + {\@ifundefined{NAT@sectionbib}% + {\renewcommand\bibsection{\chapter*{\bibname + \@mkboth{\MakeUppercase{\bibname}}{\MakeUppercase{\bibname}}}}} + {\renewcommand\bibsection{\section*{\bibname + \ifx\@mkboth\@gobbletwo\else\markright{\MakeUppercase{\bibname}}\fi}}}} +%<*!subpack> +%<*!209> +\@ifclassloaded{amsart}% + {\renewcommand\bibsection{\section*{\refname}}{}}{} +\@ifclassloaded{amsbook}% + {\renewcommand\bibsection{\section*{\bibname}}{}}{} +%</!209> +\@ifundefined{bib@heading}{}{\let\bibsection\bib@heading} +%</!subpack> +%</!agu&!egs> +%<egs>\def\bibsection{\if@draft\newpage\fi +%<egs> \noappendix\section*{\refname}} +% \end{macrocode} +% \end{macro} +% +% \begin{environment}{thebibliography} +% \changes{4.1b}{1993 Oct 18}{Add \cmd{\bibfont}, defaulted +% to \cmd{\relax}} +% \changes{4.2}{1993 Oct 22}{Add coding for JGR, GRL, NLINPROC} +% \changes{4.2}{1993 Nov 20}{Remove coding for AGU, since AGU-supplied +% coding is adequate but different} +% \changes{5.1}{1994 Jun 22}{Put \cmd{\bibfont} at start so \cmd{\list} +% uses list parameters appropriate for the font size} +% \changes{5.1}{1994 Jun 22}{Add \cmd{\if@openbib} as in \LaTeXe} +% \changes{5.5}{1995 Mar 27}{Add special cross-ref citations for compatibility +% with \texttt{harvard}, \texttt{chicago}, and \texttt{named}} +% \changes{6.1}{1995 Nov 22}{Replace \cs{if@openbib} with \cs{ifNAT@openbib}} +% \changes{6.1}{1995 Dec 4}{Replace counter \texttt{enumiv} with +% \texttt{NAT@ctr} and refer to it explicitly, not with \cs{@listctr}} +% \changes{6.1}{1995 Dec 4}{Use \cs{PackageWarning} for empty +% bibliography} +% +% The \texttt{thebibliography} environment is defined much as normal, except +% that |\bibsetup| contains the special features for numerical or +% author--year styles. The command |\bibfont| permits permits different +% font sizes or styles to be used in the list. For example, for +% \textsl{Nonlinear Processes} it is |\small|. This means |\bibfont| must +% be issued before the |\list| command, since the list parameters depend +% on the current font size. For \textsl{AGU}, the whole +% |\thebibliography| is left off, since the AGU-supplied coding will +% do. It is only necessary to add |\noappendix| to the AGU coding. +% +% I have replaced |\if@openbib| with |\ifNAT@openbib| in order to be +% independent of the standard classes; this flag disappeared with the +% December~1995 release of \LaTeX, so I do it myself just to be sure. +% +% At the same time, +% I have also decided to use my own counter |NAT@ctr| for the numericals; +% previously I used |enumiv| as in the standard, and refered to it +% elsewhere with |\@listctr|, but now I refer to it explicitly. This is to +% avoid trouble if |\@listctr| should ever disappear. (The value of +% |\@listctr| is set by |\usecounter|.) +% \begin{macrocode} +\newcounter{NAT@ctr} +%<*!agu> +\renewenvironment{thebibliography}[1]{% + \bibfont\bibsection\parindent \z@\list + {\@biblabel{\arabic{NAT@ctr}}}{\@bibsetup{#1}% + \setcounter{NAT@ctr}{0}}% +%<*!209&!subpack> + \ifNAT@openbib + \renewcommand\newblock{\par} + \else + \renewcommand\newblock{\hskip .11em \@plus.33em \@minus.07em}% + \fi +%</!209&!subpack> +%<209|subpack> \def\newblock{\hskip .11em plus.33em minus.07em}% + \sloppy\clubpenalty4000\widowpenalty4000 + \sfcode`\.=1000\relax +% \end{macrocode} +% The files \texttt{chicago.bst} and \texttt{named.bst} can add the +% commands |\citeN| and |\shortcite| respectively to the \texttt{.bbl} +% files, for cross-referencing. Similarly, \texttt{harvard.bst} can add +% |\citeasnoun|. These commands must therefore be accommodated, +% as least within the |thebibliography| environment. +% \begin{macrocode} +%<newapa|chicago|all> \let\citeN\cite \let\shortcite\cite +%<harvard|all> \let\citeasnoun\cite + }{\def\@noitemerr{% +%<209> \@warning +%<!209> \PackageWarning{natbib} + {Empty `thebibliography' environment}}% + \endlist\vskip-\lastskip} +%<!egs>\let\bibfont=\relax +%<egs>\let\bibfont=\small +%</!agu> +%<*agu> +\let\aguthebib=\thebibliography +\def\thebibliography#1{\noappendix\aguthebib{#1}} +%</agu> +% \end{macrocode} +% \end{environment} +% +% \subsection{Compatibility Commands} +% \begin{macro}{\reset@font} +% \begin{macro}{\refname} +% \changes{6.4}{1996 Jun 18}{Provide name with \LaTeXe\ too} +% \begin{macro}{\bibname} +% \changes{6.4}{1996 Jun 18}{Provide name with \LaTeXe\ too} +% For older implementations of \LaTeX~2.09 (before December, 1991) the +% |\reset@font| command does not exist. It is defined to be |\relax| under +% normal \LaTeX{}, but does more under NFSS. In case it is not defined, add +% it here. The naming commands |\bibname| and |\refname| are similarly +% unknown for this old \LaTeX. They are sometimes even unknown in non-standard +% classes that are used in place of \texttt{article}, \texttt{report}, and +% \texttt{book}. +% \begin{macrocode} +%<*!209> +\providecommand\reset@font{\relax} +\providecommand\bibname{Bibliography} +\providecommand\refname{References} +%</!209> +%<*209> +\@ifundefined{reset@font}{\let\reset@font=\relax}{} +%<!agu&!egs>\@ifundefined{bibname}{\newcommand\bibname{Bibliography}}{} +\@ifundefined{refname}{\newcommand\refname{References}}{} +%</209> +% \end{macrocode} +% \end{macro}\end{macro}\end{macro} +% +% \begin{macro}{\NAT@citeundefined} +% \changes{6.1}{1995 Nov 22}{Add macro} +% The December~1995 release of \LaTeX\ considered renaming the command +% |\G@refundefinedtrue| for flagging undefined references. However, since a +% number of packages, including \thestyle, were affected, it was decided to +% retain the old name for the new coding. I had already decided to go for +% an independent coding, which does exactly the same thing. +% \begin{macrocode} +%<*!209> +\newcommand\NAT@citeundefined{\gdef \NAT@undefined {% + \PackageWarningNoLine{natbib}{There were undefined citations}}} +\let \NAT@undefined \relax +% \end{macrocode} +% \end{macro} +% \begin{macro}{\NAT@citemultiple} +% \changes{6.1}{1995 Dec 6}{Add macro} +% Add the warning about multiply-defined citations, as part of the +% do-it-yourself |\bibcite| definition. +% \begin{macrocode} +\newcommand\NAT@citemultiple{\gdef \NAT@multiple {% + \PackageWarningNoLine{natbib}{There were multiply defined citations}}} +\let \NAT@multiple \relax +\AtEndDocument{\NAT@undefined\NAT@multiple} +%</!209> +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@mkboth} +% \changes{6.1}{1995 Dec 4}{Provide macro in case it is removed from +% kernel} +% Having been burned by the December~1995 update on several internal +% commands, I have decided to make \thestyle\ as independent as +% possible, or at least to avoid it crashing when internals are changed or +% disappear in future. The |\@mkboth| is used in the bibliography listing, +% and is the same as |\makeboth| with \texttt{headings} pagestyle. Provide +% a dummy in case it disappears. If the kernel should use a different +% command in future, the headings will not function, but at least there +% will be no crash. (Also needed for very old versions of \LaTeX~2.09.) +% \begin{macrocode} +%<209>\@ifundefined{@mkboth}{\newcommand\@markboth[2]{}}{} +%<!209>\providecommand\@mkboth[2]{} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\MakeUppercase} +% \changes{6.1}{1995 Dec 4}{Provide compatibility for older versions} +% The |\MakeUppercase| command replaces |\uppercase| in \LaTeXe\ of +% June~1995. Provide it for earlier versions. +% \begin{macrocode} +%<209>\let\MakeUppercase\uppercase +%<!209>\providecommand\MakeUppercase{\uppercase} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@extra@b@citeb} +% \changes{6.4}{1996 Sep 1}{Add macro for \texttt{chapterbib.sty}} +% \begin{macro}{\@extra@binfo} +% \changes{6.4}{1996 Sep 1}{Add macro for \texttt{chapterbib.sty}} +% Two commands used by the \texttt{chapterbib} package, but which must +% be defined to be nothing for use without that package. Do not |\let| them +% be |\relax|, for that package checks if they exist (i.e., not |\relax|) +% and redefines things like |\@citex|, which we do not want to have happen. +% The necessary redefinitions are already included in \thestyle. +% \begin{macrocode} +%<209>\@ifundefined{@extra@b@citeb}{\def\@extra@b@citeb{}}{} +%<!209>\providecommand{\@extra@b@citeb}{} +\gdef\@extra@binfo{} +% \end{macrocode} +% \end{macro}\end{macro} +% +% \begin{macro}{\hyper@natanchorstart} +% \changes{6.4}{1996 Oct 2}{Provide macro for \texttt{hyperref} package} +% \begin{macro}{\hyper@natanchorend} +% \changes{6.4}{1996 Oct 2}{Provide macro for \texttt{hyperref} package} +% \begin{macro}{\hyper@natlinkstart} +% \changes{6.4}{1996 Oct 2}{Provide macro for \texttt{hyperref} package} +% \begin{macro}{\hyper@natlinkend} +% \changes{6.4}{1996 Oct 2}{Provide macro for \texttt{hyperref} package} +% The \texttt{hyperref} package of Sebastian Rahtz and Yannis Haralambous +% defines these macros to +% make hypertext links and references. Without that package, these macros +% must be turned off. The order of loading \thestyle\ and \texttt{hyperref} +% should not be important. +% \begin{macrocode} +%<*!209> +\providecommand\hyper@natanchorstart[1]{} +\providecommand\hyper@natanchorend{} +\providecommand\hyper@natlinkstart[1]{} +\providecommand\hyper@natlinkend{} +%</!209> +%<*209> +\@ifundefined{hyper@natanchorstart}{\def\hyper@natanchorstart#1{}}{} +\@ifundefined{hyper@natanchorend}{\def\hyper@natanchorend{}}{} +\@ifundefined{hyper@natlinkstart}{\def\hyper@natlinkstart#1{}}{} +\@ifundefined{hyper@natlinkend}{\def\hyper@natlinkend{}}{} +%</209> +% \end{macrocode} +% \end{macro}\end{macro}\end{macro}\end{macro} +% +% \subsection{Sorting and Compression of Numbers} +% The \texttt{cite} and (obsolete) \texttt{citesort} packages by Donald +% Arseneau provide the coding for printing multiple citation numbers in +% ascending order, and with a range where applicable. That is, if the +% normal result of |\cite{..}| with several keys were [5, 3, 8, 4], the new +% result would be [3--5, 8]. +% +% Since \texttt{cite.sty} totally reimplements the citation commands (as +% does \thestyle) it is not possible to make the two compatible. Instead, I +% have removed the necessary coding from \texttt{cite.sty}, converted it to +% \thestyle\ format, and added it here. +% +% To activate the sorting and compression of numerical citations, load +% \thestyle\ with the options \texttt{numbers,sort}. +% This coding has no effect on author--year citations. +% +% \begin{macro}{\NAT@citen} +% \changes{6.4}{1996 Oct 11}{Add coding from \texttt{cite.sty}} +% It is not included in the \LaTeX~2.09 version, nor in the journal packages +% since it is turned on by a package option, something missing in both of +% them. Besides, the journals are author--year mode. +% \begin{macrocode} +%<*!subpack&!209> +\ifnum\NAT@sort=1 +\newcommand\NAT@citen[1]{% +\nocite{#1}% +\@tempcntb\m@ne +\let\@h@ld\relax +\let\@citea\@empty +\let\@celt\delimiter +\def\@cite@list{}% +\@for \@citeb:=#1\do{\@make@cite@list}% +\@tempcnta\m@ne +\let\@celt\@compress@cite \@cite@list +\@h@ld} + +\begingroup \catcode`\_=8 +\gdef\@make@cite@list{% + \edef\@citeb{\expandafter\@firstofone\@citeb}% + \@ifundefined{b@\@citeb\@extra@b@citeb}{% + \@citea{\reset@font\bfseries?}\def\@citea{\NAT@sep\penalty\@m\NAT@space}% + \NAT@citeundefined\PackageWarning{natcite}% + {Citation `\@citeb' on page \thepage\space undefined}}% + {\NAT@parse{\@citeb}% + \ifcat _\ifnum\z@<0\NAT@num _\else A\fi % a positive number, put in list + \@tempcnta\NAT@num \relax + \ifnum \@tempcnta>\@tempcntb % new highest, add to end (efficiently) + \edef\@cite@list{\@cite@list \@celt{\NAT@num}}% + \@tempcntb\@tempcnta + \else % arbitrary number: insert appropriately + \edef\@cite@list{\expandafter\@sort@celt \@cite@list \@gobble @}% + \fi + \else % citation is not a number, output immediately + \@citea \NAT@num \def\@citea{\NAT@sep\penalty\@m\NAT@space}% + \fi}} +\endgroup + +\def\@compress@cite#1{% + \advance\@tempcnta\@ne + \ifnum #1=\@tempcnta + \ifx\@h@ld\relax + \edef\@h@ld{\@citea #1}% + \else + \def\@h@ld{\hbox{--}\penalty\@m #1}% + \fi + \else + \@h@ld \@citea #1\let\@h@ld\relax + \fi \@tempcnta#1\def\@citea{\NAT@sep\penalty\@m\NAT@space}% +} + +\def\@sort@celt#1#2{\ifx \@celt #1% + \ifnum #2<\@tempcnta + \@celt{#2}% + \expandafter\expandafter\expandafter\@sort@celt + \else + \@celt{\number\@tempcnta}\@celt{#2}% + \fi\fi} +\def\NAT@citexnum[#1][#2]#3{\let\@citea\@empty + \@cite{\NAT@citen{#3}}{#1}{#2}} +\fi +%</!subpack&!209> +% \end{macrocode} +% \end{macro} +% +% \subsection{Local Configuration} +% \changes{5.2}{1994 Aug 25}{Add reading in of \texttt{natbib.cfg}} +% \changes{5.5}{1995 Mar 21}{Local configuration read in at end} +% To accommodate local additional |\bibstyle@| definitions, +% or any other modifications to the coding, read in +% configuration file \texttt{natbib.cfg} if it exists. +% \begin{macrocode} +%<*!subpack&!209> +\InputIfFileExists{natbib.cfg} + {\typeout{Local config file natbib.cfg used}}{} +%</!subpack&!209> +%</package> +% \end{macrocode} +% +% \Finale diff --git a/macros/latex/contrib/springer/svjour/agp/natbib.ins b/macros/latex/contrib/springer/svjour/agp/natbib.ins new file mode 100644 index 0000000000..a55f912909 --- /dev/null +++ b/macros/latex/contrib/springer/svjour/agp/natbib.ins @@ -0,0 +1,57 @@ +%% LaTeX2e file `natbib.ins' +%% generated by the `filecontents' environment +%% from source `natbib' on 1996/10/11. +%% +% Simply TeX or LaTeX this file to extract various files from +% the source file `natbib.dtx' +% Comment out the \generateFile lines for any files you do not want. + +\def\batchfile{natbib.ins} +\input docstrip + +\preamble + +Only a few abbreviated comments remain here to describe the usage. + +\endpreamble +\postamble +<<<<< End of decommented file <<<<<< +\endpostamble +\keepsilent + +\generateFile{natbib.sty}{f}{\from{natbib.dtx}{package,all}} + +\preamble + +This is the LaTeX 2.09 version of the package. +It will not be maintained forever. +Please upgrade to LaTeX2e so that you may use the proper package. + +Only a few abbreviated comments remain here to describe the usage. + +\endpreamble + +% Activate the next line to get a version for running under LaTeX 2.09 +%\generateFile{natbib209.sty}{f}{\from{natbib.dtx}{package,all,209}} + +\preamble + +This is the driver file to produce the LaTeX documentation from the +source file \inFileName. +Make changes to it as needed. (Never change the \inFileName file!) +\endpreamble +\postamble + +End of documentation driver file. +\endpostamble + +% Activate the next line for a documentation driver +% that you can configure yourself. +%\generateFile{natbib.drv}{f}{\from{natbib.dtx}{driver}} + +\obeyspaces +\Msg{*******************************************}% +\Msg{* For documentation, process natbib.dtx *}% +\Msg{* or the driver file natbib.drv *}% +\Msg{* (LaTeX2e only!) *}% +\Msg{*******************************************} diff --git a/macros/latex/contrib/springer/svjour/agp/read.me b/macros/latex/contrib/springer/svjour/agp/read.me new file mode 100644 index 0000000000..9f44eecfb9 --- /dev/null +++ b/macros/latex/contrib/springer/svjour/agp/read.me @@ -0,0 +1,32 @@ +% read.me +% LaTeX class for Annales Geophysicae +% read-me file +% (c) Springer-Verlag HD +%----------------------------------------------------------------------- +% + +This directory contains the LaTeX2e support for Annales Geophysicae + +For a quick entry to the Annales Geophysicae-formatting and if you are +already familiar with the SVJour class you need only the three files: +svjour.cls, svagp.clo, and template.tex - natbib.sty should be available +in TeXs search path. + +The following files are part of the macro package + + read.me This file + svjour.cls The document class file for Springer journals + usrguide.* User's Guide (dvi, pdf) + svagp.clo The class option file for Annales Geophysicae + natbib.dtx The natbib package of Patrick W. Daly. + Typeset this file for complete documentation of natbib. + natbib.ins Run the file natbib.ins to produce natbib.sty for LaTeX + agpguide.* User's Guide (tex, dvi, ps [to be found in psoutput.zip]) + template.tex A fill-in-form for a standard article with usage comments + psoutput.zip PS files of the above mentioned DVIs, + compressed due to their size. + + subdirectory: example (contains all data of a sample article) + + example.* Example of an article (tex, dvi, ps [in psoutput.zip]) + diff --git a/macros/latex/contrib/springer/svjour/agp/svagp.clo b/macros/latex/contrib/springer/svjour/agp/svagp.clo new file mode 100644 index 0000000000..2f0c9224f5 --- /dev/null +++ b/macros/latex/contrib/springer/svjour/agp/svagp.clo @@ -0,0 +1,333 @@ +% SVJour DOCUMENT CLASS OPTION AGP -- Annales Geophysicae +% +% This is an enhancement for the +% LaTeX document class for Springer journals (two column version) +% +%% +%% +%% \CharacterTable +%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z +%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z +%% Digits \0\1\2\3\4\5\6\7\8\9 +%% Exclamation \! Double quote \" Hash (number) \# +%% Dollar \$ Percent \% Ampersand \& +%% Acute accent \' Left paren \( Right paren \) +%% Asterisk \* Plus \+ Comma \, +%% Minus \- Point \. Solidus \/ +%% Colon \: Semicolon \; Less than \< +%% Equals \= Greater than \> Question mark \? +%% Commercial at \@ Left bracket \[ Backslash \\ +%% Right bracket \] Circumflex \^ Underscore \_ +%% Grave accent \` Left brace \{ Vertical bar \| +%% Right brace \} Tilde \~} +\ProvidesFile{svagp.clo} + [1999/01/11 v1.0 + style option for Annales Geophysicae] +\typeout{SVJour Class option: svagp.clo for Annales Geophysicae} +\ExecuteOptions{final,twocolumn,10pt} +\DeclareOption{leqno}{\input{leqno.clo}} +\let\if@mathematic\iffalse +% No size changing allowed, hence a copy of size10.clo is included +\renewcommand\normalsize{% + \@setfontsize\normalsize\@xpt{10.5dd}% + \abovedisplayskip 10\p@ \@plus2\p@ \@minus5\p@ + \abovedisplayshortskip \z@ \@plus3\p@ + \belowdisplayshortskip 4\p@ \@plus2\p@ \@minus2\p@ + \belowdisplayskip \abovedisplayskip + \let\@listi\@listI} +\normalsize +\newcommand\small{% + \@setfontsize\small\@ixpt{10pt}% + \abovedisplayskip 8.5\p@ \@plus3\p@ \@minus4\p@ + \abovedisplayshortskip \z@ \@plus2\p@ + \belowdisplayshortskip 4\p@ \@plus2\p@ \@minus2\p@ + \def\@listi{\leftmargin\leftmargini + \parsep 0\p@ \@plus1\p@ \@minus\p@ + \topsep 8\p@ \@plus2\p@ \@minus4\p@ + \itemsep0\p@}% + \belowdisplayskip \abovedisplayskip +} +\let\footnotesize\small +\newcommand\scriptsize{\@setfontsize\scriptsize\@viipt\@viiipt} +\newcommand\tiny{\@setfontsize\tiny\@vpt\@vipt} +\newcommand\large{\@setfontsize\large\@xiipt{13dd}} +\newcommand\Large{\@setfontsize\Large\@xivpt{15dd}} +\newcommand\LARGE{\@setfontsize\LARGE\@xviipt{17dd}} +\newcommand\huge{\@setfontsize\huge\@xxpt{25}} +\newcommand\Huge{\@setfontsize\Huge\@xxvpt{30}} +% +\setlength{\textwidth}{178mm} +\setlength{\textheight}{240mm} +\setlength{\columnsep}{6.5mm} +% +\def\agp@maketitle{\par +\ch@ckobl{journalname}{Noname} +\ch@ckobl{date}{the date of receipt and acceptance should be inserted later} +\ch@ckobl{title}{A title should be given} +\ch@ckobl{author}{Name(s) and initial(s) of author(s) should be given} +\ch@ckobl{institute}{Address(es) of author(s) should be given} +% Abstract move to end of file +% \ch@ckobl{abstract}{Abstract is missing.} +\begingroup +% + \renewcommand\thefootnote{\@fnsymbol\c@footnote}% + \def\@makefnmark{$^{\@thefnmark}$}% + \def\switch@fnmark{\def\thefootnote{\alph{footnote}}}% +% + \def\lastand{\ifnum\value{inst}=2\relax + \unskip{} \andname\ + \else + \unskip, \andname\ + \fi}% + \def\and{\stepcounter{auth}\relax + \if@smartand + \ifnum\value{auth}=\value{inst}% + \lastand + \else + \unskip, + \fi + \else + \unskip, + \fi}% + \ifnum \col@number=\@ne + \@maketitle + \else + \twocolumn[\@maketitle]% + \fi + \thispagestyle{empty} + \global\@topnum\z@ + \@thanks + \if!\@mail!\else + \footnotetext[0]{\kern-\bibindent\mailname\ + \ignorespaces\@mail}% + \fi +% + \if@runhead + \ProcessRunnHead + \fi +% + \endgroup + \setcounter{footnote}{0} + \global\let\thanks\relax + \global\let\maketitle\relax + \global\let\@maketitle\relax + \global\let\@thanks\@empty + \global\let\@author\@empty + \global\let\@date\@empty + \global\let\@title\@empty + \global\let\@subtitle\@empty + \global\let\title\relax + \global\let\author\relax + \global\let\date\relax + \global\let\and\relax} +% +\newskip\stretchtitle \stretchtitle=10.75dd plus1fill +\def\agp@@maketitle{\newpage + \normalfont + \vbox to0pt{\vskip-40pt + \nointerlineskip + \makeheadbox\vss}\nointerlineskip + \setbox\authrun=\vbox\bgroup + {\LARGE \bfseries + \hrule\@height\logodepth\@width\z@ + \pretolerance=10000 + \rightskip=0pt plus 4cm + \if!\@headnote!\else + \noindent + {\LARGE\normalfont\itshape\ignorespaces\@headnote\par}\vskip 3.5mm + \fi + \noindent\ignorespaces + \@title \par}\vskip 12.25pt\relax % Abstand nach title + \authorfont + \if!\@subtitle!\else + \vskip-3.25pt + {\Large\bfseries + \pretolerance=10000 + \rightskip=0pt plus 3cm + \noindent\ignorespaces\@subtitle \par}\vskip 11.24pt + \fi + \lineskip .5em + \switch@fnmark + \def\@makefnmark{$^{\mathrm\@thefnmark}$}% + \setcounter{footnote}{0}% + \protected@xdef\@thanks{\@thanks\protect\switch@fnmark}% + \setbox0=\vbox{\setcounter{auth}{1}\def\and{\stepcounter{auth} }% + \hfuzz=2\textwidth\def\thanks##1{}\@author}% + \value{inst}=\value{auth}% + \setcounter{auth}{1}% + \rightskip=0pt plus 2cm + \noindent\ignorespaces\@author\vskip7.23pt + \rightskip=0pt\relax + \small\rm + \institutename + \vskip 8.35pt + \noindent\@date + \if!\@dedic!\else + \par + \normalsize\it + \addvspace\baselineskip + \noindent\@dedic + \fi + \vskip 12.85pt + \egroup % end of header box + \@tempdima=\headerboxheight + \advance\@tempdima by-\ht\authrun + \ifdim\@tempdima>0pt + \vrule width0pt height\@tempdima + \fi + \unvbox\authrun + \global\@minipagetrue + \global\everypar{\global\@minipagefalse\global\everypar{}} + \vskip15pt +} +% +\def\PACS#1{\gdef\@PACS{#1}} +\def\@@PACS{\par\addvspace\baselineskip\noindent{\sffamily\bfseries +PACS.\enspace}\ignorespaces\expandafter\pacsstart\@PACS\par} +\def\keywords#1{\par\addvspace\baselineskip\noindent\keywordname\ +\ignorespaces#1} +% +\def\agprunnhead{% + \def\\{\unskip\ \ignorespaces}\def\inst##1{\unskip{}}% + \def\thanks##1{\unskip{}}\def\fnmsep{\unskip}% + \instindent=\textwidth + \advance\instindent by-\headlineindent + \if!\the\titlerunning!\else + \edef\@title{\the\titlerunning}% + \fi + \global\setbox\titrun=\hbox{\small\rm\ignorespaces\@title}% + \ifdim\wd\titrun>\instindent + \typeout{^^JSVJour Warning: Title too long for running head.}% + \typeout{Please supply a shorter form with \string\titlerunning + \space prior to \string\maketitle}% + \global\setbox\titrun=\hbox{\small\rm + Title Suppressed Due to Excessive Length}% + \fi + \xdef\@title{\copy\titrun}% +% + \if!\the\authorrunning! + \else + \setcounter{auth}{1}% + \edef\@author{\the\authorrunning}% + \fi + \ifnum\value{auth}>2 + \def\stripauthor##1\and##2\endauthor{% + \protected@xdef\@author{##1\unskip\unskip\if!##2!\else\ et al.\fi}}% + \expandafter\stripauthor\@author\and\endauthor + \else + \gdef\and{\unskip, \ignorespaces}% + {\def\and{\noexpand\protect\noexpand\and}% + \protected@xdef\@author{\@author}} + \fi + \global\setbox\authrun=\hbox{\small\ignorespaces + \@author\unskip: \unhbox\titrun}% + \ifdim\wd\authrun>\instindent + \typeout{^^JSVJour Warning: The running head built automatically from + \string\author\space and \string\title + ^^Jexceeds the pagewidth, please supply a shorter form + ^^Jwith \string\authorrunning\space and + \string\titlerunning\space prior to \string\maketitle}% + \global\setbox\authrun=\hbox{\small\rm Please give a shorter version + with: {\tt\string\authorrunning\space and + \string\titlerunning\space prior to \string\maketitle}}% + \fi + \xdef\@author{\copy\authrun}% + \markboth{\@author}{\@author}% +} +% +% Changes for Journal AGP +\AtEndOfClass{% +\let\if@runhead\iftrue +\let\if@smartand\iffalse +\let\@maketitle=\agp@@maketitle +\let\maketitle=\agp@maketitle +\let\ProcessRunnHead=\agprunnhead +% Abstract nicht mehr im Kopf enthalten +\def\@abstract#1{\begin{abstract} #1 \end{abstract}} +\def\strich{\vspace{5mm}\hrule\vskip3ptplus12pt\null} +\def\@evenhead{\small\rlap{\thepage}\hfil\leftmark}% +\def\@oddhead{\small\rightmark\hfil\llap{\thepage}}% +\def\sectcounterend{} +\def\section{\@startsection{section}{1}{\z@}% + {-21dd plus-4dd minus-4dd}{10.5dd + }{\normalsize\bfseries}} +\def\subsection{\@startsection{subsection}{2}{\z@}% + {-21dd plus-4dd minus-4dd}{10.5dd + }{\normalsize\it}} +\def\subsubsection{\@startsection{subsubsection}{3}{\z@}% + {-21dd plus-4dd minus-4dd}{-1pt}{\normalsize\it}} +\def\paragraph{\@startsection{subsubsection}{4}{\z@}% + {-21dd plus-4dd minus-4dd}{-1pt}{\normalsize\sffamily\rmseries}} +\def\authorfont{\bfseries} +\def\leftlegendglue{\hfil} +\setlength\parskip{0\p@} +% +\def\institutename{\vskip-2.75pt + \begingroup + \parindent=0pt + \parskip=0pt + \lineskip=0pt + \setcounter{inst}{1}% + \def\and{\vskip0pt\stepcounter{inst}% + \if@instindent\hangindent\instindent\fi + \noindent + \hbox to\instindent{\hss$^{\theinst}$\kern.2em}\ignorespaces}% + \setbox0=\vbox{\def\thanks##1{}\@institute} + \ifnum\value{inst}>9\relax\setbox0=\hbox{$^{88}$\kern.2em}% + \else\setbox0=\hbox{$^{8}$\kern.2em}\fi + \instindent=\wd0\relax + \ifnum\value{inst}=1\relax + \else + \setcounter{inst}{1}% + \if@instindent\hangindent\instindent\fi + \noindent + \hbox to\instindent{\hss$^{\theinst}$\kern.2em}\ignorespaces + \fi + \small + \ignorespaces + \@institute\par + \endgroup} +% +\def\keywords#1{\vskip2\baselineskip\noindent\keywordname\ \ignorespaces#1 +\vskip1.5\baselineskip} +% +\setlength\parindent{14\p@} +\betweenumberspace=5pt +% +\def\ps@headings{% + \let\@oddfoot\@empty\let\@evenfoot\@empty + \def\@evenhead{\small\rlap{\thepage}\leftmark\unskip}% + \def\@oddhead{\small\rightmark\hfil\llap{\thepage}}% + \let\@mkboth\@gobbletwo + \let\sectionmark\@gobble + \let\subsectionmark\@gobble + } +% +% Bibliography +% Loading package 'NATBIB' +\usepackage[round]{natbib} +% Changing some parameters of NATBIB +\setlength{\bibhang}{4mm} +\let\bibfont=\small +\def\@biblabel#1{} +\newcommand{\etal}{\textit{et al}.} +% +% Skip the caption to left +\long\def\@caption#1[#2]#3{\par\addcontentsline{\csname + ext@#1\endcsname}{#1}{\protect\numberline{\csname + the#1\endcsname}{\ignorespaces #2}}\begingroup + \@parboxrestore + \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3\hfill}\par + \endgroup} +% +%\setlength{\leftmargini}{0pt} +% Loading package 'AMSMATH' +\IfFileExists{amsmath.sty} + {\usepackage[fleqn]{amsmath} + \setlength{\@mathmargin}{0\p@}} + {\errmessage{amsmath.sty dosn't exist!}} +% +\journalname{Annales Geophysicae}} +%% +%% End of file `svagp.clo'. +\endinput diff --git a/macros/latex/contrib/springer/svjour/agp/svjour.cls b/macros/latex/contrib/springer/svjour/agp/svjour.cls new file mode 100644 index 0000000000..79d1402952 --- /dev/null +++ b/macros/latex/contrib/springer/svjour/agp/svjour.cls @@ -0,0 +1,1236 @@ +% SVJour DOCUMENT CLASS -- version 1.8 for LaTeX2e +% +% LaTeX document class for Springer journals +% +%% +%% +%% \CharacterTable +%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z +%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z +%% Digits \0\1\2\3\4\5\6\7\8\9 +%% Exclamation \! Double quote \" Hash (number) \# +%% Dollar \$ Percent \% Ampersand \& +%% Acute accent \' Left paren \( Right paren \) +%% Asterisk \* Plus \+ Comma \, +%% Minus \- Point \. Solidus \/ +%% Colon \: Semicolon \; Less than \< +%% Equals \= Greater than \> Question mark \? +%% Commercial at \@ Left bracket \[ Backslash \\ +%% Right bracket \] Circumflex \^ Underscore \_ +%% Grave accent \` Left brace \{ Vertical bar \| +%% Right brace \} Tilde \~} +\NeedsTeXFormat{LaTeX2e}[1995/12/01] +\ProvidesClass{svjour}[1999/09/14 +^^JLaTeX document class for Springer journals - version 1.8] +\newcommand\@ptsize{} +\newif\if@restonecol +\newif\if@titlepage +\@titlepagefalse +\DeclareOption{a4paper} + {\setlength\paperheight {297mm}% + \setlength\paperwidth {210mm}} +\DeclareOption{10pt}{\renewcommand\@ptsize{0}} +\DeclareOption{twoside}{\@twosidetrue \@mparswitchtrue} +\DeclareOption{draft}{\setlength\overfullrule{5pt}} +\DeclareOption{final}{\setlength\overfullrule{0pt}} +\DeclareOption{twocolumn}{\@twocolumntrue} +\DeclareOption{fleqn}{\input{fleqn.clo}\AtEndOfClass{\mathindent\z@}} +\let\if@mathematic\iftrue +\let\if@numbook\iffalse +\DeclareOption{numbook}{\let\if@envcntsect\iftrue + \AtEndOfPackage{% + \renewcommand\thefigure{\thesection.\@arabic\c@figure}% + \renewcommand\thetable{\thesection.\@arabic\c@table}% + \renewcommand\theequation{\thesection.\@arabic\c@equation}% + \@addtoreset{figure}{section}% + \@addtoreset{table}{section}% + \@addtoreset{equation}{section}% + }% +} +\DeclareOption{openbib}{% + \AtEndOfPackage{% + \renewcommand\@openbib@code{% + \advance\leftmargin\bibindent + \itemindent -\bibindent + \listparindent \itemindent + \parsep \z@ + }% + \renewcommand\newblock{\par}}% +} +% +\let\if@runhead\iffalse +\DeclareOption{runningheads}{\let\if@runhead\iftrue} +\let\if@smartrunh\iffalse +\DeclareOption{smartrunhead}{\let\if@smartrunh\iftrue} +\DeclareOption{nosmartrunhead}{\let\if@smartrunh\iffalse} +\let\if@envcntreset\iffalse +\DeclareOption{envcountreset}{\let\if@envcntreset\iftrue} +\let\if@envcntsame\iffalse +\DeclareOption{envcountsame}{\let\if@envcntsame\iftrue} +\let\if@envcntsect\iffalse +\DeclareOption{envcountsect}{\let\if@envcntsect\iftrue} +\let\if@referee\iffalse +\DeclareOption{referee}{\let\if@referee\iftrue} +\def\makereferee{\def\baselinestretch{2}} +\let\if@instindent\iffalse +\DeclareOption{instindent}{\let\if@instindent\iftrue} +\let\if@smartand\iffalse +\DeclareOption{smartand}{\let\if@smartand\iftrue} +\let\if@spthms\iftrue +\DeclareOption{nospthms}{\let\if@spthms\iffalse} +\let\switch@texts\relax +\DeclareOption{deutsch}{\def\switch@texts{\ds@deutsch}} +\DeclareOption{francais}{\def\switch@texts{\ds@francais}} +% +\let\journalopt\@empty +\DeclareOption*{\InputIfFileExists{sv\CurrentOption.clo}{% +\let\journalopt\CurrentOption}{% +\ClassWarning{Springer-SVJour}{Specified option or subpackage +"\CurrentOption" not found -}\OptionNotUsed}} +\ExecuteOptions{a4paper,twoside,10pt,instindent} +\ProcessOptions +\ifx\journalopt\@empty +\ClassError{Springer-SVJour}{No valid journal specified in option list}{} +\expandafter\stop +\fi +% +\if@smartrunh\AtEndDocument{\islastpageeven\getlastpagenumber}\fi +% +\DeclareMathSymbol{\Gamma}{\mathalpha}{letters}{"00} +\DeclareMathSymbol{\Delta}{\mathalpha}{letters}{"01} +\DeclareMathSymbol{\Theta}{\mathalpha}{letters}{"02} +\DeclareMathSymbol{\Lambda}{\mathalpha}{letters}{"03} +\DeclareMathSymbol{\Xi}{\mathalpha}{letters}{"04} +\DeclareMathSymbol{\Pi}{\mathalpha}{letters}{"05} +\DeclareMathSymbol{\Sigma}{\mathalpha}{letters}{"06} +\DeclareMathSymbol{\Upsilon}{\mathalpha}{letters}{"07} +\DeclareMathSymbol{\Phi}{\mathalpha}{letters}{"08} +\DeclareMathSymbol{\Psi}{\mathalpha}{letters}{"09} +\DeclareMathSymbol{\Omega}{\mathalpha}{letters}{"0A} +% +\setlength\parindent{15\p@} +\setlength\smallskipamount{3\p@ \@plus 1\p@ \@minus 1\p@} +\setlength\medskipamount{6\p@ \@plus 2\p@ \@minus 2\p@} +\setlength\bigskipamount{12\p@ \@plus 4\p@ \@minus 4\p@} +\setlength\headheight{12\p@} +\setlength\headsep {16.74dd} +\setlength\topskip {10\p@} +\setlength\footskip{30\p@} +\setlength\maxdepth{.5\topskip} +% +\@settopoint\textwidth +\setlength\marginparsep {10\p@} +\setlength\marginparpush{5\p@} +\setlength\topmargin{-10pt} +\if@twocolumn + \setlength\oddsidemargin {-30\p@} + \setlength\evensidemargin{-30\p@} +\else + \setlength\oddsidemargin {\z@} + \setlength\evensidemargin{\z@} +\fi +\setlength\marginparwidth {48\p@} +\setlength\footnotesep{8\p@} +\setlength{\skip\footins}{9\p@ \@plus 4\p@ \@minus 2\p@} +\setlength\floatsep {12\p@ \@plus 2\p@ \@minus 2\p@} +\setlength\textfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@} +\setlength\intextsep {20\p@ \@plus 2\p@ \@minus 2\p@} +\setlength\dblfloatsep {12\p@ \@plus 2\p@ \@minus 2\p@} +\setlength\dbltextfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@} +\setlength\@fptop{0\p@} +\setlength\@fpsep{12\p@ \@plus 2\p@ \@minus 2\p@} +\setlength\@fpbot{0\p@ \@plus 1fil} +\setlength\@dblfptop{0\p@} +\setlength\@dblfpsep{12\p@ \@plus 2\p@ \@minus 2\p@} +\setlength\@dblfpbot{0\p@ \@plus 1fil} +\setlength\partopsep{2\p@ \@plus 1\p@ \@minus 1\p@} +\def\@listi{\leftmargin\leftmargini + \parsep \z@ + \topsep 6\p@ \@plus2\p@ \@minus4\p@ + \itemsep\parsep} +\let\@listI\@listi +\@listi +\def\@listii {\leftmargin\leftmarginii + \labelwidth\leftmarginii + \advance\labelwidth-\labelsep + \topsep \z@ + \parsep \topsep + \itemsep \parsep} +\def\@listiii{\leftmargin\leftmarginiii + \labelwidth\leftmarginiii + \advance\labelwidth-\labelsep + \topsep \z@ + \parsep \topsep + \itemsep \parsep} +\def\@listiv {\leftmargin\leftmarginiv + \labelwidth\leftmarginiv + \advance\labelwidth-\labelsep} +\def\@listv {\leftmargin\leftmarginv + \labelwidth\leftmarginv + \advance\labelwidth-\labelsep} +\def\@listvi {\leftmargin\leftmarginvi + \labelwidth\leftmarginvi + \advance\labelwidth-\labelsep} +% +\setlength\lineskip{1\p@} +\setlength\normallineskip{1\p@} +\renewcommand\baselinestretch{} +\setlength\parskip{0\p@ \@plus \p@} +\@lowpenalty 51 +\@medpenalty 151 +\@highpenalty 301 +\setcounter{topnumber}{4} +\renewcommand\topfraction{.9} +\setcounter{bottomnumber}{2} +\renewcommand\bottomfraction{.7} +\setcounter{totalnumber}{6} +\renewcommand\textfraction{.1} +\renewcommand\floatpagefraction{.85} +\setcounter{dbltopnumber}{3} +\renewcommand\dbltopfraction{.85} +\renewcommand\dblfloatpagefraction{.85} +\def\ps@headings{% + \let\@oddfoot\@empty\let\@evenfoot\@empty + \def\@evenhead{\small\rlap{\thepage}\hfil\leftmark\unskip}% + \def\@oddhead{\small\rightmark\hfil\llap{\thepage}}% + \let\@mkboth\@gobbletwo + \let\sectionmark\@gobble + \let\subsectionmark\@gobble + } +% make indentations changeable +\def\setitemindent#1{\settowidth{\labelwidth}{#1}% + \leftmargini\labelwidth + \advance\leftmargini\labelsep + \def\@listi{\leftmargin\leftmargini + \labelwidth\leftmargini\advance\labelwidth by -\labelsep + \parsep=\parskip + \topsep=\medskipamount + \itemsep=\parskip \advance\itemsep by -\parsep}} +\def\setitemitemindent#1{\settowidth{\labelwidth}{#1}% + \leftmarginii\labelwidth + \advance\leftmarginii\labelsep +\def\@listii{\leftmargin\leftmarginii + \labelwidth\leftmarginii\advance\labelwidth by -\labelsep + \parsep=\parskip + \topsep=\z@ + \itemsep=\parskip \advance\itemsep by -\parsep}} +% labels of description +\def\descriptionlabel#1{\hspace\labelsep #1\hfil} +% adjusted environment "description" +% if an optional parameter (at the first two levels of lists) +% is present, its width is considered to be the widest mark +% throughout the current list. +\def\description{\@ifnextchar[{\@describe}{\list{}{\labelwidth\z@ + \itemindent-\leftmargin \let\makelabel\descriptionlabel}}} +\let\enddescription\endlist +% +\def\describelabel#1{#1\hfil} +\def\@describe[#1]{\relax\ifnum\@listdepth=0 +\setitemindent{#1}\else\ifnum\@listdepth=1 +\setitemitemindent{#1}\fi\fi +\list{--}{\let\makelabel\describelabel}} +% +\newdimen\logodepth +\logodepth=2.2cm +\newdimen\headerboxheight +\headerboxheight=180pt % 18 10.5dd-lines - 2\baselineskip +\newdimen\betweenumberspace % dimension for space between +\betweenumberspace=3.33pt % number and text of titles. +\newdimen\aftertext % dimension for space after +\aftertext=5pt % text of title. +\newdimen\headlineindent % dimension for space between +\headlineindent=1.166cm % number and text of headings. +\def\andname{and} +\if@mathematic + \def\runinend{\enspace} + \def\floatcounterend{\enspace} + \def\sectcounterend{} +\else + \def\runinend{.} + \def\floatcounterend{.\ } + \def\sectcounterend{.} +\fi +\def\keywordname{{\bfseries Key words\runinend}} +\def\lastandname{, and} +\def\mailname{{\itshape Correspondence to\/}:} +\def\email#1{{e-mail: \tt#1}} +\def\keywords#1{\par\addvspace\baselineskip\noindent\keywordname\enspace +\ignorespaces#1} +% +\newcounter{inst} +\newcounter{auth} +\def\authdepth{2} +\newdimen\instindent +\newbox\authrun +\newtoks\authorrunning +\newbox\titrun +\newtoks\titlerunning +\def\authorfont{\bfseries} + +\def\combirunning#1{\gdef\@combi{#1}} +\def\@combi{} +\newbox\combirun +% +\def\ps@last{\def\@evenhead{\small\rlap{\thepage}\hfil +\lastevenhead}} +\newcounter{lastpage} +\def\islastpageeven{\@ifundefined{lastpagenumber} +{\setcounter{lastpage}{0}}{\setcounter{lastpage}{\lastpagenumber}} +\ifnum\value{lastpage}>0 + \ifodd\value{lastpage}% + \else + \if@smartrunh + \thispagestyle{last}% + \fi + \fi +\fi} +\def\getlastpagenumber{\clearpage +\addtocounter{page}{-1}% + \immediate\write\@auxout{\string\gdef\string\lastpagenumber{\thepage}}% + \immediate\write\@auxout{\string\newlabel{LastPage}{{}{\thepage}}}% + \addtocounter{page}{1}} + +\def\journalname#1{\gdef\@journalname{#1}} + +\def\dedication#1{\gdef\@dedic{#1}} +\def\@dedic{} + +\let\@date\undefined + +\def\institute#1{\gdef\@institute{#1}} + +\def\institutename{\par + \begingroup + \parindent=0pt + \parskip=0pt + \setcounter{inst}{1}% + \def\and{\par\stepcounter{inst}% + \if@instindent\hangindent\instindent\fi + \noindent + \hbox to\instindent{\hss\smash{$^{\theinst}$}\enspace}\ignorespaces}% + \setbox0=\vbox{\def\thanks##1{}\@institute} + \ifnum\value{inst}>9\relax\setbox0=\hbox{$^{88}$\enspace}% + \else\setbox0=\hbox{$^{8}$\enspace}\fi + \instindent=\wd0\relax + \ifnum\value{inst}=1\relax + \else + \setcounter{inst}{1}% + \if@instindent\hangindent\instindent\fi + \noindent + \hbox to\instindent{\hss\smash{$^{\theinst}$}\enspace}\ignorespaces + \fi + \small + \ignorespaces + \@institute\par + \endgroup} + +\def\offprints#1{\begingroup +\def\protect{\noexpand\protect\noexpand}\xdef\@thanks{\@thanks +\protect\footnotetext[0]{\unskip\hskip-15pt{\itshape Send offprint requests +to\/}: \ignorespaces#1}}\endgroup\ignorespaces} + +\def\mail#1{\gdef\@mail{#1}} +\def\@mail{} + +\def\@thanks{} + +\def\@fnsymbol#1{\ifcase#1\or\star\or{\star\star}\or{\star\star\star}% + \or \dagger\or \ddagger\or + \mathchar "278\or \mathchar "27B\or \|\or **\or \dagger\dagger + \or \ddagger\ddagger \else\@ctrerr\fi\relax} + +\def\inst#1{\unskip$^{#1}$} +\def\fnmsep{\unskip$^,$} + +\def\subtitle#1{\gdef\@subtitle{#1}} +\def\@subtitle{} + +\def\headnote#1{\gdef\@headnote{#1}} +\def\@headnote{} + +\def\ch@ckobl#1#2{\@ifundefined{@#1} + {\typeout{SVJour warning: Missing +\expandafter\string\csname#1\endcsname}% + \csname #1\endcsname{#2}} + {}} +% +\def\ProcessRunnHead{% + \def\\{\unskip\ \ignorespaces}\def\inst##1{\unskip{}}% + \def\thanks##1{\unskip{}}\def\fnmsep{\unskip}% + \instindent=\textwidth + \advance\instindent by-\headlineindent + \if!\the\titlerunning!\else + \edef\@title{\the\titlerunning}% + \fi + \global\setbox\titrun=\hbox{\small\rmfamily\unboldmath\ignorespaces\@title + \unskip}% + \ifdim\wd\titrun>\instindent + \typeout{^^JSVJour Warning: Title too long for running head.}% + \typeout{Please supply a shorter form with \string\titlerunning + \space prior to \string\maketitle}% + \global\setbox\titrun=\hbox{\small\rmfamily + Title Suppressed Due to Excessive Length}% + \fi + \xdef\@title{\copy\titrun}% +% + \if!\the\authorrunning! + \else + \setcounter{auth}{1}% + \edef\@author{\the\authorrunning}% + \fi + \ifnum\value{auth}>\authdepth + \def\stripauthor##1\and##2\endauthor{% + \protected@xdef\@author{##1\unskip\unskip\if!##2!\else\ et al.\fi}}% + \expandafter\stripauthor\@author\and\endauthor + \else + \gdef\and{\unskip, \ignorespaces}% + {\def\and{\noexpand\protect\noexpand\and}% + \protected@xdef\@author{\@author}} + \fi + \global\setbox\authrun=\hbox{\small\rmfamily\unboldmath\ignorespaces + \@author\unskip}% + \ifdim\wd\authrun>\instindent + \typeout{^^JSVJour Warning: Author name(s) too long for running head. + ^^JPlease supply a shorter form with \string\authorrunning + \space prior to \string\maketitle}% + \global\setbox\authrun=\hbox{\small\rmfamily Please give a shorter version + with: {\tt\string\authorrunning\space and + \string\titlerunning\space prior to \string\maketitle}}% + \fi + \xdef\@author{\copy\authrun}% + \markboth{\@author}{\@title}% +} +% +\def\maketitle{\par +\ch@ckobl{journalname}{Noname} +\ch@ckobl{date}{The date of receipt and acceptance will be inserted by +the editor} +\ch@ckobl{title}{A title should be given} +\ch@ckobl{author}{Name(s) and initial(s) of author(s) should be given} +\ch@ckobl{institute}{Address(es) of author(s) should be given} +\begingroup +% + \renewcommand\thefootnote{\@fnsymbol\c@footnote}% + \def\@makefnmark{$^{\@thefnmark}$}% +% + \def\lastand{\ifnum\value{inst}=2\relax + \unskip{} \andname\ + \else + \unskip, \andname\ + \fi}% + \def\and{\stepcounter{auth}\relax + \if@smartand + \ifnum\value{auth}=\value{inst}% + \lastand + \else + \unskip, + \fi + \else + \unskip, + \fi}% + \ifnum \col@number=\@ne + \@maketitle + \else + \twocolumn[\@maketitle]% + \fi + \thispagestyle{empty} + \global\@topnum\z@ + \@thanks + \if!\@mail!\else + \footnotetext[0]{\kern-\bibindent\mailname\ + \ignorespaces\@mail}% + \fi +% + \if@runhead + \ProcessRunnHead + \if@smartrunh + \instindent=\textwidth + \advance\instindent by-\headlineindent + \if!\@combi!% + \global\setbox\combirun=\hbox{\small\rmfamily\unboldmath\ignorespaces + \@author\unskip: \@title\unskip}% + \def\@tempa{Automatically generated running head}% + \else + \global\setbox\combirun=\hbox{\small\rmfamily\unboldmath\ignorespaces + \@combi\unskip}% + \def\@tempa{With \string\combirunning\space supplied running head}% + \fi + \ifdim\wd\combirun>\instindent + \typeout{^^JSVJour Warning: \@tempa}% + \typeout{for a possible last even numbered page is too long.}% + \typeout{Please supply a shorter form with \string\combirunning + \space prior to \string\maketitle.}% + \global\setbox\combirun=\hbox{\small\rmfamily + Title Suppressed Due to Excessive Length -- + supply \ttfamily\char92combirunning}% + \fi + \xdef\lastevenhead{\copy\combirun}% + \fi + \fi +% + \endgroup + \setcounter{footnote}{0} + \global\let\thanks\relax + \global\let\maketitle\relax + \global\let\@maketitle\relax + \global\let\@thanks\@empty + \global\let\@author\@empty + \global\let\@date\@empty + \global\let\@title\@empty + \global\let\@subtitle\@empty + \global\let\title\relax + \global\let\author\relax + \global\let\date\relax + \global\let\and\relax} + +\def\makeheadbox{{% +\hbox to0pt{\vbox{\baselineskip=10dd\hrule\hbox +to\hsize{\vrule\kern3pt\vbox{\kern3pt +\hbox{\bfseries\@journalname\ manuscript No.} +\hbox{(will be inserted by the editor)} +\kern3pt}\hfil\kern3pt\vrule}\hrule}% +\hss}}} + +\def\@maketitle{\newpage + \normalfont + \vbox to0pt{\vskip-40pt + \nointerlineskip + \makeheadbox\vss}\nointerlineskip + \setbox\authrun=\vbox\bgroup + {\Large \bfseries\boldmath + \hrule\@height\logodepth\@width\z@ + \pretolerance=10000 + \rightskip=0pt plus 4cm + \if!\@headnote!\else + \noindent + {\normalfont\em\ignorespaces\@headnote\par}\vskip 3.5mm + \fi + \noindent\ignorespaces + \@title \par}\vskip 11.24pt\relax + \if!\@subtitle!\else + {\large\bfseries\boldmath + \pretolerance=10000 + \rightskip=0pt plus 3cm + \noindent\ignorespaces\@subtitle \par}\vskip 11.24pt + \fi + \normalfont\authorfont + \lineskip .5em + \setbox0=\vbox{\setcounter{auth}{1}\def\and{\stepcounter{auth} }% + \hfuzz=2\textwidth\def\thanks##1{}\@author}% + \value{inst}=\value{auth}% + \setcounter{auth}{1}% + \rightskip=0pt plus 2cm + \noindent\ignorespaces\@author\vskip7.23pt + \rightskip=0pt\relax + \normalfont\small\rmfamily + \institutename + \vskip 12.85pt \noindent\@date + \if!\@dedic!\else + \par + \small\itshape + \addvspace\baselineskip + \noindent\@dedic + \fi + \egroup % end of header box + \@tempdima=\headerboxheight + \advance\@tempdima by-\ht\authrun + \ifdim\@tempdima>0pt + \vrule width0pt height\@tempdima + \fi + \unvbox\authrun + \global\@minipagetrue + \global\everypar{\global\@minipagefalse\global\everypar{}} + \vskip22.47pt +} +% +\if@mathematic + \def\vec#1{\ensuremath{\mathchoice + {\mbox{\boldmath$\displaystyle\mathbf{#1}$}} + {\mbox{\boldmath$\textstyle\mathbf{#1}$}} + {\mbox{\boldmath$\scriptstyle\mathbf{#1}$}} + {\mbox{\boldmath$\scriptscriptstyle\mathbf{#1}$}}}} +\else + \def\vec#1{\ensuremath{\mathchoice + {\mbox{\boldmath$\displaystyle#1$}} + {\mbox{\boldmath$\textstyle#1$}} + {\mbox{\boldmath$\scriptstyle#1$}} + {\mbox{\boldmath$\scriptscriptstyle#1$}}}} +\fi +% +\def\tens#1{\ensuremath{\mathsf{#1}}} +% +\setcounter{secnumdepth}{3} +\newcounter {section} +\newcounter {subsection}[section] +\newcounter {subsubsection}[subsection] +\newcounter {paragraph}[subsubsection] +\newcounter {subparagraph}[paragraph] +\renewcommand\thesection {\@arabic\c@section} +\renewcommand\thesubsection {\thesection.\@arabic\c@subsection} +\renewcommand\thesubsubsection{\thesubsection.\@arabic\c@subsubsection} +\renewcommand\theparagraph {\thesubsubsection.\@arabic\c@paragraph} +\renewcommand\thesubparagraph {\theparagraph.\@arabic\c@subparagraph} +% +\def\@hangfrom#1{\setbox\@tempboxa\hbox{#1}% + \hangindent \z@\noindent\box\@tempboxa} + +\def\@seccntformat#1{\csname the#1\endcsname\sectcounterend +\hskip\betweenumberspace} + +\def\@sect#1#2#3#4#5#6[#7]#8{% + \ifnum #2>\c@secnumdepth + \let\@svsec\@empty + \else + \refstepcounter{#1}% + \protected@edef\@svsec{\@seccntformat{#1}\relax}% + \fi + \@tempskipa #5\relax + \ifdim \@tempskipa>\z@ + \begingroup + #6{% + \@hangfrom{\hskip #3\relax\@svsec}% + \raggedright + \hyphenpenalty \@M% + \interlinepenalty \@M #8\@@par}% + \endgroup + \csname #1mark\endcsname{#7}% + \addcontentsline{toc}{#1}{% + \ifnum #2>\c@secnumdepth \else + \protect\numberline{\csname the#1\endcsname\sectcounterend}% + \fi + #7}% + \else + \def\@svsechd{% + #6{\hskip #3\relax + \@svsec #8\hskip\aftertext}% + \csname #1mark\endcsname{#7}% + \addcontentsline{toc}{#1}{% + \ifnum #2>\c@secnumdepth \else + \protect\numberline{\csname the#1\endcsname}% + \fi + #7}}% + \fi + \@xsect{#5}} + +% +% measures and setting of sections +% +\def\section{\@startsection{section}{1}{\z@}% + {-21dd plus-4pt minus-4pt}{10.5dd plus 4pt + minus4pt}{\normalsize\bfseries\boldmath}} +\def\subsection{\@startsection{subsection}{2}{\z@}% + {-21dd plus-4pt minus-4pt}{10.5dd plus 4pt + minus4pt}{\normalsize\itshape}} +\def\subsubsection{\@startsection{subsubsection}{3}{\z@}% + {-13dd plus-4pt minus-4pt}{-5.5pt}{\normalsize\itshape}} +\def\paragraph{\@startsection{paragraph}{4}{\z@}% + {-13pt plus-4pt minus-4pt}{-5.5pt}{\normalsize\itshape}} + +\setlength\leftmargini {\parindent} +\leftmargin \leftmargini +\setlength\leftmarginii {\parindent} +\setlength\leftmarginiii {1.87em} +\setlength\leftmarginiv {1.7em} +\setlength\leftmarginv {.5em} +\setlength\leftmarginvi {.5em} +\setlength \labelsep {.5em} +\setlength \labelwidth{\leftmargini} +\addtolength\labelwidth{-\labelsep} +\@beginparpenalty -\@lowpenalty +\@endparpenalty -\@lowpenalty +\@itempenalty -\@lowpenalty +\renewcommand\theenumi{\@arabic\c@enumi} +\renewcommand\theenumii{\@alph\c@enumii} +\renewcommand\theenumiii{\@roman\c@enumiii} +\renewcommand\theenumiv{\@Alph\c@enumiv} +\newcommand\labelenumi{\theenumi.} +\newcommand\labelenumii{(\theenumii)} +\newcommand\labelenumiii{\theenumiii.} +\newcommand\labelenumiv{\theenumiv.} +\renewcommand\p@enumii{\theenumi} +\renewcommand\p@enumiii{\theenumi(\theenumii)} +\renewcommand\p@enumiv{\p@enumiii\theenumiii} +\newcommand\labelitemi{\normalfont\bfseries --} +\newcommand\labelitemii{\normalfont\bfseries --} +\newcommand\labelitemiii{$\m@th\bullet$} +\newcommand\labelitemiv{$\m@th\cdot$} + +\if@spthms +% definition of the "\spnewtheorem" command. +% +% Usage: +% +% \spnewtheorem{env_nam}{caption}[within]{cap_font}{body_font} +% or \spnewtheorem{env_nam}[numbered_like]{caption}{cap_font}{body_font} +% or \spnewtheorem*{env_nam}{caption}{cap_font}{body_font} +% +% New is "cap_font" and "body_font". It stands for +% fontdefinition of the caption and the text itself. +% +% "\spnewtheorem*" gives a theorem without number. +% +% A defined spnewthoerem environment is used as described +% by Lamport. +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\def\@thmcountersep{} +\def\@thmcounterend{} +\newdimen\spthmsep \spthmsep=3pt + +\def\spnewtheorem{\@ifstar{\@sthm}{\@Sthm}} + +% definition of \spnewtheorem with number + +\def\@spnthm#1#2{% + \@ifnextchar[{\@spxnthm{#1}{#2}}{\@spynthm{#1}{#2}}} +\def\@Sthm#1{\@ifnextchar[{\@spothm{#1}}{\@spnthm{#1}}} + +\def\@spxnthm#1#2[#3]#4#5{\expandafter\@ifdefinable\csname #1\endcsname + {\@definecounter{#1}\@addtoreset{#1}{#3}% + \expandafter\xdef\csname the#1\endcsname{\expandafter\noexpand + \csname the#3\endcsname \noexpand\@thmcountersep \@thmcounter{#1}}% + \expandafter\xdef\csname #1name\endcsname{#2}% + \global\@namedef{#1}{\@spthm{#1}{\csname #1name\endcsname}{#4}{#5}}% + \global\@namedef{end#1}{\@endtheorem}}} + +\def\@spynthm#1#2#3#4{\expandafter\@ifdefinable\csname #1\endcsname + {\@definecounter{#1}% + \expandafter\xdef\csname the#1\endcsname{\@thmcounter{#1}}% + \expandafter\xdef\csname #1name\endcsname{#2}% + \global\@namedef{#1}{\@spthm{#1}{\csname #1name\endcsname}{#3}{#4}}% + \global\@namedef{end#1}{\@endtheorem}}} + +\def\@spothm#1[#2]#3#4#5{% + \@ifundefined{c@#2}{\@latexerr{No theorem environment `#2' defined}\@eha}% + {\expandafter\@ifdefinable\csname #1\endcsname + {\global\@namedef{the#1}{\@nameuse{the#2}}% + \expandafter\xdef\csname #1name\endcsname{#3}% + \global\@namedef{#1}{\@spthm{#2}{\csname #1name\endcsname}{#4}{#5}}% + \global\@namedef{end#1}{\@endtheorem}}}} + +\def\@spthm#1#2#3#4{\topsep 7\p@ \@plus2\p@ \@minus4\p@ +\labelsep=\spthmsep\refstepcounter{#1}% +\@ifnextchar[{\@spythm{#1}{#2}{#3}{#4}}{\@spxthm{#1}{#2}{#3}{#4}}} + +\def\@spxthm#1#2#3#4{\@spbegintheorem{#2}{\csname the#1\endcsname}{#3}{#4}% + \ignorespaces} + +\def\@spythm#1#2#3#4[#5]{\@spopargbegintheorem{#2}{\csname + the#1\endcsname}{#5}{#3}{#4}\ignorespaces} + +\def\@spbegintheorem#1#2#3#4{\trivlist + \item[\hskip\labelsep{#3#1\ #2\@thmcounterend}]#4} + +\def\@spopargbegintheorem#1#2#3#4#5{\trivlist + \item[\hskip\labelsep{#4#1\ #2}]{#4(#3)\@thmcounterend\ }#5} + +% definition of \spnewtheorem* without number + +\def\@sthm#1#2{\@Ynthm{#1}{#2}} + +\def\@Ynthm#1#2#3#4{\expandafter\@ifdefinable\csname #1\endcsname + {\global\@namedef{#1}{\@Thm{\csname #1name\endcsname}{#3}{#4}}% + \expandafter\xdef\csname #1name\endcsname{#2}% + \global\@namedef{end#1}{\@endtheorem}}} + +\def\@Thm#1#2#3{\topsep 7\p@ \@plus2\p@ \@minus4\p@ +\@ifnextchar[{\@Ythm{#1}{#2}{#3}}{\@Xthm{#1}{#2}{#3}}} + +\def\@Xthm#1#2#3{\@Begintheorem{#1}{#2}{#3}\ignorespaces} + +\def\@Ythm#1#2#3[#4]{\@Opargbegintheorem{#1} + {#4}{#2}{#3}\ignorespaces} + +\def\@Begintheorem#1#2#3{#3\trivlist + \item[\hskip\labelsep{#2#1\@thmcounterend}]} + +\def\@Opargbegintheorem#1#2#3#4{#4\trivlist + \item[\hskip\labelsep{#3#1}]{#3(#2)\@thmcounterend\ }} + +\if@envcntsect + \def\@thmcountersep{.} + \spnewtheorem{theorem}{Theorem}[section]{\bfseries}{\itshape} +\else + \spnewtheorem{theorem}{Theorem}{\bfseries}{\itshape} + \if@envcntreset + \@addtoreset{theorem}{section} + \else + \@addtoreset{theorem}{chapter} + \fi +\fi + +%definition of divers theorem environments +\spnewtheorem*{claim}{Claim}{\itshape}{\rmfamily} +\spnewtheorem*{proof}{Proof}{\itshape}{\rmfamily} +\if@envcntsame % alle Umgebungen wie Theorem. + \def\spn@wtheorem#1#2#3#4{\@spothm{#1}[theorem]{#2}{#3}{#4}} +\else % alle Umgebungen mit eigenem Zaehler + \if@envcntsect % mit section numeriert + \def\spn@wtheorem#1#2#3#4{\@spxnthm{#1}{#2}[section]{#3}{#4}} + \else % nicht mit section numeriert + \if@envcntreset + \def\spn@wtheorem#1#2#3#4{\@spynthm{#1}{#2}{#3}{#4} + \@addtoreset{#1}{section}} + \else + \let\spn@wtheorem=\@spynthm + \fi + \fi +\fi +\spn@wtheorem{case}{Case}{\itshape}{\rmfamily} +\spn@wtheorem{conjecture}{Conjecture}{\itshape}{\rmfamily} +\spn@wtheorem{corollary}{Corollary}{\bfseries}{\itshape} +\spn@wtheorem{definition}{Definition}{\bfseries}{\itshape} +\spn@wtheorem{example}{Example}{\itshape}{\rmfamily} +\spn@wtheorem{exercise}{Exercise}{\bfseries}{\rmfamily} +\spn@wtheorem{lemma}{Lemma}{\bfseries}{\itshape} +\spn@wtheorem{note}{Note}{\itshape}{\rmfamily} +\spn@wtheorem{problem}{Problem}{\bfseries}{\rmfamily} +\spn@wtheorem{property}{Property}{\itshape}{\rmfamily} +\spn@wtheorem{proposition}{Proposition}{\bfseries}{\itshape} +\spn@wtheorem{question}{Question}{\itshape}{\rmfamily} +\spn@wtheorem{solution}{Solution}{\bfseries}{\rmfamily} +\spn@wtheorem{remark}{Remark}{\itshape}{\rmfamily} +% +\newenvironment{theopargself} + {\def\@spopargbegintheorem##1##2##3##4##5{\trivlist + \item[\hskip\labelsep{##4##1\ ##2}]{##4##3\@thmcounterend\ }##5} + \def\@Opargbegintheorem##1##2##3##4{##4\trivlist + \item[\hskip\labelsep{##3##1}]{##3##2\@thmcounterend\ }}}{} +\newenvironment{theopargself*} + {\def\@spopargbegintheorem##1##2##3##4##5{\trivlist + \item[\hskip\labelsep{##4##1\ ##2}]{\hspace*{-\labelsep}##4##3\@thmcounterend}##5} + \def\@Opargbegintheorem##1##2##3##4{##4\trivlist + \item[\hskip\labelsep{##3##1}]{\hspace*{-\labelsep}##3##2\@thmcounterend}}}{} +\fi + +\def\@takefromreset#1#2{% + \def\@tempa{#1}% + \let\@tempd\@elt + \def\@elt##1{% + \def\@tempb{##1}% + \ifx\@tempa\@tempb\else + \@addtoreset{##1}{#2}% + \fi}% + \expandafter\expandafter\let\expandafter\@tempc\csname cl@#2\endcsname + \expandafter\def\csname cl@#2\endcsname{}% + \@tempc + \let\@elt\@tempd} + +\def\squareforqed{\hbox{\rlap{$\sqcap$}$\sqcup$}} +\def\qed{\ifmmode\else\unskip\quad\fi\squareforqed} +\def\smartqed{\def\qed{\ifmmode\squareforqed\else{\unskip\nobreak\hfil +\penalty50\hskip1em\null\nobreak\hfil\squareforqed +\parfillskip=0pt\finalhyphendemerits=0\endgraf}\fi}} + +% Define `abstract' environment +\def\abstract{\topsep=0pt\partopsep=0pt\parsep=0pt\itemsep=0pt\relax +\trivlist\item[\hskip\labelsep +{\bfseries\abstractname}]\if!\abstractname!\hskip-\labelsep\fi} +\if@twocolumn + \def\endabstract{\endtrivlist\addvspace{5mm}\strich} + \def\strich{\hrule\vskip3ptplus12pt\null} +\else + \def\endabstract{\endtrivlist\addvspace{3mm}} +\fi +% +\newenvironment{verse} + {\let\\\@centercr + \list{}{\itemsep \z@ + \itemindent -1.5em% + \listparindent\itemindent + \rightmargin \leftmargin + \advance\leftmargin 1.5em}% + \item\relax} + {\endlist} +\newenvironment{quotation} + {\list{}{\listparindent 1.5em% + \itemindent \listparindent + \rightmargin \leftmargin + \parsep \z@ \@plus\p@}% + \item\relax} + {\endlist} +\newenvironment{quote} + {\list{}{\rightmargin\leftmargin}% + \item\relax} + {\endlist} +\newcommand\appendix{\par + \setcounter{section}{0}% + \setcounter{subsection}{0}% + \renewcommand\thesection{\@Alph\c@section}} +\setlength\arraycolsep{1.5\p@} +\setlength\tabcolsep{6\p@} +\setlength\arrayrulewidth{.4\p@} +\setlength\doublerulesep{2\p@} +\setlength\tabbingsep{\labelsep} +\skip\@mpfootins = \skip\footins +\setlength\fboxsep{3\p@} +\setlength\fboxrule{.4\p@} +\renewcommand\theequation{\@arabic\c@equation} +\newcounter{figure} +\renewcommand\thefigure{\@arabic\c@figure} +\def\fps@figure{tbp} +\def\ftype@figure{1} +\def\ext@figure{lof} +\def\fnum@figure{\figurename~\thefigure} +\newenvironment{figure} + {\@float{figure}} + {\end@float} +\newenvironment{figure*} + {\@dblfloat{figure}} + {\end@dblfloat} +\newcounter{table} +\renewcommand\thetable{\@arabic\c@table} +\def\fps@table{tbp} +\def\ftype@table{2} +\def\ext@table{lot} +\def\fnum@table{\tablename~\thetable} +\newenvironment{table} + {\@float{table}} + {\end@float} +\newenvironment{table*} + {\@dblfloat{table}} + {\end@dblfloat} + +\def \@floatboxreset {% + \reset@font + \small + \@setnobreak + \@setminipage +} + +\newlength\abovecaptionskip +\newlength\belowcaptionskip +\setlength\abovecaptionskip{10\p@} +\setlength\belowcaptionskip{0\p@} +\newcommand\leftlegendglue{} + +\def\fig@type{figure} + +\newdimen\figcapgap\figcapgap=3pt +\newdimen\tabcapgap\tabcapgap=5.5pt + +\@ifundefined{floatlegendstyle}{\def\floatlegendstyle{\bfseries}}{} + +\long\def\@caption#1[#2]#3{\par\addcontentsline{\csname + ext@#1\endcsname}{#1}{\protect\numberline{\csname + the#1\endcsname}{\ignorespaces #2}}\begingroup + \@parboxrestore + \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par + \endgroup} + +\def\capstrut{\vrule\@width\z@\@height\topskip} + +\@ifundefined{captionstyle}{\def\captionstyle{\normalfont\small}}{} + +\long\def\@makecaption#1#2{% + \captionstyle + \ifx\@captype\fig@type + \vskip\figcapgap + \fi + \setbox\@tempboxa\hbox{{\floatlegendstyle #1\floatcounterend}% + \capstrut #2}% + \ifdim \wd\@tempboxa >\hsize + {\floatlegendstyle #1\floatcounterend}\capstrut #2\par + \else + \hbox to\hsize{\leftlegendglue\unhbox\@tempboxa\hfil}% + \fi + \ifx\@captype\fig@type\else + \vskip\tabcapgap + \fi} + +\newdimen\figgap\figgap=1cc +\long\def\@makesidecaption#1#2{% + \parbox[b]{\@tempdima}{\captionstyle{\floatlegendstyle + #1\floatcounterend}#2}} +\def\sidecaption#1\caption{% +\setbox\@tempboxa=\hbox{#1\unskip}% +\if@twocolumn + \ifdim\hsize<\textwidth\else + \ifdim\wd\@tempboxa<\columnwidth + \typeout{Double column float fits into single column - + ^^Jyou'd better switch the environment. }% + \fi + \fi +\fi +\@tempdima=\hsize +\advance\@tempdima by-\figgap +\advance\@tempdima by-\wd\@tempboxa +\ifdim\@tempdima<3cm + \typeout{\string\sidecaption: No sufficient room for the legend; + using normal \string\caption. }% + \unhbox\@tempboxa + \let\@capcommand=\@caption +\else + \let\@capcommand=\@sidecaption + \leavevmode + \unhbox\@tempboxa + \hfill +\fi +\refstepcounter\@captype +\@dblarg{\@capcommand\@captype}} + +\long\def\@sidecaption#1[#2]#3{\addcontentsline{\csname + ext@#1\endcsname}{#1}{\protect\numberline{\csname + the#1\endcsname}{\ignorespaces #2}}\begingroup + \@parboxrestore + \@makesidecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par + \endgroup} + +% Define `acknowledgement' environment +\def\acknowledgement{\par\addvspace{17pt}\small\rmfamily +\trivlist\if!\ackname!\item[]\else +\item[\hskip\labelsep +{\it\ackname}]\fi} +\def\endacknowledgement{\endtrivlist\addvspace{6pt}} +% Define `noteadd' environment +\def\noteadd{\par\addvspace{17pt}\small\rmfamily +\trivlist\item[\hskip\labelsep +{\itshape\noteaddname}]} +\def\endnoteadd{\endtrivlist\addvspace{6pt}} + +\DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm} +\DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf} +\DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt} +\DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf} +\DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit} +\DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl} +\DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc} +\DeclareRobustCommand*\cal{\@fontswitch\relax\mathcal} +\DeclareRobustCommand*\mit{\@fontswitch\relax\mathnormal} +\newcommand\@pnumwidth{1.55em} +\newcommand\@tocrmarg{2.55em} +\newcommand\@dotsep{4.5} +\setcounter{tocdepth}{1} +\newcommand\tableofcontents{% + \section*{\contentsname}% + \@starttoc{toc}% + \addtocontents{toc}{\begingroup\protect\small}% + \AtEndDocument{\addtocontents{toc}{\endgroup}}% + } +\newcommand*\l@part[2]{% + \ifnum \c@tocdepth >-2\relax + \addpenalty\@secpenalty + \addvspace{2.25em \@plus\p@}% + \begingroup + \setlength\@tempdima{3em}% + \parindent \z@ \rightskip \@pnumwidth + \parfillskip -\@pnumwidth + {\leavevmode + \large \bfseries #1\hfil \hb@xt@\@pnumwidth{\hss #2}}\par + \nobreak + \if@compatibility + \global\@nobreaktrue + \everypar{\global\@nobreakfalse\everypar{}}% + \fi + \endgroup + \fi} +\newcommand*\l@section{\@dottedtocline{1}{0pt}{1.5em}} +\newcommand*\l@subsection{\@dottedtocline{2}{1.5em}{2.3em}} +\newcommand*\l@subsubsection{\@dottedtocline{3}{3.8em}{3.2em}} +\newcommand*\l@paragraph{\@dottedtocline{4}{7.0em}{4.1em}} +\newcommand*\l@subparagraph{\@dottedtocline{5}{10em}{5em}} +\newcommand\listoffigures{% + \section*{\listfigurename + \@mkboth{\listfigurename}% + {\listfigurename}}% + \@starttoc{lof}% + } +\newcommand*\l@figure{\@dottedtocline{1}{1.5em}{2.3em}} +\newcommand\listoftables{% + \section*{\listtablename + \@mkboth{\listtablename}{\listtablename}}% + \@starttoc{lot}% + } +\let\l@table\l@figure +\newdimen\bibindent +\setlength\bibindent{\parindent} +\def\@biblabel#1{#1.} +\def\@lbibitem[#1]#2{\item[{[#1]}\hfill]\if@filesw + {\let\protect\noexpand + \immediate + \write\@auxout{\string\bibcite{#2}{#1}}}\fi\ignorespaces} +\newenvironment{thebibliography}[1] + {\section*{\refname + \@mkboth{\refname}{\refname}}\small + \list{\@biblabel{\@arabic\c@enumiv}}% + {\settowidth\labelwidth{\@biblabel{#1}}% + \leftmargin\labelwidth + \advance\leftmargin\labelsep + \@openbib@code + \usecounter{enumiv}% + \let\p@enumiv\@empty + \renewcommand\theenumiv{\@arabic\c@enumiv}}% + \sloppy\clubpenalty4000\widowpenalty4000% + \sfcode`\.\@m} + {\def\@noitemerr + {\@latex@warning{Empty `thebibliography' environment}}% + \endlist} +% +\newcount\@tempcntc +\def\@citex[#1]#2{\if@filesw\immediate\write\@auxout{\string\citation{#2}}\fi + \@tempcnta\z@\@tempcntb\m@ne\def\@citea{}\@cite{\@for\@citeb:=#2\do + {\@ifundefined + {b@\@citeb}{\@citeo\@tempcntb\m@ne\@citea\def\@citea{,}{\bfseries + ?}\@warning + {Citation `\@citeb' on page \thepage \space undefined}}% + {\setbox\z@\hbox{\global\@tempcntc0\csname b@\@citeb\endcsname\relax}% + \ifnum\@tempcntc=\z@ \@citeo\@tempcntb\m@ne + \@citea\def\@citea{,\hskip0.1em\ignorespaces}\hbox{\csname b@\@citeb\endcsname}% + \else + \advance\@tempcntb\@ne + \ifnum\@tempcntb=\@tempcntc + \else\advance\@tempcntb\m@ne\@citeo + \@tempcnta\@tempcntc\@tempcntb\@tempcntc\fi\fi}}\@citeo}{#1}} +\def\@citeo{\ifnum\@tempcnta>\@tempcntb\else + \@citea\def\@citea{,\hskip0.1em\ignorespaces}% + \ifnum\@tempcnta=\@tempcntb\the\@tempcnta\else + {\advance\@tempcnta\@ne\ifnum\@tempcnta=\@tempcntb \else \def\@citea{--}\fi + \advance\@tempcnta\m@ne\the\@tempcnta\@citea\the\@tempcntb}\fi\fi} +% +\newcommand\newblock{\hskip .11em\@plus.33em\@minus.07em} +\let\@openbib@code\@empty +\newenvironment{theindex} + {\if@twocolumn + \@restonecolfalse + \else + \@restonecoltrue + \fi + \columnseprule \z@ + \columnsep 35\p@ + \twocolumn[\section*{\indexname}]% + \@mkboth{\indexname}{\indexname}% + \thispagestyle{plain}\parindent\z@ + \parskip\z@ \@plus .3\p@\relax + \let\item\@idxitem} + {\if@restonecol\onecolumn\else\clearpage\fi} +\newcommand\@idxitem{\par\hangindent 40\p@} +\newcommand\subitem{\@idxitem \hspace*{20\p@}} +\newcommand\subsubitem{\@idxitem \hspace*{30\p@}} +\newcommand\indexspace{\par \vskip 10\p@ \@plus5\p@ \@minus3\p@\relax} +\renewcommand\footnoterule{% + \kern-3\p@ + \hrule\@width.4\columnwidth + \kern2.6\p@} +\newcommand\@makefntext[1]{% + \noindent + \hb@xt@\bibindent{\hss\@makefnmark\enspace}#1} +% +\newcommand\contentsname{Contents} +\newcommand\listfigurename{List of Figures} +\newcommand\listtablename{List of Tables} +\newcommand\refname{References} +\newcommand\indexname{Index} +\newcommand\figurename{Fig.} +\newcommand\tablename{Table} +\newcommand\partname{Part} +\newcommand\appendixname{Appendix} +\newcommand\abstractname{Abstract\runinend} +\newcommand\ackname{Acknowledgements\runinend} +\newcommand\noteaddname{Note added in proof} +% French section +\def\ds@francais{% + \typeout{On parle francais.}% + \def\abstractname{R\'esum\'e\runinend}% + \def\ackname{Remerciements\runinend}% + \def\andname{et}% + \def\lastandname{ et}% + \def\appendixname{Appendice} + \def\chaptername{Chapitre}% + \def\claimname{Pr\'etention}% + \def\conjecturename{Hypoth\`ese}% + \def\contentsname{Table des mati\`eres}% + \def\corollaryname{Corollaire}% + \def\definitionname{D\'efinition}% + \def\examplename{Exemple}% + \def\exercisename{Exercice}% + \def\figurename{Fig.}% + \def\keywordname{{\bfseries Mots-cl\'e\runinend}} + \def\indexname{Index} + \def\lemmaname{Lemme}% + \def\contriblistname{Liste des contributeurs} + \def\listfigurename{Liste des figures}% + \def\listtablename{Liste des tables}% + \def\mailname{{\itshape Correspondence to\/}:} + \def\noteaddname{Note ajout\'ee \`a l'\'epreuve}% + \def\notename{Remarque}% + \def\partname{Partie}% + \def\problemname{Probl\`eme}% + \def\proofname{\'Epreuve}% + \def\propertyname{Caract\'eristique}% +%\def\propositionname{Proposition}% + \def\questionname{Question}% +%\def\refname{References}% + \def\remarkname{Remarque}% + \def\seename{voyez} + \def\solutionname{Solution}% +%\def\subclassname{{\it Subject Classifications\/}:} + \def\tablename{Tableau}% + \def\theoremname{Th\'eor\`eme}% +} +% +% German section +\def\ds@deutsch{\typeout{Man spricht deutsch.}% + \def\abstractname{Zusammenfassung\runinend}% + \def\ackname{Danksagung\runinend}% + \def\andname{und}% + \def\lastandname{ und}% + \def\appendixname{Anhang}% + \def\chaptername{Kapitel}% + \def\claimname{Behauptung}% + \def\conjecturename{Hypothese}% + \def\contentsname{Inhaltsverzeichnis}% + \def\corollaryname{Korollar}% +%\def\definitionname{Definition}% + \def\examplename{Beispiel}% + \def\exercisename{\"Ubung}% + \def\figurename{Abb.}% + \def\keywordname{{\bfseries Schl\"usselw\"orter\runinend}} + \def\indexname{Index} +%\def\lemmaname{Lemma}% + \def\contriblistname{Mitarbeiter} + \def\listfigurename{Abbildungsverzeichnis}% + \def\listtablename{Tabellenverzeichnis}% + \def\mailname{{\itshape Correspondence to\/}:} + \def\noteaddname{Nachtrag}% + \def\notename{Anmerkung}% + \def\partname{Teil}% +%\def\problemname{Problem}% + \def\proofname{Beweis}% + \def\propertyname{Eigenschaft}% +%\def\propositionname{Proposition}% + \def\questionname{Frage}% + \def\refname{Literatur}% + \def\remarkname{Anmerkung}% + \def\seename{siehe} + \def\solutionname{L\"osung}% +%\def\subclassname{{\it Subject Classifications\/}:} + \def\tablename{Tabelle}% +%\def\theoremname{Theorem}% +} +\AtBeginDocument{\switch@texts} +\newcommand\today{} +\edef\today{\ifcase\month\or + January\or February\or March\or April\or May\or June\or + July\or August\or September\or October\or November\or December\fi + \space\number\day, \number\year} +\setlength\columnsep{1.5cc} +\setlength\columnseprule{0\p@} +% +\frenchspacing +\clubpenalty=10000 +\widowpenalty=10000 +\def\thisbottomragged{\def\@textbottom{\vskip\z@ plus.0001fil +\global\let\@textbottom\relax}} +\pagestyle{headings} +\pagenumbering{arabic} +\if@twocolumn + \twocolumn +\fi +\if@referee + \makereferee +\fi +\flushbottom +\endinput +%% +%% End of file `svjour.cls'. diff --git a/macros/latex/contrib/springer/svjour/agp/template.tex b/macros/latex/contrib/springer/svjour/agp/template.tex new file mode 100644 index 0000000000..5337ae1638 --- /dev/null +++ b/macros/latex/contrib/springer/svjour/agp/template.tex @@ -0,0 +1,136 @@ +%%%%%%%%%%%%%%%%%%%%%%% file template.tex %%%%%%%%%%%%%%%%%%%%%%%%% +% +% This is a template file for Annales Geophysicae +% +% Copy it to a new file with a new name and use it as the basis +% for your article +% +%%%%%%%%%%%%%%%%%%%%%%%% Springer-Verlag %%%%%%%%%%%%%%%%%%%%%%%%%% +% +\begin{filecontents}{leer.eps} +%!PS-Adobe-2.0 EPSF-2.0 +%%CreationDate: Mon Jul 13 16:51:17 1992 +%%DocumentFonts: (atend) +%%Pages: 0 1 +%%BoundingBox: 72 31 601 342 +%%EndComments + +gsave +72 31 moveto +72 342 lineto +601 342 lineto +601 31 lineto +72 31 lineto +showpage +grestore +%%Trailer +%%DocumentFonts: Helvetica +\end{filecontents} +% +\documentclass[agp]{svjour} +% +% Remove any % below to load the required packages +%\usepackage{latexsym} +\usepackage{times} +%\usepackage{mathtimes} +\usepackage{graphics} +% etc +% +\begin{document} +% +\title{Insert your title here} +\subtitle{Do you have a subtitle?} % Insert a subtitle or remove this line +\author{First author\inst{1} \and Second author\inst{2}% etc +% \thanks is optional - remove next line if not needed +\thanks{\emph{Present address:} Insert the address here if needed}% +} % Do not remove +% +\offprints{} % Insert a name or remove this line +% +\institute{Insert the first address here \and the second here} +% +\date{Received: date / Revised version: date} +% The correct dates will be entered by Springer +% +\abstract{ +Insert your abstract here. +% +\keywords{Finite elements, Detonation, Safety}} %end of abstract +% +\maketitle +% +\section{Introduction} +\label{intro} +Your text comes here. Separate text sections with +\section{Section title} +\label{sec:1} +and \citet{RefJ} +\subsection{Subsection title} +\label{sec:2} +as required. Don't forget to give each section +and subsection a unique label (see Sect.~\ref{sec:1}). +% +% For one-column wide figures use +\begin{figure} +% Use the relevant command for your figure-insertion program +% to insert the figure file. +% For example, with the option graphics use +\resizebox{0.75\textwidth}{!}{% + \includegraphics{leer.eps} +} +% If not, use +%\vspace{5cm} % Give the correct figure height in cm +\caption{Please write your figure caption here} +\label{fig:1} % Give a unique label +\end{figure} +% +% For two-column wide figures use +\begin{figure*} +% Use the relevant command for your figure-insertion program +% to insert the figure file. See example above. +% If not, use +\vspace*{5cm} % Give the correct figure height in cm +\caption{Please write your figure caption here} +\label{fig:2} % Give a unique label +\end{figure*} +% +% For tables use +\begin{table} +\caption{Please write your table caption here} +\label{tab:1} % Give a unique label +% For LaTeX tables use +\begin{tabular}{lll} +\hline\noalign{\smallskip} +first & second & third \\ +\noalign{\smallskip}\hline\noalign{\smallskip} +number & number & number \\ +number & number & number \\ +\noalign{\smallskip}\hline +\end{tabular} +% Or use +\vspace*{5cm} % with the correct table height +\end{table} +% +% BibTeX users please use +% \bibliographystyle{} +% \bibliography{} +% +% Non-BibTeX users please use +\begin{thebibliography}{} +% +% and use \bibitem to create references. +% +\bibitem[Author(year)]{RefJ} +% Format for Journal Reference +\textbf{Author}, Journal \textbf{Volume}, (year) page numbers. +% Format for books +\bibitem[Author(year)]{RefB} +\textbf{Author}, \textit{Book title} (Publisher, place year) page numbers +% etc +\end{thebibliography} + + +\end{document} + +% end of file template.tex + diff --git a/macros/latex/contrib/springer/svjour/agp/usrguide.dvi b/macros/latex/contrib/springer/svjour/agp/usrguide.dvi Binary files differnew file mode 100644 index 0000000000..ae17a15a32 --- /dev/null +++ b/macros/latex/contrib/springer/svjour/agp/usrguide.dvi diff --git a/macros/latex/contrib/springer/svjour/agp/usrguide.pdf b/macros/latex/contrib/springer/svjour/agp/usrguide.pdf Binary files differnew file mode 100644 index 0000000000..8bc08921cc --- /dev/null +++ b/macros/latex/contrib/springer/svjour/agp/usrguide.pdf |