% % \iffalse %% Description: a bundle of LaTeX and BibTeX files to produce %% AIAA papers and simulated journal articles/notes %% Keywords: LaTeX, class, AIAA, BibTeX, bibliographic-style, 9pt-option %% Author: Bil Kleb %% Maintainer: same %% Latest Version: 0.9 %% %% Please see the information in file `aiaa.ins' on how you %% may use and (re-)distribute this file. Run LaTeX on the file %% `aiaa.ins' to get the main class file and other auxilary items. %% Then run LaTeX on `aiaa.dtx' (this file) to obtain a users manual %% and code documentation. %% %% NOTE: This file may NOT be distributed if not accompanied by 'aiaa.ins' % \fi % % \def\filename{aiaa.dtx} % \def\fileversion{0.9} % \def\filedate{1997/02/20} % \def\docdate{\filedate} % \date{\docdate} % % \newcommand*{\cls}[1]{\textsl{#1}} % \newcommand*{\pkg}[1]{\textsf{#1}} % \newcommand*{\file}[1]{\texttt{#1}} % \newcommand*{\kbd}[1]{\texttt{#1}} % \setcounter{errorcontextlines}{10} % % \MakeShortVerb{\|} % % \CheckSum{1371} %% \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 \~} % % \title{% % \textsf{aiaa} -- a \LaTeX{} Class and \BibTeX{} % Style\\ for AIAA\thanks{The American Institute of Aeronautics % and Astronautics.}\ \ Conference Papers\\ and Journal % Submission/Simulation\thanks{This document describes \textsf{aiaa} version % \fileversion, and was last updated \docdate .}} % % \author{Bil Kleb\thanks{Research Scientist, NASA Langley % Research Center, Hampton, Virginia.}} % % \maketitle % % \begin{abstract} % This document describes the \textsf{aiaa} distribution which % is centered around a modification of the standard \LaTeX{} % article class, \cls{article.cls}. The new class produces % AIAA-conformant\footnote{Note this distribution is not a % product of, nor endorsed by, the AIAA.} % conference papers and journal submittals---it % will even simulate the typesetting of journal articles and notes % for length-determination purposes. This distribution also contains % a (mostly) AIAA-compliant bibliographic style sheet, % a sample document, and some other test equipment. % \end{abstract} % % \tableofcontents % % \section{Introduction} % % The \textsf{aiaa} distribution consists of a \LaTeX{} class % and various other files which simplifies the task of producing an AIAA % conference paper and the subsequent journal submission % For instance, with a simple, % one-word option in the beginning of the document, a manuscript can % take the form of a two-column conference paper replete with % cover-page or a double-spaced journal submission manuscript % with figures and tables at the end, including the required % caption lists. % % \section{Userguide} % % I apologize for the sparseness of this documentation; but, hey, % this is not in my job description.\ |;)|\ \ Hopefully the sample % document \file{smpaiaa.tex} provides suitable documentation % through example. % % \subsection{Requirements} % % The \kbd{aiaa} distribution was developed using % \LaTeXe{} of 1995/12/01, patch level 1, % running \TeX{} 3.14159 and % \texttt{dvips} 5.58f---the te\TeX{} distribution 0.3.3. % The \kbd{aiaa} distribution has also been demonstrated on % a Mac running the {\scshape Oz}\TeX{} \TeX{} distribution. % % The \kbd{aiaa} distribution works best with |dvips| and |MakeTeXPK| % installed, although not formally needed. Without these, the % output may not be as good as expected, affecting mainly the % appearance of the dropped capitals which can be incorporated % in the first paragraph of the typeset text. % % \subsection{Setup} % % If you have not already run \file{aiaa.ins} through \LaTeX{}, % do so know. The \pkg{docscript} package will rip the code % bits out of \file{aiaa.dtx} and save them in several files. % Move the files \file{aiaa.cls}, % \file{aiaa9pt.sty}, \file{aiaaenf.cfg}, and \file{aiaalgo.eps} % to a directory/folder % searched by \TeX{}\footnote{For a Unix te\TeX{} installation, % a privileged user could put these files in a directory named % something like \kbd{/usr/local/teTeX/texmf/tex/latex/aiaa}\ for % the entire site to use, remembering to run \kbd{texhash} to % re-configure te\TeX{} to include the new directory; % or, a lowly user could make their own directory, {\it e.g.}, % \kbd{$\sim$/tex/inputs}, put the files in there, and set % the environment variable \kbd{TEXINPUTS} via `\kbd{setenv % TEXINPUTS $\sim$/tex/inputs:}'. The colon represents the system search % path so, in this case, the user files take precedence. % On a Mac or PC installation put these files in % a folder named something like \file{TeX-inputs}.} % and the file \file{aiaa.bst} to % a directory/folder searched by \BibTeX{}.\footnote{% % Similar to preceding footnote, only on Unix use % the environment variable \kbd{BSTINPUTS} % for the bibliographic style file and % \kbd{BIBINPUTS} for the bibliographic database; for Mac's, % use the \file{BibTeX-inputs} folder, failing that try % using the \file{TeX-inputs} folder.} % % The \cls{aiaa} class depends % on having access to a number of packages.\footnote{When you process % a file with \LaTeX{}, it will let you which packages it is missing. The % less common ones are \pkg{dropping} and \pkg{caption2} while % the other required packages: % \pkg{lastpage}, \pkg{setspace}, \pkg{endfloat}, \pkg{overcite}, % \pkg{graphicx}, and \pkg{fancyhdr} are usually bundled with % most \LaTeX{} distributions.} % If your local site does not have all the packages necessary, they % can be obtained from your nearest Comprehensive TeX Archive % Network (CTAN) site. In fact, chances are that this is where you found % this distribution. Details on how to obtain packages from a % CTAN site are available at |http://www.tug.org/| % or various \LaTeX{} reference books~\cite{companion,guide}. % Especially helpful in locating various \LaTeX{} packages is % the \kbd{Catalogue.html} web page found in the \kbd{help/Catalogue} % directory of CTAN. % % \subsection{Usage} % The \cls{aiaa} class is envoked by including\\ % | \documentclass[|{\itshape options}|]{aiaa}|\\ % at the beginning of your document. The package % recognizes the following options: |submit|, |paper|, % |article|, |note|, and |cover|. % The |paper| option is the default and the |submit| option % overrides any other option. The |cover| option produces % a cover-page for conference papers or simulated journal % reprints. % In addition, any options that the standard \LaTeX{} article % class accepts can be also inserted, {\it e.g.}, % \kbd{draft}.\footnote{The \kbd{draft} % option replaces figures with a properly-sized, blank, framed box.} % Note, when using the |note| % option, your title and author information may need to be % modified with extra line breaks (|\\|) % since this information is no longer allowed to span both % columns. % Other than this, the document is written just like one were % using the standard \LaTeX{} article document class; and thus, I % don't have to write much more on usage since it has already % been documented by others in various \LaTeX{} % books~\cite{latex,companion,guide}. However, % some of the old commands have different behaviors and there are % a few new commands designed to make life a little brighter; % these are discussed in the following sections. % % \subsection{General Commands} % % Several standard \LaTeX{} commands have been modified % to behave differently under the new class. In addition, % several new commands have been introduced to ease % document preparation. Both types are discussed in the % following subsections. % % \subsubsection{New Behavior from Old Commands} % % \DescribeMacro{\abstract} % The |\abstract| command has been redefined within the \cls{aiaa} % class to behave as part of the |\maketitle| sequence. Simply % load |\abstract| as you would |\title| or |\author|, and % if you have not selected the options |submit| or |note|, the % text loaded into the |\abstract| command will be typeset, % indented and centered, underneath the title/author section. % % \DescribeMacro{\date} % The \cls{aiaa} class automatically nulls the |\date| command used % by |\maketitle|. Standard \LaTeX{} behavior of |\maketitle| % is to typeset the current date as part of the title section % if one is not given. So, normal one issues the command: % |\date{}|. When using the \cls{aiaa} class, this is not % necessary; this command has already been issued. % % \DescribeMacro{\and} % \DescribeMacro{\maketitle} % Suffice it to say that |\maketitle| and |\and| have also been % hacked. % % \DescribeMacro{\section} % \DescribeMacro{\subsection} % \DescribeMacro{\subsubsection} % \DescribeMacro{\paragraph} % \DescribeMacro{\subparagraph} % One no longer has to use the starred versions of these % commands to defeat the numbering of sections. The counter % \kbd{secnumdepth} has been set to $-2$ via, % |\setcounter{secnumdepth}{-2}| % so that even the unstarred versions of the sectioning commands % never produce a number.\footnote{The \kbd{secnumdepth} counter % controls how many % nesting levels of section numbers should be produced.} % Of course you can defeat this by changing the counter back to its % \LaTeX{} \cls{article} class default value of $3$ which % will number sections down to subsections. % % In addition, the fonts, sizes, and positions normally produced by % these commands have been modified to make the output similar % to a typeset journal article. In other words, % we take advantage of the fact that you are not using a % typewriter, {\it e.g.}, AIAA-suggested underlining for section % names is replaced by boldface, etc. % % \subsubsection{New Commands} % % \DescribeMacro{\dropword} % The command |\dropword| is used for the first word of the % introduction, and for any option other than |submit|, will % produce a dropped capital for the beginning of the paragraph. % Use is simply:\\ % | \dropword First words of the introduction, etc.|\\ % Note: this command also capitalizes the remaining % portion of the first word. % This macro relies on the presence of the |dropping| package % by Mats Dahlgren~\cite{dropping}. % % \DescribeMacro{\Figure} % \DescribeMacro{\Reference} % The commands |\Figure| and |\Reference| automatically % modulate between % ``Figure'' or ``Fig.'' and ``Reference'' or ``Ref.'' depending % on their location within a sentence.\footnote{Beware, % in bizarre instances these might fail, although they haven't % to date.} These were created because % the AIAA requires these words to be abbreviated when they do % not begin a sentence.\footnote{% % So, what? \ldots we save two whole characters and produce an % abomination in the process? Oh well. You can defeat this % abbreviation business and still use the short-hand for % the cross referencing by issuing the commands % \cs{renewcommand}% % \texttt{\string{\bslash Figure\string}}% % \texttt{\string{Figure$\sim$\bslash % ref\string{\#1\string}\string}} % and % \cs{renewcommand}% % \texttt{\string{\bslash figurename\string}}% % \texttt{\string{Figure\string}}.} So, instead of\\ % | Figure~\ref{f:fig1} is loud and Fig.~\ref{f:fig2} isn't.|\\ % you would type\\ % | \Figure{f:fig1} is loud and \Figure{f:fig2} isn't.|\\ % Similarly for |\Reference|. % % \DescribeMacro{\incfig} % The |\incfig| command is used for including figures via the % \pkg{graphicx} package of David Carlisle~\cite{graphicx}. It is % typically used for including Encapsulated Postscript files % (|*.eps|) within the |figure| environment. Thus, to include % a figure named |figa.eps| residing in a |figs| subdirectory, one % would use:\\ % | and \Figure{f:figurea} shows that things are purple.|\\ % | \begin{figure}|\\ % | \incfig{figs/figa}|\\ % | \caption{This is the caption for figure a.}|\\ % | \label{f:figurea}|\\ % | \end{figure}|\\ % | \Figure{f:figurea} also shows that people are green.|\\ % For more information regarding the inclusion of external % graphic files, see the file \file{epslatex.ps} in the \kbd{info} % directory on CTAN. % % \subsection{Layout-specific Commands} % % The following commands are used to load information for other % commands that produce appropriate headers, footers, cover-page % items, and document notices---{\it e.g.}, copyright conditions. All % of these commands are normally set in the preamble\footnote{% % The preamble is defined as anywhere between the % \cs{documentclass}\texttt{\string{\string}} % and \cs{begin}\texttt{\string{document\string}} commands.} % of your document (similar to |\author| and |\title|). % For a more modular, and perhaps cleaner approach, you could % place all of it in a file, \file{preamble.tex}, and use % |\input{preamble}| to include it. % % \subsubsection{Header and Footer Information} % % \DescribeMacro{\SubmitName} % \DescribeMacro{\PaperNumber} % \DescribeMacro{\ArticleIssue} % \DescribeMacro{\ArticleHeader} % \DescribeMacro{\NoteHeader} % The commands |\SubmitName|, |\PaperNumber|, % |\ArticleIssue|, |\ArticleHeader|, and % |\NoteHeader| are used to put appropriate items in the header % and footer of each page, {\it e.g.}, % \begin{verbatim} % \SubmitName{Kleb} % \PaperNumber{96--0825} % \ArticleIssue{Vol.~32, No.~6, November--December 1995}% first page % \ArticleHeader{Kleb et al: Pitch-Over Maneuver}% subsequent pages % \NoteHeader{J.Spacecraft, Vol.~32, No.~6: Engineering Notes} % \end{verbatim} % The command |\SubmitName| is used to mark the main author's % name on all pages for the % journal manuscript submission option: |submit|. The % |\PaperNumber| is used to include the paper number % for AIAA conference papers. % The commands |\ArticleIssue|, % |\ArticleHeader|, and |\NoteHeader| are used to create % the appropriate headers when simulating a journal article or % note. The contents of |\ArticleIssue| appear on the first page % and the contents of |\ArticleHeader| appear on subsequent pages while for % journal note simulations the contents of |\NoteHeader| is used for all pages. % % \subsubsection{Cover-page Information} % % \DescribeMacro{\CoverFigure} % \DescribeMacro{\Conference} % \DescribeMacro{\JournalName} % \DescribeMacro{\JournalIssue} % The commands |\CoverFigure|, % |\Conference|, |\JournalIssue|, and |\JournalName| provide % information for producing cover-pages. % \begin{verbatim} % \CoverFigure{tstfig.eps} % \Conference{{\bfseries 31st AIAA Aerospace Sciences \\ % Meeting and Exhibit} \\ % January 6--9, 1997/Reno, NV} % \JournalName{Journal of Spacecraft and Rockets} % \JournalIssue{Volume 32, Number 6, Pages 715--717} % \end{verbatim} % The commands |\CoverFigure| and % |\Conference| define a representative figure (optional) % and conference name/date/location to be used on the cover-page % of a conference paper, while % the commands |\JournalName| and |\JournalIssue| are for the % cover-page produced for journal article or note reprint simulations. % % \subsubsection{Copyright and Other Document Notices} % % \DescribeMacro{\PaperNotice} % \DescribeMacro{\JournalNotice} % A footnote describing the copyright conditions % and other information about the document are incorporated via the % |\PaperNotice| and |\JournalNotice| commands. These normally include % one of the the copyright series % of commands: |\copyrightA|, |\copyrightB|, |\copyrightC|, or % |\copyrightD|, described below. % To use, simply include something like the following in % the your document's preamble: % \begin{verbatim} % \PaperNotice{\copyrightA{1996}} % \JournalNotice{Presented as Paper 96--0825 at the AIAA 34th % Aerospace Sciences Meeting, Reno,~NV, % Jan.~15--18,~1996; received Feb.~15,~1996; % revision received Nov.~25,~1996. \copyrightC} % \end{verbatim} % % \newpage % % \DescribeMacro{\copyrightA} % \DescribeMacro{\copyrightB} % \DescribeMacro{\copyrightC} % \DescribeMacro{\copyrightD} % The copyright commands will expand to one of the standard AIAA % forms: A, B, C, or D. % They each have different arguments---or no arguments---depending on the % requirements:\\ % | \copyrightA{|\textit{year}|}|\\ % | \copyrightB{|\textit{year}|}{|\textit{fullname}|}|\\ % | \copyrightC|\\ % | \copyrightD{|\textit{year}|}|\\ % See your AIAA copyright instructions for which form to use. % % \section{Known Problems} % % \begin{itemize} % % \item The bibliographic style sheet |aiaa.bst| isn't fully % tested; and thus, you may need to fiddle with your % |.bbl| file for your final copy, {\it i.e.}, edit |file.bbl| % after running a \LaTeX{}, \BibTeX{}, \LaTeX{} sequence, % but before running \LaTeX{} the final time. Note, if % you run \BibTeX{} after modifying |file.bbl|, you will % lose your modifications when \LaTeX{} is run % again. Therefore, it is best to turn off write-permission % on \file{file.bbl} after you have it correct. % % \item For a `tabular' subfigure situation,\footnote{See % sample documents \file{smpaiaa.tex} and \file{smpsubf.tex}.} % the |submit| % option may clip some of the subfigures. In fact, the % way the |submit| option deals with subfigures % needs work---to put it mildly. % % Also, if your captions for each subfigure do not have % the same number of lines when typeset, the subfigures % will be misaligned. You can alleviate this by adding % newlines (|\\|) to the shorter lines as necessary. % % \item Currently you have to make subfigure captions appear % in bold font explicitly, {\it e.g.},\\ % | \subfigure[\bf subcaption.]{\incfig{fig.eps}}|\\ % The next version of \pkg{subfigure} will remedy this. % % \item Using the starred versions of |figure| and |table| % environments (floats which span both columns) % inter-mixed with the unstarred versions (single-column % wide floats) often creates a situation where the % figures or tables appear out of order. For the final % copy, this can normally be corrected with judicious % use of float position specifiers.\footnote{Recall, {\bf % never} use just \kbd{[h]}, always give other options or % that float might get `stuck' and force it and all the % following floats to the end of the document.} % Unfortunately, this is % stock, documented behavior for \LaTeX{}. % A non-distributable solution exists, but no % freely-available one has surfaced. % A request has been filed with the % \TeX{}perts to remedy this situation. % % \item The notices come after the author footnotes. To % produce the correct behavior requires significant % changes to the |\maketitle| command. % % \item The simulated journal cover-pages do not have the % correct font for the journal name---does anyone know % where to get such a tall, bold, squashed helvetic-style % font? It looks like Bitstream's Aurora condensed\ldots % % \end{itemize} % % \section{Acknowledgements} % % Bundling and documenting this |aiaa| distribution in docstrip % format was done by using other packages as a model, % particularly, Mats Dahlgren's \pkg{dropping}~\cite{dropping} % and Jeff Goldberg {\em et al}'s \pkg{endfloat}~\cite{endfloat}. % % I want to thank the people of the |comp.text.tex| newsgroup, % the \TeX{}/\LaTeX{} Frequently Asked Questions maintainers, % and various package authors for patiently answering my inane % questions, in particular and in no particular order: % \begin{list} % {$\triangleright$} % {\setlength{\itemsep}{0pt}\setlength{\parsep}{0pt}} % \item Donald Arsenau (|asnd@reg.triumf.ca|) % \item Robin Fairbairns (|Robin.Fairbairns@cl.cam.ac.uk|) % \item Piet van Oostrum (|piet@cs.ruu.nl|) % \item Jeroen Nijhof (|nijhof@th.rug.nl|) % \item Steven Douglas Cochran (|sdc+@cs.cmu.edu|) % \item Jeffrey Goldberg (|J.Goldberg@cranfield.ac.uk|) % \item Mark Wooding (|mdw@excessus.demon.co.uk|) % \item Paul Foley (|mycroft@actrix.gen.nz|) % \item David Kastrup (|dak@fsnif.neuroinformatik.ruhr-uni-bochum.de|) % \item Jerry Leichter (|leichter@smarts.com|) % \item P.~W.~Daly (|daly@linpwd.mpae.gwdg.de|) % \item David Carlisle (|carlisle@goofy.zdv.Uni-Mainz.de|) % \end{list} % % \section{Sending a Bug Report} % The \textsf{aiaa} distribution is highly likely to contain % bugs. Reports % of bugs in the package are most welcome. However, I % consider this to be a minimally ``supported'' package. % I will do what I can, when I can---promising nothing. % Before filing a bug report, % please take the following actions: % \begin{enumerate} % \item Ensure your problem is not due to your own input file or % package(s): % \item Ensure your problem is not covered in the section % ``Known Problems'' above; % \item Try to locate the problem by writing a {\it minimal} % \LaTeX{} input file which reproduces the problem. % Include the command\\ % | \setcounter{errorcontextlines}{50}|\\ % in your input to provide extra context when things go awry; % \item Run your file through \LaTeX{}; % \item Send a description of your problem, the input file % and the log file via e-mail to: \texttt{w.l.kleb@larc.nasa.gov}. % \end{enumerate} % I am not in the business of answering generic \TeX{}/\LaTeX{} % questions; so if your problem appears to be such, I will % let you know.\bigskip % % \noindent{\itshape Enjoy(?) the everpresent deadline and enjoy your % \LaTeX!\raisebox{-\baselineskip}{---bil}} % % \begin{thebibliography}{1} % % \bibitem{companion} % Michel Goossens, Frank Mittelbach, and Alexander Samarin. % \newblock{\em The {\LaTeX} Companion}. % \newblock Addison-Wesley, Reading, Massachusetts, 1994. % % \bibitem{guide} % Helmut Kopka and Patrick W. Daly. % \newblock{\em A Guide to {\LaTeXe}: Document Prepartion for % Beginners and Advanced Users}. % \newblock 2nd ed. % \newblock Addison-Wesley, Reading, Massachusetts, 1994. % % \bibitem{latex} % Leslie Lamport. % \newblock{\em {\LaTeX}: A Document Preparation System}. % \newblock 2nd ed. % \newblock Addison-Wesley, Reading, Massachusetts, 1994. % % \bibitem{dropping} % Mats Dahlgren. % \newblock \pkg{dropping}---A \LaTeX{} Macro for Dropping % the First Character(s) of a Paragraph. % \newblock June 1996. (version~0.1) % \newblock Electronic Documentation. % % \bibitem{graphicx} % David Carlisle. % \newblock Packages in the `graphics' bundle. % \newblock December 1995. % \newblock Electronic Documentation. % % \bibitem{endfloat} % James Darrell McCauley and Jeff Goldberg. % \newblock The \texttt{endfloat} Package. % \newblock October 1995. (version~2.4i) % \newblock Electronic Documentation. % % \end{thebibliography} % % \StopEventually{\PrintChanges} % % \newpage % % \section{The Documentation} % % The following contains the documentation driver for this user manual. % \begin{macrocode} %<*driver> \documentclass{ltxdoc} \setlength\hfuzz{2pt}% reduce overfull warnings \OnlyDescription % stop at \StopEventually %\RecordChanges % display change information \begin{document} \DocInput{aiaa.dtx} \end{document} % % \end{macrocode} % % \section{The Code} % % For the interested reader(s), following is a semi-documented % of the class code. The 9pt, bibliographic style file, and % the endfloat configuration bits are not presented by default, if you really % want to see those here, you need to comment out the |\OnlyDescription| % setting in the || section of \file{aiaa.dtx}. % If you feel the need to % modify things, simply cut the section you want to change % and save it to a file named \file{mymods.sty}. Then modify % the code in \file{mymods.sty} to suit your needs and include % it in your document via |\usepackage{mymods}| in the % preamble. % % \subsection{The class code} % % The underlying logic is supposed to look like:\footnote{Picture % environment flowchart generated by flow 0.99b.}\\[1pt] % % \setlength\unitlength{1.8em} % \thicklines % \begin{picture}(16.000000,20.000000)(-1.000000,-20.000000) % \put(1.0000,-0.5000){\oval(2.0000,1.0000)} % \put(0.0000,-1.0000){\makebox(2.0000,1.0000)[c]{\shortstack[c]{ % begin % }}} % \put(1.0000,-1.0000){\vector(0,-1){1.0000}} % \put(-1.0000,-4.0000){\framebox(4.0000,2.0000)[c]{\shortstack[c]{ % code common\\ % to all options % }}} % \put(1.0000,-4.0000){\vector(0,-1){1.0000}} % \put(-0.5000,-6.5000){\line(1,1){1.5000}} % \put(-0.5000,-6.5000){\line(1,-1){1.5000}} % \put(2.5000,-6.5000){\line(-1,-1){1.5000}} % \put(2.5000,-6.5000){\line(-1,1){1.5000}} % \put(-0.5000,-8.0000){\makebox(3.0000,3.0000)[c]{\shortstack[c]{ % \texttt{submit}? % }}} % \put(2.5000,-6.0500){\makebox(0,0)[lt]{No}} % \put(1.4500,-8.0000){\makebox(0,0)[lb]{Yes}} % \put(1.0000,-8.0000){\vector(0,-1){1.0000}} % \put(0.0000,-11.0000){\framebox(2.0000,2.0000)[c]{\shortstack[c]{ % \texttt{submit}\\ % code % }}} % \put(1.0000,-11.0000){\vector(0,-1){1.0000}} % \put(1.0000,-12.5000){\oval(2.0000,1.0000)} % \put(0.0000,-13.0000){\makebox(2.0000,1.0000)[c]{\shortstack[c]{ % done % }}} % \put(2.5000,-6.5000){\vector(1,0){1.0000}} % \put(3.5000,-7.5000){\framebox(5.0000,2.0000)[c]{\shortstack[c]{ % \texttt{paper}/\texttt{article}\\ % /\texttt{note} code % }}} % \put(6.0000,-7.5000){\vector(0,-1){1.0000}} % \put(4.5000,-10.0000){\line(1,1){1.5000}} % \put(4.5000,-10.0000){\line(1,-1){1.5000}} % \put(7.5000,-10.0000){\line(-1,-1){1.5000}} % \put(7.5000,-10.0000){\line(-1,1){1.5000}} % \put(4.5000,-11.5000){\makebox(3.0000,3.0000)[c]{\shortstack[c]{ % \texttt{paper}? % }}} % \put(7.5000,-9.5500){\makebox(0,0)[lt]{No}} % \put(6.4500,-11.5000){\makebox(0,0)[lb]{Yes}} % \put(7.5000,-10.0000){\vector(1,0){1.0000}} % \put(8.5000,-11.0000){\framebox(4.0000,2.0000)[c]{\shortstack[c]{ % \texttt{article} or\\ % \texttt{note} code % }}} % \put(10.5000,-11.0000){\vector(0,-1){1.0000}} % \put(9.0000,-13.5000){\line(1,1){1.5000}} % \put(9.0000,-13.5000){\line(1,-1){1.5000}} % \put(12.0000,-13.5000){\line(-1,-1){1.5000}} % \put(12.0000,-13.5000){\line(-1,1){1.5000}} % \put(9.0000,-15.0000){\makebox(3.0000,3.0000)[c]{\shortstack[c]{ % \texttt{article}? % }}} % \put(12.0000,-13.0500){\makebox(0,0)[lt]{No}} % \put(10.9500,-15.0000){\makebox(0,0)[lb]{Yes}} % \put(12.0000,-13.5000){\vector(1,0){1.0000}} % \put(13.0000,-14.5000){\framebox(2.0000,2.0000)[c]{\shortstack[c]{ % \texttt{note}\\ % code % }}} % \put(14.0000,-14.5000){\vector(0,-1){1.0000}} % \put(14.0000,-16.0000){\oval(2.0000,1.0000)} % \put(13.0000,-16.5000){\makebox(2.0000,1.0000)[c]{\shortstack[c]{ % done % }}} % \put(10.5000,-15.0000){\vector(0,-1){1.0000}} % \put(9.0000,-18.0000){\framebox(3.0000,2.0000)[c]{\shortstack[c]{ % \texttt{article}\\ % code % }}} % \put(10.5000,-18.0000){\vector(0,-1){1.0000}} % \put(10.5000,-19.5000){\oval(2.0000,1.0000)} % \put(9.5000,-20.0000){\makebox(2.0000,1.0000)[c]{\shortstack[c]{ % done % }}} % \put(6.0000,-11.5000){\vector(0,-1){1.0000}} % \put(5.0000,-14.5000){\framebox(2.0000,2.0000)[c]{\shortstack[c]{ % \texttt{paper}\\ % code % }}} % \put(6.0000,-14.5000){\vector(0,-1){1.0000}} % \put(6.0000,-16.0000){\oval(2.0000,1.0000)} % \put(5.0000,-16.5000){\makebox(2.0000,1.0000)[c]{\shortstack[c]{ % done % }}} % \end{picture}\\ % This does not mean the code as a whole is organized according % to this; but, rather this is the case for each % macro/environment defined. % % First, the package is to identify itself: % \begin{macrocode} % %<*class> % \NeedsTeXFormat{LaTeX2e}[1994/06/01] \ProvidesClass{aiaa}[1996/12/13 v0.2 AIAA document class] % \end{macrocode} % Flags % \begin{macrocode} \newif\if@submit \newif\if@paper \newif\if@article \newif\if@note \newif\if@cover % \end{macrocode} % Default settings % \begin{macrocode} \@submitfalse \@papertrue \@articlefalse \@notefalse \@coverfalse % \end{macrocode} % declaration of options % Note that options will be processed in order of the |\DeclareOption| % commands in this file, so since we want submit to take precedence % over all the other options, we process it last. Note also that % all flags are reset with each option, so that they are % independent of the defaults. % \begin{macrocode} \DeclareOption{note}{\@notetrue\@articlefalse\@submitfalse\@paperfalse} \DeclareOption{article}{\@articletrue\@notefalse\@paperfalse\@submitfalse} \DeclareOption{paper}{\@papertrue\@articlefalse\@notefalse\@submitfalse} \DeclareOption{submit}{\@submittrue\@paperfalse\@articlefalse\@notefalse} \DeclareOption{cover}{\@covertrue} \DeclareOption*{\PassOptionsToClass{\CurrentOption}{article}% \typeout{NOTE: Passing ``\CurrentOption" option on to the standard LaTeX article class}} % \end{macrocode} % actually process the options % \begin{macrocode} \ProcessOptions \typeout{} \if@submit% \typeout{NOTE: aiaa journal submission mode - all other aiaa options ignored} \else% paper, article, or note \if@paper% \typeout{TYPESETTING in AIAA conference PAPER format ...} \else% article or note \if@article% \typeout{TYPESETTING in AIAA journal ARTICLE simulation format ...} \else% note \typeout{TYPESETTING in AIAA journal NOTE simulation ...} \fi \fi \fi \typeout{} % \end{macrocode} % load the \LaTeX{} standard article class with |twoside| and % |twocolumn| for all but the submit option. For a journal article % or note, also load the aiaa9pt package. % \begin{macrocode} \if@submit% \LoadClass[12pt]{article}% \RequirePackage[noheads,tablesfirst,nomarkers]{endfloat}% \RequirePackage{setspace}% \RequirePackage{lastpage}% \else% paper, article or note \LoadClass[twoside,twocolumn]{article}% \RequirePackage{dropping}% \RequirePackage{lastpage}% \if@paper% \relax% \else% article or note \RequirePackage{aiaa9pt}% \fi% \fi % \end{macrocode} % packages used by this class for all options % \begin{macrocode} \RequirePackage{graphicx} \RequirePackage{overcite} \RequirePackage{caption2} \RequirePackage{fancyhdr} \RequirePackage{subfigure}[1995/03/06] %\RequirePackage[bf]{subfigure}[1997/0?/??] % when new version comes out % \end{macrocode} % % main code % % page sizes: % \begin{macrocode} \if@submit \setlength{\topmargin}{-0.25in} \setlength{\headsep}{9.5pt} \setlength{\textheight}{9in} \setlength{\textwidth}{6.5in} \setlength{\oddsidemargin}{0.0in} \AtBeginDocument{\onehalfspacing}% turn on `doublespacing' \else% paper, article, or note \setlength{\topmargin}{-0.75in} \if@paper \setlength{\headsep}{9.5pt} \setlength{\textheight}{9.5in} \setlength{\textwidth}{6.75in} \setlength{\columnsep}{0.25in} \setlength{\footskip}{0.25in} \else% article or note \setlength{\topmargin}{-0.75in} \setlength{\headsep}{10pt} \setlength{\footskip}{20pt} \setlength{\textheight}{10in} \setlength{\textwidth}{7in} \setlength{\columnsep}{0.375in} \setlength{\oddsidemargin}{-0.25in} \renewcommand{\baselinestretch}{0.9} \fi \setlength{\evensidemargin}{\oddsidemargin} \fi % \end{macrocode} % % \begin{macro}{\SubmitName} % \begin{macro}{\PaperNumber} % \begin{macro}{\ArticleHeader} % \begin{macro}{\ArticleIssue} % \begin{macro}{\JournalName} % \begin{macro}{\JournalIssue} % \begin{macro}{\NoteHeader} % various macros % \begin{macrocode} \newcommand*{\SubmitName}[1]% {\def\AA@submitname{#1}} \newcommand*{\PaperNumber}[1]% {\def\AA@papernumber{#1}} \newcommand*{\ArticleHeader}[1]% {\def\AA@articleheader{#1}} \newcommand*{\ArticleIssue}[1]% {\def\AA@articleissue{#1}} \newcommand*{\JournalName}[1]% {\def\AA@journalname{#1}} \newcommand*{\JournalIssue}[1]% {\def\AA@journalissue{#1}} \newcommand*{\NoteHeader}[1]% {\def\AA@noteheader{#1}} % \end{macrocode} % \end{macro} % \end{macro} % \end{macro} % \end{macro} % \end{macro} % \end{macro} % \end{macro} % initialize them to nothing % \begin{macrocode} \SubmitName{} \PaperNumber{} \ArticleHeader{} \ArticleIssue{} \JournalName{} \NoteHeader{} % \end{macrocode} % fancy headers/footers: % \begin{macrocode} \pagestyle{fancy}% note: must be issued after any \textwidth % command \renewcommand{\headrulewidth}{0pt} \renewcommand{\footrulewidth}{0pt} \fancyhf{} % clear all footers and headers \if@submit \rfoot{\footnotesize\scshape\thepage\ of \pageref{LastPage}} \lfoot{\footnotesize\scshape\AA@submitname} \else% paper, article, or note \if@paper % \fancyhead[RO,LE]{\scriptsize\sffamily \AA@papernumber} \cfoot{\footnotesize\scshape\thepage\ of \pageref{LastPage} \ifx\AA@papernumber\@empty\relax\else\\ \rule[.2\baselineskip]{0.5in}{0.2pt}\\ American Institute of Aeronautics and Astronautics Paper \AA@papernumber\fi} \else% article or note \if@article \chead{\footnotesize\scshape\MakeUppercase{\AA@articleheader}} \fancyhead[RO,LE]{\footnotesize\thepage} \fancypagestyle{plain}{% \fancyhf{} \lhead{\scriptsize{\scshape\AA@journalname}\\\AA@articleissue} \cfoot{\footnotesize\thepage}} \else% note \chead[\scriptsize\scshape\AA@noteheader]% {\scriptsize\scshape\AA@noteheader} \rhead[]{\footnotesize \thepage} \lhead[\footnotesize \thepage]{} \fi \fi \fi % \end{macrocode} % \begin{macro}{\abstract} % Redefine the |\abstract| command and load the date with nothing % \begin{macrocode} \renewcommand{\abstract}[1]% {\def\@abstract{#1}} \abstract{} \let\@date\@empty % \end{macrocode} % \end{macro} % % \begin{macro}{\dropword} % macro to drop first letter of word and capitalize the remaining % portion, thanks to jeroen nijhof || % % use:\\ % | \dropword| word with rest of sentence or newline or whatever... % \begin{macrocode} \if@submit% \def\dropword{} \else \def\dropword#1#2 {\dropping{2}{\bfseries{} #1}\MakeUppercase{#2} }% spaces important! \fi % \end{macrocode} % \end{macro} % % \begin{macro}{\Figure} % \begin{macro}{\Reference} % automatic figure/fig and reference/ref modulation (code from r fairbairns % ||) (idea from a nedungadi ||) % % \begin{macrocode} \newcommand\Figure[1]{\def\temp{Figure}% first guess \ifvmode % if in vertical mode this the start of a paragraph, so % inevitably it starts a sentence, so Figure is right \else \ifnum \spacefactor<3000 % \spacefactor is made 3000 by an end % sentence punctuation character % NB: DOESN'T WORK IN \frenchspacing \def\temp{Fig.}% \fi \fi \temp~\ref{#1}} \newcommand\Reference[1]{\def\temp{Reference}% \ifvmode \else \ifnum \spacefactor<3000 % \def\temp{Ref.}% \fi \fi \temp~\citen{#1}} % \end{macrocode} % \end{macro} % \end{macro} % increase penalty (x10) for consecutive lines ending in hyphens: % \begin{macrocode} \doublehyphendemerits=100000 % \end{macrocode} % ignore small line overfull errors: % \begin{macrocode} \setlength\hfuzz{2pt}% reduce overfull warnings % \end{macrocode} % give more context when an error is encountered % \begin{macrocode} \setcounter{errorcontextlines}{10} % \end{macrocode} % \begin{macro}{\makecover} % \begin{macro}{\Conference} % the conference paper cover maker % The command |\makecover| is used % to make a cover for a % AIAA conference paper or a simulated journal reprint. % It is only active when the |submit| option is not in effect % The |\makenotice| command is used to create the footnote % containing copyright and other information about the document. % The commands |\makecover| and |\makenotice| are internally % called by the |\maketitle| command and are constructed % similarly to the |\maketitle| command, in that |\makecover| uses % information supplied by the commands described in the previous % section, and |\makenotice| incorporates one of the appropriate % |\_____Notice| commands. % \begin{macrocode} \newcommand{\Conference}[1]{\def\AA@conference{#1}} \Conference{} \newcommand{\CoverFigure}[1]{\def\AA@coverfigure{#1}} \CoverFigure{} \if@submit% \newcommand{\makecover}{} \else% paper, article, or note \newcommand{\makecover}{% \begin{titlepage} \let\AA@sfdefault\sfdefault% save normal fonts \let\AA@rmdefault\rmdefault \let\AA@ttdefault\ttdefault \renewcommand{\sfdefault}{phv}% change to new fonts \renewcommand{\rmdefault}{ptm} \renewcommand{\ttdefault}{pcr} \enlargethispage{1in} \setcounter{page}{0} \renewcommand\thanks[1]{}% locally kill the \thanks{} command \setlength{\unitlength}{0.1in}% unit of measure for the picture \begin{picture}(75,90)(5,5)% start a 7-1/2'' x 9'' picture: \if@paper% \linethickness{4pt} \put(0,0){\framebox(75,90){}}% make a framed box \linethickness{0.5pt} \put(-3,88){\incfig[3.25in]{aiaalgo}}% aiaa logo at top left \put(12,80)% paper number, title, author/location {\makebox(0,0)[tl]{\parbox{5in} {\sffamily\bfseries \Huge AIAA \AA@papernumber% paper number \\[5pt] \huge\@title% title \\[5pt] \Large\mdseries\@author}}}% author/location \ifx\CoverFigure\@empty% optional figure \relax \else \put(37.5,17){\makebox(0,0)[b]{% \includegraphics[width=5in,height=4in,keepaspectratio]% {\AA@coverfigure}}}% \fi \put(37.5,2){\makebox(0,0)[b]{\parbox{7.5in}% meeting, location, and date {\centering\huge\bfseries\sffamily% \AA@conference}}} \put(-0.5,-2){\parbox[t]{7.5in}{\normalsize\sffamily% notice For permission to copy or republish, contact the American Institute of Aeronautics and Astronautics\\ 1801 Alexander Bell Drive, Suite 500, Reston, VA 22091}} \else% article, or note \put(7,77.5)% title and authors {\makebox(0,0)[tl]{\parbox{6.5in} {\sffamily\bfseries \huge\@title% \\*[-8pt] \Large\mdseries\@author}}} \put(7,19){\makebox(0,0)[tl]{\parbox{7.5in}% journal/issue {\raggedright\bfseries\sffamily Simulated Reprint from\\ \Huge% \AA@journalname\\ \small\mdseries\AA@journalissue}}} \put(5,4.5){\incfig[1in]{aiaalgo}}% aiaa logo at bottom left \put(7,3)% notice {\makebox(0,0)[tl]{\parbox{6.5in} {\sffamily \slshape A publication of the\\ \upshape American Institute of Aeronautics and Astronautics, Inc.\\ 1801 Alexander Bell Drive, Suite 500\\ Reston, VA 22091}}} \fi \end{picture} \renewcommand\sfdefault{\AA@sfdefault} \renewcommand\rmdefault{\AA@rmdefault} \renewcommand\ttdefault{\AA@ttdefault} \end{titlepage}} \fi % \end{macrocode} % \end{macro} % \end{macro} % % \begin{macro}{\PaperNotice} % \begin{macro}{\JournalNotice} % \begin{macro}{\makenotice} % the footnote notice maker % \begin{macrocode} \newcommand{\PaperNotice}[1]{\def\AA@papernotice{#1}} \PaperNotice{} \newcommand{\JournalNotice}[1]{\def\AA@journalnotice{#1}} \JournalNotice{} \if@submit% \newcommand\makenotice{}% \else% paper, article, or note \newcommand\makenotice{% \begingroup \renewcommand\thefootnote{} \if@paper% \ifx\AA@papernotice\@empty\else\footnotetext{\AA@papernotice}\fi \else% article or note \ifx\AA@journalnotice\@empty\else\footnotetext{\AA@journalnotice}\fi \fi% \endgroup % \renewcommand{\thefootnote}{\arabic{footnote}}% } \fi % \end{macrocode} % \end{macro} % \end{macro} % \end{macro} % \end{macro} % \begin{macro}{\CopyrightA} % \begin{macro}{\CopyrightB} % \begin{macro}{\CopyrightC} % \begin{macro}{\CopyrightD} % load copyright commands % \begin{macrocode} \newcommand{\CopyrightA}[1]{Copyright \copyright #1 by the American Institute of Aeronautics and Astronautics, Inc. All rights reserved.} \newcommand{\CopyrightB}[2]{Copyright \copyright #1 by #2. Published by the American Institute of Aeronautics and Astronautics, Inc.\ with permission.} \newcommand{\CopyrightC}{This paper is a work of the U.S. Government and is not subject to copyright protection in the United States.} \newcommand{\CopyrightD}[1]{Copyright \copyright #1 by the American Institute of Aeronautics and Astronautics, Inc. No copyright is asserted in the United States under Title 17, U.S. Code. The U.S. Government has a royalty-free license to exercise all rights under the copyright claimed herein for governmental purposes. All other rights are reserved by the copyright owner.} % \end{macrocode} % \end{macro} % \end{macro} % \end{macro} % \end{macro} % modify float captions % \begin{macrocode} \if@submit \renewcommand\figurename{Figure} \renewcommand\captionlabeldelim{} \else% paper, article, or note \renewcommand\figurename{Fig.}% change to the ugly, silly % abbreviatation as per aiaa---saves % all of two characters !? \renewcommand\captionlabeldelim{~~} \fi \renewcommand\captionfont{\small\bfseries} \renewcommand\thesubfigure{\alph{subfigure})} \renewcommand\p@subfigure{\thefigure(} \renewcommand\subcaplabelfont{\captionfont} \renewcommand{\subfigcapmargin}{2pt} \if@submit \relax \else \setlength{\abovecaptionskip}{ 6pt plus 2pt minus 2pt} \setlength{\belowcaptionskip}{ 3pt plus 1pt minus 1pt} \renewcommand{\subfigcapskip}{\abovecaptionskip} \renewcommand{\subfigbottomskip}{\belowcaptionskip} \fi % \end{macrocode} % modify float spacing or, if we're submitting something, % the behavior of the |endfloat| package. % \begin{macrocode} \if@submit% modify endfloat behaviour \InputIfFileExists{aiaaenf.cfg}{\typeout{loading aiaaenf.cfg}}% {\typeout{WARNING: endfloat behavior will not be as advertised since aiaaenf.cfg was not found.}} \else% modify float spacing \renewcommand{\topfraction}{0.9} \renewcommand{\bottomfraction}{0.9} \renewcommand{\textfraction}{0.1} \renewcommand{\floatpagefraction}{0.8}% 0.5 is the default \renewcommand{\dbltopfraction}{\floatpagefraction} \renewcommand{\dblfloatpagefraction}{\floatpagefraction} \setcounter{topnumber}{10} \setcounter{dbltopnumber}{\value{topnumber}} \setcounter{bottomnumber}{\value{topnumber}} \setcounter{totalnumber}{\value{topnumber}} \addtocounter{totalnumber}{\value{bottomnumber}} \setlength{\floatsep} { 5pt plus 2pt minus 2pt} \setlength{\textfloatsep} { 5pt plus 2pt minus 3pt} \setlength{\intextsep} { 5pt plus 2pt minus 2pt} \setlength{\dblfloatsep} {\floatsep} \setlength{\dbltextfloatsep} {\textfloatsep} \fi % \end{macrocode} % modifying bibliography output % \begin{macrocode} \renewcommand{\@biblabel}[1]{$^{#1}$} \renewenvironment{thebibliography}[1]% {\section*{\refname\@mkboth{\MakeUppercase\refname}% {\MakeUppercase\refname}}% \list{\@biblabel{\@arabic\c@enumiv}}% {\setlength{\leftmargin}{0pt}% \settowidth{\labelwidth}{\@biblabel{#1}}% \setlength{\itemindent}{\parindent}% \advance\itemindent by \labelwidth% \setlength{\labelsep}{0.0em}% \setlength{\itemsep}{-\smallskipamount}% \@openbib@code% \usecounter{enumiv}% \let\p@enumiv\@empty% \renewcommand\theenumiv{\@arabic\c@enumiv}% \if@submit% \normalsize% \else% \footnotesize% \fi} \sloppy\clubpenalty4000\widowpenalty4000% \sfcode`\.\@m} {\def\@noitemerr {\@latex@warning{Empty `thebibliography' environment}}% \endlist} % \end{macrocode} % % \begin{macro}{\incfig} % define command that picks-up the current line width % for automatic figure sizing % \begin{macrocode} \if@submit% \newcommand{\incfig}[2][\linewidth]% {\centering\includegraphics[width=#1,% keepaspectratio,totalheight=0.35\textheight]{#2}}% \else% paper, article, or note \newcommand{\incfig}[2][\linewidth]% {\centering\includegraphics[width=#1,keepaspectratio]{#2}}% \fi % \endmacrocode % \end{macro} % \begin{macro}{\maketitle} % change maketitle behavior to preserve twocolumn mode for % journal note, to create a cover page if appropriate, and make % the copyright-style notices about the document. % \begin{macrocode} \if@paper \renewcommand{\and}{\\[-.9\baselineskip]} \else \renewcommand{\and}{\\*[-8pt]} \fi \renewcommand{\maketitle}{% \if@cover \makecover \else \relax \fi \par \begingroup \renewcommand\thefootnote{\@fnsymbol\c@footnote}% \def\@makefnmark{\rlap{\@textsuperscript{\normalfont\@thefnmark}}}% \long\def\@makefntext##1{\parindent 1em\noindent \hb@xt@1.8em{% \hss\@textsuperscript{\normalfont\@thefnmark}}##1}% \global\@topnum\z@ % Prevents figures from going at top of page. \if@submit% \@maketitle% \else% paper, article, or note \if@note% \@maketitle% \else% paper article -- should already be in twocolumn mode \ifnum \col@number=\@ne% if in column one, good: \@maketitle \else% not in column one, so start new page: \twocolumn[\@maketitle] \fi \if@article% \thispagestyle{plain} \fi \fi \fi \@thanks \endgroup \suppressfloats \setcounter{footnote}{0}% \makenotice \global\let\maketitle\relax \global\let\@maketitle\relax \global\let\@abstract\@empty \global\let\@thanks\@empty \global\let\thanks\relax \global\let\@author\@empty \global\let\author\relax \global\let\@title\@empty \global\let\title\relax \global\let\@date\@empty \global\let\abstract\relax \global\let\date\relax } % \end{macrocode} % \end{macro} % \begin{macro}{\@maketitle} % modify the fonts used for the title, etc % \begin{macrocode} \def\@maketitle{% \newpage \begin{center}% \let \footnote \thanks {\Large\bf \@title \par}% \vskip 1.5em% {\lineskip .5em% \large% \begin{tabular}[t]{c}% \@author \end{tabular}\par}% \vskip 1em% \if@submit \relax \else% paper, article, or note \if@note \relax \else \newenvironment{AA@abstract} {\list{}{\listparindent 1.5em% \itemindent \listparindent \leftmargin 0.75in% \rightmargin \leftmargin \parsep \z@ \@plus \p@}% \item\relax} {\endlist} \ifx\@abstract\@empty \relax \else \begin{AA@abstract} \footnotesize\textbf\@abstract \end{AA@abstract} \fi \fi \fi \end{center}% \if@submit% \ifx\@abstract\@empty \relax \else \section{Abstract} \@abstract% \fi \else% paper, article, or note \par% \if@note% \vskip -\medskipamount% \else% \vskip 1em% \fi% \fi% } % \end{macrocode} % \end{macro} % modify the section headers % \begin{macrocode} \setcounter{secnumdepth}{-2}% instead of having to use the *'d % section commands % \end{macrocode} % \begin{macro}{\section} % \begin{macrocode} \renewcommand\section{\@startsection {section}% % section name {1}% % level {\z@}% % indentation of heading {1.8ex}% % before skip (neg, no parindent) {0.5ex}% % after skip (neg, run-on heading space) {\normalfont\center\large\bfseries}} % \end{macrocode} % \end{macro} % \begin{macro}{\subsection} % \begin{macrocode} \renewcommand\subsection{\@startsection{subsection}{2}% {\z@}% {1.5ex}% {0.5ex}% {\normalfont\small\bfseries\raggedright}} % \end{macrocode} % \end{macro} % \begin{macro}{\subsubsection} % \begin{macrocode} \renewcommand\subsubsection{\@startsection{subsubsection}{3}% {\z@}% {1.5ex}% {0.5ex}% {\normalfont\normalsize\itshape\raggedright}} % \end{macrocode} % \end{macro} % \begin{macro}{\paragraph} % \begin{macrocode} \renewcommand\paragraph{\@startsection{paragraph}{4}% {\parindent}% {0.3ex}% {-1em}% {\normalfont\normalsize\sffamily}} % \end{macrocode} % \end{macro} % \begin{macro}{\subparagraph} % \begin{macrocode} \renewcommand\subparagraph{\@startsection{subparagraph}{5}% {\parindent}% {0.3ex}% {-1em}% {\normalfont\normalsize\itshape}} % \end{macrocode} % \end{macro} % list files used during job: % \begin{macrocode} \listfiles % % % % \end{macrocode} % % This brings us to the end of \cls{aiaa.cls}. % % \subsection{The 9pt style file} % % This is the package \pkg{aiaa9pt.sty}, it provides 9pt font settings % for simulation of journal articles/notes. It is essentially % a hack of size10.clo (a the standard \LaTeX{} class option). % % \begin{macrocode} % %<*style> % \ProvidesFile{aiaa9pt.sty} [1996/11/06 v1.0 AIAA style file (9pt option)] \renewcommand\normalsize{% \@setfontsize\normalsize\@ixpt\@xipt \abovedisplayskip 9\p@ \@plus2\p@ \@minus4\p@ \abovedisplayshortskip \z@ \@plus3\p@ \belowdisplayshortskip 6\p@ \@plus3\p@ \@minus3\p@ \belowdisplayskip \abovedisplayskip \let\@listi\@listI} \normalsize \renewcommand\small{% \@setfontsize\small\@viiipt\@xpt% \abovedisplayskip 7\p@ \@plus2\p@ \@minus3\p@ \abovedisplayshortskip \z@ \@plus2\p@ \belowdisplayshortskip 3\p@ \@plus2\p@ \@minus2\p@ \def\@listi{\leftmargin\leftmargini \topsep 3\p@ \@plus2\p@ \@minus2\p@ \parsep \p@ \@plus\p@ \@minus\p@ \itemsep \parsep}% \belowdisplayskip \abovedisplayskip } \renewcommand\footnotesize{% \@setfontsize\footnotesize\@viipt{8.3}% \abovedisplayskip 4\p@ \@plus2\p@ \@minus3\p@ \abovedisplayshortskip \z@ \@plus\p@ \belowdisplayshortskip 2\p@ \@plus\p@ \@minus\p@ \def\@listi{\leftmargin\leftmargini \topsep 2\p@ \@plus\p@ \@minus\p@ \parsep 2\p@ \@plus\p@ \@minus\p@ \itemsep \parsep}% \belowdisplayskip \abovedisplayskip } \renewcommand\scriptsize{\@setfontsize\scriptsize\@vipt\@viipt} \renewcommand\tiny{\@setfontsize\tiny\@ivpt\@vpt} \renewcommand\large{\@setfontsize\large\@xipt{13.6}} \renewcommand\Large{\@setfontsize\Large\@xivpt{18}} \renewcommand\LARGE{\@setfontsize\LARGE\@xviipt{22}} \renewcommand\huge{\@setfontsize\huge\@xxpt{25}} \renewcommand\Huge{\@setfontsize\Huge\@xxvpt{30}} \if@twocolumn \setlength\parindent{1em} \else \setlength\parindent{13\p@} \fi \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 {25\p@} \setlength\topskip {9\p@} \setlength\footskip{30\p@} \setlength\maxdepth{.5\topskip} \setlength\@tempdima{\paperwidth} \addtolength\@tempdima{-2in} \setlength\@tempdimb{345\p@} \if@twocolumn \ifdim\@tempdima>2\@tempdimb\relax \setlength\textwidth{2\@tempdimb} \else \setlength\textwidth{\@tempdima} \fi \else \ifdim\@tempdima>\@tempdimb\relax \setlength\textwidth{\@tempdimb} \else \setlength\textwidth{\@tempdima} \fi \fi \@settopoint\textwidth \setlength\@tempdima{\paperheight} \addtolength\@tempdima{-2in} \addtolength\@tempdima{-1.5in} \divide\@tempdima\baselineskip \@tempcnta=\@tempdima \setlength\textheight{\@tempcnta\baselineskip} \addtolength\textheight{\topskip} \if@twocolumn \setlength\marginparsep {10\p@} \else \setlength\marginparsep{11\p@} \fi \setlength\marginparpush{5\p@} \if@twoside \setlength\@tempdima {\paperwidth} \addtolength\@tempdima {-\textwidth} \setlength\oddsidemargin {.4\@tempdima} \addtolength\oddsidemargin {-1in} \setlength\marginparwidth {.6\@tempdima} \addtolength\marginparwidth {-\marginparsep} \addtolength\marginparwidth {-0.4in} \else \setlength\@tempdima {\paperwidth} \addtolength\@tempdima {-\textwidth} \setlength\oddsidemargin {.5\@tempdima} \addtolength\oddsidemargin {-1in} \setlength\marginparwidth {.5\@tempdima} \addtolength\marginparwidth {-\marginparsep} \addtolength\marginparwidth {-0.4in} \addtolength\marginparwidth {-.4in} \fi \ifdim \marginparwidth >2in \setlength\marginparwidth{2in} \fi \@settopoint\oddsidemargin \@settopoint\marginparwidth \setlength\evensidemargin {\paperwidth} \addtolength\evensidemargin{-2in} \addtolength\evensidemargin{-\textwidth} \addtolength\evensidemargin{-\oddsidemargin} \@settopoint\evensidemargin \setlength\topmargin{\paperheight} \addtolength\topmargin{-2in} \addtolength\topmargin{-\headheight} \addtolength\topmargin{-\headsep} \addtolength\topmargin{-\textheight} \addtolength\topmargin{-\footskip} % this might be wrong! \addtolength\topmargin{-.5\topmargin} \@settopoint\topmargin \setlength\footnotesep{5.755\p@} \setlength{\skip\footins}{9.5\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 {12\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@ \@plus 1fil} \setlength\@fpsep{8\p@ \@plus 2fil} \setlength\@fpbot{0\p@ \@plus 1fil} \setlength\@dblfptop{0\p@ \@plus 1fil} \setlength\@dblfpsep{8\p@ \@plus 2fil} \setlength\@dblfpbot{0\p@ \@plus 1fil} \setlength\partopsep{2\p@ \@plus 1\p@ \@minus 1\p@} \def\@listi{\leftmargin\leftmargini \parsep 4\p@ \@plus2\p@ \@minus\p@ \topsep 8\p@ \@plus2\p@ \@minus4\p@ \itemsep4\p@ \@plus2\p@ \@minus\p@} \let\@listI\@listi \@listi \def\@listii {\leftmargin\leftmarginii \labelwidth\leftmarginii \advance\labelwidth-\labelsep \topsep 4\p@ \@plus2\p@ \@minus\p@ \parsep 2\p@ \@plus\p@ \@minus\p@ \itemsep \parsep} \def\@listiii{\leftmargin\leftmarginiii \labelwidth\leftmarginiii \advance\labelwidth-\labelsep \topsep 2\p@ \@plus\p@\@minus\p@ \parsep \z@ \partopsep \p@ \@plus\z@ \@minus\p@ \itemsep \topsep} \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} % % % \end{macrocode} % % This brings us to the end of \pkg{aiaa9pt.sty}. % % \subsection{AIAA Bibliographic Style File} % % \begin{macrocode} % %<*bibstyle> % % note: this file generated by p. daly's custom-bib software % ENTRY { address author booktitle chapter edition editor howpublished institution journal key month note number organization pages publisher school series title type volume year } {} { label } INTEGERS { output.state before.all mid.sentence after.sentence after.block } FUNCTION {init.state.consts} { #0 'before.all := #1 'mid.sentence := #2 'after.sentence := #3 'after.block := } STRINGS { s t } FUNCTION {output.nonnull} { 's := output.state mid.sentence = { ", " * write$ } { output.state after.block = { add.period$ write$ newline$ "\newblock " write$ } { output.state before.all = 'write$ { add.period$ " " * write$ } if$ } if$ mid.sentence 'output.state := } if$ s } FUNCTION {output} { duplicate$ empty$ 'pop$ 'output.nonnull if$ } FUNCTION {output.check} { 't := duplicate$ empty$ { pop$ "empty " t * " in " * cite$ * warning$ } 'output.nonnull if$ } FUNCTION {fin.entry} { add.period$ write$ newline$ } FUNCTION {new.block} { output.state before.all = 'skip$ { after.block 'output.state := } if$ } FUNCTION {new.sentence} { output.state after.block = 'skip$ { output.state before.all = 'skip$ { after.sentence 'output.state := } if$ } if$ } FUNCTION {add.blank} { " " * before.all 'output.state := } FUNCTION {date.block} { skip$ } FUNCTION {not} { { #0 } { #1 } if$ } FUNCTION {and} { 'skip$ { pop$ #0 } if$ } FUNCTION {or} { { pop$ #1 } 'skip$ if$ } FUNCTION {non.stop} { duplicate$ "}" * add.period$ #-1 #1 substring$ "." = } FUNCTION {new.block.checka} { empty$ 'skip$ 'new.block if$ } FUNCTION {new.block.checkb} { empty$ swap$ empty$ and 'skip$ 'new.block if$ } FUNCTION {new.sentence.checka} { empty$ 'skip$ 'new.sentence if$ } FUNCTION {new.sentence.checkb} { empty$ swap$ empty$ and 'skip$ 'new.sentence if$ } FUNCTION {field.or.null} { duplicate$ empty$ { pop$ "" } 'skip$ if$ } FUNCTION {emphasize} { duplicate$ empty$ { pop$ "" } { "{\em " swap$ * "\/}" * } if$ } FUNCTION {capitalize} { "u" change.case$ "t" change.case$ } FUNCTION {space.word} { " " swap$ * " " * } % Here are the language-specific definitions for explicit words. % Each function has a name bbl.xxx where xxx is the English word. % The language selected here is ENGLISH FUNCTION {bbl.and} { "and"} FUNCTION {bbl.editors} { "editors" } FUNCTION {bbl.editor} { "editor" } FUNCTION {bbl.edby} { "edited by" } FUNCTION {bbl.edition} { "ed." } FUNCTION {bbl.volume} { "Vol." } FUNCTION {bbl.of} { "of" } FUNCTION {bbl.number} { "No." } FUNCTION {bbl.nr} { "No." } FUNCTION {bbl.in} { "in" } FUNCTION {bbl.pages} { "pp." } FUNCTION {bbl.page} { "p." } FUNCTION {bbl.chapter} { "chap." } FUNCTION {bbl.techrep} { "Tech. Rep." } FUNCTION {bbl.mthesis} { "Master's thesis" } FUNCTION {bbl.phdthesis} { "Ph.D. thesis" } FUNCTION {bbl.first} { "1st" } FUNCTION {bbl.second} { "2nd" } FUNCTION {bbl.third} { "3rd" } FUNCTION {bbl.fourth} { "4th" } FUNCTION {bbl.fifth} { "5th" } FUNCTION {bbl.st} { "st" } FUNCTION {bbl.nd} { "nd" } FUNCTION {bbl.rd} { "rd" } FUNCTION {bbl.th} { "th" } MACRO {jan} {"Jan."} MACRO {feb} {"Feb."} MACRO {mar} {"Mar."} MACRO {apr} {"Apr."} MACRO {may} {"May"} MACRO {jun} {"Jun."} MACRO {jul} {"Jul."} MACRO {aug} {"Aug."} MACRO {sep} {"Sep."} MACRO {oct} {"Oct."} MACRO {nov} {"Nov."} MACRO {dec} {"Dec."} FUNCTION {eng.ord} { duplicate$ "1" swap$ * #-2 #1 substring$ "1" = { bbl.th * } { duplicate$ #-1 #1 substring$ duplicate$ "1" = { pop$ bbl.st * } { duplicate$ "2" = { pop$ bbl.nd * } { "3" = { bbl.rd * } { bbl.th * } if$ } if$ } if$ } if$ } MACRO {acmcs} {"ACM Computing Surveys"} MACRO {acta} {"Acta Informatica"} MACRO {cacm} {"Communications of the ACM"} MACRO {ibmjrd} {"IBM Journal of Research and Development"} MACRO {ibmsj} {"IBM Systems Journal"} MACRO {ieeese} {"IEEE Transactions on Software Engineering"} MACRO {ieeetc} {"IEEE Transactions on Computers"} MACRO {ieeetcad} {"IEEE Transactions on Computer-Aided Design of Integrated Circuits"} MACRO {ipl} {"Information Processing Letters"} MACRO {jacm} {"Journal of the ACM"} MACRO {jcss} {"Journal of Computer and System Sciences"} MACRO {scp} {"Science of Computer Programming"} MACRO {sicomp} {"SIAM Journal on Computing"} MACRO {tocs} {"ACM Transactions on Computer Systems"} MACRO {tods} {"ACM Transactions on Database Systems"} MACRO {tog} {"ACM Transactions on Graphics"} MACRO {toms} {"ACM Transactions on Mathematical Software"} MACRO {toois} {"ACM Transactions on Office Information Systems"} MACRO {toplas} {"ACM Transactions on Programming Languages and Systems"} MACRO {tcs} {"Theoretical Computer Science"} INTEGERS { nameptr namesleft numnames } FUNCTION {format.names} { 's := #1 'nameptr := s num.names$ 'numnames := numnames 'namesleft := { namesleft #0 > } { s nameptr "{vv~}{ll}{, jj}{, f.}" format.name$ 't := nameptr #1 > { namesleft #1 > { ", " * t * } { numnames #2 > { "," * } 'skip$ if$ t "others" = { " et~al." * } { bbl.and space.word * t * } if$ } if$ } 't if$ nameptr #1 + 'nameptr := namesleft #1 - 'namesleft := } while$ } FUNCTION {format.names.ed} { 's := #1 'nameptr := s num.names$ 'numnames := numnames 'namesleft := { namesleft #0 > } { s nameptr "{f.~}{vv~}{ll}{, jj}" format.name$ 't := nameptr #1 > { namesleft #1 > { ", " * t * } { numnames #2 > { "," * } 'skip$ if$ t "others" = { " et~al." * } { bbl.and space.word * t * } if$ } if$ } 't if$ nameptr #1 + 'nameptr := namesleft #1 - 'namesleft := } while$ } FUNCTION {format.authors} { author empty$ { "" } { author format.names } if$ } FUNCTION {format.editors} { editor empty$ { "" } { editor format.names editor num.names$ #1 > { ", " * bbl.editors * } { ", " * bbl.editor * } if$ } if$ } FUNCTION {format.in.editors} { editor empty$ { "" } { editor format.names.ed } if$ } FUNCTION {format.title} { title empty$ { "" } { title "\enquote{" swap$ * non.stop { ",} " * } { "} " * } if$ } if$ } FUNCTION {end.quote.title} { title empty$ 'skip$ { before.all 'output.state := } if$ } FUNCTION {output.bibitem} { newline$ "\bibitem{" write$ cite$ write$ "}" write$ newline$ "" before.all 'output.state := } FUNCTION {n.dashify} { 't := "" { t empty$ not } { t #1 #1 substring$ "-" = { t #1 #2 substring$ "--" = not { "--" * t #2 global.max$ substring$ 't := } { { t #1 #1 substring$ "-" = } { "-" * t #2 global.max$ substring$ 't := } while$ } if$ } { t #1 #1 substring$ * t #2 global.max$ substring$ 't := } if$ } while$ } FUNCTION {word.in} { "" } FUNCTION {format.date} { year empty$ { month empty$ { "" } { "there's a month but no year in " cite$ * warning$ month } if$ } { month empty$ 'year { month " " * year * } if$ } if$ } FUNCTION {format.btitle} { title emphasize } FUNCTION {tie.or.space.connect} { duplicate$ text.length$ #3 < { "~" } { " " } if$ swap$ * * } FUNCTION {either.or.check} { empty$ 'pop$ { "can't use both " swap$ * " fields in " * cite$ * warning$ } if$ } FUNCTION {format.bvolume} { volume empty$ { "" } { bbl.volume volume tie.or.space.connect series empty$ 'skip$ { bbl.of space.word * series emphasize * } if$ "volume and number" number either.or.check } if$ } FUNCTION {format.number.series} { volume empty$ { number empty$ { series field.or.null } { output.state mid.sentence = { bbl.number } { bbl.number capitalize } if$ number tie.or.space.connect series empty$ { "there's a number but no series in " cite$ * warning$ } { bbl.in space.word * series * } if$ } if$ } { "" } if$ } FUNCTION {is.num} { chr.to.int$ duplicate$ "0" chr.to.int$ < not swap$ "9" chr.to.int$ > not and } FUNCTION {extract.num} { duplicate$ 't := "" 's := { t empty$ not } { t #1 #1 substring$ t #2 global.max$ substring$ 't := duplicate$ is.num { s swap$ * 's := } { pop$ "" 't := } if$ } while$ s empty$ 'skip$ { pop$ s } if$ } FUNCTION {convert.edition} { edition extract.num "l" change.case$ 's := s "first" = s "1" = or { bbl.first 't := } { s "second" = s "2" = or { bbl.second 't := } { s "third" = s "3" = or { bbl.third 't := } { s "fourth" = s "4" = or { bbl.fourth 't := } { s "fifth" = s "5" = or { bbl.fifth 't := } { s #1 #1 substring$ is.num { s eng.ord 't := } { edition 't := } if$ } if$ } if$ } if$ } if$ } if$ t } FUNCTION {format.edition} { edition empty$ { "" } { output.state mid.sentence = { convert.edition "l" change.case$ " " * bbl.edition * } { convert.edition "t" change.case$ " " * bbl.edition * } if$ } if$ } INTEGERS { multiresult } FUNCTION {multi.page.check} { 't := #0 'multiresult := { multiresult not t empty$ not and } { t #1 #1 substring$ duplicate$ "-" = swap$ duplicate$ "," = swap$ "+" = or or { #1 'multiresult := } { t #2 global.max$ substring$ 't := } if$ } while$ multiresult } FUNCTION {format.pages} { pages empty$ { "" } { pages multi.page.check { bbl.pages pages n.dashify tie.or.space.connect } { bbl.page pages tie.or.space.connect } if$ } if$ } FUNCTION {format.journal.pages} { pages empty$ 'skip$ { duplicate$ empty$ { pop$ format.pages } { ", " * bbl.pages "~" * * pages n.dashify * } if$ } if$ } FUNCTION {format.vol.num.pages} { volume field.or.null volume empty$ 'skip$ { bbl.volume "~" * swap$ * } if$ number empty$ 'skip$ { ", " bbl.nr * number tie.or.space.connect * volume empty$ { "there's a number but no volume in " cite$ * warning$ } 'skip$ if$ } if$ } FUNCTION {format.chapter.pages} { chapter empty$ { "" } { type empty$ { bbl.chapter } { type "l" change.case$ } if$ chapter tie.or.space.connect } if$ } FUNCTION {format.in.ed.booktitle} { booktitle empty$ { "" } { editor empty$ { word.in booktitle emphasize * } { word.in booktitle emphasize * ", " * bbl.edby * " " * format.in.editors * } if$ } if$ } FUNCTION {empty.misc.check} { author empty$ title empty$ howpublished empty$ month empty$ year empty$ note empty$ and and and and and { "all relevant fields are empty in " cite$ * warning$ } 'skip$ if$ } FUNCTION {format.thesis.type} { type empty$ 'skip$ { pop$ type "t" change.case$ } if$ } FUNCTION {format.tr.number} { type empty$ { bbl.techrep } 'type if$ number empty$ { "t" change.case$ } { number tie.or.space.connect } if$ } FUNCTION {format.article.crossref} { key empty$ { journal empty$ { "need key or journal for " cite$ * " to crossref " * crossref * warning$ "" } { word.in journal emphasize * } if$ } { word.in key * " " *} if$ " \cite{" * crossref * "}" * } FUNCTION {format.crossref.editor} { editor #1 "{vv~}{ll}" format.name$ editor num.names$ duplicate$ #2 > { pop$ " et~al." * } { #2 < 'skip$ { editor #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" = { " et~al." * } { bbl.and space.word * editor #2 "{vv~}{ll}" format.name$ * } if$ } if$ } if$ } FUNCTION {format.book.crossref} { volume empty$ { "empty volume in " cite$ * "'s crossref of " * crossref * warning$ word.in } { bbl.volume volume tie.or.space.connect bbl.of space.word * } if$ editor empty$ editor field.or.null author field.or.null = or { key empty$ { series empty$ { "need editor, key, or series for " cite$ * " to crossref " * crossref * warning$ "" * } { series emphasize * } if$ } { key * } if$ } { format.crossref.editor * } if$ " \cite{" * crossref * "}" * } FUNCTION {format.incoll.inproc.crossref} { editor empty$ editor field.or.null author field.or.null = or { key empty$ { booktitle empty$ { "need editor, key, or booktitle for " cite$ * " to crossref " * crossref * warning$ "" } { word.in booktitle emphasize * } if$ } { word.in key * " " *} if$ } { word.in format.crossref.editor * " " *} if$ " \cite{" * crossref * "}" * } FUNCTION {format.publisher} { publisher empty$ { "empty publisher in " cite$ * warning$ } 'skip$ if$ "" address empty$ publisher empty$ and 'skip$ { publisher empty$ { address empty$ 'skip$ { address * } if$ } { publisher * address empty$ 'skip$ { ", " * address * } if$ } if$ } if$ output } FUNCTION {article} { output.bibitem format.authors "author" output.check format.title "title" output.check end.quote.title crossref missing$ { journal emphasize "journal" output.check format.vol.num.pages output format.date "year" output.check } { format.article.crossref output.nonnull format.pages output } if$ format.journal.pages note output fin.entry } FUNCTION {book} { output.bibitem author empty$ { format.editors "author and editor" output.check } { format.authors output.nonnull crossref missing$ { "author and editor" editor either.or.check } 'skip$ if$ } if$ format.btitle "title" output.check crossref missing$ { format.bvolume output format.number.series output format.publisher } { format.book.crossref output.nonnull } if$ format.edition output format.date "year" output.check note output fin.entry } FUNCTION {booklet} { output.bibitem format.authors output format.title "title" output.check end.quote.title howpublished output address output format.date output note output fin.entry } FUNCTION {inbook} { output.bibitem author empty$ { format.editors "author and editor" output.check } { format.authors output.nonnull crossref missing$ { "author and editor" editor either.or.check } 'skip$ if$ } if$ format.btitle "title" output.check crossref missing$ { format.bvolume output format.chapter.pages "chapter and pages" output.check format.number.series output format.publisher } { format.chapter.pages "chapter and pages" output.check format.book.crossref output.nonnull } if$ format.edition output format.date "year" output.check format.pages "pages" output.check note output fin.entry } FUNCTION {incollection} { output.bibitem format.authors "author" output.check format.title "title" output.check end.quote.title crossref missing$ { format.in.ed.booktitle "booktitle" output.check format.bvolume output format.number.series output format.chapter.pages output format.publisher format.edition output format.date "year" output.check } { format.incoll.inproc.crossref output.nonnull format.chapter.pages output } if$ format.pages "pages" output.check note output fin.entry } FUNCTION {inproceedings} { output.bibitem format.authors "author" output.check format.title "title" output.check end.quote.title crossref missing$ { format.in.ed.booktitle "booktitle" output.check format.bvolume output format.number.series output publisher empty$ { organization output address output } { organization output format.publisher } if$ format.date "year" output.check } { format.incoll.inproc.crossref output.nonnull format.pages output } if$ format.pages "pages" output.check note output fin.entry } FUNCTION {conference} { inproceedings } FUNCTION {manual} { output.bibitem author empty$ { organization empty$ 'skip$ { organization output.nonnull address output } if$ } { format.authors output.nonnull } if$ format.btitle "title" output.check author empty$ { organization empty$ { address output } 'skip$ if$ } { organization output address output } if$ format.edition output format.date output note output fin.entry } FUNCTION {mastersthesis} { output.bibitem format.authors "author" output.check format.btitle "title" output.check bbl.mthesis format.thesis.type output.nonnull school "school" output.check address output format.date "year" output.check note output fin.entry } FUNCTION {misc} { output.bibitem format.authors output format.title output end.quote.title howpublished output format.date output note output fin.entry empty.misc.check } FUNCTION {phdthesis} { output.bibitem format.authors "author" output.check format.btitle "title" output.check bbl.phdthesis format.thesis.type output.nonnull school "school" output.check address output format.date "year" output.check note output fin.entry } FUNCTION {proceedings} { output.bibitem editor empty$ { organization output } { format.editors output.nonnull } if$ format.btitle "title" output.check format.bvolume output format.number.series output address empty$ { editor empty$ { publisher new.sentence.checka } { organization publisher new.sentence.checkb organization output } if$ publisher output format.date "year" output.check } { address output.nonnull format.date "year" output.check editor empty$ 'skip$ { organization output } if$ publisher output } if$ note output fin.entry } FUNCTION {techreport} { output.bibitem format.authors "author" output.check format.title "title" output.check end.quote.title format.tr.number output.nonnull institution "institution" output.check address output format.date "year" output.check note output fin.entry } FUNCTION {unpublished} { output.bibitem format.authors "author" output.check format.title "title" output.check end.quote.title note "note" output.check fin.entry } FUNCTION {default.type} { misc } READ STRINGS { longest.label } INTEGERS { number.label longest.label.width } FUNCTION {initialize.longest.label} { "" 'longest.label := #1 'number.label := #0 'longest.label.width := } FUNCTION {longest.label.pass} { number.label int.to.str$ 'label := number.label #1 + 'number.label := label width$ longest.label.width > { label 'longest.label := label width$ 'longest.label.width := } 'skip$ if$ } EXECUTE {initialize.longest.label} ITERATE {longest.label.pass} FUNCTION {begin.bib} { preamble$ empty$ 'skip$ { preamble$ write$ newline$ } if$ "\begin{thebibliography}{" longest.label * "}" * write$ newline$ "\newcommand{\enquote}[1]{``#1''}" write$ newline$ } EXECUTE {begin.bib} EXECUTE {init.state.consts} ITERATE {call.type$} FUNCTION {end.bib} { newline$ "\end{thebibliography}" write$ newline$ } EXECUTE {end.bib} %% %% End of file `aiaa.bst'. % % \end{macrocode} % % This brings us to the end of \file{aiaa.bst}. % % \subsection{AIAA Endfloat Configuration File} % % \begin{macrocode} % %<*enfconfig> \renewcommand{\listfigurename}{List of Figure Captions\newline\newline} \renewcommand{\listtablename}{List of Table Captions\newline\newline} \setcounter{lofdepth}{1}% change to 2 when subfigure is ready \def\numberline#1{\hb@xt@\@tempdima{\bfseries #1:\hfil}}% make bold lo? numbers \renewcommand*{\l@figure}[2]{\vskip\abovedisplayskip% \setlength\@tempdima{1.5em}% \noindent{\bfseries \figurename}\ #1\hfil \vskip 5pt } \renewcommand*{\l@table}[2]{% \setlength\@tempdima{1.5em}% \noindent{\bfseries \tablename}\ #1\hfil\vskip\belowdisplayskip } \renewcommand*{\l@subfigure}[2]{% \setlength\@tempdima{1.5em}% #1\hfil\vskip 0pt } \renewcommand{\@subcaption}[2]{% \begingroup \let\label\@gobble \def\protect{\string\string\string}% \xdef\@subfigcaptionlist{% \@subfigcaptionlist,% {\protect\numberline {\@currentlabel}% \noexpand{\ignorespaces #2}}}% \endgroup \@nameuse{@make#1caption}{\@nameuse{@the#1}}{#2}} \renewcommand{\@makecaption}[2]{} \let\OrigCaption\caption \renewcommand{\caption}[2][X]{\OrigCaption[#2]{}} \newcommand{\processfigures@hooka}{\@empty} \def\AtEndFigures{\g@addto@macro\processfigures@hooka} \newcommand{\processtables@hooka}{\@empty} \def\AtEndTables{\g@addto@macro\processtables@hooka} \AtBeginTables{\cfoot{\footnotesize\scshape\tablename\ \thetable\captionlabeldelim}} \AtEndTables{\cfoot{}} \AtBeginFigures{\cfoot{\footnotesize\scshape\figurename\ \thefigure\captionlabeldelim}} \AtEndFigures{\cfoot{}} \def\processfigures{% \expandafter\ifnum \csname @ef@fffopen\endcsname>0 \immediate\closeout\efloat@postfff \ef@setct{fff}{0} \clearpage % bj \if@figlist % bj {\normalsize\listoffigures} % bj \clearpage % bj \fi \if@fighead \section*{\figuresection} % bj \suppressfloats[t] % jpg \fi \markboth{\uppercase{\figuresection}}{\uppercase{\figuresection}}% bj \processfigures@hook \@input{\jobname.fff} \processfigures@hooka \fi} \def\processtables{% \expandafter\ifnum \csname @ef@tttopen\endcsname>0 \immediate\closeout\efloat@postttt \ef@setct{ttt}{0} \clearpage % bj \if@tablist % bj {\normalsize\listoftables} % bj \clearpage % bj \fi \if@tabhead \section*{\tablesection} % bj \suppressfloats[t] % jpg \fi \markboth{\uppercase{\tablesection}}{\uppercase{\tablesection}}% bj \processtables@hook \@input{\jobname.ttt} \processtables@hooka \fi} %% End of file `aiaaenf.cfg'. % % \end{macrocode} % % This brings us to the end of \file{aiaaenf.cfg}. % % \Finale % \endinput