-%%\r
-%% This is file `model2-names.bst' (Version 2.0),\r
-%% \r
-%% Copyright 2009-2013 Elsevier Ltd\r
-%% \r
-%% This file is part of the 'Elsarticle Bundle'.\r
-%% ---------------------------------------------\r
-%% \r
-%% It may be distributed under the conditions of the LaTeX Project Public\r
-%% License, either version 1.2 of this license or (at your option) any\r
-%% later version. The latest version of this license is in\r
-%% http://www.latex-project.org/lppl.txt\r
-%% and version 1.2 or later is part of all distributions of LaTeX\r
-%% version 1999/12/01 or later.\r
-%%\r
-%% $Id: model2-names.bst 217 2013-03-13 11:50:49Z rishi $\r
-%%\r
-%% $URL: http://lenova.river-valley.com/svn/elsbst/trunk/New-Model-2/model2-names.bst $\r
-%% \r
-\r
-ENTRY\r
- { address\r
- archive\r
- author\r
- booktitle\r
- chapter\r
- collaboration\r
- edition\r
- editor\r
- howpublished\r
- institution\r
- journal\r
- key\r
- month\r
- note\r
- number\r
- organization\r
- pages\r
- publisher\r
- school\r
- series\r
- title\r
- type\r
- volume\r
- year\r
- url\r
- doi\r
- eprint\r
- pubmed\r
- }\r
- {}\r
- { label extra.label sort.label short.list }\r
-\r
-INTEGERS { output.state before.all mid.sentence after.sentence after.block }\r
-\r
-STRINGS { urlprefix doiprefix eprintprefix pubmedprefix }\r
-\r
-FUNCTION {init.web.variables}\r
-{\r
- "\URLprefix " 'urlprefix :=\r
- "\DOIprefix" 'doiprefix :=\r
- "\ArXivprefix " 'eprintprefix :=\r
- "\Pubmedprefix " 'pubmedprefix :=\r
-}\r
-\r
-FUNCTION {init.state.consts}\r
-{ #0 'before.all :=\r
- #1 'mid.sentence :=\r
- #2 'after.sentence :=\r
- #3 'after.block :=\r
-}\r
-STRINGS { s t}\r
-FUNCTION {output.comma}\r
-{ ", " * write$}\r
- \r
-FUNCTION {output.nonnull}\r
-{ 's :=\r
- output.state mid.sentence =\r
- { ". " * write$ }\r
- { output.state after.block =\r
- { add.period$ write$\r
- newline$\r
- "\newblock " write$\r
- }\r
- { output.state before.all =\r
- 'write$\r
- { ", " * write$ }\r
- if$\r
- }\r
- if$\r
- mid.sentence 'output.state :=\r
- }\r
- if$\r
- s\r
-}\r
-FUNCTION {output.commanull}\r
-{ 's :=\r
- output.state mid.sentence =\r
- { ", " * write$ }\r
- { output.state after.block =\r
- { ", " * write$\r
- newline$\r
- "\newblock " write$\r
- }\r
- { output.state before.all =\r
- 'write$\r
- { add.period$ " " * write$ }\r
- if$\r
- }\r
- if$\r
- mid.sentence 'output.state :=\r
- }\r
- if$\r
- s\r
-}\r
-FUNCTION {output}\r
-{ duplicate$ empty$\r
- 'pop$\r
- 'output.nonnull\r
- if$\r
-}\r
-FUNCTION {output.check}\r
-{ 't :=\r
- duplicate$ empty$\r
- { pop$ "empty " t * " in " * cite$ * warning$ }\r
- 'output.nonnull\r
- if$\r
-}\r
-FUNCTION {output.book.check}\r
-{ 't :=\r
- duplicate$ empty$\r
- { pop$ "empty " t * " in " * cite$ * warning$ }\r
- 'output.nonnull\r
- if$\r
-}\r
-FUNCTION {fin.entry}\r
-{ add.period$\r
- write$\r
- newline$\r
-}\r
-\r
-FUNCTION {new.block}\r
-{ output.state before.all =\r
- 'skip$\r
- { after.block 'output.state := }\r
- if$\r
-}\r
-FUNCTION {new.sentence}\r
-{ output.state after.block =\r
- 'skip$\r
- { output.state before.all =\r
- 'skip$\r
- { after.sentence 'output.state := }\r
- if$\r
- }\r
- if$\r
-}\r
-FUNCTION {add.blank}\r
-{ " " * before.all 'output.state :=\r
-}\r
-\r
-FUNCTION {date.block}\r
-{\r
- new.block\r
-}\r
-\r
-FUNCTION {not}\r
-{ { #0 }\r
- { #1 }\r
- if$\r
-}\r
-FUNCTION {and}\r
-{ 'skip$\r
- { pop$ #0 }\r
- if$\r
-}\r
-FUNCTION {or}\r
-{ { pop$ #1 }\r
- 'skip$\r
- if$\r
-}\r
-FUNCTION {new.block.checkb}\r
-{ empty$\r
- swap$ empty$\r
- and\r
- 'skip$\r
- 'new.block\r
- if$\r
-}\r
-FUNCTION {field.or.null}\r
-{ duplicate$ empty$\r
- { pop$ "" }\r
- 'skip$\r
- if$\r
-}\r
-FUNCTION {emphasize}\r
-{ duplicate$ empty$\r
- { pop$ "" }\r
- { "\textit{" swap$ * "}" * }\r
- if$\r
-}\r
-FUNCTION {tie.or.space.prefix}\r
-{ duplicate$ text.length$ #3 <\r
- { "~" }\r
- { " " }\r
- if$\r
- swap$\r
-}\r
-\r
-FUNCTION {capitalize}\r
-{ "u" change.case$ "t" change.case$ }\r
-\r
-FUNCTION {space.word}\r
-{ " " swap$ * " " * }\r
- % Here are the language-specific definitions for explicit words.\r
- % Each function has a name bbl.xxx where xxx is the English word.\r
- % The language selected here is ENGLISH\r
-FUNCTION {bbl.and}\r
-{ "and"}\r
-\r
-FUNCTION {bbl.etal}\r
-{ "et~al." }\r
-\r
-FUNCTION {bbl.editors}\r
-{ "Eds." }\r
-\r
-FUNCTION {bbl.editor}\r
-{ "Ed." }\r
-\r
-FUNCTION {bbl.edby}\r
-{ "edited by" }\r
-\r
-FUNCTION {bbl.edition}\r
-{ "ed." }\r
-\r
-FUNCTION {bbl.volume}\r
-{ "volume" }\r
-\r
-FUNCTION {bbl.of}\r
-{ "of" }\r
-\r
-FUNCTION {bbl.number}\r
-{ "number" }\r
-\r
-FUNCTION {bbl.nr}\r
-{ "no." }\r
-\r
-FUNCTION {bbl.in}\r
-{ "in" }\r
-\r
-FUNCTION {bbl.pages}\r
-{ "pp." }\r
-\r
-FUNCTION {bbl.page}\r
-{ "p." }\r
-\r
-FUNCTION {bbl.chapter}\r
-{ "chapter" }\r
-\r
-FUNCTION {bbl.techrep}\r
-{ "Technical Report" }\r
-\r
-FUNCTION {bbl.mthesis}\r
-{ "Master's thesis" }\r
-\r
-FUNCTION {bbl.phdthesis}\r
-{ "Ph.D. thesis" }\r
-\r
-MACRO {jan} {"January"}\r
-\r
-MACRO {feb} {"February"}\r
-\r
-MACRO {mar} {"March"}\r
-\r
-MACRO {apr} {"April"}\r
-\r
-MACRO {may} {"May"}\r
-\r
-MACRO {jun} {"June"}\r
-\r
-MACRO {jul} {"July"}\r
-\r
-MACRO {aug} {"August"}\r
-\r
-MACRO {sep} {"September"}\r
-\r
-MACRO {oct} {"October"}\r
-\r
-MACRO {nov} {"November"}\r
-\r
-MACRO {dec} {"December"}\r
-\r
-MACRO {acmcs} {"ACM Comput. Surv."}\r
-\r
-MACRO {acta} {"Acta Inf."}\r
-\r
-MACRO {cacm} {"Commun. ACM"}\r
-\r
-MACRO {ibmjrd} {"IBM J. Res. Dev."}\r
-\r
-MACRO {ibmsj} {"IBM Syst.~J."}\r
-\r
-MACRO {ieeese} {"IEEE Trans. Software Eng."}\r
-\r
-MACRO {ieeetc} {"IEEE Trans. Comput."}\r
-\r
-MACRO {ieeetcad}\r
- {"IEEE Trans. Comput. Aid. Des."}\r
-\r
-MACRO {ipl} {"Inf. Process. Lett."}\r
-\r
-MACRO {jacm} {"J.~ACM"}\r
-\r
-MACRO {jcss} {"J.~Comput. Syst. Sci."}\r
-\r
-MACRO {scp} {"Sci. Comput. Program."}\r
-\r
-MACRO {sicomp} {"SIAM J. Comput."}\r
-\r
-MACRO {tocs} {"ACM Trans. Comput. Syst."}\r
-\r
-MACRO {tods} {"ACM Trans. Database Syst."}\r
-\r
-MACRO {tog} {"ACM Trans. Graphic."}\r
-\r
-MACRO {toms} {"ACM Trans. Math. Software"}\r
-\r
-MACRO {toois} {"ACM Trans. Office Inf. Syst."}\r
-\r
-MACRO {toplas} {"ACM Trans. Progr. Lang. Syst."}\r
-\r
-MACRO {tcs} {"Theor. Comput. Sci."}\r
-\r
-%% Begin - Added on March 13, 2013\r
-\r
-MACRO {aj} {"Astron. J."} \r
-MACRO {actaa} {"Acta Astron."}\r
-MACRO {araa} {"Annu. Rev. Astron. Astrophys."}\r
-MACRO {apj} {"Astrophys. J."}\r
-MACRO {apjl} {"Astrophys. J. Lett."}\r
-MACRO {apjs} {"Astrophys. J. Suppl. S"}\r
-MACRO {ao} {"Appl. Optics"}\r
-MACRO {apss} {"Astrophys. Space Sci."}\r
-MACRO {aap} {"Astronom. Astrophys."}\r
-MACRO {aapr} {"Astron. Astrophys Rev"}\r
-MACRO {aaps} {"Astron. Astrophys. Sup."}\r
-MACRO {azh} {"Astron. Zh+"}\r
-MACRO {caa} {"Chinese Astron. Astr."}\r
-MACRO {icarus} {"Icarus"}\r
-MACRO {jcap} {"J. Cosmol. Astropart. Phys."}\r
-MACRO {jrasc} {"J. Roy. Astron. Soc. Can."}\r
-MACRO {memras} {"Memoirs of the RAS"}\r
-MACRO {mnras} {"Mon. Not. R. Astron. Soc."}\r
-MACRO {na} {"New Astron."}\r
-MACRO {nar} {"New Astron. Rev."}\r
-MACRO {pra} {"Phys. Rev. A"}\r
-MACRO {prb} {"Phys. Rev. B"}\r
-MACRO {prc} {"Phys. Rev. C"}\r
-MACRO {prd} {"Phys. Rev. D"}\r
-MACRO {pre} {"Phys. Rev. E"}\r
-MACRO {prl} {"Phys. Rev. Lett"}\r
-MACRO {pasa} {"Publ. Astron. Soc. Aust."}\r
-MACRO {pasp} {"Publ. Astron. Soc. Pac."}\r
-MACRO {pasj} {"Publ. Astron. Soc. Jpn."}\r
-MACRO {rmxaa} {"Rev. Mex. Astron. Astr."}\r
-MACRO {rjras} {"Q. J. Roy. Astron. Soc."}\r
-MACRO {skytel} {"Sky Telescope"}\r
-MACRO {solphys} {"Sol. Phys."}\r
-MACRO {sovast} {"Sov. Astron."}\r
-MACRO {ssr} {"Space Sci. Rev."}\r
-MACRO {zap} {"Zeitschrift fuer Astrophysik"}\r
-MACRO {nat} {"Nature"}\r
-MACRO {iaucirc} {"IAU Cirulars"}\r
-MACRO {gca} {"Geochim. Cosmochim. Ac."}\r
-MACRO {grl} {"Geophys. Res. Lett."}\r
-MACRO {jcp} {"J. Chem. Phys."}\r
-MACRO {jgr} {"J. Geophys. Res."}\r
-MACRO {jqsrt} {"J. Quant. Spectrosc. RA"}\r
-MACRO {nphysa} {"Nucl. Phys. A"}\r
-MACRO {physrep} {"Phys. Rep."}\r
-MACRO {physscr} {"Phys. Scrip."}\r
-MACRO {planss} {"Planet. Space Sci."}\r
-MACRO {baas} {"Bull. Aust. Acoust. Soc"}\r
-MACRO {aplett} {"Astrophys. Lett."}\r
-MACRO {procspie} {"Proc. SPIE"}\r
-MACRO {cjaa} {"Chinese J. Astron. Ast."}\r
-MACRO {fcp} {"Fundam. Cosm. Phys."}\r
-MACRO {memsai} {"Mem. Soc. Astron. Ital."}\r
-MACRO {bain} {"Bull. Astron. Inst. Neth., Suppl. Ser."}\r
-\r
-%% End - Added on March 13, 2013\r
-\r
-\r
-FUNCTION {bibinfo.check}\r
-{ swap$\r
- duplicate$ missing$\r
- {\r
- pop$ pop$\r
- ""\r
- }\r
- { duplicate$ empty$\r
- {\r
- swap$ pop$\r
- }\r
- { swap$\r
- "\bibinfo{" swap$ * "}{" * swap$ * "}" *\r
- }\r
- if$\r
- }\r
- if$\r
-}\r
-FUNCTION {bibinfo.warn}\r
-{ swap$\r
- duplicate$ missing$\r
- {\r
- swap$ "missing " swap$ * " in " * cite$ * warning$ pop$\r
- ""\r
- }\r
- { duplicate$ empty$\r
- {\r
- swap$ "empty " swap$ * " in " * cite$ * warning$\r
- }\r
- { swap$\r
- pop$\r
- }\r
- if$\r
- }\r
- if$\r
-}\r
-\r
-STRINGS { bibinfo}\r
-\r
-INTEGERS { nameptr namesleft numnames }\r
-\r
-FUNCTION {format.names}\r
-{ 'bibinfo :=\r
- duplicate$ empty$ 'skip$ {\r
- 's :=\r
- "" 't :=\r
- #1 'nameptr :=\r
- s num.names$ 'numnames :=\r
- numnames 'namesleft :=\r
- { namesleft #0 > }\r
- { s nameptr\r
- "{vv~}{ll}{, jj}{, f{.}.}"\r
- format.name$\r
- bibinfo bibinfo.check\r
- 't :=\r
- nameptr #1 >\r
- {\r
- namesleft #1 >\r
- { ", " * t * }\r
- {\r
- "," *\r
- s nameptr "{ll}" format.name$ duplicate$ "others" =\r
- { 't := }\r
- { pop$ }\r
- if$\r
- t "others" =\r
- {\r
- " " * bbl.etal *\r
- }\r
- { " " * t * }\r
- if$\r
- }\r
- if$\r
- }\r
- 't\r
- if$\r
- nameptr #1 + 'nameptr :=\r
- namesleft #1 - 'namesleft :=\r
- }\r
- while$\r
- } if$\r
-}\r
-FUNCTION {format.names.ed}\r
-{\r
- format.names\r
-}\r
-FUNCTION {format.key}\r
-{ empty$\r
- { key field.or.null }\r
- { "" }\r
- if$\r
-}\r
-\r
-FUNCTION {format.authors}\r
-{ author "author" format.names\r
- duplicate$ empty$ 'skip$\r
- { collaboration "collaboration" bibinfo.check\r
- duplicate$ empty$ 'skip$\r
- { " (" swap$ * ")" * }\r
- if$\r
- *\r
- }\r
- if$\r
-}\r
-\r
-FUNCTION {get.bbl.editor}\r
-{ editor num.names$ #1 > 'bbl.editors 'bbl.editor if$ }\r
-\r
-FUNCTION {format.editors}\r
-{ editor "editor" format.names duplicate$ empty$ 'skip$\r
- {\r
- " " *\r
- get.bbl.editor\r
- capitalize\r
- "(" swap$ * ")" *\r
- *\r
- }\r
- if$\r
-}\r
-FUNCTION {format.note}\r
-{\r
- note empty$\r
- { "" }\r
- { note #1 #1 substring$\r
- duplicate$ "{" =\r
- 'skip$\r
- { output.state mid.sentence =\r
- { "l" }\r
- { "u" }\r
- if$\r
- change.case$\r
- }\r
- if$\r
- note #2 global.max$ substring$ * "note" bibinfo.check\r
- }\r
- if$\r
-}\r
-\r
-FUNCTION {format.title}\r
-{ title\r
- duplicate$ empty$ 'skip$\r
- { "t" change.case$ }\r
- if$\r
- "title" bibinfo.check\r
-}\r
-FUNCTION {format.full.names}\r
-{'s :=\r
- "" 't :=\r
- #1 'nameptr :=\r
- s num.names$ 'numnames :=\r
- numnames 'namesleft :=\r
- { namesleft #0 > }\r
- { s nameptr\r
- "{vv~}{ll}" format.name$\r
- 't :=\r
- nameptr #1 >\r
- {\r
- namesleft #1 >\r
- { ", " * t * }\r
- {\r
- s nameptr "{ll}" format.name$ duplicate$ "others" =\r
- { 't := }\r
- { pop$ }\r
- if$\r
- t "others" =\r
- {\r
- " " * bbl.etal *\r
- }\r
- {\r
- bbl.and\r
- space.word * t *\r
- }\r
- if$\r
- }\r
- if$\r
- }\r
- 't\r
- if$\r
- nameptr #1 + 'nameptr :=\r
- namesleft #1 - 'namesleft :=\r
- }\r
- while$\r
-}\r
-\r
-FUNCTION {author.editor.key.full}\r
-{ author empty$\r
- { editor empty$\r
- { key empty$\r
- { cite$ #1 #3 substring$ }\r
- 'key\r
- if$\r
- }\r
- { editor format.full.names }\r
- if$\r
- }\r
- { author format.full.names }\r
- if$\r
-}\r
-\r
-FUNCTION {author.key.full}\r
-{ author empty$\r
- { key empty$\r
- { cite$ #1 #3 substring$ }\r
- 'key\r
- if$\r
- }\r
- { author format.full.names }\r
- if$\r
-}\r
-\r
-FUNCTION {editor.key.full}\r
-{ editor empty$\r
- { key empty$\r
- { cite$ #1 #3 substring$ }\r
- 'key\r
- if$\r
- }\r
- { editor format.full.names }\r
- if$\r
-}\r
-\r
-FUNCTION {make.full.names}\r
-{ type$ "book" =\r
- type$ "inbook" =\r
- or\r
- 'author.editor.key.full\r
- { type$ "proceedings" =\r
- 'editor.key.full\r
- 'author.key.full\r
- if$\r
- }\r
- if$\r
-}\r
-\r
-FUNCTION {output.bibitem}\r
-{ newline$\r
- "\bibitem[{" write$\r
- label write$\r
- ")" make.full.names duplicate$ short.list =\r
- { pop$ }\r
- { * }\r
- if$\r
- "}]{" * write$\r
- cite$ write$\r
- "}" write$\r
- newline$\r
- ""\r
- before.all 'output.state :=\r
-}\r
-\r
-FUNCTION {n.dashify}\r
-{\r
- 't :=\r
- ""\r
- { t empty$ not }\r
- { t #1 #1 substring$ "-" =\r
- { t #1 #2 substring$ "--" = not\r
- { "--" *\r
- t #2 global.max$ substring$ 't :=\r
- }\r
- { { t #1 #1 substring$ "-" = }\r
- { "-" *\r
- t #2 global.max$ substring$ 't :=\r
- }\r
- while$\r
- }\r
- if$\r
- }\r
- { t #1 #1 substring$ *\r
- t #2 global.max$ substring$ 't :=\r
- }\r
- if$\r
- }\r
- while$\r
-}\r
-\r
-FUNCTION {word.in}\r
-{ bbl.in %capitalize\r
- ":" *\r
- " " * }\r
-\r
-FUNCTION {format.date}\r
-{ year "year" bibinfo.check duplicate$ empty$\r
- {\r
- }\r
- 'skip$\r
- if$\r
- extra.label *\r
- before.all 'output.state :=\r
- ", " swap$ *\r
-}\r
-FUNCTION {format.btitle}\r
-{ title "title" bibinfo.check\r
- duplicate$ empty$ 'skip$\r
- {\r
- }\r
- if$\r
-}\r
-FUNCTION {either.or.check}\r
-{ empty$\r
- 'pop$\r
- { "can't use both " swap$ * " fields in " * cite$ * warning$ }\r
- if$\r
-}\r
-FUNCTION {format.bvolume}\r
-{ volume empty$\r
- { "" }\r
- { bbl.volume volume tie.or.space.prefix\r
- "volume" bibinfo.check * *\r
- series "series" bibinfo.check\r
- duplicate$ empty$ 'pop$\r
- { swap$ bbl.of space.word * swap$\r
- emphasize * }\r
- if$\r
- "volume and number" number either.or.check\r
- }\r
- if$\r
-}\r
-FUNCTION {format.number.series}\r
-{ volume empty$\r
- { number empty$\r
- { series field.or.null }\r
- { series empty$\r
- { number "number" bibinfo.check }\r
- { output.state mid.sentence =\r
- { bbl.number }\r
- { bbl.number capitalize }\r
- if$\r
- number tie.or.space.prefix "number" bibinfo.check * *\r
- bbl.in space.word *\r
- series "series" bibinfo.check *\r
- }\r
- if$\r
- }\r
- if$\r
- }\r
- { "" }\r
- if$\r
-}\r
-\r
-FUNCTION {format.edition}\r
-{ edition duplicate$ empty$ 'skip$\r
- {\r
- output.state mid.sentence =\r
- { "l" }\r
- { "t" }\r
- if$ change.case$\r
- "edition" bibinfo.check\r
- " " * bbl.edition *\r
- }\r
- if$\r
-}\r
-INTEGERS { multiresult }\r
-FUNCTION {multi.page.check}\r
-{ 't :=\r
- #0 'multiresult :=\r
- { multiresult not\r
- t empty$ not\r
- and\r
- }\r
- { t #1 #1 substring$\r
- duplicate$ "-" =\r
- swap$ duplicate$ "," =\r
- swap$ "+" =\r
- or or\r
- { #1 'multiresult := }\r
- { t #2 global.max$ substring$ 't := }\r
- if$\r
- }\r
- while$\r
- multiresult\r
-}\r
-%FUNCTION {format.pages}\r
-%{ pages duplicate$ empty$ 'skip$\r
-% { duplicate$ multi.page.check\r
-% {\r
-% n.dashify\r
-% }\r
-% {\r
-% }\r
-% if$\r
-% "pages" bibinfo.check\r
-% }\r
-% if$\r
-%}\r
-\r
-FUNCTION {format.pages}\r
-{ pages duplicate$ empty$ 'skip$\r
- { duplicate$ multi.page.check\r
- {\r
- bbl.pages swap$\r
- n.dashify\r
- }\r
- {\r
- bbl.page swap$\r
- }\r
- if$\r
- tie.or.space.prefix\r
- "pages" bibinfo.check\r
- * *\r
- }\r
- if$\r
-}\r
-\r
-FUNCTION {format.journal.pages}\r
-{ pages duplicate$ empty$ 'pop$\r
- { swap$ duplicate$ empty$\r
- { pop$ pop$ format.pages }\r
- {\r
- ", " *\r
- swap$\r
- n.dashify\r
- "pages" bibinfo.check\r
- *\r
- }\r
- if$\r
- }\r
- if$\r
-}\r
-FUNCTION {format.vol.num.pages}\r
-{ volume field.or.null\r
- duplicate$ empty$ 'skip$\r
- {\r
- "volume" bibinfo.check\r
- }\r
- if$\r
-}\r
-\r
-FUNCTION {format.chapter.pages}\r
-{ chapter empty$\r
- { "" }\r
- { type empty$\r
- { bbl.chapter }\r
- { type "l" change.case$\r
- "type" bibinfo.check\r
- }\r
- if$\r
- chapter tie.or.space.prefix\r
- "chapter" bibinfo.check\r
- * *\r
- }\r
- if$\r
-}\r
-\r
-FUNCTION {format.booktitle}\r
-{\r
- booktitle "booktitle" bibinfo.check\r
-}\r
-FUNCTION {format.in.ed.booktitle}\r
-{ format.booktitle duplicate$ empty$ 'skip$\r
- {\r
- editor "editor" format.names.ed duplicate$ empty$ 'pop$\r
- {\r
- " " *\r
- get.bbl.editor\r
- capitalize\r
- "(" swap$ * "), " *\r
- * swap$\r
- * }\r
- if$\r
- word.in swap$ *\r
- }\r
- if$\r
-}\r
-FUNCTION {format.thesis.type}\r
-{ type duplicate$ empty$\r
- 'pop$\r
- { swap$ pop$\r
- "t" change.case$ "type" bibinfo.check\r
- }\r
- if$\r
-}\r
-FUNCTION {format.tr.number}\r
-{ number "number" bibinfo.check\r
- type duplicate$ empty$\r
- { pop$ bbl.techrep }\r
- 'skip$\r
- if$\r
- "type" bibinfo.check\r
- swap$ duplicate$ empty$\r
- { pop$ "t" change.case$ }\r
- { tie.or.space.prefix * * }\r
- if$\r
-}\r
-FUNCTION {format.article.crossref}\r
-{\r
- word.in\r
- " \cite{" * crossref * "}" *\r
-}\r
-FUNCTION {format.book.crossref}\r
-{ volume duplicate$ empty$\r
- { "empty volume in " cite$ * "'s crossref of " * crossref * warning$\r
- pop$ word.in\r
- }\r
- { bbl.volume\r
- capitalize\r
- swap$ tie.or.space.prefix "volume" bibinfo.check * * bbl.of space.word *\r
- }\r
- if$\r
- " \cite{" * crossref * "}" *\r
-}\r
-FUNCTION {format.incoll.inproc.crossref}\r
-{\r
- word.in\r
- " \cite{" * crossref * "}" *\r
-}\r
-FUNCTION {format.org.or.pub}\r
-{ 't :=\r
- ""\r
- address empty$ t empty$ and\r
- 'skip$\r
- {\r
- t empty$\r
- { address "address" bibinfo.check *\r
- }\r
- { t *\r
- address empty$\r
- 'skip$\r
- { ", " * address "address" bibinfo.check * }\r
- if$\r
- }\r
- if$\r
- }\r
- if$\r
-}\r
-FUNCTION {format.publisher.address}\r
-{ publisher "publisher" bibinfo.check format.org.or.pub\r
-}\r
-\r
-FUNCTION {format.organization.address}\r
-{ organization "organization" bibinfo.check format.org.or.pub\r
-}\r
-\r
-FUNCTION {print.url}\r
- {url duplicate$ empty$\r
- { pop$ "" }\r
- { new.sentence\r
- urlprefix "\url{" * swap$ * "}" *\r
- }\r
- if$\r
- }\r
-\r
-FUNCTION {print.doi}\r
- {doi duplicate$ empty$\r
- { pop$ "" }\r
- { new.sentence\r
- doiprefix "\doi{" * swap$ * "}" *\r
- }\r
- if$\r
- }\r
-\r
-FUNCTION {print.eprint}\r
- {eprint duplicate$ empty$\r
- { pop$ "" }\r
- { new.sentence\r
- duplicate$ "\href{http://arxiv.org/abs/" swap$ * "}{\tt arXiv:" * swap$ * "}" * }\r
- if$\r
- }\r
-\r
-FUNCTION {print.pubmed}\r
- {pubmed duplicate$ empty$\r
- { pop$ "" }\r
- { new.sentence\r
- pubmedprefix "\Pubmed{" * swap$ * "}" *\r
- }\r
- if$\r
- }\r
-\r
-FUNCTION {webpage}\r
-{ "%Type = Webpage" write$\r
- output.bibitem\r
- format.authors "author" output.check\r
- author format.key output\r
- author empty$\r
- {\r
- format.title "title" output.check\r
- new.block\r
- format.date "year" output.check\r
- date.block\r
- }\r
- {\r
- format.date "year" output.check\r
- date.block\r
- format.title "title" output.check\r
- new.block\r
-}\r
- if$\r
- print.url output\r
- fin.entry\r
-}\r
-\r
-\r
-FUNCTION {article}\r
-{ "%Type = Article" write$\r
- output.bibitem\r
- format.authors "author" output.check\r
- author format.key output\r
- format.date "year" output.check\r
- date.block\r
- format.title "title" output.check\r
- new.block\r
- crossref missing$\r
- {\r
- journal\r
- "journal" bibinfo.check\r
- "journal" output.check\r
- add.blank\r
- format.vol.num.pages output\r
- }\r
- { format.article.crossref output.nonnull\r
- }\r
- if$\r
- format.journal.pages\r
- new.block\r
- print.url output\r
- print.doi output\r
- print.eprint output\r
- print.pubmed output\r
- format.note output\r
- fin.entry\r
-}\r
-\r
-FUNCTION {book}\r
-{ "%Type = Book" write$\r
- output.bibitem\r
- author empty$\r
- { format.editors "author and editor" output.check\r
- editor format.key output\r
- }\r
- { format.authors output.nonnull\r
- crossref missing$\r
- { "author and editor" editor either.or.check }\r
- 'skip$\r
- if$\r
- }\r
- if$\r
- format.date "year" output.check\r
- date.block\r
- format.btitle "title" output.check\r
- crossref missing$\r
- { format.bvolume output\r
- new.block\r
- format.number.series output\r
- format.edition output\r
- new.sentence\r
- format.publisher.address output\r
- }\r
- {\r
- new.block\r
- format.book.crossref output.nonnull\r
- }\r
- if$\r
- new.block\r
- print.url output\r
- print.doi output\r
- print.eprint output\r
- print.pubmed output\r
- format.note output\r
- fin.entry\r
-}\r
-\r
-FUNCTION {booklet}\r
-{ "%Type = Booklet" write$\r
- output.bibitem\r
- format.authors output\r
- author format.key output\r
- format.date "year" output.check\r
- date.block\r
- format.title "title" output.check\r
- new.block\r
- howpublished "howpublished" bibinfo.check output\r
- address "address" bibinfo.check output\r
- new.block\r
- print.url output\r
- print.doi output\r
- print.eprint output\r
- print.pubmed output\r
- format.note output\r
- fin.entry\r
-}\r
-\r
-FUNCTION {inbook}\r
-{ "%Type = Inbook" write$\r
- output.bibitem\r
- author empty$\r
- { format.editors "author and editor" output.check\r
- editor format.key output\r
- }\r
- { format.authors output.nonnull\r
- crossref missing$\r
- { "author and editor" editor either.or.check }\r
- 'skip$\r
- if$\r
- }\r
- if$\r
- format.date "year" output.check\r
- date.block\r
- format.btitle "title" output.check\r
- format.edition output\r
- crossref missing$\r
- {\r
- format.publisher.address output\r
- format.bvolume output\r
- format.chapter.pages "chapter and pages" output.check\r
- new.block\r
- format.number.series output\r
- new.sentence\r
- }\r
- {\r
- format.chapter.pages "chapter and pages" output.check\r
- new.block\r
- format.book.crossref output.nonnull\r
- }\r
- if$\r
- format.pages "pages" output.check\r
- new.block\r
- print.url output\r
- print.doi output\r
- print.eprint output\r
- print.pubmed output\r
- format.note output\r
- fin.entry\r
-}\r
-\r
-FUNCTION {incollection}\r
-{ "%Type = Incollection" write$\r
- output.bibitem\r
- format.authors "author" output.check\r
- author format.key output\r
- format.date "year" output.check\r
- date.block\r
- format.title "title" output.book.check\r
- new.sentence\r
- crossref missing$\r
- { format.in.ed.booktitle "booktitle" output.book.check\r
- format.edition output\r
- format.publisher.address output\r
- format.bvolume output\r
- format.number.series output\r
- format.chapter.pages output\r
- new.sentence\r
- }\r
- { format.incoll.inproc.crossref output.nonnull\r
- format.chapter.pages output\r
- }\r
- if$\r
- format.pages "pages" output.check\r
- new.block\r
- print.url output\r
- print.doi output\r
- print.eprint output\r
- print.pubmed output\r
- format.note output\r
- fin.entry\r
-}\r
-\r
-FUNCTION {inproceedings}\r
-{ "%Type = Inproceedings" write$\r
- output.bibitem\r
- format.authors "author" output.check\r
- author format.key output\r
- format.date "year" output.check\r
- date.block\r
- format.title "title" output.book.check\r
- new.sentence\r
- crossref missing$\r
- { format.in.ed.booktitle "booktitle" output.check\r
- new.sentence\r
- publisher empty$\r
- { format.organization.address output }\r
- { organization "organization" bibinfo.check output\r
- format.publisher.address output\r
- }\r
- if$\r
-% format.bvolume output\r
-% format.number.series output\r
-% format.pages output\r
- }\r
- { format.incoll.inproc.crossref output.nonnull\r
- format.pages output\r
- }\r
- if$\r
- format.pages "pages" output.check\r
- new.block\r
- print.url output\r
- print.doi output\r
- print.eprint output\r
- print.pubmed output\r
- format.note output\r
- fin.entry\r
-}\r
-\r
-FUNCTION {conference} { inproceedings }\r
-\r
-FUNCTION {manual}\r
-{ "%Type = Manual" write$\r
- output.bibitem\r
- format.authors output\r
- author format.key output\r
- format.date "year" output.check\r
- date.block\r
- format.btitle "title" output.check\r
- format.edition output\r
- organization address new.block.checkb\r
- organization "organization" bibinfo.check output\r
- address "address" bibinfo.check output\r
- new.block\r
- print.url output\r
- print.doi output\r
- print.eprint output\r
- print.pubmed output\r
- format.note output\r
- fin.entry\r
-}\r
-\r
-FUNCTION {mastersthesis}\r
-{ "%Type = Masterthesis" write$\r
- output.bibitem\r
- format.authors "author" output.check\r
- author format.key output\r
- format.date "year" output.check\r
- date.block\r
- format.btitle\r
- "title" output.check\r
- new.block\r
- bbl.mthesis format.thesis.type output.nonnull\r
- school "school" bibinfo.warn output\r
- address "address" bibinfo.check output\r
- new.block\r
- print.url output\r
- print.doi output\r
- print.eprint output\r
- print.pubmed output\r
- format.note output\r
- fin.entry\r
-}\r
-\r
-FUNCTION {misc}\r
-{ "%Type = Misc" write$\r
- output.bibitem\r
- format.authors output\r
- author format.key output\r
- format.date "year" output.check\r
- date.block\r
- format.title output\r
- new.block\r
- howpublished "howpublished" bibinfo.check output\r
- new.block\r
- print.url output\r
- print.doi output\r
- print.eprint output\r
- print.pubmed output\r
- format.note output\r
- fin.entry\r
-}\r
-\r
-FUNCTION {phdthesis}\r
-{ "%Type = Phdthesis" write$\r
- output.bibitem\r
- format.authors "author" output.check\r
- author format.key output\r
- format.date "year" output.check\r
- date.block\r
- format.btitle\r
- "title" output.check\r
- new.block\r
- bbl.phdthesis format.thesis.type output.nonnull\r
- school "school" bibinfo.warn output\r
- address "address" bibinfo.check output\r
- new.block\r
- print.url output\r
- print.doi output\r
- print.eprint output\r
- print.pubmed output\r
- format.note output\r
- fin.entry\r
-}\r
-\r
-FUNCTION {proceedings}\r
-{ "%Type = Proceedings" write$\r
- output.bibitem\r
- format.editors output\r
- editor format.key output\r
- format.date "year" output.check\r
- date.block\r
- format.btitle "title" output.check\r
- format.bvolume output\r
- format.number.series output\r
- new.sentence\r
- publisher empty$\r
- { format.organization.address output }\r
- { organization "organization" bibinfo.check output\r
- format.publisher.address output\r
- }\r
- if$\r
- new.block\r
- print.url output\r
- print.doi output\r
- print.eprint output\r
- print.pubmed output\r
- format.note output\r
- fin.entry\r
-}\r
-\r
-FUNCTION {techreport}\r
-{ "%Type = Techreport" write$\r
- output.bibitem\r
- format.authors "author" output.check\r
- author format.key output\r
- format.date "year" output.check\r
- date.block\r
- format.btitle\r
- "title" output.check\r
- new.block\r
- format.tr.number output.nonnull\r
- institution "institution" bibinfo.warn output\r
- address "address" bibinfo.check output\r
- new.block\r
- print.url output\r
- print.doi output\r
- print.eprint output\r
- print.pubmed output\r
- format.note output\r
- fin.entry\r
-}\r
-\r
-FUNCTION {unpublished}\r
-{ "%Type = Unpublished" write$\r
- output.bibitem\r
- format.authors "author" output.check\r
- author format.key output\r
- format.date "year" output.check\r
- date.block\r
- format.title "title" output.check\r
- new.block\r
- print.url output\r
- print.doi output\r
- print.eprint output\r
- print.pubmed output\r
- format.note "note" output.check\r
- fin.entry\r
-}\r
-\r
-FUNCTION {default.type} { misc }\r
-READ\r
-FUNCTION {sortify}\r
-{ purify$\r
- "l" change.case$\r
-}\r
-INTEGERS { len }\r
-FUNCTION {chop.word}\r
-{ 's :=\r
- 'len :=\r
- s #1 len substring$ =\r
- { s len #1 + global.max$ substring$ }\r
- 's\r
- if$\r
-}\r
-FUNCTION {format.lab.names}\r
-{ 's :=\r
- "" 't :=\r
- s #1 "{vv~}{ll}" format.name$\r
- s num.names$ duplicate$\r
- #2 >\r
- { pop$\r
- " " * bbl.etal *\r
- }\r
- { #2 <\r
- 'skip$\r
- { s #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" =\r
- {\r
- " " * bbl.etal *\r
- }\r
- { bbl.and space.word * s #2 "{vv~}{ll}" format.name$\r
- * }\r
- if$\r
- }\r
- if$\r
- }\r
- if$\r
-}\r
-\r
-FUNCTION {author.key.label}\r
-{ author empty$\r
- { key empty$\r
- { cite$ #1 #3 substring$ }\r
- 'key\r
- if$\r
- }\r
- { author format.lab.names }\r
- if$\r
-}\r
-\r
-FUNCTION {author.editor.key.label}\r
-{ author empty$\r
- { editor empty$\r
- { key empty$\r
- { cite$ #1 #3 substring$ }\r
- 'key\r
- if$\r
- }\r
- { editor format.lab.names }\r
- if$\r
- }\r
- { author format.lab.names }\r
- if$\r
-}\r
-\r
-FUNCTION {editor.key.label}\r
-{ editor empty$\r
- { key empty$\r
- { cite$ #1 #3 substring$ }\r
- 'key\r
- if$\r
- }\r
- { editor format.lab.names }\r
- if$\r
-}\r
-\r
-FUNCTION {calc.short.authors}\r
-{ type$ "book" =\r
- type$ "inbook" =\r
- or\r
- 'author.editor.key.label\r
- { type$ "proceedings" =\r
- 'editor.key.label\r
- 'author.key.label\r
- if$\r
- }\r
- if$\r
- 'short.list :=\r
-}\r
-\r
-FUNCTION {calc.label}\r
-{ calc.short.authors\r
- short.list\r
- "("\r
- *\r
- year duplicate$ empty$\r
- short.list key field.or.null = or\r
- { pop$ "" }\r
- 'skip$\r
- if$\r
- *\r
- 'label :=\r
-}\r
-\r
-FUNCTION {sort.format.names}\r
-{ 's :=\r
- #1 'nameptr :=\r
- ""\r
- s num.names$ 'numnames :=\r
- numnames 'namesleft :=\r
- { namesleft #0 > }\r
- { s nameptr\r
- "{ll{ }}{ f{ }}{ jj{ }}"\r
- format.name$ 't :=\r
- nameptr #1 >\r
- {\r
- " " *\r
- namesleft #1 = t "others" = and\r
- { "zzzzz" * }\r
- { t sortify * }\r
- if$\r
- }\r
- { t sortify * }\r
- if$\r
- nameptr #1 + 'nameptr :=\r
- namesleft #1 - 'namesleft :=\r
- }\r
- while$\r
-}\r
-\r
-FUNCTION {sort.format.title}\r
-{ 't :=\r
- "A " #2\r
- "An " #3\r
- "The " #4 t chop.word\r
- chop.word\r
- chop.word\r
- sortify\r
- #1 global.max$ substring$\r
-}\r
-FUNCTION {author.sort}\r
-{ author empty$\r
- { key empty$\r
- { "to sort, need author or key in " cite$ * warning$\r
- ""\r
- }\r
- { key sortify }\r
- if$\r
- }\r
- { author sort.format.names }\r
- if$\r
-}\r
-FUNCTION {author.editor.sort}\r
-{ author empty$\r
- { editor empty$\r
- { key empty$\r
- { "to sort, need author, editor, or key in " cite$ * warning$\r
- ""\r
- }\r
- { key sortify }\r
- if$\r
- }\r
- { editor sort.format.names }\r
- if$\r
- }\r
- { author sort.format.names }\r
- if$\r
-}\r
-FUNCTION {editor.sort}\r
-{ editor empty$\r
- { key empty$\r
- { "to sort, need editor or key in " cite$ * warning$\r
- ""\r
- }\r
- { key sortify }\r
- if$\r
- }\r
- { editor sort.format.names }\r
- if$\r
-}\r
-FUNCTION {presort}\r
-{ calc.label\r
- label sortify\r
- " "\r
- *\r
- type$ "book" =\r
- type$ "inbook" =\r
- or\r
- 'author.editor.sort\r
- { type$ "proceedings" =\r
- 'editor.sort\r
- 'author.sort\r
- if$\r
- }\r
- if$\r
- #1 entry.max$ substring$\r
- 'sort.label :=\r
- sort.label\r
- *\r
- " "\r
- *\r
- title field.or.null\r
- sort.format.title\r
- *\r
- #1 entry.max$ substring$\r
- 'sort.key$ :=\r
-}\r
-\r
-ITERATE {presort}\r
-SORT\r
-STRINGS { last.label next.extra }\r
-INTEGERS { last.extra.num number.label }\r
-FUNCTION {initialize.extra.label.stuff}\r
-{ #0 int.to.chr$ 'last.label :=\r
- "" 'next.extra :=\r
- #0 'last.extra.num :=\r
- #0 'number.label :=\r
-}\r
-FUNCTION {forward.pass}\r
-{ last.label label =\r
- { last.extra.num #1 + 'last.extra.num :=\r
- last.extra.num int.to.chr$ 'extra.label :=\r
- }\r
- { "a" chr.to.int$ 'last.extra.num :=\r
- "" 'extra.label :=\r
- label 'last.label :=\r
- }\r
- if$\r
- number.label #1 + 'number.label :=\r
-}\r
-FUNCTION {reverse.pass}\r
-{ next.extra "b" =\r
- { "a" 'extra.label := }\r
- 'skip$\r
- if$\r
- extra.label 'next.extra :=\r
- extra.label\r
- duplicate$ empty$\r
- 'skip$\r
-% { "{\natexlab{" swap$ * "}}" * }\r
- { "" swap$ * "" * }\r
- if$\r
- 'extra.label :=\r
- label extra.label * 'label :=\r
-}\r
-EXECUTE {initialize.extra.label.stuff}\r
-ITERATE {forward.pass}\r
-REVERSE {reverse.pass}\r
-FUNCTION {bib.sort.order}\r
-{ sort.label\r
- " "\r
- *\r
- year field.or.null sortify\r
- *\r
- " "\r
- *\r
- title field.or.null\r
- sort.format.title\r
- *\r
- #1 entry.max$ substring$\r
- 'sort.key$ :=\r
-}\r
-ITERATE {bib.sort.order}\r
-SORT\r
-FUNCTION {begin.bib}\r
-{ preamble$ empty$\r
- 'skip$\r
- { preamble$ write$ newline$ }\r
- if$\r
- "\begin{thebibliography}{" number.label int.to.str$ * "}" *\r
- write$ newline$\r
- "\expandafter\ifx\csname natexlab\endcsname\relax\def\natexlab#1{#1}\fi"\r
- write$ newline$\r
- "\providecommand{\url}[1]{\texttt{#1}}"\r
- write$ newline$\r
- "\providecommand{\href}[2]{#2}"\r
- write$ newline$\r
- "\providecommand{\path}[1]{#1}"\r
- write$ newline$\r
- "\providecommand{\DOIprefix}{doi:}"\r
- write$ newline$\r
- "\providecommand{\ArXivprefix}{arXiv:}"\r
- write$ newline$\r
- "\providecommand{\URLprefix}{URL: }"\r
- write$ newline$\r
- "\providecommand{\Pubmedprefix}{pmid:}"\r
- write$ newline$\r
- "\providecommand{\doi}[1]{\href{http://dx.doi.org/#1}{\path{#1}}}"\r
- write$ newline$\r
- "\providecommand{\Pubmed}[1]{\href{pmid:#1}{\path{#1}}}"\r
- write$ newline$\r
- "\providecommand{\bibinfo}[2]{#2}"\r
- write$ newline$\r
- "\ifx\xfnm\relax \def\xfnm[#1]{\unskip,\space#1}\fi"\r
- write$ newline$\r
-}\r
-EXECUTE {begin.bib}\r
-EXECUTE {init.state.consts}\r
-EXECUTE {init.web.variables} \r
-ITERATE {call.type$}\r
-FUNCTION {end.bib}\r
-{ newline$\r
- "\end{thebibliography}" write$ newline$\r
-}\r
-EXECUTE {end.bib}\r
-%% End of customized bst file\r
-%%\r
-%% End of file `model2-names.bst'.\r
-%%\r
-%% Change log:\r
-%% -----------\r
-%% 22.04.2011\r
-%%\r
-%% 10.08.2012\r
-%% a. doi, url, eprint, pmid added\r
-%% b. Bibtype `webpage' defined\r
-%%\r
-%% 30.08.2012\r
-%% a. collaboration added.\r
-%%\r