the mpi publication, finally!
[lectures/latex.git] / bibdb / apsrev-nourl.bst
1 %%
2 %% This is file `apsrev.bst',
3 %% generated with the docstrip utility.
4 %%
5 %% The original source files were:
6 %%
7 %% merlin.mbs  (with options: `head,ay,nat,seq-no,nm-init,ed-au,nmlm,x10,x0,m10,m0,nmft,nmft-def,fnm-def,nmfted,lab,lab-def,keyxyr,yr-par,note-yr,tit-it,jtit-x,jttl-rm,thtit-x,trtit-x,vol-bf,vnum-x,volp-com,jpg-1,num-xser,jnm-x,pub-date,pre-pub,isbn,issn,edby,blk-com,pp,ed,abr,ednx,ord,jabr,revdata,eprint,url,url-blk,misc-simple,bibinfo,nfss,{}')
8 %% physjour.mbs  (with options: `ay,nat,seq-no,nm-init,ed-au,nmlm,x10,x0,m10,m0,nmft,nmft-def,fnm-def,nmfted,lab,lab-def,keyxyr,yr-par,note-yr,tit-it,jtit-x,jttl-rm,thtit-x,trtit-x,vol-bf,vnum-x,volp-com,jpg-1,num-xser,jnm-x,pub-date,pre-pub,isbn,issn,edby,blk-com,pp,ed,abr,ednx,ord,jabr,revdata,eprint,url,url-blk,misc-simple,bibinfo,nfss,{}')
9 %% geojour.mbs  (with options: `ay,nat,seq-no,nm-init,ed-au,nmlm,x10,x0,m10,m0,nmft,nmft-def,fnm-def,nmfted,lab,lab-def,keyxyr,yr-par,note-yr,tit-it,jtit-x,jttl-rm,thtit-x,trtit-x,vol-bf,vnum-x,volp-com,jpg-1,num-xser,jnm-x,pub-date,pre-pub,isbn,issn,edby,blk-com,pp,ed,abr,ednx,ord,jabr,revdata,eprint,url,url-blk,misc-simple,bibinfo,nfss,{}')
10 %% photjour.mbs  (with options: `ay,nat,seq-no,nm-init,ed-au,nmlm,x10,x0,m10,m0,nmft,nmft-def,fnm-def,nmfted,lab,lab-def,keyxyr,yr-par,note-yr,tit-it,jtit-x,jttl-rm,thtit-x,trtit-x,vol-bf,vnum-x,volp-com,jpg-1,num-xser,jnm-x,pub-date,pre-pub,isbn,issn,edby,blk-com,pp,ed,abr,ednx,ord,jabr,revdata,eprint,url,url-blk,misc-simple,bibinfo,nfss,{}')
11 %% merlin.mbs  (with options: `tail,ay,nat,seq-no,nm-init,ed-au,nmlm,x10,x0,m10,m0,nmft,nmft-def,fnm-def,nmfted,lab,lab-def,keyxyr,yr-par,note-yr,tit-it,jtit-x,jttl-rm,thtit-x,trtit-x,vol-bf,vnum-x,volp-com,jpg-1,num-xser,jnm-x,pub-date,pre-pub,isbn,issn,edby,blk-com,pp,ed,abr,ednx,ord,jabr,revdata,eprint,url,url-blk,misc-simple,bibinfo,nfss,{}')
12 %% ----------------------------------------
13 %% *** REVTeX-compatible apsrev.bst 1702 ***
14 %% 
15 %% Copyright 1994-2000 Patrick W Daly
16  % ===============================================================
17  % IMPORTANT NOTICE:
18  % This bibliographic style (bst) file has been generated from one or
19  % more master bibliographic style (mbs) files, listed above.
20  %
21  % This generated file can be redistributed and/or modified under the terms
22  % of the LaTeX Project Public License Distributed from CTAN
23  % archives in directory macros/latex/base/lppl.txt; either
24  % version 1 of the License, or any later version.
25  % ===============================================================
26  % Name and version information of the main mbs file:
27  % \ProvidesFile{merlin.mbs}[2000/05/04 4.01 (PWD, AO, DPC)]
28  %   For use with BibTeX version 0.99a or later
29  %-------------------------------------------------------------------
30  % This bibliography style file is intended for texts in ENGLISH
31  % This is an author-year citation style bibliography. As such, it is
32  % non-standard LaTeX, and requires a special package file to function properly.
33  % Such a package is    natbib.sty   by Patrick W. Daly
34  % The form of the \bibitem entries is
35  %   \bibitem[Jones et al.(1990)]{key}...
36  %   \bibitem[Jones et al.(1990)Jones, Baker, and Smith]{key}...
37  % The essential feature is that the label (the part in brackets) consists
38  % of the author names, as they should appear in the citation, with the year
39  % in parentheses following. There must be no space before the opening
40  % parenthesis!
41  % With natbib v5.3, a full list of authors may also follow the year.
42  % In natbib.sty, it is possible to define the type of enclosures that is
43  % really wanted (brackets or parentheses), but in either case, there must
44  % be parentheses in the label.
45  % The \cite command functions as follows:
46  %   \citet{key} ==>>                Jones et al. (1990)
47  %   \citet*{key} ==>>               Jones, Baker, and Smith (1990)
48  %   \citep{key} ==>>                (Jones et al., 1990)
49  %   \citep*{key} ==>>               (Jones, Baker, and Smith, 1990)
50  %   \citep[chap. 2]{key} ==>>       (Jones et al., 1990, chap. 2)
51  %   \citep[e.g.][]{key} ==>>        (e.g. Jones et al., 1990)
52  %   \citep[e.g.][p. 32]{key} ==>>   (e.g. Jones et al., p. 32)
53  %   \citeauthor{key} ==>>           Jones et al.
54  %   \citeauthor*{key} ==>>          Jones, Baker, and Smith
55  %   \citeyear{key} ==>>             1990
56  %---------------------------------------------------------------------
57
58 ENTRY
59   { address
60     archive
61     author
62     booktitle
63     chapter
64     collaboration
65     edition
66     editor
67     eid
68     eprint
69     howpublished
70     institution
71     isbn
72     issn
73     journal
74     key
75     month
76     note
77     number
78     numpages
79     organization
80     pages
81     publisher
82     school
83     series
84     title
85     type
86     url
87     volume
88     year
89   }
90   {}
91   { label extra.label sort.label short.list }
92 INTEGERS { output.state before.all mid.sentence after.sentence after.block }
93 FUNCTION {init.state.consts}
94 { #0 'before.all :=
95   #1 'mid.sentence :=
96   #2 'after.sentence :=
97   #3 'after.block :=
98 }
99 STRINGS { s t}
100 FUNCTION {output.nonnull}
101 { 's :=
102   output.state mid.sentence =
103     { ", " * write$ }
104     { output.state after.block =
105         { add.period$ write$
106           newline$
107           "\newblock " write$
108         }
109         { output.state before.all =
110             'write$
111             { add.period$ " " * write$ }
112           if$
113         }
114       if$
115       mid.sentence 'output.state :=
116     }
117   if$
118   s
119 }
120 FUNCTION {output}
121 { duplicate$ empty$
122     'pop$
123     'output.nonnull
124   if$
125 }
126 FUNCTION {output.check}
127 { 't :=
128   duplicate$ empty$
129     { pop$ "empty " t * " in " * cite$ * warning$ }
130     'output.nonnull
131   if$
132 }
133 FUNCTION {fin.entry}
134 { add.period$
135   write$
136   newline$
137 }
138
139 FUNCTION {new.block}
140 { output.state before.all =
141     'skip$
142     { after.block 'output.state := }
143   if$
144 }
145 FUNCTION {new.sentence}
146 { output.state after.block =
147     'skip$
148     { output.state before.all =
149         'skip$
150         { after.sentence 'output.state := }
151       if$
152     }
153   if$
154 }
155 FUNCTION {add.blank}
156 {  " " * before.all 'output.state :=
157 }
158
159 FUNCTION {date.block}
160 {
161   skip$
162 }
163
164 FUNCTION {not}
165 {   { #0 }
166     { #1 }
167   if$
168 }
169 FUNCTION {and}
170 {   'skip$
171     { pop$ #0 }
172   if$
173 }
174 FUNCTION {or}
175 {   { pop$ #1 }
176     'skip$
177   if$
178 }
179 FUNCTION {new.block.checkb}
180 { empty$
181   swap$ empty$
182   and
183     'skip$
184     'new.block
185   if$
186 }
187 FUNCTION {field.or.null}
188 { duplicate$ empty$
189     { pop$ "" }
190     'skip$
191   if$
192 }
193 FUNCTION {emphasize}
194 { duplicate$ empty$
195     { pop$ "" }
196     { "\emph{" swap$ * "}" * }
197   if$
198 }
199 FUNCTION {bolden}
200 { duplicate$ empty$
201     { pop$ "" }
202     { "\textbf{" swap$ * "}" * }
203   if$
204 }
205 FUNCTION {bib.name.font}
206 { duplicate$ empty$
207   { pop$ "" }
208   { "\bibnamefont{" swap$ * "}" * }
209   if$
210 }
211 FUNCTION {bib.fname.font}
212 { duplicate$ empty$
213   { pop$ "" }
214   { "\bibfnamefont{" swap$ * "}" * }
215   if$
216 }
217 FUNCTION {cite.name.font}
218 { duplicate$ empty$
219   { pop$ "" }
220   { "\citenamefont{" swap$ * "}" * }
221   if$
222 }
223 FUNCTION {tie.or.space.prefix}
224 { duplicate$ text.length$ #3 <
225     { "~" }
226     { " " }
227   if$
228   swap$
229 }
230
231 FUNCTION {capitalize}
232 { "u" change.case$ "t" change.case$ }
233
234 FUNCTION {space.word}
235 { " " swap$ * " " * }
236  % Here are the language-specific definitions for explicit words.
237  % Each function has a name bbl.xxx where xxx is the English word.
238  % The language selected here is ENGLISH
239 FUNCTION {bbl.and}
240 { "and"}
241
242 FUNCTION {bbl.etal}
243 { "et~al." }
244
245 FUNCTION {bbl.editors}
246 { "eds." }
247
248 FUNCTION {bbl.editor}
249 { "ed." }
250
251 FUNCTION {bbl.edby}
252 { "edited by" }
253
254 FUNCTION {bbl.edition}
255 { "ed." }
256
257 FUNCTION {bbl.volume}
258 { "vol." }
259
260 FUNCTION {bbl.of}
261 { "of" }
262
263 FUNCTION {bbl.number}
264 { "no." }
265
266 FUNCTION {bbl.nr}
267 { "no." }
268
269 FUNCTION {bbl.in}
270 { "in" }
271
272 FUNCTION {bbl.pages}
273 { "pp." }
274
275 FUNCTION {bbl.page}
276 { "p." }
277
278 FUNCTION {bbl.eidpp}
279 { "pages" }
280
281 FUNCTION {bbl.chapter}
282 { "chap." }
283
284 FUNCTION {bbl.techrep}
285 { "Tech. Rep." }
286
287 FUNCTION {bbl.mthesis}
288 { "Master's thesis" }
289
290 FUNCTION {bbl.phdthesis}
291 { "Ph.D. thesis" }
292
293 FUNCTION {bbl.first}
294 { "1st" }
295
296 FUNCTION {bbl.second}
297 { "2nd" }
298
299 FUNCTION {bbl.third}
300 { "3rd" }
301
302 FUNCTION {bbl.fourth}
303 { "4th" }
304
305 FUNCTION {bbl.fifth}
306 { "5th" }
307
308 FUNCTION {bbl.st}
309 { "st" }
310
311 FUNCTION {bbl.nd}
312 { "nd" }
313
314 FUNCTION {bbl.rd}
315 { "rd" }
316
317 FUNCTION {bbl.th}
318 { "th" }
319
320 MACRO {jan} {"Jan."}
321
322 MACRO {feb} {"Feb."}
323
324 MACRO {mar} {"Mar."}
325
326 MACRO {apr} {"Apr."}
327
328 MACRO {may} {"May"}
329
330 MACRO {jun} {"Jun."}
331
332 MACRO {jul} {"Jul."}
333
334 MACRO {aug} {"Aug."}
335
336 MACRO {sep} {"Sep."}
337
338 MACRO {oct} {"Oct."}
339
340 MACRO {nov} {"Nov."}
341
342 MACRO {dec} {"Dec."}
343
344 FUNCTION {eng.ord}
345 { duplicate$ "1" swap$ *
346   #-2 #1 substring$ "1" =
347      { bbl.th * }
348      { duplicate$ #-1 #1 substring$
349        duplicate$ "1" =
350          { pop$ bbl.st * }
351          { duplicate$ "2" =
352              { pop$ bbl.nd * }
353              { "3" =
354                  { bbl.rd * }
355                  { bbl.th * }
356                if$
357              }
358            if$
359           }
360        if$
361      }
362    if$
363 }
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390  %-------------------------------------------------------------------
391
392  % Begin module:
393
394
395  % \ProvidesFile{physjour.mbs}[1999/10/05 2.1 (PWD)]
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531 MACRO {aa}{"Astron. \& Astrophys."}
532
533
534 MACRO {aasup}{"Astron. \& Astrophys. Suppl. Ser."}
535
536
537 MACRO {aj} {"Astron. J."}
538
539
540 MACRO {aph} {"Acta Phys."}
541
542 MACRO {advp} {"Adv. Phys."}
543
544 MACRO {ajp} {"Amer. J. Phys."}
545
546 MACRO {ajm} {"Amer. J. Math."}
547
548 MACRO {amsci} {"Amer. Sci."}
549
550 MACRO {anofd} {"Ann. Fluid Dyn."}
551
552 MACRO {am} {"Ann. Math."}
553
554 MACRO {ap} {"Ann. Phys. (NY)"}
555
556 MACRO {adp} {"Ann. Phys. (Leipzig)"}
557
558 MACRO {ao} {"Appl. Opt."}
559
560 MACRO {apl} {"Appl. Phys. Lett."}
561
562 MACRO {app} {"Astroparticle Phys."}
563
564 MACRO {apj} {"Astrophys. J."}
565
566
567 MACRO {apjsup} {"Astrophys. J. Suppl."}
568
569
570 MACRO {apss} {"Astrophys. Space Sci."}
571
572
573 MACRO {araa} {"Ann. Rev. Astron. Astrophys."}
574
575
576 MACRO {baas} {"Bull. Amer. Astron. Soc."}
577
578
579 MACRO {baps} {"Bull. Amer. Phys. Soc."}
580
581 MACRO {cmp} {"Comm. Math. Phys."}
582
583 MACRO {cpam} {"Commun. Pure Appl. Math."}
584
585 MACRO {cppcf} {"Comm. Plasma Phys. \& Controlled Fusion"}
586
587 MACRO {cpc} {"Comp. Phys. Comm."}
588
589 MACRO {cqg} {"Class. Quant. Grav."}
590
591 MACRO {cra} {"C. R. Acad. Sci. A"}
592
593 MACRO {fed} {"Fusion Eng. \& Design"}
594
595 MACRO {ft} {"Fusion Tech."}
596
597 MACRO {grg} {"Gen. Relativ. Gravit."}
598
599 MACRO {ieeens} {"IEEE Trans. Nucl. Sci."}
600
601 MACRO {ieeeps} {"IEEE Trans. Plasma Sci."}
602
603 MACRO {ijimw} {"Interntl. J. Infrared \& Millimeter Waves"}
604
605 MACRO {ip} {"Infrared Phys."}
606
607 MACRO {irp} {"Infrared Phys."}
608
609 MACRO {jap} {"J. Appl. Phys."}
610
611 MACRO {jasa} {"J. Acoust. Soc. America"}
612
613 MACRO {jcp} {"J. Comp. Phys."}
614
615 MACRO {jetp} {"Sov. Phys.--JETP"}
616
617 MACRO {jfe} {"J. Fusion Energy"}
618
619 MACRO {jfm} {"J. Fluid Mech."}
620
621 MACRO {jmp} {"J. Math. Phys."}
622
623 MACRO {jne} {"J. Nucl. Energy"}
624
625 MACRO {jnec} {"J. Nucl. Energy, C: Plasma Phys., Accelerators, Thermonucl. Res."}
626
627 MACRO {jnm} {"J. Nucl. Mat."}
628
629 MACRO {jpc} {"J. Phys. Chem."}
630
631 MACRO {jpp} {"J. Plasma Phys."}
632
633 MACRO {jpsj} {"J. Phys. Soc. Japan"}
634
635 MACRO {jsi} {"J. Sci. Instrum."}
636
637 MACRO {jvst} {"J. Vac. Sci. \& Tech."}
638
639 MACRO {nat} {"Nature"}
640
641 MACRO {nature} {"Nature"}
642
643
644
645 MACRO {nedf} {"Nucl. Eng. \& Design/Fusion"}
646
647 MACRO {nf} {"Nucl. Fusion"}
648
649 MACRO {nim} {"Nucl. Inst. \& Meth."}
650
651 MACRO {nimpr} {"Nucl. Inst. \& Meth. in Phys. Res."}
652
653 MACRO {np} {"Nucl. Phys."}
654
655 MACRO {npb} {"Nucl. Phys. B"}
656
657 MACRO {nt/f} {"Nucl. Tech./Fusion"}
658
659 MACRO {npbpc} {"Nucl. Phys. B (Proc. Suppl.)"}
660
661 MACRO {inc} {"Nuovo Cimento"}
662
663 MACRO {nc} {"Nuovo Cimento"}
664
665 MACRO {pf} {"Phys. Fluids"}
666
667 MACRO {pfa} {"Phys. Fluids A: Fluid Dyn."}
668
669 MACRO {pfb} {"Phys. Fluids B: Plasma Phys."}
670
671 MACRO {pl} {"Phys. Lett."}
672
673 MACRO {pla} {"Phys. Lett. A"}
674
675 MACRO {plb} {"Phys. Lett. B"}
676
677 MACRO {prep} {"Phys. Rep."}
678
679 MACRO {pnas} {"Proc. Nat. Acad. Sci. USA"}
680
681 MACRO {pp} {"Phys. Plasmas"}
682
683 MACRO {ppcf} {"Plasma Phys. \& Controlled Fusion"}
684
685 MACRO {phitrsl} {"Philos. Trans. Roy. Soc. London"}
686
687 MACRO {prl} {"Phys. Rev. Lett."}
688
689 MACRO {pr} {"Phys. Rev."}
690
691 MACRO {physrev} {"Phys. Rev."}
692
693 MACRO {pra} {"Phys. Rev. A"}
694
695 MACRO {prb} {"Phys. Rev. B"}
696
697 MACRO {prc} {"Phys. Rev. C"}
698
699 MACRO {prd} {"Phys. Rev. D"}
700
701 MACRO {pre} {"Phys. Rev. E"}
702
703 MACRO {ps} {"Phys. Scripta"}
704
705 MACRO {procrsl} {"Proc. Roy. Soc. London"}
706
707 MACRO {rmp} {"Rev. Mod. Phys."}
708
709 MACRO {rsi} {"Rev. Sci. Inst."}
710
711 MACRO {science} {"Science"}
712
713
714 MACRO {sciam} {"Sci. Am."}
715
716 MACRO {sam} {"Stud. Appl. Math."}
717
718 MACRO {sjpp} {"Sov. J. Plasma Phys."}
719
720 MACRO {spd} {"Sov. Phys.--Doklady"}
721
722 MACRO {sptp} {"Sov. Phys.--Tech. Phys."}
723
724 MACRO {spu} {"Sov. Phys.--Uspeki"}
725
726 MACRO {st} {"Sky and Telesc."}
727
728
729
730
731
732  % End module: physjour.mbs
733
734
735
736  %-------------------------------------------------------------------
737  % Begin module:
738  % \ProvidesFile{geojour.mbs}[1999/11/16 2.0g (PWD)]
739 MACRO {aisr} {"Adv. Space Res."}
740 MACRO {ag} {"Ann. Geophys."}
741 MACRO {anigeo} {"Ann. Geofis."}
742 MACRO {angl} {"Ann. Glaciol."}
743 MACRO {andmet} {"Ann. d. Meteor."}
744 MACRO {andgeo} {"Ann. d. Geophys."}
745 MACRO {andphy} {"Ann. Phys.-Paris"}
746 MACRO {afmgb} {"Arch. Meteor. Geophys. Bioklimatol."}
747 MACRO {atph} {"Atm\'osphera"}
748 MACRO {aao} {"Atmos. Ocean"}
749 MACRO {ass}{"Astrophys. Space Sci."}
750 MACRO {atenv} {"Atmos. Environ."}
751 MACRO {aujag} {"Aust. J. Agr. Res."}
752 MACRO {aumet} {"Aust. Meteorol. Mag."}
753 MACRO {blmet} {"Bound.-Lay. Meteorol."}
754 MACRO {bams} {"Bull. Amer. Meteorol. Soc."}
755 MACRO {cch} {"Clim. Change"}
756 MACRO {cdyn} {"Clim. Dynam."}
757 MACRO {cbul} {"Climatol. Bull."}
758 MACRO {cap} {"Contrib. Atmos. Phys."}
759 MACRO {dsr} {"Deep-Sea Res."}
760 MACRO {dhz} {"Dtsch. Hydrogr. Z."}
761 MACRO {dao} {"Dynam. Atmos. Oceans"}
762 MACRO {eco} {"Ecology"}
763 MACRO {empl}{"Earth, Moon and Planets"}
764 MACRO {envres} {"Environ. Res."}
765 MACRO {envst} {"Environ. Sci. Technol."}
766 MACRO {ecms} {"Estuarine Coastal Mar. Sci."}
767 MACRO {expa}{"Exper. Astron."}
768 MACRO {geoint} {"Geofis. Int."}
769 MACRO {geopub} {"Geofys. Publ."}
770 MACRO {geogeo} {"Geol. Geofiz."}
771 MACRO {gafd} {"Geophys. Astrophys. Fluid Dyn."}
772 MACRO {gfd} {"Geophys. Fluid Dyn."}
773 MACRO {geomag} {"Geophys. Mag."}
774 MACRO {georl} {"Geophys. Res. Lett."}
775 MACRO {grl} {"Geophys. Res. Lett."}
776 MACRO {ga} {"Geophysica"}
777 MACRO {gs} {"Geophysics"}
778 MACRO {ieeetap} {"IEEE Trans. Antenn. Propag."}
779 MACRO {ijawp} {"Int. J. Air Water Pollut."}
780 MACRO {ijc} {"Int. J. Climatol."}
781 MACRO {ijrs} {"Int. J. Remote Sens."}
782 MACRO {jam} {"J. Appl. Meteorol."}
783 MACRO {jaot} {"J. Atmos. Ocean. Technol."}
784 MACRO {jatp} {"J. Atmos. Terr. Phys."}
785 MACRO {jce} {"J. Climate"}
786 MACRO {jcam} {"J. Climate Appl. Meteor."}
787 MACRO {jcm} {"J. Climate Meteor."}
788 MACRO {jcy} {"J. Climatol."}
789 MACRO {jgr} {"J. Geophys. Res."}
790 MACRO {jga} {"J. Glaciol."}
791 MACRO {jh} {"J. Hydrol."}
792 MACRO {jmr} {"J. Mar. Res."}
793 MACRO {jmrj} {"J. Meteor. Res. Japan"}
794 MACRO {jm} {"J. Meteor."}
795 MACRO {jpo} {"J. Phys. Oceanogr."}
796 MACRO {jra} {"J. Rech. Atmos."}
797 MACRO {jaes} {"J. Aeronaut. Sci."}
798 MACRO {japca} {"J. Air Pollut. Control Assoc."}
799 MACRO {jas} {"J. Atmos. Sci."}
800 MACRO {jmts} {"J. Mar. Technol. Soc."}
801 MACRO {jmsj} {"J. Meteorol. Soc. Japan"}
802 MACRO {josj} {"J. Oceanogr. Soc. Japan"}
803 MACRO {jwm} {"J. Wea. Mod."}
804 MACRO {lao} {"Limnol. Oceanogr."}
805 MACRO {mwl} {"Mar. Wea. Log"}
806 MACRO {mau} {"Mausam"}
807 MACRO {meteor} {"``Meteor'' Forschungsergeb."}
808 MACRO {map} {"Meteorol. Atmos. Phys."}
809 MACRO {metmag} {"Meteor. Mag."}
810 MACRO {metmon} {"Meteor. Monogr."}
811 MACRO {metrun} {"Meteor. Rundsch."}
812 MACRO {metzeit} {"Meteor. Z."}
813 MACRO {metgid} {"Meteor. Gidrol."}
814 MACRO {mwr} {"Mon. Weather Rev."}
815 MACRO {nwd} {"Natl. Weather Dig."}
816 MACRO {nzjmfr} {"New Zeal. J. Mar. Freshwater Res."}
817 MACRO {npg} {"Nonlin. Proc. Geophys."}
818 MACRO {om} {"Oceanogr. Meteorol."}
819 MACRO {ocac} {"Oceanol. Acta"}
820 MACRO {oceanus} {"Oceanus"}
821 MACRO {paleoc} {"Paleoceanography"}
822 MACRO {pce} {"Phys. Chem. Earth"}
823 MACRO {pmg} {"Pap. Meteor. Geophys."}
824 MACRO {ppom} {"Pap. Phys. Oceanogr. Meteor."}
825 MACRO {physzeit} {"Phys. Z."}
826 MACRO {pps} {"Planet. Space Sci."}
827 MACRO {pss} {"Planet. Space Sci."}
828 MACRO {pag} {"Pure Appl. Geophys."}
829 MACRO {qjrms} {"Quart. J. Roy. Meteorol. Soc."}
830 MACRO {quatres} {"Quat. Res."}
831 MACRO {rsci} {"Radio Sci."}
832 MACRO {rse} {"Remote Sens. Environ."}
833 MACRO {rgeo} {"Rev. Geophys."}
834 MACRO {rgsp} {"Rev. Geophys. Space Phys."}
835 MACRO {rdgeo} {"Rev. Geofis."}
836 MACRO {revmeta} {"Rev. Meteorol."}
837 MACRO {sgp}{"Surveys in Geophys."}
838 MACRO {sp} {"Solar Phys."}
839 MACRO {ssr} {"Space Sci. Rev."}
840 MACRO {tellus} {"Tellus"}
841 MACRO {tac} {"Theor. Appl. Climatol."}
842 MACRO {tagu} {"Trans. Am. Geophys. Union (EOS)"}
843 MACRO {wrr} {"Water Resour. Res."}
844 MACRO {weather} {"Weather"}
845 MACRO {wafc} {"Weather Forecast."}
846 MACRO {ww} {"Weatherwise"}
847 MACRO {wmob} {"WMO Bull."}
848 MACRO {zeitmet} {"Z. Meteorol."}
849  % End module: geojour.mbs
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875  %-------------------------------------------------------------------
876
877  % Begin module:
878
879
880  % \ProvidesFile{photjour.mbs}[1999/02/24 2.0b (PWD)]
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985 MACRO {appopt} {"Appl. Opt."}
986
987 MACRO {bell} {"Bell Syst. Tech. J."}
988
989 MACRO {ell} {"Electron. Lett."}
990
991 MACRO {jasp} {"J. Appl. Spectr."}
992
993 MACRO {jqe} {"IEEE J. Quantum Electron."}
994
995 MACRO {jlwt} {"J. Lightwave Technol."}
996
997 MACRO {jmo} {"J. Mod. Opt."}
998
999 MACRO {josa} {"J. Opt. Soc. America"}
1000
1001 MACRO {josaa} {"J. Opt. Soc. Amer.~A"}
1002
1003 MACRO {josab} {"J. Opt. Soc. Amer.~B"}
1004
1005 MACRO {jdp} {"J. Phys. (Paris)"}
1006
1007 MACRO {oc} {"Opt. Commun."}
1008
1009 MACRO {ol} {"Opt. Lett."}
1010
1011 MACRO {phtl} {"IEEE Photon. Technol. Lett."}
1012
1013 MACRO {pspie} {"Proc. Soc. Photo-Opt. Instrum. Eng."}
1014
1015 MACRO {sse} {"Solid-State Electron."}
1016
1017 MACRO {sjot} {"Sov. J. Opt. Technol."}
1018
1019 MACRO {sjqe} {"Sov. J. Quantum Electron."}
1020
1021 MACRO {sleb} {"Sov. Phys.--Leb. Inst. Rep."}
1022
1023 MACRO {stph} {"Sov. Phys.--Techn. Phys."}
1024
1025 MACRO {stphl} {"Sov. Techn. Phys. Lett."}
1026
1027 MACRO {vr} {"Vision Res."}
1028
1029 MACRO {zph} {"Z. f. Physik"}
1030
1031 MACRO {zphb} {"Z. f. Physik~B"}
1032
1033 MACRO {zphd} {"Z. f. Physik~D"}
1034
1035 MACRO {CLEO} {"CLEO"}
1036
1037 MACRO {ASSL} {"Adv. Sol.-State Lasers"}
1038
1039 MACRO {OSA}  {"OSA"}
1040
1041
1042
1043
1044  % End module: photjour.mbs
1045
1046
1047
1048 %% Copyright 1994-2000 Patrick W Daly
1049 MACRO {acmcs} {"ACM Comput. Surv."}
1050
1051 MACRO {acta} {"Acta Inf."}
1052
1053 MACRO {cacm} {"Commun. ACM"}
1054
1055 MACRO {ibmjrd} {"IBM J. Res. Dev."}
1056
1057 MACRO {ibmsj} {"IBM Syst.~J."}
1058
1059 MACRO {ieeese} {"IEEE Trans. Software Eng."}
1060
1061 MACRO {ieeetc} {"IEEE Trans. Comput."}
1062
1063 MACRO {ieeetcad}
1064  {"IEEE Trans. Comput. Aid. Des."}
1065
1066 MACRO {ipl} {"Inf. Process. Lett."}
1067
1068 MACRO {jacm} {"J.~ACM"}
1069
1070 MACRO {jcss} {"J.~Comput. Syst. Sci."}
1071
1072 MACRO {scp} {"Sci. Comput. Program."}
1073
1074 MACRO {sicomp} {"SIAM J. Comput."}
1075
1076 MACRO {tocs} {"ACM Trans. Comput. Syst."}
1077
1078 MACRO {tods} {"ACM Trans. Database Syst."}
1079
1080 MACRO {tog} {"ACM Trans. Graphic."}
1081
1082 MACRO {toms} {"ACM Trans. Math. Software"}
1083
1084 MACRO {toois} {"ACM Trans. Office Inf. Syst."}
1085
1086 MACRO {toplas} {"ACM Trans. Progr. Lang. Syst."}
1087
1088 MACRO {tcs} {"Theor. Comput. Sci."}
1089
1090 FUNCTION {bibinfo.check}
1091 { swap$
1092   duplicate$ missing$
1093     {
1094       pop$ pop$
1095       ""
1096     }
1097     { duplicate$ empty$
1098         {
1099           swap$ pop$
1100         }
1101         { swap$
1102           "\bibinfo{" swap$ * "}{" * swap$ * "}" *
1103         }
1104       if$
1105     }
1106   if$
1107 }
1108 FUNCTION {bibinfo.warn}
1109 { swap$
1110   duplicate$ missing$
1111     {
1112       swap$ "missing " swap$ * " in " * cite$ * warning$ pop$
1113       ""
1114     }
1115     { duplicate$ empty$
1116         {
1117           swap$ "empty " swap$ * " in " * cite$ * warning$
1118         }
1119         { swap$
1120           "\bibinfo{" swap$ * "}{" * swap$ * "}" *
1121         }
1122       if$
1123     }
1124   if$
1125 }
1126 FUNCTION {format.eprint}
1127 { eprint duplicate$ empty$
1128     'skip$
1129     { "\eprint"
1130       archive empty$
1131         'skip$
1132         { "[" * archive * "]" * }
1133       if$
1134       "{" * swap$ * "}" *
1135     }
1136   if$
1137 }
1138 FUNCTION {format.url}
1139 { url empty$
1140     { "" }
1141     { "" }
1142   if$
1143 }
1144
1145 STRINGS  { bibinfo}
1146 INTEGERS { nameptr namesleft numnames }
1147
1148 FUNCTION {format.names}
1149 { 'bibinfo :=
1150   duplicate$ empty$ 'skip$ {
1151   's :=
1152   "" 't :=
1153   #1 'nameptr :=
1154   s num.names$ 'numnames :=
1155   numnames 'namesleft :=
1156     { namesleft #0 > }
1157     { s nameptr
1158       "{f.}" format.name$ duplicate$ empty$ 'skip$
1159         { tie.or.space.prefix bib.fname.font swap$ * }
1160       if$
1161       s nameptr
1162       "{vv~}{ll}" format.name$ bib.name.font *
1163       s nameptr
1164       "{jj}" format.name$ duplicate$ empty$ 'skip$
1165         { bib.fname.font ", " swap$ * }
1166       if$
1167       *
1168       bibinfo bibinfo.check
1169       't :=
1170       nameptr #1 >
1171         {
1172           nameptr #0
1173           #10 +
1174           #1 + =
1175           numnames #0
1176           #10 +
1177           > and
1178             { "others" 't :=
1179               #1 'namesleft := }
1180             'skip$
1181           if$
1182           namesleft #1 >
1183             { ", " * t * }
1184             {
1185               numnames #2 >
1186                 { "," * }
1187                 'skip$
1188               if$
1189               s nameptr "{ll}" format.name$ duplicate$ "others" =
1190                 { 't := }
1191                 { pop$ }
1192               if$
1193               t "others" =
1194                 {
1195                   " " * bbl.etal bib.name.font *
1196                 }
1197                 {
1198                   bbl.and
1199                   bib.name.font
1200                   space.word * t *
1201                 }
1202               if$
1203             }
1204           if$
1205         }
1206         't
1207       if$
1208       nameptr #1 + 'nameptr :=
1209       namesleft #1 - 'namesleft :=
1210     }
1211   while$
1212   } if$
1213 }
1214 FUNCTION {format.names.ed}
1215 {
1216   format.names
1217 }
1218 FUNCTION {format.key}
1219 { empty$
1220     { key field.or.null }
1221     { "" }
1222   if$
1223 }
1224
1225 FUNCTION {format.authors}
1226 { author "author" format.names
1227     duplicate$ empty$ 'skip$
1228     { collaboration "collaboration" bibinfo.check
1229       duplicate$ empty$ 'skip$
1230         { " (" swap$ * ")" * }
1231       if$
1232       *
1233     }
1234   if$
1235 }
1236 FUNCTION {get.bbl.editor}
1237 { editor num.names$ #1 > 'bbl.editors 'bbl.editor if$ }
1238
1239 FUNCTION {format.editors}
1240 { editor "editor" format.names duplicate$ empty$ 'skip$
1241     {
1242       "," *
1243       " " *
1244       get.bbl.editor
1245       *
1246     }
1247   if$
1248 }
1249 FUNCTION {format.isbn}
1250 { isbn "isbn" bibinfo.check
1251   duplicate$ empty$ 'skip$
1252     {
1253       "ISBN " swap$ *
1254     }
1255   if$
1256 }
1257
1258 FUNCTION {format.issn}
1259 { issn "issn" bibinfo.check
1260   duplicate$ empty$ 'skip$
1261     {
1262       "ISSN " swap$ *
1263     }
1264   if$
1265 }
1266
1267 FUNCTION {format.note}
1268 {
1269  note empty$
1270     { "" }
1271     { note #1 #1 substring$
1272       duplicate$ "{" =
1273         'skip$
1274         { output.state mid.sentence =
1275           { "l" }
1276           { "u" }
1277         if$
1278         change.case$
1279         }
1280       if$
1281       note #2 global.max$ substring$ * "note" bibinfo.check
1282     }
1283   if$
1284 }
1285
1286 FUNCTION {format.title}
1287 { title
1288   duplicate$ empty$
1289     { skip$ }
1290     { "t" change.case$ }
1291   if$
1292   "title" bibinfo.check
1293   duplicate$ empty$ 'skip$
1294     {
1295       emphasize
1296     }
1297   if$
1298 }
1299
1300 FUNCTION {format.full.names}
1301 {'s :=
1302  "" 't :=
1303   #1 'nameptr :=
1304   s num.names$ 'numnames :=
1305   numnames 'namesleft :=
1306     { namesleft #0 > }
1307     { s nameptr
1308       "{vv~}{ll}" format.name$
1309       't :=
1310       nameptr #1 >
1311         {
1312           nameptr #0
1313           #10 +
1314           #1 + =
1315           numnames #0
1316           #10 +
1317           > and
1318             { "others" 't :=
1319               #1 'namesleft := }
1320             'skip$
1321           if$
1322           namesleft #1 >
1323             { ", " * t * }
1324             {
1325               s nameptr "{ll}" format.name$ duplicate$ "others" =
1326                 { 't := }
1327                 { pop$ }
1328               if$
1329               t "others" =
1330                 {
1331                   " " * bbl.etal *
1332                   cite.name.font
1333                 }
1334                 {
1335                   numnames #2 >
1336                     { "," * }
1337                     'skip$
1338                   if$
1339                   bbl.and
1340                   space.word * t *
1341                 }
1342               if$
1343             }
1344           if$
1345         }
1346         't
1347       if$
1348       nameptr #1 + 'nameptr :=
1349       namesleft #1 - 'namesleft :=
1350     }
1351   while$
1352   t "others" =
1353     'skip$
1354     { cite.name.font }
1355   if$
1356 }
1357
1358 FUNCTION {author.editor.key.full}
1359 { author empty$
1360     { editor empty$
1361         { key empty$
1362             { cite$ #1 #3 substring$ }
1363             'key
1364           if$
1365         }
1366         { editor format.full.names }
1367       if$
1368     }
1369     { author format.full.names }
1370   if$
1371 }
1372
1373 FUNCTION {author.key.full}
1374 { author empty$
1375     { key empty$
1376          { cite$ #1 #3 substring$ }
1377           'key
1378       if$
1379     }
1380     { author format.full.names }
1381   if$
1382 }
1383
1384 FUNCTION {editor.key.full}
1385 { editor empty$
1386     { key empty$
1387          { cite$ #1 #3 substring$ }
1388           'key
1389       if$
1390     }
1391     { editor format.full.names }
1392   if$
1393 }
1394
1395 FUNCTION {make.full.names}
1396 { type$ "book" =
1397   type$ "inbook" =
1398   or
1399     'author.editor.key.full
1400     { type$ "proceedings" =
1401         'editor.key.full
1402         'author.key.full
1403       if$
1404     }
1405   if$
1406 }
1407
1408 FUNCTION {output.bibitem}
1409 { newline$
1410   "\bibitem[{" write$
1411   label write$
1412   ")" make.full.names duplicate$ short.list =
1413      { pop$ }
1414      { * }
1415    if$
1416   "}]{" * write$
1417   cite$ write$
1418   "}" write$
1419   newline$
1420   ""
1421   before.all 'output.state :=
1422 }
1423
1424 FUNCTION {n.dashify}
1425 {
1426   't :=
1427   ""
1428     { t empty$ not }
1429     { t #1 #1 substring$ "-" =
1430         { t #1 #2 substring$ "--" = not
1431             { "--" *
1432               t #2 global.max$ substring$ 't :=
1433             }
1434             {   { t #1 #1 substring$ "-" = }
1435                 { "-" *
1436                   t #2 global.max$ substring$ 't :=
1437                 }
1438               while$
1439             }
1440           if$
1441         }
1442         { t #1 #1 substring$ *
1443           t #2 global.max$ substring$ 't :=
1444         }
1445       if$
1446     }
1447   while$
1448 }
1449
1450 FUNCTION {word.in}
1451 { bbl.in
1452   " " * }
1453
1454 FUNCTION {format.date}
1455 { year "year" bibinfo.check duplicate$ empty$
1456     {
1457       "empty year in " cite$ * "; set to ????" * warning$
1458        pop$ "????"
1459     }
1460     'skip$
1461   if$
1462   extra.label *
1463   before.all 'output.state :=
1464   " (" swap$ * ")" *
1465 }
1466 FUNCTION {format.date.misc}
1467 {
1468   year empty$ 'skip$ {
1469   format.date "year" output.check
1470   } if$
1471 }
1472 FUNCTION {format.btitle}
1473 { title "title" bibinfo.check
1474   duplicate$ empty$ 'skip$
1475     {
1476       emphasize
1477     }
1478   if$
1479 }
1480 FUNCTION {either.or.check}
1481 { empty$
1482     'pop$
1483     { "can't use both " swap$ * " fields in " * cite$ * warning$ }
1484   if$
1485 }
1486 FUNCTION {format.bvolume}
1487 { volume empty$
1488     { "" }
1489     { bbl.volume volume tie.or.space.prefix
1490       "volume" bibinfo.check * *
1491       series "series" bibinfo.check
1492       duplicate$ empty$ 'pop$
1493         { swap$ bbl.of space.word * swap$
1494           emphasize * }
1495       if$
1496       "volume and number" number either.or.check
1497     }
1498   if$
1499 }
1500 FUNCTION {format.number.series}
1501 { volume empty$
1502     { number empty$
1503         { series field.or.null }
1504         { series empty$
1505             { number "number" bibinfo.check }
1506         { output.state mid.sentence =
1507             { bbl.number }
1508             { bbl.number capitalize }
1509           if$
1510           number tie.or.space.prefix "number" bibinfo.check * *
1511           bbl.in space.word *
1512           series "series" bibinfo.check *
1513         }
1514       if$
1515     }
1516       if$
1517     }
1518     { "" }
1519   if$
1520 }
1521 FUNCTION {is.num}
1522 { chr.to.int$
1523   duplicate$ "0" chr.to.int$ < not
1524   swap$ "9" chr.to.int$ > not and
1525 }
1526
1527 FUNCTION {extract.num}
1528 { duplicate$ 't :=
1529   "" 's :=
1530   { t empty$ not }
1531   { t #1 #1 substring$
1532     t #2 global.max$ substring$ 't :=
1533     duplicate$ is.num
1534       { s swap$ * 's := }
1535       { pop$ "" 't := }
1536     if$
1537   }
1538   while$
1539   s empty$
1540     'skip$
1541     { pop$ s }
1542   if$
1543 }
1544
1545 FUNCTION {convert.edition}
1546 { extract.num "l" change.case$ 's :=
1547   s "first" = s "1" = or
1548     { bbl.first 't := }
1549     { s "second" = s "2" = or
1550         { bbl.second 't := }
1551         { s "third" = s "3" = or
1552             { bbl.third 't := }
1553             { s "fourth" = s "4" = or
1554                 { bbl.fourth 't := }
1555                 { s "fifth" = s "5" = or
1556                     { bbl.fifth 't := }
1557                     { s #1 #1 substring$ is.num
1558                         { s eng.ord 't := }
1559                         { edition 't := }
1560                       if$
1561                     }
1562                   if$
1563                 }
1564               if$
1565             }
1566           if$
1567         }
1568       if$
1569     }
1570   if$
1571   t
1572 }
1573
1574 FUNCTION {format.edition}
1575 { edition duplicate$ empty$ 'skip$
1576     {
1577       convert.edition
1578       output.state mid.sentence =
1579         { "l" }
1580         { "t" }
1581       if$ change.case$
1582       "edition" bibinfo.check
1583       " " * bbl.edition *
1584     }
1585   if$
1586 }
1587 INTEGERS { multiresult }
1588 FUNCTION {multi.page.check}
1589 { 't :=
1590   #0 'multiresult :=
1591     { multiresult not
1592       t empty$ not
1593       and
1594     }
1595     { t #1 #1 substring$
1596       duplicate$ "-" =
1597       swap$ duplicate$ "," =
1598       swap$ "+" =
1599       or or
1600         { #1 'multiresult := }
1601         { t #2 global.max$ substring$ 't := }
1602       if$
1603     }
1604   while$
1605   multiresult
1606 }
1607 FUNCTION {format.pages}
1608 { pages duplicate$ empty$ 'skip$
1609     { duplicate$ multi.page.check
1610         {
1611           bbl.pages swap$
1612           n.dashify
1613         }
1614         {
1615           bbl.page swap$
1616         }
1617       if$
1618       tie.or.space.prefix
1619       "pages" bibinfo.check
1620       * *
1621     }
1622   if$
1623 }
1624 FUNCTION {first.page}
1625 { 't :=
1626   ""
1627     {  t empty$ not t #1 #1 substring$ "-" = not and }
1628     { t #1 #1 substring$ *
1629       t #2 global.max$ substring$ 't :=
1630     }
1631   while$
1632 }
1633
1634 FUNCTION {format.journal.pages}
1635 { pages duplicate$ empty$ 'pop$
1636     { swap$ duplicate$ empty$
1637         { pop$ pop$ format.pages }
1638         {
1639           ", " *
1640           swap$
1641           first.page
1642           "pages" bibinfo.check
1643           *
1644         }
1645       if$
1646     }
1647   if$
1648 }
1649 FUNCTION {format.journal.eid}
1650 { eid "eid" bibinfo.check
1651   duplicate$ empty$ 'skip$
1652     { swap$ duplicate$ empty$ 'skip$
1653       {
1654           ", " *
1655       }
1656       if$
1657       swap$
1658       numpages empty$ 'skip$
1659         { bbl.eidpp numpages tie.or.space.prefix
1660           "numpages" bibinfo.check * *
1661           " (" swap$ * ")" * *
1662         }
1663       if$
1664     }
1665   if$ *
1666 }
1667 FUNCTION {format.vol.num.pages}
1668 { volume field.or.null
1669   duplicate$ empty$ 'skip$
1670     {
1671       "volume" bibinfo.check
1672     }
1673   if$
1674   bolden
1675   eid empty$
1676     { format.journal.pages }
1677     { format.journal.eid }
1678   if$
1679 }
1680
1681 FUNCTION {format.chapter.pages}
1682 { chapter empty$
1683     'format.pages
1684     { type empty$
1685         { bbl.chapter }
1686         { type "l" change.case$
1687           "type" bibinfo.check
1688         }
1689       if$
1690       chapter tie.or.space.prefix
1691       "chapter" bibinfo.check
1692       * *
1693       pages empty$
1694         'skip$
1695         { ", " * format.pages * }
1696       if$
1697     }
1698   if$
1699 }
1700
1701 FUNCTION {format.booktitle}
1702 {
1703   booktitle "booktitle" bibinfo.check
1704   emphasize
1705 }
1706 FUNCTION {format.in.ed.booktitle}
1707 { format.booktitle duplicate$ empty$ 'skip$
1708     {
1709       editor "editor" format.names.ed duplicate$ empty$ 'pop$
1710         {
1711           bbl.edby
1712           " " * swap$ *
1713           swap$
1714           "," *
1715           " " * swap$
1716           * }
1717       if$
1718       word.in swap$ *
1719     }
1720   if$
1721 }
1722 FUNCTION {format.thesis.type}
1723 { type duplicate$ empty$
1724     'pop$
1725     { swap$ pop$
1726       "t" change.case$ "type" bibinfo.check
1727     }
1728   if$
1729 }
1730 FUNCTION {format.tr.number}
1731 { number "number" bibinfo.check
1732   type duplicate$ empty$
1733     { pop$ bbl.techrep }
1734     'skip$
1735   if$
1736   "type" bibinfo.check
1737   swap$ duplicate$ empty$
1738     { pop$ "t" change.case$ }
1739     { tie.or.space.prefix * * }
1740   if$
1741 }
1742 FUNCTION {format.article.crossref}
1743 {
1744   word.in
1745   " \cite{" * crossref * "}" *
1746 }
1747 FUNCTION {format.book.crossref}
1748 { volume duplicate$ empty$
1749     { "empty volume in " cite$ * "'s crossref of " * crossref * warning$
1750       pop$ word.in
1751     }
1752     { bbl.volume
1753       swap$ tie.or.space.prefix "volume" bibinfo.check * * bbl.of space.word *
1754     }
1755   if$
1756   " \cite{" * crossref * "}" *
1757 }
1758 FUNCTION {format.incoll.inproc.crossref}
1759 {
1760   word.in
1761   " \cite{" * crossref * "}" *
1762 }
1763 FUNCTION {format.org.or.pub}
1764 { 't :=
1765   ""
1766       add.blank "(" *
1767       t empty$
1768         { address "address" bibinfo.check *
1769         }
1770         { t *
1771           address empty$
1772             'skip$
1773             { ", " * address "address" bibinfo.check * }
1774           if$
1775         }
1776       if$
1777       year duplicate$ empty$
1778         { "empty year in " cite$ * "; set to ????" * warning$
1779            pop$ "????" }
1780         { "year" bibinfo.check extra.label * }
1781       if$
1782       t empty$ address empty$ and
1783         { * }
1784         { ", " swap$ * * }
1785       if$
1786       ")" *
1787 }
1788 FUNCTION {format.publisher.address}
1789 { publisher "publisher" bibinfo.warn format.org.or.pub
1790 }
1791
1792 FUNCTION {format.organization.address}
1793 { organization "organization" bibinfo.check format.org.or.pub
1794 }
1795
1796 FUNCTION {article}
1797 { output.bibitem
1798   format.authors "author" output.check
1799   author format.key output
1800   crossref missing$
1801     {
1802      ""
1803       journal
1804       duplicate$ empty$
1805       { pop$ pop$ } {
1806         "journal" bibinfo.check
1807         * "journal" output.check
1808       add.blank
1809       } if$
1810       format.vol.num.pages output
1811       format.date "year" output.check
1812     }
1813     { format.article.crossref output.nonnull
1814       format.pages output
1815     }
1816   if$
1817   format.issn output
1818   format.note output
1819   format.eprint output
1820   format.url output
1821   fin.entry
1822 }
1823 FUNCTION {book}
1824 { output.bibitem
1825   author empty$
1826     { format.editors "author and editor" output.check
1827       editor format.key output
1828     }
1829     { format.authors output.nonnull
1830       crossref missing$
1831         { "author and editor" editor either.or.check }
1832         'skip$
1833       if$
1834     }
1835   if$
1836   format.btitle "title" output.check
1837   crossref missing$
1838     { format.bvolume output
1839       format.number.series output
1840       format.publisher.address output
1841     }
1842     {
1843       format.book.crossref output.nonnull
1844       format.date "year" output.check
1845     }
1846   if$
1847   format.edition output
1848   format.isbn output
1849   format.note output
1850   format.eprint output
1851   format.url output
1852   fin.entry
1853 }
1854 FUNCTION {booklet}
1855 { output.bibitem
1856   format.authors output
1857   author format.key output
1858   format.title "title" output.check
1859   howpublished "howpublished" bibinfo.check output
1860   address "address" bibinfo.check output
1861   format.date "year" output.check
1862   format.isbn output
1863   format.note output
1864   format.eprint output
1865   format.url output
1866   fin.entry
1867 }
1868
1869 FUNCTION {inbook}
1870 { output.bibitem
1871   author empty$
1872     { format.editors "author and editor" output.check
1873       editor format.key output
1874     }
1875     { format.authors output.nonnull
1876       crossref missing$
1877         { "author and editor" editor either.or.check }
1878         'skip$
1879       if$
1880     }
1881   if$
1882   format.btitle "title" output.check
1883   crossref missing$
1884     {
1885       format.publisher.address output
1886       format.bvolume output
1887       format.chapter.pages "chapter and pages" output.check
1888       format.number.series output
1889     }
1890     {
1891       format.chapter.pages "chapter and pages" output.check
1892       format.book.crossref output.nonnull
1893       format.date "year" output.check
1894     }
1895   if$
1896   format.edition output
1897   crossref missing$
1898     { format.isbn output }
1899     'skip$
1900   if$
1901   format.note output
1902   format.eprint output
1903   format.url output
1904   fin.entry
1905 }
1906
1907 FUNCTION {incollection}
1908 { output.bibitem
1909   format.authors "author" output.check
1910   author format.key output
1911   crossref missing$
1912     { format.in.ed.booktitle "booktitle" output.check
1913       format.publisher.address output
1914       format.bvolume output
1915       format.number.series output
1916       format.chapter.pages output
1917       format.edition output
1918       format.isbn output
1919     }
1920     { format.incoll.inproc.crossref output.nonnull
1921       format.chapter.pages output
1922     }
1923   if$
1924   format.note output
1925   format.eprint output
1926   format.url output
1927   fin.entry
1928 }
1929 FUNCTION {inproceedings}
1930 { output.bibitem
1931   format.authors "author" output.check
1932   author format.key output
1933   crossref missing$
1934     { format.in.ed.booktitle "booktitle" output.check
1935       publisher empty$
1936         { format.organization.address output }
1937         { organization "organization" bibinfo.check output
1938           format.publisher.address output
1939         }
1940       if$
1941       format.bvolume output
1942       format.number.series output
1943       format.pages output
1944       format.isbn output
1945       format.issn output
1946     }
1947     { format.incoll.inproc.crossref output.nonnull
1948       format.pages output
1949     }
1950   if$
1951   format.note output
1952   format.eprint output
1953   format.url output
1954   fin.entry
1955 }
1956 FUNCTION {conference} { inproceedings }
1957 FUNCTION {manual}
1958 { output.bibitem
1959   format.authors output
1960   author format.key output
1961   format.btitle "title" output.check
1962   organization "organization" bibinfo.check output
1963   address "address" bibinfo.check output
1964   format.edition output
1965   format.date "year" output.check
1966   format.note output
1967   format.eprint output
1968   format.url output
1969   fin.entry
1970 }
1971
1972 FUNCTION {mastersthesis}
1973 { output.bibitem
1974   format.authors "author" output.check
1975   author format.key output
1976   bbl.mthesis format.thesis.type output.nonnull
1977   school "school" bibinfo.warn output
1978   address "address" bibinfo.check output
1979   format.date "year" output.check
1980   format.note output
1981   format.eprint output
1982   format.url output
1983   fin.entry
1984 }
1985
1986 FUNCTION {misc}
1987 { output.bibitem
1988   format.authors output
1989   author format.key output
1990   format.title output
1991   howpublished "howpublished" bibinfo.check output
1992   format.date.misc
1993   format.note output
1994   format.eprint output
1995   format.url output
1996   fin.entry
1997 }
1998 FUNCTION {phdthesis}
1999 { output.bibitem
2000   format.authors "author" output.check
2001   author format.key output
2002   bbl.phdthesis format.thesis.type output.nonnull
2003   school "school" bibinfo.warn output
2004   address "address" bibinfo.check output
2005   format.date "year" output.check
2006   format.note output
2007   format.eprint output
2008   format.url output
2009   fin.entry
2010 }
2011
2012 FUNCTION {proceedings}
2013 { output.bibitem
2014   format.editors output
2015   editor format.key output
2016   format.btitle "title" output.check
2017   format.bvolume output
2018   format.number.series output
2019   publisher empty$
2020     { format.organization.address output }
2021     { organization "organization" bibinfo.check output
2022       format.publisher.address output
2023     }
2024   if$
2025   format.isbn output
2026   format.issn output
2027   format.note output
2028   format.eprint output
2029   format.url output
2030   fin.entry
2031 }
2032
2033 FUNCTION {techreport}
2034 { output.bibitem
2035   format.authors "author" output.check
2036   author format.key output
2037   format.tr.number output.nonnull
2038   institution "institution" bibinfo.warn output
2039   address "address" bibinfo.check output
2040   format.date "year" output.check
2041   format.note output
2042   format.eprint output
2043   format.url output
2044   fin.entry
2045 }
2046
2047 FUNCTION {unpublished}
2048 { output.bibitem
2049   format.authors "author" output.check
2050   author format.key output
2051   format.date.misc
2052   format.note "note" output.check
2053   format.eprint output
2054   format.url output
2055   fin.entry
2056 }
2057
2058 FUNCTION {default.type} { misc }
2059 READ
2060 FUNCTION {sortify}
2061 { purify$
2062   "l" change.case$
2063 }
2064 INTEGERS { len }
2065 FUNCTION {chop.word}
2066 { 's :=
2067   'len :=
2068   s #1 len substring$ =
2069     { s len #1 + global.max$ substring$ }
2070     's
2071   if$
2072 }
2073 FUNCTION {format.lab.names}
2074 { 's :=
2075   "" 't :=
2076   s #1 "{vv~}{ll}" format.name$
2077   s num.names$ duplicate$
2078   #2 >
2079     { pop$
2080       " " * bbl.etal *
2081       cite.name.font
2082       "others" 't :=
2083     }
2084     { #2 <
2085         'skip$
2086         { s #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" =
2087             {
2088               " " * bbl.etal *
2089               cite.name.font
2090               "others" 't :=
2091             }
2092             { bbl.and space.word * s #2 "{vv~}{ll}" format.name$
2093               * }
2094           if$
2095         }
2096       if$
2097     }
2098   if$
2099   t "others" =
2100     'skip$
2101     { cite.name.font }
2102   if$
2103 }
2104
2105 FUNCTION {author.key.label}
2106 { author empty$
2107     { key empty$
2108         { cite$ #1 #3 substring$ }
2109         'key
2110       if$
2111     }
2112     { author format.lab.names }
2113   if$
2114 }
2115
2116 FUNCTION {author.editor.key.label}
2117 { author empty$
2118     { editor empty$
2119         { key empty$
2120             { cite$ #1 #3 substring$ }
2121             'key
2122           if$
2123         }
2124         { editor format.lab.names }
2125       if$
2126     }
2127     { author format.lab.names }
2128   if$
2129 }
2130
2131 FUNCTION {editor.key.label}
2132 { editor empty$
2133     { key empty$
2134         { cite$ #1 #3 substring$ }
2135         'key
2136       if$
2137     }
2138     { editor format.lab.names }
2139   if$
2140 }
2141
2142 FUNCTION {calc.short.authors}
2143 { type$ "book" =
2144   type$ "inbook" =
2145   or
2146     'author.editor.key.label
2147     { type$ "proceedings" =
2148         'editor.key.label
2149         'author.key.label
2150       if$
2151     }
2152   if$
2153   'short.list :=
2154 }
2155
2156 FUNCTION {calc.label}
2157 { calc.short.authors
2158   short.list
2159   "("
2160   *
2161   year duplicate$ empty$
2162   short.list key field.or.null = or
2163      { pop$ "" }
2164      'skip$
2165   if$
2166   *
2167   'label :=
2168 }
2169
2170 FUNCTION {sort.format.names}
2171 { 's :=
2172   #1 'nameptr :=
2173   ""
2174   s num.names$ 'numnames :=
2175   numnames 'namesleft :=
2176     { namesleft #0 > }
2177     { s nameptr
2178       "{vv{ } }{ll{ }}{  f{ }}{  jj{ }}"
2179       format.name$ 't :=
2180       nameptr #1 >
2181         {
2182           nameptr #0
2183           #10 +
2184           #1 + =
2185           numnames #0
2186           #10 +
2187           > and
2188             { "others" 't :=
2189               #1 'namesleft := }
2190             'skip$
2191           if$
2192           "   "  *
2193           namesleft #1 = t "others" = and
2194             { "zzzzz" * }
2195             { t sortify * }
2196           if$
2197         }
2198         { t sortify * }
2199       if$
2200       nameptr #1 + 'nameptr :=
2201       namesleft #1 - 'namesleft :=
2202     }
2203   while$
2204 }
2205
2206 FUNCTION {sort.format.title}
2207 { 't :=
2208   "A " #2
2209     "An " #3
2210       "The " #4 t chop.word
2211     chop.word
2212   chop.word
2213   sortify
2214   #1 global.max$ substring$
2215 }
2216 FUNCTION {author.sort}
2217 { author empty$
2218     { key empty$
2219         { "to sort, need author or key in " cite$ * warning$
2220           ""
2221         }
2222         { key sortify }
2223       if$
2224     }
2225     { author sort.format.names }
2226   if$
2227 }
2228 FUNCTION {author.editor.sort}
2229 { author empty$
2230     { editor empty$
2231         { key empty$
2232             { "to sort, need author, editor, or key in " cite$ * warning$
2233               ""
2234             }
2235             { key sortify }
2236           if$
2237         }
2238         { editor sort.format.names }
2239       if$
2240     }
2241     { author sort.format.names }
2242   if$
2243 }
2244 FUNCTION {editor.sort}
2245 { editor empty$
2246     { key empty$
2247         { "to sort, need editor or key in " cite$ * warning$
2248           ""
2249         }
2250         { key sortify }
2251       if$
2252     }
2253     { editor sort.format.names }
2254   if$
2255 }
2256 INTEGERS { seq.num }
2257 FUNCTION {init.seq}
2258 { #0 'seq.num :=}
2259 EXECUTE {init.seq}
2260 FUNCTION {int.to.fix}
2261 { "000000000" swap$ int.to.str$ *
2262   #-1 #10 substring$
2263 }
2264 FUNCTION {presort}
2265 { calc.label
2266   label sortify
2267   "    "
2268   *
2269   seq.num #1 + 'seq.num :=
2270   seq.num  int.to.fix
2271   'sort.label :=
2272   sort.label
2273   *
2274   "    "
2275   *
2276   title field.or.null
2277   sort.format.title
2278   *
2279   #1 entry.max$ substring$
2280   'sort.key$ :=
2281 }
2282
2283 ITERATE {presort}
2284 SORT
2285 STRINGS { last.label next.extra }
2286 INTEGERS { last.extra.num number.label }
2287 FUNCTION {initialize.extra.label.stuff}
2288 { #0 int.to.chr$ 'last.label :=
2289   "" 'next.extra :=
2290   #0 'last.extra.num :=
2291   #0 'number.label :=
2292 }
2293 FUNCTION {forward.pass}
2294 { last.label label =
2295     { last.extra.num #1 + 'last.extra.num :=
2296       last.extra.num int.to.chr$ 'extra.label :=
2297     }
2298     { "a" chr.to.int$ 'last.extra.num :=
2299       "" 'extra.label :=
2300       label 'last.label :=
2301     }
2302   if$
2303   number.label #1 + 'number.label :=
2304 }
2305 FUNCTION {reverse.pass}
2306 { next.extra "b" =
2307     { "a" 'extra.label := }
2308     'skip$
2309   if$
2310   extra.label 'next.extra :=
2311   extra.label
2312   duplicate$ empty$
2313     'skip$
2314     { "{\natexlab{" swap$ * "}}" * }
2315   if$
2316   'extra.label :=
2317   label extra.label * 'label :=
2318 }
2319 EXECUTE {initialize.extra.label.stuff}
2320 ITERATE {forward.pass}
2321 REVERSE {reverse.pass}
2322 FUNCTION {bib.sort.order}
2323 { sort.label
2324   "    "
2325   *
2326   year field.or.null sortify
2327   *
2328   "    "
2329   *
2330   title field.or.null
2331   sort.format.title
2332   *
2333   #1 entry.max$ substring$
2334   'sort.key$ :=
2335 }
2336 ITERATE {bib.sort.order}
2337 SORT
2338 FUNCTION {begin.bib}
2339 { preamble$ empty$
2340     'skip$
2341     { preamble$ write$ newline$ }
2342   if$
2343   "\begin{thebibliography}{" number.label int.to.str$ * "}" *
2344   write$ newline$
2345   "\expandafter\ifx\csname natexlab\endcsname\relax\def\natexlab#1{#1}\fi"
2346   write$ newline$
2347   "\expandafter\ifx\csname bibnamefont\endcsname\relax"
2348   write$ newline$
2349   "  \def\bibnamefont#1{#1}\fi"
2350   write$ newline$
2351   "\expandafter\ifx\csname bibfnamefont\endcsname\relax"
2352   write$ newline$
2353   "  \def\bibfnamefont#1{#1}\fi"
2354   write$ newline$
2355   "\expandafter\ifx\csname citenamefont\endcsname\relax"
2356   write$ newline$
2357   "  \def\citenamefont#1{#1}\fi"
2358   write$ newline$
2359   "\expandafter\ifx\csname url\endcsname\relax"
2360   write$ newline$
2361   "  \def\url#1{\texttt{#1}}\fi"
2362   write$ newline$
2363   "\expandafter\ifx\csname urlprefix\endcsname\relax\def\urlprefix{URL }\fi"
2364   write$ newline$
2365   "\providecommand{\bibinfo}[2]{#2}"
2366   write$ newline$
2367   "\providecommand{\eprint}[2][]{\url{#2}}"
2368   write$ newline$
2369 }
2370 EXECUTE {begin.bib}
2371 EXECUTE {init.state.consts}
2372 ITERATE {call.type$}
2373 FUNCTION {end.bib}
2374 { newline$
2375   "\end{thebibliography}" write$ newline$
2376 }
2377 EXECUTE {end.bib}
2378 %% End of customized bst file
2379 %%
2380 %% End of file `apsrev.bst'.