%! % The following defines procedures assumed and used by program "dvi2ps" % % $Header: tex.ps,v 1.15 88/01/21 23:44:40 van Exp $ % % Original By: Neal Holtz, Carleton University, Ottawa, Canada % % % June, 1985 % Seriously hacked by Van Jacobson, LBL % /TeXDict 200 dict def % define a working dictionary TeXDict begin % start using it. % units are in "dots" (300/inch) /Resolution 300 def /Inch {Resolution mul} def % converts inches to internal units /Mtrx 6 array def %%%%%%%%%%%%%%%%%%%%% Page setup (user) options %%%%%%%%%%%%%%%%%%%%%%%% % dvi2ps will output coordinates in the TeX system ([0,0] 1" down and in % from top left, with y +ive downward). The default PostScript system % is [0,0] at bottom left, y +ive up. The Many Matrix Machinations in % the following code are an attempt to reconcile that. The intent is to % specify the scaling as 1 and have only translations in the matrix to % properly position the text. Caution: the default device matrices are % *not* the same in all PostScript devices; that should not matter in most % of the code below (except for lanscape mode -- in that, rotations of % -90 degrees resulted in the the rotation matrix [ e 1 ] % [ 1 e ] % where the "e"s were almost exactly but not quite unlike zeros. /@letter { % letter initmatrix 72 Resolution div dup neg scale % set scaling to 1. 310 -3005 translate % move origin to top (these are not exactly 1" Mtrx currentmatrix pop % and -10" because margins aren't set exactly right) /@TeXSave save def } def % note mode is like letter, except it uses less VM /@note { note initmatrix 72 Resolution div dup neg scale % set scaling to 1. 310 -3005 translate % move origin to top Mtrx currentmatrix pop /@TeXSave save def } def /@landscape { % letter initmatrix 72 Resolution div dup neg scale % set scaling to 1. [0 -1 1 0 0 0] concat 300 310 translate % move origin to top Mtrx currentmatrix pop /@TeXSave save def } def /@legal { legal initmatrix 72 Resolution div dup neg scale % set scaling to 1. 295 -3880 translate % move origin to top Mtrx currentmatrix pop /@TeXSave save def } def /@manualfeed { statusdict /manualfeed true put } def /@duplex { statusdict begin /setduplexmode where { pop true setduplexmode } if end } def % n @copies - set number of copies /@copies { /#copies exch def } def %%%%%%%%%%%%%%%%%%%% Procedure Defintions %%%%%%%%%%%%%%%%%%%%%%%%%% % id @newfont - initialize a new font dictionary /@newfont { /newname exch def /xscale exch def % these two lines are added here for scaling /yscale xscale neg def newname 7 dict def % allocate new font dictionary newname load begin /FontType 3 def /FontMatrix [xscale 0 0 yscale 0 0] def /FontBBox [0 0 1 1] def /BitMaps 128 array def /BuildChar {CharBuilder} def /Encoding 128 array def 0 1 127 {Encoding exch /.undef put} for end newname newname load definefont pop } def % the following is the only character builder we need. it looks up the % char data in the BitMaps array, and paints the character if possible. % char data -- a bitmap descriptor -- is an array of length 6, of % which the various slots are: /ch-image {ch-data 0 get} def % the hex string image /ch-width {ch-data 1 get} def % the number of pixels across /ch-height {ch-data 2 get} def % the number of pixels tall /ch-xoff {ch-data 3 get} def % number of pixels below origin /ch-yoff {ch-data 4 get} def % number of pixels to left of origin /ch-tfmw {ch-data 5 get} def % spacing to next character % fontdict ch Charbuilder - -- image one character /CharBuilder { /ch-code exch def % save the char code /font-dict exch def % and the font dict. /ch-data font-dict /BitMaps get ch-code get def % get the bitmap ch-data null eq not { ch-tfmw 0 ch-xoff neg ch-yoff neg ch-width ch-xoff sub ch-height ch-yoff sub setcachedevice ch-width ch-height true [1 0 0 1 ch-xoff ch-yoff] {ch-image} imagemask } if } def % fontdict @sf - -- make that the current font /@sf { setfont } def % in the following, the font-cacheing mechanism requires that % a name unique in the particular font be generated % char-data ch @dc - -- define a new character bitmap in current font /@dc { /ch-code exch def dup 0 get length 2 lt { pop [ <00> 1 1 0 0 8.00 ] } % replace <> with null if /ch-data exch def currentfont /BitMaps get ch-code ch-data put % generate a unique name simply from the character code currentfont /Encoding get ch-code dup ( ) cvs cvn put } def /@DRAFTF { gsave initmatrix newpath /Helvetica-Bold findfont setfont (Draft) dup stringwidth pop 8.875 exch div dup 72 mul dup scale 52.3 rotate 2.5 exch div -.35 translate 0.95 setgray 0 0 moveto show grestore } def /@DRAFTM { gsave initmatrix newpath /Helvetica-Bold findfont 72 scalefont setfont 0.95 setgray 576 702 moveto (Draft) stringwidth exch neg exch neg rmoveto (Draft) show grestore } def % n @bop0 - -- begin the char def section of a new page /@bop0 { pop } def % n @bop1 - -- begin a brand new page /@bop1 { pop Mtrx setmatrix /SaveImage save def } def /@draft { /@bop1 { 1 le {@DRAFTF} {@DRAFTM} ifelse Mtrx setmatrix /SaveImage save def } def } def % - @eop - -- end a page /@eop { showpage SaveImage restore } def % - @start - -- start everything /@start { @letter /@TeXSave save def } def % - @end - -- done the whole shebang /@end { end } def % x y p - -- move to position /p { moveto } bind def % x r - -- move right /r { 0 rmoveto } bind def % string s - -- show the string /s { show } bind def % x string m - -- move right then show string /m { exch 0 rmoveto show } bind def % ch c - -- show the character (code given) /c { c-string dup 0 4 -1 roll put show } bind def /c-string ( ) def % dx dy ru - -- set a rule (rectangle) /ru { /dy exch neg def % because dy is height up from bottom /dx exch def /x currentpoint /y exch def def % remember current point newpath x y moveto dx 0 rlineto 0 dy rlineto dx neg 0 rlineto closepath fill x y moveto } bind def /@MacSetUp { userdict /md known % if md is defined { userdict /md get type /dicttype eq % and if it is a dictionary { md begin % then redefine some stuff /letter {} def /note {} def /legal {} def /od{txpose 1 0 mtx defaultmatrix dtransform exch atan/pa exch def newpath clippath mark {transform{itransform moveto}} {transform{itransform lineto}} { 6 -2 roll transform 6 -2 roll transform 6 -2 roll transform { itransform 6 2 roll itransform 6 2 roll itransform 6 2 roll curveto } } {{closepath}} pathforall newpath counttomark array astore /gc xdf pop ct 39 0 put 10 fz 0 fs 2 F/|______Courier fnt invertflag{PaintBlack}if }def /txpose{ pxs pys scale ppr aload pop por { noflips { pop exch neg exch translate pop 1 -1 scale }if xflip yflip and { pop exch neg exch translate 180 rotate 1 -1 scale ppr 3 get ppr 1 get neg sub neg ppr 2 get ppr 0 get neg sub neg translate }if xflip yflip not and { pop exch neg exch translate pop 180 rotate ppr 3 get ppr 1 get neg sub neg 0 translate }if yflip xflip not and { ppr 1 get neg ppr 0 get neg translate }if } { noflips { translate pop pop 270 rotate 1 -1 scale }if xflip yflip and { translate pop pop 90 rotate 1 -1 scale ppr 3 get ppr 1 get neg sub neg ppr 2 get ppr 0 get neg sub neg translate }if xflip yflip not and { translate pop pop 90 rotate ppr 3 get ppr 1 get neg sub neg 0 translate }if yflip xflip not and { translate pop pop 270 rotate ppr 2 get ppr 0 get neg sub neg 0 exch translate }if }ifelse scaleby96 { ppr aload pop 4 -1 roll add 2 div 3 1 roll add 2 div 2 copy translate .96 dup scale neg exch neg exch translate }if }def /cp {pop pop showpage pm restore}def end }if } if } def % All software, documentation, and related files in this distribution of % psfig/tex are Copyright (c) 1987 Trevor J. Darrell % % Permission is granted for use and non-profit distribution of psfig/tex % providing that this notice be clearly maintained, but the right to % distribute any portion of psfig/tex for profit or as part of any commercial % product is specifically reserved for the author. % % % psfigTeX PostScript Prolog % $Header: tex.ps,v 1.15 88/01/21 23:44:40 van Exp $ % /psf$TeXscale { 65536 div } def /DocumentInitState [ matrix currentmatrix currentlinewidth currentlinecap currentlinejoin currentdash currentgray currentmiterlimit ] cvx def % x y bb-llx bb-lly bb-urx bb-ury startFig - /startTexFig { /psf$SavedState save def userdict maxlength dict begin currentpoint transform DocumentInitState setmiterlimit setgray setdash setlinejoin setlinecap setlinewidth setmatrix itransform moveto /psf$ury exch psf$TeXscale def /psf$urx exch psf$TeXscale def /psf$lly exch psf$TeXscale def /psf$llx exch psf$TeXscale def /psf$y exch psf$TeXscale def /psf$x exch psf$TeXscale def currentpoint /psf$cy exch def /psf$cx exch def /psf$sx psf$x psf$urx psf$llx sub div def % scaling for x /psf$sy psf$y psf$ury psf$lly sub div def % scaling for y psf$sx psf$sy scale % scale by (sx,sy) psf$cx psf$sx div psf$llx sub psf$cy psf$sy div psf$ury sub translate /DefFigCTM matrix currentmatrix def /initmatrix { DefFigCTM setmatrix } def /defaultmatrix { DefFigCTM exch copy } def /initgraphics { DocumentInitState setmiterlimit setgray setdash setlinejoin setlinecap setlinewidth setmatrix DefFigCTM setmatrix } def /showpage { initgraphics } def /erasepage { } def /copypage { initgraphics } def @MacSetUp } def % llx lly urx ury doclip - (args in figure coordinates) /doclip { currentpoint 6 2 roll newpath 4 copy 4 2 roll moveto 6 -1 roll exch lineto exch lineto exch lineto closepath clip newpath moveto } def % - endTexFig - /endTexFig { end psf$SavedState restore } def %%%% Additions by LA Carr to reencode Adobe fonts as TeX fonts (almost) %%%% Based on routine in LaserWriter Cookbook /ReEncodeForTeX { /newfontname exch def /basefontname exch def /TeXstr 30 string def /basefontdict basefontname findfont def /newfont basefontdict maxlength dict def basefontdict { exch dup /FID ne { dup /Encoding eq { exch dup length array copy newfont 3 1 roll put } { exch newfont 3 1 roll put } ifelse } { pop pop } ifelse } forall basefontdict /MathFontName known not { /TeXvec basefontname TeXstr cvs (Courier) search { pop pop pop TeXcourvec } { pop TeXnormalvec } ifelse def TeXvec aload pop TeXvec length 2 idiv { newfont /Encoding get 3 1 roll put } repeat } if newfontname newfont definefont pop } def /TeXnormalvec [ 8#014 /fi 8#015 /fl 8#020 /dotlessi 8#022 /grave 8#023 /acute 8#024 /caron 8#025 /breve 8#026 /macron 8#027 /ring 8#030 /cedilla 8#031 /germandbls 8#032 /ae 8#033 /oe 8#034 /oslash 8#035 /AE 8#036 /OE 8#037 /Oslash 8#042 /quotedblright 8#074 /exclamdown 8#076 /questiondown 8#134 /quotedblleft 8#136 /circumflex 8#137 /dotaccent 8#173 /endash 8#174 /emdash 8#175 /hungarumlat 8#176 /tilde 8#177 /dieresis ] def /TeXcourvec [ 8#016 /exclamdown 8#017 /questiondown 8#020 /dotlessi 8#022 /grave 8#023 /acute 8#024 /caron 8#025 /breve 8#026 /macron 8#027 /ring 8#030 /cedilla 8#031 /germandbls 8#032 /ae 8#033 /oe 8#034 /oslash 8#035 /AE 8#036 /OE 8#037 /Oslash 8#074 /less 8#076 /greater 8#134 /backslash 8#136 /circumflex 8#137 /underscore 8#173 /braceleft 8#174 /bar 8#175 /braceright 8#177 /dieresis ] def /TeXPSmakefont { % defines a routine for generating PS fonts, fudged! /TeXsize exch def findfont [ TeXsize 0 0 TeXsize neg 0 0 ] makefont } def % fontname basefontname angle ObliqueFont - % Create a General Oblique font /ObliqueFont { /ObliqueAngle exch def /ObliqueBaseName exch def /ObliqueFontName exch def /ObliqueTransform [1 0 ObliqueAngle sin ObliqueAngle cos div 1 0 0] def /basefontdict ObliqueBaseName findfont ObliqueTransform makefont def /newfont basefontdict maxlength dict def basefontdict { exch dup /FID ne { dup /Encoding eq { exch dup length array copy newfont 3 1 roll put } { exch newfont 3 1 roll put } ifelse } { pop pop } ifelse } forall newfont /FontName ObliqueFontName put ObliqueFontName newfont definefont pop } def % Palatino-ItalicUnslanted? You must be joking! % fontname basename SmallCapsFont - Create a General SmallCaps font /SmallCapsFont { /SmallCapsBaseName exch def /SmallCapsFontName exch def /basefontdict SmallCapsBaseName findfont def /newfont basefontdict maxlength 10 add dict def newfont begin /FontName SmallCapsFontName def /FontBaseDict basefontdict 1000 scalefont def /FontSCDict FontBaseDict .8 scalefont def /FontType 3 def /BuildChar {SmallCapChar} def /FontMatrix dup basefontdict exch get def /FontBBox dup basefontdict exch get def /Encoding dup basefontdict exch get def end SmallCapsFontName newfont definefont pop } def % fontdict ch SmallCapChar - % It shouldn't be so damn hard to do this (make one font out % of two others) but I tried several dozen variations on this % theme until I found something that worked. -- vj /SmallCapChar { /achar (A) def achar exch 0 exch put begin achar 0 get dup 97 ge exch 122 le and { % handle 'a' through 'z' specially achar 0 achar 0 get 32 sub put FontSCDict } { FontBaseDict } ifelse setfont achar stringwidth FontBBox setcachedevice newpath 0 0 moveto achar show end } def /MathEncodingVec [ /Gamma /Delta /Theta /Lambda /Xi /Pi /Sigma /Upsilon1 /Phi /Psi /Omega /alpha /beta /gamma /delta /epsilon /zeta /nu /theta /iota /kappa /lambda /mu /nu /xi /pi /rho /sigma /tau /upsilon /phi /chi /psi /omega /epsilon /theta1 /omega1 /rho /sigma /phi1 /arrowleft /arrowleft /arrowright /arrowright /suchthat /congruent /proportional /angle /zero /one /two /three /four /five /six /seven /eight /nine /period /comma /less /slash /greater /asteriskmath /partialdiff /A /B /C /D /E /F /G /H /I /J /K /L /M /N /O /P /Q /R /S /T /U /V /W /X /Y /Z /registerserif /copyrightserif /trademarkserif /logicalor /logicaland /section /a /b /c /d /e /f /g /h /i /j /k /l /m /n /o /p /q /r /s /t /u /v /w /x /y /z /dotlessi /j /weierstrass /macron /breve ] def % the following gives the character codes of the above characters % in their font. I.e., this is the character we have to hand "show" % to image the characters above. /MathCharVec [ 71 68 81 76 88 80 83 161 70 89 87 97 98 103 100 101 122 110 113 105 107 108 109 110 120 112 114 115 116 117 102 99 121 119 101 74 118 114 115 106 172 172 174 174 39 64 181 208 48 49 50 51 52 53 54 55 56 57 46 44 60 47 62 42 182 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 210 211 212 218 217 167 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 245 106 195 197 198 ] def % this array tells which font dictionary holds each character above % (0 = basefont, 1 = symbol (maybe slanted), 2 = symbol (unslanted)). /MathDictVec [ 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 0 0 0 0 0 0 0 0 0 0 0 0 2 2 2 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 2 2 2 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 ] def % fontname basename symbolname symbolbase angle MathOblique - % Create a "math" font with the symbol font characters slanted % by "angle" /MathOblique { 3 copy ObliqueFont pop pop MathFont } def % fontname basename symbolname MathFont - Create a math italic font % % We build this font out of the base font & the symbol font % using an encoding vec as close as we can get to cmmi10 with % standard postscript characters. An array parallel to the % encoding vector tells which font dictionary to use for a % particular character. /MathFont { /MathSymName exch def /MathBaseName exch def /MathFontName exch def /basefontdict MathBaseName findfont def /newfont basefontdict maxlength 10 add dict def newfont begin /FontName MathFontName def /FontDictArray [ basefontdict 1000 scalefont MathSymName findfont 950 scalefont /Symbol findfont 950 scalefont ] def /FontType 3 def /BuildChar {MathFontChar} def /FontMatrix dup basefontdict exch get def /FontBBox dup basefontdict exch get def % the encoding vector is a copy of the original font's % encoding, modified "appropriately". /Encoding dup basefontdict exch get dup length array copy def /WhichFont MathDictVec def /WhichChar MathCharVec def MathEncodingVec Encoding copy pop /achar (A) def end MathFontName newfont definefont pop } def % fontdict ch MathFontChar - % (there's some serious magic going on here: see note on % SmallCapChar above -- vj). /MathFontChar { exch begin achar exch 0 exch put FontDictArray WhichFont achar 0 get get get setfont achar dup 0 get WhichChar exch get 0 exch put achar stringwidth FontBBox setcachedevice newpath 0 0 moveto achar show end } bind def /@flushfonts { @TeXSave restore /@TeXSave save def} def end % revert to previous dictionary TeXDict begin @start %%Title: toms.dvi %%Creator: dvi2ps %%EndProlog %%Page: 1 1 1 @bop0 1.000000 /cmr10.622 @newfont cmr10.622 @sf [ 56 59 -2 0 58.590] 80 @dc [<0001FE0000001FFFE000007F03F80000F8007C0001F0003E0007E0001F800FC0000FC00F800007 C01F800007E03F000003F03F000003F07F000003F87E000001F87E000001F8FE000001FCFE0000 01FCFE000001FCFE000001FCFE000001FCFE000001FCFE000001FCFE000001FCFE000001FC7E00 0001F87E000001F87E000001F83F000003F03F000003F01F000003E00F800007C007C0000F8003 C0000F0001F0003E0000F8007C00003E01F000000FFFC0000001FE0000> 40 37 -2 0 43.046] 111 @dc [ 32 37 -2 0 33.719] 114 @dc [<0003F800001FFC00003F0E00007E070000FC030000FC030001F8038001F8018001F8018001F801 8001F8018001F8018001F8018001F8018001F8018001F8018001F8000001F8000001F8000001F8 000001F8000001F8000001F8000001F8000001F8000001F8000001F8000001F8000001F8000001 F8000001F8000001F8000001F8000001F80000FFFFFF00FFFFFF001FFFFF0007F8000003F80000 01F8000000F8000000F80000007800000078000000380000003800000038000000380000001800 0000180000001800000018000000180000> 32 53 -2 0 33.480] 116 @dc [<00FF800F8007FFE03FE01FE0F87FF03FC03C7E387F800EFC1C7F0006F80CFF0007F80CFE0003F8 0CFE0003F80CFE0001F80CFE0001F80CFE0001F80C7F0001F8007F0001F8003F8001F8003FC001 F8001FC001F8000FF001F80007FC01F80001FF01F800007FF9F8000007FFF80000003FF8000000 01F800000001F800000001F800000001F8001F8001F8001F8001F8003FC003F0003FC003F0003F C007E0003FC00FC0001F801F80001F807F000007FFFC000000FFE00000> 40 37 -4 0 43.046] 97 @dc [<01801FF0000001C07FFE000001C1F03F800001E3C00FC00001F70003F00001F60001F80001FE00 00FC0001FC0000FC0001F800007E0001F800007F0001F800003F0001F800003F8001F800003F80 01F800001F8001F800001FC001F800001FC001F800001FC001F800001FC001F800001FC001F800 001FC001F800001FC001F800001FC001F800001FC001F800001F8001F800003F8001F800003F80 01F800003F0001F800003F0001F800007E0001FC00007E0001FE0000FC0001FE0001F80001FF80 03F00001FBC007E00001F8F81F800001F87FFE000001F80FF0000001F80000000001F800000000 01F80000000001F80000000001F80000000001F80000000001F80000000001F80000000001F800 00000001F80000000001F80000000001F80000000001F80000000001F80000000001F800000000 01F80000000001F80000000001F80000000007F800000000FFF800000000FFF800000000FFF800 00000001F800000000> 48 60 -2 0 47.829] 98 @dc [ 24 60 -1 0 23.914] 108 @dc [<0003FE0000001FFFC000007F03F00000FC00780003F0001C0007E0000E000FC00007000FC00003 001F800003803F800001803F000001807F000000007F000000007E00000000FE00000000FE0000 0000FE00000000FE00000000FE00000000FE00000000FFFFFFFF80FFFFFFFF80FE00001F807E00 001F807F00001F807F00001F803F00001F003F00001F001F80003F001F80003E000FC0007E0007 E0007C0003F000F80001F801F000007E0FE000003FFF80000007FE0000> 40 37 -2 0 38.263] 101 @dc [<00000006000000000000000F000000000000000F000000000000000F000000000000001F800000 000000001F800000000000003FC00000000000003FC00000000000003FC00000000000007FE000 00000000007FE00000000000007FE0000000000000FF30000000000000FF30000000000001FF18 000000000001FE18000000000001FE18000000000003FE0C000000000003FC0C000000000007FC 0E000000000007F806000000000007F80600000000000FF80300000000000FF00300000000001F F00380000000001FE00180000000001FE00180000000003FE000C0000000003FC000C000000000 3FC000C0000000007FC00060000000007F80006000000000FF80007000000000FF000030000000 00FF00003000000001FF00001800000001FE00001800000003FE00001C00000003FC00000C0000 0003FC00000C00000007FC00000600000007F800000600000007F80000060000000FF000000300 00000FF00000030000001FF00000038000001FE00000018000001FE00000018000003FE0000000 C000003FC0000000C000007FC0000000E000007F800000006000007F80000000600000FF800000 00700000FF00000000780001FF80000000FC0003FFC0000003FF00FFFFFE00001FFFF0FFFFFE00 001FFFF0FFFFFE00001FFFF0> 64 60 -2 1 64.569] 86 @dc [<0007FE00001FFF80007E03E001F800F003F0003807E0001C0FC0000E1FC000061F8000073F8000 033F0000037F0000007F0000007E000000FE000000FE000000FE000000FE000000FE000000FE00 0000FE000000FE000000FE0000007E0000007F0000007F0000003F0000003F8000FC1F8000FC1F C001FE0FC001FE07E001FE03F001FE01F800FC007E007C001FFFF00007FFC0> 32 37 -3 0 38.263] 99 @dc [ 24 58 -1 0 23.914] 105 @dc [ 32 37 -2 0 38.263] 122 @dc [<0003FC07FFC0001FFF87FFC0007E07C7FFC001F800E7F80003F00077E00007E0003FE0000FC000 1FE0001F80000FE0001F80000FE0003F000007E0003F000007E0007F000007E0007F000007E000 7E000007E000FE000007E000FE000007E000FE000007E000FE000007E000FE000007E000FE0000 07E000FE000007E000FE000007E000FE000007E0007E000007E0007F000007E0007F000007E000 3F000007E0003F800007E0001F800007E0000FC0000FE0000FC0000FE00007E0001FE00003F000 3FE00000FC00F7E000007F03E7E000001FFF87E0000003FE07E00000000007E00000000007E000 00000007E00000000007E00000000007E00000000007E00000000007E00000000007E000000000 07E00000000007E00000000007E00000000007E00000000007E00000000007E00000000007E000 00000007E00000000007E00000000007E0000000001FE000000003FFE000000003FFE000000003 FFE00000000007E000> 48 60 -3 0 47.829] 100 @dc [ 40 61 -5 1 47.829] 83 @dc [<7FFFFC007FFFFC007FFFFC0001FE000000FC000000FC000000FC000000FC000000FC000000FC00 0000FC000000FC000000FC000000FC000000FC000000FC000000FC000000FC000000FC000000FC 000000FC000000FC000000FC000000FC000000FC000000FC000000FC000000FC000000FC000000 FC000000FC000000FC000000FC000000FC0000FFFFFC00FFFFFC00FFFFFC0000FC000000FC0000 00FC000000FC000000FC000000FC000000FC000000FC000000FC000000FC000000FC000000FC00 0000FC000000FC03F0007E07F8007E07F8007E07F8003F07F8001F87F8000FC3F00007E1F00001 FFE000007F80> 32 60 -1 0 26.306] 102 @dc [<00006000030000000000F000078000000000F000078000000000F000078000000001F8000FC000 000001F8000FC000000001F8000FC000000003FC001FE000000003FC001F6000000003FC001F60 00000007E6003F3000000007E6003E300000000FE6003E380000000FC3007E180000000FC3007C 180000001FC3007C1C0000001F8180FC0C0000001F8180F80C0000003F81C1F80E0000003F00C1 F8060000003F00C1F0060000007E00E3F0030000007E0063E0030000007E0063E003000000FC00 77E001800000FC0037C001800000FC0037C001800001F8001FC000C00001F8001F8000C00001F8 001F8000E00003F0001F8000E00003F0001F0000F00007F0003F8001F8000FF8007FC003FC00FF FF87FFF81FFF80FFFF87FFF81FFF80FFFF87FFF81FFF80> 64 37 -2 0 62.178] 119 @dc [ 56 59 -2 0 60.982] 66 @dc [ 32 37 -3 0 33.959] 115 @dc [ 56 59 -2 0 56.199] 70 @dc [<0003FF03FFE0000FFFC3FFE0003F81E3FFE0007E0073FC0000FC003BF00000FC001FF00001F800 0FF00001F8000FF00001F80007F00001F80007F00001F80003F00001F80003F00001F80003F000 01F80003F00001F80003F00001F80003F00001F80003F00001F80003F00001F80003F00001F800 03F00001F80003F00001F80003F00001F80003F00001F80003F00001F80003F00001F80003F000 01F80003F00001F80003F00001F80003F00001F80003F00001F80003F00001F80003F00007F800 0FF000FFF801FFF000FFF801FFF000FFF801FFF00001F80003F000> 48 37 -2 0 47.829] 117 @dc [ 48 37 -2 0 47.829] 110 @dc [ 56 59 -2 0 58.590] 69 @dc [<000018000000003C000000003C000000003C000000007E000000007E00000000FF00000000FF00 000000FF00000001F980000001F980000003F9C0000003F0C0000003F0C0000007E060000007E0 6000000FE07000000FC03000000FC03000001F801800001F801800003F801C00003F000C00003F 000C00007E000600007E00060000FE00070000FC00030000FC00030001F800038001F80001C003 F80003C003F80003E007FC0007F8FFFF801FFFFFFF801FFFFFFF801FFF> 40 37 -2 0 45.438] 118 @dc 1.000000 /cmsy10.432 @newfont cmsy10.432 @sf [<007000007000007000007000007000007000E07038F07078FC71F83E73E00FFF8003FE0001FC00 01FC0003FE000FFF803E73E0FC71F8F07078E07038007000007000007000007000007000007000> 24 26 -4 -2 29.887] 3 @dc 1.000000 /cmr10.432 @newfont cmr10.432 @sf [<00000000FC00FFFFC007FF00FFFFC00FC70007F8001F838003F0001F818003F0003F018003F000 3F018003F0003F000003F0003F000003F0003F000003F0003F000003F0003F000003F0003F0000 03F0003F000003F0003F000003F0003F000003F0007F000003F0007E000003F000FE000003F001 FC000003F007F0000003FFFFE0000003FFFFC0000003F003F0000003F0007C000003F0003E0000 03F0001F000003F0001F800003F0000F800003F0000FC00003F0000FC00003F0000FC00003F000 0FC00003F0000FC00003F0000F800003F0001F800003F0001F000003F0003E000003F0007C0000 07F003F00000FFFFFFC00000FFFFFE000000> 48 42 -2 1 44.001] 82 @dc [<007F000001FFC00007C1F0000F0078001E003C003C001E003C001E007C001F0078000F00F8000F 80F8000F80F8000F80F8000F80F8000F80F8000F80F8000F80F8000F8078000F0078000F003C00 1E003C001E001E003C000F00780007C1F00001FFC000007F0000> 32 26 -2 0 29.887] 111 @dc [ 32 26 -1 0 33.208] 110 @dc [<07F81F001FFE3F803F0FFCC07E03F860FC01F860F800F860F8007860F8007860FC0078607C0078 007E0078003F0078001FC0780007FC780001FFF800001FF8000000780000007800000078001E00 78003F00F8003F00F0003F01F0003F07E0001FFF800007FE0000> 32 26 -2 0 29.887] 97 @dc [ 16 42 -1 0 16.604] 108 @dc [<00FE0FF803FFCFF80FC1EF801F007F001E003F003E001F007C000F007C000F0078000F00F8000F 00F8000F00F8000F00F8000F00F8000F00F8000F00F8000F00F8000F0078000F007C000F007C00 0F003E001F001F003F000F807F0007E1FF0003FFCF0000FF0F0000000F0000000F0000000F0000 000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000001F00 0001FF000001FF0000000F00> 32 42 -2 0 33.208] 100 @dc [ 40 41 -2 0 39.020] 70 @dc [<7CFEFEFEFEFE7C> 8 7 -5 0 16.604] 46 @dc [ 40 41 -2 0 42.340] 66 @dc [ 16 41 -1 0 16.604] 105 @dc [ 24 26 -2 0 23.578] 115 @dc [<0007000000070000000F8000000F8000000F8000001EC000001EC000001EC000003C6000003C60 0000783000007830000078300000F0180000F0180001F01C0001E00C0001E00C0003C0060003C0 060007C0070007800700078007800F800FC0FFF01FF8FFF01FF8> 32 26 -1 0 31.548] 118 @dc [<007F0003FFE007E0F00F80381F00183E001C7C000C7C00007C0000F80000F80000F80000F80000 F80000FFFFFCFFFFFCF8003C78003C7C003C7C00783E00781E00F81F01F007C3E003FFC000FF00> 24 26 -2 0 26.566] 101 @dc [ 24 26 -1 0 23.412] 114 @dc [<007E0001FF0003E38003C18007C1C00780C00780C00780C00780C00780C00780C0078000078000 078000078000078000078000078000078000078000078000078000078000078000FFFF80FFFF80 3F80000F8000078000078000038000038000038000018000018000018000018000> 24 37 -1 0 23.246] 116 @dc [<00000C00000000001E00000000001E00000000001E00000000003F00000000003F00000000003F 00000000007F80000000007F8000000000FFC000000000FCC000000000FCC000000001FC600000 0001F86000000001F86000000003F03000000003F03000000007F03800000007E01800000007E0 180000000FE01C0000000FC00C0000000FC00C0000001F80060000001F80060000001F80060000 003F00030000003F00030000007F00038000007E00018000007E0001800000FE0000C00000FC00 00C00000FC0000C00001F80000600001F80000600003F80000700003F00000700003F000007800 07F80000FE00FFFF8007FFC0FFFF8007FFC0> 48 42 -1 1 44.831] 86 @dc [ 32 43 -3 1 33.208] 83 @dc [<007F87FC01FFE7FC03E0F7C003C03F8007801F8007800F8007800F800780078007800780078007 800780078007800780078007800780078007800780078007800780078007800780078007800780 078007800780078007800F800F80FF80FF80FF80FF8007800780> 32 26 -1 0 33.208] 117 @dc 1.000000 /cmsy10.300 @newfont cmsy10.300 @sf [<070007000700070007000700070007000700070007000700070007000700070007000700070007 000700070007000700FFF8FFF8FFF80700070007000700070007000700070007000700> 16 37 -2 8 18.449] 121 @dc cmr10.432 @sf [ 40 41 -2 0 44.831] 78 @dc [ 24 41 -2 0 21.585] 73 @dc [ 24 42 -1 0 18.265] 102 @dc [<01FFFFFE0001FFFFFE000001FE00000000FC00000000FC00000000FC00000000FC00000000FC00 000000FC00000000FC00000000FC00000000FC00000000FC00000000FC00000000FC00000000FC 00000000FC00000000FC00000000FC00000000FC00000000FC00000000FC00000000FC00000000 FC00000000FC00000000FC00000000FC0000C000FC000CC000FC000CC000FC000CC000FC000CC0 00FC000CE000FC001CE000FC001C6000FC00186000FC00187000FC00387800FC00787E00FC01F8 7FFFFFFFF87FFFFFFFF8> 40 41 -2 0 43.171] 84 @dc [<007F8003FFE007F0F00FC0381F00183E001C7E000C7C00007C0000F80000F80000F80000F80000 F80000F80000F80000F800007C00007C00007C00783E00FC1F00FC0F80FC07E0FC03FFF8007FE0> 24 26 -2 0 26.566] 99 @dc [ 32 42 -1 0 33.208] 104 @dc [<00FF800007FFF0001F80FC003E003E0078000F00F0000780E0000380E0000380E0000380E00003 80F000078078000F807C007F001FFFFF001FFFFE001FFFF8003FFFE0003C000000380000003800 00003000000039FC00003FFF00001F8F80001E03C0003E03E0003C01E0007C01F0007C01F0007C 01F0007C01F0007C01F0007C01F0003C01E0003E03E1801E03C3C00F8FE3C007FF7BC001FC3FC0 00000F80> 32 40 -2 13 29.887] 103 @dc [<1F0000003FC0000078E00000FC700000FC300000FC180000FC180000300C0000000C0000000E00 0000060000000600000007000000070000000F8000000F8000000F8000001EC000001EC000001E C000003C6000003C600000783000007830000078300000F0180000F0180001F01C0001E00C0001 E00C0003C0060003C0060007C0070007800700078007800F800FC0FFF01FF8FFF01FF8> 32 38 -1 12 31.548] 121 @dc [<03FC00001FFF00003E1FC000780FE0007E07E000FF03F000FF03F800FF01F800FF01F800FF01F8 007E01F8003C01F8000001F8000001F8000001F8000001F8000001F8000001F8000001F8000001 F8000001F8000001F8000001F8000001F8000001F8000001F8000001F8000001F8000001F80000 01F8000001F8000001F8000001F8000001F8000001F8000001F8000001F8000001F8000001F800 0003F80001FFFFC001FFFFC0> 32 42 -1 1 30.717] 74 @dc [<7FFFF07FFFF001FC0000F80000F80000F80000F80000F80000F80000F80000F80000F80000F800 00F80000F80000F80000F80000F80000F80000F80000F80000F80000F80000F80000F80000F800 00F80000F80000F80000F80000F80000F80000F80000F800F8F800FFF80007F80000F800003800 001800> 24 40 -4 0 29.887] 49 @dc [<007F000001FFC00007C1F0000F0078000E0038001E003C003C001E003C001E003C001E007C001F 0078000F0078000F0078000F00F8000F80F8000F80F8000F80F8000F80F8000F80F8000F80F800 0F80F8000F80F8000F80F8000F80F8000F80F8000F80F8000F80F8000F80F8000F8078000F0078 000F0078000F0078000F003C001E003C001E003C001E001E003C000E0038000F00780007C1F000 01FFC000007F0000> 32 41 -2 1 29.887] 48 @dc [<6070381C1C0E0606070303037FFFFFFFFEFE7C> 8 19 -5 12 16.604] 44 @dc [<03FC00000FFF00001E0FC0001C03E0003E01F0003F00F0003F0078003F003C003F003C001E001E 0000001E0000001F0000001F0000000F0000100F0003FF0F8007FFCF800F81EF801E006F803E00 3F803C003F807C001F8078001F80F8001F80F8000F80F8000F80F8000F80F8000F80F8000F00F8 000F00F8000F00F8001F0078001E007C001E007C001E003E003C001E0078000F00F80007C1F000 03FFC000007F0000> 32 41 -2 1 29.887] 57 @dc [ 24 40 -3 0 29.887] 50 @dc 1.000000 /cmbx10.329 @newfont cmbx10.329 @sf [ 40 31 -2 0 39.519] 65 @dc [<183FC01CFFF01FE1F81F80FC1F007E1F003E1F003F1F003F1F003F1F003F1F003F1F003F1F003F 1F003F1F003E1F007E1F807C1FE1F81FFFF01F1FC01F00001F00001F00001F00001F00001F0000 1F00001F00001F00001F0000FF0000FF0000> 24 32 -2 0 29.040] 98 @dc [ 16 20 -2 0 20.618] 115 @dc [<01F807FC0FCC0F860F860F860F860F860F800F800F800F800F800F800F800F800F800F80FFFCFF FC3F800F800780038003800380018001800180> 16 29 -1 0 20.328] 116 @dc [ 24 20 -2 0 21.527] 114 @dc [<0FF0FE3FFDFE7E1FE0FC07E0F803E0F803E0F803E0FC03E07E03E03FC3E00FFFE001FFE00003E0 1E03E03F03E03F03E03F07C03F0FC01FFF8007FC00> 24 20 -1 0 25.410] 97 @dc [<03FE000FFF801FC3C03F00E07E00607E0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000 FC07807C0FC07E0FC03F0FC01F8FC00FFF8003FE00> 24 20 -2 0 23.232] 99 @dc 1.000000 /cmr10.329 @newfont cmr10.329 @sf [ 32 32 -1 0 34.090] 65 @dc [ 16 20 -2 0 17.929] 115 @dc [<03F9FC07FDFC0F0FC00E07C00E03C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C0 0E01C00E01C00E01C00E01C0FE1FC0FE1FC00E01C0> 24 20 -1 0 25.252] 117 @dc [ 16 31 0 0 12.626] 105 @dc [<03E007F00F300E180E180E180E180E180E000E000E000E000E000E000E000E000E000E00FFF8FF F83E001E000E000E000600060006000600> 16 28 -1 0 17.676] 116 @dc [<03F8000FFE001F87003E03807C0180780000F80000F00000F00000F00000FFFF80FFFF80F00380 F007807807807807003C0F001E1E000FFC0003F000> 24 20 -1 0 20.202] 101 @dc [<01F80007FE001E07803C03C03801C07801E07000E0F000F0F000F0F000F0F000F0F000F0F000F0 7000E07000E03801C03C03C01E078007FE0001F800> 24 20 -1 0 22.727] 111 @dc [<7FF07FF00700070007000700070007000700070007000700070007000700070007000700FFF0FF F00700070007000700070007000700078F038F01EF00FF007E> 16 32 0 0 13.889] 102 @dc [<03F00FFC1F0E3E077C037800F800F000F000F000F000F000F000F0007800781E3C1E1E1E0FFE03 FC> 16 20 -2 0 20.202] 99 @dc [ 40 20 -1 0 37.878] 109 @dc [ 24 29 -1 9 25.252] 112 @dc [ 16 20 -1 0 17.803] 114 @dc [<03FC001FFF803E07C07801E0F000F0E00070E00070E00070F000F07803E03FFFE01FFFC03FFE00 38000030000030000037F0003FF8003E3E003C1E00780F00780F00780F00780F00780F00780F00 3C1E003E3E700FFF7007F7F00001E0> 24 31 -1 10 22.727] 103 @dc [<1FC7803FFFE07C7F70F81E30F01E30F00E30F00E30F80E007C0E003F0E001FFE0007FE00000E00 000E00000E00781E00781E00787C007FF8003FE000> 24 20 -2 0 22.727] 97 @dc [ 24 32 -1 0 25.252] 104 @dc [<00700000700000700000F80000F80001FC0001CC0001CC00038E00038600038600070300070300 0703000E01800E01800E01C01E03E0FF87F8FF87F8> 24 20 -1 0 23.989] 118 @dc [ 16 32 0 0 12.626] 108 @dc [ 24 20 -1 0 25.252] 110 @dc [ 32 31 -2 0 32.196] 66 @dc [<07E3F81FFBF83E1F803C0F80780780780380F00380F00380F00380F00380F00380F00380F00380 F003807803807807803C07801E1F800FFF8007F380000380000380000380000380000380000380 000380000380000380003F80003F80000380> 24 32 -2 0 25.252] 100 @dc [<7FC3FE7FC3FE0700E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E0 0700E00700E00700E00700E00700E0FFFFE0FFFFE0070000070000070000070000070000070000 0701E00781E003C1E001F1E000FFC0001F80> 24 32 0 0 25.252] 12 @dc [ 16 20 -1 0 20.202] 122 @dc [<0C7F000CFF800FC3C00F81E00F00F00E00F00E00780E00780E00780E00780E00780E00780E0078 0E00780E00F00F00F00F81E00FC3E00EFFC00E3F000E00000E00000E00000E00000E00000E0000 0E00000E00000E0000FE0000FE00000E0000> 24 32 -1 0 25.252] 98 @dc [<70F8F8F870> 8 5 -4 0 12.626] 46 @dc [ 32 31 -2 0 34.721] 68 @dc [<00E001C003C0038007000E000E001C001C003800380030007000700070006000E000E000E000E0 00E000E000E000E000E000E000E000E000E000E00060007000700070003000380038001C001C00 0E000E000700038003C001C000E0> 16 46 -3 12 17.676] 40 @dc [ 16 46 -3 12 17.676] 41 @dc [<3C00007F0000F38000F18000F0C00000C00000600000600000600000700000700000700000F800 00F80001FC0001CC0001CC00038E000386000386000703000703000703000E01800E01800E01C0 1E03E0FF87F8FF87F8> 24 29 -1 9 23.989] 121 @dc [<00C00C0000E01C0001E01E0001E01E0001F03E0003B03F0003B0330003B0330003987300071871 8007186180070CE1800E0CE0C00E0CC0C00E0FC0C01C07C0E01C0780E01C07C0F0FF9FF3FCFF9F F3FC> 32 20 -1 0 32.828] 119 @dc [<60F07038181C0C0C0C7CFCFCF870> 8 14 -4 9 12.626] 44 @dc [<07FFFE0007FFFE00000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F00 00000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F 0000C00F0030C00F0030C00F0030C00F0030E00F0070600F0060600F0060700F00E0780F01E07F FFFFE07FFFFFE0> 32 31 -2 0 32.828] 84 @dc [ 32 31 -2 0 29.671] 70 @dc [ 32 31 -2 0 34.090] 78 @dc [ 24 31 -2 0 28.408] 76 @dc [ 16 31 -1 0 16.414] 73 @dc [<001FE00000FFF80001F83C0007E00E000F8007000F0003801F0001803E0001803C0001C07C0000 C07C0000C07C0000C0F8000000F8000000F8000000F8000000F8000000F8000000F8000000F800 0000F80000C07C0000C07C0000C07C0001C03C0001C03E0001C01F0003C00F0007C00F8007C007 E00FC001F83DC000FFF0C0001FC0C0> 32 33 -3 1 32.828] 67 @dc [ 24 33 -3 1 25.252] 83 @dc [<3F00FFC0F1E0F0E0F0F00070007000700070007000700070007000700070007000700070007000 700070007000700070007000F007F007F0007000000000000000000000000000E001F001F001F0 00E0> 16 40 2 9 13.889] 106 @dc [<70F8F8F8700000000000000000000070F8F8F870> 8 20 -4 0 12.626] 58 @dc [<001FF000007FFC6001FC1FE003E007E007C003E00F8001E01F0001E03E0001E03E0001E07C0001 E07C0001E07C0001E0F8007FFCF8007FFCF8000000F8000000F8000000F8000000F8000000F800 0000F80000607C0000607C0000607C0000E03E0000E03E0000E01F0001E00F8003E007C007E003 E00FE001F83CE0007FF860001FE060> 32 33 -3 1 35.668] 71 @dc [ 16 30 -4 0 22.727] 49 @dc [<03F0000FFC001E1E001C0E00380700780780700380700380700380F003C0F003C0F003C0F003C0 F003C0F003C0F003C0F003C0F003C0F003C0F003C0F003C0F003C0700380700380700380780780 3807001C0E001E1E000FFC0003F000> 24 31 -2 1 22.727] 48 @dc [ 8 45 -4 11 12.626] 91 @dc cmbx10.329 @sf [ 40 31 -2 0 40.908] 78 @dc [<03FCFF0FFEFF1F87F81F03F81F01F81F00F81F00F81F00F81F00F81F00F81F00F81F00F81F00F8 1F00F81F00F81F00F81F00F81F00F8FF07F8FF07F8> 24 20 -3 0 29.040] 117 @dc [ 40 20 -3 0 43.559] 109 @dc [<01FF8007FFE01FC0F03F00383E00187E00007C0000FC0000FC0000FC0000FFFFF8FFFFF8FC00F8 FC00F87E00F87E00F03F01F01F87E007FFC001FF00> 24 20 -1 0 23.958] 101 @dc [ 16 33 -2 0 14.520] 105 @dc [ 16 32 -2 0 14.520] 108 @dc [ 24 20 -3 0 29.040] 110 @dc [<1E0000007F800000E1C00000C0E00000FC600000FC300000783000000018000000180000001C00 00001C0000003E0000003E0000007F0000007F000000FF800000F9800001F9C00001F0C00001F0 C00003E0600003E0600007C0300007C030000F8018000F8018001F001C00FFE07F80FFE07F80> 32 29 -1 9 27.588] 121 @dc cmr10.329 @sf [ 8 45 -1 11 12.626] 93 @dc [ 48 2 0 -11 45.454] 124 @dc 1.000000 /cmti10.329 @newfont cmti10.329 @sf [ 24 29 0 9 23.232] 112 @dc [<1F07803FCFC078FEE0707C60F03C60F01E70F01E30F00E00F00E00F80F00780F00780700780700 3C07803C07801E07800F0F80078FC003FFC000F9C0> 24 20 -4 0 23.232] 97 @dc [<3800003C00003C00001C00001C00001E00001E00000E00000E00000F00000F0000070000070000 C78380E783C063C3C063E3C077F1C03F3F801E1F00> 24 20 -3 0 19.166] 114 @dc [<3C007E00F700E300E300F380F1807000700078007800380038003C003C001C001C001E001E000E 000E000F000F000700070007800780038003801FC01FC003C0> 16 32 -4 0 11.616] 108 @dc [<0FE0001FFC003C3E00780700700300700000F00000F00000F00000F800007FF0007FFC00781F00 7C07003C03801E01800F038007C78003FF0000FE00> 24 20 -4 0 20.908] 101 @dc [<3F80007FE000F8F000787800703C00001C00001E00001E00000E0007CE000FFF001E3F001C1F00 3C0F003C07803C07803C03803C03803E03C01E03C01E01C01E01C00F01E00F01E00781E003C3E0 01E3F000FFF0003E70> 24 29 -2 9 20.908] 103 @dc [<0FC0003FF8003C7C00781E00700F00F00780F00780F003C0F003C0F803E07803E07801E07801E0 3C01E03C01E01E01C00F03C007C78003FF80007E00> 24 20 -4 0 23.232] 111 @dc [<0F001F803DC038E03C601C601C701E000E000F000F0007000780E380638063C071C03BC01F800F 00000000000000000000000000000000E000F000F000F0> 16 31 -3 0 13.939] 105 @dc [<1F003F8079C070C070E078607870380038003C003C001C001C001E001E000E000E000F00FFF0FF F00700078007800380038003C003C001C0> 16 28 -4 0 15.101] 116 @dc [ 24 32 -3 0 23.232] 104 @dc [<3803801E003C03C03F003C03C07B801C01C071C01C01C078C01E01E038C01E01E038E00E00E03C 000E00E01C000F00F01C000F00F01E000700700E000780780E00C780780E00E7C07C0F0063E03C 070063F07E0F0077F8778E003F1FF3FE001E0FE0FC00> 40 20 -3 0 37.171] 109 @dc [<1FC07FF0F078F03CF01CF01C701E001E007E03FC0FFC0FF80F801E000E0F0E0F0F0F078703FE01 FC> 16 20 -3 0 18.585] 115 @dc cmr10.329 @sf [<40E07030303818181878F8F8F8700000000000000000000070F8F8F870> 8 29 -4 9 12.626] 59 @dc [ 24 30 -2 0 22.727] 50 @dc [ 24 20 0 0 23.989] 120 @dc cmti10.329 @sf [<00FE000007FFC0000FC1F0001F0078003E001C003C000E00780007007800030070000380F00001 80F0000180F00001C0F0000000F0000000F80000007800000078000000780000007C0000003C00 00003C0000301E0000301E0000300F0000380F80003807C0003803C0003801F0007C00F8007C00 7E00FC001F83CC0007FF8E0001FE06> 32 33 -6 1 32.524] 67 @dc [<1F003FC071E070F0E078E03CE03CE01EE01EF01F701F700F700F780F780F3C0F3E0E3F1E3FFC1C F81C001E001E000E000E000F000F00070007003F803F800780> 16 32 -5 0 20.908] 98 @dc [<1F00007FC00071E000787000783800783C00101C00001E00000E0003EE0007FE000F3F000E0F00 0E0F000E07000E07800E03800E03800F03800703C00701C00781C0E381C06381E063C0E071C0E0 3BC0E01F80F00F0070> 24 29 -3 9 22.070] 121 @dc [<03F00007F8000F1C000E0E000E07000E03000E03000E01800E01800F01800701C00700C00780C0 E380C06380E063C1E071C3E03BC3E01F83E00F01C0> 24 20 -3 0 20.908] 118 @dc [<7C7C00FFFF00EFC780F7C180F381C0F3C0C073C0E001C00001C00001E00001E00000E00000E000 E0E1C060F1E07071E07079E03CFCE01FFFC007C780> 24 20 -3 0 21.085] 120 @dc [<3800F03C01F83C03DC1C038E1C03C61E01C61E01C70E01E00E00E00F00E00F00F0070070078070 C78070E7C07863E03863F07877F8703F1FF01E0FE0> 24 20 -3 0 25.555] 110 @dc [<1F07803FCFC078FEE0707C60F03C60F01E70F01E30F00E00F00E00F80F00780F00780700780700 3C07803C07801E07800F0F80078FC003FFC000F9C00001C00001E00001E00000E00000E00000F0 0000F00000700000700003F80003F8000078> 24 32 -4 0 23.232] 100 @dc [ 8 14 -3 9 13.939] 44 @dc [<7C00007F0000FF00007B800073800001C00001C00001C00001E00000E00000E00000E00000E000 00F000007000007000007000007000007800003800003800003800003800003C00001C00001C00 001C0001FFE001FFE0000E00000E00000E00000E00000E0000070000070000073C00073C0003BC 0001FC0000F8> 24 41 2 9 13.939] 102 @dc [<03E1E007FBF00F3FB80E0F180E0F180E079C0E078C0E03800E03800F03C00703C00701C00781C0 E381E06381E063C0E071C0E03BC0F01F80F00F0070> 24 20 -3 0 24.393] 117 @dc [<0FE0003FFC003C3E00780700700300F00000F00000F00000F00000F80000780000780000780000 3C02003C07801E07800F078007C38003FF00007E00> 24 20 -4 0 20.908] 99 @dc cmr10.329 @sf [<00FFE000FFE0000E00000E00000E00000E00000E00000E00000E00FFFFF0FFFFF0E00E00600E00 300E00380E00180E000C0E000E0E00060E00030E00038E00018E0000CE0000EE00006E00003E00 003E00001E00000E00000E00> 24 30 -1 0 22.727] 52 @dc cmbx10.329 @sf [ 48 31 -2 0 49.620] 77 @dc [ 24 32 -3 0 29.040] 104 @dc [<01FF0007FFC01F83F03E00F83E00F87C007C7C007CFC007EFC007EFC007EFC007EFC007EFC007E 7C007C7C007C3E00F83E00F81F83F007FFC001FF00> 24 20 -1 0 26.136] 111 @dc [<3FFC003FFC0007C00007C00007C00007C00007C00007C00007C00007C00007C00007C00007C000 07C00007C00007C00007C00007C000FFFC00FFFC0007C00007C00007C00007C00007C00007C3C0 07C7E007E7E003E7E001FFE000FFC0003F80> 24 32 -1 0 15.972] 102 @dc [<000FFC00007FFF8001FF03E003F800F00FE000381FC0001C1F80000C3F80000E7F0000067F0000 067F000006FE000000FE000000FE000000FE000000FE000000FE000000FE000000FE000000FE00 00067F0000067F00000E7F00000E3F80000E1F80001E1FC0003E0FE0007E03F800FE01FE03DE00 7FFF8E000FFC06> 32 31 -3 0 37.751] 67 @dc [ 24 29 -2 9 29.040] 112 @dc [<03FF801FFFF03F01F87C007CF8003EF0001EF0001EF0001EF8003E7C00FE3FFFFC0FFFF81FFFF0 1FFFC01E00001C00001800001FFE001FFF801F8FC01F07C03E03E03E03E03E03E03E03E03E03E0 1F07DE1F8FDE0FFFFE03FE7C> 24 30 -1 10 26.136] 103 @dc cmr10.329 @sf [ 40 31 -2 0 41.666] 77 @dc cmti10.329 @sf [<7E07E00000007F0FF0000000FF1F380000007B8F1C00000071CE0E00000001C00E00000001C007 00000001E00700000000E00700000000E007800F0000E003801F8000E003803DC000F0038038C0 0070038038C0007003C038E0007001C03C60007001C01C00007801C01C00003801C01C00003801 E01E00003800E00E00003800E00E00003C00E00E00001C00E00F00001C00F00700001C00700700 001C0070070001FFFFFFFF8000FFFFFFFF80000E00780000000E00380000000E00380000000F00 3800000007003800000007003C00000007001C01C0000781FC01E0000381EE01E00001C1EF00E0 0000FFE3FFE000003FC0FF80> 48 41 2 9 40.075] 14 @dc cmr10.329 @sf [ 32 31 -2 0 35.353] 75 @dc [ 32 31 -2 0 30.934] 80 @dc [ 16 3 -1 -8 15.151] 45 @dc 1.000000 /cmbx10.518 @newfont cmbx10.518 @sf [<7FFFFFF07FFFFFF07FFFFFF07FFFFFF0003FE000003FE000003FE000003FE000003FE000003FE0 00003FE000003FE000003FE000003FE000003FE000003FE000003FE000003FE000003FE000003F E000003FE000003FE000003FE000003FE000003FE000003FE000003FE000003FE000003FE00000 3FE000003FE000003FE000003FE000003FE000003FE000003FE000003FE000E03FE000FFBFE000 FFFFE000FFFFE0001FFFE000007FE000000FE0000003E0000001E000> 32 46 -6 0 41.244] 49 @dc [ 32 49 -2 0 31.282] 73 @dc [ 48 32 -3 0 45.827] 110 @dc [<001FE0007FF801FFFC03FE3E03FC1E07F81F07F80F07F80F07F80F07F80F07F80F07F80F07F80F 07F80007F80007F80007F80007F80007F80007F80007F80007F80007F80007F80007F80007F800 07F80007F800FFFFFEFFFFFEFFFFFE1FFFFE0FF80007F80003F80001F80001F80000F80000F800 00F80000F800007800007800007800007800007800> 24 46 -2 0 32.079] 116 @dc [ 32 32 -2 0 33.972] 114 @dc [<0007FE0000003FFFC00001FFFFF80003FE07FC0007F801FE000FE0007F001FE0007F803FC0003F C03FC0003FC07F80001FE07F80001FE07F80001FE0FF80001FF0FF80001FF0FF80001FF0FF8000 1FF0FF80001FF0FF80001FF0FF80001FF0FF80001FF07F80001FE07F80001FE07F80001FE03FC0 003FC03FC0003FC01FC0003F800FE0007F0007F000FE0003FC03FC0000FFFFF000003FFFC00000 07FE0000> 40 32 -2 0 41.244] 111 @dc [<001FF81FFF00FFFF1FFF01FFFFDFFF07FE0FFFFF0FF801FFF01FE000FFE01FE0007FE03FC0003F E07FC0001FE07FC0001FE07F80001FE0FF80001FE0FF80001FE0FF80001FE0FF80001FE0FF8000 1FE0FF80001FE0FF80001FE0FF80001FE0FF80001FE0FF80001FE07F80001FE07FC0001FE03FC0 001FE03FC0001FE01FE0003FE01FF0007FE00FF800FFE003FE07FFE001FFFFFFE0007FFF9FE000 0FFC1FE00000001FE00000001FE00000001FE00000001FE00000001FE00000001FE00000001FE0 0000001FE00000001FE00000001FE00000001FE00000001FE00000003FE0000003FFE0000003FF E0000003FFE0000003FFE000000007E0> 40 50 -3 0 45.827] 100 @dc [<001FFC0FFF80007FFF0FFF8001FFFFCFFF8003FE03EFFF8003FC00FFF80007F8007FF00007F800 3FF00007F8001FF00007F8001FF00007F8000FF00007F8000FF00007F8000FF00007F8000FF000 07F8000FF00007F8000FF00007F8000FF00007F8000FF00007F8000FF00007F8000FF00007F800 0FF00007F8000FF00007F8000FF00007F8000FF00007F8000FF00007F8000FF00007F8000FF000 0FF8001FF000FFF801FFF000FFF801FFF000FFF801FFF000FFF801FFF00001F80003F000> 48 32 -3 0 45.827] 117 @dc [<000FFE00007FFF8001FFFFE003FF03F007FC00F80FF0007C1FE0003E3FE0001E3FC0001E7FC000 007FC00000FF800000FF800000FF800000FF800000FF800000FF800000FF800000FF800000FF80 0000FF8000007F8000407FC003F83FC003F83FC007FC1FE007FC0FF007FC07F807FC03FE03FC01 FFFFF8007FFFF0000FFF80> 32 32 -3 0 36.661] 99 @dc [ 24 51 -3 0 22.913] 105 @dc 1.000000 /cmr12.300 @newfont cmr12.300 @sf [ 32 34 -2 0 34.539] 66 @dc [<01FC0007FF000F83C03E01C03C00E0780060780000F00000F00000F00000F00000F00000FFFFE0 FFFFE07801E07801E03C01C03E03C01F0F8007FF0001FC00> 24 21 -1 0 21.677] 101 @dc [ 16 21 -2 0 19.239] 115 @dc [ 16 35 -1 0 13.548] 108 @dc [<7FF87FF807000700070007000700070007000700070007000700070007000700070007000700FF F8FFF8070007000700070007000700070007000700038F03CF01EF00FF003E> 16 35 0 0 14.903] 102 @dc [<01FC7F07FF7F0787F80E01F00E00F00E00F00E00700E00700E00700E00700E00700E00700E0070 0E00700E00700E00700E00701E00F0FE07F0FE07F00E0070> 24 21 -1 0 27.097] 117 @dc [ 24 21 -1 0 27.097] 110 @dc [<03FC000FFF001F87803E01803C01C07800C0780000F00000F00000F00000F00000F00000F00000 F000007800007800003C07803E07801F07800FFF8003FE00> 24 21 -2 0 21.677] 99 @dc [<03E007F807380F1C0E0C0E0C0E0C0E0C0E0C0E000E000E000E000E000E000E000E000E000E00FF F8FFF83E001E000E000E000E0006000600060006000600> 16 31 -1 0 18.968] 116 @dc [ 16 34 -1 0 13.548] 105 @dc [<01FC0007FF000F07801C01C03800E07800F0700070F00078F00078F00078F00078F00078F00078 F000787000707800F03800E01C01C00F078007FF0001FC00> 24 21 -1 0 24.387] 111 @dc [ 16 21 -1 0 18.968] 114 @dc [<1FC3C03FF3F07C3FB8F81F18F00F18F00718F00718F80700F807007C07003F07001FFF0003FF00 000F000007000007003C0F003C0F003C3E003FFC001FF000> 24 21 -2 0 24.387] 97 @dc [<03FE001FFFC03F07E07800F0F00078E00038E00038E00038F000787000787C01F03FFFF00FFFC0 1FFF001C00001800001800001BF8001FFC001F1E001E0F003C07803C07803C07803C07803C0780 3C07803C07801E0F000F1F3807FFB803FBF80000F0> 24 33 -1 11 24.387] 103 @dc [ 40 21 -1 0 40.645] 109 @dc [<03F0FE0FFEFE1F0FF03C03E07801E07801E07000E0F000E0F000E0F000E0F000E0F000E0F000E0 F000E07800E07800E07C01E03E03E01F0FE00FFEE003F8E00000E00000E00000E00000E00000E0 0000E00000E00000E00000E00000E00001E0000FE0000FE00000E0> 24 35 -2 0 27.097] 100 @dc [ 24 35 -1 0 27.097] 104 @dc [<3E00007F0000F38000F1C000F0C000006000006000007000003000003000003800003800007C00 007C00007C0000E60000E60000E60001C30001C30003C3800381800381800700C00700C00700C0 0E00E00E00701E00F8FFC3FEFFC3FE> 24 31 -1 10 25.742] 121 @dc [ 24 31 -1 10 27.097] 112 @dc [ 8 15 -4 10 13.548] 44 @dc [<0060060000E0070000F00F0000F00F0001F00F8001D81D8001D81D8001D81980039C38C0038C38 C0038C30C0070E706007067060070670600E0660300E03E0300E03E0301C03C0381E01E07CFF8F F9FFFF8FF9FF> 32 21 -1 0 35.225] 119 @dc [<0C3F800CFFE00FE1F00F80F80F007C0E003C0E003C0E001E0E001E0E001E0E001E0E001E0E001E 0E001E0E001E0E003C0F003C0F80780FE1F00EFFE00E3FC00E00000E00000E00000E00000E0000 0E00000E00000E00000E00000E00001E0000FE0000FE00000E0000> 24 35 -1 0 27.097] 98 @dc [<003800003800007C00007C00007C0000E60000E60000E60001C30001C30003C380038180038180 0700C00700C00700C00E00E00E00701E00F8FFC3FEFFC3FE> 24 21 -1 0 25.742] 118 @dc [<70F8F8F870> 8 5 -4 0 13.548] 46 @dc [<000FE000007FFC0000F83E0003E00F8007C007C00F8003E00F0001E01E0000F03E0000F83C0000 787C00007C7C00007C7C00007CF800003EF800003EF800003EF800003EF800003EF800003EF800 003EF800003EF800003E7800003C7800003C7C00007C7C00007C3C0000783E0000F81E0000F00F 0001E00F0001E0078003C003E00F8000F83E00007FFC00000FE000> 32 36 -3 1 37.935] 79 @dc 1.000000 /cmsy7.300 @newfont cmsy7.300 @sf [<040006000600C660F7E03F801F003F80F7E0C660060006000400> 16 13 -2 -1 17.008] 3 @dc 1.000000 /cmr10.300 @newfont cmr10.300 @sf [<003FC00001FFF00003F03C000FC00E001F0007001E0003003C0003807C00018078000180780001 80F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000180780001807800 03807C0003803C0003801E0007801F000F800FC01F8003F07B8001FFF180003FC180> 32 28 -2 0 29.980] 67 @dc [<03F0000FFC001E1E00380700780780700380F003C0F003C0F003C0F003C0F003C0F003C0700380 7807803807001E1E000FFC0003F000> 24 18 -1 0 20.755] 111 @dc [ 24 18 -1 0 23.061] 110 @dc [<07C00FE01E701C301C301C301C301C301C001C001C001C001C001C001C001C00FFE0FFE03C001C 001C000C000C000C000C000C00> 16 26 -1 0 16.143] 116 @dc [ 16 18 -1 0 16.258] 114 @dc [ 16 29 -1 0 11.531] 105 @dc [<18FE001BFF801F87C01E03C01E01E01C01E01C00F01C00F01C00F01C00F01C00F01C00F01C00F0 1C01E01E03E01F87C01FFF801CFE001C00001C00001C00001C00001C00001C00001C00001C0000 1C0000FC0000FC0000> 24 29 -1 0 23.061] 98 @dc [<07F3F00FFFF01E1F801C0F801C07801C03801C03801C03801C03801C03801C03801C03801C0380 1C03801C03801C0380FC1F80FC1F80> 24 18 -1 0 23.061] 117 @dc [<7FE07FE00E000E000E000E000E000E000E000E000E000E000E000E000E000E00FFE0FFE00E000E 000E000E000E000E000F1E071E079E03FE00FC> 16 29 0 0 12.684] 102 @dc [ 24 29 -1 0 23.061] 104 @dc [<07F00FF83F1C3C0E78067800F000F000F000F000FFFEFFFEF01E781E781C3E7C1FF807E0> 16 18 -1 0 18.449] 101 @dc [ 32 28 -2 0 31.133] 78 @dc [<1FC7807FFFC07C7E60F81E60F00E60F00E60F80E00F80E007E0E003FFE0007FE00001E00000E00 180E003C1E003C3C003FF8001FE000> 24 18 -1 0 20.755] 97 @dc [ 16 29 -1 0 11.531] 108 @dc [ 16 28 -1 0 14.990] 73 @dc [ 16 18 -1 0 16.373] 115 @dc [ 24 28 -2 0 23.061] 83 @dc [<07E3F01FFBF03E1F807C0F80780780F00380F00380F00380F00380F00380F00380F00380F80380 7803807C07803E1F801FFF8007F380000380000380000380000380000380000380000380000380 000380001F80001F80> 24 29 -1 0 23.061] 100 @dc [<03FFFC0003FFFC00000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F00 00000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000C00F0060C00F 0060C00F0060C00F0060E00F00E0600F00C0700F01C0780F03C07FFFFFC07FFFFFC0> 32 28 -1 0 29.980] 84 @dc [<07F00FF83F1C3C0E78067800F000F000F000F000F000F000780078183C3C3E3C0FFC07F8> 16 18 -1 0 18.449] 99 @dc [<07F8001FFE007C0F80F807C0F003C0E001C0E001C0F003C07807C07FFF803FFF003FFC00780000 70000070000037E0003FF8003C3C00781E00781E00781E00781E00781E00781E003C3DC01FFFC0 07E7C0> 24 27 -1 9 20.755] 103 @dc [<3C00007E0000C70000F18000F1800000C00000C00000C00000E00000E00000E00001F00001F000 03F800039800039800071C00070C00070C000E06000E06000E06001C07001C0780FF0FE0FF0FE0> 24 26 -1 8 21.908] 121 @dc [<01C00380038007000E000C001C001800380038007000700070007000E000E000E000E000E000E0 00E000E000E000E000E000E000E000E00070007000700070003800380018001C000C000E000700 0380038001C0> 16 42 -3 11 16.143] 40 @dc [ 16 42 -2 11 16.143] 41 @dc [<60E070303818181878F8F8F870> 8 13 -3 8 11.531] 44 @dc [<7E00FF80F3C0F1E0F0E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000 E000E000E000E000E00FE00FE000000000000000000000000001C003E003E003E001C0> 16 37 3 8 12.684] 106 @dc [ 24 26 -1 8 23.061] 112 @dc [<003F800000FFC00001F0F00003C0700007803800078018000F001C000F000C000F000C000F000C 000F000C000F000C000F000C000F000C000F000C000F000C000F000C000F000C000F000C000F00 0C000F000C000F000C000F000C000F000C000F000C000F001E00FFF0FFC0FFF0FFC0> 32 28 -2 0 31.133] 85 @dc [<70F8F8F870> 8 5 -3 0 11.531] 46 @dc [<7F87F87F87F80E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C0 0E01C00E01C00E01C0FFFFC0FFFFC00E00000E00000E00000E00000E00000E03C00F03C00783C0 03C3C001FF80003F00> 24 29 0 0 23.061] 12 @dc [ 40 18 -1 0 34.592] 109 @dc cmsy7.300 @sf [<0C000C000C000C000C000C000C000C000C000C000C000C000C000C000C000C000C000C00FFC0FF C00C000C000C000C000C000C00> 16 26 -2 6 15.220] 121 @dc cmr10.300 @sf [ 32 28 -1 0 31.133] 65 @dc [<60F07038181C0C0C7CFCFCF870> 8 13 -3 -16 11.531] 39 @dc [<70F8F8F870000000000000000070F8F8F870> 8 18 -3 0 11.531] 58 @dc [ 40 28 -2 0 38.051] 77 @dc [ 24 28 -2 0 25.944] 76 @dc [ 16 3 0 -7 13.837] 45 @dc [<003FE18001FFFB8003F03F800FC00F801F0007801E0007803C0007807C00078078000780780007 80F000FFF0F000FFF0F0000000F0000000F0000000F0000000F0000000F0000180780001807800 03807C0003803C0003801E0007801F000F800FC01F8003F07B8001FFF180003FC180> 32 28 -2 0 32.574] 71 @dc [ 32 28 -2 0 31.709] 68 @dc [ 16 27 -2 0 20.755] 50 @dc [<07E00FF01C38381C781E700E700EF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF0 0F700E700E781E381C1C380FF007E0> 16 27 -2 0 20.755] 48 @dc [<07E01FF83C3C781EF00EE007E007E007E00FF00F703F787E3DFC1FFC0FF01FF03FF87F3C7C1E78 0E700E700E701E381E3C3C1FF807E0> 16 27 -2 0 20.755] 56 @dc [<1F803FE078F07878783C781C781E001E000E010F1FEF3FFF383F781FF01FF00FF00FF00FF00FF0 0FF00EF00E781E781C3C381FF807E0> 16 27 -2 0 20.755] 57 @dc [ 24 28 -2 0 28.250] 69 @dc [<00E00000E00000E00001F00001F00003F800039800039800071C00070C00070C000E06000E0600 0E06001C07001C0780FF0FE0FF0FE0> 24 18 -1 0 21.908] 118 @dc [<003FE00001FFFE0003E01FC00F0001E01E0000001C1F0F00387FDF8070F1FDC071E0F8C061C078 60E1C03860C3803860C3803860C3803860C3803860C3803860C3803860C3803860E1C038E061C0 78C071E0E1C070F1C1C0387FC3801C1F07001E000F000F001E0003E0F80001FFF000003F8000> 32 29 -2 0 32.286] 64 @dc 1 @bop1 cmr10.622 @sf 99 291 p 80 c -1(ortable)m 27 r 86 c -6(ectorized)m 28(Soft)m -1 r 119 c -1(are)m 27(for)m 29(Bessel)m 29 r 70 c -6(unction)m 817 395 p (Ev)s -4(aluation)m cmsy10.432 @sf 1223 365 p 3 c cmr10.432 @sf 447 543 p (Ronald)s 19(F.)m 20(Boisv)m -1(ert)m 18(and)m 21(Bonita)m 20(V.)m 19(Saunders)m cmsy10.300 @sf 1593 522 p 121 c cmr10.432 @sf 395 618 p (National)s 19(Institute)m 20(of)m 20(Standards)m 21(and)m 20 r 84 c -4(ec)m -2(hnology)m 797 734 p (Jan)s -1(uary)m 19(10,)m 19(1992)m cmbx10.329 @sf 920 972 p (Abstract)s cmr10.329 @sf 235 1056 p 65 c 17(suite)m 16(of)m 16(computer)m 17(programs)m 15(for)m 16(the)m 17(ev)m -2(aluation)m 15(of)m 16(Bessel)m 16(functions)m 17(and)m 17(mo)m 1(di\014ed)m 167 1112 p (Bessel)s 20(functions)m 20(of)m 19(orders)m 20(zero)m 20(and)m 20(one)m 20(for)m 20 r 97 c 19 r 118 c (ector)s 19(of)m 19(real)m 20(argumen)m (ts)s 18(is)m 19(describ)m 1(ed.)m 167 1169 p (Distinguishing)s 11 r 99 c (haracteristics)s 11(of)m 13(these)m 13(programs)m 12(are)m 13(that)m 13(\(a\))m 12(they)m 13(are)m 13 r 112 c 1(ortable)m 13(across)m 12 r 97 c 167 1225 p (wide)s 13(range)m 13(of)m 12(mac)m (hines,)s 12(and)m 14(\(b\))m 12(they)m 14(are)m 12 r 118 c (ectorized)s 12(in)m 13(the)m 13(case)m 14(when)m 13 r 109 c (ultiple)s 11(function)m 167 1282 p (ev)s -2(aluations)m 13(are)m 14(to)m 15 r 98 c 1 r 101 c 15 r 112 c 1(erformed.)m 20(The)m 15 r 112 c 1(erformance)m 15(of)m 15(the)m 15(new)m 15(programs)m 13(are)m 15(compared)m 167 1338 p (with)s 19(soft)m 119 c -1(a)m -1(re)m 18(from)m 19(the)m 20(FNLIB)m 20(collection)m 19(of)m 19 r 70 c -3(ullerton)m 18(on)m 20(whic)m 104 c 19(the)m 19(new)m 20(soft)m 119 c -1(are)m 17(is)m 167 1395 p (based.)s 167 1480 p (Categories)s 14(and)m 16(Sub)m 3(ject)m 16(Descriptors:)m 19(G.1.0)m 14 r 91 c cmbx10.329 @sf (Numerical)s 17(Analysis)m cmr10.329 @sf -1(]:)m 19(General|)m cmti10.329 @sf 112 c -1(ar)m -1(al)m 2(l)m -1(el)m 167 1537 p (algorithms)s cmr10.329 @sf 59 c 15(G.1.2)m 13 r 91 c cmbx10.329 @sf (Numerical)s 16(Analysis)m cmr10.329 @sf -1(]:)m 18(Appro)m (ximati)s -1(on|)m cmti10.329 @sf (Chebyshev)s 14(appr)m -1(oximation)m 167 1593 p (and)s 15(the)m -1(ory,)m 15(elementary)m 15(function)m 14(appr)m -1(oximation)m cmr10.329 @sf 59 c 14(G.4)m 13 r 91 c cmbx10.329 @sf (Mathematics)s 16(of)m 16(Computing)m cmr10.329 @sf (]:)s 167 1650 p (Mathematical)s 13(Soft)m 119 c -1(ar)m -1(e|)m cmti10.329 @sf (algorithm)s 16(analysis,)m 15(e\016ciency,)m 15 r 112 c -1(ortability)m cmr10.329 @sf 167 1736 p (General)s 15 r 84 c -3(erms:)m 18(Algorithms)m 167 1821 p (Additional)s 14(Keyw)m (ords)s 14(and)m 16(Phrases:)m 20(Bessel)m 15(function,)m 15 r 104 c (yp)s 1(erb)m 1(olic)m 14(Bessel)m 16(function,)m 14(math-)m 167 1878 p (ematical)s 20(soft)m 119 c -2(are,)m 20(mo)m 1(di\014ed)m 22(Bessel)m 21(function,)m 22(order)m 21(zero)m 22(and)m 21(one,)m 22 r 112 c 1(ortable)m 21(soft)m 119 c -1(a)m -1(re,)m 167 1934 p (sp)s 1(ecial)m 15(function,)m 15 r 118 c (ectorized)s 13(soft)m 119 c -1(ar)m -1(e.)m cmbx10.518 @sf 45 2101 p 49 c 83(In)m -1(tro)m 2(duction)m cmr12.300 @sf 45 2210 p (Bessel)s 13(functions)m 13(of)m 14(real)m 13(argumen)m 116 c 13(and)m 14(in)m (teger)s 12(order)m 14(are)m 13(among)m 15(the)m 13(most)m 14(commonly)m 13 r 111 c 1(ccurring)m 45 2270 p (sp)s 1(ecial)m 20(functions)m 20(of)m 20(applied)m 20(mathematics,)m 19(and)m 21(most)m 21(soft)m 119 c (are)s 18(libraries)m 19(con)m (tain)s 19(routines)m 20(for)m 45 2330 p (their)s 16(ev)m -2(aluation.)m 21(One)m 17(of)m 16(the)m 17(most)m 17(successful)m 16(collections)m 15(of)m 17(routines)m 17(for)m 16(ev)m -2(aluating)m 16(these)m 16(and)m 45 2374 p 780 2 ru cmsy7.300 @sf 101 2406 p 3 c cmr10.300 @sf 120 2420 p (Con)s (tribution)s 11(of)m 12(the)m 13(National)m 11(Institute)m 14(of)m 12(Standards)m 13(and)m 12 r 84 c -2(ec)m (hnology)s 10(\(NIST\),)m 13(not)m 12(sub)m 2(ject)m 15(to)m 12(cop)m (yrigh)s 116 c 10(in)m 45 2470 p (the)s 16(United)m 16(States.)m 24(Iden)m (ti\014cation)s 15(of)m 15(commercial)m 14(pro)m 1(ducts)m 17(in)m 15(this)m 16(pap)m 1(er)m 16(do)m 1(es)m 17(not)m 15(imply)m 14(recommendation)m 16(or)m 45 2520 p (endorsemen)s 116 c 14 r 98 c 121 c 13(NIST.)m cmsy7.300 @sf 102 2556 p 121 c cmr10.300 @sf 120 2570 p (Authors')s 22(addresses:)m 37(Computing)m 21(and)m 22(Applied)m 22(Mathematics)m 23(Lab)m 1(oratory)m -2 r 44 c 22(National)m 20(Institute)m 23(of)m 22(Stan-)m 45 2620 p (dards)s 25(and)m 25 r 84 c -2(ec)m (hnolog)s -1 r 121 c -3 r 44 c 25(Gaithersburg,)m 27(MD)m 25(20899.)m 50(Electronic)m 26(mail:)m 38 r 98 c 1(oisv)m (ert@cam.nist.go)s -1 r 118 c 23(and)m 25(saun-)m 45 2669 p (ders@cam.nist.go)s (v,)s 12(resp)m 1(ectiv)m (ely)s @eop %%Page: 2 2 2 @bop0 cmr12.300 @sf [ 32 34 -2 0 31.830] 70 @dc [ 32 34 -2 0 36.563] 78 @dc [ 32 34 -2 0 30.475] 76 @dc [ 16 34 -2 0 17.596] 73 @dc [ 24 35 -1 0 25.742] 107 @dc [<00070001C00000070001C00000070001C000000F8003E000000F8003E000000F8003E000000FC0 07E000001EC007B000001EC007B000001EC007B000003C600F1800003C600F1800003C600F1800 0078301E1C000078301E0C000078301E0C000078383E0C0000F0183C060000F0183C060000F018 3C060001E00C78030001E00C78030001E00C78030003C006F0038003C006F0018003C006F00180 03C007F00180078003E000C0078003E000C0078003E000C00F0003C000E00F0003C000E01F8007 C001F8FFF03FFC07FEFFF03FFC07FE> 48 35 -1 1 50.111] 87 @dc [ 32 35 -2 0 36.563] 65 @dc [ 16 33 -4 0 24.387] 49 @dc [<0FE0003FF800787C00781E00780F007807007807800003800003C00003C00001C00081E007F9E0 1FFDE03E0FE03C07E07803E07803E0F003E0F001E0F001E0F001E0F001E0F001E0F001C0F001C0 F003C07003C07803803807803C07001F1E000FFC0003F800> 24 34 -2 1 24.387] 57 @dc [<03C00003C00003C00003C00003C00003C00003C00003C00003C00003C00001C00001C00001C000 01E00001E00000E00000E00000E000007000007000003000003800001C00000C00000E00C00600 C00700C00380E001806001C07FFFE07FFFE07FFFE0700000600000> 24 35 -3 1 24.387] 55 @dc [<01F00007FC000E0E001C07003803803803807803C07001C07001C07001C0F001E0F001E0F001E0 F001E0F001E0F001E0F001E0F001E0F001E0F001E0F001E0F001E0F001E0F001E07001C07001C0 7001C07803C03803803803801C07000E0E0007FC0001F000> 24 34 -2 1 24.387] 48 @dc [ 8 49 -5 12 13.548] 91 @dc [ 8 49 -1 12 13.548] 93 @dc [ 32 34 -2 0 33.185] 80 @dc [ 24 21 -1 0 21.677] 122 @dc [<000000FE00FFFC03FF00FFFC07E700078007C38007800FC18007800F818007800F800007800F80 0007800F800007800F800007800F000007800F000007800F000007801E000007801E000007803C 00000780F8000007FFF0000007FFF8000007803E000007800F00000780078000078007C0000780 03E000078003E000078003E000078003E000078003E000078003E000078007C000078007800007 800F000007803E0000FFFFF80000FFFFE00000> 40 35 -2 1 35.894] 82 @dc [<03FFFF0003FFFF0000078000000780000007800000078000000780000007800000078000000780 000007800000078000000780000007800000078000000780000007800000078000000780000007 80000007800000078000C007800CC007800CC007800CC007800CC007800CE007801C6007801860 078018700780387C0780F87FFFFFF87FFFFFF8> 32 34 -2 0 35.225] 84 @dc [ 40 34 -2 0 44.692] 77 @dc [<000FF000007FFC0000FC1E0003F0070007C003800F8001C01F0000C01F0000E03E0000603E0000 707C0000307C0000307C000030F8000030F8000000F8000000F8000000F8000000F8000000F800 0000F8000000F8000030F80000307C0000307C0000707C0000703C0000703E0000F01F0000F01F 0001F00F8001F007C003F003F0077000FC1E70007FFC30000FF030> 32 36 -3 1 35.225] 67 @dc [<003FFF0000003FFF00000001E000000001E000000001E000000001E000000001E000000001E000 000001E000000001E000000001E000000001E000000001E000000001E000000003E000000003F0 00000007F800000007980000000F8C0000001F0C0000001E060000003E070000003C030000007C 01800000F801C00000F000C00001F000E00001E000600003E000300007C00038000780003C000F 80003E00FFF000FFC0FFF000FFC0> 40 34 -1 0 36.563] 89 @dc [ 16 3 -1 -9 16.258] 45 @dc [<0000C000000001E000000001E000000001E000000003F000000003F000000003F0000000079800 000007980000000F9C0000000F0C0000000F0C0000001F0E0000001E060000001E060000003C03 0000003C030000003C0300000078018000007801800000F801C00000F000C00000F000C00001F0 00E00001E000600001E000600003C000300003C000300003C0003000078000180007800018000F 80001C000F80003E00FFF000FFC0FFF000FFC0> 40 35 -1 1 36.563] 86 @dc [ 24 36 -3 1 27.097] 83 @dc [<0007F000001FFC00007C1E0000F8070001E0038001E0018003C001C003C000C0078000E0078000 600780006007800060078000600780006007800060078000600780006007800060078000600780 006007800060078000600780006007800060078000600780006007800060078000600780006007 8000600780006007800060078001F8FFFC0FFFFFFC0FFF> 32 35 -2 1 36.563] 85 @dc [ 24 49 -3 12 24.387] 47 @dc [ 32 34 -2 0 33.185] 69 @dc [ 24 33 -2 0 24.387] 50 @dc 1.000000 /cmti12.300 @newfont cmti12.300 @sf [<1C00F8001E01FC001E03CE000E0387000E03C3000F01C3000F01C3800701E1800700E0000780E0 000780F000038070000380700003C07000E3C0780061E0380061F0380031F838003BFC78001F9F F0000F07E000> 32 21 -3 0 27.397] 110 @dc [<1FC03FF07878F01CE00EE006E000E000E000F000F000FFC0FFF8F83C780E78063C061E060F8E07 FE01F8> 16 21 -6 0 22.416] 101 @dc [<1F003F8079C070E0707078303838381838003C001C001C001C001E000E000E000E000F000700FF F8FFF8078003800380038003C001C001C001C001C000C0> 16 31 -4 0 16.189] 116 @dc [<3C007E00F700E300E300F380F1807180700078007800380038003C003C001C001C001E001E000E 000E000F000F0007000700078007800380038003C003C003C01FC01FE003E0> 16 35 -4 0 12.453] 108 @dc [<0F801FC01CE01C701C301C301E380E180F0007000700078003800380E3C061C071C031C039C01F C00F80000000000000000000000000000000000070007800780078> 16 33 -3 0 14.944] 105 @dc [<1F003FC071E070F0E078E03CE03CE01EE01EF01E701F700F700F780F380F3C0F3C0F3E0F1F9E1F FC1CF81E000E000E000E000F000700070007000780078007803F803FC007C0> 16 35 -5 0 22.416] 98 @dc cmr12.300 @sf [ 24 21 0 0 25.742] 120 @dc 1.000000 /cmtt12.300 @newfont cmtt12.300 @sf [ 24 30 -1 0 25.632] 68 @dc [<0FFE003FFF807FFFC07C07C07001C0F001E0F001E0E000E0E000E0E000E0E000E0E000E0E000E0 E000E0E000E0E000E0E000E0E000E0E000E0E000E0E000E0E000E0E000E0E000E0F001E07001C0 7C07C07FFFC03FFF800FFE00> 24 30 -3 0 25.632] 79 @dc [<7FFF7FFF7FFF01C001C001C001C001C001C001C001C001C001C001C001C001C001C001C001C001 C001C0F9C0FDC0FFC01FC007C007C003C001C001C0> 16 30 -5 0 25.632] 49 @dc [<01F00007FC000FFE001F1F001C07003C07803803807803C07001C07001C0F001E0E000E0E000E0 E000E0E000E0E000E0E000E0E000E0E000E0E000E07001C07001C07001C03803803803801C0700 1F1F000FFE0007FC0001F000> 24 30 -3 0 25.632] 48 @dc [ 24 30 -4 0 25.632] 73 @dc [ 24 12 -2 -9 25.632] 61 @dc [ 8 13 -9 7 25.632] 44 @dc [ 32 30 0 0 25.632] 77 @dc [<01FF0001FF0001FF00003800003800003800003800003800003800003800003800003800003800 007C00007C0000EE0000EE0001C70001C70003C7800383800783C00701C00701C00E00E00E00E0 1C0070FF01FEFF01FEFF01FE> 24 30 -1 0 25.632] 89 @dc [<0038007801F803F007C00F800F001E001E003C003C00780078007000F000F000E000E000E000E0 00E000E000E000E000F000F0007000780078003C003C001E001E000F000F8007C003F001F80078 0038> 16 40 -8 5 25.632] 40 @dc [ 16 40 -4 5 25.632] 41 @dc [ 24 30 -2 0 25.632] 69 @dc [ 24 30 -1 0 25.632] 88 @dc [ 24 30 -2 0 25.632] 80 @dc [<00FE0003FF8007FFE00F83F01F00F03E00783C0078780038780038700038F00000F00000E00000 E00000E00000E00000E00000E00000F00000F000007000387800387800783C00783E00F81F01F8 0F83F807FFF803FFB800FE38> 24 30 -2 0 25.632] 67 @dc [ 24 30 -1 0 25.632] 78 @dc [<03FF8003FF8003FF80003800003800003800003800003800003800003800003800003800003800 003800003800003800003800003800003800003800003800003800003800E0380EE0380EE0380E E0380EFFFFFEFFFFFEFFFFFE> 24 30 -1 0 25.632] 84 @dc [<007C0001FF0007FFC007C7C00F01E00F01E01E00F01E00F01C00701C00701C00701C00701C0070 1C00701C00701C00701C00701C00701C00701C00701C00701C00701C00701C00701C00701C0070 1C0070FF83FEFF83FEFF83FE> 24 30 -1 0 25.632] 85 @dc 1.000000 /cmr8.300 @newfont cmr8.300 @sf [<07C01FF03838701C701C600CE00EE00EE00EE00EE00EE00EE00EE00EE00E600C600C701C38381F F007C0> 16 21 -1 0 17.642] 48 @dc [<7FF07FF0070007000700070007000700070007000700070007000700070007000700F700FF000F 000300> 16 21 -2 0 17.642] 49 @dc cmr12.300 @sf [<0FE0003FF800787C00703E00F01E00F81F00F80F00F80F00F80F00000F00000F00000F00000F00 000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00 000F00000F00000F00000F00000F00000F00000F0003FFF003FFF0> 24 35 -2 1 25.056] 74 @dc [ 40 34 -2 0 37.918] 75 @dc [<7FE1FF807FE1FF8007003800070038000700380007003800070038000700380007003800070038 00070038000700380007003800070038000700380007003800070038000700380007007800FFFF F800FFFFF800070000000700000007000000070000000700000007000000070000000700300007 80780003C0780001E0780000F87800007FF000000FE000> 32 35 0 0 27.097] 12 @dc [<000FFE000FFE0000E00000E00000E00000E00000E00000E00000E00000E003F0E00FFCE01F0FE0 3E07E07C03E07801E07800E0F000E0F000E0F000E0F000E0F000E0F000E0F800E07800E07801E0 7C01E03E03E01F0F600FFE6003F860> 24 31 -2 10 25.742] 113 @dc [<03F8000FFE003E1F00780F807007C0E007C0F803E0F803E0F803E0F803E07003E00003E00003E0 0007C0000780000F00001E0003F80003FC00003E00001F00000F800007800007C00007C07807C0 7807C07C07C07807C07007C0380F801E1F000FFE0003F800> 24 34 -2 1 24.387] 51 @dc [<01FFF001FFF0000E00000E00000E00000E00000E00000E00000E00FFFFF8FFFFF8E00E00600E00 700E00300E00180E00180E000C0E000E0E00060E00070E00030E00018E0001CE0000CE0000EE00 006E00003E00003E00001E00001E00000E00000E00> 24 33 -1 0 24.387] 52 @dc [<07F0000FFC003E1F00380F80700780E003C0E003C0F001E0F001E0F001E07001E00001E00001E0 0001E00001E00001C01803C01C03C01E07801F0F001FFE0019F800180000180000180000180000 1800001800001FF0001FFC001FFF001FFF801E0780180180> 24 34 -2 1 24.387] 53 @dc cmbx10.518 @sf [ 32 46 -4 0 41.244] 50 @dc [ 56 49 -2 0 63.261] 68 @dc [<0007FF0000003FFFE00000FFFFF80003FF01FE0007FC003F000FF0001F801FE0000F803FE00007 803FC00007807FC00000007FC0000000FF80000000FF80000000FF80000000FF80000000FFFFFF FF80FFFFFFFF80FFFFFFFF80FF80003F80FF80003F80FF80003F807FC0003F807FC0003F007FC0 007F003FE0007F001FE000FE001FF001FE000FF803FC0003FE0FF80001FFFFF000007FFFC00000 0FFE0000> 40 32 -2 0 37.807] 101 @dc [ 32 32 -3 0 32.537] 115 @dc [<001FFF800001FFFFF80007FFFFFE001FF801FF803FC0003FC07F00000FE07E000007E0FE000007 F0FC000003F0FC000003F0FC000003F0FE000007F07E00000FF03F80007FE01FFFFFFFE007FFFF FFE007FFFFFFC007FFFFFF800FFFFFFF000FFFFFFC001FFFFFC0001F800000001F000000001E00 0000001E000000000E000000000E3FF800000EFFFE000007FFFF800007F83FC0000FE00FE0001F E00FF0001FC007F0003FC007F8003FC007F8003FC007F8003FC007F8003FC007F8003FC007F800 3FC007F8001FC007F0F01FE00FF1F80FE00FE3F807F83FF3F803FFFFFFF800FFFE3FF0003FF80F E0> 40 47 -2 15 41.244] 103 @dc [<7FFFF0007FFFF0007FFFF0007FFFF00003FC000003FC000003FC000003FC000003FC000003FC00 0003FC000003FC000003FC000003FC000003FC000003FC000003FC000003FC000003FC000003FC 000003FC000003FC000003FC000003FC000003FC000003FC000003FC000003FC0000FFFFF800FF FFF800FFFFF800FFFFF80003FC000003FC000003FC000003FC000003FC000003FC000003FC0000 03FC01C003FC07F003FC0FF803FE0FF801FE0FF801FF0FF800FF8FF8007FC7F0001FFFF00007FF E00000FF80> 32 50 -2 0 25.205] 102 @dc [ 48 49 -2 0 51.904] 70 @dc [ 64 49 -2 0 64.556] 78 @dc [ 48 49 -2 0 49.612] 76 @dc [ 56 49 -2 0 58.678] 66 @dc cmr12.300 @sf [ 32 34 -2 0 37.249] 68 @dc [<7FF1FFCFFE7FF1FFCFFE07001C00E007001C00E007001C00E007001C00E007001C00E007001C00 E007001C00E007001C00E007001C00E007001C00E007001C00E007001C00E007001C00E007001C 00E007001C00E007001C00E007001C01E0FFFFFFFFE0FFFFFFFFE007001C000007001C00000700 1C000007001C000007001C000007001C000007001C000007003C00C007803E01E003C03F01E001 E03F81E000F83BE1E0007FF9FFC0000FE03F80> 40 35 0 0 40.645] 14 @dc [<3E00FF80F3C0F1C0F1E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000 E000E000E000E000E000E000E000E001E00FE00FE001E000000000000000000000000000000000 01C003E003E003E001C0> 16 44 2 10 14.903] 106 @dc [<03F8000FFE001E0F003C07807803C07001C0F000E0E000E0E000E0E000E0E001E0F001E07003E0 7807C03C1FC01E3F800FFF0007FE0007F8000FFC001FDE003F87003E07807C03C07801C07001C0 7001C07001C07003C03803803C07801F1F000FFE0003F800> 24 34 -2 1 24.387] 56 @dc [<70F8F8F870000000000000000000000070F8F8F870> 8 21 -4 0 13.548] 58 @dc 2 @bop1 cmr12.300 @sf 45 90 p (other)s 23(sp)m 1(ecial)m 23(functions)m 23(is)m 23(the)m 23(FNLIB)m 23(pac)m 107 c -3(age)m 22(dev)m (elop)s 1(ed)m 21 r 98 c 121 c 22 r 87 c -3 r 97 c (yne)s 21 r 70 c -3(ullerton)m 21(at)m 24(the)m 23(Los)m 45 150 p (Alamos)s 16(National)m 16(Lab)m 1(oratories)m 18(in)m 15(the)m 16(late)m 16(1970s)m 17 r 91 c (10)s 1(].)m 21(One)m 15(of)m 17(the)m 15(most)m 17(imp)m 1(ortan)m 116 c 15(features)m 16(of)m 45 210 p (FNLIB)s 16(is)m 17(its)m 16 r 112 c 1(ortabilit)m 121 c -4 r 46 c 22 r 80 c (arameteriz)s -1(ed)m 15 r 98 c 121 c 15(the)m 17(POR)m -3 r 84 c 16(mac)m (hine)s 15(constan)m (ts)s 16 r 91 c 57 c (],)s 17(FNLIB)m 16(co)m 1(des)m 45 271 p (are)s 15(regularly)m 14(used)m 14(on)m 16(mac)m (hine)s -1 r 115 c 13(from)m 15(IBM)m 13(PCs)m 16(to)m 15(Cra)m 121 c 13(Y-MPs.)m 21 r 86 c -3(ersions)m 13(of)m 15(these)m 15(co)m 1(des)m 15(ha)m 118 c -1 r 101 c 45 331 p (found)s 19(their)m 17 r 119 c 97 c 121 c 16(in)m (to)s 17(sev)m (eral)s 16 r 119 c (ell)s -1(-kno)m -1(wn)m 17(libraries)m 17(suc)m 104 c 17(as)m 19(the)m 18(IMSL)m 18(SFUN/LIBRAR)m -4 r 89 c 16 r 91 c (11)s (],)s 45 391 p (and)s 17(the)m 16(SLA)m -3(TEC)m 16(Common)m 16(Math)m 17(Library)m 16 r 91 c 50 c (].)s 21(They)m 16(are)m 16(also)m 17 r 97 c 118 c -2(ailable)m 14(from)m cmti12.300 @sf 16(netlib)m cmr12.300 @sf 18 r 91 c 55 c (].)s 143 451 p (More)s 15(recen)m (tly)s -5 r 44 c 14(increased)m 15(atten)m (tion)s 15(has)m 17 r 98 c 1(een)m 16(paid)m 16(to)m 17(the)m 16(dev)m (el)s -1(opmen)m -1 r 116 c 14(of)m 16(algorithms)m 16(and)m 45 511 p (soft)s 119 c (are)s 14(whic)m 104 c 14(tak)m 101 c 14(adv)m -2(an)m (tage)s 14(of)m 16 r 118 c (ector)s 14(pro)m 1(cessors.)m 22(On)m 16(suc)m 104 c 14(mac)m (hines,)s 13(for)m 16(example,)m 14(sp)m 1(ecial)m 45 572 p 118 c (ersions)s 18(of)m 20(man)m 121 c 18(standard)m 21 r 70 c -3(ortran)m 19(math)m 19(functions)m 20(are)m 19 r 97 c 118 c -2(ailable,)m 17(so)m 21(that)m 19(the)m 20(compiler)m 18(can)m 45 632 p 118 c (ectoriz)s -1 r 101 c 14(lo)m 1(ops)m 17(suc)m 104 c 16(as)m 16(the)m 16(follo)m (wing.)s cmtt12.300 @sf 199 732 p (DO)s 25(10)m 25(I=1,M)m 276 793 p (Y\(I\))s 24 r 61 c 25(EXP\(X\(I\))m -1 r 41 c 122 853 p (10)s 25(CONTINU)m -1 r 69 c cmr12.300 @sf 45 953 p (The)s 16(abilit)m 121 c 14(to)m 17 r 118 c (ec)s -1(torize)m 14(suc)m 104 c 15(lo)m 1(ops)m 17(is)m 16(crucial)m 15(in)m 16(man)m 121 c 15(applications.)m 143 1013 p (In)s 14(this)m 15(pap)m 1(er)m 16 r 119 c 101 c 14(describ)m 1 r 101 c 14 r 97 c 16(set)m 15(of)m 15 r 70 c -3(ortran-callable)m 14(subprograms)m 17(whic)m 104 c 13(extend)m 15(this)m 15(func-)m 45 1074 p (tionalit)s 121 c 16(to)m 19(the)m 18(Bessel)m 17(functions)m 18 r 73 c cmr8.300 @sf 768 1081 p 48 c cmr12.300 @sf 787 1074 p 44 c 19 r 73 c cmr8.300 @sf 838 1081 p 49 c cmr12.300 @sf 857 1074 p 44 c 18 r 74 c cmr8.300 @sf 914 1081 p 48 c cmr12.300 @sf 934 1074 p 44 c 18 r 74 c cmr8.300 @sf 991 1081 p 49 c cmr12.300 @sf 1011 1074 p 44 c 18 r 75 c cmr8.300 @sf 1081 1081 p 48 c cmr12.300 @sf 1101 1074 p 44 c 18 r 75 c cmr8.300 @sf 1171 1081 p 49 c cmr12.300 @sf 1191 1074 p 44 c 18 r 89 c cmr8.300 @sf 1260 1081 p 48 c cmr12.300 @sf 1279 1074 p 44 c 18(and)m 19 r 89 c cmr8.300 @sf 1445 1081 p 49 c cmr12.300 @sf 1465 1074 p 46 c 27(This)m 18(has)m 19 r 98 c 1(een)m 18(done)m 18 r 98 c 121 c 45 1134 p (pro)s 1(ducing)m 16(mo)m 1(di\014ed)m 15 r 118 c (ersions)s 14(of)m 16(the)m 15(FNLIB)m 14(routines)m 16(BESI0,)m 15(BESI1,)m 15(BESJ0,)m 15(BESJ1,)m 15(BESK0,)m 45 1194 p (BESK1,)s 19(BESY0)m 19(and)m 19(BESY1,)m 19(as)m 19 r 119 c (ell)s 17(as)m 19(their)m 18(double)m 19(precision)m 18 r 118 c (ersions.)s 27(The)m 19(new)m 19(routines)m 45 1254 p (main)s (tain)s 16(the)m 18 r 112 c 1(ortabilit)m 121 c 17(of)m 18(FNLIB)m 17(with)m 19(the)m 17(adv)m -2(an)m (tage)s 18(of)m 18 r 98 c 1(eing)m 18 r 118 c (ectorizable)s 16(in)m 17(cases)m 19(when)m 45 1314 p 109 c (ulti)s -1(ple)m 17(function)m 19(ev)m -2(aluations)m 18(are)m 20(required.)m 29(In)m 18(Section)m 19 r 50 c 20 r 119 c 101 c 17(review)m 18(the)m 19(basic)m 19(design)m 20(of)m 19(the)m 45 1375 p (FNLIB)s 14(routines.)m 20(In)m 15(Section)m 14 r 51 c 15 r 119 c 101 c 13(discuss)m 15 r 118 c -2(arious)m 15(issues)m 14(in)m 118 c -1(olv)m -2(ed)m 13(in)m 14(the)m 15 r 118 c (ectori)s -1(zation)m 13(of)m 15(these)m 45 1435 p (algorithms.)s 31(This)m 20(is)m 19(follo)m 119 c (e)s -1 r 100 c 18 r 98 c 121 c 18 r 97 c 20(short)m 20(description)m 19(of)m 20(the)m 19(user)m 20(in)m (terface)s 17(of)m 20(our)m 20(implemen-)m 45 1495 p (tation)s 19(in)m 19(Section)m 18(4.)m 29(Finally)m -3 r 44 c 17(in)m 18(Section)m 19 r 53 c 19 r 119 c 101 c 17(describ)m 1 r 101 c 18(the)m 19(testing)m 19(of)m 19(the)m 18(new)m 19(soft)m 119 c (are,)s 17(and)m 45 1555 p (ev)s -2(aluate)m 15(its)m 16 r 112 c 1(erformance)m 16(on)m 17 r 118 c -2(arious)m 16(scalar)m 16(and)m 17 r 118 c (ector)s 14(pro)m 1(cessors.)m cmbx10.518 @sf 45 1721 p 50 c 83(Design)m 27(of)m 28(FNLIB)m cmr12.300 @sf 45 1831 p (FNLIB)s 13(is)m 13 r 97 c 14(substan)m (tial)s 13(collection)m 12(of)m 14(soft)m 119 c (are,)s 12(including)m 12(more)m 14(than)m 14(200)m 15 r 70 c -3(ortran)m 13(subprograms.)m 45 1891 p (Double)s 19(precision)m 18 r 118 c (ersi)s -1(ons)m 18(are)m 18 r 97 c 118 c -2(ailable)m 16(for)m 19(most)m 19(co)m 1(des.)m 29(Primary)m 18(design)m 18(criteria)m 18(for)m 19(the)m 18(de-)m 45 1951 p 118 c (elopme)s -1 r 110 c -1 r 116 c 14(of)m 15(the)m 16(pac)m 107 c -3(age)m 14 r 119 c (ere)s 14 r 112 c 1(ortabilit)m 121 c 14(and)m 16(main)m (tainabili)s -1 r 116 c -1 r 121 c -4 r 46 c 19(In)m 15(some)m 15(cases,)m 16(other)m 15(criteria)m 45 2011 p (suc)s 104 c 16(as)m 18(sp)m 1(eed)m 17(and)m 18(accuracy)m 17 r 119 c (ere)s 15(relaxed)m 16(sligh)m (tly)s 15(in)m 17(order)m 17(to)m 18(maximize)m 15(the)m 17(primary)m 16(criteria)m 45 2072 p 91 c (10)s (].)s 22 r 70 c -3(or)m 15(example,)m 15(FNLIB)m 15(routines)m 17(are)m 16(rarely)m 16(accurate)m 16(to)m 17(the)m 16(last)m 16(bit,)m 16(although)m 17(they)m 16(are)m 17(al-)m 45 2132 p (most)s 16(alw)m 97 c (ys)s 14(accurate)m 15(to)m 16(within)m 16 r 97 c 16(factor)m 16(of)m 16(10)m 17(times)m 14(the)m 16(mac)m (hine)s 14(precision.)m 20(This)m 16(is)m 15(certainly)m 45 2192 p (su\016cien)s 116 c 15(for)m 18(the)m 17 r 118 c -2(ast)m 17(ma)m 3(jorit)m 121 c 15(of)m 18(applications.)m 25(The)m 17(fact)m 18(that)m 18(these)m 17(routines)m 17(ha)m 118 c 101 c 15(remained)m 45 2252 p 112 c 1(opular)m 16(for)m 15(more)m 15(than)m 16(10)m 16 r 121 c (ears,)s 13(and)m 16(ha)m 118 c 101 c 13 r 98 c 1(een)m 15(trivially)m 13 r 112 c 1(orted)m 15(to)m 16(man)m 121 c 14(mac)m (hine)s -1 r 115 c 14(whic)m 104 c 13(did)m 45 2312 p (not)s 17(exist)m 15(when)m 16(they)m 16 r 119 c (ere)s 15(initially)m 14(dev)m (el)s -1(op)m 1(ed)m 15(attests)m 17(to)m 16(the)m 16(success)m 17(of)m 16(the)m 16(basic)m 16(design.)m 143 2373 p (FNLIB)s 22(is)m 24(based)m 24(up)m 1(on)m 25(appro)m (ximation)s 23 r 98 c 121 c 22(truncated)m 24(Cheb)m (yshev)s 22(series)m 23(expansions)m 24 r 91 c 56 c (].)s 45 2433 p (Suc)s 104 c 13(appro)m (ximations)s 13(ha)m 118 c 101 c 11(man)m 121 c 13 r 119 c (ell-kno)s -1(wn)m 12(prop)m 1(erties:)m 20(they)m 14(are)m 14(widely)m 13(applicable,)m 13(they)m 14(are)m 45 2493 p (nearly)s 16 r 98 c 1(est)m 18(in)m 16(the)m 17(minimax)m 16(sense,)m 16(the)m 17(error)m 17(is)m 17(easy)m 17(to)m 17(estimate,)m 16(they)m 16(pro)m (vide)s 15 r 118 c -2(ariable)m 16(accu-)m 45 2553 p (racy)s 18(appro)m (ximations,)s 17(and)m 19(they)m 18(are)m 18(more)m 18(stable)m 18(to)m 18(ev)m -2(aluate)m 17(than)m 19(con)m 118 c -1(en)m -2(tional)m 16 r 112 c 1(olynomials.)m 45 2613 p (Because)s 17(of)m 19(these)m 17(prop)m 1(erties,)m 18(suc)m 104 c 17(appro)m (ximations)s 17(ha)m 118 c 101 c 16 r 98 c 1(een)m 18(the)m 17(basis)m 19(for)m 18(man)m 121 c 17(algorithms)m 45 2674 p (for)s 17(the)m 16(ev)m -2(aluation)m 15(of)m 16(sp)m 1(ecial)m 16(functions.)m 1008 2843 p 50 c @eop %%Page: 3 3 3 @bop0 cmbx10.329 @sf [ 40 31 -2 0 39.203] 82 @dc [ 32 31 -2 0 32.890] 70 @dc [ 32 31 -2 0 31.438] 76 @dc [ 24 31 -1 0 19.823] 73 @dc [ 32 31 -2 0 37.183] 66 @dc cmti10.329 @sf [ 32 33 -3 1 25.555] 83 @dc [ 32 31 -3 0 34.317] 68 @dc [ 32 32 -2 0 33.787] 65 @dc [ 32 31 -8 0 32.524] 84 @dc [ 8 5 -5 0 13.939] 46 @dc cmr10.329 @sf [<7FE3FE3FF07FE3FE3FF00700700700070070070007007007000700700700070070070007007007 000700700700070070070007007007000700700700070070070007007007000700700700070070 070007007007000700700700FFFFFFFF00FFFFFFFF000700700000070070000007007000000700 700000070070000007007000000700F00F000780F80F0003C0FC0F0001F0FF0F00007FE7FE0000 1FC1FC00> 40 32 0 0 37.878] 14 @dc [<003FF8003FF800038000038000038000038000038000038000038007E3801FFB803E1F803C0F80 7C0780780780F80380F00380F00380F00380F00380F00380F00380F803807803807C07803C0F80 1F1F800FF98007F180> 24 29 -2 9 23.989] 113 @dc [<03F0000FFC001E1E003C0F003807807807807803C07003C07003C0F003C0F003C0F003C0F003C0 F003C0F80380F80780FC0780FE0F00F7FE00F3FC00F060007000007800007800003C07803C0780 1E07800F078007C78003FF0000FE00> 24 31 -2 1 22.727] 54 @dc [<07F0001FFC003C3E00701F00E00F80F80F80F807C0F807C0F807C07007C00007C00007C0000F80 000F80001F00003C0003F00003F800007E00001E00001F00000F80000F80780F807C0780780F80 780F80380F003C3F001FFC0007F000> 24 31 -2 1 22.727] 51 @dc cmti10.329 @sf [ 24 31 -3 0 17.525] 73 @dc [ 24 20 -2 0 18.585] 122 @dc cmr10.329 @sf [<7FE7FE7FE7FE0700E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E0 0700E00700E00700E00700E00700E0FFFFE0FFFFE00700E00700E00700E00700E00700E00700E0 0700E00781E003C1E001F1E000FFE0001FE0> 24 32 0 0 25.252] 13 @dc [<001F800000FFF00001F0F80007C03E000F801F000F000F001E0007803E0007C03C0003C07C0003 E07C0003E0780001E0F80001F0F80001F0F80001F0F80001F0F80001F0F80001F0F80001F0F800 01F0F80001F0780001E07C0003E07C0003E03C0003C03C0003C01E0007800F000F000F801F0007 C03E0001E0780000FFF000001F8000> 32 33 -3 1 35.353] 79 @dc [<000007F0FFFC1FF8FFFC3F1C07803E1C07807E0C07807C0C07807C0007807C0007807C00078078 000780780007807800078078000780F0000780F0000781E00007FFC00007FFF0000780F8000780 3C0007803E0007801E0007801F0007801F0007801F0007801F0007801E0007803E0007803C0007 80F800FFFFF000FFFF8000> 32 32 -2 1 33.459] 82 @dc cmti10.329 @sf [ 24 32 -3 0 20.908] 107 @dc cmr10.329 @sf [<000E00070000000E00070000000E00070000001F000F8000001F000F8000001F000F8000003F00 0FC000003D801EC000003D801EC000003D801EC0000078C03C60000078C03C60000078C03C6000 00F0E07C300000F06078300000F06078300000F06078300001E030F0180001E030F0180001E030 F0180003C039E00C0003C019E00C0003C019E00C00078019E00E0007800FC0060007800FC00600 07800FC006000F00078003000F00078003001F000F800F80FFF07FF83FF0FFF07FF83FF0> 48 32 -1 1 46.716] 87 @dc [ 32 31 -2 0 30.934] 69 @dc [<0FC0003FF000787800783C00781E00780F007807000007800007800003800183C00FF3C01FFBC0 3C1FC0780FC07807C07007C0F003C0F003C0F003C0F003C0F003C0F00380F00380F00780780780 7807003C0F001E1E000FFC0003F000> 24 31 -2 1 22.727] 57 @dc [ 24 32 -1 0 23.989] 107 @dc cmti10.329 @sf [ 32 31 -3 0 30.832] 80 @dc [ 32 31 -3 0 30.832] 69 @dc cmbx10.518 @sf [<003FFC000001FFFF800007FFFFF0001FFFFFF8003FE01FFC007F8007FE007FC007FF00FFE003FF 80FFE003FF80FFE001FF80FFE001FFC0FFE001FFC0FFE001FFC07FC001FFC03F8001FFC00E0001 FFC0000001FFC0000001FF80000003FF80000003FF00000007FE0000000FFC0000001FF000001F FFC000001FFE0000001FFF00000000FFC00000003FE00000001FF00000000FF80000000FF80001 800FFC0007E007FC000FF007FE001FF807FE001FF807FE001FF807FE001FF807FE001FF807FE00 1FF007FC000FE00FFC0007C00FF80003F83FF00001FFFFE000007FFF8000001FFC0000> 40 46 -3 0 41.244] 51 @dc [<0000003E000000000000003E000000000000007F000000000000007F00000000000000FF800000 00000000FF80000000000001FFC0000000000001FFC0000000000001FFC0000000000003FFE000 0000000003FFE0000000000007FFF0000000000007FEF000000000000FFEF800000000000FFC78 00000000000FFC7800000000001FFC3C00000000001FF83C00000000003FF83E00000000003FF0 1E00000000007FF01F00000000007FE00F00000000007FE00F0000000000FFE0078000000000FF C0078000000001FFC007C000000001FF8003C000000003FF8003E000000003FF0001E000000007 FF0001F000000007FF0000F000000007FE0000F00000000FFE0000F80000000FFC000078000000 1FFC00007C0000001FF800003C0000003FF800003E0000003FF000001E0000003FF000001E0000 007FF000000F0000007FE000000F000000FFE000000F800000FFC0000007800001FFC0000007C0 0001FF80000003C000FFFFFF0001FFFF80FFFFFF0001FFFF80FFFFFF0001FFFF80FFFFFF0001FF FF80> 64 49 -2 0 62.364] 86 @dc [ 32 32 -2 0 36.661] 122 @dc [<00FF801FF807FFF07FF81FFFFCFFF83FF03EFFF87FC00FFF00FF8007FE00FF8003FE00FF0001FE 00FF0001FE00FF0001FE00FF8001FE007F8001FE007FC001FE003FE001FE001FF801FE0007FE01 FE0001FFF9FE00003FFFFE000001FFFE00000001FE00000001FE00010001FE000FE001FE000FE0 01FE001FF001FE001FF003FC001FF007FC001FF00FF8001FE03FF0000FFFFFE00007FFFF800000 FFFC0000> 40 32 -2 0 40.098] 97 @dc [ 80 49 -2 0 78.304] 77 @dc [ 24 50 -3 0 22.913] 108 @dc [ 40 46 -2 14 45.827] 112 @dc [ 56 49 -3 0 62.364] 65 @dc [ 64 32 -3 0 68.740] 109 @dc 3 @bop1 cmr12.300 @sf 143 90 p (The)s 16(basic)m 17(form)m (ula)s 15(for)m 17(the)m 16(construction)m 17(of)m 16(the)m 17(routines)m 16(in)m 17(FNLIB,)m 15(whic)m 104 c 15 r 119 c 101 c 15(paraphrase)m 45 150 p (from)s 16 r 91 c (10)s (],)s 16(follo)m (ws.)s cmbx10.329 @sf 94 260 p (Recip)s 1 r 101 c 18(for)m 17(Constructing)m 17(FNLIB)m 18(Routines)m cmr10.329 @sf 107 349 p (1.)s cmti10.329 @sf 24(Stor)m -1 r 101 c 15(Chebyshev)m 15 r 99 c -1 r 111 c -1(e\016cien)m -1(ts)m 14(in)m 16 r 68 c 65 c -3 r 84 c -4 r 65 c 14(statements.)m cmr10.329 @sf 167 406 p (Co)s 1(e\016cien)m (ts)s 19(of)m 21(all)m 20(required)m 21(Cheb)m (yshev)s 21(expansions)m 21(accurate)m 20(to)m 21(16)m 20(digits)m 20(are)m 21(stored)m 20(in)m 21(sin-)m 167 462 p (gle)s 18(precision)m 19(routines,)m 18(31)m 18(digits)m 18(in)m 19(double)m 19(precision)m 18(routines.)m 30(This)m 18(range)m 19(ensures)m 19(su\016cien)m 116 c 167 519 p (accuracy)s 15(for)m 15(most)m 14(computers.)m 107 610 p (2.)s cmti10.329 @sf 24(Initialize.)m cmr10.329 @sf 167 667 p (This)s 15(is)m 14(done)m 16(only)m 15(on)m 15(the)m 15(\014rst)m 15(call)m 14(of)m 15(eac)m 104 c 14(routine.)m 192 761 p (\(a\))s cmti10.329 @sf 23(Calculate)m 16(le)m -1(gal)m 14(ar)m -1(gument)m 16 r 98 c -1(ounds.)m cmr10.329 @sf 274 817 p (Illegal)s 19(argumen)m 116 c 18(regions)m 19(are)m 20(those)m 19(where)m 21(the)m 20(function)m 19(is)m 20(unde\014ned,)m 22(the)m 20(result)m 20 r 119 c (ould)s 274 874 p 111 c 118 c -1(er\015o)m -1 r 119 c 12(or)m 13(under\015o)m (w,)s 13(or)m 13(range)m 14(reduction)m 14(cannot)m 13 r 98 c 1 r 101 c 15 r 112 c 1(erformed)m 14(accurately)m 13(enough.)m 20(The)m 274 930 p (POR)s -3 r 84 c 16(mac)m (hine)s 15(constan)m (ts)s 14(are)m 16(used)m 16(to)m 15(determine)m 17 r 98 c 1(ounds)m 16(applicable)m 16(to)m 15(the)m 16(curren)m 116 c 15(ma-)m 274 986 p 99 c (hine.)s 189 1062 p (\(b\))s cmti10.329 @sf 24(Determine)m 16 r 99 c -1(orr)m -1 r 101 c -2(ct)m 14(numb)m -1(er)m 15(of)m 17(exp)m -1(ansion)m 14 r 99 c -1 r 111 c -2(e\016cients)m -1 r 46 c cmr10.329 @sf 274 1118 p (The)s 19(error)m 17(committed)m 17(in)m 18(truncating)m 17 r 97 c 18(Cheb)m (yshev)s 18(series)m 18(is)m 17 r 98 c 1(ounded)m 20 r 98 c 121 c 17(the)m 18(sum)m 18(of)m 18(the)m 274 1175 p (absolute)s 19 r 118 c -2(alues)m 19(of)m 19(the)m 20(discarded)m 20(co)m 1(e\016cien)m (ts.)s 32(One)m 20(can)m 20(use)m 20(this)m 19(to)m 19(estimate)m 19(the)m 20(error)m 274 1231 p (committed)s 15 r 98 c 121 c 14(using)m 15(few)m (er)s 14(and)m 16(few)m (er)s 14(terms.)m 20(In)m 16(this)m 15 r 119 c 97 c -1 r 121 c 13(the)m 16(length)m 15(of)m 15(the)m 16(series)m 15(can)m 15 r 98 c 1 r 101 c 274 1287 p (selected)s 16(to)m 14(matc)m 104 c 14(the)m 15(precision)m 15(of)m 15(the)m 15(mac)m (hine.)s 107 1381 p (3.)s cmti10.329 @sf 24(Che)m -1(ck)m 14(input)m 17(ar)m -1(gument)m 15(for)m 17(validity.)m cmr10.329 @sf 167 1438 p (The)s 20(function)m 19(argumen)m 116 c 18(is)m 19(compared)m 19(against)m 18 r 98 c 1(ounds)m 20(computed)m 20(during)m 20(initiali)m -1(zatio)m -1(n.)m 31(Both)m 167 1494 p (fatal)s 20(errors)m 20(and)m 22 r 119 c (arnings)s 19(are)m 21(pro)m (vided.)s 37 r 87 c -3(arnings)m 20(are)m 21(issued)m 21(for)m 21(under\015o)m 119 c (ed)s 20(results,)m 22(for)m 167 1551 p (example,)s 13(while)m 13(fatal)m 11(errors)m 13(are)m 13(issued)m 13(in)m 13(cases)m 13(where)m 14(no)m 13(result)m 13(can)m 13 r 98 c 1 r 101 c 14(returned,)m 13(suc)m 104 c 13(as)m 13(where)m 167 1607 p (the)s 15(result)m 15 r 111 c 118 c -1(er\015o)m -1(ws.)m 17(Errors)m 14(are)m 15(issued)m 16(using)m 15(the)m 15(POR)m -3 r 84 c 15(error)m 14(handler)m 16 r 91 c 57 c -1(].)m 107 1699 p (4.)s cmti10.329 @sf 24(Compute)m 17(the)m 16(appr)m -1(oximation.)m cmr10.329 @sf 167 1755 p (The)s 13(basic)m 12(computation)m 11(is)m 13(the)m 12(ev)m -2(aluation)m 11(of)m 12 r 97 c 12(truncated)m 13(Cheb)m (yshev)s 12(series.)m 19(It)m 12(is)m 12(not)m 13(reasonable)m 167 1812 p (for)s 15 r 97 c 15(single)m 15(series)m 15(to)m 15 r 98 c 1 r 101 c 16(accurate)m 15 r 111 c 118 c -1(er)m 14(the)m 16(whole)m 15(argumen)m 116 c 13(range.)m 21(Th)m (us,)s 14(the)m 16(argumen)m 116 c 13(range)m 167 1868 p (is)s 15(brok)m (en)s 14(up)m 16(in)m (to)s 13(sev)m (eral)s 13(subin)m (terv)s -2(als)m 13(\(usually)m 14(three)m 15(or)m 15(four\),)m 14(eac)m 104 c 15(with)m 14(its)m 15 r 111 c (wn)s 13(series.)m 20(Once)m 167 1925 p (the)s 15(appropriate)m 14(subin)m (terv)s -2(al)m 13(has)m 15 r 98 c 1(een)m 16(determined,)m 16(the)m 15(computation)m 14(pro)m 1(ceeds)m 16(as)m 15(follo)m -1(ws.)m 192 2019 p (\(a\))s cmti10.329 @sf 23(Pr)m -1(epr)m -1 r 111 c -2 r 99 c -3(ess)m 14(ar)m -1(gument.)m cmr10.329 @sf 274 2075 p (The)s 16(argumen)m 116 c 13(is)m 15(mapp)m 1(ed)m 16(to)m 14(the)m 16(in)m (terv)s -3(al)m 13([-1,1].)m 189 2150 p (\(b\))s cmti10.329 @sf 24(Evaluate)m 17(Chebyshev)m 15(series.)m cmr10.329 @sf 274 2207 p (This)s 15(is)m 15(done)m 15(using)m 15 r 97 c 15(three-term)m 15(linear)m 15(recurrence)m 16(due)m 15(to)m 15(Clensha)m 119 c 14 r 91 c 51 c -1(].)m 194 2282 p (\(c\))s cmti10.329 @sf 24(Postpr)m -1 r 111 c -1 r 99 c -2(e)m -1(ss)m 14 r 114 c -1(esult.)m cmr10.329 @sf 274 2338 p (The)s 16(series)m 15 r 118 c -2(alue)m 14(is)m 15(\014nally)m 14(corrected)m 15(for)m 15(form)m 14(or)m 15(in)m (terv)s -2(al)m -1 r 44 c 13(if)m 15(necessary)m -3 r 46 c cmbx10.518 @sf 45 2504 p 51 c 83 r 86 c -6(ectorization)m 26(for)m 28(Multiple)m 27(Argumen)m -1(ts)m cmr12.300 @sf 45 2613 p (In)s 21(this)m 21(section)m 21 r 119 c 101 c 20(describ)m 1 r 101 c 21(ho)m 119 c 21(routines)m 21(with)m 22(the)m 21(ab)m 1 r 111 c 118 c 101 c 19(design)m 22(ma)m 121 c 19 r 98 c 1 r 101 c 22(extended)m 21(for)m 21(the)m 45 2674 p (case)s 20(of)m 20(ev)m -2(aluation)m 19(at)m 20 r 109 c (ulti)s -1(ple)m 17(argumen)m (ts.)s 31(Three)m 19(opp)m 1(ortunities)m 20(for)m 20(impro)m (ving)s 18 r 112 c 1(erformance)m 1008 2843 p 51 c @eop %%Page: 4 4 4 @bop0 cmr12.300 @sf [<007000E001C001C0038007000E000E001C001C0038003800380070007000700070006000E000E0 00E000E000E000E000E000E000E000E000E000E000E000E0006000700070007000700038003800 38001C001C000E000E000700038001C001C000E00070> 16 50 -3 13 18.968] 40 @dc [ 16 50 -3 13 18.968] 41 @dc [ 48 2 0 -12 48.774] 124 @dc [<7FE3FF807FE3FF8007007000070070000700700007007000070070000700700007007000070070 00070070000700700007007000070070000700700007007000070070000700700007007000FFFF FFC0FFFFFFC0070070000700700007007000070070000700700007007000070070000700700007 80F8000380F87801C0FC7800F0FE78007FEFF8001FC3F0> 32 35 0 0 28.451] 11 @dc 1.000000 /cmbx12.300 @newfont cmbx12.300 @sf [ 32 34 -2 0 35.226] 70 @dc [<00FE0007FFC00F83E01F01F03E00F87C007C7C007CFC007EFC007EFC007EFC007EFC007EFC007E FC007E7C007C7C007C7C007C3E00F81E00F00F83E007FFC000FE00> 24 22 -2 0 28.019] 111 @dc [ 24 22 -2 0 22.888] 114 @dc [<00FF8007FFE00FE0F01F80383F00187E00007E0000FC0000FC0000FC0000FC0000FFFFF8FFFFF8 FC00F8FC00F87C00F87E00F03E01F03F03E01F87E007FF8001FE00> 24 22 -2 0 25.569] 101 @dc [<0FF0FF3FFDFF7F1FF8FE0FF0FC07F0FC03F0FC03F0FE03F07E03F07F03F03FE3F00FFFF001FFF0 0003F00003F01E03F03F03F03F07F03F07E03F0FC01FFF8007FE00> 24 22 -2 0 27.241] 97 @dc [<01FF0007FFC01FE1E03F80703F00307E00007E0000FC0000FC0000FC0000FC0000FC0000FC0000 FC0000FC00007C01E07E03F03E03F03F03F01FC3F007FFE001FF80> 24 22 -2 0 24.906] 99 @dc [ 32 35 -2 0 31.133] 104 @dc [<0003FF00C0003FFFE3C000FF80FFC001FC003FC007F0003FC00FE0001FC01FC0001FC01F80001F C03F80001FC07F00001FC07F00001FC07F00001FC0FE000FFFFCFE000FFFFCFE00000000FE0000 0000FE00000000FE00000000FE00000000FE00000000FE00000000FE000000C07F000000C07F00 0001C07F000001C03F800001C01F800003C01FC00007C00FE0000FC007F0001FC001FC003FC000 FF80F3C0003FFFE1C00003FF00C0> 40 34 -3 0 44.047] 71 @dc [<00FC0003FF0007E7000FE3800FC1800FC1800FC1800FC1800FC1800FC0000FC0000FC0000FC000 0FC0000FC0000FC0000FC0000FC0000FC0000FC000FFFF00FFFF001FC0000FC00007C00003C000 01C00001C00000C00000C00000C00000C000> 24 32 -1 0 21.793] 116 @dc [<0007FF0000003FFFC00000FF01F00003FC00380007F0001C000FE0000E001FC00007001F800003 003F800003807F000001807F000001807F00000180FE00000000FE00000000FE00000000FE0000 0000FE00000000FE00000000FE00000000FE00000000FE00000000FE000001807F000001807F00 0003807F000003803F800003801F800007801FC0000F800FE0000F8007F0001F8003FC007F8000 FF01E780003FFFC3800007FE0180> 40 34 -3 0 40.472] 67 @dc [ 48 22 -2 0 46.699] 109 @dc [ 32 32 -2 10 31.133] 112 @dc [<03FC7FC00FFF7FC00FC3FE001F81FE001F80FE001F80FE001F807E001F807E001F807E001F807E 001F807E001F807E001F807E001F807E001F807E001F807E001F807E001F807E001F807E001F80 7E00FF83FE00FF83FE00> 32 22 -2 0 31.133] 117 @dc [ 24 34 -3 0 31.133] 83 @dc 1.000000 /cmbx10.432 @newfont cmbx10.432 @sf [<00FFC00007FFF8001FFFFC003F81FF007F00FF807F807F80FFC07FC0FFC03FC0FFC03FE0FFC03F E0FFC03FE07F803FE07F803FE01E003FE000003FE000003FC000007FC000007F800000FF000001 FE0000FFF80000FFC0000007F0000003FC000001FE000000FF000F80FF001FC0FF803FE07F803F E07F803FE07F803FE07F803FE07F803FC0FF001F80FF000FC1FE0007FFFC0003FFF000007FC000> 32 39 -3 0 34.370] 51 @dc [<3E007F00FF80FF80FF80FF80FF807F003E00> 16 9 -5 0 19.095] 46 @dc [<7FFFFE7FFFFE7FFFFE00FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF00 00FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF00 00FF0000FF0000FF0000FF0000FF0000FF00F8FF00FFFF00FFFF0007FF00007F00000F00000700> 24 39 -5 0 34.370] 49 @dc [ 48 41 -2 0 51.970] 65 @dc [ 40 27 -3 0 38.189] 110 @dc [ 40 41 -3 0 45.163] 69 @dc [ 40 27 -1 0 36.280] 120 @dc [<03FE07FC1FFF8FFC3FC3DFFC7F00FFC0FF007F80FE007F80FE003F80FE003F80FE003F807F003F 807F803F803FC03F801FE03F8007FE3F8001FFFF80001FFF8000003F8000003F801F803F803FC0 3F803FC03F803FC07F003FC07F003FC0FE001F81FC000FFFF00003FFC000> 32 27 -2 0 33.415] 97 @dc [ 56 27 -3 0 57.284] 109 @dc [ 40 39 -2 12 38.189] 112 @dc [ 16 42 -3 0 19.095] 108 @dc [<003FF80001FFFE0003F81F800FE007C01FC001C03F8001E03F8000E07F8000007F000000FF0000 00FF000000FF000000FF000000FFFFFFE0FFFFFFE0FF0007E0FF0007E0FF0007E07F0007E07F00 0FC03F800FC03F800FC01FC01F800FE03F0007F07E0001FFFC00003FE000> 32 27 -2 0 31.506] 101 @dc cmtt12.300 @sf [ 24 30 -1 0 25.632] 70 @dc [<78FCFCFCFC78> 8 6 -10 0 25.632] 46 @dc [<01F8E007FEE00FFFE01F0FE01E07E03C03E07C01E07801E07001E0F000E0F000E0E00FF8E00FF8 E00FF8E00000E00000E00000E00000E00000F00000F000E07000E07800E07C01E03C03E01E03E0 1F0FE00FFFE007FEE001F8E0> 24 30 -2 0 25.632] 71 @dc [ 24 30 -3 0 25.632] 83 @dc [ 24 30 -1 0 25.632] 76 @dc [ 24 30 -1 0 25.632] 65 @dc [<03FC001FFF803FFFC07E07E0F801F0F000F8F00078F00038F000380000380000380000780000F8 0001F00007E001FFC001FF8001FF80000FC00003C00001E00001E01800E03C00E03C01E03C01E0 3E07C01FFFC00FFF0003FC00> 24 30 -2 0 25.632] 51 @dc [<007800007800007800007800007800007800007800007800007800FFFFF8FFFFF8FFFFF8FFFFF8 007800007800007800007800007800007800007800007800007800> 24 22 -2 -4 25.632] 43 @dc [ 24 30 -2 0 25.632] 66 @dc [ 24 30 -3 0 25.632] 50 @dc [<03800003800003800003800003800003800003800003C00003C00001C00001C00001E00001E000 00E00000F00000F000007800007800003C00003C00001E00001F00000F000007800007C0E003E0 E001F0FFFFF8FFFFF8FFFFF8E00000> 24 31 -2 0 25.632] 55 @dc [<07F0001FFC003FFF007C1F80F807C0F003C0F001E0F001E0F000E00000E00000E00001E00001E0 7003C07803C07E0F807FFF807FFE0073F800700000700000700000700000700000700000700000 7000007FFFC07FFFC07FFFC0> 24 30 -3 0 25.632] 53 @dc [<003800007C00007C00006C0000EE0000EE0000EE0000C60001C70001C70001C70001C700038380 0383800383800383800701C00701C00701C00701C00E00E00E00E00E00E01E00F01C00701C0070 1C0070FF01FEFF01FEFF01FE> 24 30 -1 0 25.632] 86 @dc [<00E00000E00000E00000E00040E040F0E1E0F8E3E07EEFC01FFF0007FC0003F80007FC001FFF00 7EEFC0F8E3E0F0E1E040E04000E00000E00000E00000E000> 24 21 -3 -5 25.632] 42 @dc [ 24 39 -3 4 25.632] 47 @dc [<007FFC007FFC007FFC000380000380000380000380000380000380FFFFFEFFFFFEFFFFFEF00380 7803803803803C03801E03800E03800F038007838003838003C38001C38000E38000F380007380 003B80003F80001F80000F80> 24 30 -1 0 25.632] 52 @dc [ 24 4 -3 -13 25.632] 45 @dc [<0701C00F83E00F83E00D83600D83600D83600DC7600DC7600DC7601CC6701CC6701CEE701CEE70 1CEE701CEE701CEE701C7C70387C3838003838003838003838003838003838003838003878003C 70001CFF01FEFF01FEFF01FE> 24 30 -1 0 25.632] 87 @dc [ 24 30 -1 0 25.632] 72 @dc [ 24 30 -1 0 25.632] 82 @dc [<0FE0003FF800FFFC00F83E00F01E00F00E00F00E00000E00000E00000E00000E00000E00000E00 000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00 000E0003FFC003FFC003FFC0> 24 30 -4 0 25.632] 74 @dc [ 24 30 -2 0 25.632] 90 @dc 1.000000 /cmr7.300 @newfont cmr7.300 @sf [ 16 19 -3 0 16.546] 49 @dc 4 @bop1 cmr12.300 @sf 45 90 p (exist:)s 19(\(1\))m 13(reduction)m 12(of)m 13(subprogram)m 14(call)m 12 r 111 c 118 c -1(erhe)m -1(ad,)m 12(\(2\))m 13 r 118 c (ectoriz)s -1(ation)m 11(of)m 13(pre-)m 13(and)m 13 r 112 c 1(ostpro)m 1(cessing)m 45 150 p (phases,)s 16(and)m 16(\(3\))m 16 r 118 c (ectoriz)s -1(ation)m 14(of)m 16(Cheb)m (yshev)s 14(series)m 15(ev)m -2(aluation.)m 20(The)m 15(emphasis)m 16(on)m 16(this)m 15(pap)m 1(er)m 16(is)m 45 210 p (on)s 17(\(2\))m 16(and)m 17(\(3\).)m 143 271 p (The)s 20 r 118 c (ectorization)s 19(of)m 21(function)m 20(ev)m -2(aluation)m 20(routines)m 21(for)m 21 r 109 c (ultipl)s -1 r 101 c 19(argumen)m (ts)s 20(seems)m 20(quite)m 45 331 p (simple)s 17(at)m 19(\014rst)m 19 r 124 c 18(one)m 19(simply)m 17(applies)m 18(the)m 18(scalar)m 19(algorithm)m 19(to)m 18(the)m 19 r 118 c (ec)s -1(tor)m 17(of)m 19(argumen)m (ts.)s 27(Un-)m 45 391 p (fortunately)s -3 r 44 c 17(this)m 18(fails)m 17 r 98 c 1(ecause)m 19(the)m 17(range)m 19(of)m 18 r 112 c 1(ossible)m 19(input)m 17(argumen)m (ts)s 18(is)m 17(divided)m 17(in)m (to)s 17(sev)m (eral)s 45 451 p (subin)s (terv)s -3(als,)m 19(eac)m 104 c 18(of)m 20(whic)m 104 c 18(is)m 19(handled)m 20(di\013eren)m (tl)s -1 r 121 c -4 r 46 c 30(Since)m 18 r 119 c 101 c 18(cannot)m 21(assume)m 20(that)m 20(the)m 19(input)m 45 511 p (argumen)s (ts)s 15(ha)m 118 c 101 c 14 r 98 c 1(een)m 16(sorted)m 17(in)m 15(an)m 121 c 16 r 119 c 97 c -1 r 121 c -4 r 44 c 14(the)m 16(core)m 16(of)m 16(the)m 16(algorithm)m 17(pro)m 1(ceeds)m 16(as)m 17(follo)m (ws.)s cmbx12.300 @sf 110 615 p 70 c -4(or)m 18(eac)m -1 r 104 c cmr12.300 @sf 16(argumen)m 116 c 15(range:)m cmbx12.300 @sf 167 684 p (Gather)s cmr12.300 @sf 16(argumen)m (ts)s 15(from)m 16(this)m 16(range)m 17(in)m (to)s 15 r 97 c 17(temp)m 1(orary)m 16 r 118 c (ector.)s cmbx12.300 @sf 167 744 p (Compute)s cmr12.300 @sf 16(the)m 16(appro)m (ximation)s 15(for)m 17(these)m 16(argumen)m (ts)s 15(in)m 16 r 118 c (ector)s 14(mo)m 1(de.)m cmbx12.300 @sf 167 804 p (Scatter)s cmr12.300 @sf 16(results)m 16(bac)m 107 c 14(in)m (to)s 15(resultan)m 116 c 15 r 118 c (ector.)s 45 906 p (Clearly)s -3 r 44 c 19(the)m 19 r 118 c (ector)s 19(lengths)m 20(will)m 19(dep)m 1(end)m 20(up)m 1(on)m 21(the)m 20(distribution)m 19(of)m 21(input)m 19(argumen)m (ts,)s 20(and,)m 21(in)m 45 966 p (general,)s 16(will)m 15 r 98 c 1 r 101 c 16(less)m 16(than)m 17(the)m 16(total)m 16 r 110 c (um)s -1 r 98 c 1(er)m 15(of)m 16(argumen)m (ts.)s cmbx10.432 @sf 45 1111 p (3.1)s 70(An)m 23(Example)m cmr12.300 @sf 45 1203 p 84 c -3 r 111 c 11(illustrate)m 11(this)m 12(transformation)m 13 r 119 c 101 c 11(consider)m 11(the)m 12(follo)m (wing)s 11(statemen)m 116 c 10(from)m 12(the)m 11(FNLIB)m 11(routine)m 45 1263 p (BESI0)s cmr8.300 @sf 182 1246 p 49 c cmr12.300 @sf 202 1263 p 46 c cmtt12.300 @sf 199 1365 p (IF)s 25(\(\(Y)m 24(.GT.)m 24(XSML\))m 24(.AND.)m 24(\(Y)m 25(.LE.)m 24(3.0\)\))m 173 1425 p 43 c 77(BESI0)m 23 r 61 c 26(2.75)m 24 r 43 c 25(CSEVL\(Y*)m -1(Y/4)m -1(.5)m -1(-1.)m -1(0,)m 23(BI0CS,)m 24(NTI0\))m cmr12.300 @sf 45 1527 p (This)s 12(statemen)m 116 c 11(illustrates)m 11(ho)m 119 c 12(one)m 12(particular)m 12(argumen)m 116 c 11(range)m 13(is)m 12(handled.)m 20(The)m 12(appro)m (ximation)s 45 1587 p (in)s 21(this)m 22(case)m 22(is)m 21(simply)m 21(2.75)m 22(plus)m 22(the)m 22(Cheb)m (yshev)s 20(series)m 21(sum)m 21(returned)m 22 r 98 c 121 c 20(the)m 21(utilit)m 121 c cmtt12.300 @sf 19(CSEVL)m cmr12.300 @sf 46 c cmtt12.300 @sf 45 1647 p (BIOCS)s cmr12.300 @sf 19(is)m 20(an)m 21(arra)m 121 c 19(of)m 21(Cheb)m (yshev)s 19(series)m 20(co)m 1(e\016cien)m -1(ts)m 19(and)m cmtt12.300 @sf 21(NTI0)m cmr12.300 @sf 19(is)m 20(the)m 20 r 110 c (um)s -1 r 98 c 1(er)m 19(of)m 21(co)m 1(e\016cien)m -1(ts.)m 45 1707 p (The)s 16(corresp)m 1(onding)m 17 r 118 c (ector)s 15(co)m 1(de)m 16(is)m 16(more)m 16(complex.)m cmtt12.300 @sf 199 1809 p (CALL)s 24(WGTLE\(M)m -1(,Y,)m -1(XSM)m -1(L,)m -1(3.0)m -1(E0,)m -1(N,I)m -1(ND)m -1(X\))m 199 1869 p (IF)s 25(\(N)m 25(.GT.)m 24(0\))m 25(THEN)m 276 1930 p (CALL)s 24(WGTHR\(N)m -1(,Y,)m -1(YC)m -1(MP,)m -1(IND)m -1(X\))m 276 1990 p (DO)s 25(20)m 24(J=1,N)m 353 2050 p (TCMP\(J)s -1 r 41 c 24 r 61 c 25(YCMP\(J\))m -1(**2)m -1(/4.)m -1(50)m -1(E0)m 23 r 45 c 26(1.0E0)m 96 2110 p (20)s 128(CONTIN)m -1(UE)m 276 2170 p (CALL)s 24(WCS\(N,T)m -1(CMP)m -1(,B)m -1(I0C)m -1(S,N)m -1(TI0)m -1(,Z)m -1(CMP)m -1(,B0)m -1(,B)m -1(1,B)m -1(2\))m 276 2230 p (DO)s 25(30)m 24(J=1,N)m 353 2291 p (ZCMP\(J)s -1 r 41 c 24 r 61 c 25(2.750E0)m 23 r 43 c 25(ZCMP\(J\))m 96 2351 p (30)s 128(CONTIN)m -1(UE)m 276 2411 p (CALL)s 24(WSCTR\(N)m -1(,ZC)m -1(MP)m -1(,IN)m -1(DX,)m -1(F\))m 199 2471 p (ENDIF)s 45 2505 p 780 2 ru cmr7.300 @sf 101 2537 p 49 c cmr10.300 @sf 120 2551 p (This)s 13(statemen)m 116 c 14(has)m 14 r 98 c 1(een)m 15(mo)m 1(di\014ed)m 14(sligh)m (tly)s 11(from)m 13(the)m 15(original)m 12(co)m 1(de)m 15(to)m 13(simplify)m 12(the)m 15(presen)m (tation.)s cmr12.300 @sf 1008 2843 p 52 c @eop %%Page: 5 5 5 @bop0 cmr12.300 @sf [ 32 34 -2 0 36.563] 72 @dc cmbx10.432 @sf [ 32 39 -3 0 34.370] 50 @dc [<000001C0000000000003E0000000000003E0000000000007F0000000000007F000000000000FF8 00000000000FF800000000000FF800000000001FFC00000000001FFC00000000003FFE00000000 003FEE00000000007FEF00000000007FC70000000000FFC78000000000FFC38000000000FF8380 00000001FF81C000000001FF01C000000003FF01E000000003FE00E000000007FE00F000000007 FC007000000007FC00700000000FFC00380000000FF800380000001FF8001C0000001FF0001C00 00003FF0001E0000003FE0000E0000007FE0000F0000007FC000070000007FC00007000000FFC0 0003800000FF800003800001FF800003C00001FF000001C00003FF000001E000FFFFF8003FFF80 FFFFF8003FFF80FFFFF8003FFF80> 56 41 -1 0 51.970] 86 @dc [<003FF00001FFFC0007F83F000FE007801FC003C03FC001C03F8001C07F8000007F000000FF0000 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000007F003F007F80 7F803F807F803F807F801FC07F800FE07F8007F83F0001FFFE00003FF800> 32 27 -2 0 30.551] 99 @dc [<003FC000FFE001FCF003F87007F03807F03807F03807F03807F03807F03807F03807F00007F000 07F00007F00007F00007F00007F00007F00007F00007F00007F00007F00007F000FFFFF0FFFFF0 1FFFF007F00003F00003F00001F00000F00000F00000F000007000007000007000007000> 24 38 -1 0 26.732] 116 @dc [<003FE00001FFFC0007F07F000FC01F801F800FC03F800FE03F800FE07F0007F07F0007F0FF0007 F8FF0007F8FF0007F8FF0007F8FF0007F8FF0007F8FF0007F8FF0007F87F0007F07F0007F07F00 07F03F0007E03F800FE01F800FC00FC01F8003F07E0001FFFC00003FE000> 32 27 -2 0 34.370] 111 @dc [ 24 27 -2 0 28.310] 114 @dc [ 16 43 -3 0 19.095] 105 @dc [ 32 27 -2 0 30.551] 122 @dc [<7FFF80007FFF80007FFF800007F0000007F0000007F0000007F0000007F0000007F0000007F000 0007F0000007F0000007F0000007F0000007F0000007F0000007F0000007F0000007F0000007F0 000007F0000007F0000007F0000007F00000FFFFC000FFFFC000FFFFC00007F0000007F0000007 F0000007F0000007F0000007F0000007F03F0007F07F8007F07F8003F87F8003F87F8001FC7F80 00FF3F00003FFE00000FF800> 32 42 -2 0 21.004] 102 @dc [ 64 41 -3 0 65.253] 77 @dc [<007FE3FF8001FFF3FF8003F83BFF8007E01FF8000FE00FF8000FE007F8000FE007F8000FE003F8 000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003 F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE0 03F800FFE03FF800FFE03FF800FFE03FF800> 40 27 -3 0 38.189] 117 @dc [<00007FF800000007FFFF0000001FFFFFC000007FF807F00000FF8000F80003FE00003C0007FC00 001E0007F800000F000FF0000007001FE0000007803FE0000003803FC0000003807FC000000380 7FC0000003807FC000000000FF8000000000FF8000000000FF8000000000FF8000000000FF8000 000000FF8000000000FF8000000000FF8000000000FF8000000000FF8000000000FF8000000000 7FC0000003807FC0000003807FC0000003803FC0000007803FE0000007801FE000000F800FF000 000F8007F800001F8007FC00003F8003FE00007F8000FF8001FF80007FF80FFF80001FFFFF8F80 0007FFFE078000007FF80180> 48 41 -4 0 49.646] 67 @dc [ 40 42 -3 0 38.189] 104 @dc [<0E03FE00000F0FFFC0000F9E0FE0000FF803F8000FF001FC000FF000FE000FE000FE000FE000FF 000FE0007F000FE0007F800FE0007F800FE0007F800FE0007F800FE0007F800FE0007F800FE000 7F800FE0007F800FE0007F800FE0007F000FE0007F000FE000FE000FE000FE000FF001FC000FFC 03F8000FFF07F0000FEFFFC0000FE3FE00000FE00000000FE00000000FE00000000FE00000000F E00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE0000000 FFE0000000FFE0000000FFE0000000> 40 42 -2 0 38.189] 98 @dc [<0FC00000003FE00000007C78000000FE3C000000FE1E000000FE0E000000FE0F0000007C070000 003807800000000380000000038000000001C000000001C000000003E000000003E000000007F0 00000007F00000000FF80000000FF80000000FF80000001FDC0000001FDC0000003FDE0000003F 8E0000007F8F0000007F070000007F07000000FE03800000FE03800001FC01C00001FC01C00003 FC01E00003F800E00007F800F00007F000700007F0007000FFFE03FF80FFFE03FF80FFFE03FF80> 40 39 -1 12 36.280] 121 @dc [ 24 27 -2 0 27.114] 115 @dc [<0001C000000003E000000003E000000007F000000007F00000000FF80000000FF80000000FF800 00001FDC0000001FDC0000003FDE0000003F8E0000007F8F0000007F070000007F07000000FE03 800000FE03800001FC01C00001FC01C00003FC01E00003F800E00007F800F00007F000700007F0 007000FFFE03FF80FFFE03FF80FFFE03FF80> 40 27 -1 0 36.280] 118 @dc [ 32 41 -4 0 38.189] 83 @dc cmr12.300 @sf [<000FF800003FFF1800FE079803F001F807E000F80FC000780F8000781F0000783E0000783E0000 787C0000787C0000787C000078F8001FFFF8001FFFF8000000F8000000F8000000F8000000F800 0000F8000000F8000018F80000187C0000187C0000387C0000383E0000383E0000781F0000780F 0000F80F8000F807C001F803F003B800FC0F38003FFC18000FF018> 32 36 -3 1 38.270] 71 @dc 1.000000 /cmmi12.300 @newfont cmmi12.300 @sf [<3E1F807F3FC0E3F8F0F1F070F0E038F0F01870F01C00700C007000007000007800003800003800 003C00E03C38601C3C701C3C383E1C1C3F1C0FF3FC03E1F0> 24 21 -2 0 27.716] 120 @dc [<07F0001FFE003C1F007803807801C0F000C0F00000F00000F00000F80000780000780000780000 3C00003C00001E03C00F03C00F83C003E1C001FFC0007F00> 24 21 -2 0 20.991] 99 @dc 1.000000 /cmmi8.300 @newfont cmmi8.300 @sf [<1F003F8039C03DC01CC01C001E000E000F00E700670077003F001E000000000000000000000000 00018001C001C0> 16 23 0 0 12.013] 105 @dc cmmi12.300 @sf [ 8 15 -4 10 13.548] 59 @dc [<07C00FE01E701C381E180E180E1C0F0C070007000780038003C001C0E1C061E070E030E03DE01F C00F800000000000000000000000000000000000000078007800780038> 16 34 0 0 16.639] 105 @dc cmr12.300 @sf [ 32 12 -3 -6 37.935] 61 @dc cmmi12.300 @sf [<70F8F8F870> 8 5 -4 0 13.548] 58 @dc [<1C003E001E007F001E00F3800E00E1C00E00F0C00F0070C00F0070E00700786007003800078038 0007803C0003801C0003C01C0003C01C00E3E01E0061E00E0061F00E0071F81E003BDE3C003F8F FC001F03F800> 32 21 0 0 29.114] 110 @dc [<7E000000FF000000F3800000F1C0000071C0000001C0000000E0000000E0000000E0000000F000 00007000000070000000700000007800000038000000380000003800000038000000380000003C 0000001C0000001C0000001C0000001C0000001E0000000E0000000E0000000E0000000E000000 FFF80000FFF8000007000000070000000700000007000000078000000380000003800000038000 0003C0000001C7000001C7800000E78000007F8000003F00> 32 45 -2 10 24.041] 102 @dc [ 32 34 -2 0 28.587] 84 @dc cmr12.300 @sf [<000180000001800000018000000180000001800000018000000180000001800000018000000180 00000180000001800000018000000180000001800000018000FFFFFFFEFFFFFFFE000180000001 800000018000000180000001800000018000000180000001800000018000000180000001800000 01800000018000000180000001800000018000> 32 34 -3 5 37.935] 43 @dc cmmi8.300 @sf [<3807C03C0FE03C0E701C0F701C07301E07001E07800E03800F0380CF8380EF83806FE3807FFF80 3E3F00> 24 14 0 0 21.409] 110 @dc 1.000000 /cmsy8.300 @newfont cmsy8.300 @sf [ 24 2 -3 -7 27.443] 0 @dc 1.000000 /cmex10.300 @newfont cmex10.300 @sf [ 56 58 -2 58 59.959] 88 @dc cmr8.300 @sf [ 24 10 -2 -3 27.443] 61 @dc [<003000003000003000003000003000003000003000003000003000003000003000FFFFFCFFFFFC 003000003000003000003000003000003000003000003000003000003000003000> 24 24 -2 4 27.443] 43 @dc cmbx12.300 @sf [ 40 34 -2 0 42.317] 65 @dc [ 16 35 -1 0 15.566] 108 @dc [<01FFC0000FFFF8003F80FE007E003F00FC001F80F8000F80F8000F80F8000F80FC001F807E007F 803FFFFF000FFFFF001FFFFE001FFFFC001FFFE0001E0000001C000000180000001DFE00001FFF 80000F87C0001F03E0003E01F0003E01F0003E01F0003E01F0003E01F0003E01F0003E01F3001F 03E7800F87F78007FFFF8001FE1F00> 32 33 -1 11 28.019] 103 @dc [ 16 36 -1 0 15.566] 105 @dc [<7FFFE07FFFE001F80001F80001F80001F80001F80001F80001F80001F80001F80001F80001F800 01F80001F80001F80001F80001F80001F80001F80001F80001F80001F80001F80001F80001F800 01F800FFF800FFF80001F800007800001800> 24 32 -4 0 28.019] 49 @dc [<7CFEFEFEFEFE7C00000000000000007CFEFEFEFEFE7C> 8 22 -4 0 15.566] 58 @dc [ 32 22 -2 0 31.133] 110 @dc [ 24 22 -2 0 22.104] 115 @dc [<001800C000003800E000003C01E000007C01F000007E03F000007E03F00000FE03F80000FF07F8 0001FF07DC0001FB8FCC0001F98FCC0003F18F860003F0DF860007F0DF070007E0DF030007E07F 03000FE07E01800FC07E01800FC07C01801F807C00C0FFE3FF87F8FFE3FF87F8> 40 22 -1 0 40.472] 119 @dc [ 40 34 -2 0 41.798] 82 @dc [ 56 2 0 -13 56.039] 124 @dc [<0000380000000038000000007C000000007C00000000FE00000000FE00000000FE00000001FF00 000001FF00000003FD80000003F980000007F9C0000007F0C0000007F0C000000FF06000000FE0 6000001FE03000001FC03000003FC03800003F801800003F801800007F800C00007F000C0000FF 00060000FE00060001FE00070001FC00030001FC00030003F800018003F800018007F80000C007 F00000C0FFFF800FFEFFFF800FFE> 40 34 -1 0 42.317] 86 @dc cmti12.300 @sf [<1F00003FE00078F000F03800E01C00E01C00E00E00E00F00E00700E00780E00780F00380F003C0 F003C0F003C07801E07801E07801E07801E03C00F03C00F03C00F01C00F01E00701E00700E0070 0F007007007003807003807001C07000F0E0003FC0000F80> 24 34 -6 1 24.906] 48 @dc [ 8 5 -6 0 14.944] 46 @dc [ 24 34 -3 0 18.772] 73 @dc [<1F07C03FCFE079FE60707C70F03C30F01E30F01E38F00E18F00E00F80F00780F00780700780700 7C07803C07801E07801E07800F07C0078FC003FDC000F9C0> 24 21 -5 0 24.906] 97 @dc [ 24 21 -2 0 19.925] 122 @dc cmmi12.300 @sf [ 32 45 0 10 27.535] 12 @dc 1.000000 /cmsy10.360 @newfont cmsy10.360 @sf [<00C00000000001C0000000000180000000000380000000000700000000000E00000000001E0000 0000003C0000000000FFFFFFFFFFE0FFFFFFFFFFE03C00000000001E00000000000E0000000000 07000000000003800000000001800000000001C00000000000C000000000> 48 18 -3 -3 49.812] 32 @dc cmmi12.300 @sf [<0002000000030000000300000003000000030000000180000001800000018000000180000000C0 000000C0000000C0000000C0000000E0000000E0000000E0000000F0000000F0000000F0000000 D8000000D8000000D8000000CC00C001CC00E0018E0060038600700386003C0F07001FFF03000F FE038007FE018001F80180> 32 32 0 11 25.299] 13 @dc cmti12.300 @sf [ 16 33 -6 0 24.906] 49 @dc [<000001F8FFF807FCFFF8078E0F800F8707800F0307800F0307C00F8003C00F8003C0078003C007 8003E007C001E007C001E003C001E003C001F007C000F0078000F00F8000FFFF0000FFFF000078 03C0007800F000780078007C0038003C003C003C001E003C001E003E001E001E000E001E000E00 1E000E001F001E000F003C000F007800FFFFF000FFFFC0> 32 35 -3 1 35.538] 82 @dc [<0FE0003FF8003C3C00780E00700700F00300F00000F00000F00000F80000780000780000780000 3C00003C00001E07801E07800F078007C38001FF80007E00> 24 21 -5 0 22.416] 99 @dc [<01F0F803FDFC079FCC07078E0703860703C60703C70701C30701C00781E00381E00380E003C0E0 01C0F0E1C0F061E07070E07030E0783CE0781FC038078038> 24 21 -3 0 26.152] 117 @dc [<1C00001E00001E00000E00000E00000F00000F0000070000070000078000078000038000038000 03C000E3C0E061E0F061F0F031F0703BFC701F9FE00F07C0> 24 21 -3 0 20.548] 114 @dc [<7E0000FF0000F70000F3800071C00001C00001C00001E00000E00000E00000E00000F000007000 007000007000007000007800003800003800003800003800003C00001C00001C00001C00001C00 001E00001E00000E0000FFF000FFF0000E00000F00000700000700000700000700000780000380 00038000038E0001CF0001EF0000FF00007E> 24 45 2 10 14.944] 102 @dc [<0FC0001FF0003C7C00781E00700F00F00F80F00780F003C0F003C0F803C07803E07801E07801E0 3C01E03C01E01E01E01F01E00F83C007C7C001FF80007E00> 24 21 -5 0 24.906] 111 @dc [<1FE0007FF800F07C00E01E00F00E00F00E00700F00000F00001F00007F0003FE000FFC000FF000 0F00000E03000E07800E07800F078007838003FF8000FE00> 24 21 -3 0 19.925] 115 @dc cmsy10.360 @sf [ 32 2 -4 -11 38.743] 0 @dc cmmi12.300 @sf [<07F00F801FFC1FC03C1F3CE07807F8607801F800F000F800F0003800F0003C00F0003C00F8003E 0078003F0078003B0078003B803C0079803C0071801E0071C00F00F0C00F80E0C003E3E0E001FF C000007F0000> 32 21 -2 0 31.023] 11 @dc cmti12.300 @sf [ 24 34 -4 1 24.906] 50 @dc [ 32 34 -3 0 30.556] 76 @dc [<1C01C007C01E01E00FE01E01E01E700E00E01C380E00E01E180F00F00E180F00F00E1C0700700F 0C0700700700078078070007807807800380380380038038038003C03C0380E3C03C03C061E01E 01C061F01F01C031F83F83C03BDE39E3801F8FF8FF800F03F03F00> 40 21 -3 0 39.850] 109 @dc [ 16 31 -3 10 14.944] 59 @dc cmmi12.300 @sf [ 24 49 -3 12 24.387] 61 @dc cmmi8.300 @sf [<7C00FF00E780E38003C001C001C001E001E000E000E000F000F0007000701C780C780E7807F803 F0000000000000000000000000001C001C001C> 16 29 0 6 14.269] 106 @dc cmmi12.300 @sf [<7E0000FF8000F3C000F1E00070E00000F000007000007800007800003800003800003C00003C00 001C00001C00001E00001E00000E00000E00000F00000F00000700000700000780070780030380 03838001C38000E780007F00003E00000000000000000000000000000000000000000000000000 0000000001E00001E00001E00000E0> 24 44 1 10 20.178] 106 @dc [<1C007000F8001E007801FC001E007803CE000E00380387000E003803C3000F003C01C3000F003C 01C38007001C01E18007001C00E00007801E00E00007801E00F00003800E00700003C00F007000 03C00F007000E3E00F80780061F00780380061F807C0380071DC0FE078003BDF1E78F0003F87FE 3FF0001F01F80FE000> 48 21 0 0 42.663] 109 @dc cmr12.300 @sf [ 8 31 -4 10 13.548] 59 @dc cmbx12.300 @sf [ 24 32 -3 0 28.019] 50 @dc cmmi12.300 @sf [ 24 35 -3 0 25.367] 107 @dc 5 @bop1 cmr12.300 @sf 45 90 p (Here)s 19(there)m 19(are)m cmtt12.300 @sf 20 r 77 c cmr12.300 @sf 20(argumen)m (ts)s 19(in)m 19(the)m 20(arra)m 121 c cmtt12.300 @sf 19 r 89 c cmr12.300 @sf 19(for)m 21(whic)m 104 c 18(the)m 20(function)m 19(is)m 20(to)m 20 r 98 c 1 r 101 c 20(ev)m -2(aluated)m 19(with)m 45 150 p (result)s 18(returned)m 17(in)m 18(the)m 18(arra)m 121 c cmtt12.300 @sf 17 r 70 c cmr12.300 @sf 46 c cmtt12.300 @sf 17(WGTLE)m cmr12.300 @sf 16(returns)m 18(an)m 19(arra)m 121 c cmtt12.300 @sf 17(INDX)m cmr12.300 @sf 16(of)m 19(the)m cmtt12.300 @sf 18 r 78 c cmr12.300 @sf 17(indices)m 17(of)m 18(elemen)m -1(ts)m 17(of)m 45 210 p (the)s 19 r 118 c (ector)s cmtt12.300 @sf 18 r 89 c cmr12.300 @sf 19(that)m 20(are)m 20 r 98 c 1(et)m 119 c -1(een)m cmtt12.300 @sf 17(XSML)m cmr12.300 @sf 18(and)m 21(3.)m 31(These)m 20(are)m 19(gathered)m 20 r 98 c 121 c 18(the)m 19(routine)m cmtt12.300 @sf 20(WGTHR)m cmr12.300 @sf 17(in)m (to)s cmtt12.300 @sf 45 271 p (YCMP)s cmr12.300 @sf 46 c 20(The)m 23(20)m 23(lo)m 1(op)m 23(prepro)m 1(cesses)m 22(the)m 22(argumen)m 116 c 21(arra)m 121 c -3 r 46 c cmtt12.300 @sf 37(WCS)m cmr12.300 @sf 21(ev)m -2(aluates)m 22(the)m 22(same)m 22(Cheb)m (yshev)s 45 331 p (series)s 15(as)m cmtt12.300 @sf 17(CSEVL)m cmr12.300 @sf 44 c 14(except)m 15(for)m 16 r 97 c 17 r 118 c (ec)s -1(tor)m 15(of)m cmtt12.300 @sf 16 r 78 c cmr12.300 @sf 16(argumen)m (ts)s 15(stored)m 16(in)m 16(the)m 16(arra)m 121 c cmtt12.300 @sf 15(TCMP)m cmr12.300 @sf 46 c cmtt12.300 @sf 14(B0)m cmr12.300 @sf 44 c cmtt12.300 @sf 15(B1)m cmr12.300 @sf 44 c 15(and)m cmtt12.300 @sf 17(B2)m cmr12.300 @sf 45 391 p (are)s 19 r 119 c (ork)s 19(arra)m (ys)s 19(of)m 19(length)m cmtt12.300 @sf 19 r 77 c cmr12.300 @sf 46 c 19(The)m 19(30)m 21(lo)m 1(op)m 20 r 112 c 1(ostpro)m 1(cesses)m 21(the)m 19(result)m 19(of)m 19(the)m 20(series)m 18(ev)m -2(aluation,)m 45 451 p (and)s 19(then)m cmtt12.300 @sf 18(WSCTR)m cmr12.300 @sf 16(puts)m 19(the)m 18(result)m 18(in)m (to)s 17(the)m 18(appropriate)m 18 r 112 c 1(ositions)m 20(of)m cmtt12.300 @sf 18 r 70 c cmr12.300 @sf 46 c 17(The)m 19(prepro)m 1(cessing)m 18(and)m 45 511 p 112 c 1(ostpro)m 1(cessing)m 24(phases)m 22(are)m 22(trivially)m 20 r 118 c (ectorizable)s -1 r 46 c 37(In)m 21(the)m 22(remainder)m 21(of)m 22(this)m 22(section)m 22 r 119 c 101 c 20(will)m 45 572 p (in)s 118 c -1(e)m -1(stigate)m 15(the)m 16 r 118 c (ect)s -1(orization)m 15(of)m 16(eac)m 104 c 15(of)m 17(the)m 16(indicated)m 15(subprograms.)m cmbx10.432 @sf 45 714 p (3.2)s 70 r 86 c -5(ectorization)m 22(of)m 23(Multiple)m 23(Cheb)m -1(yshev)m 22(Series)m 23(Ev)m -3(aluation)m cmr12.300 @sf 45 806 p (Next)s 17 r 119 c 101 c 16(consider)m 17(ho)m 119 c 18(the)m 17(ev)m -2(aluation)m 17(of)m 18(truncated)m 18(Cheb)m (yshev)s 16(series)m 17(is)m 17 r 118 c (ectorize)s -1(d.)m 24(First)m 17 r 119 c 101 c 45 866 p (review)s 19(ho)m 119 c 20(the)m 20(series)m 20(is)m 21(ev)m -2(aluated)m 19(in)m 20(the)m 20(scalar)m 21(co)m 1(de.)m 34(Giv)m (en)s 19(an)m 21(argumen)m 116 c cmmi12.300 @sf 19 r 120 c cmr12.300 @sf 20(and)m 21 r 97 c 21(set)m 21(of)m 45 927 p (Cheb)s (yshev)s 14(co)m 1(e\016cien)m (ts)s cmmi12.300 @sf 14 r 99 c cmmi8.300 @sf 558 934 p 105 c cmmi12.300 @sf 572 927 p 59 c 8 r 105 c cmr12.300 @sf 14 r 61 c 14 r 49 c cmmi12.300 @sf 59 c 8 r 58 c 8 r 58 c 8 r 58 c 7 r 59 c 8 r 110 c cmr12.300 @sf 44 c 16(the)m 16(follo)m (wing)s 15(algorithm)m 16(due)m 16(to)m 17(Clensha)m 119 c 15(ev)m -2(aluates)m cmmi12.300 @sf 677 1055 p 102 c cmr12.300 @sf 5 r 40 c cmmi12.300 @sf 120 c cmr12.300 @sf 41 c 14 r 61 c 842 1021 p 49 c 842 1043 p 25 2 ru 842 1089 p 50 c cmmi12.300 @sf 872 1055 p 99 c cmr8.300 @sf 893 1062 p 49 c cmmi12.300 @sf 912 1055 p 84 c cmr8.300 @sf 941 1062 p 48 c cmr12.300 @sf 961 1055 p 40 c cmmi12.300 @sf 120 c cmr12.300 @sf 41 c 10 r 43 c cmmi8.300 @sf 1086 1001 p 110 c cmsy8.300 @sf 0 c cmr8.300 @sf 49 c cmex10.300 @sf 1090 1014 p 88 c cmmi8.300 @sf 1091 1105 p 105 c cmr8.300 @sf (=1)s cmmi12.300 @sf 1161 1055 p 99 c cmmi8.300 @sf 1182 1062 p 105 c cmr8.300 @sf (+1)s cmmi12.300 @sf 1241 1055 p 84 c cmmi8.300 @sf 1270 1062 p 105 c cmr12.300 @sf 1284 1055 p 40 c cmmi12.300 @sf 120 c cmr12.300 @sf 41 c cmmi12.300 @sf 58 c cmbx12.300 @sf 45 1185 p (Algorithm)s 18 r 49 c 24 r 58 c 25(Clensha)m -1 r 119 c 18(Recurrence)m 17 r 124 c 19(Scalar)m 19 r 86 c -4(ersion)m cmti12.300 @sf 103 1274 p (0.)s 24(Initialize)m cmmi12.300 @sf 192 1340 p 12 c cmsy10.360 @sf 52 r 32 c cmti12.300 @sf 50 r 48 c cmmi12.300 @sf 192 1399 p 13 c cmsy10.360 @sf 55 r 32 c cmti12.300 @sf 50 r 48 c 103 1461 p (1.)s 24 r 82 c -1 r 101 c -2(curr)m -3(enc)m -1 r 101 c 16(for)m 16(series)m cmr12.300 @sf 192 1536 p (for)s cmmi12.300 @sf 18 r 105 c cmr12.300 @sf 13 r 61 c cmmi12.300 @sf 14 r 110 c cmr12.300 @sf 17(step)m cmsy10.360 @sf 18 r 0 c cmr12.300 @sf 49 c 17(to)m 18 r 49 c 18(do)m 17 r 58 c cmmi12.300 @sf 279 1596 p 11 c cmsy10.360 @sf 50 r 32 c cmmi12.300 @sf 50 r 13 c 279 1656 p 13 c cmsy10.360 @sf 56 r 32 c cmmi12.300 @sf 50 r 12 c 279 1716 p 12 c cmsy10.360 @sf 53 r 32 c cmr12.300 @sf 50 r 50 c cmmi12.300 @sf (x\015)s cmsy10.360 @sf 14 r 0 c cmmi12.300 @sf 11 r 11 c cmr12.300 @sf 11 r 43 c cmmi12.300 @sf 11 r 99 c cmmi8.300 @sf 713 1723 p 105 c cmti12.300 @sf 103 1778 p (2.)s 24 r 76 c -1(ast)m 15(term;)m 18 r 114 c -1(esult)m 16(is)m 18(in)m 18 r 102 c cmmi12.300 @sf 192 1857 p 102 c cmsy10.360 @sf 55 r 32 c cmr12.300 @sf 50 r 40 c cmmi12.300 @sf 12 c cmsy10.360 @sf 13 r 0 c cmmi12.300 @sf 11 r 11 c cmr12.300 @sf 41 c cmmi12.300 @sf 61 c cmr12.300 @sf 50 c 143 1955 p (When)s 15 r 119 c 101 c 14(ha)m 118 c 101 c 13 r 97 c 16 r 118 c (ector)s 14(of)m 16(argumen)m (ts,)s cmmi12.300 @sf 14 r 120 c cmmi8.300 @sf 986 1962 p 106 c cmr12.300 @sf 1004 1955 p 44 c cmmi12.300 @sf 15 r 106 c cmr12.300 @sf 17 r 61 c 14 r 49 c cmmi12.300 @sf 59 c 8 r 58 c 8 r 58 c 8 r 58 c 8 r 59 c 8 r 109 c cmr12.300 @sf 44 c 15(it)m 15(is)m 15(clear)m 15(what)m 16(should)m 16 r 98 c 1 r 101 c 16(done:)m cmmi12.300 @sf 45 2015 p 120 c cmr12.300 @sf 44 c cmmi12.300 @sf 18 r 11 c cmr12.300 @sf 44 c cmmi12.300 @sf 19 r 12 c cmr12.300 @sf 3 r 44 c cmmi12.300 @sf 18 r 13 c cmr12.300 @sf 3 r 44 c 18(and)m cmmi12.300 @sf 19 r 102 c cmr12.300 @sf 24 r 98 c 1(ecome)m 18 r 118 c (ectors)s 17(and)m 19(all)m 18(assignmen)m (ts)s 17(are)m 19(lo)m 1(ops)m 19(that)m 19(run)m 19(for)m cmmi12.300 @sf 18 r 106 c cmr12.300 @sf 21 r 61 c 17 r 49 c cmmi12.300 @sf 59 c 8 r 58 c 8 r 58 c 8 r 58 c 8 r 59 c 8 r 109 c cmr12.300 @sf 46 c 45 2075 p (When)s 18(this)m 17(is)m 18(done,)m 18(ho)m 119 c (e)s -1 r 118 c -1(e)m -1(r,)m 16(the)m 18(recurrence)m 16(lo)m 1(op)m 18(has)m 19 r 116 c 119 c -1 r 111 c 16(unnecessary)m 18 r 118 c (ector)s 16(copies.)m 25(These)m 45 2135 p (can)s 15 r 98 c 1 r 101 c 14(eliminated)m 13(when)m 15(the)m 14(lo)m 1(op)m 16(on)m cmmi12.300 @sf 15 r 105 c cmr12.300 @sf 14(is)m 14(unrolled)m 14(to)m 15 r 97 c 15(lev)m (e)s -1 r 108 c 12(of)m 15(three.)m 20(This)m 15(is)m 14(illustrated)m 14(in)m 14(the)m 45 2195 p (follo)s (wing)s 14 r 118 c (ector)s 13 r 118 c (ersion)s 14(of)m 15(the)m 15(ab)m 1 r 111 c 118 c 101 c 14(algorithm;)m 15(note)m 15(that)m 16(three)m 15(temp)m 1(orary)m 15 r 118 c (ectors)s 14(of)m 15(length)m cmmi12.300 @sf 45 2256 p 109 c cmr12.300 @sf 16(are)m 16(required)m 15(in)m 16(addition)m 17(to)m 16(the)m 16(input)m 16 r 118 c (ector)s cmmi12.300 @sf 15 r 120 c cmr12.300 @sf 15(and)m 17(the)m 16(output)m 17 r 118 c (ector)s cmmi12.300 @sf 15 r 102 c cmr12.300 @sf 5 r 46 c cmbx12.300 @sf 45 2353 p (Algorithm)s 18 r 50 c 24 r 58 c 25(Clensha)m -1 r 119 c 18(Recurrence)m 17 r 124 c 19 r 86 c -4(ector)m 18 r 86 c -4(ersion)m cmti12.300 @sf 103 2442 p (0.)s 24(Initialize)m cmmi12.300 @sf 192 2507 p 107 c cmsy10.360 @sf 70 r 32 c cmmi12.300 @sf 50 r 110 c cmr12.300 @sf 28(mo)m 1 r 100 c 28 r 51 c cmmi12.300 @sf 192 2567 p 12 c cmmi8.300 @sf 220 2574 p 106 c cmsy10.360 @sf 287 2567 p 32 c cmr12.300 @sf 50 r 48 c 100(for)m cmmi12.300 @sf 28 r 106 c cmr12.300 @sf 17 r 61 c 14 r 49 c cmmi12.300 @sf 59 c 8 r 58 c 8 r 58 c 8 r 58 c 7 r 59 c 8 r 109 c 192 2627 p 13 c cmmi8.300 @sf 217 2634 p 106 c cmsy10.360 @sf 287 2627 p 32 c cmr12.300 @sf 50 r 48 c 100(for)m cmmi12.300 @sf 28 r 106 c cmr12.300 @sf 17 r 61 c 14 r 49 c cmmi12.300 @sf 59 c 8 r 58 c 8 r 58 c 8 r 58 c 7 r 59 c 8 r 109 c 192 2688 p 102 c cmmi8.300 @sf 216 2695 p 106 c cmsy10.360 @sf 287 2688 p 32 c cmr12.300 @sf 50 r 50 c cmmi12.300 @sf 120 c cmmi8.300 @sf 439 2695 p 106 c cmr12.300 @sf 557 2688 p (for)s cmmi12.300 @sf 28 r 106 c cmr12.300 @sf 17 r 61 c 14 r 49 c cmmi12.300 @sf 59 c 8 r 58 c 8 r 58 c 8 r 58 c 7 r 59 c 8 r 109 c cmr12.300 @sf 1008 2843 p 53 c @eop %%Page: 6 6 6 @bop0 cmti12.300 @sf [<1C00001C0000380000300000700000600000E00000E00000E00000C00000C00000C00000C00000 C00000C00000C00000C00000C00000E00000E00000E00000E00000E00000700000700000700000 7000003800003800003800003C00001C00001C00000E00000E0000070000070000038000038000 01C00001C00000E000007000007800003800001C00000E000007000003C00001C0> 24 50 -7 13 19.925] 40 @dc [<1F07C03FCFE079FE60707C70F03C30F01E30F01E38F00E18F00E00F80F00780F00780700780700 7C07803C07801E07801E07800F07C0078FC003FDC000F9C00001E00001E00000E00000E00000F0 0000F00000700000700000780000780000780003F80003FC00007C> 24 35 -5 0 24.906] 100 @dc [ 24 50 0 13 19.925] 41 @dc cmr8.300 @sf [ 16 21 -2 0 17.642] 50 @dc cmti12.300 @sf [ 24 31 -1 10 24.906] 112 @dc [<01F80003FC00078E000707000703000701800701800701C00700C00780C00380E003806003C060 01C060E1C07061E07070E0F030E1F03CE1F01FC1F00780E0> 24 21 -3 0 22.416] 118 @dc [<1F80003FE00038F800383C003C1E003C0E003C0F0000070000078000038001FB8003FF80078FC0 0707C00703C00701C00701E00700E00700E00780E00380F003807003C07001C070E1C07861E038 70E03830E0383CE03C1FC01C07801C> 24 31 -3 10 23.661] 121 @dc [ 24 35 -3 0 24.906] 104 @dc cmr12.300 @sf [<0C00007C000E0000FE00060001E700070003C3800380038180018003818001C00701C000C00700 C000E00700C000700700C000300700C000380700C0001C0700C0000C0700C0000E0701C0000603 81800007038180000383C380000181E7000001C0FE000F80E07C001FC06000003CE07000007870 380000703018000070301C0000E0380C0000E0180E0000E018070000E018030000E018038000E0 1801C000E01800C000E03BFFE000703FFFE000703E01F00078780078003CE00038001FC0001C00 0F80000C00> 40 40 -3 3 40.645] 37 @dc cmbx10.432 @sf [<00003FFC00000001FFFF80000007FFFFC000001FF807F000003FE001F800007F8000780000FF80 003C0000FF00001E0001FF00000E0001FE00000E0003FE00000F0003FE0000070003FE00000700 03FE0000070003FE0000070003FE0000070003FE0000070003FE0000070003FE0000070003FE00 00070003FE0000070003FE0000070003FE0000070003FE0000070003FE0000070003FE00000700 03FE0000070003FE0000070003FE0000070003FE0000070003FE0000070003FE0000070003FE00 00070003FE0000070003FE0000070003FE0000070003FE0000070003FE00000700FFFFF801FFFC FFFFF801FFFCFFFFF801FFFC> 48 41 -3 0 52.883] 85 @dc [<0000FFE00000000FFFFE0000003FC07F800000FF001FE00001FC0007F00003F80003F80007F000 01FC000FF00001FE001FE00000FF001FE00000FF003FC000007F803FC000007F807FC000007FC0 7FC000007FC07F8000003FC0FF8000003FE0FF8000003FE0FF8000003FE0FF8000003FE0FF8000 003FE0FF8000003FE0FF8000003FE0FF8000003FE0FF8000003FE0FF8000003FE07F8000003FC0 7F8000003FC07F8000003FC07FC000007FC03FC000007F803FC000007F801FE00000FF001FE000 00FF000FF00001FE0007F00001FC0003F80003F80001FC0007F000007F001FC000003FC07F8000 0007FFFC00000000FFE00000> 48 41 -4 0 51.638] 79 @dc cmr12.300 @sf [<381C7C3EFC7EFC7EF87CC060C060C060E070603060307038381C1C0E1C0E> 16 15 -6 -20 24.387] 92 @dc [ 16 15 -2 -20 24.387] 34 @dc [<7FF3FF807FF3FF8007003800070038000700380007003800070038000700380007003800070038 00070038000700380007003800070038000700380007003800070038000700380007003800FFFF F800FFFFF800070038000700380007003800070038000700380007003800070038000700380007 80380003C0780001E0780000F87800007FF800000FF800> 32 35 0 0 27.097] 13 @dc cmbx12.300 @sf [ 24 34 -1 0 20.870] 73 @dc [<01FC7FC00FFF7FC01F83FE003F01FE003E00FE007E007E007C007E00FC007E00FC007E00FC007E 00FC007E00FC007E00FC007E00FC007E00FC007E007C007E007E007E003E007E003F00FE001FC3 FE0007FFFE0001FE7E0000007E0000007E0000007E0000007E0000007E0000007E0000007E0000 007E0000007E0000007E0000007E000003FE000003FE00> 32 35 -2 0 31.133] 100 @dc [ 32 22 -1 0 29.576] 120 @dc [<7CFEFEFEFEFE7C> 8 7 -4 0 15.566] 46 @dc cmmi12.300 @sf [<0F83E03FE7F078FF30703E38701E18F00F18F00F0CF0070CF00700F80780780780780380780380 7C03C03C03C01E03C01E03C00F07E007CFE003FEE000FCE0> 24 21 -2 0 25.603] 97 @dc [<1F80003FE00078F000707800E03C00E01E00E01E00E00F00E00F00F00F00700F80700780700780 7807803807803C07803E07803F07001F8F001FFE001CFC001E00000E00000E00000E00000F0000 0700000700000700000780000780000780003F80003FC00007C000> 24 35 -3 0 20.737] 98 @dc cmr12.300 @sf [<03F80007FE000F1F001E07803C03803803C07801C07801E07001E07001E0F001E0F001E0F001E0 F001E0F001E0F801E0F803C0F803C0FC0780FE0F80F7FF00F3FC00702000780000780000780000 3800003C03C01E03C00E03C00703C003C3C001FF80007E00> 24 34 -2 1 24.387] 54 @dc 6 @bop1 cmti12.300 @sf 103 90 p (1.)s 24 r 82 c -1 r 101 c -2(curr)m -3(enc)m -1 r 101 c 16(for)m 16(series)m 18(\(unr)m -1(ol)m 2(le)m -1(d\))m cmr12.300 @sf 192 168 p (for)s cmmi12.300 @sf 18 r 105 c cmr12.300 @sf 13 r 61 c cmmi12.300 @sf 14 r 110 c cmr12.300 @sf 17(step)m cmsy10.360 @sf 18 r 0 c cmr12.300 @sf 51 c 17(to)m 18 r 49 c 12 r 43 c cmmi12.300 @sf 11 r 107 c cmr12.300 @sf 19(do)m 17 r 58 c cmmi12.300 @sf 279 229 p 11 c cmmi8.300 @sf 310 236 p 106 c cmsy10.360 @sf 378 229 p 32 c cmmi12.300 @sf 50 r 102 c cmmi8.300 @sf 502 236 p 106 c cmmi12.300 @sf 520 229 p 12 c cmmi8.300 @sf 548 236 p 106 c cmsy10.360 @sf 577 229 p 0 c cmmi12.300 @sf 11 r 13 c cmmi8.300 @sf 652 236 p 106 c cmr12.300 @sf 681 229 p 43 c cmmi12.300 @sf 11 r 99 c cmmi8.300 @sf 751 236 p 105 c cmr12.300 @sf 865 229 p (for)s cmmi12.300 @sf 28 r 106 c cmr12.300 @sf 17 r 61 c 14 r 49 c cmmi12.300 @sf 59 c 8 r 58 c 8 r 58 c 8 r 58 c 7 r 59 c 8 r 109 c 279 289 p 13 c cmmi8.300 @sf 304 296 p 106 c cmsy10.360 @sf 378 289 p 32 c cmmi12.300 @sf 50 r 102 c cmmi8.300 @sf 502 296 p 106 c cmmi12.300 @sf 520 289 p 11 c cmmi8.300 @sf 551 296 p 106 c cmsy10.360 @sf 580 289 p 0 c cmmi12.300 @sf 11 r 12 c cmmi8.300 @sf 658 296 p 106 c cmr12.300 @sf 687 289 p 43 c cmmi12.300 @sf 11 r 99 c cmmi8.300 @sf 757 296 p 105 c cmsy8.300 @sf 0 c cmr8.300 @sf 49 c cmr12.300 @sf 916 289 p (for)s cmmi12.300 @sf 28 r 106 c cmr12.300 @sf 17 r 61 c 13 r 49 c cmmi12.300 @sf 59 c 8 r 58 c 8 r 58 c 8 r 58 c 8 r 59 c 8 r 109 c 279 349 p 12 c cmmi8.300 @sf 307 356 p 106 c cmsy10.360 @sf 378 349 p 32 c cmmi12.300 @sf 50 r 102 c cmmi8.300 @sf 502 356 p 106 c cmmi12.300 @sf 520 349 p 13 c cmmi8.300 @sf 545 356 p 106 c cmsy10.360 @sf 575 349 p 0 c cmmi12.300 @sf 10 r 11 c cmmi8.300 @sf 655 356 p 106 c cmr12.300 @sf 685 349 p 43 c cmmi12.300 @sf 11 r 99 c cmmi8.300 @sf 755 356 p 105 c cmsy8.300 @sf 0 c cmr8.300 @sf 50 c cmr12.300 @sf 914 349 p (for)s cmmi12.300 @sf 28 r 106 c cmr12.300 @sf 16 r 61 c 14 r 49 c cmmi12.300 @sf 59 c 8 r 58 c 8 r 58 c 8 r 58 c 8 r 59 c 8 r 109 c cmti12.300 @sf 103 412 p (2.)s 24 r 76 c -1(ast)m 15(term;)m 18(cle)m -1(anup)m 17(for)m 17 r 110 c 18(not)m 18(divisible)m 19(by)m 17(thr)m -1 r 101 c -2 r 101 c cmr12.300 @sf 192 488 p (if)s 16 r 40 c cmmi12.300 @sf 17 r 107 c cmr12.300 @sf 16 r 61 c 14 r 48 c 17 r 41 c 17(then)m cmmi12.300 @sf 279 548 p 102 c cmmi8.300 @sf 303 555 p 106 c cmsy10.360 @sf 378 548 p 32 c cmr12.300 @sf 50 r 40 c cmmi12.300 @sf 12 c cmmi8.300 @sf 525 555 p 106 c cmsy10.360 @sf 554 548 p 0 c cmmi12.300 @sf 10 r 11 c cmmi8.300 @sf 634 555 p 106 c cmr12.300 @sf 653 548 p 41 c cmmi12.300 @sf 61 c cmr12.300 @sf 50 c 100(for)m cmmi12.300 @sf 28 r 106 c cmr12.300 @sf 17 r 61 c 14 r 49 c cmmi12.300 @sf 59 c 8 r 58 c 8 r 58 c 8 r 58 c 7 r 59 c 8 r 109 c cmr12.300 @sf 192 608 p (elseif)s 15 r 40 c cmmi12.300 @sf 17 r 107 c cmr12.300 @sf 16 r 61 c 14 r 49 c 18 r 41 c 16(then)m cmmi12.300 @sf 279 669 p 11 c cmmi8.300 @sf 310 676 p 106 c cmsy10.360 @sf 378 669 p 32 c cmmi12.300 @sf 50 r 102 c cmmi8.300 @sf 502 676 p 106 c cmmi12.300 @sf 520 669 p 12 c cmmi8.300 @sf 548 676 p 106 c cmsy10.360 @sf 577 669 p 0 c cmmi12.300 @sf 11 r 13 c cmmi8.300 @sf 652 676 p 106 c cmr12.300 @sf 681 669 p 43 c cmmi12.300 @sf 11 r 99 c cmr8.300 @sf 751 676 p 49 c cmr12.300 @sf 871 669 p (for)s cmmi12.300 @sf 28 r 106 c cmr12.300 @sf 16 r 61 c 14 r 49 c cmmi12.300 @sf 59 c 8 r 58 c 8 r 58 c 8 r 58 c 8 r 59 c 8 r 109 c 279 729 p 102 c cmmi8.300 @sf 303 736 p 106 c cmsy10.360 @sf 378 729 p 32 c cmr12.300 @sf 50 r 40 c cmmi12.300 @sf 11 c cmmi8.300 @sf 528 736 p 106 c cmsy10.360 @sf 557 729 p 0 c cmmi12.300 @sf 11 r 13 c cmmi8.300 @sf 632 736 p 106 c cmr12.300 @sf 650 729 p 41 c cmmi12.300 @sf 61 c cmr12.300 @sf 50 c 101(for)m cmmi12.300 @sf 28 r 106 c cmr12.300 @sf 17 r 61 c 13 r 49 c cmmi12.300 @sf 59 c 8 r 58 c 8 r 58 c 8 r 58 c 8 r 59 c 8 r 109 c cmr12.300 @sf 192 789 p (elseif)s 15 r 40 c cmmi12.300 @sf 17 r 107 c cmr12.300 @sf 16 r 61 c 14 r 50 c 18 r 41 c 16(then)m cmmi12.300 @sf 279 849 p 11 c cmmi8.300 @sf 310 856 p 106 c cmsy10.360 @sf 378 849 p 32 c cmmi12.300 @sf 50 r 102 c cmmi8.300 @sf 502 856 p 106 c cmmi12.300 @sf 520 849 p 12 c cmmi8.300 @sf 548 856 p 106 c cmsy10.360 @sf 577 849 p 0 c cmmi12.300 @sf 11 r 13 c cmmi8.300 @sf 652 856 p 106 c cmr12.300 @sf 681 849 p 43 c cmmi12.300 @sf 11 r 99 c cmr8.300 @sf 751 856 p 50 c cmr12.300 @sf 871 849 p (for)s cmmi12.300 @sf 28 r 106 c cmr12.300 @sf 16 r 61 c 14 r 49 c cmmi12.300 @sf 59 c 8 r 58 c 8 r 58 c 8 r 58 c 8 r 59 c 8 r 109 c 279 909 p 13 c cmmi8.300 @sf 304 916 p 106 c cmsy10.360 @sf 378 909 p 32 c cmmi12.300 @sf 50 r 102 c cmmi8.300 @sf 502 916 p 106 c cmmi12.300 @sf 520 909 p 11 c cmmi8.300 @sf 551 916 p 106 c cmsy10.360 @sf 580 909 p 0 c cmmi12.300 @sf 11 r 12 c cmmi8.300 @sf 658 916 p 106 c cmr12.300 @sf 687 909 p 43 c cmmi12.300 @sf 11 r 99 c cmr8.300 @sf 757 916 p 49 c cmr12.300 @sf 876 909 p (for)s cmmi12.300 @sf 28 r 106 c cmr12.300 @sf 17 r 61 c 14 r 49 c cmmi12.300 @sf 59 c 8 r 58 c 8 r 58 c 8 r 58 c 8 r 59 c 8 r 109 c 279 969 p 102 c cmmi8.300 @sf 303 976 p 106 c cmsy10.360 @sf 378 969 p 32 c cmr12.300 @sf 50 r 40 c cmmi12.300 @sf 13 c cmmi8.300 @sf 522 976 p 106 c cmsy10.360 @sf 551 969 p 0 c cmmi12.300 @sf 11 r 12 c cmmi8.300 @sf 629 976 p 106 c cmr12.300 @sf 647 969 p 41 c cmmi12.300 @sf 61 c cmr12.300 @sf 50 c 100(for)m cmmi12.300 @sf 28 r 106 c cmr12.300 @sf 17 r 61 c 14 r 49 c cmmi12.300 @sf 59 c 8 r 58 c 8 r 58 c 8 r 58 c 8 r 59 c 8 r 109 c cmr12.300 @sf 192 1030 p (endif)s 143 1130 p (The)s 18(lo)m 1(op)m 19(on)m cmmi12.300 @sf 18 r 105 c cmr12.300 @sf 18(rep)m 1(eatedly)m 18(utilizes)m 16(four)m 19 r 118 c (ect)s -1(ors)m 17(whic)m 104 c 17(can)m 18(remain)m 18(in)m 18 r 118 c (ec)s -1(tor)m 17(registers)m 18(for)m 45 1190 p (the)s 17(en)m (tire)s 16(computation.)m 26(Unrolling)m 17(the)m 17(lo)m 1(ops)m 19(in)m 17(this)m 18 r 119 c 97 c 121 c 15(yields)m 17 r 97 c 18(20%)m 18(to)m 18(25%)m 19(impro)m 118 c -2(eme)m -1 r 110 c -1 r 116 c 45 1251 p (in)s 16(the)m 16 r 111 c 118 c -1(erall)m 14 r 112 c 1(erformance)m 16(of)m 16(our)m 17(soft)m 119 c (are)s 14(on)m 17(the)m 16(Cra)m 121 c 15(Y-MP)m -3 r 46 c cmbx10.432 @sf 45 1394 p (3.3)s 70 r 86 c -5(ectorization)m 22(of)m 23(Utilit)m -1 r 121 c 22(Op)m 2(erations)m cmr12.300 @sf 45 1486 p (Algorithm)s 12(2,)m 14(whic)m 104 c 12(forms)m 13(the)m 13(\\inner)m 13(lo)m 1(op")m 15(of)m 13(our)m 14(computation)m 14(for)m 13 r 97 c 14(giv)m (en)s 11(argumen)m 116 c 12(range,)m 14(is)m 45 1546 p 112 c 1(erformed)m 15(on)m 15 r 118 c (ectors)s 13(whic)m 104 c 14(are)m 14(stored)m 16(con)m (tiguously)s 14(in)m 14(memory)m -3 r 46 c 19(This)m 15(is)m 15(quite)m 14(desirable)m 14(since)m 45 1606 p (it)s 18(reduces)m 18(the)m 18 r 112 c 1(ossibilit)m 121 c 16(of)m 19(bank)m 19(con\015icts)m 18(during)m 18(memory)m 18(references.)m 26(Ho)m 119 c (e)s -1 r 118 c -1(e)m -1(r,)m 17(argumen)m (ts)s 45 1667 p (corresp)s 1(onding)m 16(to)m 16 r 97 c 16(giv)m (en)s 13(range)m 16(need)m 15(not)m 16(lie)m 14(con)m (tiguously)s 14(in)m 15(the)m 15(input)m 15 r 118 c (ector.)s 19(Th)m (us,)s 15(for)m 15(eac)m 104 c 45 1727 p (argumen)s 116 c 21(range)m 23 r 119 c 101 c 21 r 109 c (ust)s 22(gather)m 22(together)m 23(applicable)m 22(argumen)m (ts)s 21(in)m (to)s 21 r 97 c 23(con)m (tiguous)s 22 r 118 c (ector,)s 45 1787 p (compute)s 18(the)m 19(required)m 17(function)m 19 r 118 c -2(alue,)m 18(and)m 19(then)m 19(scatter)m 18(them)m 19(bac)m 107 c 17(to)m 19(appropriate)m 19(lo)m 1(cations)m 45 1847 p (in)s 20(the)m 21(output)m 21 r 118 c (ector.)s 33(The)m 21(data-handling)m 22(op)m 1(erations)m 22(necessary)m 21(to)m 21(do)m 21(these)m 21(things)m 21(are)m 20(not)m 45 1907 p (signi\014can)s 116 c 13(in)m 15(terms)m 14(of)m 14(op)m 1(eration)m 16(coun)m (ts,)s 14(but)m 14(can)m 15(lead)m 14(to)m 15(signi\014can)m 116 c 14 r 112 c 1(erformance)m 14(degradation)m 45 1968 p (if)s 21(not)m 22(prop)m 1(erly)m 21 r 118 c (ectori)s -1(zed.)m 34(Unfortunately)m -3 r 44 c 21(these)m 21(op)m 1(erations)m 22(are)m 22(among)m 22(the)m 21(most)m 22(lik)m -1(el)m -1 r 121 c 20(to)m 45 2028 p (th)s 119 c (art)s 12 r 97 c 15 r 118 c (ec)s -1(torizi)m -1(ng)m 13(compiler;)m 13(none)m 14 r 119 c (ere)s 13 r 118 c (ec)s -1(torized)m 12 r 98 c 121 c 12(the)m 14(Cyb)m 1(er)m 14(205)m 16(compiler,)m 12(for)m 15(example.)m 143 2088 p 87 c -3 r 101 c 15(wish)m 16(to)m 17(impleme)m -1 r 110 c -1 r 116 c 14(our)m 17(co)m 1(de)m 16(in)m 16(standard)m 18 r 70 c -3(ortran,)m 15(but)m 17 r 112 c 1(ermit)m 15(easy)m 16(customization)m 16(in)m 45 2148 p (cases)s 15(where)m 15(suc)m 104 c 14(co)m 1(de)m 15(is)m 15(ine\016cien)m -1(t.)m 19 r 84 c -3 r 111 c 14(facilitate)m 14(this)m 15 r 119 c 101 c 14(ha)m 118 c -1 r 101 c 13(encapsulated)m 15(these)m 15(op)m 1(erations)m 45 2208 p (in)s (to)s 20(subprograms)m 23(whic)m 104 c 20(can)m 22 r 98 c 1 r 101 c 21(replaced)m 21 r 98 c 121 c 20(more)m 21(e\016cien)m -1 r 116 c 20 r 118 c (ersions)s 20(if)m 21 r 97 c 118 c -2(ail)m -1(able.)m 35 r 87 c -3 r 101 c 20(next)m 45 2269 p (describ)s 1 r 101 c 16(these)m 16(utilities)m 15(in)m 17(more)m 16(detail.)m 22(In)m 16(eac)m 104 c 15(case)m 17(our)m 17(implemen)m -1(tation)m 15(is)m 16(quite)m 16(straigh)m (tfor-)s 45 2329 p 119 c (ard.)s 26(Although,)m 18(eac)m 104 c 16(is)m 18(\\v)m (ectoriz)s -1(ed")m 16 r 98 c 121 c 17(the)m 17(compilers)m 17(on)m 19(the)m 17(Con)m 118 c (ex)s 15(C-120)m 20(and)m 18(the)m 18(Cra)m 121 c 45 2389 p (Y-MP)s -3 r 44 c 16(the)m 18(most)m 18(e\016cien)m -1 r 116 c 16(implemen)m -1(tation)m 16(of)m 19(these)m 17(utilities)m 16(is)m 18(necessarily)m 17(system-dep)m 1(enden)m (t.)s 45 2449 p (See)s 16 r 91 c 53 c (],)s 15(for)m 17(example,)m 14(for)m 17 r 97 c 16(discussion)m 17(of)m 16(gather)m 17(and)m 17(scatter.)m cmbx12.300 @sf 45 2553 p (Index)s 23(Compression.)m cmr12.300 @sf 33 r 70 c -3(or)m 19 r 97 c 21(giv)m (en)s 18(argumen)m 116 c 20(range,)m 21 r 119 c 101 c 19 r 109 c (ust)s 19(\014nd)m 20(the)m 20(set)m 21(of)m 20(indices)m 20(that)m 45 2613 p (corresp)s 1(ond)m 23(to)m 22(input)m 21(argumen)m (ts)s 21(in)m 21(this)m 21(range.)m 38(In)m 22(particular)m 21 r 119 c 101 c 20(need)m 21(routines)m 22(that,)m 23(giv)m (en)s 45 2674 p (scalars)s cmmi12.300 @sf 17 r 97 c cmr12.300 @sf 16(and)m cmmi12.300 @sf 16 r 98 c cmr12.300 @sf 16(and)m 17 r 97 c 17 r 118 c (ector)s cmmi12.300 @sf 14 r 120 c cmmi8.300 @sf 686 2681 p 106 c cmr12.300 @sf 704 2674 p 44 c 16(construct)m 16(arra)m (ys)s 16(of)m 16(indices)m cmmi12.300 @sf 16 r 106 c cmr12.300 @sf 19(for)m 16(whic)m 104 c 1008 2843 p 54 c @eop %%Page: 7 7 7 @bop0 cmmi12.300 @sf [<00000038000000F8000003E000000F8000003E000000F8000003E000000F8000003E000000F800 0003E000000F8000003E000000F8000000F80000003E0000000F80000003E0000000F80000003E 0000000F80000003E0000000F80000003E0000000F80000003E0000000F800000038> 32 28 -4 2 37.935] 60 @dc cmsy10.360 @sf [ 32 39 -4 7 38.743] 20 @dc cmbx12.300 @sf [ 24 49 -3 12 28.019] 47 @dc cmmi12.300 @sf [<0FC0003FF000387800383C003C1E003C0E003C0F0000070000078000038001FB8003FF80078FC0 0707C00703C00701C00701E00700E00700E00780E00380F003807003C07001C070E1C07861E038 70E03830E0383DE03C1FC01C0F801C> 24 31 0 10 23.782] 121 @dc 1.000000 /cmmi6.300 @newfont cmmi6.300 @sf [<3C3E3733381818DCEC7C3C00000000060F07> 8 18 -1 0 11.098] 105 @dc cmbx12.300 @sf [<0007FC0000003FFF800000FC07E00003F001F80007E000FC000FC0007E001F80003F003F80003F 803F00001F807F00001FC07F00001FC07E00000FC0FE00000FE0FE00000FE0FE00000FE0FE0000 0FE0FE00000FE0FE00000FE0FE00000FE0FE00000FE0FE00000FE07E00000FC07E00000FC07F00 001FC03F00001F803F00001F801F80003F001F80003F000FC0007E0007E000FC0003F001F80000 FC07E000003FFF80000007FC0000> 40 34 -3 0 42.087] 79 @dc [ 16 5 -1 -9 18.680] 45 @dc [<7FFC007FFC000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC000 0FC0000FC0000FC0000FC0000FC0000FC0000FC000FFFC00FFFC000FC0000FC0000FC0000FC000 0FC0000FC0000FC3C00FC7E007E7E007E7E003F7E001FFC0003F80> 24 35 -1 0 17.123] 102 @dc [<03FFFFF80003FFFFF8000003F800000003F800000003F800000003F800000003F800000003F800 000003F800000003F800000003F800000003F800000003F800000003F800000003F800000003F8 00000003F800000003F800000003F800000003F800000003F800000003F80000C003F800C0C003 F800C0C003F800C0C003F800C0E003F801C0E003F801C06003F801807003F803807803F807807E 03F80F807FFFFFFF807FFFFFFF80> 40 34 -2 0 38.973] 84 @dc cmtt12.300 @sf [ 24 30 -1 0 25.632] 75 @dc 7 @bop1 cmr12.300 @sf 90 90 p (1.)s cmmi12.300 @sf 24 r 97 c 14 r 60 c 14 r 120 c cmmi8.300 @sf 272 97 p 106 c cmr12.300 @sf 90 171 p (2.)s cmmi12.300 @sf 24 r 120 c cmmi8.300 @sf 180 178 p 106 c cmsy10.360 @sf 212 171 p 20 c cmmi12.300 @sf 14 r 98 c cmr12.300 @sf 90 252 p (3.)s cmmi12.300 @sf 24 r 97 c 14 r 60 c 14 r 120 c cmmi8.300 @sf 272 259 p 106 c cmsy10.360 @sf 303 252 p 20 c cmmi12.300 @sf 14 r 98 c cmr12.300 @sf 45 354 p 65 c 16 r 70 c -3(ortran)m 16(impleme)m -1 r 110 c -1(tation)m 15(of)m 16(the)m 16(lo)m 1(op)m 17(for)m 17(the)m 16(case)m cmmi12.300 @sf 16 r 97 c 14 r 60 c 13 r 120 c cmmi8.300 @sf 1250 361 p 106 c cmr12.300 @sf 1285 354 p (is)s cmtt12.300 @sf 199 476 p 78 c 25 r 61 c 25 r 48 c 199 536 p (DO)s 25(10)m 25(J=1,M)m 276 597 p (IF)s 25(\(X\(J\))m 23(.GT.)m 25(A\))m 24(THEN)m 353 657 p 78 c 25 r 61 c 25 r 78 c 25 r 43 c 26 r 49 c 353 717 p (INDX\(N)s -1 r 41 c 24 r 61 c 25 r 74 c 276 777 p (ENDIF)s 96 837 p (10)s 51(CONTINU)m -1 r 69 c cmr12.300 @sf 45 960 p 87 c -3 r 101 c 14(ha)m 118 c 101 c 13(isolated)m 15(suc)m 104 c 14(lo)m 1(ops)m 16(as)m 16(the)m 15(subprograms)m cmtt12.300 @sf 17(WGT\(M,X)m -1(,A,)m -1(N,I)m -1(NDX)m -1 r 41 c cmr12.300 @sf 44 c cmtt12.300 @sf 13(WLE\(M,)m -1(X,B)m -1(,N,)m -1(IND)m -1(X\))m cmr12.300 @sf -1 r 44 c 45 1020 p (and)s cmtt12.300 @sf 17(WGTLE\(M)m -1(,X,)m -1(A,)m -1(B,N)m -1(,IN)m -1(DX)m -1 r 41 c cmr12.300 @sf 44 c 14(corresp)m 1(onding)m 17(to)m 17(op)m 1(erations)m 17(1,)m 16(2,)m 17(and)m 16 r 51 c 17(ab)m 1 r 111 c 118 c (e,)s 14(resp)m 1(ectiv)m -1(ely)m -5 r 46 c cmbx12.300 @sf 45 1122 p (Gather/Scatter)s cmr12.300 @sf 22(The)m 22(result)m 22(of)m 23(index)m 22(compression)m 23(is)m 22(an)m 23(arra)m 121 c 22(of)m 23(indices)m cmmi12.300 @sf 21 r 106 c cmmi8.300 @sf 1684 1129 p 105 c cmr12.300 @sf 1699 1122 p 46 c 40(The)m 22(gather)m 45 1182 p (op)s 1(eration)m 19(collects)m 16(the)m 18(elemen)m -1(t)m -1 r 115 c 16(of)m 18(the)m 18 r 118 c (ector)s cmmi12.300 @sf 16 r 120 c cmmi8.300 @sf 1042 1189 p 106 c cmr12.300 @sf 1078 1182 p (with)s 17(these)m 17(indices)m 17(in)m (to)s 16 r 97 c 19(con)m (tiguous)s 17 r 118 c (ector)s cmmi12.300 @sf 45 1242 p 121 c cmmi8.300 @sf 69 1249 p 105 c cmsy10.360 @sf 98 1242 p 32 c cmmi12.300 @sf 15 r 120 c cmmi8.300 @sf 191 1249 p 106 c cmmi6.300 @sf 205 1254 p 105 c cmr12.300 @sf 220 1242 p 46 c 23(Scatter)m 17(is)m 17(the)m 16(in)m 118 c -1(erse)m 14(of)m 18(this,)m cmmi12.300 @sf 16 r 120 c cmmi8.300 @sf 916 1249 p 106 c cmmi6.300 @sf 930 1254 p 105 c cmsy10.360 @sf 960 1242 p 32 c cmmi12.300 @sf 15 r 121 c cmmi8.300 @sf 1049 1249 p 105 c cmr12.300 @sf 1063 1242 p 46 c 23 r 87 c -3 r 101 c 16(ha)m 118 c -1 r 101 c 15(placed)m 16(simple)m 16(gather)m 18(and)m 17(scatter)m 45 1302 p (lo)s 1(ops)m 17(in)m (to)s 15(the)m 16(subprograms)m cmtt12.300 @sf 18(WGTHR\(N)m -1(,X,)m -1(IND)m -1(X,)m -1(Y\))m cmr12.300 @sf 14(and)m cmtt12.300 @sf 17(WSCTR\(N)m -1(,Y)m -1(,IN)m -1(DX,)m -1(X\))m cmr12.300 @sf 44 c 13(resp)m 1(ectiv)m (el)s -1 r 121 c -4 r 46 c cmbx12.300 @sf 45 1404 p (Out-of-range)s 27 r 84 c -4(ests.)m cmr12.300 @sf 44(Before)m 24 r 119 c 101 c 23(apply)m 24(our)m 25(algorithm)m 24 r 119 c 101 c 23 r 109 c (ust)s 22(determine)m 23(whether)m 24(an)m 121 c 45 1464 p (elemen)s -1 r 116 c 13(of)m 16(the)m 15(input)m 15 r 118 c (ector)s 14(is)m 15(out)m 16(of)m 16(range,)m 15(i.e.,)m 14(greater)m 15(than)m 16(\(or)m 16(less)m 15(than\))m 16 r 97 c 16(giv)m (en)s 13(scalar.)m 21(If)m 45 1524 p (so,)s 16 r 119 c 101 c 13 r 119 c (ould)s 14(lik)m 101 c 13(to)m 15(pro)m (vide)s 14(the)m 15(index)m 14(of)m 16(the)m 14(\014rst)m 16 r 111 c 1(ccurence)m 14(as)m 16 r 97 c 16(diagnostic.)m 21(If)m 15(one)m 15(attempts)m 45 1584 p (to)s 14(com)m (bine)s 11 r 98 c 1(oth)m 14(of)m 14(these)m 13(op)m 1(erations)m 15(in)m (to)s 12 r 97 c 14(single)m 13(lo)m 1(op,)m 14(one)m 14(gets)m 14(something)m 13(that)m 14(is,)m 14(in)m 13(general,)m 45 1645 p (not)s 17 r 118 c (ec)s -1(torizable,)m 14(e.g.,)m cmtt12.300 @sf 199 1767 p (KEY)s 24 r 61 c 26 r 48 c 199 1827 p (DO)s 25(20)m 25(J=1,M)m 276 1887 p (IF\(X\(J)s -1 r 41 c 24(.GT.)m 24(A\))m 25(THEN)m 327 1948 p (KEY)s 24 r 61 c 26 r 74 c 327 2008 p (GO)s 25(TO)m 25(25)m 276 2068 p (ENDIF)s 96 2128 p (20)s 51(CONTINU)m -1 r 69 c 96 2188 p (25)s 51(CONTINU)m -1 r 69 c cmr12.300 @sf 45 2311 p (Instead,)s 16 r 119 c 101 c 15(\014rst)m 16 r 99 c (hec)s -1 r 107 c 14(for)m 16(an)m 17(error)m 16(condition)m 16(using)m 17 r 97 c 16(simpler,)m 15 r 118 c (ectoriz)s -1(able)m 14(lo)m 1(op,)m 17(e.g.,)m cmtt12.300 @sf 199 2433 p (KEY)s 24 r 61 c 26 r 48 c 199 2494 p (DO)s 25(30)m 25(J=1,M)m 276 2554 p (IF\(X\(J)s -1 r 41 c 24(.GT.)m 24(A\))m 25(KEY)m 24 r 61 c 26 r 49 c 96 2614 p (30)s 51(CONTINU)m -1 r 69 c cmr12.300 @sf 1008 2843 p 55 c @eop %%Page: 8 8 8 @bop0 cmbx12.300 @sf [ 40 34 -2 0 43.816] 78 @dc [ 32 34 -2 0 33.669] 76 @dc [ 40 34 -2 0 39.838] 66 @dc [ 40 34 -2 0 42.951] 68 @dc [<1C1FE0001E7FF8001FF0FE001FC03F001F801F001F801F801F800F801F800FC01F800FC01F800F C01F800FC01F800FC01F800FC01F800FC01F800FC01F800F801F801F801F801F801FC03F001FF0 7E001FBFFC001F8FE0001F8000001F8000001F8000001F8000001F8000001F8000001F8000001F 8000001F8000001F8000001F800000FF800000FF800000> 32 35 -2 0 31.133] 98 @dc cmmi12.300 @sf [ 32 28 -4 2 37.935] 62 @dc cmbx10.518 @sf [<000FFFFFF0000FFFFFF0000FFFFFF0000FFFFFF000000FF80000000FF80000000FF80000000FF8 0000000FF80000000FF80000000FF80000000FF800FFFFFFFFF0FFFFFFFFF0FFFFFFFFF0FFFFFF FFF0F80007F8007C0007F8003C0007F8001E0007F8000F0007F800078007F80007C007F80003E0 07F80001E007F80000F007F800007807F800007C07F800003E07F800001E07F800000F07F80000 0787F8000003C7F8000003E7F8000001F7F8000000F7F80000007FF80000003FF80000003FF800 00001FF80000000FF800000007F800000003F800000001F800000001F800000000F800> 40 46 -2 0 41.244] 52 @dc [ 40 49 -5 0 45.827] 83 @dc [<0001E0000F00000001F0001F00000003F0001F80000003F8003F80000007F8003FC0000007FC00 7FC0000007FC007FC000000FFC007FE000000FFE00FFE000001FFE00FFF000001FFF01FCF00000 1FEF01FCF000003FCF01FCF800003FCF83F87800007FC783F87C00007F8783F03C00007F83C7F0 3C0000FF03C7F03E0000FF03EFE01E0000FF01EFE01E0001FE01EFC00F0001FE00FFC00F0003FE 00FFC00F8003FC00FF80078003FC007F80078007F8007F0003C007F8007F0003C00FF8007F0003 E0FFFF0FFFE03FFEFFFF0FFFE03FFEFFFF0FFFE03FFEFFFF0FFFE03FFE> 56 32 -2 0 59.575] 119 @dc cmtt12.300 @sf [ 24 21 -1 0 25.632] 110 @dc [<07F0FC1FFFFC7FFFFC7C1F80F00780F00380E00380F00380F003807C03807F83801FFF8007FF80 00FF80000380000780780780781F007FFF007FFC001FF000> 24 21 -3 0 25.632] 97 @dc [ 32 21 0 0 25.632] 109 @dc [<01FF0007FFC00FFFE03F01F03E00F0780070780000F00000F00000FFFFF0FFFFF0FFFFF0E00070 F000F0F000F07801E07C03E03F07C01FFF8007FF0001FC00> 24 21 -3 0 25.632] 101 @dc 8 @bop1 cmr12.300 @sf 534 125 p 84 c -3(able)m 15(1:)m 22(User-callable)m 15(VFNLIB)m 15(subprograms.)m 175 194 p 1691 2 ru 175 254 p 2 61 ru cmbx12.300 @sf 265 237 p (VFNLIB)s 571 255 p 2 61 ru 1468 254 p 2 61 ru 1580 236 p (FNLIB)s 1865 254 p 2 61 ru 175 314 p 2 61 ru 199 297 p (Single)s 372 296 p (Double)s 571 314 p 2 61 ru 879 296 p (Description)s 1468 314 p 2 61 ru 1493 296 p (Single)s 25(Double)m 1865 314 p 2 61 ru 175 316 p 1691 2 ru 175 376 p 2 61 ru cmtt12.300 @sf 235 359 p (VI0)s 408 358 p (DVI0)s 571 376 p 2 61 ru cmr12.300 @sf 596 358 p (Ev)s -2(aluates)m 16 r 73 c cmr8.300 @sf 836 365 p 48 c cmr12.300 @sf 872 358 p (for)s 16 r 97 c 17 r 118 c (ector)s 14(of)m 17(argumen)m (ts.)s 1468 376 p 2 61 ru cmtt12.300 @sf 1503 358 p (BESI0)s 43(DBESI0)m 1865 376 p 2 61 ru 175 437 p 2 61 ru 235 420 p (VI1)s 408 419 p (DVI1)s 571 437 p 2 61 ru cmr12.300 @sf 596 419 p (Ev)s -2(aluates)m 16 r 73 c cmr8.300 @sf 836 426 p 49 c cmr12.300 @sf 872 419 p (for)s 16 r 97 c 17 r 118 c (ector)s 14(of)m 17(argumen)m (ts.)s 1468 437 p 2 61 ru cmtt12.300 @sf 1503 419 p (BESI1)s 43(DBESI1)m 1865 437 p 2 61 ru 175 497 p 2 61 ru 235 480 p (VJ0)s 408 479 p (DVJ0)s 571 497 p 2 61 ru cmr12.300 @sf 596 479 p (Ev)s -2(aluates)m 16 r 74 c cmr8.300 @sf 843 486 p 48 c cmr12.300 @sf 879 479 p (for)s 17 r 97 c 16 r 118 c (ector)s 15(of)m 16(argumen)m (ts.)s 1468 497 p 2 61 ru cmtt12.300 @sf 1503 479 p (BESJ0)s 43(DBESJ0)m 1865 497 p 2 61 ru 175 557 p 2 61 ru 235 540 p (VJ1)s 408 539 p (DVJ1)s 571 557 p 2 61 ru cmr12.300 @sf 596 539 p (Ev)s -2(aluates)m 16 r 74 c cmr8.300 @sf 843 546 p 49 c cmr12.300 @sf 879 539 p (for)s 17 r 97 c 16 r 118 c (ector)s 15(of)m 16(argumen)m (ts.)s 1468 557 p 2 61 ru cmtt12.300 @sf 1503 539 p (BESJ1)s 43(DBESJ1)m 1865 557 p 2 61 ru 175 617 p 2 61 ru 235 600 p (VK0)s 408 599 p (DVK0)s 571 617 p 2 61 ru cmr12.300 @sf 596 599 p (Ev)s -2(aluates)m 16 r 75 c cmr8.300 @sf 856 606 p 48 c cmr12.300 @sf 892 599 p (for)s 16 r 97 c 17 r 118 c (ector)s 14(of)m 17(argumen)m (ts.)s 1468 617 p 2 61 ru cmtt12.300 @sf 1503 599 p (BESK0)s 43(DBESK0)m 1865 617 p 2 61 ru 175 677 p 2 61 ru 235 660 p (VK1)s 408 659 p (DVK1)s 571 677 p 2 61 ru cmr12.300 @sf 596 659 p (Ev)s -2(aluates)m 16 r 75 c cmr8.300 @sf 856 666 p 49 c cmr12.300 @sf 892 659 p (for)s 16 r 97 c 17 r 118 c (ector)s 14(of)m 17(argumen)m (ts.)s 1468 677 p 2 61 ru cmtt12.300 @sf 1503 659 p (BESK1)s 43(DBESK1)m 1865 677 p 2 61 ru 175 737 p 2 61 ru 235 720 p (VY0)s 408 719 p (DVY0)s 571 737 p 2 61 ru cmr12.300 @sf 596 719 p (Ev)s -2(aluates)m 16 r 89 c cmr8.300 @sf 855 726 p 48 c cmr12.300 @sf 891 719 p (for)s 16 r 97 c 17 r 118 c (ect)s -1(or)m 15(of)m 17(argumen)m (ts.)s 1468 737 p 2 61 ru cmtt12.300 @sf 1503 719 p (BESY0)s 43(DBESY0)m 1865 737 p 2 61 ru 175 798 p 2 61 ru 235 781 p (VY1)s 408 780 p (DVY1)s 571 798 p 2 61 ru cmr12.300 @sf 596 780 p (Ev)s -2(aluates)m 16 r 89 c cmr8.300 @sf 855 787 p 49 c cmr12.300 @sf 891 780 p (for)s 16 r 97 c 17 r 118 c (ect)s -1(or)m 15(of)m 17(argumen)m (ts.)s 1468 798 p 2 61 ru cmtt12.300 @sf 1503 780 p (BESY1)s 43(DBESY1)m 1865 798 p 2 61 ru 175 800 p 1691 2 ru cmr12.300 @sf 45 978 p (If)s cmtt12.300 @sf 23(KEY=0)m cmr12.300 @sf 22 r 119 c 101 c 22(are)m 23(done.)m 44(Otherwise,)m 24 r 119 c 101 c 22(compute)m 23(the)m 24(\014rst)m 23(index)m 23(with)m 24 r 97 c 23(lo)m 1(op)m 25(lik)m -1 r 101 c 21(the)m 24(one)m 45 1038 p 110 c (um)s -1 r 98 c 1(ered)m 17(20)m 21(ab)m 1 r 111 c 118 c (e.)s 28(In)m 19(this)m 20 r 119 c 97 c 121 c 17(the)m 19(slo)m 119 c 18(lo)m 1(op)m 21(is)m 19(executed)m 18(only)m 19(when)m 19(an)m 20(immediate)m 18(error)m 45 1098 p (return)s 17(will)m 15(follo)m (w.)s 22(These)m 16(op)m 1(erations)m 18(are)m 17(represen)m (ted)s 14 r 98 c 121 c 16(the)m 16(subprograms)m cmtt12.300 @sf 18(WNGT\(M,X,)m -1(A,)m -1(KEY)m -1 r 41 c cmr12.300 @sf 45 1158 p (for)s cmmi12.300 @sf 17 r 120 c cmmi8.300 @sf 148 1165 p 106 c cmmi12.300 @sf 179 1158 p 62 c 14 r 97 c cmr12.300 @sf 16(and)m cmtt12.300 @sf 17(WNLE\(M,)m -1(X,)m -1(B,K)m -1(EY\))m cmr12.300 @sf 14(for)m cmmi12.300 @sf 16 r 120 c cmmi8.300 @sf 871 1165 p 106 c cmsy10.360 @sf 903 1158 p 20 c cmmi12.300 @sf 13 r 98 c cmr12.300 @sf 46 c cmbx10.518 @sf 45 1325 p 52 c 83 r 86 c -6(ectorized)m 26(Soft)m -1 r 119 c -2(are)m cmr12.300 @sf 45 1434 p (Using)s 16(tec)m (hni)s -1(ques)m 14(describ)m 1(ed)m 15(in)m 16(the)m 15(section)m 16(ab)m 1 r 111 c 118 c (e,)s 13 r 119 c 101 c 15(ha)m 118 c -1 r 101 c 14(pro)m 1(duced)m 16 r 112 c 1(ortable)m 16 r 118 c (ectorize)s -1 r 100 c 14(rou-)m 45 1495 p (tines)s 15(for)m 15(ev)m -2(aluating)m 14(the)m 15(follo)m (wing)s 14(Bessel)m 14(functions)m 15(of)m 15(real)m 15(argumen)m 116 c 14(and)m 15(orders)m 16(zero)m 15(and)m 15(one:)m 45 1555 p 73 c cmr8.300 @sf 63 1562 p 48 c cmr12.300 @sf 82 1555 p 44 c 15 r 73 c cmr8.300 @sf 129 1562 p 49 c cmr12.300 @sf 149 1555 p 44 c 15 r 74 c cmr8.300 @sf 203 1562 p 48 c cmr12.300 @sf 222 1555 p 44 c 15 r 74 c cmr8.300 @sf 276 1562 p 49 c cmr12.300 @sf 296 1555 p 44 c 15 r 75 c cmr8.300 @sf 363 1562 p 48 c cmr12.300 @sf 383 1555 p 44 c 15 r 75 c cmr8.300 @sf 450 1562 p 49 c cmr12.300 @sf 469 1555 p 44 c 15 r 89 c cmr8.300 @sf 535 1562 p 48 c cmr12.300 @sf 555 1555 p 44 c 15(and)m 15 r 89 c cmr8.300 @sf 714 1562 p 49 c cmr12.300 @sf 749 1555 p 91 c 49 c (].)s 20(Since)m 15(our)m 15(co)m 1(des)m 16(emplo)m 121 c 13(the)m 15(basic)m 15(algorithms)m 15(of)m 16(FNLIB)m 45 1615 p (reto)s 1(oled)m 16(for)m 15 r 97 c 16 r 118 c (ector)s 14(en)m (vi)s -1(ronmen)m -1 r 116 c 13 r 119 c 101 c 14(ha)m 118 c 101 c 13(called)m 15(our)m 15(collection)m 15(of)m 15(co)m 1(des)m 16(VFNLIB.)m 14(Although)m 45 1675 p 119 c 101 c 15(ha)m 118 c 101 c 14(pro)m 1(duced)m 17(new)m 17(user-callable)m 16 r 118 c (ersi)s -1(ons)m 16(of)m 17(only)m 16 r 97 c 17(small)m 16 r 112 c 1(ortion)m 18(of)m 16(the)m 17(original)m 16(FNLIB,)m 45 1735 p (the)s 16(tec)m (hniq)s -1(ues)m 15(whic)m 104 c 14 r 119 c 101 c 15(ha)m 118 c 101 c 14(used)m 16(can)m 16 r 98 c 1 r 101 c 17(readily)m 15(applied)m 16(to)m 16(man)m 121 c 15(other)m 16(FNLIB)m 16(routines.)m 143 1795 p (VFNLIB)s 13(includes)m 15(the)m 15(16)m 16(user-callable)m 14 r 70 c -3(ortran)m 15(subprograms)m 17(whic)m 104 c 13(are)m 16(listed)m 14(in)m 15 r 84 c -3(able)m 14(1.)m 45 1856 p (Eac)s 104 c 15(has)m 17(an)m 17(iden)m (tic)s -1(al)m 14(calling)m 16(sequence.)m cmtt12.300 @sf 199 1957 p (CALL)s 24(name)m 24(\(M,)m 25(X,)m 25(F,)m 24(WORK,)m 24(IWORK,)m 24(INFO\))m 45 2059 p 88 c cmr12.300 @sf 11(is)m 12(an)m 12(arra)m 121 c 10(con)m (taining)s 11(the)m cmtt12.300 @sf 11 r 77 c cmr12.300 @sf 11(argumen)m (ts)s 11(for)m 12(whic)m 104 c 10(the)m 11(function)m 11(is)m 12(to)m 11 r 98 c 1 r 101 c 12(ev)m -2(aluated.)m 19(The)m 11(results)m 45 2119 p (are)s 19(returned)m 18(in)m 18(the)m 18(corresp)m 1(onding)m 20 r 112 c 1(ositions)m 19(of)m 19(the)m 19(arra)m 121 c cmtt12.300 @sf 17 r 70 c cmr12.300 @sf 46 c cmtt12.300 @sf 18(WORK)m cmr12.300 @sf 17(and)m cmtt12.300 @sf 20(IWORK)m cmr12.300 @sf 16(are)m 19 r 119 c (orkspace)s 45 2179 p (arra)s (ys.)s cmtt12.300 @sf 23(IWORK)m cmr12.300 @sf 16(is)m 17(of)m 17(length)m cmtt12.300 @sf 17 r 77 c cmr12.300 @sf 44 c 16(while)m cmtt12.300 @sf 17(WORK)m cmr12.300 @sf 15(is)m 17(of)m 18(length)m cmtt12.300 @sf 17(7M)m cmr12.300 @sf 46 c cmtt12.300 @sf 16(INFO)m cmr12.300 @sf 16(is)m 17 r 97 c 17(return)m 17(co)m 1(de.)m 24(Both)m 17(single)m 45 2240 p (precision)s 14(and)m 14(double)m 15(precision)m 13 r 118 c (ersions)s 13(of)m 15(eac)m 104 c 13(subprogram)m 15(are)m 15(pro)m (vided.)s 18(These)m 15(routines)m 14(are)m 45 2300 p (actually)s 15(driv)m (ers)s 14(whic)m 104 c 14(partition)m 16(the)m 15 r 119 c (ork)s 15(arra)m (ys)s 15(and)m 16(call)m 15(lo)m 119 c (e)s -1(r-lev)m -2(el)m 13(routines)m 16(whic)m 104 c 14 r 112 c 1(erform)m 45 2360 p (the)s 19(actual)m 19(computations.)m 31 r 65 c 18(list)m 19(of)m 19(all)m 19(subsidiary)m 19(routines)m 19(included)m 18(in)m 19(VFNLIB)m 18(is)m 19(giv)m (en)s 17(in)m 45 2420 p 84 c -3(able)m 15(2.)m 22(All)m 15(co)m 1(ding)m 16(is)m 17(in)m 15(standard)m 18 r 70 c -3(ortran)m 16(77.)m 143 2480 p 87 c -3 r 101 c 17(ha)m 118 c -1 r 101 c 16(elected)m 17(to)m 19(pro)m (vide)s 17(an)m 19(error)m 18(return)m 18(co)m 1(de)m 19(parameter)m 18(rather)m 19(than)m 19(issue)m 18(all)m 18(error)m 45 2541 p (messages)s 18(through)m 18(an)m 18(error)m 17(handler)m 17(as)m 18(is)m 17(done)m 17 r 98 c 121 c 16(FNLIB.)m 16(Error)m 18(conditions)m 17(are)m 17(indicated)m 16 r 98 c 121 c 45 2601 p 97 c 20(nonzero)m 20(return)m 20(co)m 1(de)m cmtt12.300 @sf 20(INFO)m cmr12.300 @sf 46 c 18 r 70 c -3(atal)m 19(errors)m 20(are)m 19(indicated)m 19 r 98 c 121 c cmtt12.300 @sf 19(INFO)m cmmi12.300 @sf 18 r 62 c cmr12.300 @sf 20(0,)m 20(while)m 19 r 119 c (arnings)s 20(ha)m 118 c -1 r 101 c cmtt12.300 @sf 45 2661 p (INFO)s cmmi12.300 @sf 16 r 60 c cmr12.300 @sf 18(0.)m 28(If)m 18(an)m 121 c 17(argumen)m 116 c 17(leads)m 19(to)m 18 r 97 c 19(fatal)m 19(error)m 18(then)m 19(no)m 19(results)m 18(are)m 18(returned.)m 27 r 70 c -3(atal)m 18(error)m 1008 2843 p 56 c @eop %%Page: 9 9 9 @bop0 9 @bop1 cmr12.300 @sf 587 125 p 84 c -3(able)m 15(2:)m 21(In)m (ternal)s 15(VFNLIB)m 14(subprograms.)m 141 194 p 1758 2 ru 141 254 p 2 61 ru cmbx12.300 @sf 235 237 p (VFNLIB)s 544 255 p 2 61 ru 1494 254 p 2 61 ru 1610 236 p (FNLIB)s 1898 254 p 2 61 ru 141 314 p 2 61 ru 170 297 p (Single)s 346 296 p (Double)s 544 314 p 2 61 ru 879 296 p (Description)s 1494 314 p 2 61 ru 1523 296 p (Single)s 28(Double)m 1898 314 p 2 61 ru 141 316 p 1758 2 ru 141 376 p 2 61 ru cmtt12.300 @sf 205 359 p (WI0)s 382 358 p (DWI0)s 544 376 p 2 61 ru cmr12.300 @sf 570 358 p 80 c (erforms)s 15(all)m 16(computations)m 16(for)m cmtt12.300 @sf 17(\(D\)VI0)m cmr12.300 @sf 46 c 1494 376 p 2 61 ru 404 r 2 61 ru 141 437 p 2 61 ru cmtt12.300 @sf 205 420 p (WI1)s 382 419 p (DWI1)s 544 437 p 2 61 ru cmr12.300 @sf 570 419 p 80 c (erforms)s 15(all)m 16(computations)m 16(for)m cmtt12.300 @sf 17(\(D\)VI1)m cmr12.300 @sf 46 c 1494 437 p 2 61 ru 404 r 2 61 ru 141 497 p 2 61 ru cmtt12.300 @sf 205 480 p (WJ0)s 382 479 p (DWJ0)s 544 497 p 2 61 ru cmr12.300 @sf 570 479 p 80 c (erforms)s 15(all)m 16(computations)m 16(for)m cmtt12.300 @sf 17(\(D\)VJ0)m cmr12.300 @sf 46 c 1494 497 p 2 61 ru 404 r 2 61 ru 141 557 p 2 61 ru cmtt12.300 @sf 205 540 p (WJ1)s 382 539 p (DWJ1)s 544 557 p 2 61 ru cmr12.300 @sf 570 539 p 80 c (erforms)s 15(all)m 16(computations)m 16(for)m cmtt12.300 @sf 17(\(D\)VJ1)m cmr12.300 @sf 46 c 1494 557 p 2 61 ru 404 r 2 61 ru 141 617 p 2 61 ru cmtt12.300 @sf 205 600 p (WK0)s 382 599 p (DWK0)s 544 617 p 2 61 ru cmr12.300 @sf 570 599 p 80 c (erforms)s 15(all)m 16(computations)m 16(for)m cmtt12.300 @sf 17(\(D\)VK0)m cmr12.300 @sf 46 c 1494 617 p 2 61 ru 404 r 2 61 ru 141 677 p 2 61 ru cmtt12.300 @sf 205 660 p (WK1)s 382 659 p (DWK1)s 544 677 p 2 61 ru cmr12.300 @sf 570 659 p 80 c (erforms)s 15(all)m 16(computations)m 16(for)m cmtt12.300 @sf 17(\(D\)VK1)m cmr12.300 @sf 46 c 1494 677 p 2 61 ru 404 r 2 61 ru 141 737 p 2 61 ru cmtt12.300 @sf 205 720 p (WY0)s 382 719 p (DWY0)s 544 737 p 2 61 ru cmr12.300 @sf 570 719 p 80 c (erforms)s 15(all)m 16(computations)m 16(for)m cmtt12.300 @sf 17(\(D\)VY0)m cmr12.300 @sf 46 c 1494 737 p 2 61 ru 404 r 2 61 ru 141 798 p 2 61 ru cmtt12.300 @sf 205 781 p (WY1)s 382 780 p (DWY1)s 544 798 p 2 61 ru cmr12.300 @sf 570 780 p 80 c (erforms)s 15(all)m 16(computations)m 16(for)m cmtt12.300 @sf 17(\(D\)VY1)m cmr12.300 @sf 46 c 1494 798 p 2 61 ru 404 r 2 61 ru 141 918 p 2 121 ru cmtt12.300 @sf 205 840 p (WCS)s 99(DWCS)m 544 918 p 2 121 ru cmr12.300 @sf 570 840 p (Ev)s -2(aluates)m 18 r 97 c 20(Cheb)m (yshev)s 17(series)m 18(for)m 20 r 97 c 19 r 118 c (ector)s 570 900 p (of)s 17(argumen)m (ts.)s 1494 918 p 2 121 ru cmtt12.300 @sf 1533 840 p (CSEVL)s 46(DCSEVL)m 1898 918 p 2 121 ru 141 1038 p 2 121 ru 192 960 p (IWCS)s 73(IDWCS)m 544 1038 p 2 121 ru cmr12.300 @sf 570 960 p (Finds)s 15 r 110 c (um)s -1 r 98 c 1(er)m 13(of)m 15(terms)m 15(needed)m 14(to)m 15(compute)m 570 1020 p 97 c 17(Cheb)m (yshev)s 14(series)m 16(to)m 16 r 97 c 17(giv)m (en)s 14(accuracy)m 16 r 46 c 1494 1038 p 2 121 ru cmtt12.300 @sf 1533 960 p (INITS)s 46(INITDS)m 1898 1038 p 2 121 ru 141 1099 p 2 61 ru 192 1082 p (WNGT)s 369 1081 p (DWNGT)s 544 1099 p 2 61 ru cmr12.300 @sf 570 1081 p (Out-of-range)s 18(test)m 16(for)m cmmi12.300 @sf 16 r 120 c cmmi8.300 @sf 1056 1088 p 106 c cmmi12.300 @sf 1088 1081 p 62 c 14 r 97 c cmr12.300 @sf 46 c 1494 1099 p 2 61 ru 404 r 2 61 ru 141 1159 p 2 61 ru cmtt12.300 @sf 192 1142 p (WNLE)s 369 1141 p (DWNLE)s 544 1159 p 2 61 ru cmr12.300 @sf 570 1141 p (Out-of-range)s 18(test)m 16(for)m cmmi12.300 @sf 16 r 120 c cmmi8.300 @sf 1056 1148 p 106 c cmsy10.360 @sf 1088 1141 p 20 c cmmi12.300 @sf 14 r 98 c cmr12.300 @sf 46 c 1494 1159 p 2 61 ru 404 r 2 61 ru 141 1219 p 2 61 ru cmtt12.300 @sf 205 1202 p (WGT)s 382 1201 p (DWGT)s 544 1219 p 2 61 ru cmr12.300 @sf 570 1201 p (Index)s 15(compression)m 17(for)m cmmi12.300 @sf 16 r 120 c cmmi8.300 @sf 1082 1208 p 106 c cmmi12.300 @sf 1114 1201 p 62 c 14 r 97 c cmr12.300 @sf 46 c 1494 1219 p 2 61 ru 404 r 2 61 ru 141 1279 p 2 61 ru cmtt12.300 @sf 205 1262 p (WLE)s 382 1261 p (DWLE)s 544 1279 p 2 61 ru cmr12.300 @sf 570 1261 p (Index)s 15(compression)m 17(for)m cmmi12.300 @sf 16 r 120 c cmmi8.300 @sf 1082 1268 p 106 c cmsy10.360 @sf 1114 1261 p 20 c cmmi12.300 @sf 14 r 98 c cmr12.300 @sf 46 c 1494 1279 p 2 61 ru 404 r 2 61 ru 141 1339 p 2 61 ru cmtt12.300 @sf 179 1322 p (WGTLE)s 356 1321 p (DWGTLE)s 544 1339 p 2 61 ru cmr12.300 @sf 570 1321 p (Index)s 15(compression)m 17(for)m cmmi12.300 @sf 16 r 97 c 14 r 60 c 13 r 120 c cmmi8.300 @sf 1173 1328 p 106 c cmsy10.360 @sf 1205 1321 p 20 c cmmi12.300 @sf 14 r 98 c cmr12.300 @sf 46 c 1494 1339 p 2 61 ru 404 r 2 61 ru 141 1400 p 2 61 ru cmtt12.300 @sf 179 1383 p (WGTHR)s 356 1382 p (DWGTHR)s 544 1400 p 2 61 ru cmr12.300 @sf 570 1382 p 86 c -3(ector)m 14(gather.)m 1494 1400 p 2 61 ru 404 r 2 61 ru 141 1460 p 2 61 ru cmtt12.300 @sf 179 1443 p (WSCTR)s 356 1442 p (DWSCTR)s 544 1460 p 2 61 ru cmr12.300 @sf 570 1442 p 86 c -3(ector)m 14(scatter.)m 1494 1460 p 2 61 ru 404 r 2 61 ru 141 1520 p 2 61 ru cmtt12.300 @sf 179 1503 p (WFERR)s 544 1520 p 2 61 ru cmr12.300 @sf 570 1502 p (Pro)s 1(cesses)m 17 r 97 c 17(fatal)m 16(error)m 16(message.)m 1494 1520 p 2 61 ru cmtt12.300 @sf 1520 1502 p (SETERU)s 1898 1520 p 2 61 ru 141 1580 p 2 61 ru 166 1563 p (I1MACH)s 356 1562 p (I1MACH)s 544 1580 p 2 61 ru cmr12.300 @sf 570 1562 p (Returns)s 16(in)m (teger)s 14(mac)m (hine)s 14(constan)m (ts)s 16 r 91 c 57 c (].)s 1494 1580 p 2 61 ru cmtt12.300 @sf 1520 1562 p (I1MACH)s 33(I1MACH)m 1898 1580 p 2 61 ru 141 1640 p 2 61 ru 166 1623 p (R1MACH)s 356 1622 p (D1MACH)s 544 1640 p 2 61 ru cmr12.300 @sf 570 1622 p (Returns)s 16(real)m 16(mac)m (hine)s 14(constan)m (ts)s 16 r 91 c 57 c (].)s 1494 1640 p 2 61 ru cmtt12.300 @sf 1520 1622 p (R1MACH)s 33(D1MACH)m 1898 1640 p 2 61 ru 141 1642 p 1758 2 ru cmr12.300 @sf 45 1821 p (conditions)s 17(are:)m cmtt12.300 @sf 23 r 77 c cmsy10.360 @sf 15 r 20 c cmr12.300 @sf 15(0,)m 17(function)m 17(unde\014ned)m 17(for)m 18(an)m 17(argumen)m (t,)s 16 r 97 c 17(result)m 17 r 111 c 118 c -1(er\015o)m -1(ws,)m 15(an)m 18(argumen)m 116 c 45 1881 p (so)s 18(large)m 17(that)m 17(accurate)m 17(argumen)m 116 c 16(reduction)m 16(is)m 17(not)m 18 r 112 c 1(ossible.)m 24(In)m 16(the)m 17(last)m 17(three)m 17(cases)m 17(the)m 17(index)m 45 1941 p (of)s 14(the)m 14(\014rst)m 14(o\013ending)m 15(argumen)m 116 c 13(is)m 13(returned)m 14(in)m cmtt12.300 @sf 14(IWORK\()m -1(1\))m cmr12.300 @sf 46 c 18 r 65 c 14 r 119 c (arning)s 13(is)m 14(issued)m 14(when)m 14(an)m 121 c 12(result)m 45 2001 p (under\015o)s (ws;)s 15(the)m 16(corresp)m 1(onding)m 18(function)m 16 r 118 c -2(alue)m 15(is)m 16(set)m 16(to)m 16(zero)m 16(in)m 16(this)m 16(case.)m 143 2061 p 87 c -3 r 101 c 12(ha)m 118 c 101 c 11(used)m 14 r 97 c 14(separate)m 14(pro)m 1(cedure)m 14(to)m 14(handle)m 14(errors)m 14(detected)m 13(in)m 13(lo)m 119 c -1(er-lev)m -2(el)m 11(routines.)m 20(An)m 45 2121 p (example)s 18(is)m 18(that)m 20(an)m cmmi12.300 @sf 19 r 110 c cmr12.300 @sf (-term)s 19(Cheb)m (yshev)s 17(series)m 18(is)m 19(to)m 19 r 98 c 1 r 101 c 20(ev)m -2(aluated)m 17(for)m cmmi12.300 @sf 20 r 110 c 18 r 60 c cmr12.300 @sf 18(1.)m 30(Suc)m 104 c 18(errors)m 19(are)m 45 2182 p (not)s 19(caused)m 18 r 98 c 121 c 17(improp)m 1(er)m 18(user)m 19(input)m 18(and)m 19(should)m 19(nev)m (e)s -1 r 114 c 17 r 111 c 1(ccur)m 18(during)m 19(the)m 18(normal)m 18(use)m 19(of)m 18(these)m 45 2242 p (routines.)s 22(\(The)m 17(exception)m 15(is)m 17(when)m 17(the)m 16(arra)m 121 c cmtt12.300 @sf 16(WORK)m cmr12.300 @sf 15(is)m 16(to)m 1 r 111 c 18(short)m 17(and)m 17(the)m 17(co)m 1(de)m 17 r 111 c 118 c -1(erwri)m -1(tes)m 15(other)m 45 2302 p (data.\))s 27(The)m 18(only)m 18(reasonable)m 18(thing)m 18(to)m 18(do)m 19(in)m 17(these)m 18(cases)m 18(is)m 18(to)m 18(issue)m 18 r 97 c 18(fatal)m 18(error)m 18(message)m 18(and)m 45 2362 p (halt)s 16(the)m 16(program.)m 22(This)m 17(is)m 16(done)m 16 r 98 c 121 c 15(calling)m 15 r 97 c 17 r 118 c (ery)s 14(simple)m 15(error-handling)m 17(routine)m cmtt12.300 @sf 16(WFERR)m cmr12.300 @sf 46 c 1008 2843 p 57 c @eop %%Page: 10 10 10 @bop0 cmbx10.518 @sf [<007FF00001FFFE0007FFFF800FFFFFE01FE07FF03F001FF87C000FFC7F0007FCFF8007FEFF8003 FEFFC003FFFFC003FFFFC003FFFF8003FF7F8003FF3E0003FF000003FF000003FF000003FE0000 03FE000003FE0E0007FC0F0007F80F800FF80FF03FF00FFFFFC00FFFFF000F1FF8000F0000000F 0000000F0000000F0000000F0000000F0000000F0000000FFF80000FFFF0000FFFFC000FFFFF00 0FFFFF800FFFFFC00FFFFFE00FFFFFF00FFFFFF80FE003F80E000038> 32 46 -4 0 41.244] 53 @dc [ 56 49 -2 0 54.195] 69 @dc [<00007C000000007C00000000FE00000000FE00000001FF00000001FF00000003FF80000003FF80 000007FFC0000007FBC0000007FBC000000FF3E000000FF1E000001FF1F000001FE0F000003FE0 F800003FC07800007FC07C00007F803C00007F803C0000FF001E0000FF001E0001FF001F0001FE 000F0003FE000F8003FC00078007FC0007C007F80003C0FFFF803FFEFFFF803FFEFFFF803FFEFF FF803FFE> 40 32 -2 0 43.535] 118 @dc cmbx10.432 @sf [<00FF800007FFF0000FFFFC001F83FE003C00FF0078007F807E007FC0FF003FC0FF803FC0FF803F E0FF803FE0FF803FE07F003FE03E003FE000003FE000003FE000003FC000003FC000003F800C00 7F800E007F000FC1FE000FFFF8000E7FC0000E0000000E0000000E0000000E0000000E0000000E 0000000FFF00000FFFC0000FFFF0000FFFF8000FFFFC000FFFFE000FFFFE000FC03F000C000700> 32 39 -3 0 34.370] 53 @dc [ 40 41 -3 0 46.989] 80 @dc [<003FC3FF8001FFFBFF8007F07FFF800FE01FF8001FC00FF8003F8007F8003F8003F8007F0003F8 007F0003F800FF0003F800FF0003F800FF0003F800FF0003F800FF0003F800FF0003F800FF0003 F800FF0003F800FF0003F8007F0003F8007F8003F8003F8003F8003F8003F8001FC007F8000FE0 0FF80003F83FF80001FFFBF800003FE3F800000003F800000003F800000003F800000003F80000 0003F800000003F800000003F800000003F800000003F800000003F800000003F800000003F800 00003FF80000003FF80000003FF800> 40 42 -2 0 38.189] 100 @dc cmr12.300 @sf [ 40 34 -1 0 36.563] 88 @dc cmsy10.360 @sf [ 24 24 -7 0 38.743] 2 @dc cmr8.300 @sf [<03FE03FE0070007000700070FFFEFFFEE0707070307018701C700E700670077003F001F000F000 F00070> 16 21 -1 0 17.642] 52 @dc [<0FE03FF87C3CF01EE00EE00EE01EF01E787C3DFC1FF00FE03FF03E78783C701C701C783C3C7C3F F80FE0> 16 21 -1 0 17.642] 56 @dc cmbx12.300 @sf [<000E0000000E0000001F0000001F0000003F8000003F8000007FC000007EC000007EC00000FC60 0000FC600001F8300001F8300003F8180003F0180007F01C0007E00C000FE00E000FC006000FC0 0700FFF01FE0FFF01FE0> 32 22 -1 0 29.576] 118 @dc [ 24 22 -2 0 24.906] 122 @dc cmmi12.300 @sf [ 40 35 -2 0 36.563] 65 @dc [<7FC000FFF800F07C00F01E00700E00000F0000070000078000078000038001F38007FFC00F1FC0 0E07C00E03C01E01E01E01E01E00E01E00E01F00F00F00F00F00700F00700F807807807803C078 03C07801E0FC00F9FC007FDC001F9C> 24 31 0 10 23.355] 103 @dc [<1F00003FC00039E00070F000707800703800F03C00F01E00F01E00F00F00F00F00F00780F00780 7807807807C07803C07FFFC07FFFC03FFFE03C01E03C01E03E01E01E01E01E00E00F00E00F00E0 0700E00780E00380E003C0E001E0E000E0E00079C0003FC0001F80> 24 35 -2 0 22.729] 18 @dc 10 @bop1 cmbx10.518 @sf 45 98 p 53 c 83(Ev)m -4(aluation)m cmr12.300 @sf 45 208 p (In)s 16(this)m 17(section)m 16 r 119 c 101 c 15(ev)m -2(aluate)m 16(VFNLIB)m 15(with)m 16(resp)m 1(ect)m 17(to)m 17(three)m 16(criteria:)m 21(accuracy)m -3 r 44 c 14(e\016ciency)m -4 r 44 c 14(and)m 45 268 p 112 c 1(ortabilit)m 121 c -4 r 46 c 32(Accuracy)m 19(is)m 21(assessed)m 21 r 98 c 121 c 19(purely)m 19(exp)m 1(erimen)m -1(tal)m 19(means,)m 21(i.e.,)m 19 r 98 c 121 c 19(comparison)m 21(with)m 45 328 p (existing)s 17(soft)m 119 c (are)s 16(for)m 18(this)m 18(problem)m 18(set.)m 26(E\016ciency)m 16(is)m 18(ev)m -2(aluated)m 17(in)m 17 r 97 c 19(series)m 17(of)m 18(exp)m 1(erimen)m -1(ts)m 16(on)m 45 388 p (the)s 21(Cra)m 121 c 19(Y-MP)m -3 r 44 c 20(the)m 20(Con)m 118 c (ex)s 18(C-120,)m 23(and)m 22 r 97 c 21(Sun)m 21(SP)m -3(AR)m (Cstation)s 19(1+.)m 36(Finally)m -4 r 44 c 20 r 112 c 1(ortabilit)m 121 c 19(is)m 45 449 p 118 c (eri\014e)s -1 r 100 c 17 r 98 c 121 c 18(successfully)m 17 r 112 c 1(orting)m 20(the)m 18(co)m 1(des)m 19(to)m 20(these)m 18(systems)m 18(and)m 20(using)m 19(appropriate)m 19(compiler)m 45 509 p (options)s 17(for)m 16(\015agging)m 18(non-ANSI)m 16(constructs.)m cmbx10.432 @sf 45 653 p (5.1)s 70 r 80 c -1(ortabilit)m -1 r 121 c 22(and)m 24(Accuracy)m cmr12.300 @sf 45 746 p (Since)s 18(VFNLIB)m 18(represen)m (ts)s 18 r 97 c 20 r 118 c (ectori)s -1(zation)m 18(of)m 20 r 97 c 19(subset)m 20(of)m 20(FNLIB,)m 18(our)m 20(\014rst)m 19(goal)m 20(is)m 20(to)m 19(assure)m 45 806 p (that)s 18(VFNLIB)m 17(routines)m 18(return)m 18(results)m 17(comparable)m 18(to)m 18(the)m 18(corresp)m 1(onding)m 19(FNLIB)m 17(routines.)m 26 r 65 c 45 866 p (test)s 19(program)m 19(that)m 20(is)m 18(distributed)m 18(with)m 19(the)m 19(pac)m 107 c -2(age)m 17(compares)m 19(eac)m 104 c 17(function)m 19(with)m 18(its)m 19(FNLIB)m 45 926 p (coun)s (terpart)s 18(for)m 20(appro)m (ximately)s 17(23,000)m 21(argumen)m (ts,)s 19 r 118 c (eri)s -1(fying)m 17(that)m 20(the)m 19 r 116 c 119 c 111 c 17(di\013er)m 20 r 98 c 121 c 17(no)m 20(more)m 45 986 p (than)s 18(\014v)m 101 c 15(times)m 16(the)m 17(mac)m (hine)s 15(epsilon.)m 23(\(Relativ)m -1 r 101 c 15(di\013erence)m 16(is)m 17(used)m 17(for)m 17(function)m 17 r 118 c -2(alues)m 16(greater)m 45 1047 p (than)s 18(one,)m 17(absolute)m 17(di\013erence)m 16(for)m 17(those)m 18(less)m 16(than)m 18(one.\))m 24(This)m 17(co)m 1(de)m 17 r 119 c (as)s 16(run)m 18(on)m 17(three)m 17(separate)m 45 1107 p (computer)s 20(systems:)m 28(Sun)m 21(SP)m -3(AR)m -1(Cstation)m 19(1+)m 21(\(Sun)m 20 r 52 c 21(with)m 20(25)m 20(MHz)m 20 r 87 c -3(eite)m -1 r 107 c 18(3172-ba)m 1(sed)m 22(FPU,)m 45 1167 p (SunOS)s 18(4.0.3\))m 18(using)m 18(Sun)m 18 r 70 c -3(ortran)m 17(1.3.1)m 18(\(options)m 18(-fast)m 18(-O3\),)m 18(Con)m 118 c (ex)s 15(C-120)m 19(\(Con)m 118 c (ex)s 15(Unix)m 17(4.2)m 45 1227 p (release)s 21(9.0\))m 22(using)m 22(Con)m 118 c (e)s -1 r 120 c 20(fc)m 21 r 118 c (ersion)s 20(V6.1)m 22(\(option)m 22(-O2\),)m 23(Cra)m 121 c 21(Y-MP2/216)m 23(\(UNICOS)m 21(6.0\))m 45 1287 p (using)s 23(cf77.)m 42(In)m 22(eac)m 104 c 22(case)m 23 r 97 c 118 c -2(ail)m -1(able)m 21(options)m 23 r 119 c (ere)s 22(used)m 23(to)m 23 r 99 c (hec)s -2 r 107 c 21(for)m 23(conformance)m 23(to)m 23(ANSI)m 45 1348 p (X3.9-1978)s 18 r 70 c (OR)s -4(TRAN)m -1 r 46 c 143 1408 p (Some)s 17(additional)m 17(testing)m 17 r 119 c (as)s 17(done)m 17(to)m 18 r 118 c (eri)s -1(fy)m 15(that)m 18 r 98 c 1(oth)m 18(sets)m 18(of)m 17(routines)m 17 r 119 c (ere)s 16(indeed)m 16(pro-)m 45 1468 p (ducing)s cmti12.300 @sf 19 r 99 c -1(orr)m -2 r 101 c -2(ct)m cmr12.300 @sf 17(function)m 20 r 118 c -2(alues.)m 29(Ideally)m -4 r 44 c 18(function)m 19(routines)m 19(return)m 19(results)m 19(with)m 20(relativ)m -1 r 101 c 17(error)m 45 1528 p (near)s 14(the)m 14(mac)m (hine)s 11(precision.)m 20(This)m 14(is)m 14(rarely)m 13(the)m 13(case)m 14(in)m 14(practice.)m 19(The)m 14(accuracy)m 14(of)m 14(the)m 13(VFNLIB)m 45 1588 p (routines)s 20 r 119 c (as)s 20(assessed)m 21 r 98 c 121 c 19(ev)m -2(aluating)m 19(eac)m 104 c 19(function)m 20(for)m 21(four)m 20(to)m 21(\014v)m 101 c 18(thousand)m 22(argumen)m (ts)s 19(on)m 45 1648 p (the)s 16(Cra)m 121 c 15(Y-MP)m 17(with)m 16 r 98 c 1(oth)m 17(FNLIB)m 15(and)m 17(VFNLIB)m 15(and)m 17(then)m 17(comparing)m 16(the)m 16(results)m 16(with)m 17(those)m 45 1709 p (computed)s 16(in)m 16(extended)m 15(precision)m 15(using)m 17(Mathematica)m 15 r 91 c (12)s (].)s 21(In)m 16(most)m 16(cases)m 17(the)m 16(results)m 15(returned)m 45 1769 p 98 c 121 c 18(FNLIB)m 19(and)m 21(VFNLIB)m 18(ha)m 118 c 101 c 17(relativ)m 101 c 17(error)m 20(less)m 20(than)m 20(ab)m 1(out)m 21(10)m 21(times)m 19(the)m 20(mac)m (hine)s 17(epsilon)m 45 1829 p (\(1)s cmmi12.300 @sf 58 c cmr12.300 @sf 52 c cmsy10.360 @sf 11 r 2 c cmr12.300 @sf 10(10)m cmsy8.300 @sf 234 1812 p 0 c cmr8.300 @sf (14)s cmr12.300 @sf 316 1829 p (in)s 16(single)m 15(precision,)m 15 r 49 c cmmi12.300 @sf 58 c cmr12.300 @sf 48 c cmsy10.360 @sf 11 r 2 c cmr12.300 @sf 10(10)m cmsy8.300 @sf 895 1812 p 0 c cmr8.300 @sf (28)s cmr12.300 @sf 977 1829 p (in)s 15(double)m 16(precision\).)m 21(Tw)m 111 c 15(notable)m 16(exceptions)m 16(to)m 45 1889 p (this)s 16 r 98 c 1(eha)m (vior)s 15 r 111 c 1(ccur)m 17(for)m 16(the)m 16(functions)m 16 r 74 c cmr8.300 @sf 864 1896 p 48 c cmr12.300 @sf 884 1889 p 44 c 16 r 74 c cmr8.300 @sf 939 1896 p 49 c cmr12.300 @sf 959 1889 p 44 c 16 r 89 c cmr8.300 @sf 1026 1896 p 48 c cmr12.300 @sf 1045 1889 p 44 c 16(and)m 17 r 89 c cmr8.300 @sf 1207 1896 p 49 c cmr12.300 @sf 1226 1889 p 44 c 16(whic)m 104 c 14 r 119 c 101 c 15(describ)m 1 r 101 c 16 r 98 c 1(elo)m (w.)s cmbx12.300 @sf 45 1991 p (Beha)s -1(vior)m 21(near)m 22(function)m 22(zeros.)m cmr12.300 @sf 30(Cancellation)m 19(errors)m 20(in)m 19(the)m 19(ev)m -2(aluation)m 19(of)m 20(the)m 19(Cheb)m (yshev)s 45 2051 p (series)s 15(leads)m 16(to)m 16 r 97 c 16(loss)m 16(of)m 16(relativ)m -1 r 101 c 13(accuracy)m 16(in)m 15(the)m 15(neigh)m 98 c 1(orho)m 1 r 111 c 1 r 100 c 17(of)m 16(the)m 15(zeros)m 16(of)m 16(these)m 15(functions)m 45 2111 p (\(except)s 17(for)m 19 r 74 c cmr8.300 @sf 321 2118 p 49 c cmr12.300 @sf 341 2111 p (\(0\))s 18 r 61 c 17(0\).)m 29(In)m 18(these)m 18(cases)m 19(the)m 18(absolute)m 19(error)m 18(remains)m 19(less)m 18(than)m 19(ab)m 1(out)m 20(10)m 19(times)m 45 2172 p (the)s 22(mac)m (hine)s 20(epsilon.)m 38(Suc)m 104 c 21(problems)m 22(are)m 22 r 97 c 118 c -1(oided)m 20(in)m 22(other)m 22(function)m 22(routines,)m 23(e.g.)m 39(cosine,)m 45 2232 p 98 c 121 c 20(accurately)m 21(computing)m cmmi12.300 @sf 22 r 121 c cmr12.300 @sf 24 r 61 c cmmi12.300 @sf 23 r 120 c cmsy10.360 @sf 15 r 0 c cmmi12.300 @sf 14 r 120 c cmr8.300 @sf 838 2239 p 48 c cmr12.300 @sf 858 2232 p 44 c 22(where)m cmmi12.300 @sf 22 r 120 c cmr8.300 @sf 1069 2239 p 48 c cmr12.300 @sf 1110 2232 p (is)s 21 r 97 c 22(nearb)m 121 c 20(zero,)m 23(and)m 22(then)m 22(recasting)m 21(the)m 45 2292 p (computation)s 15(in)m 15(terms)m 15(of)m cmmi12.300 @sf 15 r 121 c cmr12.300 @sf 2 r 46 c 21(In)m 15(the)m 14(presen)m 116 c 14(case)m 15(there)m 15(are)m 15(an)m 15(in\014nite)m 15 r 110 c (um)s -1 r 98 c 1(er)m 13(of)m 15(zeros)m 15(with)m 15(no)m 45 2352 p (apparen)s 116 c 16 r 112 c 1(erio)m 1(d,)m 16(making)m 16(suc)m 104 c 15 r 97 c 17(strategy)m 16(impractical.)m cmbx12.300 @sf 45 2454 p (Beha)s -1(vior)m 21(for)m 24(large)m 22(argumen)m -1(ts.)m cmr12.300 @sf 32 r 70 c -3(or)m 19(large)m 21(argumen)m (ts,)s 19(these)m 20(functions)m 20(are)m 21(computed)m 19(as)m cmmi12.300 @sf 45 2514 p 65 c cmr12.300 @sf 40 c cmmi12.300 @sf 120 c cmr12.300 @sf 41 c cmmi12.300 @sf 103 c cmr12.300 @sf 2 r 40 c cmmi12.300 @sf 18 c cmr12.300 @sf 1 r 40 c cmmi12.300 @sf 120 c cmr12.300 @sf (\)\),)s 16(where)m cmmi12.300 @sf 16 r 65 c cmr12.300 @sf 17(and)m cmmi12.300 @sf 17 r 18 c cmr12.300 @sf 18(are)m 17(giv)m (en)s 15 r 98 c 121 c 16(Cheb)m (yshev)s 15(series,)m 16(and)m cmmi12.300 @sf 17 r 103 c cmr12.300 @sf 19(is)m 17 r 97 c 17(sine)m 17(or)m 17(cosine.)m 23(Since)m cmmi12.300 @sf 45 2574 p 18 c cmr12.300 @sf 1 r 40 c cmmi12.300 @sf 120 c cmr12.300 @sf 41 c 15(is)m 15(of)m 16(the)m 15(same)m 15(size)m 14(as)m cmmi12.300 @sf 16 r 120 c cmr12.300 @sf 44 c 15(the)m 15(sine)m 15(or)m 15(cosine)m 15(of)m 16 r 97 c 15(large)m 16(argumen)m 116 c 14 r 109 c (ust)s 14 r 98 c 1 r 101 c 15(computed)m 15(when)m cmmi12.300 @sf 45 2634 p 120 c cmr12.300 @sf 15(is)m 15(large.)m 21(Ev)m (en)s 14(if)m cmmi12.300 @sf 15 r 121 c cmr12.300 @sf 15 r 61 c cmmi12.300 @sf 14 r 18 c cmr12.300 @sf 1 r 40 c cmmi12.300 @sf 120 c cmr12.300 @sf 41 c 15(is)m 16(only)m 15(one)m 15(rounding)m 16(error)m 16(o\013,)m 16(when)m 15(it)m 15(has)m 16 r 118 c (ery)s 14(large)m 15(magnitude)m 996 2843 p (10)s @eop %%Page: 11 11 11 @bop0 cmbx10.432 @sf [<7FFF0FFFE3FFF87FFF0FFFE3FFF87FFF0FFFE3FFF807F000FE003F8007F000FE003F8007F000FE 003F8007F000FE003F8007F000FE003F8007F000FE003F8007F000FE003F8007F000FE003F8007 F000FE003F8007F000FE003F8007F000FE003F8007F000FE003F8007F000FE003F8007F000FE00 3F8007F000FE003F8007F000FE003F8007F000FE003F8007F000FE003F8007F000FE003F8007F0 00FE003F8007F000FE003F80FFFFFFFFFFFF80FFFFFFFFFFFF80FFFFFFFFFFFF8007F000FE0000 0007F000FE00000007F000FE00000007F000FE00000007F000FE001E0007F001FE003F0007F001 FE007F8007F001FE007F8007F001FE007F8003F801FF007F8003FC01FF803F8001FE00FFC01F00 007FC0FFF03E00001FFFE3FFFC000003FF807FF000> 56 42 -1 0 57.284] 14 @dc 11 @bop1 cmr12.300 @sf 174 127 p 84 c -3(able)m 15(3:)m 22(Asymptotic)m 15 r 80 c (erformance)s 14(of)m 17(Cheb)m (yshev)s 14(Series)m 16(Ev)m -2(aluation)m 16(\(Mega\015ops\))m 551 200 p 938 2 ru 551 260 p 2 61 ru 576 243 p (Mac)s (hine)s 939 261 p 2 61 ru 964 242 p 84 c -3(erms)m 1120 260 p 2 61 ru 1146 242 p (Scalar)s 50 r 86 c -3(ector)m 1488 260 p 2 61 ru 551 262 p 938 2 ru 551 322 p 2 61 ru 576 305 p (Sun)s 17(SP)m -3(AR)m -1 r 67 c 14(1+)m 939 323 p 2 61 ru 1072 304 p 55 c 1120 322 p 2 61 ru 1214 304 p (1.8)s 126(2.9)m 1488 322 p 2 61 ru 551 382 p 2 61 ru 576 365 p (Con)s 118 c (e)s -1 r 120 c 14(C-120)m 939 383 p 2 61 ru 1072 364 p 55 c 1120 382 p 2 61 ru 1214 364 p (1.2)s 101(15.0)m 1488 382 p 2 61 ru 551 442 p 2 61 ru 576 425 p (Cra)s 121 c 15(Y-MP2)m 939 443 p 2 61 ru 1047 424 p (20)s 1120 442 p 2 61 ru 1189 424 p (12.7)s 78(182.1)m 1488 442 p 2 61 ru 551 444 p 938 2 ru 45 622 p (it)s 19(cannot)m 20 r 98 c 1 r 101 c 19(represen)m (ted)s 17(accurately)m 18(enough)m 20(to)m 20(assure)m 20(the)m 19(result)m 18(returned)m 19 r 98 c 121 c cmmi12.300 @sf 18 r 65 c cmr12.300 @sf 40 c cmmi12.300 @sf 120 c cmr12.300 @sf 41 c cmmi12.300 @sf 103 c cmr12.300 @sf 2 r 40 c cmmi12.300 @sf 121 c cmr12.300 @sf 2 r 41 c 18(will)m 45 682 p (ha)s 118 c 101 c 13(small)m 16(relativ)m 101 c 13(error.)m 22(This)m 16 r 111 c 1(ccurs)m 17(ev)m (e)s -1 r 110 c 15(if)m cmmi12.300 @sf 16 r 103 c cmr12.300 @sf 18(is)m 16(computed)m 16(to)m 16(full)m 16(mac)m (hine)s 14(precision.)m cmbx10.432 @sf 45 827 p (5.2)s 70(E\016ciency)m cmr12.300 @sf 45 919 p (The)s 19 r 99 c (hie)s -1 r 102 c 17(motiv)m -2(ation)m 17(for)m 19(using)m 19(VFNLIB)m 18(is)m 18(the)m 18(prosp)m 1(ect)m 20(of)m 19(impro)m 118 c -2(ed)m 17(computation)m 19(rates)m 18(on)m 45 979 p 118 c (ector)s 15(pro)m 1(cessors.)m 25 r 84 c -3 r 111 c 17(assess)m 18(the)m 17(adv)m -2(an)m (tage)s 16(of)m 18(using)m 17(VFNLIB,)m 16 r 119 c 101 c 15(compare)m 17(the)m 17(use)m 17(of)m 18(VFN-)m 45 1040 p (LIB)s 15(routines)m 16(\(\\v)m (ector)s 13(co)m 1(des"\))m 17(with)m 15(rep)m 1(eated)m 15(calls)m 15(of)m 16(corresp)m 1(onding)m 16(FNLIB)m 15(routines)m 15(\(\\scalar)m 45 1100 p (co)s 1(des"\).)m 22 r 87 c -3 r 101 c 14(compare)m 15(the)m 15(co)m 1(des)m 15(on)m 16(the)m 15(three)m 14(systems)m 15(describ)m 1(ed)m 15(in)m 15(Section)m 15(5.1:)m 21(Sun)m 15(SP)m -3(AR)m -1(C-)m 45 1160 p (station)s 16(1+,)m 15(Con)m 118 c (ex)s 13(C-120,)m 17(and)m 16(Cra)m 121 c 14(Y-MP2.)m 21(The)m 16(\014rst)m 15(is)m 16 r 97 c 15(scalar)m 16 r 119 c (orkstation,)s 15(the)m 15(second)m 16 r 97 c 45 1220 p 118 c (ector)s 15(minisup)m 1(ercomputer,)m 16(and)m 18(the)m 17(third)m 18 r 97 c 17(2-pro)m 1(cessor)m 19 r 118 c (ector)s 16(sup)m 1(ercomputer)m 17(\(although)m 18 r 119 c 101 c 45 1280 p (only)s 18(use)m 19(one)m 19(pro)m 1(cessor)m 20(in)m 18(these)m 18(tests\).)m 29 r 87 c -3 r 101 c 18(include)m 17(the)m 18(Sun)m 19(to)m 19(demonstrate)m 19(the)m 19 r 112 c 1(ortabilit)m 121 c 45 1341 p (of)s 19(the)m 19(soft)m 119 c (are,)s 17(as)m 20 r 119 c (ell)s 17(as)m 19(to)m 20(sho)m 119 c 18(that)m 20(use)m 19(of)m 19(VFNLIB)m 17(need)m 19(not)m 19(degrade)m 20 r 112 c 1(erformance)m 18(on)m 45 1401 p (on)s 18(scalar)m 18(pro)m 1(cessors.)m 27(All)m 16(tests)m 18 r 119 c (ere)s 16 r 112 c 1(erformed)m 17(in)m 17(single)m 18(precision)m 17(\(the)m 17(Sun)m 18(and)m 18(Con)m 118 c (ex)s 15(are)m 45 1461 p (32-bit)s 17(mac)m (hines)s 14(while)m 16(the)m 16(Cra)m 121 c 15(is)m 16 r 97 c 16(64-bit)m 17(mac)m (hine\).)s 143 1521 p (The)s 22(computation)m 23(in)m 22(the)m 23(innermost)m 22(lo)m 1(op)m 24(of)m 23(the)m 22 r 118 c (ectoriz)s -1(ed)m 21(co)m 1(des)m 23(is)m 22(the)m 23(ev)m -2(aluation)m 22(of)m 45 1581 p (Cheb)s (yshev)s 19(series)m 20(using)m 22(the)m 20(algorithm)m 21(of)m 22(Section)m 20(3.2.)m 36(In)m 20 r 84 c -3(able)m 20 r 51 c 21 r 119 c 101 c 20(list)m 20(the)m 21(computation)m 45 1641 p (rate)s 20(in)m 20(mega\015ops)m 22(for)m 20(ev)m -2(aluating)m 20 r 97 c 21(single)m 20(Cheb)m (yshev)s 18(series)m 20(for)m 21(2000)m 22(argumen)m (ts)s 19(using)m 21 r 98 c 1(oth)m 45 1702 p (scalar)s 18(and)m 17 r 118 c (ector)s 16(co)m 1(des.)m 25(The)m 17(subprograms)m cmtt12.300 @sf 19(CSEVL)m cmr12.300 @sf 16(and)m cmtt12.300 @sf 17(WCS)m cmr12.300 @sf 17 r 119 c (ere)s 15(used)m 18(for)m 17(this)m 18(purp)m 1(ose.)m 25(The)m 45 1762 p (theoretical)s 14 r 112 c 1(eak)m 16(rate)m 16(for)m 16(the)m 15(Con)m 118 c (e)s -1 r 120 c 14(and)m 16(Cra)m 121 c 14(are)m 16(40)m 16(and)m 16(333)m 17(mega\015ops,)m 16(resp)m 1(ectiv)m (e)s -1(ly)m -4 r 44 c 13(while)m 45 1822 p (the)s 20(corresp)m 1(onding)m 21(Linpac)m 107 c 19 r 98 c 1(enc)m (hmark)s 18(runs)m 21(at)m 20(6.5)m 20(and)m 21(90)m 21(mega\015ops)m 21 r 91 c 54 c (].)s 32(In)m 20(ligh)m 116 c 18(of)m 20(these)m 45 1882 p (\014gures,)s 13(the)m 12(observ)m (ed)s 11(rate)m 12(for)m 13 r 118 c (ec)s -1(torized)m 10(Cheb)m (yshev)s 10(series)m 12(ev)m -2(aluation)m 11(on)m 13(the)m 12(Con)m 118 c (ex)s 10(and)m 12(Cra)m 121 c -3 r 44 c 45 1942 p (15)s 17(and)m 17(182,)m 17(resp)m 1(ectiv)m -1(ely)m -5 r 44 c 14(are)m 16(seen)m 16(to)m 17 r 98 c 1 r 101 c 16(quite)m 16(reasonable.)m 143 2003 p (Unfortunately)s -3 r 44 c 18(as)m 20 r 119 c 101 c 18(ha)m 118 c 101 c 17(seen,)m 19(there)m 19(is)m 20(more)m 19(to)m 20(the)m 19(computation)m 20(of)m 19(Bessel)m 19(functions)m 45 2063 p (than)s 23(the)m 23(ev)m -2(aluation)m 22(of)m 23(Cheb)m (yshev)s 21(series.)m 40(Ov)m (erhead)s 21 r 109 c (ust)s 22 r 98 c 1 r 101 c 23(paid)m 22(for)m 24(the)m 22(gathering)m 23(and)m 45 2123 p (scattering)s 21(of)m 21 r 118 c (ector)s 19(elemen)m -1(ts,)m 20(as)m 21 r 119 c (ell)s 19(as)m 22(for)m 21 r 118 c -2(arious)m 20(error)m 21 r 99 c (hec)s -1(k)m -1(s.)m 34(It)m 20(is)m 21(easy)m 21(to)m 21(assess)m 22(the)m 45 2183 p (e\013ect)s 16(of)m 16(this)m 16 r 111 c 118 c (e)s -1(rhead)m 15(on)m 16(the)m 16(Cra)m 121 c 15(Y-MP)m 16(using)m 17(its)m 16(hardw)m (are)s 15 r 112 c 1(erformance)m 16(monitor.)m 22 r 84 c -3(able)m 15 r 52 c 45 2243 p (lists)s 14(the)m 14(measured)m 14(asymptotic)m 14(computation)m 14(rate)m 15(in)m 14(mega\015ops)m 15(for)m 14(eac)m 104 c 13(user-callable)m 14(function.)m 45 2304 p 84 c -3 r 111 c 22(obtain)m 22(this)m 22(data,)m 25 r 119 c 101 c 20(ev)m -2(aluated)m 21(eac)m 104 c 21(function)m 22(for)m 22(19)m 23(di\013eren)m 116 c 21(sets)m 22(of)m 23(2000)m 23(argumen)m (ts,)s 45 2364 p (eac)s 104 c 18(with)m 20 r 97 c 20(di\013eren)m 116 c 18(argumen)m 116 c 19(distribution.)m 31(Comparing)m 21 r 84 c -3(able)m 18 r 51 c 21(and)m 20 r 84 c -3(able)m 19 r 52 c 20 r 119 c 101 c 18(see)m 20(that)m 45 2424 p (computation)s 18(rates)m 19(for)m 18(full)m 17(Bessel)m 17(function)m 18(ev)m -2(aluation)m 17(decline)m 16(only)m 18 r 55 c 18(to)m 19(22)m 18 r 112 c 1(ercen)m 116 c 17 r 111 c 118 c -1(er)m 16(ra)m 119 c 45 2484 p (Cheb)s (yshev)s 14(series)m 16(ev)m -2(aluation.)m 143 2544 p (Another)s 23(measure)m 23(of)m 24 r 112 c 1(erformance)m 23(is)m 24(sp)m 1(eedup,)m 25(the)m 23(ratio)m 24(of)m 24(scalar)m 24(to)m 23 r 118 c (ector)s 22(times)m 23(for)m 45 2605 p 109 c (ulti)s -1(ple)m 15(function)m 18(ev)m -2(aluation.)m 24(Actual)m 17(sp)m 1(eedups)m 18(dep)m 1(end)m 17(up)m 1(on)m 19(the)m 17(distribution)m 17(of)m 18(argumen)m (ts.)s 45 2665 p 87 c -3 r 101 c 13(compare)m 14(the)m 14(scalar)m 14(and)m 15 r 118 c (ector)s 12(co)m 1(des)m 15(for)m 15 r 118 c (ec)s -1(tors)m 13(of)m 15(length)m 14(2000)m 15(distributed)m 14(in)m 14(19)m 15(di\013eren)m 116 c 996 2843 p (11)s @eop %%Page: 12 12 12 @bop0 12 @bop1 cmr12.300 @sf 145 127 p 84 c -3(able)m 16(4:)m 21(Asymptotic)m 15 r 80 c (erformance)s 15(of)m 16(Bessel)m 16 r 70 c -3(unctions)m 15(on)m 16(Cra)m 121 c 16(Y-MP)m 16(\(Mega\015ops\))m 258 200 p 1525 2 ru 258 260 p 2 61 ru 283 243 p 70 c -3(unction)m 494 261 p 2 61 ru 594 242 p 73 c cmr8.300 @sf 612 249 p 48 c cmr12.300 @sf 755 242 p 73 c cmr8.300 @sf 773 249 p 49 c cmr12.300 @sf 908 242 p 74 c cmr8.300 @sf 933 249 p 48 c cmr12.300 @sf 1069 242 p 74 c cmr8.300 @sf 1094 249 p 49 c cmr12.300 @sf 1217 242 p 75 c cmr8.300 @sf 1255 249 p 48 c cmr12.300 @sf 1378 242 p 75 c cmr8.300 @sf 1416 249 p 49 c cmr12.300 @sf 1540 242 p 89 c cmr8.300 @sf 1577 249 p 48 c cmr12.300 @sf 1701 242 p 89 c cmr8.300 @sf 1738 249 p 49 c 1781 260 p 2 61 ru 258 262 p 1525 2 ru 258 322 p 2 61 ru cmr12.300 @sf 283 305 p (Scalar)s 494 323 p 2 61 ru 569 304 p (9.0)s 99(8.7)m 74(10.6)m 75(10.4)m 99(7.8)m 99(8.0)m 99(9.1)m 99(9.0)m 1781 322 p 2 61 ru 258 382 p 2 61 ru 283 365 p 86 c -3(ec)m -1(tor)m 494 383 p 2 61 ru 520 364 p (148.7)s 51(142.4)m 51(164.5)m 51(160.9)m 51(162.8)m 51(159.3)m 50(172.0)m 51(170.0)m 1781 382 p 2 61 ru 258 384 p 1525 2 ru 387 575 p 84 c -3(able)m 15(5:)m 22(Asymptotic)m 15(Sp)m 1(eedups)m 17(\(Scalar)m 16(time)m 15 r 47 c 17 r 118 c (ec)s -1(tor)m 15(time\))m 207 647 p 1626 2 ru 207 707 p 2 61 ru 232 690 p (Mac)s (hine)s 595 708 p 2 61 ru 740 707 p 2 61 ru 815 689 p 73 c cmr8.300 @sf 833 696 p 48 c cmr12.300 @sf 951 689 p 73 c cmr8.300 @sf 969 696 p 49 c cmr12.300 @sf 1080 689 p 74 c cmr8.300 @sf 1105 696 p 48 c cmr12.300 @sf 1217 689 p 74 c cmr8.300 @sf 1242 696 p 49 c cmr12.300 @sf 1341 689 p 75 c cmr8.300 @sf 1379 696 p 48 c cmr12.300 @sf 1477 689 p 75 c cmr8.300 @sf 1515 696 p 49 c cmr12.300 @sf 1615 689 p 89 c cmr8.300 @sf 1652 696 p 48 c cmr12.300 @sf 1751 689 p 89 c cmr8.300 @sf 1788 696 p 49 c 1832 707 p 2 61 ru 207 709 p 1626 2 ru 207 769 p 2 61 ru cmr12.300 @sf 232 752 p (Sun)s 17(SP)m -3(AR)m -1 r 67 c 15(1+)m 595 770 p 2 61 ru 621 751 p (Min)s 740 769 p 2 61 ru 790 751 p (1.0)s 74(1.0)m 75(1.1)m 74(1.1)m 75(1.0)m 74(1.0)m 75(1.2)m 74(1.2)m 1832 769 p 2 61 ru 207 829 p 2 61 ru 388 r 2 61 ru 621 811 p (Av)s 101 c 740 829 p 2 61 ru 790 811 p (1.1)s 74(1.1)m 75(1.2)m 74(1.2)m 75(1.2)m 74(1.2)m 75(1.3)m 74(1.3)m 1832 829 p 2 61 ru 207 889 p 2 61 ru 388 r 2 61 ru 621 871 p (Max)s 740 889 p 2 61 ru 790 871 p (1.2)s 74(1.2)m 75(1.4)m 74(1.2)m 75(1.3)m 74(1.4)m 75(1.6)m 74(1.5)m 1832 889 p 2 61 ru 207 891 p 1626 2 ru 207 951 p 2 61 ru 232 934 p (Con)s 118 c (ex)s 14(C-120)m 595 952 p 2 61 ru 621 933 p (Min)s 740 951 p 2 61 ru 790 933 p (4.4)s 74(5.2)m 75(5.5)m 74(4.6)m 75(7.6)m 74(7.3)m 75(7.9)m 74(7.9)m 1832 951 p 2 61 ru 207 1011 p 2 61 ru 388 r 2 61 ru 621 993 p (Av)s 101 c 740 1011 p 2 61 ru 790 993 p (5.8)s 74(5.9)m 75(6.4)m 74(5.6)m 75(8.0)m 74(8.0)m 75(8.4)m 74(8.5)m 1832 1011 p 2 61 ru 207 1071 p 2 61 ru 388 r 2 61 ru 621 1053 p (Max)s 740 1071 p 2 61 ru 790 1053 p (6.5)s 74(6.2)m 75(6.8)m 74(6.0)m 75(8.3)m 74(9.1)m 75(9.3)m 74(9.6)m 1832 1071 p 2 61 ru 207 1073 p 1626 2 ru 207 1133 p 2 61 ru 232 1116 p (Con)s 118 c (ex)s 14(C-120)m 595 1134 p 2 61 ru 621 1115 p (Min)s 740 1133 p 2 61 ru 790 1115 p (6.2)s 74(7.5)m 75(6.6)m 74(5.8)m 75(8.2)m 74(9.1)m 75(8.6)m 74(8.0)m 1832 1133 p 2 61 ru 207 1193 p 2 61 ru 232 1176 p (with)s 16(VECLIB)m 595 1194 p 2 61 ru 621 1175 p (Av)s 101 c 740 1193 p 2 61 ru 790 1175 p (7.9)s 74(7.9)m 75(7.3)m 74(6.6)m 75(9.8)m 74(9.6)m 75(9.2)m 74(8.6)m 1832 1193 p 2 61 ru 207 1254 p 2 61 ru 388 r 2 61 ru 621 1236 p (Max)s 740 1254 p 2 61 ru 790 1236 p (8.8)s 74(8.2)m 75(7.6)m 74(7.0)m 50(10.9)m 51(10.4)m 50(10.3)m 75(9.7)m 1832 1254 p 2 61 ru 207 1256 p 1626 2 ru 207 1315 p 2 61 ru 232 1298 p (Cra)s 121 c 15(Y-MP2)m 595 1316 p 2 61 ru 621 1297 p (Min)s 740 1315 p 2 61 ru 765 1297 p (16.2)s 51(15.3)m 50(14.5)m 51(13.9)m 50(20.8)m 51(20.9)m 50(14.8)m 51(14.9)m 1832 1315 p 2 61 ru 207 1376 p 2 61 ru 388 r 2 61 ru 621 1358 p (Av)s 101 c 740 1376 p 2 61 ru 765 1358 p (17.8)s 51(16.8)m 50(16.0)m 51(15.3)m 50(21.5)m 51(21.6)m 50(19.6)m 51(19.8)m 1832 1376 p 2 61 ru 207 1436 p 2 61 ru 388 r 2 61 ru 621 1418 p (Max)s 740 1436 p 2 61 ru 765 1418 p (20.7)s 51(19.9)m 50(21.5)m 51(20.4)m 50(22.6)m 51(23.1)m 50(23.4)m 51(23.0)m 1832 1436 p 2 61 ru 207 1438 p 1626 2 ru 45 1616 p 119 c 97 c (ys)s 17(among)m 19(three)m 18(di\013eren)m 116 c 17(argumen)m 116 c 17(ranges.)m 30(The)m 18(test)m 19(includes)m 18(cases)m 18(where)m 19(all)m 18(argumen)m (ts)s 45 1676 p (are)s 21(in)m 21 r 97 c 22(single)m 21(range)m 21(as)m 22 r 119 c (ell)s 19(as)m 22(cases)m 21(where)m 21(only)m 21(one)m 22 r 112 c 1(er)m 21(cen)m 116 c 19(of)m 22(the)m 21(argumen)m (ts)s 20(are)m 22(in)m 21 r 97 c 45 1736 p (giv)s (en)s 19(range.)m 35 r 84 c -3(able)m 20 r 53 c 21(lists)m 20(minim)m -1(um,)m 20 r 97 c 118 c -1(erage,)m 20(and)m 21(maxim)m -1(um)m 19(sp)m 1(eedups)m 21(observ)m (ed)s 20(with)m 20(the)m 45 1797 p (single)s 18(precision)m 17(co)m 1(des)m 18(on)m 19(eac)m 104 c 17(computer.)m 26(The)m 18(sp)m 1(eedups)m 19(for)m 18(the)m 18(Con)m 118 c (e)s -1 r 120 c 16(are)m 18(in)m 18(the)m 18(range)m 19(of)m 45 1857 p (4.4)s 17(to)m 17(9.6)m 17(while)m 15(the)m 17(sp)m 1(eedups)m 17(on)m 17(the)m 16(Cra)m 121 c 16(are)m 17(in)m 16(the)m 16(range)m 17(13.9)m 17(to)m 17(23.0.)m 23(\(The)m 17(en)m (try)s 15(lab)m 1(eled)m 45 1917 p (\\Con)s 118 c (ex)s 14(C-120)m 18(with)m 16(VECLIB")m 16(will)m 15 r 98 c 1 r 101 c 17(explained)m 15(shortly)m -3(.\))m 20(It)m 16(is)m 16(also)m 16(in)m (teresting)s 15(to)m 16(note)m 17(that)m 45 1977 p (the)s 16 r 118 c (ectoriz)s -1(ed)m 14(co)m 1(des)m 17(run)m 16(faster)m 17(than)m 17(the)m 16(scalar)m 16(co)m 1(des)m 17(on)m 17(the)m 16(Sun)m 16(in)m 16(most)m 16(cases.)m 143 2037 p (The)s 17(sp)m 1(eedups)m 17(that)m 18(one)m 17(migh)m 116 c 15(predict)m 16(from)m 17 r 84 c -3(able)m 16 r 51 c 18(are)m 17(1.6,)m 17(12.5,)m 18(and)m 17(14.3)m 18(for)m 17(the)m 17(Sun,)m 45 2098 p (Con)s 118 c (e)s -1(x,)m 15(and)m 17(Cra)m 121 c -3 r 44 c 14(resp)m 1(ectiv)m (el)s -1 r 121 c -4 r 46 c 21(The)m 16 r 97 c 118 c (e)s -1(rage)m 16(sp)m 1(eedups)m 17(for)m 17(the)m 16(Cra)m 121 c 16(Y-MP)m 17(giv)m (en)s 15(in)m 16 r 84 c -3(able)m 16 r 53 c 45 2158 p (are)s 19(somewhat)m 20 r 98 c 1(etter)m 19(than)m 20(this.)m 29(In)m 19(con)m (trast,)s 19(the)m 19(sp)m 1(eedups)m 20(for)m 19(the)m 19(Con)m 118 c (e)s -1 r 120 c 17(are)m 20(not)m 19(as)m 20(large)m 45 2218 p (as)s 16(predicted.)m 20 r 84 c -3 r 111 c 15(in)m 118 c -2(estigate)m 14(this)m 15(further)m 15 r 119 c 101 c 14(generated)m 15(an)m 16(execution)m 15(pro\014le)m 15(of)m 16(the)m 15(subroutine)m 45 2278 p (VI0,)s 15(ev)m -2(aluating)m 16 r 73 c cmr8.300 @sf 406 2285 p 48 c cmr12.300 @sf 441 2278 p (for)s 16 r 97 c 17 r 118 c (ector)s 14(of)m 17(length)m 16(2000)m 17(with)m cmmi12.300 @sf 16 r 120 c cmmi8.300 @sf 1159 2285 p 105 c cmr12.300 @sf 1187 2278 p 61 c 14 r 49 c 16(for)m 17(all)m cmmi12.300 @sf 15 r 105 c cmr12.300 @sf 46 c 21(The)m 16(\014rst)m 17 r 116 c 119 c -1 r 111 c 15(columns)m 16(of)m 45 2338 p 84 c -3(able)m 13 r 54 c 14(sho)m 119 c 14(the)m 14 r 112 c 1(ercen)m 116 c 12(time)m 13(sp)m 1(en)m 116 c 13 r 98 c 121 c 13(the)m 14(Cra)m 121 c 13(and)m 15(the)m 14(Con)m 118 c -1(ex)m 12(on)m 14(four)m 15(di\013eren)m 116 c 12(activities.)m 45 2398 p (The)s 15(innermost)m 14(lo)m 1(op)m 16(of)m 15(the)m 15(computation)m 15(is)m 15(Cheb)m (yshev)s 13(series)m 14(ev)m -2(aluation,)m 14(whic)m 104 c 13(is)m 15(where)m 14(more)m 45 2459 p (than)s 21(half)m 21(the)m 20(computation)m 21 r 111 c 1(ccurs)m 21(on)m 21(the)m 20(Cra)m 121 c -3 r 46 c 32(Ho)m 119 c -1(ev)m -2(er,)m 19(on)m 21(the)m 20(Con)m 118 c (ex,)s 19(more)m 20(than)m 21(half)m 45 2519 p (the)s 14(time)m 14(is)m 14(sp)m 1(en)m 116 c 13(doing)m 15(index)m 14(compression;)m 14(although)m 16(the)m 14(compiler)m 13(do)m 1(es)m 15(\\v)m (ectorize")s 13(the)m 14(index)m 45 2579 p (compression)s 16(lo)m 1(ops,)m 17(the)m 16(resulting)m 16(co)m 1(de)m 16(do)m 1(es)m 17(not)m 17 r 112 c 1(erform)m 16 r 118 c (ery)s 14 r 119 c (ell.)s 143 2639 p (One)s 18(can)m 18(do)m 19 r 98 c 1(etter)m 18(than)m 19 r 97 c 19(straigh)m (tforw)s (ard)s 17 r 70 c -3(ortran)m 18(implemen)m -2(tation)m 17(of)m 19(these)m 18(op)m 1(erations)m 996 2843 p (12)s @eop %%Page: 13 13 13 @bop0 cmr12.300 @sf [ 8 15 -4 -20 13.548] 39 @dc [ 24 2 0 -12 24.387] 123 @dc 13 @bop1 cmr12.300 @sf 389 125 p 84 c -3(able)m 15(6:)m 21 r 80 c (ercen)s -1 r 116 c 14(Time)m 16(Sp)m 1(en)m 116 c 15 r 98 c 121 c 15(VI0)m 15(on)m 17 r 86 c -3(arious)m 15(Activities)m 257 194 p 1526 2 ru 257 254 p 2 61 ru 282 237 p (Activit)s -1 r 121 c 900 255 p 2 61 ru 926 236 p (Cra)s 121 c 49(Con)m 118 c (e)s -1 r 120 c 48(Con)m 118 c (e)s -1 r 120 c 14(with)m 16(VECLIB)m 1782 254 p 2 61 ru 257 256 p 1526 2 ru 257 316 p 2 61 ru 282 299 p (Cheb)s (yshev)s 15(series)m 15(ev)m -2(aluation)m 900 317 p 2 61 ru 942 298 p (57.7)s 121(22.8)m 244(34.8)m 1782 316 p 2 61 ru 257 376 p 2 61 ru 282 359 p (Pre-)s 16(and)m 17 r 112 c 1(ost-)m 18(pro)m 1(cessing)m 900 377 p 2 61 ru 942 358 p (12.1)s 121(10.2)m 244(15.8)m 1782 376 p 2 61 ru 257 437 p 2 61 ru 282 420 p (Index)s 15(compression)m 900 438 p 2 61 ru 942 419 p (20.0)s 121(50.2)m 244(20.2)m 1782 437 p 2 61 ru 257 497 p 2 61 ru 282 480 p (Gather/scatter)s 900 498 p 2 61 ru 967 479 p (5.2)s 145(9.7)m 243(17.9)m 1782 497 p 2 61 ru 257 499 p 1526 2 ru 375 689 p 84 c -3(able)m 15(7:)m 22(Short)m 16 r 86 c -3(ector)m 15(Sp)m 1(eedups)m 17(\(Scalar)m 16(time)m 15 r 47 c 17 r 118 c (ec)s -1(tor)m 15(time\))m 286 762 p 1469 2 ru 286 822 p 2 61 ru 311 805 p (Mac)s (hine)s 674 823 p 2 61 ru 699 804 p (length)s 856 822 p 2 61 ru 907 804 p 73 c cmr8.300 @sf 925 811 p 48 c cmr12.300 @sf 1019 804 p 73 c cmr8.300 @sf 1037 811 p 49 c cmr12.300 @sf 1124 804 p 74 c cmr8.300 @sf 1149 811 p 48 c cmr12.300 @sf 1236 804 p 74 c cmr8.300 @sf 1261 811 p 49 c cmr12.300 @sf 1335 804 p 75 c cmr8.300 @sf 1373 811 p 48 c cmr12.300 @sf 1447 804 p 75 c cmr8.300 @sf 1485 811 p 49 c cmr12.300 @sf 1561 804 p 89 c cmr8.300 @sf 1598 811 p 48 c cmr12.300 @sf 1673 804 p 89 c cmr8.300 @sf 1710 811 p 49 c 1753 822 p 2 61 ru 286 824 p 1469 2 ru 286 884 p 2 61 ru cmr12.300 @sf 311 867 p (Sun)s 16(SP)m -3(AR)m 67 c 14(1+)m 674 885 p 2 61 ru 808 866 p 50 c 856 884 p 2 61 ru 882 866 p (0.5)s 50(0.5)m 50(0.5)m 50(0.5)m 50(0.6)m 51(0.6)m 50(0.6)m 50(0.6)m 1753 884 p 2 61 ru 286 944 p 2 61 ru 388 r 2 61 ru 783 926 p (20)s 856 944 p 2 61 ru 882 926 p (1.2)s 50(1.0)m 50(1.0)m 50(1.2)m 50(1.2)m 51(1.2)m 50(1.1)m 50(1.2)m 1753 944 p 2 61 ru 286 946 p 1469 2 ru 286 1006 p 2 61 ru 311 989 p (Con)s 118 c (e)s -1 r 120 c 14(C-120)m 674 1007 p 2 61 ru 808 988 p 50 c 856 1006 p 2 61 ru 882 988 p (0.2)s 50(0.2)m 50(0.2)m 50(0.2)m 50(0.3)m 51(0.3)m 50(0.2)m 50(0.2)m 1753 1006 p 2 61 ru 286 1066 p 2 61 ru 388 r 2 61 ru 783 1048 p (20)s 856 1066 p 2 61 ru 882 1048 p (1.8)s 50(1.8)m 50(1.8)m 50(1.6)m 50(2.2)m 51(2.3)m 50(2.0)m 50(2.2)m 1753 1066 p 2 61 ru 286 1068 p 1469 2 ru 286 1128 p 2 61 ru 311 1111 p (Cra)s 121 c 15(Y-MP2)m 674 1129 p 2 61 ru 808 1110 p 50 c 856 1128 p 2 61 ru 882 1110 p (0.4)s 50(0.4)m 50(0.4)m 50(0.4)m 50(0.5)m 51(0.5)m 50(0.4)m 50(0.5)m 1753 1128 p 2 61 ru 286 1188 p 2 61 ru 388 r 2 61 ru 783 1170 p (20)s 856 1188 p 2 61 ru 882 1170 p (3.6)s 50(3.5)m 50(3.5)m 50(3.4)m 50(4.6)m 51(4.5)m 50(4.0)m 50(4.0)m 1753 1188 p 2 61 ru 286 1190 p 1469 2 ru 45 1368 p (on)s 16(the)m 16(Con)m 118 c (ex)s -1 r 44 c 14(ho)m 119 c (ev)s -2(er.)m 19(The)m 16(Con)m 118 c -1(ex)m 14(VECLIB)m 15(library)m 16 r 91 c 52 c 93 c 15(con)m (tains)s 15 r 70 c -3(ortran-callable)m 15(utilities)m 45 1428 p (whic)s 104 c 12(optimize)m 12(the)m 13 r 112 c 1(erformance)m 14(of)m 14(the)m 13(the)m 13(index)m 13(compression)m 14(and)m 14(gather/scatter)m 14(op)m 1(erations.)m 45 1488 p (Since)s 17 r 119 c 101 c 17 r 119 c (ere)s 16(careful)m 18(in)m 18(our)m 18(implemen)m -1(tation)m 17(to)m 18(isolate)m 18(these)m 18 r 118 c (ery)s 16(op)m 1(erations)m 19(in)m (to)s 17(lo)m (w-lev)s -1(e)m -1 r 108 c 45 1549 p (utilities,)s 18 r 119 c 101 c 19(can)m 20(easily)m 18(replace)m 19(the)m 20(badly)m 19 r 118 c (ectorize)s -1 r 100 c 18(lo)m 1(ops)m 21 r 98 c 121 c 18(calls)m 19(to)m 20(VECLIB.)m 19(When)m 20(this)m 45 1609 p (is)s 19(done)m 19(the)m 19(en)m (trie)s -1 r 115 c 18(in)m 18(the)m 19(third)m 19(column)m 18(of)m 20 r 84 c -3(able)m 18 r 54 c 19(are)m 19(obtained.)m 30(This)m 19(is)m 19(is)m 19 r 97 c 19(more)m 19(reason-)m 45 1669 p (able)s 19(distribution,)m 19(although)m 20(the)m 19(gather/scatter)m 20(op)m 1(erations)m 20(still)m 18 r 111 c 1(ccup)m 121 c 18 r 97 c 20(signi\014can)m (tly)s 17(larger)m 45 1729 p 112 c 1(ercen)m (tage)s 17(of)m 19(time)m 17(than)m 19(on)m 19(the)m 18(Cra)m 121 c -3 r 46 c 25(Using)m 18(the)m 19(mo)m 1(di\014ed)m 18 r 118 c (ersion)s 17(of)m 18(VFNLIB's)m 17(utilities)m 16(on)m 45 1789 p (the)s 18(Con)m 118 c (ex)s 16(leads)m 19(to)m 19(the)m 18(the)m 19(impro)m 118 c -2(ed)m 17(scalar/v)m (ector)s 17(sp)m 1(eedups)m 19(lab)m 1(eled)m 19(\\Con)m 118 c (e)s -1 r 120 c 17(C-120)m 20(with)m 45 1850 p (VECLIB")s 16(in)m 16 r 84 c -3(able)m 15(5.)m 143 1910 p (The)s 23(tests)m 24(that)m 24 r 119 c 101 c 22(ha)m 118 c -1 r 101 c 21 r 112 c 1(erformed)m 23(th)m (us)s 23(far)m 24(assess)m 24(the)m 23 r 112 c 1(erformance)m 24(of)m 24(the)m 23(co)m 1(des)m 24(for)m 45 1970 p 118 c (ery)s 16(long)m 19 r 118 c (ec)s -1(tors.)m 26(It)m 18(is)m 18(also)m 19(imp)m 1(ortan)m 116 c 17(to)m 18(assess)m 20(the)m 18 r 112 c 1(enalt)m 121 c 16(for)m 19(using)m 18(the)m 18 r 118 c (ectorize)s -1 r 100 c 17(co)m 1(des)m 45 2030 p (when)s 16 r 118 c (ector)s 15(lengths)m 16(are)m 17(short.)m 22 r 84 c -3(able)m 15 r 55 c 17(lists)m 15(sample)m 16(sp)m 1(eedups)m 17(for)m 17(eac)m 104 c 15(function)m 16(on)m 16(the)m 17(three)m 45 2090 p (mac)s (hines)s 14(for)m 17 r 118 c (ectors)s 15(of)m 16(length)m 16 r 50 c 17(and)m 17(20.)m 22(Argumen)m (ts)s 15(for)m 16(these)m 16(tests)m 17(are)m 16(distributed)m 16 r 111 c 118 c -1(er)m 14 r 116 c 119 c 111 c 45 2151 p (argumen)s 116 c 14(subranges)m 17(so)m 16(that)m 15(in)m (ternal)s 14 r 118 c (ec)s -1(tor)m 14(lengths)m 15(are)m 16(actually)m 14(half)m 16(that)m 15(listed)m 15(in)m 15(the)m 15(table.)m 45 2211 p (As)s 14(one)m 14 r 119 c (ould)s 14(exp)m 1(ect,)m 13(the)m 14 r 118 c (ector)s 12(co)m 1(des)m 15(run)m 14(slo)m 119 c (er)s 12(in)m 14(eac)m 104 c 12(case)m 15(when)m 14 r 118 c (ery)s 12(few)m 14(function)m 14 r 118 c -2(alues)m 45 2271 p (are)s 12(requested.)m 19 r 70 c -3(or)m 11 r 118 c (ector)s 10(length)m 11 r 50 c 13(the)m 11 r 118 c (ector)s 10(co)m 1(de)m 12(runs)m 13 r 116 c (wice)s 9(as)m 13(long)m 12(on)m 13(the)m 11(Sun)m 12(and)m 13(the)m 11(Cra)m 121 c -3 r 44 c 45 2331 p (and)s 17(\014v)m 101 c 14(times)m 16(as)m 17(long)m 16(on)m 17(the)m 16(Con)m 118 c (e)s -1(x.)m 19 r 84 c -3(able)m 16 r 56 c 16(lists)m 16(the)m 16 r 118 c (ector)s 14(length)m 16(for)m 17(whic)m 104 c 15(the)m 16(sp)m 1(eedup)m 45 2391 p (is)s 15(1,)m 16(i.e.,)m 14(the)m 15(break-ev)m (en)s 13 r 112 c 1(oin)m 116 c 15(after)m 15(whic)m 104 c 14(the)m 16 r 118 c (ec)s -1(tor)m 14(co)m 1(des)m 16(are)m 16(faster.)m 21(The)m 15(break-ev)m (en)s 14 r 112 c 1(oin)m 116 c 45 2451 p (is)s 16(in)m 16(the)m 16(range)m 17(4{5)m 17(for)m 17(the)m 16(Cra)m 121 c -3 r 44 c 13(7{11)m 18(for)m 17(the)m 16(Con)m 118 c -1(ex,)m 14(and)m 16(7{14)m 18(for)m 17(the)m 16(Sun.)m 996 2843 p (13)s @eop %%Page: 14 14 14 @bop0 cmbx10.518 @sf [<000FFE0000003FFFC00000FFFFE00003FFFFF80007FE0FFC000FF803FE000FF001FF001FE001FF 001FE000FF803FE000FF803FC000FFC07FC000FFC07FC000FFC07FC000FFC07FC000FFC0FFC000 FFC0FFC000FFC0FFC000FFC0FFC000FFC0FFE000FFC0FFE000FF80FFE000FF80FFF000FF00FFF0 01FF00FFF801FE00FFDC07FC00FFCFFFF800FFC7FFE000FFC3FF80007FC02000007FC00000007F C00000007FE00000003FE000FE003FE000FE001FE001FF001FF001FF000FF001FF0007F801FF00 03F800FF0001FE00FE0000FF003E00007FE0FC00001FFFF8000007FFF0000000FFC000> 40 46 -3 0 41.244] 54 @dc [<000007FFC0000000007FFFFC00000003FFFFFF0000000FFFFFFFC000001FFF803FE000007FFC00 07F00000FFF00001F80001FFC000007C0003FF0000003E0007FE0000001E000FFE0000001F001F FC0000000F001FF80000000F803FF800000007803FF000000007803FF000000007807FF0000000 07807FF000000000007FE00000000000FFE00000000000FFE00000000000FFE00000000000FFE0 0000000000FFE00000000000FFE00000000000FFE00000000000FFE00000000000FFE000000000 00FFE00000000000FFE000000000007FE000000000007FF000000007807FF000000007803FF000 000007803FF00000000F803FF80000000F801FF80000000F801FFC0000001F800FFE0000003F80 07FE0000003F8003FF0000007F8001FFC00000FF8000FFE00003FF80007FFC0007FF80001FFF80 3FFF80000FFFFFFF9F800003FFFFFE0F8000007FFFF80780000007FF800380> 56 49 -5 0 59.575] 67 @dc [ 64 49 -2 0 61.866] 82 @dc cmti12.300 @sf [ 40 34 -3 0 36.206] 72 @dc [ 24 35 -3 0 22.416] 107 @dc [ 48 34 -3 0 43.678] 77 @dc [ 32 34 -3 0 31.802] 70 @dc [<00F87E0003FEFF0007CFE3800707C1C00703C0E00703C0600701C0600701C0300701C0300781E0 300381E0380380E01803C0E01801C0E018E1C0F01C61E0701C70E0703C30E0707C3CE0787C1FC0 387C07803838> 32 21 -3 0 32.378] 119 @dc [ 8 15 -3 10 14.944] 44 @dc [<00FF00000007FFE100000FC0FB00001F003F80003E000F80007C000780007800078000F00007C0 00F00003C000F00003C000F00003C000E00003E000E00003E000F0003FFC00F0003FFC00F00000 0000F000000000F000000000F800000000780000000078000000007C000018003C000018003C00 001C001E00001C001F00001C000F00001C000780001E0007C0001E0003E0001E0001F0003E0000 78003F00003E007700001FC1E3000007FFC3000000FF0180> 40 36 -7 1 37.694] 71 @dc [ 32 34 -9 0 34.869] 84 @dc [ 32 36 -3 1 27.397] 83 @dc [ 40 34 -3 0 36.783] 68 @dc [ 32 35 -3 0 36.206] 65 @dc [<00FF00000007FFC000000FC1F000001F007800003C001C00007C000E00007800070000F0000380 00F000018000F00001C000F00000C000E00000E000E000006000F000006000F000000000F00000 0000F000000000F000000000F800000000780000000078000000007C000018003C000018003C00 001C001E00001C001F00001C000F00001C000780001E0007C0001E0003E0001E0001F0003E0000 78003F00003E007700001FC1E3000007FFC3000000FF0180> 40 36 -7 1 34.869] 67 @dc [<01FC000007FF80000F83E0001E00F8003C003C0078001E0078000F00F0000780F00003C0F00001 C0F00001E0E00000F0E00000F0F0000078F0000078F0000078F000003CF000003CF000003C7800 001E7800001E7800001E3C00001E3C00001E1E00001E1E00001E0F00001E0700001C0380001C01 C0003C00E0003800700078003C00F0000F03E00007FF800000FE00> 32 36 -7 1 37.359] 79 @dc [ 40 34 -3 0 36.206] 78 @dc [<038000000380000003C0000003C0000003E0000003E0000003F0000003D8000003D8000007CC00 00078C000007860000078700000783000007818000078180000780C0000780C000078060000780 3000078030000F8018000F0018000F000C000F000E000F0006000F0003000F0003000F0001800F 0001800F0000C00F0000E01F8001F8FFF003FEFFF003FF> 32 35 -10 1 36.206] 86 @dc [ 40 34 -3 0 33.047] 69 @dc [ 40 34 -2 0 36.206] 88 @dc [ 32 34 -3 0 34.292] 66 @dc [<07F000000FFC00001E1F00003C0380007801C0007800E00070006000F0003000F0003800F00018 00F800180078001C0078000C0078000C007C000C007C000E003C0006003C0006003E0006003E00 07001E0003001E0003001F0003001F0003800F0001800F0001800F8001800F8001C0078000C007 8000C007C000E007C000E003C001F83FFE07FF3FFE07FF> 32 35 -9 1 36.206] 85 @dc [ 8 15 -11 -20 14.944] 39 @dc 14 @bop1 cmr12.300 @sf 284 127 p 84 c -3(able)m 15(8:)m 22(Short)m 17 r 86 c -3(ector)m 14(Break-ev)m (e)s -1 r 110 c 15 r 80 c (oin)s -1 r 116 c 15(\(V)m -3(ec)m -1(tor)m 15(time)m 15 r 61 c 16(scalar)m 17(time\))m 415 200 p 1210 2 ru 415 260 p 2 61 ru 440 243 p (Mac)s (hine)s 803 261 p 2 61 ru 840 242 p 73 c cmr8.300 @sf 858 249 p 48 c cmr12.300 @sf 938 242 p 73 c cmr8.300 @sf 956 249 p 49 c cmr12.300 @sf 1030 242 p 74 c cmr8.300 @sf 1055 249 p 48 c cmr12.300 @sf 1128 242 p 74 c cmr8.300 @sf 1153 249 p 49 c cmr12.300 @sf 1223 242 p 75 c cmr8.300 @sf 1261 249 p 48 c cmr12.300 @sf 1330 242 p 75 c cmr8.300 @sf 1368 249 p 49 c cmr12.300 @sf 1438 242 p 89 c cmr8.300 @sf 1475 249 p 48 c cmr12.300 @sf 1544 242 p 89 c cmr8.300 @sf 1581 249 p 49 c 1624 260 p 2 61 ru 415 262 p 1210 2 ru 415 322 p 2 61 ru cmr12.300 @sf 440 305 p (Sun)s 16(SP)m -3(AR)m 67 c 14(1+)m 803 323 p 2 61 ru 828 304 p (12)s 51(12)m 51(14)m 50(10)m 84 r 56 c 83 r 56 c 83 r 55 c 82 r 55 c 1624 322 p 2 61 ru 415 382 p 2 61 ru 440 365 p (Con)s 118 c (e)s -1 r 120 c 14(C-120)m 803 383 p 2 61 ru 828 364 p (10)s 51(10)m 51(10)m 50(11)m 84 r 56 c 83 r 55 c 83 r 57 c 82 r 56 c 1624 382 p 2 61 ru 415 442 p 2 61 ru 440 425 p (Cra)s 121 c 15(Y-MP2)m 803 443 p 2 61 ru 853 424 p 53 c 74 r 53 c 75 r 53 c 75 r 53 c 83 r 52 c 83 r 52 c 83 r 53 c 82 r 53 c 1624 442 p 2 61 ru 415 444 p 1210 2 ru cmbx10.518 @sf 45 622 p 54 c 83(Conclusion)m cmr12.300 @sf 45 732 p 87 c -3 r 101 c 19(ha)m 118 c 101 c 18(describ)m 1(ed)m 20 r 97 c 21(suite)m 20(of)m 21 r 112 c 1(ortable)m 21 r 70 c -3(ortran)m 20(subprograms,)m 22(VFNLIB,)m 19(for)m 21(computing)m 20(the)m 45 792 p (Bessel)s 18(functions)m 19(of)m 20(real)m 18(argumen)m 116 c 18(and)m 20(in)m (teger)s 17(order.)m 30(The)m 19(co)m 1(des)m 20(are)m 19 r 97 c 19(mo)m 1(di\014cation)m 20(of)m 19(rou-)m 45 852 p (tines)s 17(from)m 17 r 70 c -3(ullert)m -1(on's)m 16 r 119 c (ell-kno)s -1(wn)m 15(FNLIB)m 17(pac)m 107 c -3(age.)m 23(The)m 17(new)m 17(routines)m 18(allo)m 119 c 16(users)m 17(to)m 18(sp)m 1(ecify)m 45 912 p (an)s 22(arra)m 121 c 20(of)m 22(argumen)m (ts)s 20(at)m 22(whic)m 104 c 20(to)m 21(ev)m -2(aluate)m 21(the)m 21(functions,)m 22(and)m 22(the)m 21(algorithms)m 21(ha)m 118 c 101 c 19 r 98 c 1(een)m 45 972 p 99 c (hanged)s 19(to)m 20(allo)m 119 c 19(e\013ectiv)m -1 r 101 c 17 r 118 c (ectorization)s 18(when)m 20(this)m 19(is)m 20(the)m 20(case.)m 31(Sp)m 1(eedups)m 21(of)m 20(from)m 19(13)m 21(to)m 20(22)m 45 1033 p 111 c 118 c -1(er)m 11(use)m 13(of)m 13(the)m 12(original)m 13(FNLIB)m 12(ha)m 118 c -1 r 101 c 11 r 98 c 1(een)m 13(observ)m (ed)s 11(for)m 13(the)m 13(VFNLIB)m 11(co)m 1(des)m 13(on)m 13(the)m 13(Cra)m 121 c 12(Y-MP)m -3 r 46 c 45 1093 p (Mo)s 1(dest)m 21(sp)m 1(eedups)m 20 r 119 c (ere)s 19(also)m 21(observ)m (ed)s 18(on)m 21(the)m 20(Sun)m 20(SP)m -3(AR)m (Cstation)s 19(1+,)m 21 r 97 c 20(scalar)m 21 r 119 c (orkstation.)s 45 1153 p (The)s 16 r 118 c (ectorizati)s -1(on)m 15(tec)m (hnique)s -1 r 115 c 15(emplo)m 121 c -2(ed)m 14(in)m 16(VFNLIB)m 15(extend)m 16(to)m 16(man)m 121 c 15(other)m 16(FNLIB)m 16(routines.)m cmbx10.518 @sf 45 1317 p (References)s cmr12.300 @sf 69 1427 p ([1])s 24(M.)m 19(Abramo)m (witz)s 18(and)m 20(I.)m 18(A.)m 19(Stegun,)m 20(editors.)m cmti12.300 @sf 30(Handb)m -1 r 111 c -1(ok)m 19(of)m 20(Mathematic)m -1(al)m 20 r 70 c -3(unctions)m 21(with)m 145 1487 p 70 c -3(ormulas,)m 16(Gr)m -1(aphs)m -1 r 44 c 15(and)m 18(Mathematic)m -1(al)m 16 r 84 c -3(ables)m cmr12.300 @sf 46 c 21(U.)m 15(S.)m 15(Go)m 118 c (ernm)s -1(en)m -1 r 116 c 13(Prin)m (ting)s 15(O\016ce,)m 14 r 87 c -3(ash-)m 145 1547 p (ington,)s 17(D.C.,)m 15(1964.)m 69 1644 p ([2])s 24(B.)m 21(L.)m 22(Buzb)m 1(ee.)m 38(The)m 22(SLA)m -3(TEC)m 22(common)m 22(mathematical)m 21(library)m -3 r 46 c 36(In)m 22(W.)m 22(R.)m 21(Co)m 119 c (ell)s -1 r 44 c 21(edi-)m 145 1705 p (tor,)s cmti12.300 @sf 16(Sour)m -1 r 99 c -1(es)m 15(and)m 18(Development)m 20(of)m 17(Mathematic)m -1(al)m 16(Softwar)m -1 r 101 c cmr12.300 @sf 44 c 15(pages)m 17(302{31)m 1(8.)m 18(Pren)m (tic)s -1(e-Hall)m -1 r 44 c 145 1765 p (Englew)s 111 c 1 r 111 c 1 r 100 c 17(Cli\013s,)m 16(NJ,)m 15(1984.)m 69 1862 p ([3])s 24(C.)m 12(W.)m 11(Clensha)m (w.)s 18 r 65 c 12(note)m 11(on)m 12(the)m 12(summation)m 11(of)m 12(Cheb)m (yshev)s 10(series.)m cmti12.300 @sf 19(M.)m 13(T.)m 13(A.)m 13(C.)m cmr12.300 @sf 44 c 12(9:118{120,)m 145 1923 p (1955.)s 69 2020 p ([4])s 24(Con)m 118 c (ex)s 19(Computer)m 22(Corp)m 1(oration,)m 24(Ric)m (hardson,)s 22(TX.)m cmti12.300 @sf 37(CONVEX)m 23(VECLIB)m 22(User's)m 22(Guide)m cmr12.300 @sf 44 c 145 2080 p (third)s 16(edition,)m 15(Octob)m 1(er)m 17(1988.)m 69 2178 p ([5])s 24(D.)m 18(S.)m 17(Do)m 1(dson,)m 19(R.)m 17(G.)m 18(Grimes,)m 17(and)m 18(J.)m 17(G.)m 17(Lewis.)m 26(Algorithm)m 17(692:)m 25(Mo)m 1(del)m 17(implemen)m -1(tati)m -1(on)m 145 2238 p (and)s 19(test)m 18(pac)m 107 c -2(age)m 17(for)m 18(the)m 19(sparse)m 18(basic)m 19(linear)m 17(algebra)m 19(subprograms.)m cmti12.300 @sf 29 r 65 c (CM)s 18 r 84 c -3 r 114 c -2(ans.)m 17(Math.)m 145 2298 p (Softw.)s cmr12.300 @sf 44 c 17(17:264{272)m 1 r 44 c 18(1991.)m 69 2395 p ([6])s 24(J.)m 24(J.)m 24(Dongarra.)m 47 r 80 c (erformance)s 22(of)m 25 r 118 c -2(arious)m 23(computers)m 24(using)m 25(standard)m 25(linear)m 24(equations)m 145 2456 p (soft)s 119 c (are.)s 34(Computer)m 21(Science)m 20(Departmen)m 116 c 19(Rep)m 1(ort)m 22(CS{89{85,)m 24(Univ)m (e)s -1(rsit)m -1 r 121 c 18(of)m 22 r 84 c -3(ennessee,)m 145 2516 p (August)s 17(1990.)m 69 2613 p ([7])s 24(J.)m 14(J.)m 13(Dongarra)m 16(and)m 15(E.)m 13(Grosse.)m 22(Distribution)m 13(of)m 14(mathematical)m 13(soft)m 119 c (are)s 12(via)m 14(electonic)m 12(mail.)m cmti12.300 @sf 145 2674 p (Comm.)s 17 r 65 c (CM)s cmr12.300 @sf 44 c 14(30:403{4)m 1(07,)m 18(1987.)m 996 2843 p (14)s @eop %%Page: 15 15 15 @bop0 cmti12.300 @sf [ 32 34 -3 0 33.047] 80 @dc [ 32 49 0 12 24.906] 47 @dc [<3FFE00003FFE000003E0000001E0000001E0000001E0000000F0000000F0000000F0000000F000 0000780000007800000078000000780000007C0000007E000000FF000000FB000000F1800000F0 C00001F0E00001E0600001E0300003E0180003C01C0003C00E0007C0060007800300078001800F 8001C00F0000E01F8001F8FFF003FFFFF003FF> 32 34 -10 0 36.206] 89 @dc [ 16 21 -6 0 14.944] 58 @dc [ 16 3 -3 -9 17.434] 45 @dc [<7FC000FFF000F0F800F03C00701E00001E00000E00000F00000F0000070003E70007FF800F3F80 0E0F801E07801E03C01E03C01E01C01E01C01F01E00F01E00F00E00F00E00F80F00780F003C0F0 03C0F001E0F800F1F8007FB8001F38> 24 31 -2 10 22.416] 103 @dc 15 @bop1 cmr12.300 @sf 69 90 p ([8])s 24(L.)m 19 r 70 c -3 r 111 c 120 c 16(and)m 19(I.)m 18(B.)m 18 r 80 c (ark)s -1(er.)m cmti12.300 @sf 26(Chebyshev)m 21(Polynomials)m 20(in)m 20(Numeric)m -1(al)m 19 r 65 c (nalysis)s cmr12.300 @sf 46 c 27(Oxford)m 18(Uni-)m 145 150 p 118 c (ersit)s -1 r 121 c 14(Press,)m 16(London,)m 17(1979.)m 69 252 p ([9])s 24 r 80 c -3 r 46 c 18(A.)m 19 r 70 c -3 r 111 c (x,)s 17(A.)m 19(D.)m 19(Hall,)m 19(and)m 20(N.)m 19(L.)m 19(Sc)m (hry)s -1(er.)m 29(Algorithm)m 18(528:)m 29(Framew)m (ork)s 18(for)m 20 r 97 c 19 r 112 c 1(ortable)m 145 312 p (library)s -3 r 46 c cmti12.300 @sf 20 r 65 c (CM)s 16 r 84 c -3 r 114 c -2(ans.)m 15(Math.)m 17(Softw.)m cmr12.300 @sf 44 c 17(4:177{188)m 1 r 44 c 17(1978.)m 45 414 p ([10])s 24(L.)m 15(W.)m 14 r 70 c -3(ulle)m -1(rton.)m 19 r 80 c (ortable)s 13(sp)m 1(ecial)m 14(function)m 14(routines.)m 21(In)m 14(W.)m 14(Co)m 119 c (el)s -1(l,)m 12(editor,)m cmti12.300 @sf 14(Portability)m 16(of)m 145 474 p (Numeric)s -1(al)m 18(Softwar)m -1 r 101 c cmr12.300 @sf 44 c 17 r 118 c (olume)s 16(57)m 18(of)m cmti12.300 @sf 18 r 76 c -1 r 101 c -2(ctur)m -2 r 101 c 17(Notes)m 20(in)m 19(Computer)m 19(Scienc)m -1 r 101 c cmr12.300 @sf 44 c 18(pages)m 19(452{483.)m 145 534 p (Springer{V)s -3(erlag,)m 15(New)m 15 r 89 c -3(ork,)m 15(1976.)m 45 636 p ([11])s 24(IMSL)m 19(Inc.,)m 18(2500)m 21(Cit)m (yW)s -4(est)m 17(Blvd.,)m 18(Houston,)m 19(TX)m 19(77042-3)m 1(02)m 1(0.)m cmti12.300 @sf 31(SFUN/LIBRAR)m -3(Y:)m 19 r 70 c (OR-)s 145 696 p (TRAN)s 18(Subr)m -1(outines)m 17(for)m 17(Evaluating)m 19(Sp)m -1 r 101 c -1(cial)m 16 r 70 c -3(unctions)m cmr12.300 @sf 44 c 16(April)m 15(1987.)m 23 r 86 c -3(ersion)m 14(2.0.)m 45 798 p ([12])s 24(S.)m 19 r 87 c -3(olfram.)m cmti12.300 @sf 29(Mathematic)m -1(a,)m 19 r 65 c 21(System)m 20(for)m 20(Doing)m 20(Mathematics)m 21(by)m 20(Computer)m cmr12.300 @sf 46 c 30(Addison-)m 145 858 p 87 c -3(esley)m -4 r 44 c 14(Redw)m 111 c 1 r 111 c 1 r 100 c 16(Cit)m 121 c -4 r 44 c 14(CA,)m 16(1988.)m 996 2843 p (15)s @eop @end .