The IEEEtran BibTeX style is used to produce IEEE style bibliographies. It supports advanced entry types including URLs, patents, periodicals and standards. There are also IEEEtran.bst-based variants (e.g., IEEEtranS.bst, IEEEtranSA.bst, IEEEtranN, etc.) that provide for sorted bibliographies, alpha labels and/or compatibility with Patrick W. Daly's natbib package.
The most recent version of IEEEtran.bst is v1.14 which was released on August 26, 2015.
Version v1.14 has a number of changes over the previous release (v1.13):
@STRING{IEEE_J_AFFC = "{IEEE} Transactions on Affective Computing"}
in 2014 ASL became ASLP
@STRING{IEEE_J_ASLP = "{IEEE/ACM} Transactions on Audio, Speech, and Language Processing"}
@STRING{IEEE_J_JAS = "{IEEE/CAA} Journal of Automatica Sinica"}
@STRING{IEEE_J_AMD = "{IEEE} Transactions on Autonomous Mental Development"}
@STRING{IEEE_J_BD = "{IEEE} Transactions on Big Data"}
@STRING{IEEE_J_BHI = "{IEEE} Journal of Biomedical and Health Informatics"}
@STRING{IEEE_J_CC = "{IEEE} Transactions on Cloud Computing"}
@STRING{IEEE_J_CCN = "{IEEE} Transactions on Cognitive Communications and Networking"}
in 2015 AMD became CDS
@STRING{IEEE_J_CDS = "{IEEE} Transactions on Cognitive and Developmental Systems"}
in 2011 CAPT became CPMT
@STRING{IEEE_J_CPMT = "{IEEE} Transactions on Components, Packaging and Manufacturing Technology"}
@STRING{IEEE_J_CIAIG = "{IEEE} Transactions on Computational Intelligence and {AI} in Games"}
@STRING{IEEE_J_CSS = "{IEEE} Transactions on Computational Social Systems"}
@STRING{IEEE_J_CNS = "{IEEE} Transactions on Control of Network Systems"}
in 2013 SMCB became CYB
@STRING{IEEE_J_CYB = "{IEEE} Transactions on Cybernetics"}
@STRING{IEEE_J_EDS = "{IEEE} Journal of Electron Devices Society"}
@STRING{IEEE_J_ES = "{IEEE} Embedded Systems Letters"}
@STRING{IEEE_J_ETC = "{IEEE} Transactions on Emerging Topics in Computing"}
@STRING{IEEE_J_ETCAS = "{IEEE} Transactions on Emerging and Selected Topics in Circuits and Systems"}
@STRING{IEEE_J_ESTPE = "{IEEE} Transactions on Emerging and Selected Topics in Power Electronics"}
@STRING{IEEE_J_XCDC = "{IEEE} Journal on Exploratory Solid-State Computational Devices and Circuits"}
in 2013 SMCC became HMS
@STRING{IEEE_J_HMS = "{IEEE} Transactions on Human-Machine Systems"}
@STRING{IEEE_J_IV = "{IEEE} Transactions on Intelligent Vehicles"}
@STRING{IEEE_J_IOT = "{IEEE} Internet of Things Journal"}
@STRING{IEEE_J_LS = "{IEEE} Life Sciences Letters"}
@STRING{IEEE_J_MAGL = "{IEEE} Magnetics Letters"}
in 2014 MEMS became MEMSI
@STRING{IEEE_J_MEMSI = "{IEEE} Journal of Microelectromechanical Systems"}
@STRING{IEEE_J_MBSC = "{IEEE} Transactions on Molecular, Biological and Multi-Scale Communications"}
@STRING{IEEE_J_MSCS = "{IEEE} Transactions on Multi-Scale Computing Systems"}
@STRING{IEEE_J_MMCT = "{IEEE} Journal on Multiscale and Multiphysics Computational Techniques"}
@STRING{IEEE_J_ENANO = "{IEEE} Nanotechnology Express"}
@STRING{IEEE_J_NSE = "{IEEE} Transactions on Network Science and Engineering"}
in 2012 NN became NNLS
@STRING{IEEE_J_NNLS = "{IEEE} Transactions on Neural Networks and Learning Systems"}
@STRING{IEEE_J_OCN = "{IEEE} Journal of Optical Communications and Networking"}
@STRING{IEEE_J_PJ = "{IEEE} Photonics Journal"}
@STRING{IEEE_J_PHOT = "{IEEE} Journal of Photovoltaics"}
@STRING{IEEE_J_PETS = "{IEEE} Power and Energy Technology Systems Journal"}
@STRING{IEEE_J_RFIC = "{IEEE} {RFIC} Journal"}
@STRING{IEEE_J_RFID = "{IEEE} {RFID} Journal"}
@STRING{IEEE_J_RITA = "{IEEE} Revista Iberoamericana de Technolog{\'{i}}as del Aprendizaje"}
@STRING{IEEE_J_RAL = "{IEEE} Robotics and Automation Letters"}
@STRING{IEEE_J_SIPN = "{IEEE} Transactions on Signal and Information Processing over Networks"}
@STRING{IEEE_J_SG = "{IEEE} Transactions on Smart Grid"}
@STRING{IEEE_J_SUSC = "{IEEE} Sustainable Computing"}
@STRING{IEEE_J_STE = "{IEEE} Transactions on Sustainable Energy"}
in 2012 SMCA became SMCS
@STRING{IEEE_J_SMCS = "{IEEE} Transactions on Systems, Man, and Cybernetics: Systems"}
@STRING{IEEE_J_TEHM = "{IEEE} Journal of Translational Engineering in Health and Medicine"}
@STRING{IEEE_J_TTHZ = "{IEEE} Transactions on Terahertz Science and Technology"}
@STRING{IEEE_J_TTE = "{IEEE} Transactions on Transportation Electrification"}
@STRING{IEEE_J_WCOML = "{IEEE} Wireless Communications Letters"}
magazines and Online Publications
@STRING{IEEE_O_ACC = "{IEEE} Access"}
@STRING{IEEE_M_CHINAC = "China Communications Magazine"}
in 2012 DTC became DT
@STRING{IEEE_M_DT = "{IEEE} Design \&\ Test"}
@STRING{IEEE_M_ETF = "{IEEE} Electrification Magazine"}
@STRING{IEEE_M_EMC = "{IEEE} Electromagnetic Compatibility Magazine"}
@STRING{IEEE_M_GRS = "{IEEE} Geoscience and Remote Sensing Magazine"}
@STRING{IEEE_M_PEL = "{IEEE} Power Electronics Magazine"}
@STRING{IEEE_M_PULSE = "{IEEE} Pulse"}
@STRING{IEEE_M_SSC = "{IEEE} Solid-State Circuits Magazine"}
@STRING{IEEE_M_SMC = "{IEEE} Systems, Man, and Cybernetics Magazine"}
Thanks to Uwe Siart and Mona Mittra for helping with obtaining these definitions.
Enjoy!
There are two primary distribution sites for the IEEEtran BibTeX package:
These are technical reports:
@techreport{IEEEexample:techrepstdsub,
author = "S. Kandala",
title = "Changes to {A}nnex {D}",
institution = "{IEEE} 802.11 {TGe}",
number = "02/680r0",
month = oct,
year = "2002"
}
Note that some journals do not abbreviate the task group name.
(e.g., "TGe" versus "Task Group E")
Thanks to Guido Hiertz for contributing to this answer.
Yes, but you have to use my mciteplus package rather than mcite.sty. The IEEEtran.bst mciteplus variants are included in the mciteplus package files.
The % signs are a side effect of BibTeX's line breaking algorithm where BibTeX uses % to prevent line breaks from being seen as spaces. Unfortunately, if the line break occurs within a URL, it is all too easy for a \url{} command to mistake them as being part of the URL. Recent versions of url.sty (versions 1.6 and later) and hyperref.sty (versions after 6.70s) will properly ignore % characters when they occur just before the end of a line. Upgrading your url.sty and/or hyperref.sty packages will correct the problem.
The overwhelming consensus among TeX gurus is not to escape these special characters, but to enter them as-is in conjunction with an external URL package such as url.sty or hyperref.sty. Note that it is not safe to escape characters (e.g., \_) and use a URL handling package because the \url command of the url.sty and hyperref.sty packages will retain the (unwanted) backslash in the formatted URL.
You can change the BibTeX name format string during run time using an IEEEtran.bst control entry type in your .bib file:
@IEEEtranBSTCTL{myctlfullname,
CTLname_format_string = "{ff~}{vv~}{ll}{, jj}"
}
and then invoking it via \bstctlcite:
\begin{document}
\bstctlcite{myctlfullname}
.
.
The definition of \bstctlcite can be found in the comments of at the top of the IEEEtran.bst source code as well as here:
\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
The IEEEtrantools package also provides the \bstctlcite command.
Surprisingly, this is correct. The IEEE "dashes" repeated names in their bibliographies. As explained in the HOWTO, this feature can be disabled via the control entry type:
@IEEEtranBSTCTL{IEEEexample:BSTcontrol,
CTLdash_repeated_names = "no"
}
The IEEE changed their abbreviations in early 2005. For example, month abbreviations are all now strictly three letters (e.g., "Sep." instead of the previous "Sept."). Furthermore, there has been changes in the journal name abbreviations (e.g., "Netw." instead of "Networking"). The IEEEtran.bst and IEEEabrv.bib files have been updated to reflect the new conventions.
At present, IEEEtran.bst does not output \newblock commands which are needed for an "open bibliography" format. Adding this functionality is not difficult. However, it does pose the question as to what is meant by an "IEEE style open bibliography", including how to properly place the IEEEtran.bst additional fields (e.g., URLs, etc.) under such a format. Needless to say, an open bibliography could not be used for IEEE related work.
Here are some other IEEEtran-based variants that I have created. Because these have not been as fully tested as the bibstyles in the main IEEEtran branch, or because I do not have full specs to my satisfaction for the journals in question, unless otherwise noted, consider them to be beta test releases and watch out for bugs. Note that the .bst files here do use Unix end-of-line conventions (as I use Linux), so you may have to convert them with a text editor, especially when using them on Mac systems.
Note that just because a bibstyle supports a given entry type does not mean that the corresponding journal does. i.e., just because the bibstyle allows you to do something, does not mean that it is correct. Be sure to verify that the created bibliography meets the guidelines of the journal you plan to submit to. In some cases, an entry may have to be changed from that used in IEEE journals to be correct for the journal you are submitting to. For example, many journals do not support an online/electronic entry type. Of course, unless otherwise noted, the bibstyles here are not for use for IEEE-related work.
For journals of the American Scientific Publishers, try my IEEEtran_ASP.bst (version 1.14, released on 2015/08/26).
Be aware of the following issues and caveats:
The REVTeX and mciteplus compatible versions of IEEEtran.bst are distributed with my mciteplus package.
You can obtain support for the IEEEtran BibTeX style from:
In 1985, Howard Trickey wrote the first ieeetr.bst based on plain.bst. In 1988, Oren Patashnik updated ieeetr.bst for use with BibTeX version 0.99a. In 1993, Silvano Balemi along with Richard H. Roy developed a new IEEE.bst (sometimes referred to as IEEEbib.bst) based on unsort.bst.
In 2002, while a Ph.D. student at the Georgia Institute of Technology, I developed IEEEtran.bst. IEEEtran.bst is a complete rewrite and offers advanced features including entry types for internet pages, patents, periodicals and standards.