Commit 20baaa14 by Lenovo

模板,参考文献还加不上

parents
/document.pdf
/document.synctex.gz
/tmp/
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>20240414IEEETG</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.texlipse.builder.TexlipseBuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.texlipse.builder.TexlipseNature</nature>
</natures>
</projectDescription>
eclipse.preferences.version=1
encoding/<project>=UTF-8
#TeXlipse project settings
#Sun Apr 14 11:03:21 CST 2024
outputDir=
markDer=true
mainTexFile=document.tex
bibrefDir=
builderNum=7
outputFile=document.pdf
makeIndSty=
srcDir=
markTmpDer=true
tempDir=tmp
outputFormat=pdf
langSpell=en
%%
%% IEEEtran.bst
%% BibTeX Bibliography Style file for IEEE Journals and Conferences (unsorted)
%% Version 1.14 (2015/08/26)
%%
%% Copyright (c) 2003-2015 Michael Shell
%%
%% Original starting code base and algorithms obtained from the output of
%% Patrick W. Daly's makebst package as well as from prior versions of
%% IEEE BibTeX styles:
%%
%% 1. Howard Trickey and Oren Patashnik's ieeetr.bst (1985/1988)
%% 2. Silvano Balemi and Richard H. Roy's IEEEbib.bst (1993)
%%
%% Support sites:
%% http://www.michaelshell.org/tex/ieeetran/
%% http://www.ctan.org/pkg/ieeetran
%% and/or
%% http://www.ieee.org/
%%
%% For use with BibTeX version 0.99a or later
%%
%% This is a numerical citation style.
%%
%%*************************************************************************
%% Legal Notice:
%% This code is offered as-is without any warranty either expressed or
%% implied; without even the implied warranty of MERCHANTABILITY or
%% FITNESS FOR A PARTICULAR PURPOSE!
%% User assumes all risk.
%% In no event shall the IEEE or any contributor to this code be liable for
%% any damages or losses, including, but not limited to, incidental,
%% consequential, or any other damages, resulting from the use or misuse
%% of any information contained here.
%%
%% All comments are the opinions of their respective authors and are not
%% necessarily endorsed by the IEEE.
%%
%% This work is distributed under the LaTeX Project Public License (LPPL)
%% ( http://www.latex-project.org/ ) version 1.3, and may be freely used,
%% distributed and modified. A copy of the LPPL, version 1.3, is included
%% in the base LaTeX documentation of all distributions of LaTeX released
%% 2003/12/01 or later.
%% Retain all contribution notices and credits.
%% ** Modified files should be clearly indicated as such, including **
%% ** renaming them and changing author support contact information. **
%%*************************************************************************
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% DEFAULTS FOR THE CONTROLS OF THE BST STYLE %%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% These are the defaults for the user adjustable controls. The values used
% here can be overridden by the user via IEEEtranBSTCTL entry type.
% NOTE: The recommended LaTeX command to invoke a control entry type is:
%
%\makeatletter
%\def\bstctlcite{\@ifnextchar[{\@bstctlcite}{\@bstctlcite[@auxout]}}
%\def\@bstctlcite[#1]#2{\@bsphack
% \@for\@citeb:=#2\do{%
% \edef\@citeb{\expandafter\@firstofone\@citeb}%
% \if@filesw\immediate\write\csname #1\endcsname{\string\citation{\@citeb}}\fi}%
% \@esphack}
%\makeatother
%
% It is called at the start of the document, before the first \cite, like:
% \bstctlcite{IEEEexample:BSTcontrol}
%
% IEEEtran.cls V1.6 and later does provide this command.
% #0 turns off the display of the number for articles.
% #1 enables
FUNCTION {default.is.use.number.for.article} { #1 }
% #0 turns off the display of the paper and type fields in @inproceedings.
% #1 enables
FUNCTION {default.is.use.paper} { #1 }
% #0 turns off the display of urls
% #1 enables
FUNCTION {default.is.use.url} { #1 }
% #0 turns off the forced use of "et al."
% #1 enables
FUNCTION {default.is.forced.et.al} { #0 }
% The maximum number of names that can be present beyond which an "et al."
% usage is forced. Be sure that num.names.shown.with.forced.et.al (below)
% is not greater than this value!
% Note: There are many instances of references in IEEE journals which have
% a very large number of authors as well as instances in which "et al." is
% used profusely.
FUNCTION {default.max.num.names.before.forced.et.al} { #10 }
% The number of names that will be shown with a forced "et al.".
% Must be less than or equal to max.num.names.before.forced.et.al
FUNCTION {default.num.names.shown.with.forced.et.al} { #1 }
% #0 turns off the alternate interword spacing for entries with URLs.
% #1 enables
FUNCTION {default.is.use.alt.interword.spacing} { #1 }
% If alternate interword spacing for entries with URLs is enabled, this is
% the interword spacing stretch factor that will be used. For example, the
% default "4" here means that the interword spacing in entries with URLs can
% stretch to four times normal. Does not have to be an integer. Note that
% the value specified here can be overridden by the user in their LaTeX
% code via a command such as:
% "\providecommand\BIBentryALTinterwordstretchfactor{1.5}" in addition to
% that via the IEEEtranBSTCTL entry type.
FUNCTION {default.ALTinterwordstretchfactor} { "4" }
% #0 turns off the "dashification" of repeated (i.e., identical to those
% of the previous entry) names. The IEEE normally does this.
% #1 enables
FUNCTION {default.is.dash.repeated.names} { #1 }
% The default name format control string.
FUNCTION {default.name.format.string}{ "{f.~}{vv~}{ll}{, jj}" }
% The default LaTeX font command for the names.
FUNCTION {default.name.latex.cmd}{ "" }
% The default URL prefix.
FUNCTION {default.name.url.prefix}{ "[Online]. Available:" }
% Other controls that cannot be accessed via IEEEtranBSTCTL entry type.
% #0 turns off the terminal startup banner/completed message so as to
% operate more quietly.
% #1 enables
FUNCTION {is.print.banners.to.terminal} { #1 }
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% FILE VERSION AND BANNER %%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
FUNCTION{bst.file.version} { "1.14" }
FUNCTION{bst.file.date} { "2015/08/26" }
FUNCTION{bst.file.website} { "http://www.michaelshell.org/tex/ieeetran/bibtex/" }
FUNCTION {banner.message}
{ is.print.banners.to.terminal
{ "-- IEEEtran.bst version" " " * bst.file.version *
" (" * bst.file.date * ") " * "by Michael Shell." *
top$
"-- " bst.file.website *
top$
"-- See the " quote$ * "IEEEtran_bst_HOWTO.pdf" * quote$ * " manual for usage information." *
top$
}
{ skip$ }
if$
}
FUNCTION {completed.message}
{ is.print.banners.to.terminal
{ ""
top$
"Done."
top$
}
{ skip$ }
if$
}
%%%%%%%%%%%%%%%%%%%%%%
%% STRING CONSTANTS %%
%%%%%%%%%%%%%%%%%%%%%%
FUNCTION {bbl.and}{ "and" }
FUNCTION {bbl.etal}{ "et~al." }
FUNCTION {bbl.editors}{ "eds." }
FUNCTION {bbl.editor}{ "ed." }
FUNCTION {bbl.edition}{ "ed." }
FUNCTION {bbl.volume}{ "vol." }
FUNCTION {bbl.of}{ "of" }
FUNCTION {bbl.number}{ "no." }
FUNCTION {bbl.in}{ "in" }
FUNCTION {bbl.pages}{ "pp." }
FUNCTION {bbl.page}{ "p." }
FUNCTION {bbl.chapter}{ "ch." }
FUNCTION {bbl.paper}{ "paper" }
FUNCTION {bbl.part}{ "pt." }
FUNCTION {bbl.patent}{ "Patent" }
FUNCTION {bbl.patentUS}{ "U.S." }
FUNCTION {bbl.revision}{ "Rev." }
FUNCTION {bbl.series}{ "ser." }
FUNCTION {bbl.standard}{ "Std." }
FUNCTION {bbl.techrep}{ "Tech. Rep." }
FUNCTION {bbl.mthesis}{ "Master's thesis" }
FUNCTION {bbl.phdthesis}{ "Ph.D. dissertation" }
FUNCTION {bbl.st}{ "st" }
FUNCTION {bbl.nd}{ "nd" }
FUNCTION {bbl.rd}{ "rd" }
FUNCTION {bbl.th}{ "th" }
% This is the LaTeX spacer that is used when a larger than normal space
% is called for (such as just before the address:publisher).
FUNCTION {large.space} { "\hskip 1em plus 0.5em minus 0.4em\relax " }
% The LaTeX code for dashes that are used to represent repeated names.
% Note: Some older IEEE journals used something like
% "\rule{0.275in}{0.5pt}\," which is fairly thick and runs right along
% the baseline. However, the IEEE now uses a thinner, above baseline,
% six dash long sequence.
FUNCTION {repeated.name.dashes} { "------" }
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% PREDEFINED STRING MACROS %%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
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."}
%%%%%%%%%%%%%%%%%%
%% ENTRY FIELDS %%
%%%%%%%%%%%%%%%%%%
ENTRY
{ address
assignee
author
booktitle
chapter
day
dayfiled
edition
editor
howpublished
institution
intype
journal
key
language
month
monthfiled
nationality
note
number
organization
pages
paper
publisher
school
series
revision
title
type
url
volume
year
yearfiled
CTLuse_article_number
CTLuse_paper
CTLuse_url
CTLuse_forced_etal
CTLmax_names_forced_etal
CTLnames_show_etal
CTLuse_alt_spacing
CTLalt_stretch_factor
CTLdash_repeated_names
CTLname_format_string
CTLname_latex_cmd
CTLname_url_prefix
}
{}
{ label }
%%%%%%%%%%%%%%%%%%%%%%%
%% INTEGER VARIABLES %%
%%%%%%%%%%%%%%%%%%%%%%%
INTEGERS { prev.status.punct this.status.punct punct.std
punct.no punct.comma punct.period
prev.status.space this.status.space space.std
space.no space.normal space.large
prev.status.quote this.status.quote quote.std
quote.no quote.close
prev.status.nline this.status.nline nline.std
nline.no nline.newblock
status.cap cap.std
cap.no cap.yes}
INTEGERS { longest.label.width multiresult nameptr namesleft number.label numnames }
INTEGERS { is.use.number.for.article
is.use.paper
is.use.url
is.forced.et.al
max.num.names.before.forced.et.al
num.names.shown.with.forced.et.al
is.use.alt.interword.spacing
is.dash.repeated.names}
%%%%%%%%%%%%%%%%%%%%%%
%% STRING VARIABLES %%
%%%%%%%%%%%%%%%%%%%%%%
STRINGS { bibinfo
longest.label
oldname
s
t
ALTinterwordstretchfactor
name.format.string
name.latex.cmd
name.url.prefix}
%%%%%%%%%%%%%%%%%%%%%%%%%
%% LOW LEVEL FUNCTIONS %%
%%%%%%%%%%%%%%%%%%%%%%%%%
FUNCTION {initialize.controls}
{ default.is.use.number.for.article 'is.use.number.for.article :=
default.is.use.paper 'is.use.paper :=
default.is.use.url 'is.use.url :=
default.is.forced.et.al 'is.forced.et.al :=
default.max.num.names.before.forced.et.al 'max.num.names.before.forced.et.al :=
default.num.names.shown.with.forced.et.al 'num.names.shown.with.forced.et.al :=
default.is.use.alt.interword.spacing 'is.use.alt.interword.spacing :=
default.is.dash.repeated.names 'is.dash.repeated.names :=
default.ALTinterwordstretchfactor 'ALTinterwordstretchfactor :=
default.name.format.string 'name.format.string :=
default.name.latex.cmd 'name.latex.cmd :=
default.name.url.prefix 'name.url.prefix :=
}
% This IEEEtran.bst features a very powerful and flexible mechanism for
% controlling the capitalization, punctuation, spacing, quotation, and
% newlines of the formatted entry fields. (Note: IEEEtran.bst does not need
% or use the newline/newblock feature, but it has been implemented for
% possible future use.) The output states of IEEEtran.bst consist of
% multiple independent attributes and, as such, can be thought of as being
% vectors, rather than the simple scalar values ("before.all",
% "mid.sentence", etc.) used in most other .bst files.
%
% The more flexible and complex design used here was motivated in part by
% the IEEE's rather unusual bibliography style. For example, the IEEE ends the
% previous field item with a period and large space prior to the publisher
% address; the @electronic entry types use periods as inter-item punctuation
% rather than the commas used by the other entry types; and URLs are never
% followed by periods even though they are the last item in the entry.
% Although it is possible to accommodate these features with the conventional
% output state system, the seemingly endless exceptions make for convoluted,
% unreliable and difficult to maintain code.
%
% IEEEtran.bst's output state system can be easily understood via a simple
% illustration of two most recently formatted entry fields (on the stack):
%
% CURRENT_ITEM
% "PREVIOUS_ITEM
%
% which, in this example, is to eventually appear in the bibliography as:
%
% "PREVIOUS_ITEM," CURRENT_ITEM
%
% It is the job of the output routine to take the previous item off of the
% stack (while leaving the current item at the top of the stack), apply its
% trailing punctuation (including closing quote marks) and spacing, and then
% to write the result to BibTeX's output buffer:
%
% "PREVIOUS_ITEM,"
%
% Punctuation (and spacing) between items is often determined by both of the
% items rather than just the first one. The presence of quotation marks
% further complicates the situation because, in standard English, trailing
% punctuation marks are supposed to be contained within the quotes.
%
% IEEEtran.bst maintains two output state (aka "status") vectors which
% correspond to the previous and current (aka "this") items. Each vector
% consists of several independent attributes which track punctuation,
% spacing, quotation, and newlines. Capitalization status is handled by a
% separate scalar because the format routines, not the output routine,
% handle capitalization and, therefore, there is no need to maintain the
% capitalization attribute for both the "previous" and "this" items.
%
% When a format routine adds a new item, it copies the current output status
% vector to the previous output status vector and (usually) resets the
% current (this) output status vector to a "standard status" vector. Using a
% "standard status" vector in this way allows us to redefine what we mean by
% "standard status" at the start of each entry handler and reuse the same
% format routines under the various inter-item separation schemes. For
% example, the standard status vector for the @book entry type may use
% commas for item separators, while the @electronic type may use periods,
% yet both entry handlers exploit many of the exact same format routines.
%
% Because format routines have write access to the output status vector of
% the previous item, they can override the punctuation choices of the
% previous format routine! Therefore, it becomes trivial to implement rules
% such as "Always use a period and a large space before the publisher." By
% pushing the generation of the closing quote mark to the output routine, we
% avoid all the problems caused by having to close a quote before having all
% the information required to determine what the punctuation should be.
%
% The IEEEtran.bst output state system can easily be expanded if needed.
% For instance, it is easy to add a "space.tie" attribute value if the
% bibliography rules mandate that two items have to be joined with an
% unbreakable space.
FUNCTION {initialize.status.constants}
{ #0 'punct.no :=
#1 'punct.comma :=
#2 'punct.period :=
#0 'space.no :=
#1 'space.normal :=
#2 'space.large :=
#0 'quote.no :=
#1 'quote.close :=
#0 'cap.no :=
#1 'cap.yes :=
#0 'nline.no :=
#1 'nline.newblock :=
}
FUNCTION {std.status.using.comma}
{ punct.comma 'punct.std :=
space.normal 'space.std :=
quote.no 'quote.std :=
nline.no 'nline.std :=
cap.no 'cap.std :=
}
FUNCTION {std.status.using.period}
{ punct.period 'punct.std :=
space.normal 'space.std :=
quote.no 'quote.std :=
nline.no 'nline.std :=
cap.yes 'cap.std :=
}
FUNCTION {initialize.prev.this.status}
{ punct.no 'prev.status.punct :=
space.no 'prev.status.space :=
quote.no 'prev.status.quote :=
nline.no 'prev.status.nline :=
punct.no 'this.status.punct :=
space.no 'this.status.space :=
quote.no 'this.status.quote :=
nline.no 'this.status.nline :=
cap.yes 'status.cap :=
}
FUNCTION {this.status.std}
{ punct.std 'this.status.punct :=
space.std 'this.status.space :=
quote.std 'this.status.quote :=
nline.std 'this.status.nline :=
}
FUNCTION {cap.status.std}{ cap.std 'status.cap := }
FUNCTION {this.to.prev.status}
{ this.status.punct 'prev.status.punct :=
this.status.space 'prev.status.space :=
this.status.quote 'prev.status.quote :=
this.status.nline 'prev.status.nline :=
}
FUNCTION {not}
{ { #0 }
{ #1 }
if$
}
FUNCTION {and}
{ { skip$ }
{ pop$ #0 }
if$
}
FUNCTION {or}
{ { pop$ #1 }
{ skip$ }
if$
}
% convert the strings "yes" or "no" to #1 or #0 respectively
FUNCTION {yes.no.to.int}
{ "l" change.case$ duplicate$
"yes" =
{ pop$ #1 }
{ duplicate$ "no" =
{ pop$ #0 }
{ "unknown boolean " quote$ * swap$ * quote$ *
" in " * cite$ * warning$
#0
}
if$
}
if$
}
% pushes true if the single char string on the stack is in the
% range of "0" to "9"
FUNCTION {is.num}
{ chr.to.int$
duplicate$ "0" chr.to.int$ < not
swap$ "9" chr.to.int$ > not and
}
% multiplies the integer on the stack by a factor of 10
FUNCTION {bump.int.mag}
{ #0 'multiresult :=
{ duplicate$ #0 > }
{ #1 -
multiresult #10 +
'multiresult :=
}
while$
pop$
multiresult
}
% converts a single character string on the stack to an integer
FUNCTION {char.to.integer}
{ duplicate$
is.num
{ chr.to.int$ "0" chr.to.int$ - }
{"noninteger character " quote$ * swap$ * quote$ *
" in integer field of " * cite$ * warning$
#0
}
if$
}
% converts a string on the stack to an integer
FUNCTION {string.to.integer}
{ duplicate$ text.length$ 'namesleft :=
#1 'nameptr :=
#0 'numnames :=
{ nameptr namesleft > not }
{ duplicate$ nameptr #1 substring$
char.to.integer numnames bump.int.mag +
'numnames :=
nameptr #1 +
'nameptr :=
}
while$
pop$
numnames
}
% The output routines write out the *next* to the top (previous) item on the
% stack, adding punctuation and such as needed. Since IEEEtran.bst maintains
% the output status for the top two items on the stack, these output
% routines have to consider the previous output status (which corresponds to
% the item that is being output). Full independent control of punctuation,
% closing quote marks, spacing, and newblock is provided.
%
% "output.nonnull" does not check for the presence of a previous empty
% item.
%
% "output" does check for the presence of a previous empty item and will
% remove an empty item rather than outputing it.
%
% "output.warn" is like "output", but will issue a warning if it detects
% an empty item.
FUNCTION {output.nonnull}
{ swap$
prev.status.punct punct.comma =
{ "," * }
{ skip$ }
if$
prev.status.punct punct.period =
{ add.period$ }
{ skip$ }
if$
prev.status.quote quote.close =
{ "''" * }
{ skip$ }
if$
prev.status.space space.normal =
{ " " * }
{ skip$ }
if$
prev.status.space space.large =
{ large.space * }
{ skip$ }
if$
write$
prev.status.nline nline.newblock =
{ newline$ "\newblock " write$ }
{ skip$ }
if$
}
FUNCTION {output}
{ duplicate$ empty$
'pop$
'output.nonnull
if$
}
FUNCTION {output.warn}
{ 't :=
duplicate$ empty$
{ pop$ "empty " t * " in " * cite$ * warning$ }
'output.nonnull
if$
}
% "fin.entry" is the output routine that handles the last item of the entry
% (which will be on the top of the stack when "fin.entry" is called).
FUNCTION {fin.entry}
{ this.status.punct punct.no =
{ skip$ }
{ add.period$ }
if$
this.status.quote quote.close =
{ "''" * }
{ skip$ }
if$
write$
newline$
}
FUNCTION {is.last.char.not.punct}
{ duplicate$
"}" * add.period$
#-1 #1 substring$ "." =
}
FUNCTION {is.multiple.pages}
{ '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 {capitalize}{ "u" change.case$ "t" change.case$ }
FUNCTION {emphasize}
{ duplicate$ empty$
{ pop$ "" }
{ "\emph{" swap$ * "}" * }
if$
}
FUNCTION {do.name.latex.cmd}
{ name.latex.cmd
empty$
{ skip$ }
{ name.latex.cmd "{" * swap$ * "}" * }
if$
}
% IEEEtran.bst uses its own \BIBforeignlanguage command which directly
% invokes the TeX hyphenation patterns without the need of the Babel
% package. Babel does a lot more than switch hyphenation patterns and
% its loading can cause unintended effects in many class files (such as
% IEEEtran.cls).
FUNCTION {select.language}
{ duplicate$ empty$ 'pop$
{ language empty$ 'skip$
{ "\BIBforeignlanguage{" language * "}{" * swap$ * "}" * }
if$
}
if$
}
FUNCTION {tie.or.space.prefix}
{ duplicate$ text.length$ #3 <
{ "~" }
{ " " }
if$
swap$
}
FUNCTION {get.bbl.editor}
{ editor num.names$ #1 > 'bbl.editors 'bbl.editor if$ }
FUNCTION {space.word}{ " " swap$ * " " * }
% Field Conditioners, Converters, Checkers and External Interfaces
FUNCTION {empty.field.to.null.string}
{ duplicate$ empty$
{ pop$ "" }
{ skip$ }
if$
}
FUNCTION {either.or.check}
{ empty$
{ pop$ }
{ "can't use both " swap$ * " fields in " * cite$ * warning$ }
if$
}
FUNCTION {empty.entry.warn}
{ author empty$ title empty$ howpublished empty$
month empty$ year empty$ note empty$ url empty$
and and and and and and
{ "all relevant fields are empty in " cite$ * warning$ }
'skip$
if$
}
% The bibinfo system provides a way for the electronic parsing/acquisition
% of a bibliography's contents as is done by ReVTeX. For example, a field
% could be entered into the bibliography as:
% \bibinfo{volume}{2}
% Only the "2" would show up in the document, but the LaTeX \bibinfo command
% could do additional things with the information. IEEEtran.bst does provide
% a \bibinfo command via "\providecommand{\bibinfo}[2]{#2}". However, it is
% currently not used as the bogus bibinfo functions defined here output the
% entry values directly without the \bibinfo wrapper. The bibinfo functions
% themselves (and the calls to them) are retained for possible future use.
%
% bibinfo.check avoids acting on missing fields while bibinfo.warn will
% issue a warning message if a missing field is detected. Prior to calling
% the bibinfo functions, the user should push the field value and then its
% name string, in that order.
FUNCTION {bibinfo.check}
{ swap$ duplicate$ missing$
{ pop$ pop$ "" }
{ duplicate$ empty$
{ swap$ pop$ }
{ swap$ pop$ }
if$
}
if$
}
FUNCTION {bibinfo.warn}
{ swap$ duplicate$ missing$
{ swap$ "missing " swap$ * " in " * cite$ * warning$ pop$ "" }
{ duplicate$ empty$
{ swap$ "empty " swap$ * " in " * cite$ * warning$ }
{ swap$ pop$ }
if$
}
if$
}
% The IEEE separates large numbers with more than 4 digits into groups of
% three. The IEEE uses a small space to separate these number groups.
% Typical applications include patent and page numbers.
% number of consecutive digits required to trigger the group separation.
FUNCTION {large.number.trigger}{ #5 }
% For numbers longer than the trigger, this is the blocksize of the groups.
% The blocksize must be less than the trigger threshold, and 2 * blocksize
% must be greater than the trigger threshold (can't do more than one
% separation on the initial trigger).
FUNCTION {large.number.blocksize}{ #3 }
% What is actually inserted between the number groups.
FUNCTION {large.number.separator}{ "\," }
% So as to save on integer variables by reusing existing ones, numnames
% holds the current number of consecutive digits read and nameptr holds
% the number that will trigger an inserted space.
FUNCTION {large.number.separate}
{ 't :=
""
#0 'numnames :=
large.number.trigger 'nameptr :=
{ t empty$ not }
{ t #-1 #1 substring$ is.num
{ numnames #1 + 'numnames := }
{ #0 'numnames :=
large.number.trigger 'nameptr :=
}
if$
t #-1 #1 substring$ swap$ *
t #-2 global.max$ substring$ 't :=
numnames nameptr =
{ duplicate$ #1 nameptr large.number.blocksize - substring$ swap$
nameptr large.number.blocksize - #1 + global.max$ substring$
large.number.separator swap$ * *
nameptr large.number.blocksize - 'numnames :=
large.number.blocksize #1 + 'nameptr :=
}
{ skip$ }
if$
}
while$
}
% Converts all single dashes "-" to double dashes "--".
FUNCTION {n.dashify}
{ large.number.separate
'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$
}
% This function detects entries with names that are identical to that of
% the previous entry and replaces the repeated names with dashes (if the
% "is.dash.repeated.names" user control is nonzero).
FUNCTION {name.or.dash}
{ 's :=
oldname empty$
{ s 'oldname := s }
{ s oldname =
{ is.dash.repeated.names
{ repeated.name.dashes }
{ s 'oldname := s }
if$
}
{ s 'oldname := s }
if$
}
if$
}
% Converts the number string on the top of the stack to
% "numerical ordinal form" (e.g., "7" to "7th"). There is
% no artificial limit to the upper bound of the numbers as the
% two least significant digits determine the ordinal form.
FUNCTION {num.to.ordinal}
{ duplicate$ #-2 #1 substring$ "1" =
{ bbl.th * }
{ duplicate$ #-1 #1 substring$ "1" =
{ bbl.st * }
{ duplicate$ #-1 #1 substring$ "2" =
{ bbl.nd * }
{ duplicate$ #-1 #1 substring$ "3" =
{ bbl.rd * }
{ bbl.th * }
if$
}
if$
}
if$
}
if$
}
% If the string on the top of the stack begins with a number,
% (e.g., 11th) then replace the string with the leading number
% it contains. Otherwise retain the string as-is. s holds the
% extracted number, t holds the part of the string that remains
% to be scanned.
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$
}
% Converts the word number string on the top of the stack to
% Arabic string form. Will be successful up to "tenth".
FUNCTION {word.to.num}
{ duplicate$ "l" change.case$ 's :=
s "first" =
{ pop$ "1" }
{ skip$ }
if$
s "second" =
{ pop$ "2" }
{ skip$ }
if$
s "third" =
{ pop$ "3" }
{ skip$ }
if$
s "fourth" =
{ pop$ "4" }
{ skip$ }
if$
s "fifth" =
{ pop$ "5" }
{ skip$ }
if$
s "sixth" =
{ pop$ "6" }
{ skip$ }
if$
s "seventh" =
{ pop$ "7" }
{ skip$ }
if$
s "eighth" =
{ pop$ "8" }
{ skip$ }
if$
s "ninth" =
{ pop$ "9" }
{ skip$ }
if$
s "tenth" =
{ pop$ "10" }
{ skip$ }
if$
}
% Converts the string on the top of the stack to numerical
% ordinal (e.g., "11th") form.
FUNCTION {convert.edition}
{ duplicate$ empty$ 'skip$
{ duplicate$ #1 #1 substring$ is.num
{ extract.num
num.to.ordinal
}
{ word.to.num
duplicate$ #1 #1 substring$ is.num
{ num.to.ordinal }
{ "edition ordinal word " quote$ * edition * quote$ *
" may be too high (or improper) for conversion" * " in " * cite$ * warning$
}
if$
}
if$
}
if$
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% LATEX BIBLIOGRAPHY CODE %%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
FUNCTION {start.entry}
{ newline$
"\bibitem{" write$
cite$ write$
"}" write$
newline$
""
initialize.prev.this.status
}
% Here we write out all the LaTeX code that we will need. The most involved
% code sequences are those that control the alternate interword spacing and
% foreign language hyphenation patterns. The heavy use of \providecommand
% gives users a way to override the defaults. Special thanks to Javier Bezos,
% Johannes Braams, Robin Fairbairns, Heiko Oberdiek, Donald Arseneau and all
% the other gurus on comp.text.tex for their help and advice on the topic of
% \selectlanguage, Babel and BibTeX.
FUNCTION {begin.bib}
{ "% Generated by IEEEtran.bst, version: " bst.file.version * " (" * bst.file.date * ")" *
write$ newline$
preamble$ empty$ 'skip$
{ preamble$ write$ newline$ }
if$
"\begin{thebibliography}{" longest.label * "}" *
write$ newline$
"\providecommand{\url}[1]{#1}"
write$ newline$
"\csname url@samestyle\endcsname"
write$ newline$
"\providecommand{\newblock}{\relax}"
write$ newline$
"\providecommand{\bibinfo}[2]{#2}"
write$ newline$
"\providecommand{\BIBentrySTDinterwordspacing}{\spaceskip=0pt\relax}"
write$ newline$
"\providecommand{\BIBentryALTinterwordstretchfactor}{"
ALTinterwordstretchfactor * "}" *
write$ newline$
"\providecommand{\BIBentryALTinterwordspacing}{\spaceskip=\fontdimen2\font plus "
write$ newline$
"\BIBentryALTinterwordstretchfactor\fontdimen3\font minus \fontdimen4\font\relax}"
write$ newline$
"\providecommand{\BIBforeignlanguage}[2]{{%"
write$ newline$
"\expandafter\ifx\csname l@#1\endcsname\relax"
write$ newline$
"\typeout{** WARNING: IEEEtran.bst: No hyphenation pattern has been}%"
write$ newline$
"\typeout{** loaded for the language `#1'. Using the pattern for}%"
write$ newline$
"\typeout{** the default language instead.}%"
write$ newline$
"\else"
write$ newline$
"\language=\csname l@#1\endcsname"
write$ newline$
"\fi"
write$ newline$
"#2}}"
write$ newline$
"\providecommand{\BIBdecl}{\relax}"
write$ newline$
"\BIBdecl"
write$ newline$
}
FUNCTION {end.bib}
{ newline$ "\end{thebibliography}" write$ newline$ }
FUNCTION {if.url.alt.interword.spacing}
{ is.use.alt.interword.spacing
{ is.use.url
{ url empty$ 'skip$ {"\BIBentryALTinterwordspacing" write$ newline$} if$ }
{ skip$ }
if$
}
{ skip$ }
if$
}
FUNCTION {if.url.std.interword.spacing}
{ is.use.alt.interword.spacing
{ is.use.url
{ url empty$ 'skip$ {"\BIBentrySTDinterwordspacing" write$ newline$} if$ }
{ skip$ }
if$
}
{ skip$ }
if$
}
%%%%%%%%%%%%%%%%%%%%%%%%
%% LONGEST LABEL PASS %%
%%%%%%%%%%%%%%%%%%%%%%%%
FUNCTION {initialize.longest.label}
{ "" 'longest.label :=
#1 'number.label :=
#0 'longest.label.width :=
}
FUNCTION {longest.label.pass}
{ type$ "ieeetranbstctl" =
{ skip$ }
{ 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$
}
if$
}
%%%%%%%%%%%%%%%%%%%%%
%% FORMAT HANDLERS %%
%%%%%%%%%%%%%%%%%%%%%
%% Lower Level Formats (used by higher level formats)
FUNCTION {format.address.org.or.pub.date}
{ 't :=
""
year empty$
{ "empty year in " cite$ * warning$ }
{ skip$ }
if$
address empty$ t empty$ and
year empty$ and month empty$ and
{ skip$ }
{ this.to.prev.status
this.status.std
cap.status.std
address "address" bibinfo.check *
t empty$
{ skip$ }
{ punct.period 'prev.status.punct :=
space.large 'prev.status.space :=
address empty$
{ skip$ }
{ ": " * }
if$
t *
}
if$
year empty$ month empty$ and
{ skip$ }
{ t empty$ address empty$ and
{ skip$ }
{ ", " * }
if$
month empty$
{ year empty$
{ skip$ }
{ year "year" bibinfo.check * }
if$
}
{ month "month" bibinfo.check *
year empty$
{ skip$ }
{ " " * year "year" bibinfo.check * }
if$
}
if$
}
if$
}
if$
}
FUNCTION {format.names}
{ 'bibinfo :=
duplicate$ empty$ 'skip$ {
this.to.prev.status
this.status.std
's :=
"" 't :=
#1 'nameptr :=
s num.names$ 'numnames :=
numnames 'namesleft :=
{ namesleft #0 > }
{ s nameptr
name.format.string
format.name$
bibinfo bibinfo.check
't :=
nameptr #1 >
{ nameptr num.names.shown.with.forced.et.al #1 + =
numnames max.num.names.before.forced.et.al >
is.forced.et.al and and
{ "others" 't :=
#1 'namesleft :=
}
{ skip$ }
if$
namesleft #1 >
{ ", " * t do.name.latex.cmd * }
{ s nameptr "{ll}" format.name$ duplicate$ "others" =
{ 't := }
{ pop$ }
if$
t "others" =
{ " " * bbl.etal emphasize * }
{ numnames #2 >
{ "," * }
{ skip$ }
if$
bbl.and
space.word * t do.name.latex.cmd *
}
if$
}
if$
}
{ t do.name.latex.cmd }
if$
nameptr #1 + 'nameptr :=
namesleft #1 - 'namesleft :=
}
while$
cap.status.std
} if$
}
%% Higher Level Formats
%% addresses/locations
FUNCTION {format.address}
{ address duplicate$ empty$ 'skip$
{ this.to.prev.status
this.status.std
cap.status.std
}
if$
}
%% author/editor names
FUNCTION {format.authors}{ author "author" format.names }
FUNCTION {format.editors}
{ editor "editor" format.names duplicate$ empty$ 'skip$
{ ", " *
get.bbl.editor
capitalize
*
}
if$
}
%% date
FUNCTION {format.date}
{
month "month" bibinfo.check duplicate$ empty$
year "year" bibinfo.check duplicate$ empty$
{ swap$ 'skip$
{ this.to.prev.status
this.status.std
cap.status.std
"there's a month but no year in " cite$ * warning$ }
if$
*
}
{ this.to.prev.status
this.status.std
cap.status.std
swap$ 'skip$
{
swap$
" " * swap$
}
if$
*
}
if$
}
FUNCTION {format.date.electronic}
{ month "month" bibinfo.check duplicate$ empty$
year "year" bibinfo.check duplicate$ empty$
{ swap$
{ pop$ }
{ "there's a month but no year in " cite$ * warning$
pop$ ")" * "(" swap$ *
this.to.prev.status
punct.no 'this.status.punct :=
space.normal 'this.status.space :=
quote.no 'this.status.quote :=
cap.yes 'status.cap :=
}
if$
}
{ swap$
{ swap$ pop$ ")" * "(" swap$ * }
{ "(" swap$ * ", " * swap$ * ")" * }
if$
this.to.prev.status
punct.no 'this.status.punct :=
space.normal 'this.status.space :=
quote.no 'this.status.quote :=
cap.yes 'status.cap :=
}
if$
}
%% edition/title
% Note: The IEEE considers the edition to be closely associated with
% the title of a book. So, in IEEEtran.bst the edition is normally handled
% within the formatting of the title. The format.edition function is
% retained here for possible future use.
FUNCTION {format.edition}
{ edition duplicate$ empty$ 'skip$
{ this.to.prev.status
this.status.std
convert.edition
status.cap
{ "t" }
{ "l" }
if$ change.case$
"edition" bibinfo.check
"~" * bbl.edition *
cap.status.std
}
if$
}
% This is used to format the booktitle of a conference proceedings.
% Here we use the "intype" field to provide the user a way to
% override the word "in" (e.g., with things like "presented at")
% Use of intype stops the emphasis of the booktitle to indicate that
% we no longer mean the written conference proceedings, but the
% conference itself.
FUNCTION {format.in.booktitle}
{ booktitle "booktitle" bibinfo.check duplicate$ empty$ 'skip$
{ this.to.prev.status
this.status.std
select.language
intype missing$
{ emphasize
bbl.in " " *
}
{ intype " " * }
if$
swap$ *
cap.status.std
}
if$
}
% This is used to format the booktitle of collection.
% Here the "intype" field is not supported, but "edition" is.
FUNCTION {format.in.booktitle.edition}
{ booktitle "booktitle" bibinfo.check duplicate$ empty$ 'skip$
{ this.to.prev.status
this.status.std
select.language
emphasize
edition empty$ 'skip$
{ ", " *
edition
convert.edition
"l" change.case$
* "~" * bbl.edition *
}
if$
bbl.in " " * swap$ *
cap.status.std
}
if$
}
FUNCTION {format.article.title}
{ title duplicate$ empty$ 'skip$
{ this.to.prev.status
this.status.std
"t" change.case$
}
if$
"title" bibinfo.check
duplicate$ empty$ 'skip$
{ quote.close 'this.status.quote :=
is.last.char.not.punct
{ punct.std 'this.status.punct := }
{ punct.no 'this.status.punct := }
if$
select.language
"``" swap$ *
cap.status.std
}
if$
}
FUNCTION {format.article.title.electronic}
{ title duplicate$ empty$ 'skip$
{ this.to.prev.status
this.status.std
cap.status.std
"t" change.case$
}
if$
"title" bibinfo.check
duplicate$ empty$
{ skip$ }
{ select.language }
if$
}
FUNCTION {format.book.title.edition}
{ title "title" bibinfo.check
duplicate$ empty$
{ "empty title in " cite$ * warning$ }
{ this.to.prev.status
this.status.std
select.language
emphasize
edition empty$ 'skip$
{ ", " *
edition
convert.edition
status.cap
{ "t" }
{ "l" }
if$
change.case$
* "~" * bbl.edition *
}
if$
cap.status.std
}
if$
}
FUNCTION {format.book.title}
{ title "title" bibinfo.check
duplicate$ empty$ 'skip$
{ this.to.prev.status
this.status.std
cap.status.std
select.language
emphasize
}
if$
}
%% journal
FUNCTION {format.journal}
{ journal duplicate$ empty$ 'skip$
{ this.to.prev.status
this.status.std
cap.status.std
select.language
emphasize
}
if$
}
%% how published
FUNCTION {format.howpublished}
{ howpublished duplicate$ empty$ 'skip$
{ this.to.prev.status
this.status.std
cap.status.std
}
if$
}
%% institutions/organization/publishers/school
FUNCTION {format.institution}
{ institution duplicate$ empty$ 'skip$
{ this.to.prev.status
this.status.std
cap.status.std
}
if$
}
FUNCTION {format.organization}
{ organization duplicate$ empty$ 'skip$
{ this.to.prev.status
this.status.std
cap.status.std
}
if$
}
FUNCTION {format.address.publisher.date}
{ publisher "publisher" bibinfo.warn format.address.org.or.pub.date }
FUNCTION {format.address.publisher.date.nowarn}
{ publisher "publisher" bibinfo.check format.address.org.or.pub.date }
FUNCTION {format.address.organization.date}
{ organization "organization" bibinfo.check format.address.org.or.pub.date }
FUNCTION {format.school}
{ school duplicate$ empty$ 'skip$
{ this.to.prev.status
this.status.std
cap.status.std
}
if$
}
%% volume/number/series/chapter/pages
FUNCTION {format.volume}
{ volume empty.field.to.null.string
duplicate$ empty$ 'skip$
{ this.to.prev.status
this.status.std
bbl.volume
status.cap
{ capitalize }
{ skip$ }
if$
swap$ tie.or.space.prefix
"volume" bibinfo.check
* *
cap.status.std
}
if$
}
FUNCTION {format.number}
{ number empty.field.to.null.string
duplicate$ empty$ 'skip$
{ this.to.prev.status
this.status.std
status.cap
{ bbl.number capitalize }
{ bbl.number }
if$
swap$ tie.or.space.prefix
"number" bibinfo.check
* *
cap.status.std
}
if$
}
FUNCTION {format.number.if.use.for.article}
{ is.use.number.for.article
{ format.number }
{ "" }
if$
}
% The IEEE does not seem to tie the series so closely with the volume
% and number as is done in other bibliography styles. Instead the
% series is treated somewhat like an extension of the title.
FUNCTION {format.series}
{ series empty$
{ "" }
{ this.to.prev.status
this.status.std
bbl.series " " *
series "series" bibinfo.check *
cap.status.std
}
if$
}
FUNCTION {format.chapter}
{ chapter empty$
{ "" }
{ this.to.prev.status
this.status.std
type empty$
{ bbl.chapter }
{ type "l" change.case$
"type" bibinfo.check
}
if$
chapter tie.or.space.prefix
"chapter" bibinfo.check
* *
cap.status.std
}
if$
}
% The intended use of format.paper is for paper numbers of inproceedings.
% The paper type can be overridden via the type field.
% We allow the type to be displayed even if the paper number is absent
% for things like "postdeadline paper"
FUNCTION {format.paper}
{ is.use.paper
{ paper empty$
{ type empty$
{ "" }
{ this.to.prev.status
this.status.std
type "type" bibinfo.check
cap.status.std
}
if$
}
{ this.to.prev.status
this.status.std
type empty$
{ bbl.paper }
{ type "type" bibinfo.check }
if$
" " * paper
"paper" bibinfo.check
*
cap.status.std
}
if$
}
{ "" }
if$
}
FUNCTION {format.pages}
{ pages duplicate$ empty$ 'skip$
{ this.to.prev.status
this.status.std
duplicate$ is.multiple.pages
{
bbl.pages swap$
n.dashify
}
{
bbl.page swap$
}
if$
tie.or.space.prefix
"pages" bibinfo.check
* *
cap.status.std
}
if$
}
%% technical report number
FUNCTION {format.tech.report.number}
{ number "number" bibinfo.check
this.to.prev.status
this.status.std
cap.status.std
type duplicate$ empty$
{ pop$
bbl.techrep
}
{ skip$ }
if$
"type" bibinfo.check
swap$ duplicate$ empty$
{ pop$ }
{ tie.or.space.prefix * * }
if$
}
%% note
FUNCTION {format.note}
{ note empty$
{ "" }
{ this.to.prev.status
this.status.std
punct.period 'this.status.punct :=
note #1 #1 substring$
duplicate$ "{" =
{ skip$ }
{ status.cap
{ "u" }
{ "l" }
if$
change.case$
}
if$
note #2 global.max$ substring$ * "note" bibinfo.check
cap.yes 'status.cap :=
}
if$
}
%% patent
FUNCTION {format.patent.date}
{ this.to.prev.status
this.status.std
year empty$
{ monthfiled duplicate$ empty$
{ "monthfiled" bibinfo.check pop$ "" }
{ "monthfiled" bibinfo.check }
if$
dayfiled duplicate$ empty$
{ "dayfiled" bibinfo.check pop$ "" * }
{ "dayfiled" bibinfo.check
monthfiled empty$
{ "dayfiled without a monthfiled in " cite$ * warning$
*
}
{ " " swap$ * * }
if$
}
if$
yearfiled empty$
{ "no year or yearfiled in " cite$ * warning$ }
{ yearfiled "yearfiled" bibinfo.check
swap$
duplicate$ empty$
{ pop$ }
{ ", " * swap$ * }
if$
}
if$
}
{ month duplicate$ empty$
{ "month" bibinfo.check pop$ "" }
{ "month" bibinfo.check }
if$
day duplicate$ empty$
{ "day" bibinfo.check pop$ "" * }
{ "day" bibinfo.check
month empty$
{ "day without a month in " cite$ * warning$
*
}
{ " " swap$ * * }
if$
}
if$
year "year" bibinfo.check
swap$
duplicate$ empty$
{ pop$ }
{ ", " * swap$ * }
if$
}
if$
cap.status.std
}
FUNCTION {format.patent.nationality.type.number}
{ this.to.prev.status
this.status.std
nationality duplicate$ empty$
{ "nationality" bibinfo.warn pop$ "" }
{ "nationality" bibinfo.check
duplicate$ "l" change.case$ "united states" =
{ pop$ bbl.patentUS }
{ skip$ }
if$
" " *
}
if$
type empty$
{ bbl.patent "type" bibinfo.check }
{ type "type" bibinfo.check }
if$
*
number duplicate$ empty$
{ "number" bibinfo.warn pop$ }
{ "number" bibinfo.check
large.number.separate
swap$ " " * swap$ *
}
if$
cap.status.std
}
%% standard
FUNCTION {format.organization.institution.standard.type.number}
{ this.to.prev.status
this.status.std
organization duplicate$ empty$
{ pop$
institution duplicate$ empty$
{ "institution" bibinfo.warn }
{ "institution" bibinfo.warn " " * }
if$
}
{ "organization" bibinfo.warn " " * }
if$
type empty$
{ bbl.standard "type" bibinfo.check }
{ type "type" bibinfo.check }
if$
*
number duplicate$ empty$
{ "number" bibinfo.check pop$ }
{ "number" bibinfo.check
large.number.separate
swap$ " " * swap$ *
}
if$
cap.status.std
}
FUNCTION {format.revision}
{ revision empty$
{ "" }
{ this.to.prev.status
this.status.std
bbl.revision
revision tie.or.space.prefix
"revision" bibinfo.check
* *
cap.status.std
}
if$
}
%% thesis
FUNCTION {format.master.thesis.type}
{ this.to.prev.status
this.status.std
type empty$
{
bbl.mthesis
}
{
type "type" bibinfo.check
}
if$
cap.status.std
}
FUNCTION {format.phd.thesis.type}
{ this.to.prev.status
this.status.std
type empty$
{
bbl.phdthesis
}
{
type "type" bibinfo.check
}
if$
cap.status.std
}
%% URL
FUNCTION {format.url}
{ is.use.url
{ url empty$
{ "" }
{ this.to.prev.status
this.status.std
cap.yes 'status.cap :=
name.url.prefix " " *
"\url{" * url * "}" *
punct.no 'this.status.punct :=
punct.period 'prev.status.punct :=
space.normal 'this.status.space :=
space.normal 'prev.status.space :=
quote.no 'this.status.quote :=
}
if$
}
{ "" }
if$
}
%%%%%%%%%%%%%%%%%%%%
%% ENTRY HANDLERS %%
%%%%%%%%%%%%%%%%%%%%
% Note: In many journals, the IEEE (or the authors) tend not to show the number
% for articles, so the display of the number is controlled here by the
% switch "is.use.number.for.article"
FUNCTION {article}
{ std.status.using.comma
start.entry
if.url.alt.interword.spacing
format.authors "author" output.warn
name.or.dash
format.article.title "title" output.warn
format.journal "journal" bibinfo.check "journal" output.warn
format.volume output
format.number.if.use.for.article output
format.pages output
format.date "year" output.warn
format.note output
format.url output
fin.entry
if.url.std.interword.spacing
}
FUNCTION {book}
{ std.status.using.comma
start.entry
if.url.alt.interword.spacing
author empty$
{ format.editors "author and editor" output.warn }
{ format.authors output.nonnull }
if$
name.or.dash
format.book.title.edition output
format.series output
author empty$
{ skip$ }
{ format.editors output }
if$
format.address.publisher.date output
format.volume output
format.number output
format.note output
format.url output
fin.entry
if.url.std.interword.spacing
}
FUNCTION {booklet}
{ std.status.using.comma
start.entry
if.url.alt.interword.spacing
format.authors output
name.or.dash
format.article.title "title" output.warn
format.howpublished "howpublished" bibinfo.check output
format.organization "organization" bibinfo.check output
format.address "address" bibinfo.check output
format.date output
format.note output
format.url output
fin.entry
if.url.std.interword.spacing
}
FUNCTION {electronic}
{ std.status.using.period
start.entry
if.url.alt.interword.spacing
format.authors output
name.or.dash
format.date.electronic output
format.article.title.electronic output
format.howpublished "howpublished" bibinfo.check output
format.organization "organization" bibinfo.check output
format.address "address" bibinfo.check output
format.note output
format.url output
fin.entry
empty.entry.warn
if.url.std.interword.spacing
}
FUNCTION {inbook}
{ std.status.using.comma
start.entry
if.url.alt.interword.spacing
author empty$
{ format.editors "author and editor" output.warn }
{ format.authors output.nonnull }
if$
name.or.dash
format.book.title.edition output
format.series output
format.address.publisher.date output
format.volume output
format.number output
format.chapter output
format.pages output
format.note output
format.url output
fin.entry
if.url.std.interword.spacing
}
FUNCTION {incollection}
{ std.status.using.comma
start.entry
if.url.alt.interword.spacing
format.authors "author" output.warn
name.or.dash
format.article.title "title" output.warn
format.in.booktitle.edition "booktitle" output.warn
format.series output
format.editors output
format.address.publisher.date.nowarn output
format.volume output
format.number output
format.chapter output
format.pages output
format.note output
format.url output
fin.entry
if.url.std.interword.spacing
}
FUNCTION {inproceedings}
{ std.status.using.comma
start.entry
if.url.alt.interword.spacing
format.authors "author" output.warn
name.or.dash
format.article.title "title" output.warn
format.in.booktitle "booktitle" output.warn
format.series output
format.editors output
format.volume output
format.number output
publisher empty$
{ format.address.organization.date output }
{ format.organization "organization" bibinfo.check output
format.address.publisher.date output
}
if$
format.paper output
format.pages output
format.note output
format.url output
fin.entry
if.url.std.interword.spacing
}
FUNCTION {manual}
{ std.status.using.comma
start.entry
if.url.alt.interword.spacing
format.authors output
name.or.dash
format.book.title.edition "title" output.warn
format.howpublished "howpublished" bibinfo.check output
format.organization "organization" bibinfo.check output
format.address "address" bibinfo.check output
format.date output
format.note output
format.url output
fin.entry
if.url.std.interword.spacing
}
FUNCTION {mastersthesis}
{ std.status.using.comma
start.entry
if.url.alt.interword.spacing
format.authors "author" output.warn
name.or.dash
format.article.title "title" output.warn
format.master.thesis.type output.nonnull
format.school "school" bibinfo.warn output
format.address "address" bibinfo.check output
format.date "year" output.warn
format.note output
format.url output
fin.entry
if.url.std.interword.spacing
}
FUNCTION {misc}
{ std.status.using.comma
start.entry
if.url.alt.interword.spacing
format.authors output
name.or.dash
format.article.title output
format.howpublished "howpublished" bibinfo.check output
format.organization "organization" bibinfo.check output
format.address "address" bibinfo.check output
format.pages output
format.date output
format.note output
format.url output
fin.entry
empty.entry.warn
if.url.std.interword.spacing
}
FUNCTION {patent}
{ std.status.using.comma
start.entry
if.url.alt.interword.spacing
format.authors output
name.or.dash
format.article.title output
format.patent.nationality.type.number output
format.patent.date output
format.note output
format.url output
fin.entry
empty.entry.warn
if.url.std.interword.spacing
}
FUNCTION {periodical}
{ std.status.using.comma
start.entry
if.url.alt.interword.spacing
format.editors output
name.or.dash
format.book.title "title" output.warn
format.series output
format.volume output
format.number output
format.organization "organization" bibinfo.check output
format.date "year" output.warn
format.note output
format.url output
fin.entry
if.url.std.interword.spacing
}
FUNCTION {phdthesis}
{ std.status.using.comma
start.entry
if.url.alt.interword.spacing
format.authors "author" output.warn
name.or.dash
format.article.title "title" output.warn
format.phd.thesis.type output.nonnull
format.school "school" bibinfo.warn output
format.address "address" bibinfo.check output
format.date "year" output.warn
format.note output
format.url output
fin.entry
if.url.std.interword.spacing
}
FUNCTION {proceedings}
{ std.status.using.comma
start.entry
if.url.alt.interword.spacing
format.editors output
name.or.dash
format.book.title "title" output.warn
format.series output
format.volume output
format.number output
publisher empty$
{ format.address.organization.date output }
{ format.organization "organization" bibinfo.check output
format.address.publisher.date output
}
if$
format.note output
format.url output
fin.entry
if.url.std.interword.spacing
}
FUNCTION {standard}
{ std.status.using.comma
start.entry
if.url.alt.interword.spacing
format.authors output
name.or.dash
format.book.title "title" output.warn
format.howpublished "howpublished" bibinfo.check output
format.organization.institution.standard.type.number output
format.revision output
format.date output
format.note output
format.url output
fin.entry
if.url.std.interword.spacing
}
FUNCTION {techreport}
{ std.status.using.comma
start.entry
if.url.alt.interword.spacing
format.authors "author" output.warn
name.or.dash
format.article.title "title" output.warn
format.howpublished "howpublished" bibinfo.check output
format.institution "institution" bibinfo.warn output
format.address "address" bibinfo.check output
format.tech.report.number output.nonnull
format.date "year" output.warn
format.note output
format.url output
fin.entry
if.url.std.interword.spacing
}
FUNCTION {unpublished}
{ std.status.using.comma
start.entry
if.url.alt.interword.spacing
format.authors "author" output.warn
name.or.dash
format.article.title "title" output.warn
format.date output
format.note "note" output.warn
format.url output
fin.entry
if.url.std.interword.spacing
}
% The special entry type which provides the user interface to the
% BST controls
FUNCTION {IEEEtranBSTCTL}
{ is.print.banners.to.terminal
{ "** IEEEtran BST control entry " quote$ * cite$ * quote$ * " detected." *
top$
}
{ skip$ }
if$
CTLuse_article_number
empty$
{ skip$ }
{ CTLuse_article_number
yes.no.to.int
'is.use.number.for.article :=
}
if$
CTLuse_paper
empty$
{ skip$ }
{ CTLuse_paper
yes.no.to.int
'is.use.paper :=
}
if$
CTLuse_url
empty$
{ skip$ }
{ CTLuse_url
yes.no.to.int
'is.use.url :=
}
if$
CTLuse_forced_etal
empty$
{ skip$ }
{ CTLuse_forced_etal
yes.no.to.int
'is.forced.et.al :=
}
if$
CTLmax_names_forced_etal
empty$
{ skip$ }
{ CTLmax_names_forced_etal
string.to.integer
'max.num.names.before.forced.et.al :=
}
if$
CTLnames_show_etal
empty$
{ skip$ }
{ CTLnames_show_etal
string.to.integer
'num.names.shown.with.forced.et.al :=
}
if$
CTLuse_alt_spacing
empty$
{ skip$ }
{ CTLuse_alt_spacing
yes.no.to.int
'is.use.alt.interword.spacing :=
}
if$
CTLalt_stretch_factor
empty$
{ skip$ }
{ CTLalt_stretch_factor
'ALTinterwordstretchfactor :=
"\renewcommand{\BIBentryALTinterwordstretchfactor}{"
ALTinterwordstretchfactor * "}" *
write$ newline$
}
if$
CTLdash_repeated_names
empty$
{ skip$ }
{ CTLdash_repeated_names
yes.no.to.int
'is.dash.repeated.names :=
}
if$
CTLname_format_string
empty$
{ skip$ }
{ CTLname_format_string
'name.format.string :=
}
if$
CTLname_latex_cmd
empty$
{ skip$ }
{ CTLname_latex_cmd
'name.latex.cmd :=
}
if$
CTLname_url_prefix
missing$
{ skip$ }
{ CTLname_url_prefix
'name.url.prefix :=
}
if$
num.names.shown.with.forced.et.al max.num.names.before.forced.et.al >
{ "CTLnames_show_etal cannot be greater than CTLmax_names_forced_etal in " cite$ * warning$
max.num.names.before.forced.et.al 'num.names.shown.with.forced.et.al :=
}
{ skip$ }
if$
}
%%%%%%%%%%%%%%%%%%%
%% ENTRY ALIASES %%
%%%%%%%%%%%%%%%%%%%
FUNCTION {conference}{inproceedings}
FUNCTION {online}{electronic}
FUNCTION {internet}{electronic}
FUNCTION {webpage}{electronic}
FUNCTION {www}{electronic}
FUNCTION {default.type}{misc}
%%%%%%%%%%%%%%%%%%
%% MAIN PROGRAM %%
%%%%%%%%%%%%%%%%%%
READ
EXECUTE {initialize.controls}
EXECUTE {initialize.status.constants}
EXECUTE {banner.message}
EXECUTE {initialize.longest.label}
ITERATE {longest.label.pass}
EXECUTE {begin.bib}
ITERATE {call.type$}
EXECUTE {end.bib}
EXECUTE{completed.message}
%% That's all folks, mds.
\documentclass[lettersize,journal]{IEEEtran}
\usepackage{amsmath,amsfonts}
\usepackage{algorithmic}
\usepackage{algorithm}
\usepackage{array}
\usepackage[caption=false,font=normalsize,labelfont=sf,textfont=sf]{subfig}
\usepackage{textcomp}
\usepackage{stfloats}
\usepackage{url}
\usepackage{verbatim}
\usepackage{graphicx}
\usepackage{cite}
\hyphenation{op-tical net-works semi-conduc-tor IEEE-Xplore}
% updated with editorial comments 8/9/2021
\begin{document}
\title{Non-ergodicity of Game 2048}
\author{Xingguo Chen, Xinwen Li, Shangdong Yang, and Wenhao Wang
\thanks{Manuscript received XXXX; revised XXXX; accepted XXXX.
Date of publication XXXX; date of current version XXXX. The work was supported
by the National Natural Science Foundation, China (Nos. 62276142, 62206133, and 62202240).}
\IEEEcompsocitemizethanks{
\IEEEcompsocthanksitem X. Chen, X. Li and S. Yang are
with the Jiangsu Key Laboratory of Big Data Security \&
Intelligent Processing, Nanjing University of Posts and Telecommunications,
P.R., China \protect (e-mail:
chenxg@njupt.edu.cn).}%
\IEEEcompsocitemizethanks{
\IEEEcompsocthanksitem W. Wang is
with College of Electronic Engineering, National University of Defense Technology,
P.R., China \protect (e-mail:
wangwenhao11@nudt.edu.cn).
\emph{(Corresponding author: W. Wang.)}%
}
}
% The paper headers
\markboth{IEEE Transaction on Games,~Vol.~14, No.~8, August~202X}%
{Shell \MakeLowercase{\textit{et al.}}: A Sample Article Using IEEEtran.cls for IEEE Journals}
\IEEEpubid{0000--0000/00\$00.00~\copyright~2024 IEEE}
% Remember, if you use this you must call \IEEEpubidadjcol in the second
% column for its text to clear the IEEEpubid mark.
\maketitle
\begin{abstract}
\end{abstract}
\begin{IEEEkeywords}
\end{IEEEkeywords}
\input{main/introduction}
\input{main/nonergodicity}
\bibliographystyle{IEEEtran.bst}
%\bibliography{bibliography/IEEEabrv,bibliography/IEEEexample}
\bibliography{references.bib}
\end{document}
\section{Introduction}
\IEEEPARstart{T}{his}
\cite{kaplan1979sufficient}
\section{Non-ergodicity}
\ No newline at end of file
@article{kaplan1979sufficient,
title={A sufficient condition of nonergodicity of a Markov chain (Corresp.)},
author={Kaplan, Michael},
journal={IEEE Transactions on Information Theory},
volume={25},
number={4},
pages={470--471},
year={1979},
publisher={IEEE}
}
IEEEabrv.bib
V1.13 (2008/09/30)
Copyright (c) 2002-2008 by Michael Shell
See: http://www.michaelshell.org/
for current contact information.
BibTeX bibliography string definitions of the ABBREVIATED titles of
IEEE journals and magazines and online publications.
This file is designed for bibliography styles that require
abbreviated titles and is not for use in bibliographies that
require full-length titles.
Support sites:
http://www.michaelshell.org/tex/ieeetran/
http://www.ctan.org/tex-archive/macros/latex/contrib/IEEEtran/
and/or
http://www.ieee.org/
Special thanks to Laura Hyslop and ken Rawson of IEEE for their help
in obtaining the information needed to compile this file. Also,
Volker Kuhlmann and Moritz Borgmann kindly provided some corrections
and additions.
*************************************************************************
Legal Notice:
This code is offered as-is without any warranty either expressed or
implied; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE!
User assumes all risk.
In no event shall IEEE or any contributor to this code be liable for
any damages or losses, including, but not limited to, incidental,
consequential, or any other damages, resulting from the use or misuse
of any information contained here.
All comments are the opinions of their respective authors and are not
necessarily endorsed by the IEEE.
This work is distributed under the LaTeX Project Public License (LPPL)
( http://www.latex-project.org/ ) version 1.3, and may be freely used,
distributed and modified. A copy of the LPPL, version 1.3, is included
in the base LaTeX documentation of all distributions of LaTeX released
2003/12/01 or later.
Retain all contribution notices and credits.
** Modified files should be clearly indicated as such, including **
** renaming them and changing author support contact information. **
File list of work: IEEEabrv.bib, IEEEfull.bib, IEEEexample.bib,
IEEEtran.bst, IEEEtranS.bst, IEEEtranSA.bst,
IEEEtranN.bst, IEEEtranSN.bst, IEEEtran_bst_HOWTO.pdf
*************************************************************************
USAGE:
\bibliographystyle{mybstfile}
\bibliography{IEEEabrv,mybibfile}
where the IEEE titles in the .bib database entries use the strings
defined here. e.g.,
journal = IEEE_J_AC,
to yield "{IEEE} Trans. Automat. Contr."
IEEE uses abbreviated journal titles in their bibliographies -
this file is suitable for work that is to be submitted to the IEEE.
For work that requires full-length titles, you should use the full
titles provided in the companion file, IEEEfull.bib.
** NOTES **
1. Journals have been grouped according to subject in order to make it
easier to locate and extract the definitions for related journals -
as most works use references that are confined to a single topic.
Magazines are listed in straight alphabetical order.
2. String names are closely based on IEEE's own internal acronyms.
3. Abbreviations follow IEEE's style.
4. Older, out-of-print IEEE titles are included (but not including titles
dating prior to IEEE's formation from the IRE and AIEE in 1963).
5. The following string definitions have been disabled because their
abbreviations have not yet been verified:
STRING{IEEE_J_LT = "{IEEE} Trans. Learning Technol."}
STRING{IEEE_J_NSM = "{IEEE} Trans. Netw. Service Manag."}
STRING{IEEE_J_SC = "{IEEE} Trans. Services Comput."}
STRING{IEEE_J_STARS = "{IEEE} J. Sel. Topics Appl. Earth Observations Remote Sens."}
If you know what the proper abbreviation is for a string above,
email me and I will correct them in the next release.
IEEE Journals
aerospace and military
@STRING{IEEE_J_AES = "{IEEE} Trans. Aerosp. Electron. Syst."}
@STRING{IEEE_J_ANE = "{IEEE} Trans. Aerosp. Navig. Electron."}
@STRING{IEEE_J_ANNE = "{IEEE} Trans. Aeronaut. Navig. Electron."}
@STRING{IEEE_J_AS = "{IEEE} Trans. Aerosp."}
@STRING{IEEE_J_AIRE = "{IEEE} Trans. Airborne Electron."}
@STRING{IEEE_J_MIL = "{IEEE} Trans. Mil. Electron."}
autos, transportation and vehicles (non-aerospace)
@STRING{IEEE_J_ITS = "{IEEE} Trans. Intell. Transp. Syst."}
@STRING{IEEE_J_VT = "{IEEE} Trans. Veh. Technol."}
@STRING{IEEE_J_VC = "{IEEE} Trans. Veh. Commun."}
circuits, signals, systems, audio and controls
@STRING{IEEE_J_SPL = "{IEEE} Signal Process. Lett."}
@STRING{IEEE_J_ASSP = "{IEEE} Trans. Acoust., Speech, Signal Process."}
@STRING{IEEE_J_AU = "{IEEE} Trans. Audio"}
@STRING{IEEE_J_AUEA = "{IEEE} Trans. Audio Electroacoust."}
@STRING{IEEE_J_AC = "{IEEE} Trans. Autom. Control"}
@STRING{IEEE_J_CAS = "{IEEE} Trans. Circuits Syst."}
@STRING{IEEE_J_CASVT = "{IEEE} Trans. Circuits Syst. Video Technol."}
@STRING{IEEE_J_CASI = "{IEEE} Trans. Circuits Syst. {I}"}
@STRING{IEEE_J_CASII = "{IEEE} Trans. Circuits Syst. {II}"}
in 2004 CASI and CASII renamed part title to CASI_RP and CASII_EB, respectively.
@STRING{IEEE_J_CASI_RP = "{IEEE} Trans. Circuits Syst. {I}"}
@STRING{IEEE_J_CASII_EB = "{IEEE} Trans. Circuits Syst. {II}"}
@STRING{IEEE_J_CT = "{IEEE} Trans. Circuit Theory"}
@STRING{IEEE_J_CST = "{IEEE} Trans. Control Syst. Technol."}
@STRING{IEEE_J_SP = "{IEEE} Trans. Signal Process."}
@STRING{IEEE_J_SU = "{IEEE} Trans. Sonics Ultrason."}
@STRING{IEEE_J_SAP = "{IEEE} Trans. Speech Audio Process."}
@STRING{IEEE_J_STSP = "{IEEE} J. Sel. Topics Signal Process."}
@STRING{IEEE_J_SYST = "{IEEE} Syst. J."}
@STRING{IEEE_J_UE = "{IEEE} Trans. Ultrason. Eng."}
@STRING{IEEE_J_UFFC = "{IEEE} Trans. Ultrason., Ferroelectr., Freq. Control"}
communications
@STRING{IEEE_J_COML = "{IEEE} Commun. Lett."}
@STRING{IEEE_J_JSAC = "{IEEE} J. Sel. Areas Commun."}
@STRING{IEEE_J_COM = "{IEEE} Trans. Commun."}
@STRING{IEEE_J_COMT = "{IEEE} Trans. Commun. Technol."}
@STRING{IEEE_J_WCOM = "{IEEE} Trans. Wireless Commun."}
components, packaging and manufacturing
@STRING{IEEE_J_ADVP = "{IEEE} Trans. Adv. Packag."}
@STRING{IEEE_J_CHMT = "{IEEE} Trans. Compon., Hybrids, Manuf. Technol."}
@STRING{IEEE_J_CPMTA = "{IEEE} Trans. Compon., Packag., Manuf. Technol. {A}"}
@STRING{IEEE_J_CPMTB = "{IEEE} Trans. Compon., Packag., Manuf. Technol. {B}"}
@STRING{IEEE_J_CPMTC = "{IEEE} Trans. Compon., Packag., Manuf. Technol. {C}"}
@STRING{IEEE_J_CAPT = "{IEEE} Trans. Compon. Packag. Technol."}
@STRING{IEEE_J_CAPTS = "{IEEE} Trans. Compon. Packag. Technol."}
@STRING{IEEE_J_CPART = "{IEEE} Trans. Compon. Parts"}
@STRING{IEEE_J_EPM = "{IEEE} Trans. Electron. Packag. Manuf."}
@STRING{IEEE_J_MFT = "{IEEE} Trans. Manuf. Technol."}
@STRING{IEEE_J_PHP = "{IEEE} Trans. Parts, Hybrids, Packag."}
@STRING{IEEE_J_PMP = "{IEEE} Trans. Parts, Mater., Packag."}
CAD
@STRING{IEEE_J_TCAD = "{IEEE} J. Technol. Comput. Aided Design"}
@STRING{IEEE_J_CAD = "{IEEE} Trans. Comput.-Aided Design Integr. Circuits Syst."}
coding, data, information, knowledge
@STRING{IEEE_J_IT = "{IEEE} Trans. Inf. Theory"}
@STRING{IEEE_J_KDE = "{IEEE} Trans. Knowl. Data Eng."}
computers, computation, networking and software
@STRING{IEEE_J_C = "{IEEE} Trans. Comput."}
@STRING{IEEE_J_CAL = "{IEEE} Comput. Archit. Lett."}
@STRING{IEEE_J_DSC = "{IEEE} Trans. Dependable Secure Comput."}
@STRING{IEEE_J_ECOMP = "{IEEE} Trans. Electron. Comput."}
@STRING{IEEE_J_EVC = "{IEEE} Trans. Evol. Comput."}
@STRING{IEEE_J_FUZZ = "{IEEE} Trans. Fuzzy Syst."}
@STRING{IEEE_J_IFS = "{IEEE} Trans. Inf. Forensics Security"}
@STRING{IEEE_J_MC = "{IEEE} Trans. Mobile Comput."}
@STRING{IEEE_J_NET = "{IEEE/ACM} Trans. Netw."}
@STRING{IEEE_J_NN = "{IEEE} Trans. Neural Netw."}
disabled until abbreviation verified
STRING{IEEE_J_NSM = "{IEEE} Trans. Netw. Service Manag."}
@STRING{IEEE_J_PDS = "{IEEE} Trans. Parallel Distrib. Syst."}
disabled until abbreviation verified
STRING{IEEE_J_SC = "{IEEE} Trans. Services Comput."}
@STRING{IEEE_J_SE = "{IEEE} Trans. Softw. Eng."}
computer graphics, imaging, and multimedia
@STRING{IEEE_J_JDT = "{IEEE/OSA} J. Display Technol."}
@STRING{IEEE_J_IP = "{IEEE} Trans. Image Process."}
@STRING{IEEE_J_MM = "{IEEE} Trans. Multimedia"}
@STRING{IEEE_J_VCG = "{IEEE} Trans. Vis. Comput. Graphics"}
cybernetics, ergonomics, robots, man-machine, and automation
@STRING{IEEE_J_ASE = "{IEEE} Trans. Autom. Sci. Eng."}
@STRING{IEEE_J_JRA = "{IEEE} J. Robot. Autom."}
@STRING{IEEE_J_H = "{IEEE} Trans. Haptics"}
@STRING{IEEE_J_HFE = "{IEEE} Trans. Hum. Factors Electron."}
@STRING{IEEE_J_MMS = "{IEEE} Trans. Man-Mach. Syst."}
@STRING{IEEE_J_PAMI = "{IEEE} Trans. Pattern Anal. Mach. Intell."}
in 1989 JRA became RA
in August 2004, RA split into ASE and RO
@STRING{IEEE_J_RA = "{IEEE} Trans. Robot. Autom."}
@STRING{IEEE_J_RO = "{IEEE} Trans. Robot."}
@STRING{IEEE_J_SMC = "{IEEE} Trans. Syst., Man, Cybern."}
@STRING{IEEE_J_SMCA = "{IEEE} Trans. Syst., Man, Cybern. {A}"}
@STRING{IEEE_J_SMCB = "{IEEE} Trans. Syst., Man, Cybern. {B}"}
@STRING{IEEE_J_SMCC = "{IEEE} Trans. Syst., Man, Cybern. {C}"}
@STRING{IEEE_J_SSC = "{IEEE} Trans. Syst. Sci. Cybern."}
earth, wind, fire and water
@STRING{IEEE_J_GE = "{IEEE} Trans. Geosci. Electron."}
@STRING{IEEE_J_GRS = "{IEEE} Trans. Geosci. Remote Sens."}
@STRING{IEEE_J_GRSL = "{IEEE} Geosci. Remote Sens. Lett."}
@STRING{IEEE_J_OE = "{IEEE} J. Ocean. Eng."}
disabled until abbreviation verified
STRING{IEEE_J_STARS = "{IEEE} J. Sel. Topics Appl. Earth Observations Remote Sens."}
education, engineering, history, IEEE, professional
@STRING{IEEE_J_CJECE = "Canadian J. Elect. Comput. Eng."}
@STRING{IEEE_J_PROC = "Proc. {IEEE}"}
@STRING{IEEE_J_EDU = "{IEEE} Trans. Educ."}
@STRING{IEEE_J_EM = "{IEEE} Trans. Eng. Manag."}
@STRING{IEEE_J_EWS = "{IEEE} Trans. Eng. Writing Speech"}
disabled until abbreviation verified
STRING{IEEE_J_LT = "{IEEE} Trans. Learning Technol."}
@STRING{IEEE_J_PC = "{IEEE} Trans. Prof. Commun."}
electromagnetics, antennas, EMI, magnetics and microwave
@STRING{IEEE_J_AWPL = "{IEEE} Antennas Wireless Propag. Lett."}
@STRING{IEEE_J_MGWL = "{IEEE} Microw. Guided Wave Lett."}
IEEE seems to want "Compon." here, not "Comp."
@STRING{IEEE_J_MWCL = "{IEEE} Microw. Wireless Compon. Lett."}
@STRING{IEEE_J_AP = "{IEEE} Trans. Antennas Propag."}
@STRING{IEEE_J_EMC = "{IEEE} Trans. Electromagn. Compat."}
@STRING{IEEE_J_MAG = "{IEEE} Trans. Magn."}
@STRING{IEEE_J_MTT = "{IEEE} Trans. Microw. Theory Tech."}
@STRING{IEEE_J_RFI = "{IEEE} Trans. Radio Freq. Interference"}
@STRING{IEEE_J_TJMJ = "{IEEE} Transl. J. Magn. Jpn."}
energy and power
@STRING{IEEE_J_EC = "{IEEE} Trans. Energy Convers."}
@STRING{IEEE_J_PEL = "{IEEE} Power Electron. Lett."}
@STRING{IEEE_J_PWRAS = "{IEEE} Trans. Power App. Syst."}
@STRING{IEEE_J_PWRD = "{IEEE} Trans. Power Del."}
@STRING{IEEE_J_PWRE = "{IEEE} Trans. Power Electron."}
@STRING{IEEE_J_PWRS = "{IEEE} Trans. Power Syst."}
industrial, commercial and consumer
@STRING{IEEE_J_APPIND = "{IEEE} Trans. Appl. Ind."}
@STRING{IEEE_J_BC = "{IEEE} Trans. Broadcast."}
@STRING{IEEE_J_BCTV = "{IEEE} Trans. Broadcast Television Receivers"}
@STRING{IEEE_J_CE = "{IEEE} Trans. Consum. Electron."}
@STRING{IEEE_J_IE = "{IEEE} Trans. Ind. Electron."}
@STRING{IEEE_J_IECI = "{IEEE} Trans. Ind. Electron. Contr. Instrum."}
@STRING{IEEE_J_IA = "{IEEE} Trans. Ind. Appl."}
@STRING{IEEE_J_IGA = "{IEEE} Trans. Ind. Gen. Appl."}
@STRING{IEEE_J_IINF = "{IEEE} Trans. Ind. Informat."}
@STRING{IEEE_J_PSE = "{IEEE} J. Product Safety Eng."}
instrumentation and measurement
@STRING{IEEE_J_IM = "{IEEE} Trans. Instrum. Meas."}
insulation and materials
@STRING{IEEE_J_JEM = "{IEEE/TMS} J. Electron. Mater."}
@STRING{IEEE_J_DEI = "{IEEE} Trans. Dielectr. Electr. Insul."}
@STRING{IEEE_J_EI = "{IEEE} Trans. Electr. Insul."}
mechanical
@STRING{IEEE_J_MECH = "{IEEE/ASME} Trans. Mechatronics"}
@STRING{IEEE_J_MEMS = "J. Microelectromech. Syst."}
medical and biological
@STRING{IEEE_J_BCAS = "{IEEE} Trans. Biomed. Circuits Syst."}
@STRING{IEEE_J_BME = "{IEEE} Trans. Biomed. Eng."}
Note: The B-ME journal later dropped the hyphen and became the BME.
@STRING{IEEE_J_B-ME = "{IEEE} Trans. Bio-Med. Eng."}
@STRING{IEEE_J_BMELC = "{IEEE} Trans. Bio-Med. Electron."}
@STRING{IEEE_J_CBB = "{IEEE/ACM} Trans. Comput. Biol. Bioinformatics"}
@STRING{IEEE_J_ITBM = "{IEEE} Trans. Inf. Technol. Biomed."}
@STRING{IEEE_J_ME = "{IEEE} Trans. Med. Electron."}
@STRING{IEEE_J_MI = "{IEEE} Trans. Med. Imag."}
@STRING{IEEE_J_NB = "{IEEE} Trans. Nanobiosci."}
@STRING{IEEE_J_NSRE = "{IEEE} Trans. Neural Syst. Rehabil. Eng."}
@STRING{IEEE_J_RBME = "{IEEE} Rev. Biomed. Eng."}
@STRING{IEEE_J_RE = "{IEEE} Trans. Rehabil. Eng."}
optics, lightwave and photonics
@STRING{IEEE_J_PTL = "{IEEE} Photon. Technol. Lett."}
@STRING{IEEE_J_JLT = "J. Lightw. Technol."}
physics, electrons, nanotechnology, nuclear and quantum electronics
@STRING{IEEE_J_EDL = "{IEEE} Electron Device Lett."}
@STRING{IEEE_J_JQE = "{IEEE} J. Quantum Electron."}
@STRING{IEEE_J_JSTQE = "{IEEE} J. Sel. Topics Quantum Electron."}
@STRING{IEEE_J_ED = "{IEEE} Trans. Electron Devices"}
@STRING{IEEE_J_NANO = "{IEEE} Trans. Nanotechnol."}
@STRING{IEEE_J_NS = "{IEEE} Trans. Nucl. Sci."}
@STRING{IEEE_J_PS = "{IEEE} Trans. Plasma Sci."}
reliability
IEEE seems to want "Mat." here, not "Mater."
@STRING{IEEE_J_DMR = "{IEEE} Trans. Device Mater. Rel."}
@STRING{IEEE_J_R = "{IEEE} Trans. Rel."}
semiconductors, superconductors, electrochemical and solid state
@STRING{IEEE_J_ESSL = "{IEEE/ECS} Electrochem. Solid-State Lett."}
@STRING{IEEE_J_JSSC = "{IEEE} J. Solid-State Circuits"}
@STRING{IEEE_J_ASC = "{IEEE} Trans. Appl. Supercond."}
@STRING{IEEE_J_SM = "{IEEE} Trans. Semicond. Manuf."}
sensors
@STRING{IEEE_J_SENSOR = "{IEEE} Sensors J."}
VLSI
@STRING{IEEE_J_VLSI = "{IEEE} Trans. {VLSI} Syst."}
IEEE Magazines
@STRING{IEEE_M_AES = "{IEEE} Aerosp. Electron. Syst. Mag."}
@STRING{IEEE_M_HIST = "{IEEE} Ann. Hist. Comput."}
@STRING{IEEE_M_AP = "{IEEE} Antennas Propag. Mag."}
@STRING{IEEE_M_ASSP = "{IEEE} {ASSP} Mag."}
@STRING{IEEE_M_CD = "{IEEE} Circuits Devices Mag."}
@STRING{IEEE_M_CAS = "{IEEE} Circuits Syst. Mag."}
@STRING{IEEE_M_COM = "{IEEE} Commun. Mag."}
@STRING{IEEE_M_COMSOC = "{IEEE} Commun. Soc. Mag."}
@STRING{IEEE_M_CIM = "{IEEE} Comput. Intell. Mag."}
CSEM changed to CSE in 1999
@STRING{IEEE_M_CSE = "{IEEE} Comput. Sci. Eng."}
@STRING{IEEE_M_CSEM = "{IEEE} Comput. Sci. Eng. Mag."}
@STRING{IEEE_M_C = "{IEEE} Computer"}
@STRING{IEEE_M_CAP = "{IEEE} Comput. Appl. Power"}
@STRING{IEEE_M_CGA = "{IEEE} Comput. Graph. Appl."}
@STRING{IEEE_M_CONC = "{IEEE} Concurrency"}
@STRING{IEEE_M_CS = "{IEEE} Control Syst. Mag."}
@STRING{IEEE_M_DTC = "{IEEE} Des. Test. Comput."}
@STRING{IEEE_M_EI = "{IEEE} Electr. Insul. Mag."}
@STRING{IEEE_M_ETR = "{IEEE} ElectroTechnol. Rev."}
@STRING{IEEE_M_EMB = "{IEEE} Eng. Med. Biol. Mag."}
@STRING{IEEE_M_EMR = "{IEEE} Eng. Manag. Rev."}
@STRING{IEEE_M_EXP = "{IEEE} Expert"}
@STRING{IEEE_M_IA = "{IEEE} Ind. Appl. Mag."}
@STRING{IEEE_M_IE = "{IEEE} Ind. Electron. Mag."}
@STRING{IEEE_M_IM = "{IEEE} Instrum. Meas. Mag."}
@STRING{IEEE_M_IS = "{IEEE} Intell. Syst."}
@STRING{IEEE_M_ITS = "{IEEE} Intell. Transp. Syst. Mag."}
@STRING{IEEE_M_IC = "{IEEE} Internet Comput."}
@STRING{IEEE_M_ITP = "{IEEE} {IT} Prof."}
@STRING{IEEE_M_MICRO = "{IEEE} Micro"}
@STRING{IEEE_M_MW = "{IEEE} Microw. Mag."}
@STRING{IEEE_M_MM = "{IEEE} Multimedia"}
@STRING{IEEE_M_NANO = "{IEEE} Nanotechnol. Mag."}
@STRING{IEEE_M_NET = "{IEEE} Netw."}
IEEE's editorial manual lists "Pers. Commun.",
but "Personal Commun. Mag." seems to be what is used in the journals
@STRING{IEEE_M_PCOM = "{IEEE} Personal Commun. Mag."}
@STRING{IEEE_M_POT = "{IEEE} Potentials"}
CAP and PER merged to form PE in 2003
@STRING{IEEE_M_PE = "{IEEE} Power Energy Mag."}
@STRING{IEEE_M_PER = "{IEEE} Power Eng. Rev."}
@STRING{IEEE_M_PVC = "{IEEE} Pervasive Comput."}
@STRING{IEEE_M_RA = "{IEEE} Robot. Autom. Mag."}
@STRING{IEEE_M_SAP = "{IEEE} Security Privacy"}
@STRING{IEEE_M_SP = "{IEEE} Signal Process. Mag."}
@STRING{IEEE_M_S = "{IEEE} Softw."}
@STRING{IEEE_M_SPECT = "{IEEE} Spectr."}
@STRING{IEEE_M_TS = "{IEEE} Technol. Soc. Mag."}
@STRING{IEEE_M_VT = "{IEEE} Veh. Technol. Mag."}
@STRING{IEEE_M_WC = "{IEEE} Wireless Commun. Mag."}
@STRING{IEEE_M_TODAY = "Today's Engineer"}
IEEE Online Publications
@STRING{IEEE_O_CSTO = "{IEEE} Commun. Surveys Tuts."}
@STRING{IEEE_O_DSO = "{IEEE} Distrib. Syst. Online"}
--
EOF
\ No newline at end of file
IEEEexample.bib
V1.13 (2008/09/30)
Copyright (c) 2002-2008 by Michael Shell
See: http://www.michaelshell.org/
for current contact information.
This is an example BibTeX database for the official IEEEtran.bst
BibTeX style file.
Some entries call strings that are defined in the IEEEabrv.bib file.
Therefore, IEEEabrv.bib should be loaded prior to this file.
Usage:
\bibliographystyle{./IEEEtran}
\bibliography{./IEEEabrv,./IEEEexample}
Support sites:
http://www.michaelshell.org/tex/ieeetran/
http://www.ctan.org/tex-archive/macros/latex/contrib/IEEEtran/
and/or
http://www.ieee.org/
*************************************************************************
Legal Notice:
This code is offered as-is without any warranty either expressed or
implied; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE!
User assumes all risk.
In no event shall IEEE or any contributor to this code be liable for
any damages or losses, including, but not limited to, incidental,
consequential, or any other damages, resulting from the use or misuse
of any information contained here.
All comments are the opinions of their respective authors and are not
necessarily endorsed by the IEEE.
This work is distributed under the LaTeX Project Public License (LPPL)
( http://www.latex-project.org/ ) version 1.3, and may be freely used,
distributed and modified. A copy of the LPPL, version 1.3, is included
in the base LaTeX documentation of all distributions of LaTeX released
2003/12/01 or later.
Retain all contribution notices and credits.
** Modified files should be clearly indicated as such, including **
** renaming them and changing author support contact information. **
File list of work: IEEEabrv.bib, IEEEfull.bib, IEEEexample.bib,
IEEEtran.bst, IEEEtranS.bst, IEEEtranSA.bst,
IEEEtranN.bst, IEEEtranSN.bst, IEEEtran_bst_HOWTO.pdf
*************************************************************************
Note that, because the example references were taken from actual IEEE
publications, these examples do not always contain the full amount
of information that may be desirable (for use with other BibTeX styles).
In particular, full names (not abbreviated with initials) should be
entered whenever possible as some (non-IEEE) bibliography styles use
full names. IEEEtran.bst will automatically abbreviate when it encounters
full names.
references for the IEEEtran.bst documentation
IEEEtran homepage
@electronic{IEEEhowto:IEEEtranpage,
author = "Michael Shell",
title = "{IEEE}tran Homepage",
url = "http://www.michaelshell.org/tex/ieeetran/",
year = "2008"
}
the distribution site for IEEEtran.bst
@electronic{IEEEexample:shellCTANpage,
author = "Michael Shell",
title = "{IEEE}tran Webpage on {CTAN}",
url = "http://www.ctan.org/tex-archive/macros/latex/contrib/IEEEtran/",
year = "2008"
}
the IEEE website
sort key is needed for sorting styles
@electronic{IEEEexample:IEEEwebsite,
title = "The {IEEE} Website",
url = "http://www.ieee.org/",
year = "2008",
key = "IEEE"
}
The BibTeX user's guide.
The filename could have been put in the URL instead. But, there might
be other interesting things for the user in the same directory - and
the filename might change before the directory that contains it.
@electronic{IEEEexample:bibtexuser,
author = "Oren Patashnik",
title = "{{\BibTeX}}ing",
howpublished = "{btxdoc.pdf}",
url = "http://www.ctan.org/tex-archive/biblio/bibtex/contrib/doc/",
month = feb,
year = "1988"
}
The BibTeX style designer's guide.
@electronic{IEEEexample:bibtexdesign,
author = "Oren Patashnik",
title = "Designing {{\BibTeX}} Styles",
howpublished = "{btxhak.pdf}",
url = "http://www.ctan.org/tex-archive/biblio/bibtex/contrib/doc/",
month = feb,
year = "1988"
}
A comprehensive BibTeX tutorial.
@electronic{IEEEexample:tamethebeast,
author = "Nicolas Markey",
title = "Tame the BeaST --- The B to X of {{\BibTeX}}",
url = "http://tug.ctan.org/tex-archive/info/bibtex/tamethebeast/",
month = oct,
year = "2005"
}
The BibTeX Tips and FAQ guide.
@electronic{IEEEexample:bibtexFAQ,
author = "David Hoadley and Michael Shell",
title = "{{\BibTeX}} Tips and {FAQ}",
howpublished = "{btxFAQ.pdf}",
url = "http://www.ctan.org/tex-archive/biblio/bibtex/contrib/doc/",
month = jan,
year = "2007"
}
The TeX FAQ
@electronic{IEEEexample:texfaq,
author = "Robin Fairbairns",
title = "The {{\TeX}} {FAQ}",
url = "http://www.tex.ac.uk/cgi-bin/texfaq2html/",
month = jun,
year = "2008"
}
A BibTeX Guide via Examples.
@electronic{IEEEexample:bibtexguide,
author = "Ki-Joo Kim",
title = "A {{\BibTeX}} Guide via Examples",
howpublished = "{bibtex\_guide.pdf}",
url = "http://www.geocities.com/kijoo2000/",
month = apr,
year = "2004"
}
TeX User Group Bibliography Archive
@electronic{IEEEexample:beebe_archive,
author = "Nelson H. F. Beebe",
title = "{{\TeX}} User Group Bibliography Archive",
url = "http://www.math.utah.edu/pub/tex/bib/index-table.html",
month = jul,
year = "2008"
}
The natbib.sty package.
@electronic{ctan:natbib,
author = "Patrick W. Daly",
title = "The natbib.sty package",
url = "http://www.ctan.org/tex-archive/macros/latex/contrib/natbib/",
month = oct,
year = "2007"
}
The url.sty package.
@electronic{IEEEexample:urlsty,
author = "Donald Arseneau",
title = "The url.sty Package",
url = "http://www.ctan.org/tex-archive/macros/latex/contrib/misc/",
month = apr,
year = "2006",
}
The hyperref.sty package.
@electronic{IEEEexample:hyperrefsty,
author = "Sebastian Rahtz and Heiko Oberdiek",
title = "The hyperref.sty Package",
url = "http://www.ctan.org/tex-archive/macros/latex/contrib/hyperref/",
month = sep,
year = "2008",
}
The breakurl.sty package.
@electronic{IEEEexample:breakurl,
author = "Vilar Camara Neto",
title = "The breakurl.sty Package",
url = "http://www.ctan.org/tex-archive/macros/latex/contrib/breakurl/",
month = jul,
year = "2008",
}
The Babel package.
@electronic{IEEEexample:babel,
author = "Johannes Braams",
title = "The Babel Package",
url = "http://www.ctan.org/tex-archive/macros/latex/required/babel/",
month = jul,
year = "2008",
}
The multibib package.
@electronic{IEEEexample:multibibsty,
author = "Thorsten Hansen",
title = "The multibib.sty package",
url = "http://www.ctan.org/tex-archive/macros/latex/contrib/multibib/",
month = jan,
year = "2004"
}
The biblatex package.
@electronic{IEEEexample:biblatex,
author = "Philipp Lehman",
title = "The biblatex package",
url = "http://www.ctan.org/tex-archive/macros/latex/exptl/biblatex/",
month = apr,
year = "2008"
}
The three most common and typical types of references used in
IEEE publications:
an article in a journal
Note the use of the IEEE_J_EDL string, defined in the IEEEabrv.bib file,
for the journal name. IEEEtran.bst defines the BibTeX standard three
letter month codes per IEEE style.
From the June 2002 issue of "IEEE Transactions on Electron Devices",
page 996, reference #16.
@article{IEEEexample:article_typical,
author = "S. Zhang and C. Zhu and J. K. O. Sin and P. K. T. Mok",
title = "A Novel Ultrathin Elevated Channel Low-temperature
Poly-{Si} {TFT}",
journal = IEEE_J_EDL,
volume = "20",
month = nov,
year = "1999",
pages = "569-571"
}
journal article using et al.
The (five) authors are actually: F. Delorme, S. Slempkes, G. Alibert,
B. Rose, J. Brandon
The month (July) was not given here.
From the September 1998 issue of "IEEE Journal on Selected Areas in
Communications", page 1257, reference #28.
@article{IEEEexample:articleetal,
author = "F. Delorme and others",
title = "Butt-jointed {DBR} Laser With 15 {nm} Tunability Grown
in Three {MOVPE} Steps",
journal = "Electron. Lett.",
volume = "31",
number = "15",
year = "1995",
pages = "1244-1245"
}
a paper in a conference proceedings
"conference" can be used as an alias for "inproceedings"
From the June 2002 issue of "Journal of Microelectromechanical Systems",
page 205, reference #16.
@inproceedings{IEEEexample:conf_typical,
author = "R. K. Gupta and S. D. Senturia",
title = "Pull-in Time Dynamics as a Measure of Absolute Pressure",
booktitle = "Proc. {IEEE} International Workshop on
Microelectromechanical Systems ({MEMS}'97)",
address = "Nagoya, Japan",
month = jan,
year = "1997",
pages = "290-294"
}
a book
From the May 2002 issue of "IEEE Transactions on Magnetics",
page 1466, reference #4.
@book{IEEEexample:book_typical,
author = "B. D. Cullity",
title = "Introduction to Magnetic Materials",
publisher = "Addison-Wesley",
address = "Reading, MA",
year = "1972"
}
Other examples
journal article with large page numbers, IEEE will divide numbers 5 digits
or longer into groups of three with small spaces between them. Page ranges
can be separated via either "-" or "--", IEEEtran.bst will automatically
convert the separator dash(es) to "--".
Authors and/or IEEE do not always provide/use the journal number, but it
was used in this case. IEEEtran.bst can be configured to ignore journal
numbers if desired.
From the August 2000 issue of "IEEE Photonics Technology Letters",
page 1039, reference #11.
@article{IEEEexample:articlelargepages,
author = "A. Castaldini and A. Cavallini and B. Fraboni
and P. Fernandez and J. Piqueras",
title = "Midgap Traps Related to Compensation Processes in
{CdTe} Alloys",
journal = "Phys. Rev. B.",
volume = "56",
number = "23",
year = "1997",
pages = "14897-14900"
}
journal article with dual months
use the BibTeX "#" concatenation operator
From the March 2002 issue of "IEEE Transactions on Mechatronics",
page 21, reference #8.
@article{IEEEexample:articledualmonths,
author = "Y. Okada and K. Dejima and T. Ohishi",
title = "Analysis and Comparison of {PM} Synchronous Motor and
Induction Motor Type Magnetic Bearings",
journal = IEEE_J_IA,
volume = "31",
month = sep # "/" # oct,
year = "1995",
pages = "1047-1053"
}
journal article to be published as a misc entry type
date information like month and year is optional
However, the article form like that below may be a better approach.
From the May 2002 issue of "IEEE Journal of Selected Areas in
Communication", page 725, reference #3.
@misc{IEEEexample:TBPmisc,
author = "M. Coates and A. Hero and R. Nowak and B. Yu",
title = "Internet Tomography",
howpublished = IEEE_M_SP,
month = may,
year = "2002",
note = "to be published"
}
journal article to be published as an article entry type
year is required, so if absent, use the year field to hold
the "submitted for publication" in order to avoid a warning for
the missing year field.
From the June 2002 issue of "IEEE Transactions on Information Theory",
page 1461, reference #21.
@article{IEEEexample:TBParticle,
author = "N. Kahale and R. Urbanke",
title = "On the Minimum Distance of Parallel and Serially
Concatenated Codes",
journal = IEEE_J_IT,
year = "submitted for publication"
}
book with editor and no author
From the June 2002 issue of "IEEE Transactions on Information Theory",
page 1725, reference #1.
@book{IEEEexample:bookwitheditor,
editor = "J. C. Candy and G. C. Temes",
title = "Oversampling Delta-Sigma Data Converters Theory,
Design and Simulation",
publisher = "{IEEE} Press.",
address = "New York",
year = "1992"
}
book with edition, author and editor
Note that the standard BibTeX styles do not support book entries with both
author and editor fields, but IEEEtran.bst does.
The standard BibTeX way of specifying the edition is to use capitalized
ordinal words such as "First", "Second", etc. Most .bst files can convert
up to about "Fifth" into the format needed. IEEEtran.bst can convert up
to "Tenth" to the "Arabic ordinal" form IEEE uses (e.g., "10th"). For
editions over the tenth, it is best to use the "Arabic ordinal" form for
IEEE related work (e.g., "101st")
Note how "Jr." has to be entered.
From the May 2002 issue of "Journal of Lightwave Technology", page 856,
reference #17.
@book{IEEEexample:book,
author = "S. M. Metev and V. P. Veiko",
editor = "Osgood, Jr., R. M.",
title = "Laser Assisted Microtechnology",
edition = "Second",
publisher = "Springer-Verlag",
address = "Berlin, Germany",
year = "1998"
}
book with series and volume
From the January 2000 issue of "IEEE Transactions on Communications",
page 11, reference #31.
@book{IEEEexample:bookwithseriesvolume,
editor = "J. Breckling",
title = "The Analysis of Directional Time Series: Applications to
Wind Speed and Direction",
series = "Lecture Notes in Statistics",
publisher = "Springer",
address = "Berlin, Germany",
year = "1989",
volume = "61"
}
inbook with chapter number. The pages field could also have been given.
The chapter number could be changed to something else such as a section
number via the type field: type = "sec.".
From the May 2002 issue of "IEEE Transactions on Circuits and Systems---I:
Fundamental Applications and Theory", page 638, reference #22.
@inbook{IEEEexample:inbook,
author = "H. E. Rose",
title = "A Course in Number Theory",
publisher = "Oxford Univ. Press",
address = "New York, NY",
year = "1988",
chapter = "3"
}
inbook with pages and note. The language field is not set to Russian
because the title is presented here in its translated, English, form.
From the May 2002 issue of "IEEE Transactions on Magnetics", page 1533,
reference #5.
@inbook{IEEEexample:inbookpagesnote,
author = "B. K. Bul",
title = "Theory Principles and Design of Magnetic Circuits",
publisher = "Energia Press",
address = "Moscow",
year = "1964",
pages = "464",
note = "(in Russian)"
}
incollection with author and editor
From the May 2002 issue of "Journal of Lightwave Technology",
page 807, reference #7.
@incollection{IEEEexample:incollection,
author = "W. V. Sorin",
editor = "D. Derickson",
title = "Optical Reflectometry for Component Characterization",
booktitle = "Fiber Optic Test and Measurement",
publisher = "Prentice-Hall",
address = "Englewood Cliffs, NJ",
year = "1998"
}
incollection with series
From the April 2000 issue of "IEEE Transactions on Communication",
page 609, reference #3.
@incollection{IEEEexample:incollectionwithseries,
author = "J. B. Anderson and K. Tepe",
title = "Properties of the Tailbiting {BCJR} Decoder",
booktitle = "Codes, Systems and Graphical Models",
series = "{IMA} Volumes in Mathematics and Its Applications",
publisher = "Springer-Verlag",
address = "New York",
year = "2000"
}
incollection with author, editor, chapter and pages
From the January 2000 issue of "IEEE Transactions on Communications",
page 16, reference #9.
@incollection{IEEEexample:incollection_chpp,
author = "P. Hedelin and P. Knagenhjelm and M. Skoglund",
editor = "W. B. Kleijn and K. K. Paliwal",
title = "Theory for Transmission of Vector Quantization Data",
booktitle = "Speech Coding and Synthesis",
publisher = "Elsevier Science",
address = "Amsterdam, The Netherlands",
year = "1995",
chapter = "10",
pages = "347-396"
}
incollection with a large number of authors, some authors/journals will
use et al. for so many names. IEEEtran.bst can be configured to do this
if desired, or "R. M. A. Dawson and others" can be used instead.
Note that IEEE may not include the publisher for incollection entries -
IEEEtran.bst will not issue a warning if the publisher is missing for
incollections - but other .bst files often will.
From the June 2002 issue of "IEEE Transactions on Electron Devices",
page 996, reference #12.
@incollection{IEEEexample:incollectionmanyauthors,
author = "R. M. A. Dawson and Z. Shen and D. A. Furst and
S. Connor and J. Hsu and M. G. Kane and R. G. Stewart and
A. Ipri and C. N. King and P. J. Green and R. T. Flegal
and S. Pearson and W. A. Barrow and E. Dickey and K. Ping
and C. W. Tang and S. Van. Slyke and
F. Chen and J. Shi and J. C. Sturm and M. H. Lu",
title = "Design of an Improved Pixel for a Polysilicon
Active-Matrix Organic {LED} Display",
booktitle = "{SID} Tech. Dig.",
volume = "29",
year = "1998",
pages = "11-14"
}
A Motorola data book as a manual
It is somewhat unusual to include the data book part number.
in the title. It might be more correct to put this information
in the howpublished field instead.
From the December 2000 issue of "IEEE Transactions on Communications",
page 1986, reference #10.
@manual{IEEEexample:motmanual,
title = "{FLEXChip} Signal Processor ({MC68175/D})",
organization = "Motorola",
year = "1996"
}
same reference, but using IEEEtran's howpublished extension
@manual{IEEEexample:motmanualhowpub,
title = "{FLEXChip} Signal Processor",
howpublished = "{MC68175/D}",
organization = "Motorola",
year = "1996"
}
conference paper with an address and days. Some journals capitalize the
letters in "Globecom", this one did not.
From the May 2002 issue of "IEEE Transactions on Communications",
page 697, reference #12.
@inproceedings{IEEEexample:confwithadddays,
author = "M. S. Yee and L. Hanzo",
title = "Radial Basis Function Decision Feedback Equaliser
Assisted Burst-by-burst Adaptive Modulation",
booktitle = "Proc. {IEEE} Globecom '99",
address = "Rio de Janeiro, Brazil",
month = dec # " 5--9,",
year = "1999",
pages = "2183-2187"
}
conference paper with volume number. A conference proceedings with a vol
number is a little uncommon, note that the vol number is placed
before the address in the formatted bibliography entry
From the April 2002 issue of "IEEE/ACM Transactions on Networking",
page 181, reference #26.
@inproceedings{IEEEexample:confwithvolume,
author = "M. Yajnik and S. B. Moon and J. Kurose and D. Towsley",
title = "Measurement and Modeling of the Temporal Dependence in
Packet Loss",
booktitle = "Proc. {IEEE} {INFOCOM}'99",
volume = "1",
address = "New York, NY",
month = mar,
year = "1999",
pages = "345-352"
}
conference paper with a paper number, the type field can be used to
override the word "paper", e.g., type = "postdeadline paper". A type
can be given even without a paper field.
Also, IEEEtran.bst can be configured to ignore paper numbers and types.
From the May 2002 issue of "Journal of Lightwave Technology",
page 807, reference #4.
@inproceedings{IEEEexample:confwithpaper,
author = "M. Wegmuller and J. P. von der Weid and P. Oberson
and N. Gisin",
title = "High Resolution Fiber Distributed Measurements With
Coherent {OFDR}",
booktitle = "Proc. {ECOC}'00",
year = "2000",
paper = "11.3.4",
pages = "109"
}
conference paper with a postdeadline type paper, the paper field is
optional.
From the August 2000 issue of "IEEE Photonics Technology Letters",
page 1087, reference #12.
@inproceedings{IEEEexample:confwithpapertype,
author = "B. Mikkelsen and G. Raybon and R.-J. Essiambre and
K. Dreyer and Y. Su. and L. E. Nelson and J. E. Johnson
and G. Shtengel and A. Bond and D. G. Moodie and
A. D. Ellis",
title = "160 {Gbit/s} Single-channel Transmission Over 300 km
Nonzero-dispersion Fiber With Semiconductor Based
Transmitter and Demultiplexer",
booktitle = "Proc. {ECOC}'99",
year = "1999",
paper = "2-3",
type = "postdeadline paper",
pages = "28-29"
}
presented at a conference
intype overrides the default "in" and causes the booktitle not to be
emphasized (rendered in italics).
From the February 2002 issue of "IEEE/ACM Transactions on Networking",
page 163, reference #6.
@inproceedings{IEEEexample:presentedatconf,
author = "S. G. Finn and M. M{\'e}dard and R. A. Barry",
title = "A Novel Approach to Automatic Protection Switching
Using Trees",
intype = "presented at the",
booktitle = "Proc. Int. Conf. Commun.",
year = "1997"
}
master's thesis, often the University name will be abbreviated and the
state or country will be included in the address. The type field can
used to override the default type "Master's thesis"
From the June 2002 issue of "IEEE Transactions on Microelectromechanical
Systems", page 186, reference #11.
@mastersthesis{IEEEexample:masters,
author = "Nin C. Loh",
title = "High-Resolution Micromachined Interferometric
Accelerometer",
school = "Massachusetts Institute of Technology",
address = "Cambridge",
year = "1992"
}
master's thesis with a type field
From the August 2001 issue of "IEEE/ACM Transactions on Networking",
page 391, reference #12.
@mastersthesis{IEEEexample:masterstype,
author = "A. Karnik",
title = "Performance of {TCP} Congestion Control with Rate
Feedback: {TCP/ABR} and Rate Adaptive {TCP/IP}",
school = "Indian Institute of Science",
type = "M. Eng. thesis",
address = "Bangalore, India",
month = jan,
year = "1999"
}
Ph.D. dissertation with a URL field, the university is abbreviated
From the October 2001 issue of "IEEE/ACM Transactions on Networking",
page 590, reference #11.
@phdthesis{IEEEexample:phdurl,
author = "Q. Li",
title = "Delay Characterization and Performance Control of
Wide-area Networks",
school = "Univ. of Delaware",
address = "Newark",
month = may,
year = "2000",
url = "http://www.ece.udel.edu/~qli"
}
technical report
From the August 2001 issue of "IEEE/ACM Transactions on Networking",
page 490, reference #15.
@techreport{IEEEexample:techrep,
author = "R. Jain and K. K. Ramakrishnan and D. M. Chiu",
title = "Congestion Avoidance in Computer Networks with a
Connectionless Network Layer",
institution = "Digital Equipment Corporation",
address = "MA",
number = "DEC-TR-506",
month = aug,
year = "1987"
}
technical report with type
for those times when "Tech. Rep." needs to be modified
From the February 2001 issue of "IEEE/ACM Transactions on Networking",
page 46, reference #8.
@techreport{IEEEexample:techreptype,
author = "J. Padhye and V. Firoiu and D. Towsley",
title = "A Stochastic Model of {TCP} {R}eno Congestion Avoidance
and Control",
institution = "Univ. of Massachusetts",
address = "Amherst, MA",
type = "CMPSCI Tech. Rep.",
number = "99-02",
year = "1999"
}
technical report with type
for those times when "Tech. Rep." needs to be modified
This reference did not have an address.
From the January 2000 issue of "IEEE Transactions on Communications",
page 117, reference #6.
@techreport{IEEEexample:techreptypeii,
author = "D. Middleton and A. D. Spaulding",
title = "A Tutorial Review of Elements of Weak Signal Detection
in Non-{G}aussian {EMI} Environments",
institution = "National Telecommunications and Information
Administration ({NTIA}), U.S. Dept. of Commerce",
type = "NTIA Report",
number = "86-194",
month = may,
year = "1986"
}
technical report, standards submission report
From the June 2004 issue of "IEEE Journal of Selected Areas in Communications",
page 928, reference #9.
Note that some journals do not abbreviate the task group: "TGe" => "Task Group E"
@techreport{IEEEexample:techrepstdsub,
author = "S. Kandala",
title = "Changes to {A}nnex {D}",
institution = "{IEEE} 802.11 {TGe}",
number = "02/680r0",
month = oct,
year = "2002"
}
an unpublished work
for unpublished types, the note field is required. IEEE usually
just uses the word "unpublished" for the note.
From the August 2001 issue of "IEEE/ACM Transactions on Networking",
page 391, reference #16.
@unpublished{IEEEexample:unpublished,
author = "T. J. Ott and N. Aggarwal",
title = "{TCP} over {ATM}: {ABR} or {UBR}",
note = "Unpublished"
}
electronic with a howpublished information field
From the August 2001 issue of "IEEE/ACM Transactions on Networking",
page 391, reference #7.
@electronic{IEEEexample:electronhowinfo,
author = "V. Jacobson",
title = "Modified {TCP} Congestion Avoidance Algorithm",
howpublished = "end2end-interest mailing list",
url = "ftp://ftp.isi.edu/end2end/end2end-interest-1990.mail",
month = apr,
year = "1990"
}
electronic with a howpublished information field
From the August 2001 issue of "IEEE/ACM Transactions on Networking",
page 418, reference #31.
@electronic{IEEEexample:electronhowinfo2,
author = "V. Valloppillil and K. W. Ross",
title = "Cache Array Routing Protocol v1.1",
howpublished = "Internet draft",
url = "http://ds1.internic.net/internet-drafts/draft-vinod-carp-v1-03.txt",
year = "1998"
}
electronic with an organization and address
From the February 2002 issue of "IEEE/ACM Transactions on Networking",
page 114, reference #15.
@electronic{IEEEexample:electronorgadd,
author = "D. H. Lorenz and A. Orda",
title = "Optimal Partition of {QoS} Requirements on Unicast
Paths and Multicast Trees",
organization = "Dept. Elect. Eng., Technion",
address = "Haifa, Israel",
url = "ftp://ftp.technion.ac.il/pub/supported/ee/Network/lor.mopq98.ps",
month = jul,
year = "1998"
}
U.S. patent
Use the type field to override the patent type. e.g.,
type = "Patent Application"
The address is that of the assignee. Note that IEEE does not
display the assignee, the address, and only displays one date.
(if year is not present, the filed dates are used.) However, this
information should be entered as other BibTeX styles may use it.
alternatively, nationality could be entered as "U.S."
From the April 2000 issue of "IEEE Transactions on Communications",
page 542, reference #6.
@patent{IEEEexample:uspat,
author = "Ronald E. Sorace and Victor S. Reinhardt and
Steven A. Vaughn",
assignee = "Hughes Aircraft Company",
address = "Los Angeles, CA",
title = "High-Speed Digital-to-{RF} Converter",
nationality = "United States",
number = "5668842",
dayfiled = "28",
monthfiled = feb,
yearfiled = "1995",
day = "16",
month = sep,
year = "1997"
}
Japanese Patent
From the April 2000 issue of "IEEE Transactions on Communications",
page 556, reference #6.
@patent{IEEEexample:jppat,
author = "U. Hideki",
title = "Quadrature Modulation Circuit",
nationality = "Japanese",
number = "152932/92",
day = "20",
month = may,
year = "1992"
}
French Patent request, the language field must be entered in lower case
as this is the option name Babel uses. The nationality field needs to be
capitalized. Because this is a patent request, the date filed fields are
used while the date fields are left empty/missing. In other countries,
the words "Patent Application", etc. are used instead.
From the April 2000 issue of "IEEE Transactions on Communications",
page 556, reference #9.
@patent{IEEEexample:frenchpatreq,
author = "F. Kowalik and M. Isard",
title = "Estimateur d'un D{\'e}faut de Fonctionnement
d'un Modulateur en Quadrature et {\'E}tage de Modulation
l'Utilisant",
language = "french",
nationality = "French",
type = "Patent Request",
number = "9500261",
dayfiled = "11",
monthfiled = jan,
yearfiled = "1995"
}
a periodical
From the April 2001 issue of "IEEE/ACM Transactions on Networking",
page 160, reference #1.
sort key is needed for sorting styles
@periodical{IEEEexample:periodical,
title = IEEE_M_PCOM # ", Special Issue on Wireless {ATM}",
volume = "3",
month = aug,
year = "1996",
key = "IEEE"
}
standard, IEEE does not use the address for standards, but it is good
to provide one for BibTeX styles that use it.
From the August 2001 issue of "IEEE/ACM Transactions on Networking",
page 451, reference #2.
@standard{IEEEexample:standard,
title = "Wireless {LAN} Medium Access Control {(MAC)} and
Physical Layer {(PHY)} Specification",
organization = "IEEE",
address = "Piscataway, NJ",
number = "802.11",
year = "1997"
}
standard with type and revision, the type overrides the word standard
(or std.). Here a standard number is not available and a revision number
is used.
From the August 2000 issue of "IEEE Photonics Technology Letters",
page 1048, reference #13.
@standard{IEEEexample:standardproposed,
title = "Fiber Channel Physical Interface ({FC-PI})",
institution = "NCITS",
address = "Washington, DC",
type = "Working Draft Proposed Standard",
revision = "5.2",
year = "1999"
}
standard draft as a misc with author
From the May 2002 issue of "IEEE Journal of Selected Areas in
Communication", page 725, reference #16.
@misc{IEEEexample:draftasmisc,
author = "I. Widjaja and A. Elwalid",
title = "{MATE}: {MPLS} Adaptive Traffic Engineering",
howpublished = "IETF Draft",
year = "1999"
}
misc for a techreport like reference
techreport is not perfectly suitable because this entry lacks
an institution field
From the August 2001 issue of "IEEE/ACM Transactions on Networking",
page 490, reference #22.
@misc{IEEEexample:miscforum,
author = "L. Roberts",
title = "Enhanced Proportional Rate Control Algorithm {PRCA}",
howpublished = "{ATM} Forum Contribution 94-0735R1",
month = aug,
year = "1994"
}
misc for a white paper
From the August 2001 issue of "IEEE/ACM Transactions on Networking",
page 478, reference #4 - Note that the reference there (improperly?)
used the author field for "Cisco".
@misc{IEEEexample:whitepaper,
title = "Advanced {QoS} Services for the Intelligent Internet",
howpublished = "White Paper",
organization = "Cisco",
month = may,
year = "1997"
}
misc for a data sheet
From the November 2000 issue of "IEEE Photonics Technology Letters",
page 1551, reference #6.
@misc{IEEEexample:datasheet,
title = "{PDCA12-70} Data Sheet",
organization = "Opto Speed SA",
address = "Mezzovico, Switzerland"
}
Other unusual references
a private communication as a misc entry type
sometimes the designation "personal communication" is used instead
From the June 2002 issue of "IEEE Transactions on Information Theory",
page 1725, reference #16.
@misc{IEEEexample:private,
author = "S. Konyagin",
howpublished = "private communication",
year = "1998"
}
an internet request for comments (RFC) as a misc entry type
It would also be nice to add a URL to these types of things.
RFCs can also be handled as electronic references.
From the April 2002 issue of "IEEE/ACM Transactions on Networking",
page 181, reference #14.
@misc{IEEEexample:miscrfc,
author = "K. K. Ramakrishnan and S. Floyd",
title = "A Proposal to Add Explicit Congestion
Notification ({ECN}) to {IP}",
howpublished = "RFC 2481",
month = jan,
year = "1999"
}
a software package as a manual
From the June 2002 issue of "IEEE/ASME Journal of Microelectromechanical
Systems", page 205, reference #20.
Sometimes they put the version/release information in the title.
@manual{IEEEexample:softmanual,
title = "SaberDesigner Reference Manual",
organization = "Analogy, Inc.",
address = "Beaverton, OR",
year = "1998",
note = "Release 4.3"
}
a software package as an electronic reference
From the February 2003 issue of "IEEE/ACM Transactions on Networking",
page 46, reference #24. If there is no author or organization, a sorting
key is required for sorting styles. It might be a good idea to include
month and year fields as well.
@electronic{IEEEexample:softonline,
title = "Ucb/lbnl/vint Network Simulator---ns (Version 2)",
url = "http://www-mash.cs.berkeley.edu/ns/",
key = "ns"
}
misc for a German regulation
In German, the first letters of nouns are capitalized, so we do so here.
From the June 2002 issue of "IEEE Journal in Selected Areas in
Communication", page 892, reference #9.
@misc{IEEEexample:miscgermanreg,
title = "{M}essung von {S}t{\"o}rfeldern an {A}nlagen
und {L}eitungen der {T}elekommunikation im
{F}requenzbereich 9 {kHz} bis 3 {GHz}",
language = "german",
howpublished = "{M}e{\ss}vorschrift {R}eg {TP} {MV} 05",
organization = "Regulierungsbeh{\"o}rde f{\"u}r {T}elekommunikation und
{P}ost ({R}eg {TP})"
}
Ways to handle things like CCSDS's Blue Books
journal article with a URL. However, this is not a very good approach
because the Blue Books are not really journals and the author field has
to be abused.
From the June 2002 issue of "IEEE Transactions on Information Theory",
page 1461, reference #7.
@article{IEEEexample:bluebookarticle,
author = "{Consulative Committee for Space Data Systems (CCSDS)}",
title = "Telemetry Channel Coding",
journal = "Blue Book",
number = "4",
year = "1999",
url = "http://www.ccsds.org/documents/pdf/CCSDS-101.0-B-4.pdf"
}
CCSDS's Blue Book handled as a book
However, it is not a good idea to have to use the author field for
an organization (done here because the book entry type requires an
author field).
@book{IEEEexample:bluebookbook,
author = "{Consulative Committee for Space Data Systems (CCSDS)}",
title = "Telemetry Channel Coding",
series = "Blue Book",
number = "4",
publisher = "{CCSDS}",
address = "Newport Beach, {CA}",
year = "1999",
url = "http://www.ccsds.org/documents/pdf/CCSDS-101.0-B-4.pdf"
}
CCSDS's Blue Book handled as a manual
This is a much better approach, but uses the howpublished field.
@manual{IEEEexample:bluebookmanual,
title = "Telemetry Channel Coding",
howpublished = "ser. Blue Book, No. 4",
organization = "Consulative Committee for Space Data Systems (CCSDS)",
address = "Newport Beach, CA",
year = "1999",
url = "http://www.ccsds.org/documents/pdf/CCSDS-101.0-B-4.pdf"
}
CCSDS's Blue Book handled as a standard
Probably the best approach for this particular case because the work
is standard related. Note that IEEE does not display the address for
standards.
@standard{IEEEexample:bluebookstandard,
title = "Telemetry Channel Coding",
howpublished = "ser. Blue Book, No. 4",
organization = "Consulative Committee for Space Data Systems (CCSDS)",
address = "Newport Beach, CA",
type = "Recommendation for Space Data System Standard",
number = "101.0-B-4",
month = May,
year = "1999",
url = "http://www.ccsds.org/documents/pdf/CCSDS-101.0-B-4.pdf"
}
An example of a IEEEtran control entry which can change some IEEEtran.bst
settings. An entry like this must be cited via \bstctlcite{} command
before the first real \cite{}. The same entry key cannot be called twice
(just like multiple \cite{} of the same entry key place only one entry
in the bibliography.)
The available control fields are:
CTLuse_article_number
"no" turns off the display of the number for articles.
"yes" enables
CTLuse_paper
"no" turns off the display of the paper and type fields in inproceedings.
"yes" enables
CTLuse_forced_etal
"no" turns off the forced use of "et al."
"yes" enables
CTLmax_names_forced_etal
The maximum number of names that can be present beyond which an "et al."
usage is forced. Be sure that CTLnames_show_etal (below)
is not greater than this value!
CTLnames_show_etal
The number of names that will be shown with a forced "et al.".
Must be less than or equal to CTLmax_names_forced_etal
CTLuse_alt_spacing
"no" turns off the alternate interword spacing for entries with URLs.
"yes" enables
CTLalt_stretch_factor
If alternate interword spacing for entries with URLs is enabled, this is
the interword spacing stretch factor that will be used. For example, the
default "4" here means that the interword spacing in entries with URLs can
stretch to four times normal. Does not have to be an integer.
CTLdash_repeated_names
"no" turns off the "dashification" of repeated (i.e., identical to those
of the previous entry) names. IEEE normally does this.
"yes" enables
CTLname_format_string
The name format control string as explained in the BibTeX style hacking
guide.
IEEE style "{f.~}{vv~}{ll}{, jj}" is the default,
CTLname_latex_cmd
A LaTeX command that each name will be fed to (e.g., "\textsc").
Leave empty if no special font is desired for the names.
The default is empty.
CTLname_url_prefix
The prefix text used before URLs.
The default is "[Online]. Available:" A space will be inserted after this
text. If this space is not wanted, just use \relax at the end of the
prefix text.
Those fields that are not to be changed can be left out.
@IEEEtranBSTCTL{IEEEexample:BSTcontrol,
CTLuse_article_number = "yes",
CTLuse_paper = "yes",
CTLuse_forced_etal = "no",
CTLmax_names_forced_etal = "10",
CTLnames_show_etal = "1",
CTLuse_alt_spacing = "yes",
CTLalt_stretch_factor = "4",
CTLdash_repeated_names = "yes",
CTLname_format_string = "{f.~}{vv~}{ll}{, jj}",
CTLname_latex_cmd = "",
CTLname_url_prefix = "[Online]. Available:"
}
\ No newline at end of file
\documentclass[lettersize,journal]{IEEEtran}
\usepackage{amsmath,amsfonts}
\usepackage{algorithmic}
\usepackage{array}
\usepackage[caption=false,font=normalsize,labelfont=sf,textfont=sf]{subfig}
\usepackage{textcomp}
\usepackage{stfloats}
\usepackage{url}
\usepackage{verbatim}
\usepackage{graphicx}
\hyphenation{op-tical net-works semi-conduc-tor IEEE-Xplore}
\def\BibTeX{{\rm B\kern-.05em{\sc i\kern-.025em b}\kern-.08em
T\kern-.1667em\lower.7ex\hbox{E}\kern-.125emX}}
\usepackage{balance}
\begin{document}
\title{How to Use the IEEEtran \LaTeX \ Templates}
\author{IEEE Publication Technology Department
\thanks{Manuscript created October, 2020; This work was developed by the IEEE Publication Technology Department. This work is distributed under the \LaTeX \ Project Public License (LPPL) ( http://www.latex-project.org/ ) version 1.3. A copy of the LPPL, version 1.3, is included in the base \LaTeX \ documentation of all distributions of \LaTeX \ released 2003/12/01 or later. The opinions expressed here are entirely that of the author. No warranty is expressed or implied. User assumes all risk.}}
\markboth{Journal of \LaTeX\ Class Files,~Vol.~18, No.~9, September~2020}%
{How to Use the IEEEtran \LaTeX \ Templates}
\maketitle
\begin{abstract}
This document describes the most common article elements and how to use the IEEEtran class with \LaTeX \ to produce files that are suitable for submission to the Institute of Electrical and Electronics Engineers (IEEE). IEEEtran can produce conference, journal and technical note (correspondence) papers with a suitable choice of class options.
\end{abstract}
\begin{IEEEkeywords}
Class, IEEEtran, \LaTeX, paper, style, template, typesetting.
\end{IEEEkeywords}
\section{Introduction}
\IEEEPARstart{W}{elcome} to the updated and simplified documentation to using the IEEEtran \LaTeX \ class file. The IEEE has examined hundreds of author submissions using this package to help formulate this easy to follow guide. We will cover the most commonly used elements of a journal article. For less common elements we will refer back to the ``IEEEtran\_HOWTO.pdf''.
This document applies to version 1.8b of IEEEtran.
The IEEEtran template package contains the following example files:
\begin{list}{}{}
\item{bare\_jrnl.tex}
\item{bare\_conf.tex}
\item{bare\_jrnl\_compsoc.tex}
\item{bare\_conf\_compsoc.tex}
\item{bare\_jrnl\_comsoc.tex}
\end{list}
These are ``bare bones" templates to quickly understand the document structure.
It is assumed that the reader has a basic working knowledge of \LaTeX. Those who are new to \LaTeX \ are encouraged to read Tobias Oetiker's ``The Not So Short Introduction to \LaTeX '', available at: \url{http://tug.ctan.org/info/lshort/english/lshort.pdf} which provides an overview of working with \LaTeX.
\section{The Design, Intent and \\ Limitations of the Templates}
\noindent The templates are intended to {\bf{approximate the final look and page length of the articles/papers}}. Therefore, {\bf{they are NOT intended to be the final produced work that is displayed in print or on IEEEXplore\textsuperscript{\textregistered}}}. They will help to give the authors an approximation of the number of pages that will be in the final version. The structure of the \LaTeX files, as designed, enable easy conversion to XML for the composition systems used by the IEEE's outsource vendors. The XML files are used to produce the final print/IEEEXplore\textsuperscript{\textregistered} pdf and then converted to HTML for IEEEXplore\textsuperscript{\textregistered}. Have you looked at your article/paper in the HTML version?
\section{\LaTeX \ Distributions: Where to Get Them}
\noindent IEEE recommends using the distribution from the \TeX User Group at \url{http://www.tug.org}. You can join TUG and obtain a DVD distribution or download for free from the links provided on their website: \url{http://www.tug.org/texlive/}. The DVD includes distributions for Windows, Mac OS X and Linux operating systems.
\section{Where to get the IEEEtran Templates}
\noindent The {\bf{IEEE Template Selector}} will always have the most up-to-date versions of the \LaTeX\ and MSWord templates. Please see: \url{https://template-selector.ieee.org/} and follow the steps to find the correct template for your intended publication. Many publications use the IEEETran LaTeX templates, however, some publications have their own special templates. Many of these are based on IEEEtran, but may have special instructions that vary slightly from those in this document.
\section{Where to get \LaTeX \ help - user groups}
\noindent The following on-line groups are very helpful to beginning and experienced \LaTeX\ users. A search through their archives can provide many answers to common questions.
\begin{list}{}{}
\item{\url{http://www.latex-community.org/}}
\item{\url{https://tex.stackexchange.com/} }
\end{list}
\section{Document Class Options in IEEEtran}
\noindent At the beginning of your \LaTeX\ file you will need to establish what type of publication style you intend to use. The following list shows appropriate documentclass options for each of the types covered by IEEEtran.
\begin{list}{}{}
\item{Regular Journal Article}
\item{{\tt{$\backslash$documentclass[journal]{IEEEtran}}}}\\
\item{{Conference Paper}}
\item{{\tt{$\backslash$documentclass[conference]{IEEEtran}}}}\\
\item{Computer Society Journal Article}
\item{{\tt{$\backslash$documentclass[10pt,journal,compsoc]{IEEEtran}}}}\\
\item{Computer Society Conference Paper}
\item{{\tt{$\backslash$documentclass[conference,compsoc]{IEEEtran}}}}\\
\item{{Communications Society Journal Article}}
\item{{\tt{$\backslash$documentclass[journal,comsoc]{IEEEtran}}}}\\
\item{{Brief, Correspondence or Technote}}
\item{{\tt{$\backslash$documentclass[9pt,technote]{IEEEtran}}}}
\end{list}
There are other options available for each of these when submitting for peer review or other special requirements. IEEE recommends to compose your article in the base 2-column format to make sure all your equations, tables and graphics will fit the final 2-column format. Please refer to the document ``IEEEtran\_HOWTO.pdf'' for more information on settings for peer review submission if required by your EIC.
\section{How to Create Common Front Matter}
\noindent The following sections describe general coding for these common elements. Computer Society publications and Conferences may have their own special variations and will be noted below.
\subsection{Paper Title}
\noindent The title of your paper is coded as:
\begin{verbatim}
\title{The Title of Your Paper}
\end{verbatim}
\noindent Please try to avoid the use of math or chemical formulas in your title if possible.
\subsection{Author Names and Affiliations}
\noindent The author section should be coded as follows:
\begin{verbatim}
\author{Masahito Hayashi
\IEEEmembership{Fellow, IEEE}, Masaki Owari
\thanks{M. Hayashi is with Graduate School
of Mathematics, Nagoya University, Nagoya,
Japan}
\thanks{M. Owari is with the Faculty of
Informatics, Shizuoka University,
Hamamatsu, Shizuoka, Japan.}
}
\end{verbatim}
Be sure to use the $\backslash$IEEEmembership command to identify IEEE membership status.
Please see the ``IEEEtran\_HOWTO.pdf'' for specific information on coding authors for Conferences and Computer Society publications. Note that the closing curly brace for the author group comes at the end of the thanks group. This will prevent you from creating a blank first page.
\subsection{Running Heads}
\noindent The running heads are declared by using the $\backslash${\tt{markboth}} command. There are two arguments to this command: the first contains the journal name information and the second contains the author names and paper title.
\begin{verbatim}
\markboth{Journal of Quantum Electronics,
Vol. 1, No. 1, January 2021}
{Author1, Author2,
\MakeLowercase{\textit{(et al.)}:
Paper Title}
\end{verbatim}
\subsection{Copyright Line}
\noindent For Transactions and Journals papers, this is not necessary to use at the submission stage of your paper. The IEEE production process will add the appropriate copyright line. If you are writing a conference paper, please see the ``IEEEtran\_HOWTO.pdf'' for specific information on how to code "Publication ID Marks".
\subsection{Abstracts}
\noindent The abstract is the first element of a paper after the $\backslash${\tt{maketitle}} macro is invoked. The coding is simply:
\begin{verbatim}
\begin{abstract}
Text of your abstract.
\end{abstract}
\end{verbatim}
Please try to avoid mathematical and chemical formulas in the abstract.
\subsection{Index Terms}
\noindent The index terms are used to help other researchers discover your paper. Each society may have it's own keyword set. Contact the EIC of your intended publication for this list.
\begin{verbatim}
\begin{IEEEkeywords}
Broad band networks, quality of service
\end{IEEEkeywords}
\end{verbatim}
\section{How to Create Common Body Elements}
\noindent The following sections describe common body text elements and how to code them.
\subsection{Initial Drop Cap Letter}
\noindent The first text paragraph uses a ``drop cap'' followed by the first word in ALL CAPS. This is accomplished by using the $\backslash${\tt{IEEEPARstart}} command as follows:
\begin{verbatim}
\IEEEPARstart{T}{his} is the first paragraph
of your paper. . .
\end{verbatim}
\subsection{Sections and Subsections}
\noindent Section headings use standard \LaTeX\ commands: $\backslash${\tt{section}}, $\backslash${\tt{subsection}} and $\backslash${\tt{subsubsection}}. Numbering is handled automatically for you and varies according to type of publication. It is common to not indent the first paragraph following a section head by using $\backslash${\tt{noindent}} as follows:
\begin{verbatim}
\section{Section Head}
\noindent The text of your paragraph . . .
\end{verbatim}
\subsection{Citations to the Bibliography}
\noindent The coding for the citations are made with the \LaTeX\ $\backslash${\tt{cite}} command. This will produce individual bracketed reference numbers in the IEEE style. At the top of your \LaTeX\ file you should include:
\begin{verbatim}
\usepackage{cite}
\end{verbatim}
For a single citation code as follows:
\begin{verbatim}
see \cite{ams}
\end{verbatim}
This will display as: see \cite{ams}\\
For multiple citations code as follows:
\begin{verbatim}
\cite{ams,oxford,lacomp}
\end{verbatim}
This will display as \cite{ams,oxford,lacomp}
\subsection{Figures}
\noindent Figures are coded with the standard \LaTeX\ commands as follows:
\begin{verbatim}
\begin{figure}[!t]
\centering
\includegraphics[width=2.5in]{fig1}
\caption{This is the caption for one fig.}
\label{fig1}
\end{figure}
\end{verbatim}
The [!t] argument enables floats to the top of the page to follow IEEE style. Make sure you include:
\begin{verbatim}
\usepackage{graphicx}
\end{verbatim}
\noindent at the top of your \LaTeX file with the other package declarations.
To cross-reference your figures in the text use the following code example:
\begin{verbatim}
See figure \ref{fig1} ...
\end{verbatim}
This will produce:\\
See figure \ref{fig1} . . .
\begin{figure}[!t]
\centering
\includegraphics[width=2.5in]{fig1}
\caption{This is the caption for one fig.}
\label{fig1}
\end{figure}
\subsection{Tables}
\noindent Tables should be coded with the standard \LaTeX\ coding. The following example shows a simple table.
\begin{verbatim}
\begin{table}
\begin{center}
\caption{Filter design equations ...}
\label{tab1}
\begin{tabular}{| c | c | c |}
\hline
Order & Arbitrary coefficients &
coefficients\\
of filter & $e_m$ & $b_{ij}$ \\
\hline
1& $b_{ij}=\hat{e}.\hat{\beta_{ij}}$,
& $b_{00}=0$\\
\hline
2&$\beta_{22}=(~1,-1,-1,~~1,~~1,~~1)$ &\\
\hline
3& $b_{ij}=\hat{e}.\hat{\beta_{ij}}$,
& $b_{00}=0$,\\
\hline
\end{tabular}
\end{center}
\end{table}
\end{verbatim}
To reference the table in the text, code as follows:
\begin{verbatim}Table~\ref{tab1} lists the closed-form...\end{verbatim}
to produce:
Table~\ref{tab1} lists the closed-form . . .
%moved here for pagination purposes
\begin{table}
\begin{center}
\caption{A Simple Table Example.}
\label{tab1}
\begin{tabular}{| c | c | c |}
\hline
Order & Arbitrary coefficients & coefficients\\
of filter & $e_m$ & $b_{ij}$ \\
\hline
1& $b_{ij}=\hat{e}.\hat{\beta_{ij}}$, & $b_{00}=0$\\
\hline
2&$\beta_{22}=(~1,-1,-1,~~1,~~1,~~1)$ &\\
\hline
3& $b_{ij}=\hat{e}.\hat{\beta_{ij}}$, & $b_{00}=0$,\\
\hline
\end{tabular}
\end{center}
\end{table}
\subsection{Lists}
\noindent In this section, we will consider three types of lists: simple unnumbered, numbered and bulleted. There have been numerous options added to IEEEtran to enhance the creation of lists. If your lists are more complex than those shown below, please refer to the ``IEEEtran\_HOWTO.pdf'' for additional options.\\
\noindent{\bf A plain unnumbered list}
\begin{list}{}{}
\item{bare\_jrnl.tex}
\item{bare\_conf.tex}
\item{bare\_jrnl\_compsoc.tex}
\item{bare\_conf\_compsoc.tex}
\item{bare\_jrnl\_comsoc.tex}
\end{list}
\noindent coded as:
\begin{verbatim}
\begin{list}{}{}
\item{bare\_jrnl.tex}
\item{bare\_conf.tex}
\item{bare\_jrnl\_compsoc.tex}
\item{bare\_conf\_compsoc.tex}
\item{bare\_jrnl\_comsoc.tex}
\end{list}
\end{verbatim}
\noindent{\bf A simple numbered list}
\begin{enumerate}
\item{bare\_jrnl.tex}
\item{bare\_conf.tex}
\item{bare\_jrnl\_compsoc.tex}
\item{bare\_conf\_compsoc.tex}
\item{bare\_jrnl\_comsoc.tex}
\end{enumerate}
\noindent coded as:
\begin{verbatim}
\begin{enumerate}
\item{bare\_jrnl.tex}
\item{bare\_conf.tex}
\item{bare\_jrnl\_compsoc.tex}
\item{bare\_conf\_compsoc.tex}
\item{bare\_jrnl\_comsoc.tex}
\end{enumerate}
\end{verbatim}
\noindent{\bf A simple bulleted list}
\begin{itemize}
\item{bare\_jrnl.tex}
\item{bare\_conf.tex}
\item{bare\_jrnl\_compsoc.tex}
\item{bare\_conf\_compsoc.tex}
\item{bare\_jrnl\_comsoc.tex}
\end{itemize}
\noindent coded as:
\begin{verbatim}
\begin{itemize}
\item{bare\_jrnl.tex}
\item{bare\_conf.tex}
\item{bare\_jrnl\_compsoc.tex}
\item{bare\_conf\_compsoc.tex}
\item{bare\_jrnl\_comsoc.tex}
\end{itemize}
\end{verbatim}
\subsection{Other Elements}
\noindent For other less common elements such as Algorithms, Theorems and Proofs, and Floating Structures such as page-wide tables, figures or equations, please refer to the ``IEEEtran\_HOWTO.pdf'' section on ``Double Column Floats.''
\section{How to Create Common Back Matter Elements}
\noindent The following sections demonstrate common back matter elements such as Acknowledgments, Bibliographies, Appendicies and Author Biographies.
\subsection{Acknowledgments}
\noindent This should be a simple paragraph before the bibliography to thank those individuals and institutions who have supported your work on this article.
\begin{verbatim}
\section{Acknowledgments}
\noindent Text describing those who
supported your paper.
\end{verbatim}
\subsection{Bibliographies}
\noindent {\bf{References Simplified:}} A simple way of composing references is to use the $\backslash${\tt{bibitem}} macro to define the beginning of a reference as in the following examples:\\
\noindent [6] H. Sira-Ramirez. ``On the sliding mode control of nonlinear systems,'' \textit{Systems \& Control Letters}, vol. 19, pp. 303--312, 1992.
\noindent coded as:
\begin{verbatim}
\bibitem{Sira3}
H. Sira-Ramirez. ``On the sliding mode
control of nonlinear systems,''
\textit{Systems \& Control Letters},
vol. 19, pp. 303--312, 1992.
\end{verbatim}
\noindent [7] A. Levant.``Exact differentiation of signals with unbounded higher derivatives,'' in \textit{Proceedings of the 45th IEEE Conference on Decision and Control}, San Diego, California, USA, pp. 5585--5590, 2006.
\noindent coded as:
\begin{verbatim}\bibitem{Levant}
A. Levant. ``Exact differentiation of
signals with unbounded higher
derivatives,'' in \textit{Proceedings
of the 45th IEEE Conference on
Decision and Control}, San Diego,
California, USA, pp. 5585--5590, 2006.
\end{verbatim}
\noindent [8] M. Fliess, C. Join, and H. Sira-Ramirez. ``Non-linear estimation is easy,'' \textit{International Journal of Modelling, Identification and Control}, vol. 4, no. 1, pp. 12--27, 2008.
\noindent coded as:
\begin{verbatim}
\bibitem{Cedric}
M. Fliess, C. Join, and H. Sira-Ramirez.
``Non-linear estimation is easy,''
\textit{International Journal of Modelling,
Identification and Control}, vol. 4,
no. 1, pp. 12--27, 2008.
\end{verbatim}
\noindent [9] R. Ortega, A. Astolfi, G. Bastin, and H. Rodriguez. ``Stabilization of food-chain systems using a port-controlled Hamiltonian description,'' in \textit{Proceedings of the American Control Conference}, Chicago, Illinois, USA, pp. 2245--2249, 2000.
\noindent coded as:
\begin{verbatim}
\bibitem{Ortega}
R. Ortega, A. Astolfi, G. Bastin, and H.
Rodriguez. ``Stabilization of food-chain
systems using a port-controlled Hamiltonian
description,'' in \textit{Proceedings of the
American Control Conference}, Chicago,
Illinois, USA, pp. 2245--2249, 2000.
\end{verbatim}
\subsection{Accented Characters in References}
\noindent When using accented characters in references, please use the standard LaTeX coding for accents. {\bf{Do not use math coding for character accents}}. For example:
\begin{verbatim}
\'e, \"o, \`a, \~e
\end{verbatim}
will produce: \'e, \"o, \`a, \~e
\subsection{Use of BibTeX}
\noindent If you wish to use BibTeX, please see the documentation that accompanies the IEEEtran Bibliography package.
\subsection{Biographies and Author Photos}
\noindent Authors may have options to include their photo or not. Photos should be a bit-map graphic (.tif or .jpg) and sized to fit in the space allowed. Please see the coding samples below:
\begin{verbatim}
\begin{IEEEbiographynophoto}{Jane Doe}
Biography text here without a photo.
\end{IEEEbiographynophoto}
\end{verbatim}
or a biography with a photo
\begin{verbatim}
\begin{IEEEbiography}[{\includegraphics
[width=1in,height=1.25in,clip,
keepaspectratio]{fig1.png}}]
{IEEE Publications Technology Team}
In this paragraph you can place
your educational, professional background
and research and other interests.
\end{IEEEbiography}
\end{verbatim}
Please see the end of this document to see the output of these coding examples.
\section{Mathematical Typography \\ and Why It Matters}
\noindent Typographical conventions for mathematical formulas have been developed to {\bf provide uniformity and clarity of presentation across mathematical texts}. This enables the readers of those texts to both understand the author's ideas and to grasp new concepts quickly. While software such as \LaTeX \ and MathType\textsuperscript{\textregistered} can produce aesthetically pleasing math when used properly, it is also very easy to misuse the software, potentially resulting in incorrect math display.
IEEE aims to provide authors with the proper guidance on mathematical typesetting style and assist them in writing the best possible article.
As such, IEEE has assembled a set of examples of good and bad mathematical typesetting. You will see how various issues are dealt with. The following publications have been referenced in preparing this material:
\begin{list}{}{}
\item{\emph{Mathematics into Type}, published by the American Mathematical Society}
\item{\emph{The Printing of Mathematics}, published by Oxford University Press}
\item{\emph{The \LaTeX Companion}, by F. Mittelbach and M. Goossens}
\item{\emph{More Math into LaTeX}, by G. Gr\"atzer}
\item{AMS-StyleGuide-online.pdf, published by the American Mathematical Society}
\end{list}
Further examples can be seen at \url{http://journals.ieeeauthorcenter.ieee.org/wp-content/uploads/sites/7/IEEE-Math-Typesetting-Guide.pdf}
\subsection{Display Equations}
\noindent A simple display equation example shown below uses the ``equation'' environment. To number the equations, use the $\backslash${\tt{label}} macro to create an identifier for the equation. LaTeX will automatically number the equation for you.
\begin{equation}
\label{deqn_ex1}
x = \sum_{i=0}^{n} 2{i} Q.
\end{equation}
\noindent is coded as follows:
\begin{verbatim}
\begin{equation}
\label{deqn_ex1}
x = \sum_{i=0}^{n} 2{i} Q.
\end{equation}
\end{verbatim}
To reference this equation in the text use the $\backslash${\tt{ref}} macro.
Please see (\ref{deqn_ex1})\\
\noindent is coded as follows:
\begin{verbatim}
Please see (\ref{deqn_ex1})\end{verbatim}
\subsection{Equation Numbering}
\noindent {\bf{Consecutive Numbering:}} Equations within an article are numbered consecutively from the beginning of the
article to the end, i.e., (1), (2), (3), (4), (5), etc. Do not use roman numerals or section numbers for equation numbering.\\
\noindent {\bf{Appendix Equations:}} The continuation of consecutively numbered equations is best in the Appendix, but numbering
as (A1), (A2), etc., is permissible.\\
\noindent {\bf{Hyphens and Periods}}: Hyphens and periods should not be used in equation numbers, i.e., use (1a) rather than
(1-a) and (2a) rather than (2.a) for sub-equations. This should be consistent throughout the article.
\subsection{Multi-line equations and alignment}
\noindent Here we show several examples of multi-line equations and proper alignments.
\noindent {\bf{A single equation that must break over multiple lines due to length with no specific alignment.}}
\begin{multline}
\text{The first line of this example}\\
\text{The second line of this example}\\
\text{The third line of this example}
\end{multline}
\noindent is coded as:
\begin{verbatim}
\begin{multline}
\text{The first line of this example}\\
\text{The second line of this example}\\
\text{The third line of this example}
\end{multline}
\end{verbatim}
\noindent {\bf{A single equation with multiple lines aligned at the = signs}}
\begin{align}
a &= c+d \\
b &= e+f
\end{align}
\noindent is coded as:
\begin{verbatim}
\begin{align}
a &= c+d \\
b &= e+f
\end{align}
\end{verbatim}
The {\tt{align}} environment can align on multiple points as shown in the following example:
\begin{align}
x &= y & X & =Y & a &=bc\\
x' &= y' & X' &=Y' &a' &=bz
\end{align}
\noindent is coded as:
\begin{verbatim}
\begin{align}
x &= y & X & =Y & a &=bc\\
x' &= y' & X' &=Y' &a' &=bz
\end{align}
\end{verbatim}
\subsection{Subnumbering}
\noindent The amsmath package provides a {\tt{subequations}} environment to facilitate subnumbering. An example:
\begin{subequations}\label{eq:2}
\begin{align}
f&=g \label{eq:2A}\\
f' &=g' \label{eq:2B}\\
\mathcal{L}f &= \mathcal{L}g \label{eq:2c}
\end{align}
\end{subequations}
\noindent is coded as:
\begin{verbatim}
\begin{subequations}\label{eq:2}
\begin{align}
f&=g \label{eq:2A}\\
f' &=g' \label{eq:2B}\\
\mathcal{L}f &= \mathcal{L}g \label{eq:2c}
\end{align}
\end{subequations}
\end{verbatim}
\subsection{Matrices}
\noindent There are several useful matrix environments that can save you some keystrokes. See the example coding below and the output.
\noindent {\bf{A simple matrix:}}
\begin{equation}
\begin{matrix} 0 & 1 \\
1 & 0 \end{matrix}
\end{equation}
is coded as:
\begin{verbatim}
\begin{equation}
\begin{matrix} 0 & 1 \\
1 & 0 \end{matrix}
\end{equation}
\end{verbatim}
\noindent {\bf{A matrix with parenthesis}}
\begin{equation}
\begin{pmatrix} 0 & -i \\
i & 0 \end{pmatrix}
\end{equation}
is coded as:
\begin{verbatim}
\begin{equation}
\begin{pmatrix} 0 & -i \\
i & 0 \end{pmatrix}
\end{equation}
\end{verbatim}
\noindent {\bf{A matrix with square brackets}}
\begin{equation}
\begin{bmatrix} 0 & -1 \\
1 & 0 \end{bmatrix}
\end{equation}
is coded as:
\begin{verbatim}
\begin{equation}
\begin{bmatrix} 0 & -1 \\
1 & 0 \end{bmatrix}
\end{equation}
\end{verbatim}
\noindent {\bf{A matrix with curly braces}}
\begin{equation}
\begin{Bmatrix} 1 & 0 \\
0 & -1 \end{Bmatrix}
\end{equation}
is coded as:
\begin{verbatim}
\begin{equation}
\begin{Bmatrix} 1 & 0 \\
0 & -1 \end{Bmatrix}
\end{equation}\end{verbatim}
\noindent {\bf{A matrix with single verticals}}
\begin{equation}
\begin{vmatrix} a & b \\
c & d \end{vmatrix}
\end{equation}
is coded as:
\begin{verbatim}
\begin{equation}
\begin{vmatrix} a & b \\
c & d \end{vmatrix}
\end{equation}\end{verbatim}
\noindent {\bf{A matrix with double verticals}}
\begin{equation}
\begin{Vmatrix} i & 0 \\
0 & -i \end{Vmatrix}
\end{equation}
is coded as:
\begin{verbatim}
\begin{equation}
\begin{Vmatrix} i & 0 \\
0 & -i \end{Vmatrix}
\end{equation}\end{verbatim}
\subsection{Arrays}
\noindent The {\tt{array}} environment allows you some options for matrix-like equations. You will have to manually key the fences, but you'll have options for alignment of the columns and for setting horizontal and vertical rules. The argument to {\tt{array}} controls alignment and placement of vertical rules.
A simple array
\begin{equation}
\left(
\begin{array}{cccc}
a+b+c & uv & x-y & 27\\
a+b & u+v & z & 134
\end{array}\right)
\end{equation}
is coded as:
\begin{verbatim}
\begin{equation}
\left(
\begin{array}{cccc}
a+b+c & uv & x-y & 27\\
a+b & u+v & z & 134
\end{array} \right)
\end{equation}
\end{verbatim}
A slight variation on this to better align the numbers in the last column
\begin{equation}
\left(
\begin{array}{cccr}
a+b+c & uv & x-y & 27\\
a+b & u+v & z & 134
\end{array}\right)
\end{equation}
is coded as:
\begin{verbatim}
\begin{equation}
\left(
\begin{array}{cccr}
a+b+c & uv & x-y & 27\\
a+b & u+v & z & 134
\end{array} \right)
\end{equation}
\end{verbatim}
An array with vertical and horizontal rules
\begin{equation}
\left( \begin{array}{c|c|c|r}
a+b+c & uv & x-y & 27\\ \hline
a+b & u+v & z & 134
\end{array}\right)
\end{equation}
is coded as:
\begin{verbatim}
\begin{equation}
\left(
\begin{array}{c|c|c|r}
a+b+c & uv & x-y & 27\\
a+b & u+v & z & 134
\end{array} \right)
\end{equation}
\end{verbatim}
Note the argument now has the pipe "$\vert$" included to indicate the placement of the vertical rules.
\subsection{Cases Structures}
\noindent Many times we find cases coded using the wrong environment, i.e., {\tt{array}}. Using the {\tt{cases}} environment will save keystrokes (from not having to type the $\backslash${\tt{left}}$\backslash${\tt{lbrace}}) and automatically provide the correct column alignment.
\begin{equation*}
{z_m(t)} = \begin{cases}
1,&{\text{if}}\ {\beta }_m(t) \\
{0,}&{\text{otherwise.}}
\end{cases}
\end{equation*}
\noindent is coded as follows:
\begin{verbatim}
\begin{equation*}
{z_m(t)} =
\begin{cases}
1,&{\text{if}}\ {\beta }_m(t),\\
{0,}&{\text{otherwise.}}
\end{cases}
\end{equation*}
\end{verbatim}
\noindent Note that the ``\&'' is used to mark the tabular alignment. This is important to get proper column alignment. Do not use $\backslash${\tt{quad}} or other fixed spaces to try and align the columns. Also, note the use of the $\backslash${\tt{text}} macro for text elements such as ``if'' and ``otherwise''.
\subsection{Function Formatting in Equations}
In many cases there is an easy way to properly format most common functions. Use of the $\backslash$ in front of the function name will in most cases, provide the correct formatting. When this does not work, the following example provides a solution using the $\backslash${\tt{text}} macro.
\begin{equation*}
d_{R}^{KM} = \underset {d_{l}^{KM}} {\text{arg min}} \{ d_{1}^{KM},\ldots,d_{6}^{KM}\}.
\end{equation*}
\noindent is coded as follows:
\begin{verbatim}
\begin{equation*}
d_{R}^{KM} = \underset {d_{l}^{KM}}
{\text{arg min}} \{ d_{1}^{KM},
\ldots,d_{6}^{KM}\}.
\end{equation*}
\end{verbatim}
\subsection{ Text Acronyms inside equations}
\noindent This example shows where the acronym ``MSE" is coded using $\backslash${\tt{text\{\}}} to match how it appears in the text.
\begin{equation*}
\text{MSE} = \frac {1}{n}\sum _{i=1}^{n}(Y_{i} - \hat {Y_{i}})^{2}
\end{equation*}
\begin{verbatim}
\begin{equation*}
\text{MSE} = \frac {1}{n}\sum _{i=1}^{n}
(Y_{i} - \hat {Y_{i}})^{2}
\end{equation*}
\end{verbatim}
\subsection{Obsolete Coding}
\noindent Avoid the use of outdated environments, such as {\tt{eqnarray}} and \$\$ math delimiters, for display equations. The \$\$ display math delimiters are left over from PlainTeX and should not be used in \LaTeX, ever. Poor vertical spacing will result.
\subsection{Use Appropriate Delimiters for Display Equations}
\noindent Some improper mathematical coding advice has been given in various YouTube\textsuperscript{TM} videos on how to write scholarly articles, so please follow these good examples:\\
For {\bf{single-line unnumbered display equations}}, please use the following delimiters:
\begin{verbatim}\[ . . . \] or \end{verbatim}
\begin{verbatim}\begin{equation*} . . . \end{equation*}\end{verbatim}
Note that the * in the environment name turns off equation numbering.\\
For {\bf{multiline unnumbered display equations}} that have alignment requirements, please use the following delimiters:
\begin{verbatim}
\begin{align*} . . . \end{align*}
\end{verbatim}
For {\bf{single-line numbered display equations}}, please use the following delimiters:
\begin{verbatim}
\begin{equation} . . . \end{equation}
\end{verbatim}
For {\bf{multiline numbered display equations}}, please use the following delimiters:
\begin{verbatim}
\begin{align} . . . \end{align}
\end{verbatim}
\section{LaTeX Package Suggestions}
\noindent Immediately after your documenttype declaration at the top of your \LaTeX\ file is the place where you should declare any packages that are being used. The following packages were used in the production of this document.
\begin{verbatim}
\usepackage{amsmath,amsfonts}
\usepackage{algorithmic}
\usepackage{array}
\usepackage[caption=false,font=normalsize,
labelfont=sf,textfont=sf]{subfig}
\u00sepackage{textcomp}
\usepackage{stfloats}
\usepackage{url}
\usepackage{verbatim}
\usepackage{graphicx}
\usepackage{balance}
\end{verbatim}
\section{Additional Advice}
Please use ``soft'' (e.g., \verb|\eqref{Eq}|) or \verb|(\ref{Eq})|
cross references instead of ``hard'' references (e.g., \verb|(1)|).
That will make it possible to combine sections, add equations, or
change the order of figures or citations without having to go through
the file line by line.
Please note that the \verb|{subequations}| environment in {\LaTeX}
will increment the main equation counter even when there are no
equation numbers displayed. If you forget that, you might write an
article in which the equation numbers skip from (17) to (20), causing
the copy editors to wonder if you've discovered a new method of
counting.
{\BibTeX} does not work by magic. It doesn't get the bibliographic
data from thin air but from .bib files. If you use {\BibTeX} to produce a
bibliography you must send the .bib files.
{\LaTeX} can't read your mind. If you assign the same label to a
subsubsection and a table, you might find that Table I has been cross
referenced as Table IV-B3.
{\LaTeX} does not have precognitive abilities. If you put a
\verb|\label| command before the command that updates the counter it's
supposed to be using, the label will pick up the last counter to be
cross referenced instead. In particular, a \verb|\label| command
should not go before the caption of a figure or a table.
Please do not use \verb|\nonumber| or \verb|\notag| inside the
\verb|{array}| environment. It will not stop equation numbers inside
\verb|{array}| (there won't be any anyway) and it might stop a wanted
equation number in the surrounding equation.
\balance
\section{A Final Checklist}
\begin{enumerate}{}{}
\item{Make sure that your equations are numbered sequentially and there are no equation numbers missing or duplicated. Avoid hyphens and periods in your equation numbering. Stay with IEEE style, i.e., (1), (2), (3) or for sub-equations (1a), (1b). For equations in the appendix (A1), (A2), etc.}.
\item{Are your equations properly formatted? Text, functions, alignment points in cases and arrays, etc. }
\item{Make sure all graphics are included.}
\item{Make sure your references are included either in your main LaTeX file or a separate .bib file if calling the external file.}
\end{enumerate}
\begin{thebibliography}{1}
\bibitem{ams}
{\it{Mathematics into Type}}, American Mathematical Society. Online available:
\bibitem{oxford}
T.W. Chaundy, P.R. Barrett and C. Batey, {\it{The Printing of Mathematics}}, Oxford University Press. London, 1954.
\bibitem{lacomp}{\it{The \LaTeX Companion}}, by F. Mittelbach and M. Goossens
\bibitem{mmt}{\it{More Math into LaTeX}}, by G. Gr\"atzer
\bibitem{amstyle}{\it{AMS-StyleGuide-online.pdf,}} published by the American Mathematical Society
\bibitem{Sira3}
H. Sira-Ramirez. ``On the sliding mode control of nonlinear systems,'' \textit{Systems \& Control Letters}, vol. 19, pp. 303--312, 1992.
\bibitem{Levant}
A. Levant. ``Exact differentiation of signals with unbounded higher derivatives,'' in \textit{Proceedings of the 45th IEEE Conference on Decision and Control}, San Diego, California, USA, pp. 5585--5590, 2006.
\bibitem{Cedric}
M. Fliess, C. Join, and H. Sira-Ramirez. ``Non-linear estimation is easy,'' \textit{International Journal of Modelling, Identification and Control}, vol. 4, no. 1, pp. 12--27, 2008.
\bibitem{Ortega}
R. Ortega, A. Astolfi, G. Bastin, and H. Rodriguez. ``Stabilization of food-chain systems using a port-controlled Hamiltonian description,'' in \textit{Proceedings of the American Control Conference}, Chicago, Illinois, USA, pp. 2245--2249, 2000.
\end{thebibliography}
\begin{IEEEbiographynophoto}{Jane Doe}
Biography text here without a photo.
\end{IEEEbiographynophoto}
\begin{IEEEbiography}[{\includegraphics[width=1in,height=1.25in,clip,keepaspectratio]{fig1.png}}]{IEEE Publications Technology Team}
In this paragraph you can place your educational, professional background and research and other interests.\end{IEEEbiography}
\end{document}
\documentclass[lettersize,journal]{IEEEtran}
\usepackage{amsmath,amsfonts}
\usepackage{algorithmic}
\usepackage{algorithm}
\usepackage{array}
\usepackage[caption=false,font=normalsize,labelfont=sf,textfont=sf]{subfig}
\usepackage{textcomp}
\usepackage{stfloats}
\usepackage{url}
\usepackage{verbatim}
\usepackage{graphicx}
\usepackage{cite}
\hyphenation{op-tical net-works semi-conduc-tor IEEE-Xplore}
% updated with editorial comments 8/9/2021
\begin{document}
\title{A Sample Article Using IEEEtran.cls\\ for IEEE Journals and Transactions}
\author{IEEE Publication Technology,~\IEEEmembership{Staff,~IEEE,}
% <-this % stops a space
\thanks{This paper was produced by the IEEE Publication Technology Group. They are in Piscataway, NJ.}% <-this % stops a space
\thanks{Manuscript received April 19, 2021; revised August 16, 2021.}}
% The paper headers
\markboth{Journal of \LaTeX\ Class Files,~Vol.~14, No.~8, August~2021}%
{Shell \MakeLowercase{\textit{et al.}}: A Sample Article Using IEEEtran.cls for IEEE Journals}
\IEEEpubid{0000--0000/00\$00.00~\copyright~2021 IEEE}
% Remember, if you use this you must call \IEEEpubidadjcol in the second
% column for its text to clear the IEEEpubid mark.
\maketitle
\begin{abstract}
This document describes the most common article elements and how to use the IEEEtran class with \LaTeX \ to produce files that are suitable for submission to the IEEE. IEEEtran can produce conference, journal, and technical note (correspondence) papers with a suitable choice of class options.
\end{abstract}
\begin{IEEEkeywords}
Article submission, IEEE, IEEEtran, journal, \LaTeX, paper, template, typesetting.
\end{IEEEkeywords}
\section{Introduction}
\IEEEPARstart{T}{his} file is intended to serve as a ``sample article file''
for IEEE journal papers produced under \LaTeX\ using
IEEEtran.cls version 1.8b and later. The most common elements are covered in the simplified and updated instructions in ``New\_IEEEtran\_how-to.pdf''. For less common elements you can refer back to the original ``IEEEtran\_HOWTO.pdf''. It is assumed that the reader has a basic working knowledge of \LaTeX. Those who are new to \LaTeX \ are encouraged to read Tobias Oetiker's ``The Not So Short Introduction to \LaTeX ,'' available at: \url{http://tug.ctan.org/info/lshort/english/lshort.pdf} which provides an overview of working with \LaTeX.
\section{The Design, Intent, and \\ Limitations of the Templates}
The templates are intended to {\bf{approximate the final look and page length of the articles/papers}}. {\bf{They are NOT intended to be the final produced work that is displayed in print or on IEEEXplore\textsuperscript{\textregistered}}}. They will help to give the authors an approximation of the number of pages that will be in the final version. The structure of the \LaTeX\ files, as designed, enable easy conversion to XML for the composition systems used by the IEEE. The XML files are used to produce the final print/IEEEXplore pdf and then converted to HTML for IEEEXplore.
\section{Where to Get \LaTeX \ Help --- User Groups}
The following online groups are helpful to beginning and experienced \LaTeX\ users. A search through their archives can provide many answers to common questions.
\begin{list}{}{}
\item{\url{http://www.latex-community.org/}}
\item{\url{https://tex.stackexchange.com/} }
\end{list}
\section{Other Resources}
See \cite{ref1,ref2,ref3,ref4,ref5} for resources on formatting math into text and additional help in working with \LaTeX .
\section{Text}
For some of the remainer of this sample we will use dummy text to fill out paragraphs rather than use live text that may violate a copyright.
Itam, que ipiti sum dem velit la sum et dionet quatibus apitet voloritet audam, qui aliciant voloreicid quaspe volorem ut maximusandit faccum conemporerum aut ellatur, nobis arcimus.
Fugit odi ut pliquia incitium latum que cusapere perit molupta eaquaeria quod ut optatem poreiur? Quiaerr ovitior suntiant litio bearciur?
Onseque sequaes rectur autate minullore nusae nestiberum, sum voluptatio. Et ratem sequiam quaspername nos rem repudandae volum consequis nos eium aut as molupta tectum ulparumquam ut maximillesti consequas quas inctia cum volectinusa porrum unt eius cusaest exeritatur? Nias es enist fugit pa vollum reium essusam nist et pa aceaqui quo elibusdandis deligendus que nullaci lloreri bla que sa coreriam explacc atiumquos simolorpore, non prehendunt lam que occum\cite{ref6} si aut aut maximus eliaeruntia dia sequiamenime natem sendae ipidemp orehend uciisi omnienetus most verum, ommolendi omnimus, est, veni aut ipsa volendelist mo conserum volores estisciis recessi nveles ut poressitatur sitiis ex endi diti volum dolupta aut aut odi as eatquo cullabo remquis toreptum et des accus dolende pores sequas dolores tinust quas expel moditae ne sum quiatis nis endipie nihilis etum fugiae audi dia quiasit quibus.
\IEEEpubidadjcol
Ibus el et quatemo luptatque doluptaest et pe volent rem ipidusa eribus utem venimolorae dera qui acea quam etur aceruptat.
Gias anis doluptaspic tem et aliquis alique inctiuntiur?
Sedigent, si aligend elibuscid ut et ium volo tem eictore pellore ritatus ut ut ullatus in con con pere nos ab ium di tem aliqui od magnit repta volectur suntio. Nam isquiante doluptis essit, ut eos suntionsecto debitiur sum ea ipitiis adipit, oditiore, a dolorerempos aut harum ius, atquat.
Rum rem ditinti sciendunti volupiciendi sequiae nonsect oreniatur, volores sition ressimil inus solut ea volum harumqui to see\eqref{deqn_ex1a} mint aut quat eos explis ad quodi debis deliqui aspel earcius.
\begin{equation}
\label{deqn_ex1a}
x = \sum_{i=0}^{n} 2{i} Q.
\end{equation}
Alis nime volorempera perferi sitio denim repudae pre ducilit atatet volecte ssimillorae dolore, ut pel ipsa nonsequiam in re nus maiost et que dolor sunt eturita tibusanis eatent a aut et dio blaudit reptibu scipitem liquia consequodi od unto ipsae. Et enitia vel et experferum quiat harum sa net faccae dolut voloria nem. Bus ut labo. Ita eum repraer rovitia samendit aut et volupta tecupti busant omni quiae porro que nossimodic temquis anto blacita conse nis am, que ereperum eumquam quaescil imenisci quae magnimos recus ilibeaque cum etum iliate prae parumquatemo blaceaquiam quundia dit apienditem rerit re eici quaes eos sinvers pelecabo. Namendignis as exerupit aut magnim ium illabor roratecte plic tem res apiscipsam et vernat untur a deliquaest que non cus eat ea dolupiducim fugiam volum hil ius dolo eaquis sitis aut landesto quo corerest et auditaquas ditae voloribus, qui optaspis exero cusa am, ut plibus.
\section{Some Common Elements}
\subsection{Sections and Subsections}
Enumeration of section headings is desirable, but not required. When numbered, please be consistent throughout the article, that is, all headings and all levels of section headings in the article should be enumerated. Primary headings are designated with Roman numerals, secondary with capital letters, tertiary with Arabic numbers; and quaternary with lowercase letters. Reference and Acknowledgment headings are unlike all other section headings in text. They are never enumerated. They are simply primary headings without labels, regardless of whether the other headings in the article are enumerated.
\subsection{Citations to the Bibliography}
The coding for the citations is made with the \LaTeX\ $\backslash${\tt{cite}} command.
This will display as: see \cite{ref1}.
For multiple citations code as follows: {\tt{$\backslash$cite\{ref1,ref2,ref3\}}}
which will produce \cite{ref1,ref2,ref3}. For reference ranges that are not consecutive code as {\tt{$\backslash$cite\{ref1,ref2,ref3,ref9\}}} which will produce \cite{ref1,ref2,ref3,ref9}
\subsection{Lists}
In this section, we will consider three types of lists: simple unnumbered, numbered, and bulleted. There have been many options added to IEEEtran to enhance the creation of lists. If your lists are more complex than those shown below, please refer to the original ``IEEEtran\_HOWTO.pdf'' for additional options.\\
\subsubsection*{\bf A plain unnumbered list}
\begin{list}{}{}
\item{bare\_jrnl.tex}
\item{bare\_conf.tex}
\item{bare\_jrnl\_compsoc.tex}
\item{bare\_conf\_compsoc.tex}
\item{bare\_jrnl\_comsoc.tex}
\end{list}
\subsubsection*{\bf A simple numbered list}
\begin{enumerate}
\item{bare\_jrnl.tex}
\item{bare\_conf.tex}
\item{bare\_jrnl\_compsoc.tex}
\item{bare\_conf\_compsoc.tex}
\item{bare\_jrnl\_comsoc.tex}
\end{enumerate}
\subsubsection*{\bf A simple bulleted list}
\begin{itemize}
\item{bare\_jrnl.tex}
\item{bare\_conf.tex}
\item{bare\_jrnl\_compsoc.tex}
\item{bare\_conf\_compsoc.tex}
\item{bare\_jrnl\_comsoc.tex}
\end{itemize}
\subsection{Figures}
Fig. 1 is an example of a floating figure using the graphicx package.
Note that $\backslash${\tt{label}} must occur AFTER (or within) $\backslash${\tt{caption}}.
For figures, $\backslash${\tt{caption}} should occur after the $\backslash${\tt{includegraphics}}.
\begin{figure}[!t]
\centering
\includegraphics[width=2.5in]{fig1}
\caption{Simulation results for the network.}
\label{fig_1}
\end{figure}
Fig. 2(a) and 2(b) is an example of a double column floating figure using two subfigures.
(The subfig.sty package must be loaded for this to work.)
The subfigure $\backslash${\tt{label}} commands are set within each subfloat command,
and the $\backslash${\tt{label}} for the overall figure must come after $\backslash${\tt{caption}}.
$\backslash${\tt{hfil}} is used as a separator to get equal spacing.
The combined width of all the parts of the figure should do not exceed the text width or a line break will occur.
%
\begin{figure*}[!t]
\centering
\subfloat[]{\includegraphics[width=2.5in]{fig1}%
\label{fig_first_case}}
\hfil
\subfloat[]{\includegraphics[width=2.5in]{fig1}%
\label{fig_second_case}}
\caption{Dae. Ad quatur autat ut porepel itemoles dolor autem fuga. Bus quia con nessunti as remo di quatus non perum que nimus. (a) Case I. (b) Case II.}
\label{fig_sim}
\end{figure*}
Note that often IEEE papers with multi-part figures do not place the labels within the image itself (using the optional argument to $\backslash${\tt{subfloat}}[]), but instead will
reference/describe all of them (a), (b), etc., within the main caption.
Be aware that for subfig.sty to generate the (a), (b), etc., subfigure
labels, the optional argument to $\backslash${\tt{subfloat}} must be present. If a
subcaption is not desired, leave its contents blank,
e.g.,$\backslash${\tt{subfloat}}[].
\section{Tables}
Note that, for IEEE-style tables, the
$\backslash${\tt{caption}} command should come BEFORE the table. Table captions use title case. Articles (a, an, the), coordinating conjunctions (and, but, for, or, nor), and most short prepositions are lowercase unless they are the first or last word. Table text will default to $\backslash${\tt{footnotesize}} as
the IEEE normally uses this smaller font for tables.
The $\backslash${\tt{label}} must come after $\backslash${\tt{caption}} as always.
\begin{table}[!t]
\caption{An Example of a Table\label{tab:table1}}
\centering
\begin{tabular}{|c||c|}
\hline
One & Two\\
\hline
Three & Four\\
\hline
\end{tabular}
\end{table}
\section{Algorithms}
Algorithms should be numbered and include a short title. They are set off from the text with rules above and below the title and after the last line.
\begin{algorithm}[H]
\caption{Weighted Tanimoto ELM.}\label{alg:alg1}
\begin{algorithmic}
\STATE
\STATE {\textsc{TRAIN}}$(\mathbf{X} \mathbf{T})$
\STATE \hspace{0.5cm}$ \textbf{select randomly } W \subset \mathbf{X} $
\STATE \hspace{0.5cm}$ N_\mathbf{t} \gets | \{ i : \mathbf{t}_i = \mathbf{t} \} | $ \textbf{ for } $ \mathbf{t}= -1,+1 $
\STATE \hspace{0.5cm}$ B_i \gets \sqrt{ \textsc{max}(N_{-1},N_{+1}) / N_{\mathbf{t}_i} } $ \textbf{ for } $ i = 1,...,N $
\STATE \hspace{0.5cm}$ \hat{\mathbf{H}} \gets B \cdot (\mathbf{X}^T\textbf{W})/( \mathbb{1}\mathbf{X} + \mathbb{1}\textbf{W} - \mathbf{X}^T\textbf{W} ) $
\STATE \hspace{0.5cm}$ \beta \gets \left ( I/C + \hat{\mathbf{H}}^T\hat{\mathbf{H}} \right )^{-1}(\hat{\mathbf{H}}^T B\cdot \mathbf{T}) $
\STATE \hspace{0.5cm}\textbf{return} $\textbf{W}, \beta $
\STATE
\STATE {\textsc{PREDICT}}$(\mathbf{X} )$
\STATE \hspace{0.5cm}$ \mathbf{H} \gets (\mathbf{X}^T\textbf{W} )/( \mathbb{1}\mathbf{X} + \mathbb{1}\textbf{W}- \mathbf{X}^T\textbf{W} ) $
\STATE \hspace{0.5cm}\textbf{return} $\textsc{sign}( \mathbf{H} \beta )$
\end{algorithmic}
\label{alg1}
\end{algorithm}
Que sunt eum lam eos si dic to estist, culluptium quid qui nestrum nobis reiumquiatur minimus minctem. Ro moluptat fuga. Itatquiam ut laborpo rersped exceres vollandi repudaerem. Ulparci sunt, qui doluptaquis sumquia ndestiu sapient iorepella sunti veribus. Ro moluptat fuga. Itatquiam ut laborpo rersped exceres vollandi repudaerem.
\section{Mathematical Typography \\ and Why It Matters}
Typographical conventions for mathematical formulas have been developed to {\bf provide uniformity and clarity of presentation across mathematical texts}. This enables the readers of those texts to both understand the author's ideas and to grasp new concepts quickly. While software such as \LaTeX \ and MathType\textsuperscript{\textregistered} can produce aesthetically pleasing math when used properly, it is also very easy to misuse the software, potentially resulting in incorrect math display.
IEEE aims to provide authors with the proper guidance on mathematical typesetting style and assist them in writing the best possible article. As such, IEEE has assembled a set of examples of good and bad mathematical typesetting \cite{ref1,ref2,ref3,ref4,ref5}.
Further examples can be found at \url{http://journals.ieeeauthorcenter.ieee.org/wp-content/uploads/sites/7/IEEE-Math-Typesetting-Guide-for-LaTeX-Users.pdf}
\subsection{Display Equations}
The simple display equation example shown below uses the ``equation'' environment. To number the equations, use the $\backslash${\tt{label}} macro to create an identifier for the equation. LaTeX will automatically number the equation for you.
\begin{equation}
\label{deqn_ex1}
x = \sum_{i=0}^{n} 2{i} Q.
\end{equation}
\noindent is coded as follows:
\begin{verbatim}
\begin{equation}
\label{deqn_ex1}
x = \sum_{i=0}^{n} 2{i} Q.
\end{equation}
\end{verbatim}
To reference this equation in the text use the $\backslash${\tt{ref}} macro.
Please see (\ref{deqn_ex1})\\
\noindent is coded as follows:
\begin{verbatim}
Please see (\ref{deqn_ex1})\end{verbatim}
\subsection{Equation Numbering}
{\bf{Consecutive Numbering:}} Equations within an article are numbered consecutively from the beginning of the
article to the end, i.e., (1), (2), (3), (4), (5), etc. Do not use roman numerals or section numbers for equation numbering.
\noindent {\bf{Appendix Equations:}} The continuation of consecutively numbered equations is best in the Appendix, but numbering
as (A1), (A2), etc., is permissible.\\
\noindent {\bf{Hyphens and Periods}}: Hyphens and periods should not be used in equation numbers, i.e., use (1a) rather than
(1-a) and (2a) rather than (2.a) for subequations. This should be consistent throughout the article.
\subsection{Multi-Line Equations and Alignment}
Here we show several examples of multi-line equations and proper alignments.
\noindent {\bf{A single equation that must break over multiple lines due to length with no specific alignment.}}
\begin{multline}
\text{The first line of this example}\\
\text{The second line of this example}\\
\text{The third line of this example}
\end{multline}
\noindent is coded as:
\begin{verbatim}
\begin{multline}
\text{The first line of this example}\\
\text{The second line of this example}\\
\text{The third line of this example}
\end{multline}
\end{verbatim}
\noindent {\bf{A single equation with multiple lines aligned at the = signs}}
\begin{align}
a &= c+d \\
b &= e+f
\end{align}
\noindent is coded as:
\begin{verbatim}
\begin{align}
a &= c+d \\
b &= e+f
\end{align}
\end{verbatim}
The {\tt{align}} environment can align on multiple points as shown in the following example:
\begin{align}
x &= y & X & =Y & a &=bc\\
x' &= y' & X' &=Y' &a' &=bz
\end{align}
\noindent is coded as:
\begin{verbatim}
\begin{align}
x &= y & X & =Y & a &=bc\\
x' &= y' & X' &=Y' &a' &=bz
\end{align}
\end{verbatim}
\subsection{Subnumbering}
The amsmath package provides a {\tt{subequations}} environment to facilitate subnumbering. An example:
\begin{subequations}\label{eq:2}
\begin{align}
f&=g \label{eq:2A}\\
f' &=g' \label{eq:2B}\\
\mathcal{L}f &= \mathcal{L}g \label{eq:2c}
\end{align}
\end{subequations}
\noindent is coded as:
\begin{verbatim}
\begin{subequations}\label{eq:2}
\begin{align}
f&=g \label{eq:2A}\\
f' &=g' \label{eq:2B}\\
\mathcal{L}f &= \mathcal{L}g \label{eq:2c}
\end{align}
\end{subequations}
\end{verbatim}
\subsection{Matrices}
There are several useful matrix environments that can save you some keystrokes. See the example coding below and the output.
\noindent {\bf{A simple matrix:}}
\begin{equation}
\begin{matrix} 0 & 1 \\
1 & 0 \end{matrix}
\end{equation}
is coded as:
\begin{verbatim}
\begin{equation}
\begin{matrix} 0 & 1 \\
1 & 0 \end{matrix}
\end{equation}
\end{verbatim}
\noindent {\bf{A matrix with parenthesis}}
\begin{equation}
\begin{pmatrix} 0 & -i \\
i & 0 \end{pmatrix}
\end{equation}
is coded as:
\begin{verbatim}
\begin{equation}
\begin{pmatrix} 0 & -i \\
i & 0 \end{pmatrix}
\end{equation}
\end{verbatim}
\noindent {\bf{A matrix with square brackets}}
\begin{equation}
\begin{bmatrix} 0 & -1 \\
1 & 0 \end{bmatrix}
\end{equation}
is coded as:
\begin{verbatim}
\begin{equation}
\begin{bmatrix} 0 & -1 \\
1 & 0 \end{bmatrix}
\end{equation}
\end{verbatim}
\noindent {\bf{A matrix with curly braces}}
\begin{equation}
\begin{Bmatrix} 1 & 0 \\
0 & -1 \end{Bmatrix}
\end{equation}
is coded as:
\begin{verbatim}
\begin{equation}
\begin{Bmatrix} 1 & 0 \\
0 & -1 \end{Bmatrix}
\end{equation}\end{verbatim}
\noindent {\bf{A matrix with single verticals}}
\begin{equation}
\begin{vmatrix} a & b \\
c & d \end{vmatrix}
\end{equation}
is coded as:
\begin{verbatim}
\begin{equation}
\begin{vmatrix} a & b \\
c & d \end{vmatrix}
\end{equation}\end{verbatim}
\noindent {\bf{A matrix with double verticals}}
\begin{equation}
\begin{Vmatrix} i & 0 \\
0 & -i \end{Vmatrix}
\end{equation}
is coded as:
\begin{verbatim}
\begin{equation}
\begin{Vmatrix} i & 0 \\
0 & -i \end{Vmatrix}
\end{equation}\end{verbatim}
\subsection{Arrays}
The {\tt{array}} environment allows you some options for matrix-like equations. You will have to manually key the fences, but there are other options for alignment of the columns and for setting horizontal and vertical rules. The argument to {\tt{array}} controls alignment and placement of vertical rules.
A simple array
\begin{equation}
\left(
\begin{array}{cccc}
a+b+c & uv & x-y & 27\\
a+b & u+v & z & 134
\end{array}\right)
\end{equation}
is coded as:
\begin{verbatim}
\begin{equation}
\left(
\begin{array}{cccc}
a+b+c & uv & x-y & 27\\
a+b & u+v & z & 134
\end{array} \right)
\end{equation}
\end{verbatim}
A slight variation on this to better align the numbers in the last column
\begin{equation}
\left(
\begin{array}{cccr}
a+b+c & uv & x-y & 27\\
a+b & u+v & z & 134
\end{array}\right)
\end{equation}
is coded as:
\begin{verbatim}
\begin{equation}
\left(
\begin{array}{cccr}
a+b+c & uv & x-y & 27\\
a+b & u+v & z & 134
\end{array} \right)
\end{equation}
\end{verbatim}
An array with vertical and horizontal rules
\begin{equation}
\left( \begin{array}{c|c|c|r}
a+b+c & uv & x-y & 27\\ \hline
a+b & u+v & z & 134
\end{array}\right)
\end{equation}
is coded as:
\begin{verbatim}
\begin{equation}
\left(
\begin{array}{c|c|c|r}
a+b+c & uv & x-y & 27\\
a+b & u+v & z & 134
\end{array} \right)
\end{equation}
\end{verbatim}
Note the argument now has the pipe "$\vert$" included to indicate the placement of the vertical rules.
\subsection{Cases Structures}
Many times cases can be miscoded using the wrong environment, i.e., {\tt{array}}. Using the {\tt{cases}} environment will save keystrokes (from not having to type the $\backslash${\tt{left}}$\backslash${\tt{lbrace}}) and automatically provide the correct column alignment.
\begin{equation*}
{z_m(t)} = \begin{cases}
1,&{\text{if}}\ {\beta }_m(t) \\
{0,}&{\text{otherwise.}}
\end{cases}
\end{equation*}
\noindent is coded as follows:
\begin{verbatim}
\begin{equation*}
{z_m(t)} =
\begin{cases}
1,&{\text{if}}\ {\beta }_m(t),\\
{0,}&{\text{otherwise.}}
\end{cases}
\end{equation*}
\end{verbatim}
\noindent Note that the ``\&'' is used to mark the tabular alignment. This is important to get proper column alignment. Do not use $\backslash${\tt{quad}} or other fixed spaces to try and align the columns. Also, note the use of the $\backslash${\tt{text}} macro for text elements such as ``if'' and ``otherwise.''
\subsection{Function Formatting in Equations}
Often, there is an easy way to properly format most common functions. Use of the $\backslash$ in front of the function name will in most cases, provide the correct formatting. When this does not work, the following example provides a solution using the $\backslash${\tt{text}} macro:
\begin{equation*}
d_{R}^{KM} = \underset {d_{l}^{KM}} {\text{arg min}} \{ d_{1}^{KM},\ldots,d_{6}^{KM}\}.
\end{equation*}
\noindent is coded as follows:
\begin{verbatim}
\begin{equation*}
d_{R}^{KM} = \underset {d_{l}^{KM}}
{\text{arg min}} \{ d_{1}^{KM},
\ldots,d_{6}^{KM}\}.
\end{equation*}
\end{verbatim}
\subsection{ Text Acronyms Inside Equations}
This example shows where the acronym ``MSE" is coded using $\backslash${\tt{text\{\}}} to match how it appears in the text.
\begin{equation*}
\text{MSE} = \frac {1}{n}\sum _{i=1}^{n}(Y_{i} - \hat {Y_{i}})^{2}
\end{equation*}
\begin{verbatim}
\begin{equation*}
\text{MSE} = \frac {1}{n}\sum _{i=1}^{n}
(Y_{i} - \hat {Y_{i}})^{2}
\end{equation*}
\end{verbatim}
\section{Conclusion}
The conclusion goes here.
\section*{Acknowledgments}
This should be a simple paragraph before the References to thank those individuals and institutions who have supported your work on this article.
{\appendix[Proof of the Zonklar Equations]
Use $\backslash${\tt{appendix}} if you have a single appendix:
Do not use $\backslash${\tt{section}} anymore after $\backslash${\tt{appendix}}, only $\backslash${\tt{section*}}.
If you have multiple appendixes use $\backslash${\tt{appendices}} then use $\backslash${\tt{section}} to start each appendix.
You must declare a $\backslash${\tt{section}} before using any $\backslash${\tt{subsection}} or using $\backslash${\tt{label}} ($\backslash${\tt{appendices}} by itself
starts a section numbered zero.)}
%{\appendices
%\section*{Proof of the First Zonklar Equation}
%Appendix one text goes here.
% You can choose not to have a title for an appendix if you want by leaving the argument blank
%\section*{Proof of the Second Zonklar Equation}
%Appendix two text goes here.}
\section{References Section}
You can use a bibliography generated by BibTeX as a .bbl file.
BibTeX documentation can be easily obtained at:
http://mirror.ctan.org/biblio/bibtex/contrib/doc/
The IEEEtran BibTeX style support page is:
http://www.michaelshell.org/tex/ieeetran/bibtex/
% argument is your BibTeX string definitions and bibliography database(s)
%\bibliography{IEEEabrv,../bib/paper}
%
\section{Simple References}
You can manually copy in the resultant .bbl file and set second argument of $\backslash${\tt{begin}} to the number of references
(used to reserve space for the reference number labels box).
\begin{thebibliography}{1}
\bibliographystyle{IEEEtran}
\bibitem{ref1}
{\it{Mathematics Into Type}}. American Mathematical Society. [Online]. Available: https://www.ams.org/arc/styleguide/mit-2.pdf
\bibitem{ref2}
T. W. Chaundy, P. R. Barrett and C. Batey, {\it{The Printing of Mathematics}}. London, U.K., Oxford Univ. Press, 1954.
\bibitem{ref3}
F. Mittelbach and M. Goossens, {\it{The \LaTeX Companion}}, 2nd ed. Boston, MA, USA: Pearson, 2004.
\bibitem{ref4}
G. Gr\"atzer, {\it{More Math Into LaTeX}}, New York, NY, USA: Springer, 2007.
\bibitem{ref5}M. Letourneau and J. W. Sharp, {\it{AMS-StyleGuide-online.pdf,}} American Mathematical Society, Providence, RI, USA, [Online]. Available: http://www.ams.org/arc/styleguide/index.html
\bibitem{ref6}
H. Sira-Ramirez, ``On the sliding mode control of nonlinear systems,'' \textit{Syst. Control Lett.}, vol. 19, pp. 303--312, 1992.
\bibitem{ref7}
A. Levant, ``Exact differentiation of signals with unbounded higher derivatives,'' in \textit{Proc. 45th IEEE Conf. Decis.
Control}, San Diego, CA, USA, 2006, pp. 5585--5590. DOI: 10.1109/CDC.2006.377165.
\bibitem{ref8}
M. Fliess, C. Join, and H. Sira-Ramirez, ``Non-linear estimation is easy,'' \textit{Int. J. Model., Ident. Control}, vol. 4, no. 1, pp. 12--27, 2008.
\bibitem{ref9}
R. Ortega, A. Astolfi, G. Bastin, and H. Rodriguez, ``Stabilization of food-chain systems using a port-controlled Hamiltonian description,'' in \textit{Proc. Amer. Control Conf.}, Chicago, IL, USA,
2000, pp. 2245--2249.
\end{thebibliography}
\newpage
\section{Biography Section}
If you have an EPS/PDF photo (graphicx package needed), extra braces are
needed around the contents of the optional argument to biography to prevent
the LaTeX parser from getting confused when it sees the complicated
$\backslash${\tt{includegraphics}} command within an optional argument. (You can create
your own custom macro containing the $\backslash${\tt{includegraphics}} command to make things
simpler here.)
\vspace{11pt}
\bf{If you include a photo:}\vspace{-33pt}
\begin{IEEEbiography}[{\includegraphics[width=1in,height=1.25in,clip,keepaspectratio]{fig1}}]{Michael Shell}
Use $\backslash${\tt{begin\{IEEEbiography\}}} and then for the 1st argument use $\backslash${\tt{includegraphics}} to declare and link the author photo.
Use the author name as the 3rd argument followed by the biography text.
\end{IEEEbiography}
\vspace{11pt}
\bf{If you will not include a photo:}\vspace{-33pt}
\begin{IEEEbiographynophoto}{John Doe}
Use $\backslash${\tt{begin\{IEEEbiographynophoto\}}} and the author name as the argument followed by the biography text.
\end{IEEEbiographynophoto}
\vfill
\end{document}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment