diff options
Diffstat (limited to 'obsolete/macros/latex209/contrib/aasmacros/aaspp.doc')
-rw-r--r-- | obsolete/macros/latex209/contrib/aasmacros/aaspp.doc | 1153 |
1 files changed, 1153 insertions, 0 deletions
diff --git a/obsolete/macros/latex209/contrib/aasmacros/aaspp.doc b/obsolete/macros/latex209/contrib/aasmacros/aaspp.doc new file mode 100644 index 0000000000..37135123ce --- /dev/null +++ b/obsolete/macros/latex209/contrib/aasmacros/aaspp.doc @@ -0,0 +1,1153 @@ +% AASPP.STY -- AAS preprint substyle definition for LaTeX. + +% My convention for identifying configuration information is for styles +% to define the five parameters below. + +\def\revtex@ver{3.0} % Version number of this file. +\def\revtex@date{10 Jan 93} % Revision date. +\def\revtex@org{AAS} % Sponsoring organization. +\def\revtex@jnl{AAS} % Applicable journal, if specific. +\def\revtex@genre{preprint} % Document "type". + +% Display identifying message on screen and in logfile. + +\typeout{\revtex@org\space \revtex@genre\space substyle, + v\revtex@ver\space <\revtex@date>.} + +% The following mini-colophon identifies the article are having been +% prepared with this macro package. The \revtex@pageid command only +% defines the formatting of this colophon; its existence and placement +% within the printed article is controlled by the use of this command +% in the style file. + +\def\revtex@pageid{\xdef\@thefnmark{\null} + \@footnotetext{This \revtex@genre\space was prepared with the + \revtex@org\space \LaTeX\ macros v\revtex@ver.}} + +% Issue a warning if manuscripts are formatted with type smaller than 12pt. + +\def\genre@MS{manuscript} +\def\genre@PP{preprint} +\ifx\revtex@genre\genre@PP + \ifnum\@ptsize<1 + \typeout{Warning: Undersize \revtex@genre\space font (1\@ptsize\space pts). + Use 11pt or 12pt documentstyle option.} + \fi +\fi + +% **************************************** +% * PAGE LAYOUT * +% **************************************** + +% Create "plaintop" page style that has folios at top of page. + +\def\ps@plaintop{\let\@mkboth\@gobbletwo + \def\@oddfoot{}\def\@oddhead{\rm\hfil--\space\thepage\space--\hfil} + \def\@evenfoot{}\let\@evenhead\@oddhead} + +\ps@plaintop % Use "plaintop" pagestyle by default. +\pretolerance=10000 % Disable hyphenation + +% The following gives "reasonable" ragged right results. + +\@rightskip=\z@ plus 4em\rightskip\@rightskip + +% Page size, spacing parameters, etc. + +\textwidth=6.5in +\textheight=8.4in +\topmargin=0in +\headheight=.15in +\headsep=.35in +\oddsidemargin=0in +\evensidemargin=0in +\parindent=2em +\parskip=1.5ex + + +%\@input{styopts.sty} + +% **************************************** +% * STYLE OPTIONS * +% **************************************** + +% Make footnotes same size as main text. + +%\let\footnotesize=\normalsize + +% Define parameters to adjust the baselineskip. +% These are passed as the scale factor argument to \baselinestretch. + +\def\@tightleading{1.1} +\def\@doubleleading{1.6} + +% Double-space by default. Observe that you double-space in LaTeX by +% resetting \baselinestretch, which is essentially a scale factor for +% \baselineskip (= leading, for you typographophiles). The style uses +% the \@doubleleading factor, defined above. + +\def\baselinestretch{\@doubleleading} + +% The \tighten command merely resets the \baselinestretch to a +% smaller factor, resulting in single-column text that is more closely +% spaced. (This will always work.) Tightening the vertical spacing +% in the text results in output that is more attractive for distribution +% to colleagues who are primarily interested in reading the paper, as +% opposed to copy editing it. Double-spaced output for referees and +% copy editors is, however, the main objective of this style, hence +% double-spacing occurs by default. The same effect as \tighten +% can be achieved by using the "tighten" document style option. +% +% \tighten +% +% \tighten is intended for use in the preamble of the article. + +\def\tighten{\def\baselinestretch{\@tightleading}} +\let\tightenlines=\tighten + +% For authors who feel compelled to change between single and double +% spacing in the manuscript, \singlespace and \doublespace commands +% are provided. (Following recommendations of AAS Publications Board +% Subcommittee on Preprints.) +% +% \singlespace +% \doublespace + +\def\singlespace{\def\baselinestretch{\@tightleading}\normalsize} +\def\doublespace{\def\baselinestretch{\@doubleleading}\normalsize} + +% Upper case for sections (optional upper case items). These are created +% so that some headings can be toggled between mixed case and upper case +% readily. Headings that might be changed can be wrapped in the style +% file in \sec@upcase{TEXT} constructs; the expansion of \sec@upcase is +% controlled here. It is `\relax' by default (mixed case heads), and can +% easily be changed to `\uppercase' if desired. If mixed case headings +% are wanted by the editor, authors MUST supply mixed case text, although +% this is what authors should be doing anyway. (Mixed can be converted +% to upper, but the reverse transformation cannot be automated.) + +%\def\sec@upcase#1{\uppercase{#1}} +\def\sec@upcase#1{\relax{#1}} + +% Sometimes people want to number equations by section, rather than +% sequentially through the whole paper. + +\def\eqsecnum{ + \@newctr{equation}[section] + \def\theequation{\hbox{\normalsize\arabic{section}-\arabic{equation}}}} + +%\@input{tighten.sty} + +\tighten + +%\@input{slug.sty} + +% **************************************** +% * SLUG LINE * +% **************************************** + +% There are some obvious style-dependent parameters and formatting +% instructions in this file. The object has been to keep the author +% commands (the user interface, if you will) society, journal, and +% style-independent, while the style-specific parameters and commands +% are kept below that level. Commands and parameters that are susceptible +% to external interpretation, either by authors or publishers/translators, +% are identified by indented comment lines, with the semantics of command +% arguments described in upper case text. +% +% \@journalname{JOURNAL NAME} +% \cpr@holder{COPYRIGHT HOLDER} + +\def\@journalname{The Astropolitical Journal} +\def\cpr@holder{American Astronomical Society} + +% Journal and article identification information is established by the +% editorial staff. The following macros are used by personnel at the +% editorial office to annotate/record slug-line data and should be included +% in the manuscript preamble, i.e., before the LaTeX \begin{document}. All +% they do is globally define other TeX control sequences that are used by +% other macros at a later time. +% +% \received{RECEIPT DATE} +% \revised{REVISION DATE} +% \accepted{ACCEPTANCE DATE} +% \journalid{VOL}{JOURNAL DATE} +% \articleid{START PAGE}{END PAGE} +% \paperid{ID} +% \ccc{CODE} +% +% For preprints and submitted manuscripts in draft/referee format, etc., +% the slug-line information is irrelevant and in those kinds of style, +% the data are never used. In my estimation, it is perfectly acceptable +% to have these commands in the file (for future use), so they are defined +% in the usual way. + +\def\received#1{\gdef\@recvdate{#1}} \received{\relax} +\def\revised#1{\gdef\@revisedate{#1}} \revised{\relax} +\def\accepted#1{\gdef\@accptdate{#1}} \accepted{\relax} +\def\journalid#1#2{\gdef\@jourvol{#1}\gdef\@jourdate{#2}} +\def\articleid#1#2{\gdef\@startpage{#1}\gdef\@finishpage{#2}} +\def\paperid#1{\gdef\@paperid{#1}} \paperid{MS-0001-SAMP} +\def\ccc#1{\gdef\CCC@code{#1}} \ccc{000-00\$75.95-CDB} + +% Following copyright and running heads \defs are stubs. +%\let\cpright=\@gobbletwo +%\let\righthead=\@gobble +%\let\lefthead=\@gobble + +% Copyright data. Permit the author/editor to supply a copyright +% "type" as well as the year. +% +% \cpright{TYPE}{YEAR} +% +% Copyright types are designated by name and converted to numeric form. +% The mapping of types is defined by the code that sets the @cprtype +% counter. The language of the copyright notices is defined by \@slug. + +\def\cpright#1#2{\@nameuse{cpr@#1} \gdef\cpr@year{#2} + \typeout{`#1' copyright \cpr@year.}} + +\newcount\@cprtype \@cprtype=\@ne % Default copyright type. +\def\cpr@AAS{\@cprtype=1} +\def\cpr@PD{\@cprtype=2} +\def\cpr@Crown{\@cprtype=3} +\def\cpr@none{\@cprtype=4} +\def\cpr@ASP{\@cprtype=5} + +\def\cpr@year{\number\year} % Default copyright year. + +% \@slug determines formatting of slugline information. +% ATTN: Check with AAS/AIP/UCP about exact wording of these. + +\def\@slug{\par\noindent + \ifcase\@cprtype + \relax + \or + Copyright \cpr@year\space by the \cpr@holder. + \or + This article is in the public domain. + \or + Crown copyright \cpr@year\space by the \cpr@holder. + \or + No copyright is claimed for this article. + \or + Copyright \cpr@year\space by the ASP. + \fi + \par\noindent + Manuscript number \@paperid.\par\noindent + \CCC@code +} + +% Authors may be asked to supply running head information. We use the +% language of the publisher here to distinguish between two pieces of +% information: the left head frequently contains an author list (last +% names, possibly truncated as et al.), while the right head frequently +% contains an abbreviated form of the paper title. The \lefthead and +% \righthead commands merely collect the information and buffer the text. +% +% \lefthead{TEXT} +% \righthead{TEXT} +% +% For the ApJ, right heads are the short titles, and the publisher would +% like for the author to specify a 44-character or less abbreviated title +% to use as the running head on right pages. + +\def\lefthead#1{\gdef\@versohead{#1}} \lefthead{\relax} +\def\righthead#1{\gdef\@rectohead{#1}} \righthead{\relax} + +% \@runheads determines formatting of running head information. + +\def\@runheads{\@tempcnta\c@page + \@whilenum \@tempcnta >0\do{ + \vskip 3ex + \hbox to30pc{\small\expandafter\uppercase\expandafter{\@versohead}: + \expandafter\uppercase\expandafter{\@rectohead}\hfil} + \advance\@tempcnta by\m@ne} +} + +% The \slugcomment command is provided so authors or editors may include +% a remark about the manuscript that may be desired in print for some +% styles. For instance, authors like to include information about the +% journal and publication date of accepted papers ("To appear in AJ, +% November 1992"). +% +% \slugcomment{TEXT} +% +% The formatting of the \slugcomment information is controlled by the +% \@makeslugcmmnt command and its placement on the page is dictated +% by the presence of \@makeslugcmmnt in \sluginfo (or whatever). + +\def\slugcomment#1{\gdef\slug@comment{#1}} \slugcomment{} + +% For PP style, slug comments are set flushright at the top of the title +% page in a parbox of 2/3 the textwidth. + +\newdimen\@slugcmmntwidth \@slugcmmntwidth .67\textwidth +\long\def\@makeslugcmmnt{\ifx\slug@comment\@empty\relax\else + \setbox\@tempboxa\hbox{\slug@comment} + \ifdim \wd\@tempboxa >\@slugcmmntwidth + \hbox to\textwidth{\hss + \parbox\@slugcmmntwidth\slug@comment} + \else + \hbox to\textwidth{\hfil\box\@tempboxa} + \fi + \vskip 2ex +\fi} + +% Editorial offices like to have receipt and acceptance dates on the front +% page for tracking purposes. The current practice is to require the author +% to type Received __________________ and Accepted ________________ lines +% for the staff to type on. The \@dates command will typeset either rules +% or the dates specified in \received and/or \accepted commands. Note that +% authors should not include \received and \accepted. + +\def\@rcvaccrule{\vrule\@width1.75in\@height0.5pt\@depth\z@} + +% \@dates determines formatting of MS date information. + +\def\@dates{{Received}\space% + \if\@recvdate\relax\@rcvaccrule\else\@recvdate\fi;% + \hspace{1.5em}{accepted}\space% + \if\@accptdate\relax\@rcvaccrule\else\@accptdate\fi% +} + +% The \sluginfo command is executed automatically when a \begin{abstract} is +% encountered, so it is not necessary (or appropriate) for the author to +% include this line explicitly. The received/accepted business is a +% concern only for the editorial staff, hence we have arranged for the +% author not to have to fuss with it. + +\def\sluginfo{{\center + \@dates + %\@slug + %\@runheads + \endcenter}} + +\let\dates=\sluginfo % Backwards compatibility + +%\@input{text.sty} + +% **************************************** +% * FRONT MATTER * +% **************************************** + +% Make adjustments to LaTeX abstract style: optional upper case heading, +% retain current type size (should be normalsize), ignore twocolumn option +% in this substyle, add \sluginfo, and start abstract on fresh page. + +\def\abstract{%\sluginfo\clearpage + \begin{center} + {\bf{ABSTRACT}} + \end{center} + \quotation +} + +% Title and author identification is by way of standard LaTeX commands +% \title and \author, although the macros themselves are rather different. +% The information is typeset by these macros in this style, rather than +% being buffered as per regular LaTeX. The authors' principal affiliation +% is specified with a separate macro \affil. Each \author command should +% be followed by its own \affil (or address). +% +% Authors often have affiliations above and beyond their main employer, +% and these are specified with the \altaffilmark and \altaffiltext commands. +% These commands behave like the \footnotemark and \footnotetext commands +% of LaTeX. \altaffilmark is appended to author's names in the \author +% lists, and generates the superscript identification numbers. +% The text for the individual alternate affiliations is generated by the +% \altaffiltext command. It is up to the author to make sure that the +% \altaffilmark numbers attached to authors' names correspond to the correct +% alternate affiliation. +% +% \title{LUCID TEXT} +% \author{NAME(S)} +% \authoraddr{AUTHOR'S POSTAL ADDRESS} +% \affil{AFFILIATION} +% \altaffilmark{TAG NUMBER(S)} +% \altaffiltext{NUMERICAL TAG}{TEXT} +% +% The typesetting performed by these commands is appropriate for the top of +% the first text page of the manuscript. They could as well be used on a +% title cover page, but vertical placement would have to be controlled by +% the author. This is not to be encouraged, since I want to discourage +% the introduction of any extra horizontal or vertical space. + +\def\title#1{\@makeslugcmmnt{\center\large\bf{#1}\endcenter} + \thispagestyle{empty}} +\def\author#1{{\topsep\z@\center\normalsize#1\endcenter}} +\let\authoraddr=\@gobble +\def\affil#1{\vspace*{-2.5ex}{\topsep\z@\center#1\endcenter}} +\def\altaffilmark#1{$^{#1}$} +\def\altaffiltext#1#2{\footnotetext[#1]{#2}\stepcounter{footnote}} + +% Redefine the LaTeX \and command for this style. + +\def\and{\vspace*{-0.5ex}{\topsep\z@\center and\endcenter}} + +% **************************************** +% * KEYWORDS * +% **************************************** + +% Keywords environment. Keywords, subject headings, etc., are accommodated +% only as a piece of text; the \keywords command indents if necessary and +% supplies the proper leading text ("Keywords:", "Subject headings:", etc.) +% but does not apply formatting to the user's keyword text. The author +% must supply the correct punctuation according to the journal style. +% +% Note that the editors of A&A, ApJ, and MNRAS have discussed the issue +% of keywords, and there is disagreement about whether "subject headings" +% or "keywords" should appear after abstracts in astronomical papers. +% It does not really matter what the macro is called, so I will stick +% to \keywords since I don't know what the difference is anyway. + +\def\@keywordtext{Subject headings} +\def\@keyworddelim{---} + +\def\keywords#1{\vspace*{-.7ex}%\vspace{\z@} + \if@twocolumn\noindent{{\it\@keywordtext:\/}\space\@kwds{#1}} + \else{\quote{\it\@keywordtext:\/}\space\@kwds{#1}\endquote} + \fi} + +\let\subjectheadings=\keywords + +% It might be possible to handle keywords and their punctuation more +% automatically at some stage, but at the moment using this looping +% construct is serious overkill. It also causes problems because the +% loop delimiter is a comma, and there are keywords that legitimately +% contain commas. It also seem ponderous to me for keywords in the +% \keyword list to be delimited by `|', so I make the author responsible +% for keyword list punctuation. + +%\def\@kwds#1{\def\@kwddlm{}\@for\@kwd:=#1\do +% {\@kwddlm\def\@kwddlm{\space\@keyworddelim\penalty\@m\space}{\@kwd}}} + +\def\@kwds#1{#1\relax} + +% **************************************** +% * FOOTNOTES * +% **************************************** + +% The following code redefines a few things so that spacing in footnotes is +% different than LaTeX defaults. The adjustment to \skip\footins increases +% the amount of vspace inserted before the \footnoterule. Redefine +% \@makefntext to get proper indentation. + +\skip\footins 4ex plus 1ex minus .5ex +\footnotesep 3ex + +%\long\def\@makefntext#1{\noindent\hbox to\z@{\hss$^{\@thefnmark}$}#1} +%\long\def\@makefntext#1{\indent\hbox{$^{\@thefnmark}$}#1} + +% **************************************** +% * SECTIONS * +% **************************************** + +% \@startsection {NAME}{LEVEL}{INDENT}{BEFORESKIP}{AFTERSKIP}{STYLE} +% optional * [ALTHEADING]{HEADING} +% Generic command to start a section. +% NAME : e.g., 'subsection' +% LEVEL : a number, denoting depth of section -- e.g., chapter=1, +% section = 2, etc. +% INDENT : Indentation of heading from left margin +% BEFORESKIP : Absolute value = skip to leave above the heading. +% If negative, then paragraph indent of text following +% heading is suppressed. +% AFTERSKIP : if positive, then skip to leave below heading, else +% negative of skip to leave to right of run-in heading. +% STYLE : commands to set style +% If '*' missing, then increments the counter. If it is present, then +% there should be no [ALTHEADING] argument. + +% Adjust section heading typography slightly. The manuscript editors +% seem to like the idea that the heads will be centered, and that there +% will be a "." trailing the section number. This requires hacking below +% the normal LaTeX programming interface (\@startsection), since the +% centering has to be turned on and off again before the section starts. +% +% Also, modify the indentation behavior so that ALL paragraphs, including +% those first after section heads, are indented. This is consonant with +% the styles of many journals, although it's non-standard typographic practice. + +\newif\if@firstsection \@firstsectiontrue + +\def\section{\if@firstsection + \@firstsectionfalse\fi + \@startsection {section}{1}{\z@} + {5ex plus .5ex}{1ex plus .2ex}{\normalsize\bf}} +\def\subsection{\@startsection{subsection}{2}{\z@} + {5ex plus .5ex}{1ex plus .2ex}{\normalsize\bf}} +\def\subsubsection{\@startsection{subsubsection}{3}{\z@} + {5ex plus .5ex}{1ex plus .2ex}{\normalsize\it}} + +\def\thesection{\@arabic{\c@section}.} +\def\thesubsection{\thesection\@arabic{\c@subsection}.} +\def\thesubsubsection{\thesubsection\@arabic{\c@subsubsection}.} +\def\theparagraph{\thesubsubsection\@arabic{\c@paragraph}:} + +% For ApJ, acknowledgments are set off from main body text simply by +% vertical space (no heading or type size change). I do the same for +% the AAS manuscript style. For use in producing more polished output +% for other journals, this macro might generate text saying +% "Acknowledg[e]ments". + +\def\acknowledgments{\vskip 3ex plus .8ex minus .4ex} +\let\acknowledgements=\acknowledgments % second spelling + +% LaTeX sectioning tools. + +\def\@sect#1#2#3#4#5#6[#7]#8{\ifnum #2>\c@secnumdepth + \def\@svsec{}\else + \refstepcounter{#1}\edef\@svsec{\csname the#1\endcsname\hskip 1em }\fi + \@tempskipa #5\relax + \ifdim \@tempskipa>\z@ + \begingroup \center#6\relax + \@hangfrom{\hskip #3\relax\@svsec}{\interlinepenalty \@M + \sec@upcase{#8}\par}% + \endcenter\endgroup + \csname #1mark\endcsname{#7}\addcontentsline + {toc}{#1}{\ifnum #2>\c@secnumdepth \else + \protect\numberline{\csname the#1\endcsname}\fi + #7}\else + \def\@svsechd{#6\hskip #3\@svsec \sec@upcase{#8}\csname #1mark\endcsname + {#7}\addcontentsline + {toc}{#1}{\ifnum #2>\c@secnumdepth \else + \protect\numberline{\csname the#1\endcsname}\fi + #7}}\fi + \@xsect{#5}} + +\def\@ssect#1#2#3#4#5{\@tempskipa #3\relax + \ifdim \@tempskipa>\z@ + \begingroup #4\center\@hangfrom{\hskip #1}{\interlinepenalty \@M + \sec@upcase{#5}\par}\endcenter\endgroup + \else \def\@svsechd{#4\hskip #1\relax \sec@upcase{#5}}\fi + \@xsect{#3}} + +% **************************************** +% * EQUATION NUMBERING * +% **************************************** + +% Redefine \appendix so that equation numbers are prepended with +% \theappendix number. Reset equation counter so that equation +% numbers in the appendix begin again with 1. Note that the +% \appendix command is NOT a sectioning command; it is merely +% a delimiting markup between the main body of the paper and the +% appendix. Sections in the appendix are still started with +% \section commands. +% +% \appendix + +\def\appendix{\par + \setcounter{section}{0} + \setcounter{subsection}{0} + \setcounter{equation}{0} + \def\thesection{\Alph{section}.} + \def\theequation{\hbox{\normalsize\Alph{section}\arabic{equation}}}} + +% Define mathletters environment. This is a wrapper that goes +% *around* (outside of) equation or eqnarray environments. +% +% \begin{mathletters} +% \end{mathletters} + +\newcounter{cureqno} + +\newenvironment{mathletters}{\refstepcounter{equation}% + \setcounter{cureqno}{\value{equation}}% + \let\@curtheeqn\theequation% + \edef\cur@eqn{\csname theequation\endcsname}% + \def\theequation{\cur@eqn\alph{equation}}% + \setcounter{equation}{0}}% + {\let\theequation\@curtheeqn% + \setcounter{equation}{\value{cureqno}}} + +% The \eqnum command allows the author to override all automatic +% equation marking schemes. +% +% \eqnum{TEXT} + +\def\eqnum#1{\def\theequation{#1}\let\@currentlabel\theequation + \addtocounter{equation}{\m@ne}} + +% **************************************** +% * BIBLIOGRAPHY * +% **************************************** + +% Bibliography/references environment. For the time being, I don't think +% it would be a good idea to force an implementation based on BibTeX, +% although I'll prepare for that eventuality by using the constructs and +% general ideas of the LaTeX thebibliography environment. Adjustments +% have been made so that the \cite-\bibitem mechanism can be used to cite +% references symbolically while maintaining proper citation syntax within +% the paper; the author must create the citation label for each reference +% in proper journal format in the \bibitem command. +% +% \begin{thebibliography} +% \bibitem[LABEL]{TEXTTAG} \reference <bibliographic data> +% \end{thebibliography} +% +% where LABEL must adhere to the journal's standards, e.g. "Abt 1986". +% +% It is not necessary to use the thebibliography environment. This style +% defines a references environment that simply sets off the list of references +% and adjusts spacing parameters. It is not possible to use \bibitems +% within the references environment. (The \reference command cannot be +% shortened to \ref; \ref is used in vanilla LaTeX for cross-referencing.) +% +% \begin{references} +% \reference <bibliographic data> +% \end{references} +% +% \markcite{TEXT} +% +% Observe that the bibliographic data supplied by the author must also +% conform to the standards of the journal. I have elected not to burden +% authors with tedious LaTeX commands which would require many curly braces +% to delimit the bibliographic fields because many of the journals I have +% targeted in this project have agreed to reduce typographic overhead (bolding, +% italicizing, etc.) in reference lists. (See Abt's editorial in ApJ 357.) +% It is the responsibility of the author to get these fields in the proper +% order with the correct punctuation; the information will be typeset as is, +% i.e., in roman with no size or style changes. +% +% Macros are provided for many of the oft-referenced journals so that authors +% may use the LaTeX names rather than having to look up a particular journal's +% specific abbreviation. In principle, all the journals should be using the +% same abbreviations, too, but I anticipate some changes in the specific +% abbreviations before a set is finally settled on. As long as these macros +% are kept up to date, authors need not be concerned about such editorial +% changes. +% +% Corresponding with the non-BibTeX references environment and \reference +% command for the reference list is the \markcite command. This can be +% used to identify in-text citations; in this case, the author provides +% the actual citation text as opposed to the symbolic tag. The use of +% this is encouraged, even for journals where no special formatting of +% citation call-outs is required; it is crucial for the future use of +% on-line browsers. + +\def\references{\subsection*{REFERENCES} + \bgroup\parindent=\z@\parskip=\itemsep + \def\refpar{\par\hangindent=3em\hangafter=1}} +\def\endreferences{\refpar\egroup\revtex@pageid} + +\def\thebibliography{\subsection*{REFERENCES} + \list{\null}{\leftmargin 3em\labelwidth\z@\labelsep\z@\itemindent -3em + \usecounter{enumi}} + \def\refpar{\relax} + \def\newblock{\hskip .11em plus .33em minus .07em} + \sloppy\clubpenalty4000\widowpenalty4000 + \sfcode`\.=1000\relax} +\def\endthebibliography{\endlist\revtex@pageid} + +\def\@biblabel#1{\relax} +%\def\@cite#1#2{({#1\if@tempswa , #2\fi})} +\def\@cite#1#2{#1\if@tempswa , #2\fi} + +\def\reference{\relax\refpar} % Generic: might be better... +\def\markcite#1{#1\relax} + +% Modify \@citex so that individual citation texts are NOT hboxed. +% This allows TeX to break lines at spaces between words in citations. +% Remove the obnoxious {\bf ?} that was inserted in the text when +% undefined citations are encountered; here, the warning message is +% printed only on the terminal. + +\def\@citex[#1]#2{\if@filesw\immediate\write\@auxout{\string\citation{#2}}\fi + \def\@citea{}\@cite{\@for\@citeb:=#2\do + {\@citea\def\@citea{,\penalty\@m\ }\@ifundefined + {b@\@citeb}{\@warning + {Citation `\@citeb' on page \thepage \space undefined}}% +{\csname b@\@citeb\endcsname}}}{#1}} + +%\@input{mstblfig.sty} + +% **************************************** +% * TABLES AND FIGURES * +% **************************************** + +% Additions and adjustments for tables and figures. + +% Footnotes for tables are to be identified with lower case alphabetics, +% rather than numeric. \tablenotemark and \tablenotetext commands are +% provided analogous to \footnotemark and \footnotetext, but with the +% identifier *required*, like \altaffilmark and \altaffiltext. The +% \tablenotetext must be specified before the \end{table}, since +% \end{table} displays it. +% +% \tablenotemark{TAG LETTER(S)} +% \tablenotetext{ALPHA TAG}{TEXT} +% +% Note that TAG LETTER == ALPHA TAG for corresponding text. It is the +% responsibility of the author to get the correspondence correct. +% +% The table footnotes are coupled to the table in which they occur, rather +% than being associated with a particular page, and they are printed with +% the table (relatively close to the caption) instead of appearing at the +% extreme bottom of the page. This is done to ensure that the notes wind +% up on the same page as the table, since tables are floats and can migrate +% from one page to another. There is the additional benefit that the notes +% are unambiguously attached to the proper table, which is what is required +% in the event that the editorial requirement of one table only per page +% is ever changed to permit several tables per page. +% +% Footnotes are NOT supported for figures. + +\def\tablenotemark#1{\rlap{$^{\rm #1}$}} + +% The \tablenotetext command buffers the table note text and the "proper" +% tablenote formatting information in a token buffer. The tablenotes are +% dispensed into the vertical page list by \spew@tblnotes, which is +% executed by \end{table}. Note that certain "global" tablenote formatting +% details are handled by \spew@tblnotes, which also clears the tblnote list. +% Praise and honor are due to Kresten Krab Thorup (krab@iesd.auc.dk) for +% posting ftn.sty to the Usenet, from which I drew the technique. + +\newtoks\@temptokenb +\def\tblnote@list{} + +\def\tablenotetext#1#2{ + \@temptokena={\vspace{.5ex}{\noindent\llap{$^{#1}$}#2}\par} + \@temptokenb=\expandafter{\tblnote@list} + \xdef\tblnote@list{\the\@temptokenb\the\@temptokena}} + +\def\spew@tblnotes{ + \ifx\tblnote@list\@empty\relax + \else + \vspace{4.5ex} + \footnoterule + \vspace{.5ex} + {\footnotesize\tblnote@list} + \gdef\tblnote@list{} + \fi} + +\def\endtable{\spew@tblnotes\end@float} +\@namedef{endtable*}{\spew@tblnotes\end@dblfloat} + +% Add a \tableline command for use in tabular environments. This command +% produces the horizontal rule(s) between the column headings and the body +% of the table. Authors are discouraged from using any \hlines themselves, +% and are typically forbidden from using vertical rules by editors. + +\let\tableline=\hline + +% \@makecaption determines formatting for figure and table captions. +% For manuscripts, all captions should be set as flushleft paragraphs. + +\long\def\@makecaption#1#2{\vskip 2ex\noindent #1 #2\par} + +% The \tablenum command allows the author to override all automatic +% table marking schemes. +% +% \tablenum{TEXT} + +\def\tablenum#1{\def\thetable{#1}\let\@currentlabel\thetable + \addtocounter{table}{\m@ne}} + +% The \figurenum command allows the author to override all automatic +% figure marking schemes. +% +% \figurenum{TEXT} + +\def\figurenum#1{\def\thefigure{#1}\let\@currentlabel\thefigure + \addtocounter{figure}{\m@ne}} + +% **************************************** +% * PLANO TABLES * +% **************************************** + +% Plano tables are camera-ready pages that are included in a typeset +% article the same way as line drawings, graphs, and other camera-ready +% art, i.e., as "planographic" figures. There are desirable properties +% for a formatter to have that are somewhat above and beyond LaTeX'x +% tabular environment that would facilitate the creation of such tables. +% Among these are breaking long tables across pages, using footnotes +% in a table, specifying comments and references for tables, etc. +% +% What follows was inspired by supertab.sty by Theo Jurriens, 1988. + +% Commands for identifying table elements in a consistent way. Observe +% that the formatting is embedded in the macro definitions so that the +% author doesn't need to be concerned about stylistic nuances. +% +% \tablecaption{TEXT} +% \tablehead{TEXT} +% \colhead{HEADING} +% \tabletail{TEXT} +% \tablewidth{DIMEN} +% \tableheadfrac{NUM} + +\newbox\pt@box +\newdimen\pt@width +\newcount\pt@line +\newcount\pt@nlines +\newcount\pt@ncol + +\def\colhead#1{\omit\hidewidth{#1}\hidewidth\global\advance\pt@ncol by\@ne} +\def\tablecaption#1{\gdef\pt@caption{#1}} \def\pt@caption{\relax} +\def\tablehead#1{\gdef\pt@head{\hline\hline\relax\\[-1.7ex] + #1\hskip\tabcolsep\\[.7ex]\hline\relax\\[-1.5ex]}} \def\pt@head{\relax} +\def\tabletail#1{\gdef\pt@tail{#1}} \def\pt@tail{\relax} +\def\tablewidth#1{\pt@width=#1} \pt@width\textwidth +\def\tableheadfrac#1{\gdef\pt@headfrac{#1}} \def\pt@headfrac{.1} + +% Calculate the number of tabular rows that will fit in the body of the +% table. The height of the table body and the number of lines are +% calculated thus: +% +% bodyheight = \textheight * (1 - \pt@headfrac) +% \pt@nlines = bodyheight / (\arraystretch * \baselineskip) +% +% The row height can be seen to be valid algebraically if one examines the +% definitions for \strutbox, \@setstrut, and \@array. I could eliminate +% this calculation, as well as its attendant parameters, if it were possible +% to determine the accumulated height of the \halign box as TeX goes along. + +\def\pt@calcnlines{\@tempdima\pt@headfrac\textheight + \@tempdimb\textheight\advance\@tempdimb by-\@tempdima + \@tempdima\arraystretch\baselineskip + \divide\@tempdimb by\@tempdima + \global\pt@nlines\@tempdimb} + +% Define \pt@tabular, a ripoff of \@tabular but with \leavevmode removed +% so tabular box can be set with \setbox. I do this so that table notes +% can be set to natural width of table, if desired. Also, set \@acol +% to \@ptabacol, which is called when building the preamble for the +% \halign (assuming the first column format specification is "l", which +% it should be for ApJ tables) so that \tabskip within the table is set +% to \fill. This permits us to toggle between natural and fixed-width +% tables without requiring the user to change markup. Note that by +% forcing \tabskip always to be \fill, I pretty well nullify any +% @{\hspace} commands the user puts in the template, but this environment +% is for people who don't want to think about that sort of stuff anyway. + +\def\pt@tabular{\hbox \bgroup $\let\@acol\@ptabacol + \let\@classz\@tabclassz + \let\@classiv\@tabclassiv \let\\\@tabularcr\@tabarray} + +\def\@ptabacol{\edef\@preamble{\@preamble \hskip \tabcolsep\tabskip\fill}} + +% Permit different identifying strings, one for the first page of the +% table and one for continuation pages. LaTeX's \fnum@table is set to +% one or the other automatically in the environment. Note that caption +% handling is not so graceful: you have to edit inside the big macros to +% adjust this. Someday, I will be ambitious enough to fix this. + +\def\fnum@ptable{Table \thetable} +\def\fnum@ptablecont{Table \thetable---{\rm Continued}} + +\def\set@mkcaption{\long\def\@makecaption##1##2{ + \center\rm##1.\quad##2\endcenter\vskip 2.5ex}} +\def\set@mkcaptioncont{\long\def\@makecaption##1##2{ + \center\rm##1\endcenter\vskip 2.5ex}} + +\newenvironment{planotable}[1]{\def\pt@format{\string#1}% + \set@tblnotetext\pt@ncol=0}% + {\crcr\noalign{\vskip .7ex}\hline\endtabular% + \pt@width\wd\pt@box\box\pt@box\spew@ptblnotes% + \typeout{Table \thetable\space has been set to width \the\pt@width}% + \endcenter\end@float} + +\def\startdata{\pt@line=0\pt@calcnlines% + \ifdim\pt@width>\z@\def\@halignto{to \pt@width}\else\def\@halignto{}\fi% + \let\fnum@table=\fnum@ptable\set@mkcaption% + \@float{table}\center\caption{\pt@caption}\leavevmode% + \setbox\pt@box=\pt@tabular{\pt@format}\pt@head} + +% A kludgey kind of line delimiter is needed so that the line counter +% can be checked prior to adding the line to the alignment box. This +% is bad because this form does not permit the addition of vertical +% space using the [.5ex] construct; this has to be done with an explicit +% \vskip. And a disgusting \noalign is required, so I have to create +% another silly piece of markup to accomplish this conveniently. +% +% What is desired, of course, is for this line count checking to take +% place within the syntax of the regular LaTeX \\ command. I have been +% giving myself apoplexy trying to figure this out for the last 36 hours, +% and I have decided I will have to wait for the onset of my "lucid +% period" for a solution. In the meantime... + +\def\pt@nl{\global\advance\pt@line by\@ne% + \ifnum\pt@line=\pt@nlines% + \endtabular\box\pt@box + \endcenter\end@float\clearpage% + \addtocounter{table}{\m@ne}% + \let\fnum@table=\fnum@ptablecont\set@mkcaptioncont% + \@float{table}\center\caption{\pt@caption}\leavevmode% + \global\pt@ncol=0% + \setbox\pt@box=\pt@tabular{\pt@format}\pt@head% + \global\pt@line=0% + \else\\ + \fi} + +% Author markup commands for planotable environment line breaks. +% +% \nl == \nextline +% \tablevspace{DIMEN} +% \tablebreak + +\let\nl=\pt@nl +\let\nextline=\pt@nl + +\def\tablevspace#1{\noalign{\vskip{#1}}} +\def\tablebreak{\pt@line\pt@nlines\advance\pt@line by\m@ne\pt@nl} + +% We have some specialty heads that are sometimes wanted in tables. +% +% \cutinhead{TEXT} +% \sidehead{TEXT} + +\def\cutinhead#1{\noalign{\vskip 1.5ex} + \hline\pt@nl\noalign{\vskip -2.0ex} + \multicolumn{\pt@ncol}{c}{#1}\pt@nl + \noalign{\vskip .8ex} + \hline\pt@nl\noalign{\vskip -2ex}} + +\def\sidehead#1{\noalign{\vskip 1.5ex} + \multicolumn{\pt@ncol}{@{\hskip\z@}l}{#1}\pt@nl + \noalign{\vskip .5ex}} + +\def\set@tblnotetext{\def\tablenotetext##1##2{{% + \@temptokena={\vspace{0ex}{% + \parbox{\pt@width}{\hskip1em$^{\rm ##1}$##2}\par}}% + \@temptokenb=\expandafter{\tblnote@list} + \xdef\tblnote@list{\the\@temptokenb\the\@temptokena}}}} + +\def\spew@ptblnotes{ + \ifx\tblnote@list\@empty\relax + \else + \par + \vspace{2ex} + {\tblnote@list} + \gdef\tblnote@list{} + \fi} + +% Special kinds of table footnotes. Sometimes authors tabulate things +% which have corresponding references, and it may be desirable to associate +% these references with the table rather than (or in addition to) the +% formal reference list. Occasionally, authors wish to append a short +% paragraph of explanatory notes that pertain to the entire table, but +% which are different than the caption. +% +% \tablerefs{REFERENCE LIST} +% \tablecomments{TEXT} + +\def\tablerefs#1{\@temptokena={\vspace*{3ex}{% + \parbox{\pt@width}{\hskip1em\rm References. --- #1}\par}}% + \@temptokenb=\expandafter{\tblnote@list} + \xdef\tblnote@list{\the\@temptokenb\the\@temptokena}} + +\def\tablecomments#1{\@temptokena={\vspace*{3ex}{% + \parbox{\pt@width}{\hskip1em\rm Note. --- #1}\par}}% + \@temptokenb=\expandafter{\tblnote@list} + \xdef\tblnote@list{\the\@temptokenb\the\@temptokena}} + +% Figure and table style parameters. + +\def\thefigure{\@arabic\c@figure} +\def\fnum@figure{{\rm Fig.\space\thefigure.---}} + +\def\thetable{\@arabic\c@table} +\def\fnum@table{{\rm Table \thetable:}} + +% Figure and table float positions. + +\def\fps@figure{bp} +\def\fps@table{bp} + +% **************************************** +% * EPS INCLUSIONS * +% **************************************** + +% Include Rokicki's epsf.sty file explicitly. + +\@ifundefined{epsfbox}{\@input{epsf.sty}}{\relax} + +% Simplified EPS inclusion macros so we can see how this goes... +% These are layered on Rokicki's dvips material, and are dependent +% on the author's use of that DVI driver. +% +% \plotone{EPSFILE} +% \plottwo{EPSFILE}{EPSFILE} +% \plotfiddle{EPSFILE}{VSIZE}{ROT}{HSF}{VSF}{HTRANS}{VTRANS} +% +% \plotone inserts the plot in a space that is \columnwidth wide; the +% plot is scaled so the horizontal dimension fits in the text width, +% and the vertical dimension is scaled to maintain the aspect ratio. +% \plottwo inserts two plots next to each other in one \columnwidth, +% sort of like "two-up" mode. +% +% EPSFILE name of file with EPS +% +% The following arguments are for the \plotfiddle macro which formats +% the \special itself, prepares vspace, etc. This completely bypasses +% Rokicki's macros that attempt to rationalize the EPS BoundingBox with +% the LaTeX page dimensions. +% +% VSIZE vertical white space to allow for plot +% ROT rotation angle +% HSF horiz scale factor +% VSF vert scale factor +% HTRANS horiz translation +% VTRANS vert translation + +%\epsfverbosetrue + +\def\plotone#1{\centering \leavevmode + \epsfxsize=\columnwidth \epsfbox{#1}} + +\def\plottwo#1#2{\centering \leavevmode + \epsfxsize=.45\columnwidth \epsfbox{#1} \hfil + \epsfxsize=.45\columnwidth \epsfbox{#2}} + +\def\plotfiddle#1#2#3#4#5#6#7{\centering \leavevmode + \vbox to#2{\rule{0pt}{#2}} + \special{psfile=#1 voffset=#7 hoffset=#6 vscale=#5 hscale=#4 angle=#3}} + +%\@input{abbrevs.sty} + +% **************************************** +% * ABBREVIATIONS * +% **************************************** + +% Abbreviations for journals. The object here is to provide authors +% with convenient shorthands for the most "popular" (often-cited) +% journals; the author can use these markup tags without being concerned +% about the exact form of the journal abbreviation, or its formatting. +% It is up to the keeper of the macros to make sure the macros expand +% to the proper text. If macro package writers agree to all use the +% same TeX command name, authors only have to remember one thing, and +% the style file will take care of editorial preferences. This also +% applies when a single journal decides to revamp its abbreviating +% scheme, as happened with the ApJ (Abt 1991). + +\let\jnl@style=\rm +\def\ref@jnl#1{{\jnl@style#1}} + +\def\aj{\ref@jnl{AJ}} % Astronomical Journal +\def\araa{\ref@jnl{ARA\&A}} % Annual Review of Astron and Astrophys +\def\apj{\ref@jnl{ApJ}} % Astrophysical Journal +\def\apjl{\ref@jnl{ApJ}} % Astrophysical Journal, Letters +\def\apjs{\ref@jnl{ApJS}} % Astrophysical Journal, Supplement +\def\ao{\ref@jnl{Appl.Optics}} % Applied Optics +\def\apss{\ref@jnl{Ap\&SS}} % Astrophysics and Space Science +\def\aap{\ref@jnl{A\&A}} % Astronomy and Astrophysics +\def\aapr{\ref@jnl{A\&A~Rev.}} % Astronomy and Astrophysics Reviews +\def\aaps{\ref@jnl{A\&AS}} % Astronomy and Astrophysics, Supplement +\def\azh{\ref@jnl{AZh}} % Astronomicheskii Zhurnal +\def\baas{\ref@jnl{BAAS}} % Bulletin of the AAS +\def\jrasc{\ref@jnl{JRASC}} % Journal of the RAS of Canada +\def\memras{\ref@jnl{MmRAS}} % Memoirs of the RAS +\def\mnras{\ref@jnl{MNRAS}} % Monthly Notices of the RAS +\def\pra{\ref@jnl{Phys.Rev.A}} % Physical Review A: General Physics +\def\prb{\ref@jnl{Phys.Rev.B}} % Physical Review B: Solid State +\def\prc{\ref@jnl{Phys.Rev.C}} % Physical Review C +\def\prd{\ref@jnl{Phys.Rev.D}} % Physical Review D +\def\prl{\ref@jnl{Phys.Rev.Lett}} % Physical Review Letters +\def\pasp{\ref@jnl{PASP}} % Publications of the ASP +\def\pasj{\ref@jnl{PASJ}} % Publications of the ASJ +\def\qjras{\ref@jnl{QJRAS}} % Quarterly Journal of the RAS +\def\skytel{\ref@jnl{S\&T}} % Sky and Telescope +\def\solphys{\ref@jnl{Solar~Phys.}} % Solar Physics +\def\sovast{\ref@jnl{Soviet~Ast.}} % Soviet Astronomy +\def\ssr{\ref@jnl{Space~Sci.Rev.}} % Space Science Reviews +\def\zap{\ref@jnl{ZAp}} % Zeitschrift fuer Astrophysik + +\let\astap=\aap +\let\apjlett=\apjl +\let\apjsupp=\apjs + +%\@input{misc.sty} + +% **************************************** +% * MISCELLANEOUS * +% **************************************** + +% Handy little things everybody works out for themselves anyway. Many +% of these come from Springer's A&A package, and some were contributed +% by Francois Schweizer at DTM. You can go berserk making these up, +% especially when you start getting into the composite ones. We have +% tried to select a tractable number that were useful, and somewhat +% difficult to get right because fussy kerning or some such is required. +% Most can be used in or out of math mode with impunity; \alt and \agt +% are relations and can only be used in math mode. + +\def\deg{\hbox{$^\circ$}} +\def\sun{\hbox{$\odot$}} +\def\earth{\hbox{$\oplus$}} +\def\lesssim{\mathrel{\hbox{\rlap{\hbox{\lower4pt\hbox{$\sim$}}}\hbox{$<$}}}} +\def\gtrsim{\mathrel{\hbox{\rlap{\hbox{\lower4pt\hbox{$\sim$}}}\hbox{$>$}}}} +\def\sq{\hbox{\rlap{$\sqcap$}$\sqcup$}} +\def\arcmin{\hbox{$^\prime$}} +\def\arcsec{\hbox{$^{\prime\prime}$}} +\def\fd{\hbox{$.\!\!^{\rm d}$}} +\def\fh{\hbox{$.\!\!^{\rm h}$}} +\def\fm{\hbox{$.\!\!^{\rm m}$}} +\def\fs{\hbox{$.\!\!^{\rm s}$}} +\def\fdg{\hbox{$.\!\!^\circ$}} +\def\farcm{\hbox{$.\mkern-4mu^\prime$}} +\def\farcs{\hbox{$.\!\!^{\prime\prime}$}} +\def\fp{\hbox{$.\!\!^{\scriptscriptstyle\rm p}$}} +\def\micron{\hbox{$\mu$m}} + +\let\la=\lesssim % For Springer A&A compliance... +\let\ga=\gtrsim + +% Permit author to typeset "case" fractions. This is sometimes +% wanted in displayed equations, during which LaTeX will set fractions +% specified as \frac{x}{y} as "built-up" fractions (numerator and +% denominator at body text size). + +\def\case#1#2{\hbox{$\frac{#1}{#2}$}} + +% Permit author to typeset fractions set with solidus where the size +% is reduced and the numerals are oriented diagonally. Note that this +% is different from a "shilled" fraction, which the author can produce +% without any special formatting markup. Define markup shorthands for +% several common fractions using solidus. + +\def\slantfrac#1#2{\hbox{$\,^#1\!/_#2$}} +\def\onehalf{\slantfrac{1}{2}} +\def\onethird{\slantfrac{1}{3}} +\def\twothirds{\slantfrac{2}{3}} +\def\onequarter{\slantfrac{1}{4}} +\def\threequarters{\slantfrac{3}{4}} + +\def\ubvr{\hbox{$U\!BV\!R$}} % UBVR system +\def\ub{\hbox{$U\!-\!B$}} % U-B +\def\bv{\hbox{$B\!-\!V$}} % B-V +\def\vr{\hbox{$V\!-\!R$}} % V-R +\def\ur{\hbox{$U\!-\!R$}} % U-R + +% Notation for atomic species (ionization levels). The ionization state +% is specified as the second argument, and should be given as a numeral. +% The macro has to expand the numeric state into the proper notation for +% the publication (roman, numeric, plus signs, etc.) +% +% \ion{ELEMENT}{IONIZATION STATE} + +\def\ion#1#2{#1$\;${\small\rm\@Roman{#2}}\relax} + +% Centered ellipsis for use in tables (for unknown values). \nodata +% is generalized markup for this notion: format of null-valued entries +% in tables is style-specific. + +%\def\cellipsis{\hfill$\cdots$\hfill} +\def\nodata{\multicolumn{1}{c}{$\cdots$}} + +% This is a generalization of the \LaTeX definition that comes in LaTeX. +% The change here ensures that LaTeX will be typeset in the current style, +% rather than always in roman. + +\newcount\lecurrentfam +\def\LaTeX{\lecurrentfam=\the\fam \leavevmode L\raise.42ex + \hbox{$\fam\lecurrentfam\scriptstyle\kern-.3em A$}\kern-.15em\TeX} + +% **************************************** +% * DEBUGGING * +% **************************************** + +\def\sizrpt{ + (\fontname\the\font): em=\the\fontdimen6\font, ex=\the\fontdimen5\font + \typeout{ + (\fontname\the\font): em=\the\fontdimen6\font, ex=\the\fontdimen5\font +}} |