manus_continuum_granular1

manuscript files for first continuum-till paper
git clone git://src.adamsgaard.dk/manus_continuum_granular1
Log | Files | Refs Back to index

agufull08.bst (42484B)


      1 %%
      2 %% This is file `agufull08.bst',
      3 %% generated with the docstrip utility.
      4 %%
      5 %% The original source files were:
      6 %%
      7 %% merlin.mbs  (with options: `head,ay,nat,seq-labc,nm-rev1,jnrlst,lab,lab-it,keyxyr,blkyear,dt-beg,yr-par,xmth,note-yr,thtit-a,trnum-it,vol-it,volp-com,pgsep-c,num-xser,ser-vol,ser-ed,pg-bk,pg-pre,pre-edn,agu-doi,doi,edpar,bkedcap,edby,blk-com,pp,ed,abr,ednx,xedn,jabr,and-com,em-it,nfss,{}')
      8 %% physjour.mbs  (with options: `ay,nat,seq-labc,nm-rev1,jnrlst,lab,lab-it,keyxyr,blkyear,dt-beg,yr-par,xmth,note-yr,thtit-a,trnum-it,vol-it,volp-com,pgsep-c,num-xser,ser-vol,ser-ed,pg-bk,pg-pre,pre-edn,agu-doi,doi,edpar,bkedcap,edby,blk-com,pp,ed,abr,ednx,xedn,jabr,and-com,em-it,nfss,{}')
      9 %% geojour.mbs  (with options: `ay,nat,seq-labc,nm-rev1,jnrlst,lab,lab-it,keyxyr,blkyear,dt-beg,yr-par,xmth,note-yr,thtit-a,trnum-it,vol-it,volp-com,pgsep-c,num-xser,ser-vol,ser-ed,pg-bk,pg-pre,pre-edn,agu-doi,doi,edpar,bkedcap,edby,blk-com,pp,ed,abr,ednx,xedn,jabr,and-com,em-it,nfss,{}')
     10 %% photjour.mbs  (with options: `ay,nat,seq-labc,nm-rev1,jnrlst,lab,lab-it,keyxyr,blkyear,dt-beg,yr-par,xmth,note-yr,thtit-a,trnum-it,vol-it,volp-com,pgsep-c,num-xser,ser-vol,ser-ed,pg-bk,pg-pre,pre-edn,agu-doi,doi,edpar,bkedcap,edby,blk-com,pp,ed,abr,ednx,xedn,jabr,and-com,em-it,nfss,{}')
     11 %% merlin.mbs  (with options: `tail,ay,nat,seq-labc,nm-rev1,jnrlst,lab,lab-it,keyxyr,blkyear,dt-beg,yr-par,xmth,note-yr,thtit-a,trnum-it,vol-it,volp-com,pgsep-c,num-xser,ser-vol,ser-ed,pg-bk,pg-pre,pre-edn,agu-doi,doi,edpar,bkedcap,edby,blk-com,pp,ed,abr,ednx,xedn,jabr,and-com,em-it,nfss,{}')
     12 %% ----------------------------------------
     13 %% *** For journals of the American Geophysical Union ***
     14 %% *** NOTE: this version does not limit the number of authors in ref list.
     15 %% ***   Use agu08.bst to limit authors to maximum 9.
     16 %% ***
     17 %% ----------------------------------------
     18 %% *** Version 3.1 from 2008/08/27
     19 %% *** Multiple authors of same first author and year now in order of citation
     20 %% ***   and other minor fixes
     21 %% ***   Renamed to agu08.bst and agufull08.bst
     22 %% ***
     23 %% *** Version 3.0 from 2004/02/06
     24 %% *** Changed date format for AGU journals
     25 %% *** The date now appears in parentheses after authors
     26 %% ***
     27 %% *** Version 2.2 from 2003/06/26
     28 %% *** (with bug fix from 2003/08/19)
     29 %% *** Includes new fields eid and doi
     30 %% *** The eid is what the AGU calls "citation number"
     31 %% *** and doi is the DOI number; both of these are
     32 %% *** used as substitution for page number
     33 %% *** The issue number is now also included as
     34 %% *** 84(3) for vol. 84, nr. 3
     35 %% ***
     36 %% *** Version 2.1d from 1999/05/20
     37 %% *** Book editors done right as P. James (Ed.),
     38 %% *** Missing italics with some authors fixed
     39 %% ***
     40 %% *** Version 2.1c from 1999/02/11
     41 %% *** This version does not crash older BibTeX installations with
     42 %% *** more than 3000 wiz-functions
     43 %% ***
     44 %% *** Version 2.1b from 1997/11/18
     45 %% *** (page numbers over 9999 are broken with commas, as 12,345)
     46 %% ***
     47 %% *** Version 2.1a from 1997/05/26
     48 %% *** (contains improvements from copy editor comments,
     49 %% ***  notes added with first word lowercase (bug in 2.1 fixed)
     50 %% ***  and journal `number' never output
     51 %% ***  abbreviation for grl corrected)
     52 %% *** 
     53 %% 
     54 %% Copyright 1994-2008 Patrick W Daly
     55  % ===============================================================
     56  % IMPORTANT NOTICE:
     57  % This bibliographic style (bst) file has been generated from one or
     58  % more master bibliographic style (mbs) files, listed above.
     59  %
     60  % This generated file can be redistributed and/or modified under the terms
     61  % of the LaTeX Project Public License Distributed from CTAN
     62  % archives in directory macros/latex/base/lppl.txt; either
     63  % version 1 of the License, or any later version.
     64  % ===============================================================
     65  % Name and version information of the main mbs file:
     66  % \ProvidesFile{merlin.mbs}[2008/08/27 4.30 (PWD, AO, DPC)]
     67  %   For use with BibTeX version 0.99a or later
     68  %-------------------------------------------------------------------
     69  % This bibliography style file is intended for texts in ENGLISH
     70  % This is an author-year citation style bibliography. As such, it is
     71  % non-standard LaTeX, and requires a special package file to function properly.
     72  % Such a package is    natbib.sty   by Patrick W. Daly
     73  % The form of the \bibitem entries is
     74  %   \bibitem[Jones et al.(1990)]{key}...
     75  %   \bibitem[Jones et al.(1990)Jones, Baker, and Smith]{key}...
     76  % The essential feature is that the label (the part in brackets) consists
     77  % of the author names, as they should appear in the citation, with the year
     78  % in parentheses following. There must be no space before the opening
     79  % parenthesis!
     80  % With natbib v5.3, a full list of authors may also follow the year.
     81  % In natbib.sty, it is possible to define the type of enclosures that is
     82  % really wanted (brackets or parentheses), but in either case, there must
     83  % be parentheses in the label.
     84  % The \cite command functions as follows:
     85  %   \citet{key} ==>>                Jones et al. (1990)
     86  %   \citet*{key} ==>>               Jones, Baker, and Smith (1990)
     87  %   \citep{key} ==>>                (Jones et al., 1990)
     88  %   \citep*{key} ==>>               (Jones, Baker, and Smith, 1990)
     89  %   \citep[chap. 2]{key} ==>>       (Jones et al., 1990, chap. 2)
     90  %   \citep[e.g.][]{key} ==>>        (e.g. Jones et al., 1990)
     91  %   \citep[e.g.][p. 32]{key} ==>>   (e.g. Jones et al., 1990, p. 32)
     92  %   \citeauthor{key} ==>>           Jones et al.
     93  %   \citeauthor*{key} ==>>          Jones, Baker, and Smith
     94  %   \citeyear{key} ==>>             1990
     95  %---------------------------------------------------------------------
     96 
     97 ENTRY
     98   { address
     99     author
    100     booktitle
    101     chapter
    102     doi
    103     edition
    104     editor
    105     eid
    106     howpublished
    107     institution
    108     journal
    109     key
    110     month
    111     note
    112     number
    113     organization
    114     pages
    115     publisher
    116     school
    117     series
    118     title
    119     type
    120     volume
    121     year
    122   }
    123   {}
    124   { label extra.label sort.label short.list }
    125 INTEGERS { output.state before.all mid.sentence after.sentence after.block }
    126 FUNCTION {init.state.consts}
    127 { #0 'before.all :=
    128   #1 'mid.sentence :=
    129   #2 'after.sentence :=
    130   #3 'after.block :=
    131 }
    132 STRINGS { s t}
    133 FUNCTION {output.nonnull}
    134 { 's :=
    135   output.state mid.sentence =
    136     { ", " * write$ }
    137     { output.state after.block =
    138         { add.period$ write$
    139           newline$
    140           "\newblock " write$
    141         }
    142         { output.state before.all =
    143             'write$
    144             { add.period$ " " * write$ }
    145           if$
    146         }
    147       if$
    148       mid.sentence 'output.state :=
    149     }
    150   if$
    151   s
    152 }
    153 FUNCTION {output}
    154 { duplicate$ empty$
    155     'pop$
    156     'output.nonnull
    157   if$
    158 }
    159 FUNCTION {output.check}
    160 { 't :=
    161   duplicate$ empty$
    162     { pop$ "empty " t * " in " * cite$ * warning$ }
    163     'output.nonnull
    164   if$
    165 }
    166 FUNCTION {fin.entry}
    167 { add.period$
    168   write$
    169   newline$
    170 }
    171 
    172 FUNCTION {new.block}
    173 { output.state before.all =
    174     'skip$
    175     { after.block 'output.state := }
    176   if$
    177 }
    178 FUNCTION {new.sentence}
    179 { output.state after.block =
    180     'skip$
    181     { output.state before.all =
    182         'skip$
    183         { after.sentence 'output.state := }
    184       if$
    185     }
    186   if$
    187 }
    188 FUNCTION {add.blank}
    189 {  " " * before.all 'output.state :=
    190 }
    191 
    192 FUNCTION {date.block}
    193 {
    194   skip$
    195 }
    196 
    197 FUNCTION {not}
    198 {   { #0 }
    199     { #1 }
    200   if$
    201 }
    202 FUNCTION {and}
    203 {   'skip$
    204     { pop$ #0 }
    205   if$
    206 }
    207 FUNCTION {or}
    208 {   { pop$ #1 }
    209     'skip$
    210   if$
    211 }
    212 FUNCTION {new.block.checkb}
    213 { empty$
    214   swap$ empty$
    215   and
    216     'skip$
    217     'new.block
    218   if$
    219 }
    220 FUNCTION {field.or.null}
    221 { duplicate$ empty$
    222     { pop$ "" }
    223     'skip$
    224   if$
    225 }
    226 FUNCTION {emphasize}
    227 { duplicate$ empty$
    228     { pop$ "" }
    229     { "\textit{" swap$ * "}" * }
    230   if$
    231 }
    232 FUNCTION {cite.name.font}
    233 { emphasize }
    234 FUNCTION {tie.or.space.prefix}
    235 { duplicate$ text.length$ #3 <
    236     { "~" }
    237     { " " }
    238   if$
    239   swap$
    240 }
    241 
    242 FUNCTION {capitalize}
    243 { "u" change.case$ "t" change.case$ }
    244 
    245 FUNCTION {space.word}
    246 { " " swap$ * " " * }
    247  % Here are the language-specific definitions for explicit words.
    248  % Each function has a name bbl.xxx where xxx is the English word.
    249  % The language selected here is ENGLISH
    250 FUNCTION {bbl.and}
    251 { "and"}
    252 
    253 FUNCTION {bbl.etal}
    254 { "et~al." }
    255 
    256 FUNCTION {bbl.editors}
    257 { "eds." }
    258 
    259 FUNCTION {bbl.editor}
    260 { "ed." }
    261 
    262 FUNCTION {bbl.edby}
    263 { "edited by" }
    264 
    265 FUNCTION {bbl.edition}
    266 { "ed." }
    267 
    268 FUNCTION {bbl.volume}
    269 { "vol." }
    270 
    271 FUNCTION {bbl.of}
    272 { "of" }
    273 
    274 FUNCTION {bbl.number}
    275 { "no." }
    276 
    277 FUNCTION {bbl.nr}
    278 { "no." }
    279 
    280 FUNCTION {bbl.in}
    281 { "in" }
    282 
    283 FUNCTION {bbl.pages}
    284 { "pp." }
    285 
    286 FUNCTION {bbl.page}
    287 { "p." }
    288 
    289 FUNCTION {bbl.chapter}
    290 { "chap." }
    291 
    292 FUNCTION {bbl.techrep}
    293 { "Tech. Rep." }
    294 
    295 FUNCTION {bbl.mthesis}
    296 { "Master's thesis" }
    297 
    298 FUNCTION {bbl.phdthesis}
    299 { "Ph.D. thesis" }
    300 
    301 MACRO {jan} {"Jan."}
    302 
    303 MACRO {feb} {"Feb."}
    304 
    305 MACRO {mar} {"Mar."}
    306 
    307 MACRO {apr} {"Apr."}
    308 
    309 MACRO {may} {"May"}
    310 
    311 MACRO {jun} {"Jun."}
    312 
    313 MACRO {jul} {"Jul."}
    314 
    315 MACRO {aug} {"Aug."}
    316 
    317 MACRO {sep} {"Sep."}
    318 
    319 MACRO {oct} {"Oct."}
    320 
    321 MACRO {nov} {"Nov."}
    322 
    323 MACRO {dec} {"Dec."}
    324 
    325  %-------------------------------------------------------------------
    326  % Begin module:
    327  % \ProvidesFile{physjour.mbs}[2002/01/14 2.2 (PWD)]
    328 MACRO {aa}{"Astron. \& Astrophys."}
    329 MACRO {aasup}{"Astron. \& Astrophys. Suppl. Ser."}
    330 MACRO {aj} {"Astron. J."}
    331 MACRO {aph} {"Acta Phys."}
    332 MACRO {advp} {"Adv. Phys."}
    333 MACRO {ajp} {"Amer. J. Phys."}
    334 MACRO {ajm} {"Amer. J. Math."}
    335 MACRO {amsci} {"Amer. Sci."}
    336 MACRO {anofd} {"Ann. Fluid Dyn."}
    337 MACRO {am} {"Ann. Math."}
    338 MACRO {ap} {"Ann. Phys. (NY)"}
    339 MACRO {adp} {"Ann. Phys. (Leipzig)"}
    340 MACRO {ao} {"Appl. Opt."}
    341 MACRO {apl} {"Appl. Phys. Lett."}
    342 MACRO {app} {"Astroparticle Phys."}
    343 MACRO {apj} {"Astrophys. J."}
    344 MACRO {apjsup} {"Astrophys. J. Suppl."}
    345 MACRO {apss} {"Astrophys. Space Sci."}
    346 MACRO {araa} {"Ann. Rev. Astron. Astrophys."}
    347 MACRO {baas} {"Bull. Amer. Astron. Soc."}
    348 MACRO {baps} {"Bull. Amer. Phys. Soc."}
    349 MACRO {cmp} {"Comm. Math. Phys."}
    350 MACRO {cpam} {"Commun. Pure Appl. Math."}
    351 MACRO {cppcf} {"Comm. Plasma Phys. \& Controlled Fusion"}
    352 MACRO {cpc} {"Comp. Phys. Comm."}
    353 MACRO {cqg} {"Class. Quant. Grav."}
    354 MACRO {cra} {"C. R. Acad. Sci. A"}
    355 MACRO {fed} {"Fusion Eng. \& Design"}
    356 MACRO {ft} {"Fusion Tech."}
    357 MACRO {grg} {"Gen. Relativ. Gravit."}
    358 MACRO {ieeens} {"IEEE Trans. Nucl. Sci."}
    359 MACRO {ieeeps} {"IEEE Trans. Plasma Sci."}
    360 MACRO {ijimw} {"Interntl. J. Infrared \& Millimeter Waves"}
    361 MACRO {ip} {"Infrared Phys."}
    362 MACRO {irp} {"Infrared Phys."}
    363 MACRO {jap} {"J. Appl. Phys."}
    364 MACRO {jasa} {"J. Acoust. Soc. America"}
    365 MACRO {jcp} {"J. Comp. Phys."}
    366 MACRO {jetp} {"Sov. Phys.--JETP"}
    367 MACRO {jfe} {"J. Fusion Energy"}
    368 MACRO {jfm} {"J. Fluid Mech."}
    369 MACRO {jmp} {"J. Math. Phys."}
    370 MACRO {jne} {"J. Nucl. Energy"}
    371 MACRO {jnec} {"J. Nucl. Energy, C: Plasma Phys., Accelerators, Thermonucl. Res."}
    372 MACRO {jnm} {"J. Nucl. Mat."}
    373 MACRO {jpc} {"J. Phys. Chem."}
    374 MACRO {jpp} {"J. Plasma Phys."}
    375 MACRO {jpsj} {"J. Phys. Soc. Japan"}
    376 MACRO {jsi} {"J. Sci. Instrum."}
    377 MACRO {jvst} {"J. Vac. Sci. \& Tech."}
    378 MACRO {nat} {"Nature"}
    379 MACRO {nature} {"Nature"}
    380 MACRO {nedf} {"Nucl. Eng. \& Design/Fusion"}
    381 MACRO {nf} {"Nucl. Fusion"}
    382 MACRO {nim} {"Nucl. Inst. \& Meth."}
    383 MACRO {nimpr} {"Nucl. Inst. \& Meth. in Phys. Res."}
    384 MACRO {np} {"Nucl. Phys."}
    385 MACRO {npb} {"Nucl. Phys. B"}
    386 MACRO {nt/f} {"Nucl. Tech./Fusion"}
    387 MACRO {npbpc} {"Nucl. Phys. B (Proc. Suppl.)"}
    388 MACRO {inc} {"Nuovo Cimento"}
    389 MACRO {nc} {"Nuovo Cimento"}
    390 MACRO {pf} {"Phys. Fluids"}
    391 MACRO {pfa} {"Phys. Fluids A: Fluid Dyn."}
    392 MACRO {pfb} {"Phys. Fluids B: Plasma Phys."}
    393 MACRO {pl} {"Phys. Lett."}
    394 MACRO {pla} {"Phys. Lett. A"}
    395 MACRO {plb} {"Phys. Lett. B"}
    396 MACRO {prep} {"Phys. Rep."}
    397 MACRO {pnas} {"Proc. Nat. Acad. Sci. USA"}
    398 MACRO {pp} {"Phys. Plasmas"}
    399 MACRO {ppcf} {"Plasma Phys. \& Controlled Fusion"}
    400 MACRO {phitrsl} {"Philos. Trans. Roy. Soc. London"}
    401 MACRO {prl} {"Phys. Rev. Lett."}
    402 MACRO {pr} {"Phys. Rev."}
    403 MACRO {physrev} {"Phys. Rev."}
    404 MACRO {pra} {"Phys. Rev. A"}
    405 MACRO {prb} {"Phys. Rev. B"}
    406 MACRO {prc} {"Phys. Rev. C"}
    407 MACRO {prd} {"Phys. Rev. D"}
    408 MACRO {pre} {"Phys. Rev. E"}
    409 MACRO {ps} {"Phys. Scripta"}
    410 MACRO {procrsl} {"Proc. Roy. Soc. London"}
    411 MACRO {rmp} {"Rev. Mod. Phys."}
    412 MACRO {rsi} {"Rev. Sci. Inst."}
    413 MACRO {science} {"Science"}
    414 MACRO {sciam} {"Sci. Am."}
    415 MACRO {sam} {"Stud. Appl. Math."}
    416 MACRO {sjpp} {"Sov. J. Plasma Phys."}
    417 MACRO {spd} {"Sov. Phys.--Doklady"}
    418 MACRO {sptp} {"Sov. Phys.--Tech. Phys."}
    419 MACRO {spu} {"Sov. Phys.--Uspeki"}
    420 MACRO {st} {"Sky and Telesc."}
    421  % End module: physjour.mbs
    422  %-------------------------------------------------------------------
    423  % Begin module:
    424  % \ProvidesFile{geojour.mbs}[2002/07/10 2.0h (PWD)]
    425 MACRO {aisr} {"Adv. Space Res."}
    426 MACRO {ag} {"Ann. Geophys."}
    427 MACRO {anigeo} {"Ann. Geofis."}
    428 MACRO {angl} {"Ann. Glaciol."}
    429 MACRO {andmet} {"Ann. d. Meteor."}
    430 MACRO {andgeo} {"Ann. d. Geophys."}
    431 MACRO {andphy} {"Ann. Phys.-Paris"}
    432 MACRO {afmgb} {"Arch. Meteor. Geophys. Bioklimatol."}
    433 MACRO {atph} {"Atm\'osphera"}
    434 MACRO {aao} {"Atmos. Ocean"}
    435 MACRO {ass}{"Astrophys. Space Sci."}
    436 MACRO {atenv} {"Atmos. Environ."}
    437 MACRO {aujag} {"Aust. J. Agr. Res."}
    438 MACRO {aumet} {"Aust. Meteorol. Mag."}
    439 MACRO {blmet} {"Bound.-Lay. Meteorol."}
    440 MACRO {bams} {"Bull. Amer. Meteorol. Soc."}
    441 MACRO {cch} {"Clim. Change"}
    442 MACRO {cdyn} {"Clim. Dynam."}
    443 MACRO {cbul} {"Climatol. Bull."}
    444 MACRO {cap} {"Contrib. Atmos. Phys."}
    445 MACRO {dsr} {"Deep-Sea Res."}
    446 MACRO {dhz} {"Dtsch. Hydrogr. Z."}
    447 MACRO {dao} {"Dynam. Atmos. Oceans"}
    448 MACRO {eco} {"Ecology"}
    449 MACRO {empl}{"Earth, Moon and Planets"}
    450 MACRO {envres} {"Environ. Res."}
    451 MACRO {envst} {"Environ. Sci. Technol."}
    452 MACRO {ecms} {"Estuarine Coastal Mar. Sci."}
    453 MACRO {expa}{"Exper. Astron."}
    454 MACRO {geoint} {"Geofis. Int."}
    455 MACRO {geopub} {"Geofys. Publ."}
    456 MACRO {geogeo} {"Geol. Geofiz."}
    457 MACRO {gafd} {"Geophys. Astrophys. Fluid Dyn."}
    458 MACRO {gfd} {"Geophys. Fluid Dyn."}
    459 MACRO {geomag} {"Geophys. Mag."}
    460 MACRO {georl} {"Geophys. Res. Lett."}
    461 MACRO {grl} {"Geophys. Res. Lett."}
    462 MACRO {ga} {"Geophysica"}
    463 MACRO {gs} {"Geophysics"}
    464 MACRO {ieeetap} {"IEEE Trans. Antenn. Propag."}
    465 MACRO {ijawp} {"Int. J. Air Water Pollut."}
    466 MACRO {ijc} {"Int. J. Climatol."}
    467 MACRO {ijrs} {"Int. J. Remote Sens."}
    468 MACRO {jam} {"J. Appl. Meteorol."}
    469 MACRO {jaot} {"J. Atmos. Ocean. Technol."}
    470 MACRO {jatp} {"J. Atmos. Terr. Phys."}
    471 MACRO {jastp} {"J. Atmos. Solar-Terr. Phys."}
    472 MACRO {jce} {"J. Climate"}
    473 MACRO {jcam} {"J. Climate Appl. Meteor."}
    474 MACRO {jcm} {"J. Climate Meteor."}
    475 MACRO {jcy} {"J. Climatol."}
    476 MACRO {jgr} {"J. Geophys. Res."}
    477 MACRO {jga} {"J. Glaciol."}
    478 MACRO {jh} {"J. Hydrol."}
    479 MACRO {jmr} {"J. Mar. Res."}
    480 MACRO {jmrj} {"J. Meteor. Res. Japan"}
    481 MACRO {jm} {"J. Meteor."}
    482 MACRO {jpo} {"J. Phys. Oceanogr."}
    483 MACRO {jra} {"J. Rech. Atmos."}
    484 MACRO {jaes} {"J. Aeronaut. Sci."}
    485 MACRO {japca} {"J. Air Pollut. Control Assoc."}
    486 MACRO {jas} {"J. Atmos. Sci."}
    487 MACRO {jmts} {"J. Mar. Technol. Soc."}
    488 MACRO {jmsj} {"J. Meteorol. Soc. Japan"}
    489 MACRO {josj} {"J. Oceanogr. Soc. Japan"}
    490 MACRO {jwm} {"J. Wea. Mod."}
    491 MACRO {lao} {"Limnol. Oceanogr."}
    492 MACRO {mwl} {"Mar. Wea. Log"}
    493 MACRO {mau} {"Mausam"}
    494 MACRO {meteor} {"``Meteor'' Forschungsergeb."}
    495 MACRO {map} {"Meteorol. Atmos. Phys."}
    496 MACRO {metmag} {"Meteor. Mag."}
    497 MACRO {metmon} {"Meteor. Monogr."}
    498 MACRO {metrun} {"Meteor. Rundsch."}
    499 MACRO {metzeit} {"Meteor. Z."}
    500 MACRO {metgid} {"Meteor. Gidrol."}
    501 MACRO {mwr} {"Mon. Weather Rev."}
    502 MACRO {nwd} {"Natl. Weather Dig."}
    503 MACRO {nzjmfr} {"New Zeal. J. Mar. Freshwater Res."}
    504 MACRO {npg} {"Nonlin. Proc. Geophys."}
    505 MACRO {om} {"Oceanogr. Meteorol."}
    506 MACRO {ocac} {"Oceanol. Acta"}
    507 MACRO {oceanus} {"Oceanus"}
    508 MACRO {paleoc} {"Paleoceanography"}
    509 MACRO {pce} {"Phys. Chem. Earth"}
    510 MACRO {pmg} {"Pap. Meteor. Geophys."}
    511 MACRO {ppom} {"Pap. Phys. Oceanogr. Meteor."}
    512 MACRO {physzeit} {"Phys. Z."}
    513 MACRO {pps} {"Planet. Space Sci."}
    514 MACRO {pss} {"Planet. Space Sci."}
    515 MACRO {pag} {"Pure Appl. Geophys."}
    516 MACRO {qjrms} {"Quart. J. Roy. Meteorol. Soc."}
    517 MACRO {quatres} {"Quat. Res."}
    518 MACRO {rsci} {"Radio Sci."}
    519 MACRO {rse} {"Remote Sens. Environ."}
    520 MACRO {rgeo} {"Rev. Geophys."}
    521 MACRO {rgsp} {"Rev. Geophys. Space Phys."}
    522 MACRO {rdgeo} {"Rev. Geofis."}
    523 MACRO {revmeta} {"Rev. Meteorol."}
    524 MACRO {sgp}{"Surveys in Geophys."}
    525 MACRO {sp} {"Solar Phys."}
    526 MACRO {ssr} {"Space Sci. Rev."}
    527 MACRO {tellus} {"Tellus"}
    528 MACRO {tac} {"Theor. Appl. Climatol."}
    529 MACRO {tagu} {"Trans. Am. Geophys. Union (EOS)"}
    530 MACRO {wrr} {"Water Resour. Res."}
    531 MACRO {weather} {"Weather"}
    532 MACRO {wafc} {"Weather Forecast."}
    533 MACRO {ww} {"Weatherwise"}
    534 MACRO {wmob} {"WMO Bull."}
    535 MACRO {zeitmet} {"Z. Meteorol."}
    536  % End module: geojour.mbs
    537  %-------------------------------------------------------------------
    538  % Begin module:
    539  % \ProvidesFile{photjour.mbs}[1999/02/24 2.0b (PWD)]
    540 
    541 MACRO {appopt} {"Appl. Opt."}
    542 MACRO {bell} {"Bell Syst. Tech. J."}
    543 MACRO {ell} {"Electron. Lett."}
    544 MACRO {jasp} {"J. Appl. Spectr."}
    545 MACRO {jqe} {"IEEE J. Quantum Electron."}
    546 MACRO {jlwt} {"J. Lightwave Technol."}
    547 MACRO {jmo} {"J. Mod. Opt."}
    548 MACRO {josa} {"J. Opt. Soc. America"}
    549 MACRO {josaa} {"J. Opt. Soc. Amer.~A"}
    550 MACRO {josab} {"J. Opt. Soc. Amer.~B"}
    551 MACRO {jdp} {"J. Phys. (Paris)"}
    552 MACRO {oc} {"Opt. Commun."}
    553 MACRO {ol} {"Opt. Lett."}
    554 MACRO {phtl} {"IEEE Photon. Technol. Lett."}
    555 MACRO {pspie} {"Proc. Soc. Photo-Opt. Instrum. Eng."}
    556 MACRO {sse} {"Solid-State Electron."}
    557 MACRO {sjot} {"Sov. J. Opt. Technol."}
    558 MACRO {sjqe} {"Sov. J. Quantum Electron."}
    559 MACRO {sleb} {"Sov. Phys.--Leb. Inst. Rep."}
    560 MACRO {stph} {"Sov. Phys.--Techn. Phys."}
    561 MACRO {stphl} {"Sov. Techn. Phys. Lett."}
    562 MACRO {vr} {"Vision Res."}
    563 MACRO {zph} {"Z. f. Physik"}
    564 MACRO {zphb} {"Z. f. Physik~B"}
    565 MACRO {zphd} {"Z. f. Physik~D"}
    566 
    567 MACRO {CLEO} {"CLEO"}
    568 MACRO {ASSL} {"Adv. Sol.-State Lasers"}
    569 MACRO {OSA}  {"OSA"}
    570  % End module: photjour.mbs
    571 %% Copyright 1994-2008 Patrick W Daly
    572 MACRO {acmcs} {"ACM Comput. Surv."}
    573 
    574 MACRO {acta} {"Acta Inf."}
    575 
    576 MACRO {cacm} {"Commun. ACM"}
    577 
    578 MACRO {ibmjrd} {"IBM J. Res. Dev."}
    579 
    580 MACRO {ibmsj} {"IBM Syst.~J."}
    581 
    582 MACRO {ieeese} {"IEEE Trans. Software Eng."}
    583 
    584 MACRO {ieeetc} {"IEEE Trans. Comput."}
    585 
    586 MACRO {ieeetcad}
    587  {"IEEE Trans. Comput. Aid. Des."}
    588 
    589 MACRO {ipl} {"Inf. Process. Lett."}
    590 
    591 MACRO {jacm} {"J.~ACM"}
    592 
    593 MACRO {jcss} {"J.~Comput. Syst. Sci."}
    594 
    595 MACRO {scp} {"Sci. Comput. Program."}
    596 
    597 MACRO {sicomp} {"SIAM J. Comput."}
    598 
    599 MACRO {tocs} {"ACM Trans. Comput. Syst."}
    600 
    601 MACRO {tods} {"ACM Trans. Database Syst."}
    602 
    603 MACRO {tog} {"ACM Trans. Graphic."}
    604 
    605 MACRO {toms} {"ACM Trans. Math. Software"}
    606 
    607 MACRO {toois} {"ACM Trans. Office Inf. Syst."}
    608 
    609 MACRO {toplas} {"ACM Trans. Progr. Lang. Syst."}
    610 
    611 MACRO {tcs} {"Theor. Comput. Sci."}
    612 
    613 FUNCTION {bibinfo.check}
    614 { swap$
    615   duplicate$ missing$
    616     {
    617       pop$ pop$
    618       ""
    619     }
    620     { duplicate$ empty$
    621         {
    622           swap$ pop$
    623         }
    624         { swap$
    625           pop$
    626         }
    627       if$
    628     }
    629   if$
    630 }
    631 FUNCTION {bibinfo.warn}
    632 { swap$
    633   duplicate$ missing$
    634     {
    635       swap$ "missing " swap$ * " in " * cite$ * warning$ pop$
    636       ""
    637     }
    638     { duplicate$ empty$
    639         {
    640           swap$ "empty " swap$ * " in " * cite$ * warning$
    641         }
    642         { swap$
    643           pop$
    644         }
    645       if$
    646     }
    647   if$
    648 }
    649 INTEGERS { nameptr namesleft numnames }
    650 
    651 
    652 STRINGS  { bibinfo}
    653 
    654 FUNCTION {format.names}
    655 { 'bibinfo :=
    656   duplicate$ empty$ 'skip$ {
    657   's :=
    658   "" 't :=
    659   #1 'nameptr :=
    660   s num.names$ 'numnames :=
    661   numnames 'namesleft :=
    662     { namesleft #0 > }
    663     { s nameptr
    664       duplicate$ #1 >
    665         { "{f.~}{vv~}{ll}{, jj}" }
    666         { "{vv~}{ll}{, f.}{, jj}" }
    667       if$
    668       format.name$
    669       bibinfo bibinfo.check
    670       't :=
    671       nameptr #1 >
    672         {
    673           namesleft #1 >
    674             { ", " * t * }
    675             {
    676               s nameptr "{ll}" format.name$ duplicate$ "others" =
    677                 { 't := }
    678                 { pop$ }
    679               if$
    680               "," *
    681               t "others" =
    682                 {
    683                   " " * bbl.etal *
    684                 }
    685                 {
    686                   bbl.and
    687                   space.word * t *
    688                 }
    689               if$
    690             }
    691           if$
    692         }
    693         't
    694       if$
    695       nameptr #1 + 'nameptr :=
    696       namesleft #1 - 'namesleft :=
    697     }
    698   while$
    699   } if$
    700 }
    701 FUNCTION {format.names.ed}
    702 {
    703   'bibinfo :=
    704   duplicate$ empty$ 'skip$ {
    705   's :=
    706   "" 't :=
    707   #1 'nameptr :=
    708   s num.names$ 'numnames :=
    709   numnames 'namesleft :=
    710     { namesleft #0 > }
    711     { s nameptr
    712       "{f.~}{vv~}{ll}{, jj}"
    713       format.name$
    714       bibinfo bibinfo.check
    715       't :=
    716       nameptr #1 >
    717         {
    718           namesleft #1 >
    719             { ", " * t * }
    720             {
    721               s nameptr "{ll}" format.name$ duplicate$ "others" =
    722                 { 't := }
    723                 { pop$ }
    724               if$
    725               numnames #2 >
    726                 { "," * }
    727                 'skip$
    728               if$
    729               t "others" =
    730                 {
    731 
    732                   " " * bbl.etal *
    733                 }
    734                 {
    735                   bbl.and
    736                   space.word * t *
    737                 }
    738               if$
    739             }
    740           if$
    741         }
    742         't
    743       if$
    744       nameptr #1 + 'nameptr :=
    745       namesleft #1 - 'namesleft :=
    746     }
    747   while$
    748   } if$
    749 }
    750 FUNCTION {format.key}
    751 { empty$
    752     { key field.or.null }
    753     { "" }
    754   if$
    755 }
    756 
    757 FUNCTION {format.authors}
    758 { author "author" format.names
    759 }
    760 FUNCTION {get.bbl.editor}
    761 { editor num.names$ #1 > 'bbl.editors 'bbl.editor if$ }
    762 
    763 FUNCTION {format.editors}
    764 { editor "editor" format.names duplicate$ empty$ 'skip$
    765     {
    766       " " *
    767       get.bbl.editor
    768       capitalize
    769    "(" swap$ * ")" *
    770       *
    771     }
    772   if$
    773 }
    774 FUNCTION {format.book.pages}
    775 { pages "pages" bibinfo.check
    776   duplicate$ empty$ 'skip$
    777     { " " * bbl.pages * }
    778   if$
    779 }
    780 FUNCTION {format.doi}
    781 { doi empty$
    782     { "" }
    783     {
    784       "\doi{" doi * "}" *
    785     }
    786   if$
    787 }
    788 FUNCTION {format.note}
    789 {
    790  note empty$
    791     { "" }
    792     { note #1 #1 substring$
    793       duplicate$ "{" =
    794         'skip$
    795         { output.state mid.sentence =
    796           { "l" }
    797           { "u" }
    798         if$
    799         change.case$
    800         }
    801       if$
    802       note #2 global.max$ substring$ * "note" bibinfo.check
    803     }
    804   if$
    805 }
    806 
    807 FUNCTION {format.title}
    808 { title
    809   duplicate$ empty$ 'skip$
    810     { "t" change.case$ }
    811   if$
    812   "title" bibinfo.check
    813 }
    814 FUNCTION {format.full.names}
    815 {'s :=
    816  "" 't :=
    817   #1 'nameptr :=
    818   s num.names$ 'numnames :=
    819   numnames 'namesleft :=
    820     { namesleft #0 > }
    821     { s nameptr
    822       "{vv~}{ll}" format.name$
    823       't :=
    824       nameptr #1 >
    825         {
    826           namesleft #1 >
    827             { ", " * t * }
    828             {
    829               s nameptr "{ll}" format.name$ duplicate$ "others" =
    830                 { 't := }
    831                 { pop$ }
    832               if$
    833               t "others" =
    834                 {
    835                   " " * bbl.etal *
    836                   cite.name.font
    837                 }
    838                 {
    839                   numnames #2 >
    840                     { "," * }
    841                     'skip$
    842                   if$
    843                   bbl.and
    844                   space.word * t *
    845                 }
    846               if$
    847             }
    848           if$
    849         }
    850         't
    851       if$
    852       nameptr #1 + 'nameptr :=
    853       namesleft #1 - 'namesleft :=
    854     }
    855   while$
    856   t "others" =
    857     'skip$
    858     { cite.name.font }
    859   if$
    860 }
    861 
    862 FUNCTION {author.editor.key.full}
    863 { author empty$
    864     { editor empty$
    865         { key empty$
    866             { cite$ #1 #3 substring$ }
    867             'key
    868           if$
    869         }
    870         { editor format.full.names }
    871       if$
    872     }
    873     { author format.full.names }
    874   if$
    875 }
    876 
    877 FUNCTION {author.key.full}
    878 { author empty$
    879     { key empty$
    880          { cite$ #1 #3 substring$ }
    881           'key
    882       if$
    883     }
    884     { author format.full.names }
    885   if$
    886 }
    887 
    888 FUNCTION {editor.key.full}
    889 { editor empty$
    890     { key empty$
    891          { cite$ #1 #3 substring$ }
    892           'key
    893       if$
    894     }
    895     { editor format.full.names }
    896   if$
    897 }
    898 
    899 FUNCTION {make.full.names}
    900 { type$ "book" =
    901   type$ "inbook" =
    902   or
    903     'author.editor.key.full
    904     { type$ "proceedings" =
    905         'editor.key.full
    906         'author.key.full
    907       if$
    908     }
    909   if$
    910 }
    911 
    912 FUNCTION {output.bibitem}
    913 { newline$
    914   "\bibitem[{" write$
    915   label write$
    916   ")" make.full.names duplicate$ short.list =
    917      { pop$ }
    918      { * }
    919    if$
    920   "}]{" * write$
    921   cite$ write$
    922   "}" write$
    923   newline$
    924   ""
    925   before.all 'output.state :=
    926 }
    927 
    928 FUNCTION {if.digit}
    929 { duplicate$ "0" =
    930   swap$ duplicate$ "1" =
    931   swap$ duplicate$ "2" =
    932   swap$ duplicate$ "3" =
    933   swap$ duplicate$ "4" =
    934   swap$ duplicate$ "5" =
    935   swap$ duplicate$ "6" =
    936   swap$ duplicate$ "7" =
    937   swap$ duplicate$ "8" =
    938   swap$ "9" = or or or or or or or or or
    939 }
    940 FUNCTION {n.separate}
    941 { 't :=
    942   ""
    943   #0 'numnames :=
    944   { t empty$ not }
    945   { t #-1 #1 substring$ if.digit
    946       { numnames #1 + 'numnames := }
    947       { #0 'numnames := }
    948     if$
    949     t #-1 #1 substring$ swap$ *
    950     t #-2 global.max$ substring$ 't :=
    951     numnames #5 =
    952       { duplicate$ #1 #2 substring$ swap$
    953         #3 global.max$ substring$
    954         "," swap$ * *
    955       }
    956       'skip$
    957     if$
    958   }
    959   while$
    960 }
    961 FUNCTION {n.dashify}
    962 {
    963   n.separate
    964   't :=
    965   ""
    966     { t empty$ not }
    967     { t #1 #1 substring$ "-" =
    968         { t #1 #2 substring$ "--" = not
    969             { "--" *
    970               t #2 global.max$ substring$ 't :=
    971             }
    972             {   { t #1 #1 substring$ "-" = }
    973                 { "-" *
    974                   t #2 global.max$ substring$ 't :=
    975                 }
    976               while$
    977             }
    978           if$
    979         }
    980         { t #1 #1 substring$ *
    981           t #2 global.max$ substring$ 't :=
    982         }
    983       if$
    984     }
    985   while$
    986 }
    987 
    988 FUNCTION {word.in}
    989 { bbl.in
    990   " " * }
    991 
    992 FUNCTION {format.date}
    993 { year "year" bibinfo.check duplicate$ empty$
    994     {
    995     }
    996     'skip$
    997   if$
    998   extra.label *
    999   before.all 'output.state :=
   1000   " (" swap$ * ")" *
   1001 }
   1002 FUNCTION {format.btitle}
   1003 { title "title" bibinfo.check
   1004   duplicate$ empty$ 'skip$
   1005     {
   1006       emphasize
   1007     }
   1008   if$
   1009 }
   1010 FUNCTION {either.or.check}
   1011 { empty$
   1012     'pop$
   1013     { "can't use both " swap$ * " fields in " * cite$ * warning$ }
   1014   if$
   1015 }
   1016 FUNCTION {format.bvolume}
   1017 { volume empty$
   1018     { "" }
   1019     { bbl.volume volume tie.or.space.prefix
   1020       "volume" bibinfo.check * *
   1021       series "series" bibinfo.check
   1022       duplicate$ empty$ 'pop$
   1023         { emphasize ", " * swap$ * }
   1024       if$
   1025       "volume and number" number either.or.check
   1026     }
   1027   if$
   1028 }
   1029 FUNCTION {format.number.series}
   1030 { volume empty$
   1031     { number empty$
   1032         { series field.or.null }
   1033         { series empty$
   1034             { number "number" bibinfo.check }
   1035             { output.state mid.sentence =
   1036                 { bbl.number }
   1037                 { bbl.number capitalize }
   1038               if$
   1039               number tie.or.space.prefix "number" bibinfo.check * *
   1040               bbl.in space.word *
   1041               series "series" bibinfo.check *
   1042             }
   1043           if$
   1044         }
   1045       if$
   1046     }
   1047     { "" }
   1048   if$
   1049 }
   1050 
   1051 FUNCTION {format.edition}
   1052 { edition duplicate$ empty$ 'skip$
   1053     {
   1054       output.state mid.sentence =
   1055         { "l" }
   1056         { "t" }
   1057       if$ change.case$
   1058       "edition" bibinfo.check
   1059       " " * bbl.edition *
   1060     }
   1061   if$
   1062 }
   1063 INTEGERS { multiresult }
   1064 FUNCTION {multi.page.check}
   1065 { 't :=
   1066   #0 'multiresult :=
   1067     { multiresult not
   1068       t empty$ not
   1069       and
   1070     }
   1071     { t #1 #1 substring$
   1072       duplicate$ "-" =
   1073       swap$ duplicate$ "," =
   1074       swap$ "+" =
   1075       or or
   1076         { #1 'multiresult := }
   1077         { t #2 global.max$ substring$ 't := }
   1078       if$
   1079     }
   1080   while$
   1081   multiresult
   1082 }
   1083 FUNCTION {format.pages}
   1084 { pages duplicate$ empty$ 'skip$
   1085     { duplicate$ multi.page.check
   1086         {
   1087           bbl.pages swap$
   1088           n.dashify
   1089         }
   1090         {
   1091           bbl.page swap$
   1092         }
   1093       if$
   1094       tie.or.space.prefix
   1095       "pages" bibinfo.check
   1096       * *
   1097     }
   1098   if$
   1099 }
   1100 FUNCTION {format.journal.pages}
   1101 { pages duplicate$ empty$ 'pop$
   1102     { swap$ duplicate$ empty$
   1103         { pop$ pop$ format.pages }
   1104         {
   1105           ", " *
   1106           swap$
   1107           n.dashify
   1108           "pages" bibinfo.check
   1109           *
   1110         }
   1111       if$
   1112     }
   1113   if$
   1114 }
   1115 FUNCTION {format.journal.eid}
   1116 { eid "eid" bibinfo.check
   1117   duplicate$ empty$ 'pop$
   1118     { swap$ duplicate$ empty$ 'skip$
   1119       {
   1120           ", " *
   1121       }
   1122       if$
   1123       swap$ *
   1124     }
   1125   if$
   1126 }
   1127 FUNCTION {format.vol.num.pages}
   1128 { volume field.or.null
   1129   duplicate$ empty$ 'skip$
   1130     {
   1131       "volume" bibinfo.check
   1132     }
   1133   if$
   1134   emphasize
   1135   number "number" bibinfo.check duplicate$ empty$ 'skip$
   1136     {
   1137       swap$ duplicate$ empty$
   1138         { "there's a number but no volume in " cite$ * warning$ }
   1139         'skip$
   1140       if$
   1141       swap$
   1142       "(" swap$ * ")" *
   1143     }
   1144   if$ *
   1145   eid empty$
   1146     { format.journal.pages }
   1147     { format.journal.eid }
   1148   if$
   1149 }
   1150 
   1151 FUNCTION {format.chapter.pages}
   1152 { chapter empty$
   1153     'format.pages
   1154     { type empty$
   1155         { bbl.chapter }
   1156         { type "l" change.case$
   1157           "type" bibinfo.check
   1158         }
   1159       if$
   1160       chapter tie.or.space.prefix
   1161       "chapter" bibinfo.check
   1162       * *
   1163       pages empty$
   1164         'skip$
   1165         { ", " * format.pages * }
   1166       if$
   1167     }
   1168   if$
   1169 }
   1170 
   1171 FUNCTION {format.booktitle}
   1172 {
   1173   booktitle "booktitle" bibinfo.check
   1174   emphasize
   1175 }
   1176 FUNCTION {format.in.ed.booktitle}
   1177 { format.booktitle duplicate$ empty$ 'skip$
   1178     {
   1179       format.bvolume duplicate$ empty$ 'pop$
   1180         { ", " swap$ * * }
   1181       if$
   1182       editor "editor" format.names.ed duplicate$ empty$ 'pop$
   1183         {
   1184           bbl.edby
   1185           " " * swap$ *
   1186           swap$
   1187           "," *
   1188           " " * swap$
   1189           * }
   1190       if$
   1191       word.in swap$ *
   1192     }
   1193   if$
   1194 }
   1195 FUNCTION {format.thesis.type}
   1196 { type duplicate$ empty$
   1197     'pop$
   1198     { swap$ pop$
   1199       "t" change.case$ "type" bibinfo.check
   1200     }
   1201   if$
   1202 }
   1203 FUNCTION {format.tr.number}
   1204 { number "number" bibinfo.check
   1205   type duplicate$ empty$
   1206     { pop$ bbl.techrep }
   1207     'skip$
   1208   if$
   1209   "type" bibinfo.check
   1210   swap$ duplicate$ empty$
   1211     { pop$ "t" change.case$ }
   1212     { tie.or.space.prefix * * }
   1213   if$
   1214 }
   1215 FUNCTION {format.article.crossref}
   1216 {
   1217   word.in
   1218   " \cite{" * crossref * "}" *
   1219 }
   1220 FUNCTION {format.book.crossref}
   1221 { volume duplicate$ empty$
   1222     { "empty volume in " cite$ * "'s crossref of " * crossref * warning$
   1223       pop$ word.in
   1224     }
   1225     { bbl.volume
   1226       swap$ tie.or.space.prefix "volume" bibinfo.check * * bbl.of space.word *
   1227     }
   1228   if$
   1229   " \cite{" * crossref * "}" *
   1230 }
   1231 FUNCTION {format.incoll.inproc.crossref}
   1232 {
   1233   word.in
   1234   " \cite{" * crossref * "}" *
   1235 }
   1236 FUNCTION {format.org.or.pub}
   1237 { 't :=
   1238   ""
   1239   address empty$ t empty$ and
   1240     'skip$
   1241     {
   1242       t empty$
   1243         { address "address" bibinfo.check *
   1244         }
   1245         { t *
   1246           address empty$
   1247             'skip$
   1248             { ", " * address "address" bibinfo.check * }
   1249           if$
   1250         }
   1251       if$
   1252     }
   1253   if$
   1254 }
   1255 FUNCTION {format.publisher.address}
   1256 { publisher "publisher" bibinfo.warn format.org.or.pub
   1257 }
   1258 
   1259 FUNCTION {format.organization.address}
   1260 { organization "organization" bibinfo.check format.org.or.pub
   1261 }
   1262 
   1263 FUNCTION {article}
   1264 { output.bibitem
   1265   format.authors "author" output.check
   1266   author format.key output
   1267   format.date "year" output.check
   1268   date.block
   1269   format.title "title" output.check
   1270   crossref missing$
   1271     {
   1272       journal
   1273       "journal" bibinfo.check
   1274       emphasize
   1275       "journal" output.check
   1276       format.vol.num.pages output
   1277   format.doi output
   1278     }
   1279     { format.article.crossref output.nonnull
   1280       format.pages output
   1281     }
   1282   if$
   1283   format.note output
   1284   fin.entry
   1285 }
   1286 FUNCTION {book}
   1287 { output.bibitem
   1288   author empty$
   1289     { format.editors "author and editor" output.check
   1290       editor format.key output
   1291     }
   1292     { format.authors output.nonnull
   1293       crossref missing$
   1294         { "author and editor" editor either.or.check }
   1295         'skip$
   1296       if$
   1297     }
   1298   if$
   1299   format.date "year" output.check
   1300   date.block
   1301   format.btitle "title" output.check
   1302   crossref missing$
   1303     { format.bvolume output
   1304       format.number.series output
   1305       format.edition output
   1306       format.book.pages output
   1307       format.publisher.address output
   1308     }
   1309     {
   1310       format.book.crossref output.nonnull
   1311     }
   1312   if$
   1313   format.doi output
   1314   format.note output
   1315   fin.entry
   1316 }
   1317 FUNCTION {booklet}
   1318 { output.bibitem
   1319   format.authors output
   1320   author format.key output
   1321   format.date "year" output.check
   1322   date.block
   1323   format.title "title" output.check
   1324   howpublished "howpublished" bibinfo.check output
   1325   address "address" bibinfo.check output
   1326   format.book.pages output
   1327   format.doi output
   1328   format.note output
   1329   fin.entry
   1330 }
   1331 
   1332 FUNCTION {inbook}
   1333 { output.bibitem
   1334   author empty$
   1335     { format.editors "author and editor" output.check
   1336       editor format.key output
   1337     }
   1338     { format.authors output.nonnull
   1339       crossref missing$
   1340         { "author and editor" editor either.or.check }
   1341         'skip$
   1342       if$
   1343     }
   1344   if$
   1345   format.date "year" output.check
   1346   date.block
   1347   format.btitle "title" output.check
   1348   crossref missing$
   1349     {
   1350       format.bvolume output
   1351       format.chapter.pages "chapter and pages" output.check
   1352       format.number.series output
   1353       format.edition output
   1354       format.publisher.address output
   1355     }
   1356     {
   1357       format.chapter.pages "chapter and pages" output.check
   1358       format.book.crossref output.nonnull
   1359     }
   1360   if$
   1361   format.doi output
   1362   format.note output
   1363   fin.entry
   1364 }
   1365 
   1366 FUNCTION {incollection}
   1367 { output.bibitem
   1368   format.authors "author" output.check
   1369   author format.key output
   1370   format.date "year" output.check
   1371   date.block
   1372   format.title "title" output.check
   1373   crossref missing$
   1374     { format.in.ed.booktitle "booktitle" output.check
   1375       format.number.series output
   1376       format.edition output
   1377       format.chapter.pages output
   1378       format.publisher.address output
   1379     }
   1380     { format.incoll.inproc.crossref output.nonnull
   1381       format.chapter.pages output
   1382     }
   1383   if$
   1384   format.doi output
   1385   format.note output
   1386   fin.entry
   1387 }
   1388 FUNCTION {inproceedings}
   1389 { output.bibitem
   1390   format.authors "author" output.check
   1391   author format.key output
   1392   format.date "year" output.check
   1393   date.block
   1394   format.title "title" output.check
   1395   crossref missing$
   1396     { format.in.ed.booktitle "booktitle" output.check
   1397       format.number.series output
   1398       format.pages output
   1399       publisher empty$
   1400         { format.organization.address output }
   1401         { organization "organization" bibinfo.check output
   1402           format.publisher.address output
   1403         }
   1404       if$
   1405     }
   1406     { format.incoll.inproc.crossref output.nonnull
   1407       format.pages output
   1408     }
   1409   if$
   1410   format.doi output
   1411   format.note output
   1412   fin.entry
   1413 }
   1414 FUNCTION {conference} { inproceedings }
   1415 FUNCTION {manual}
   1416 { output.bibitem
   1417   format.authors output
   1418   author format.key output
   1419   format.date "year" output.check
   1420   date.block
   1421   format.btitle "title" output.check
   1422   organization "organization" bibinfo.check output
   1423   address "address" bibinfo.check output
   1424   format.edition output
   1425   format.doi output
   1426   format.note output
   1427   fin.entry
   1428 }
   1429 
   1430 FUNCTION {mastersthesis}
   1431 { output.bibitem
   1432   format.authors "author" output.check
   1433   author format.key output
   1434   format.date "year" output.check
   1435   date.block
   1436   format.title
   1437   "title" output.check
   1438   bbl.mthesis format.thesis.type output.nonnull
   1439   school "school" bibinfo.warn output
   1440   address "address" bibinfo.check output
   1441   format.doi output
   1442   format.note output
   1443   fin.entry
   1444 }
   1445 
   1446 FUNCTION {misc}
   1447 { output.bibitem
   1448   format.authors output
   1449   author format.key output
   1450   format.date "year" output.check
   1451   date.block
   1452   format.title output
   1453   howpublished "howpublished" bibinfo.check output
   1454   format.doi output
   1455   format.note output
   1456   fin.entry
   1457 }
   1458 FUNCTION {phdthesis}
   1459 { output.bibitem
   1460   format.authors "author" output.check
   1461   author format.key output
   1462   format.date "year" output.check
   1463   date.block
   1464   format.title
   1465   "title" output.check
   1466   bbl.phdthesis format.thesis.type output.nonnull
   1467   school "school" bibinfo.warn output
   1468   address "address" bibinfo.check output
   1469   format.doi output
   1470   format.note output
   1471   fin.entry
   1472 }
   1473 
   1474 FUNCTION {proceedings}
   1475 { output.bibitem
   1476   format.editors output
   1477   editor format.key output
   1478   format.date "year" output.check
   1479   date.block
   1480   format.btitle "title" output.check
   1481   format.bvolume output
   1482   format.number.series output
   1483   publisher empty$
   1484     { format.organization.address output }
   1485     { organization "organization" bibinfo.check output
   1486       format.publisher.address output
   1487     }
   1488   if$
   1489   format.doi output
   1490   format.note output
   1491   fin.entry
   1492 }
   1493 
   1494 FUNCTION {techreport}
   1495 { output.bibitem
   1496   format.authors "author" output.check
   1497   author format.key output
   1498   format.date "year" output.check
   1499   date.block
   1500   format.title
   1501   "title" output.check
   1502   format.tr.number emphasize output.nonnull
   1503   institution "institution" bibinfo.warn output
   1504   address "address" bibinfo.check output
   1505   format.doi output
   1506   format.note output
   1507   fin.entry
   1508 }
   1509 
   1510 FUNCTION {unpublished}
   1511 { output.bibitem
   1512   format.authors "author" output.check
   1513   author format.key output
   1514   format.date "year" output.check
   1515   date.block
   1516   format.title "title" output.check
   1517   format.doi output
   1518   format.note "note" output.check
   1519   fin.entry
   1520 }
   1521 
   1522 FUNCTION {default.type} { misc }
   1523 READ
   1524 FUNCTION {sortify}
   1525 { purify$
   1526   "l" change.case$
   1527 }
   1528 INTEGERS { len }
   1529 FUNCTION {chop.word}
   1530 { 's :=
   1531   'len :=
   1532   s #1 len substring$ =
   1533     { s len #1 + global.max$ substring$ }
   1534     's
   1535   if$
   1536 }
   1537 FUNCTION {format.lab.names}
   1538 { 's :=
   1539   "" 't :=
   1540   s #1 "{vv~}{ll}" format.name$
   1541   s num.names$ duplicate$
   1542   #2 >
   1543     { pop$
   1544       " " * bbl.etal *
   1545       cite.name.font
   1546       "others" 't :=
   1547     }
   1548     { #2 <
   1549         'skip$
   1550         { s #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" =
   1551             {
   1552               " " * bbl.etal *
   1553               cite.name.font
   1554               "others" 't :=
   1555             }
   1556             { bbl.and space.word * s #2 "{vv~}{ll}" format.name$
   1557               * }
   1558           if$
   1559         }
   1560       if$
   1561     }
   1562   if$
   1563   t "others" =
   1564     'skip$
   1565     { cite.name.font }
   1566   if$
   1567 }
   1568 
   1569 FUNCTION {author.key.label}
   1570 { author empty$
   1571     { key empty$
   1572         { cite$ #1 #3 substring$ }
   1573         'key
   1574       if$
   1575     }
   1576     { author format.lab.names }
   1577   if$
   1578 }
   1579 
   1580 FUNCTION {author.editor.key.label}
   1581 { author empty$
   1582     { editor empty$
   1583         { key empty$
   1584             { cite$ #1 #3 substring$ }
   1585             'key
   1586           if$
   1587         }
   1588         { editor format.lab.names }
   1589       if$
   1590     }
   1591     { author format.lab.names }
   1592   if$
   1593 }
   1594 
   1595 FUNCTION {editor.key.label}
   1596 { editor empty$
   1597     { key empty$
   1598         { cite$ #1 #3 substring$ }
   1599         'key
   1600       if$
   1601     }
   1602     { editor format.lab.names }
   1603   if$
   1604 }
   1605 
   1606 FUNCTION {calc.short.authors}
   1607 { type$ "book" =
   1608   type$ "inbook" =
   1609   or
   1610     'author.editor.key.label
   1611     { type$ "proceedings" =
   1612         'editor.key.label
   1613         'author.key.label
   1614       if$
   1615     }
   1616   if$
   1617   'short.list :=
   1618 }
   1619 
   1620 FUNCTION {calc.label}
   1621 { calc.short.authors
   1622   short.list
   1623   "("
   1624   *
   1625   year duplicate$ empty$
   1626   short.list key field.or.null = or
   1627      { pop$ "" }
   1628      'skip$
   1629   if$
   1630   *
   1631   'label :=
   1632 }
   1633 
   1634 FUNCTION {sort.format.names}
   1635 { 's :=
   1636   #1 'nameptr :=
   1637   ""
   1638   s num.names$ 'numnames :=
   1639   numnames 'namesleft :=
   1640     { namesleft #0 > }
   1641     { s nameptr
   1642       "{vv{ } }{ll{ }}{  f{ }}{  jj{ }}"
   1643       format.name$ 't :=
   1644       nameptr #1 >
   1645         {
   1646           "   "  *
   1647           namesleft #1 = t "others" = and
   1648             { "zzzzz" 't := }
   1649             'skip$
   1650           if$
   1651           numnames #2 > nameptr #2 = and
   1652             { "zz" * year field.or.null * "   " *
   1653               #1 'namesleft :=
   1654             }
   1655             { t sortify * }
   1656           if$
   1657         }
   1658         { t sortify * }
   1659       if$
   1660       nameptr #1 + 'nameptr :=
   1661       namesleft #1 - 'namesleft :=
   1662     }
   1663   while$
   1664 }
   1665 
   1666 FUNCTION {sort.format.title}
   1667 { 't :=
   1668   "A " #2
   1669     "An " #3
   1670       "The " #4 t chop.word
   1671     chop.word
   1672   chop.word
   1673   sortify
   1674   #1 global.max$ substring$
   1675 }
   1676 FUNCTION {author.sort}
   1677 { author empty$
   1678     { key empty$
   1679         { "to sort, need author or key in " cite$ * warning$
   1680           ""
   1681         }
   1682         { key sortify }
   1683       if$
   1684     }
   1685     { author sort.format.names }
   1686   if$
   1687 }
   1688 FUNCTION {author.editor.sort}
   1689 { author empty$
   1690     { editor empty$
   1691         { key empty$
   1692             { "to sort, need author, editor, or key in " cite$ * warning$
   1693               ""
   1694             }
   1695             { key sortify }
   1696           if$
   1697         }
   1698         { editor sort.format.names }
   1699       if$
   1700     }
   1701     { author sort.format.names }
   1702   if$
   1703 }
   1704 FUNCTION {editor.sort}
   1705 { editor empty$
   1706     { key empty$
   1707         { "to sort, need editor or key in " cite$ * warning$
   1708           ""
   1709         }
   1710         { key sortify }
   1711       if$
   1712     }
   1713     { editor sort.format.names }
   1714   if$
   1715 }
   1716 FUNCTION {presort}
   1717 { calc.label
   1718   label sortify
   1719   "    "
   1720   *
   1721   type$ "book" =
   1722   type$ "inbook" =
   1723   or
   1724     'author.editor.sort
   1725     { type$ "proceedings" =
   1726         'editor.sort
   1727         'author.sort
   1728       if$
   1729     }
   1730   if$
   1731   #1 entry.max$ substring$
   1732   'sort.label :=
   1733   sort.label
   1734   *
   1735   #1 entry.max$ substring$
   1736   'sort.key$ :=
   1737 }
   1738 
   1739 ITERATE {presort}
   1740 SORT
   1741 STRINGS { last.label next.extra }
   1742 INTEGERS { last.extra.num last.extra.num.extended last.extra.num.blank number.label }
   1743 FUNCTION {initialize.extra.label.stuff}
   1744 { #0 int.to.chr$ 'last.label :=
   1745   "" 'next.extra :=
   1746   #0 'last.extra.num :=
   1747   "a" chr.to.int$ #1 - 'last.extra.num.blank :=
   1748   last.extra.num.blank 'last.extra.num.extended :=
   1749   #0 'number.label :=
   1750 }
   1751 FUNCTION {forward.pass}
   1752 { last.label label =
   1753     { last.extra.num #1 + 'last.extra.num :=
   1754       last.extra.num "z" chr.to.int$ >
   1755        { "a" chr.to.int$ 'last.extra.num :=
   1756          last.extra.num.extended #1 + 'last.extra.num.extended :=
   1757        }
   1758        'skip$
   1759       if$
   1760       last.extra.num.extended last.extra.num.blank >
   1761         { last.extra.num.extended int.to.chr$
   1762           last.extra.num int.to.chr$
   1763           * 'extra.label := }
   1764         { last.extra.num int.to.chr$ 'extra.label := }
   1765       if$
   1766     }
   1767     { "a" chr.to.int$ 'last.extra.num :=
   1768       "" 'extra.label :=
   1769       label 'last.label :=
   1770     }
   1771   if$
   1772   number.label #1 + 'number.label :=
   1773 }
   1774 FUNCTION {reverse.pass}
   1775 { next.extra "b" =
   1776     { "a" 'extra.label := }
   1777     'skip$
   1778   if$
   1779   extra.label 'next.extra :=
   1780   extra.label
   1781   duplicate$ empty$
   1782     'skip$
   1783     { "{\natexlab{" swap$ * "}}" * }
   1784   if$
   1785   'extra.label :=
   1786   label extra.label * 'label :=
   1787 }
   1788 EXECUTE {initialize.extra.label.stuff}
   1789 ITERATE {forward.pass}
   1790 REVERSE {reverse.pass}
   1791 FUNCTION {bib.sort.order}
   1792 { sort.label
   1793   "    "
   1794   *
   1795   year field.or.null sortify
   1796   *
   1797   #1 entry.max$ substring$
   1798   'sort.key$ :=
   1799 }
   1800 ITERATE {bib.sort.order}
   1801 SORT
   1802 FUNCTION {begin.bib}
   1803 { preamble$ empty$
   1804     'skip$
   1805     { preamble$ write$ newline$ }
   1806   if$
   1807   "\begin{thebibliography}{" number.label int.to.str$ * "}" *
   1808   write$ newline$
   1809   "\providecommand{\natexlab}[1]{#1}"
   1810   write$ newline$
   1811   "\expandafter\ifx\csname urlstyle\endcsname\relax"
   1812   write$ newline$
   1813   "  \providecommand{\doi}[1]{doi:\discretionary{}{}{}#1}\else"
   1814   write$ newline$
   1815   "  \providecommand{\doi}{doi:\discretionary{}{}{}\begingroup \urlstyle{rm}\Url}\fi"
   1816   write$ newline$
   1817 }
   1818 EXECUTE {begin.bib}
   1819 EXECUTE {init.state.consts}
   1820 ITERATE {call.type$}
   1821 FUNCTION {end.bib}
   1822 { newline$
   1823   "\end{thebibliography}" write$ newline$
   1824 }
   1825 EXECUTE {end.bib}
   1826 %% End of customized bst file
   1827 %%
   1828 %% End of file `agufull08.bst'.