apl>" <-APL2-------------------- sam304.txt ----------------------------> apl>)run cap2/sample/graph.inc apl>" <-APL2-------------------- graph.txt -----------------------------> apl>" Legend describing various global values: apl>" apl>" World coordinates(wc) are those of the real data. apl>" Graph coordinates(gc) are those of the graph. apl>" apl>" caption - Override to text for graph caption. If null, a caption apl>" will be generated. The graph function resets the global apl>" caption variable to null at the end of its processing. apl>" apl>" hk ------ Constant coefficient of input. If xr=1 (see below) then apl>" hk becomes the constant imaginary coefficient for all apl>" values of x on the graph. If xr=0, hk will be the constant apl>" real coefficient. apl>" apl>" htl ----- 0 = both, 1 = headers, 2 = trailers, 3 = neither. apl>" apl>" maxx ---- Maximum x axis value in world coordinates. apl>" apl>" maxy ---- Maximum y axis value in world coordinates. apl>" apl>" minx ---- Minimum x axis value in world coordinates. apl>" apl>" miny ---- Minimum y axis value in world coordinates. apl>" apl>" mgc ----- Vertical margin in graphic coordinates. apl>" apl>" n ------- Synonymous with hk (see above). The x values to which apl>" the function is applied to obtain y values are derived apl>" by first creating xwc as a vector of integers uniformly apl>" distributed between minx and maxx inclusive. Then, either apl>" 'x#(nX0j1)+xwc' or 'x#n+0j1Xxwc' is evaluated. apl>" apl>" nlb ----- 1 = Label the curve with the n value. apl>" apl>" points -- Number of points to generate. apl>" apl>" xgc ----- Array of x values for data points in graph coordinates. apl>" apl>" xiv ----- x axis marker interval in world coordinates. apl>" apl>" xlin ---- Width of graph in inches. apl>" apl>" xpg ----- Divide xwc by xpg to get xgc. apl>" apl>" xpi ----- Array of three values for minx, maxx, and xiv, used when apl>" invoking the graph function and the array of x values apl>" spans -pi to +pi. apl>" apl>" xr ------ 1=vary real x coefficient, 0=vary imaginary coefficient, apl>" holding the other coefficient to the constant hk (see above.). apl>" apl>" xt ------ Used in a variety of places to temporarily generate apl>" graphics coordinates. apl>" apl>" xwc ----- Array of x values in world coordinates. apl>" apl>" yadj ---- Adjustment down to print text below a line. apl>" apl>" yabm ---- Maximum absolute value (|y) to appear on graph. apl>" apl>" ygc ----- Array of y values for data points in graph coordinates. apl>" apl>" ylin ---- Height of graph in inches. apl>" apl>" ymgn ---- Margin in inches at top and bottom of y axis. apl>" apl>" ypg ----- Divide ywc by ypg to get ygc. apl>" apl>" yt ------ Used in a variety of places to temporarily generate apl>" graphics coordinates. apl>" apl>" ywc ----- Array of y values for data points in world coordinates. apl>" apl>" Set global values. --------------------------------------------> apl>" apl>caption#'' " Empty caption causes one to be generated. apl>i#11 " Circle function code to extract imag. coef. of complex number. apl>points#200 " Number of data points to generate on graph. apl>r#9 " Circle function code to extract real coef. of complex number. apl>xlin#4.5 " Width of graph in inches. apl>" minx = -3.14159.... apl>" | maxx = 3.14159.... apl>" | | xiv apl>" | | | apl>" V V V apl>xpi#(O-1),(O1),O.25 apl>ylin#6 " Height of graph in inches. apl>ymgn#.2 " Margin in inches at top and bottom of y axis. apl>" apl>" <-----------------------------------------------------------------> apl>" Generates the LaTeX \put statements for the data points to appear apl>" on the graph. apl>" apl>Lex 'dodata' 1 apl>Gdodata [1] xgc#(xwc_minx)%xpg " xgc=x graphic coordinates for data points. [2] ygc#mgc+(ywc_miny)%ypg " ygc=y graphic coordinates for data points. [3] $bylabXI0=nlb " Branch if the curve is not to be labelled. [4] '%Label the curve' [5] xt#1Y(u=S/u#|ywc)/xgc " x coord where maximum/mininum occurs [6] yt#(_yadjX0>vs/ywc)+(vs#xt=xgc)/ygc " y coord of maximum/minimum [7] " Note: Calculation for yt works only if all minima occur below [8] " y axis, and all maxima occur above. [9] pcon,(xt,',',[1.5]yt),`Z'){n\#',(Fhk),'}' [10] bylab:'%Draw the data points' [11] pcon,((xgc#-1U1Uxgc),',',[1.5](ygc#-1U1Uygc)),circon [12] G apl>" <-----------------------------------------------------------------> apl>" Generate xwc and ywc, the arrays of x/y coordinates for the data apl>" points to appear on the graph. apl>" apl>Lex 'genxy' 1 apl>Ggenxy [1] xwc#minx+(xlwc#maxx_minx)X(-1+Ipoints+1)%points [2] $varyrealXIxr [3] x#hk+0j1Xxwc " real part is constant, imaginary varies. [4] $calcy " Branch to compute values of y for data points. [5] varyreal:x#(hkX0j1)+xwc " Imaginary is constant, real varies. [6] calcy:ywc#eOCfun " Compute values of y for data points [7] ywcm#yabm>|ywc " Mask of keepers, magnitudes of y < yabm. [8] xwc#ywcm/xwc " Pick the keepers. [9] ywc#ywcm/ywc " Pick the keepers. [10] G apl>" apl>" <-----------------------------------------------------------------> apl>" Main graph routine. apl>" apl>Lex 'graph' 1 apl>Gfun graph a [1] "Graphs the imaginary or real coefficient of result of fun. [2] " fun = expression to evaluate. [3] (htl nlb xr e yabm minx maxx xiv hk yiv yca)#a [4] genxy " Generate the data points. [5] $dataXIhtl>1 " Branch if htl greater than 1. [6] scale " Calculate global scaling values. [7] headers " Generate LaTeX figure headers. [8] data:dodata " Process and graph data points. [9] trailers " Generate Latex figure trailers, maybe. [10] G apl>" apl>" <-----------------------------------------------------------------> apl>" Generates the LaTeX statements to begin the graph. apl>" apl>Lex 'headers' 1 apl>Gheaders [1] '\begin{figure}[tbh]' [2] $gencapXI0=Rcaption " Branch if no caption override. [3] '\caption{',caption,'}' [4] $begin [5] gencap:$realcapXI(xr=1)&hk=0 " Branch if x data are not complex. [6] $ncaptionXInlb=0 " Branch if curves are not labelled with n value. [7] '\caption{Graph of y\#',(Fe),'O',fun,'+nX0j1}' [8] $begin [9] ncaption:$cplxcapXIxr " Branch if varying real coefficient. [10] '\caption{Graph of y\#',(Fe),'O',(-1Ufun),(Fhk),'+xX0j1}' [11] $begin [12] cplxcap:'\caption{Graph of y\#',(Fe),'O',fun,'+(n\#',(Fhk),')X0j1}' [13] $begin [14] realcap:'\caption{Graph of y\#',fun,'}' [15] begin:'\begin{center}' [16] '\setlength{\unitlength}{',(Flin),'in}' [17] '\begin{picture}(',(Fxlin%lin),',',(Fylin%lin),')' [18] '%Draw a frame around the picture' [19] ' \put(0,0){\line(1,0){',(Fxlgc),'}}% bottom' [20] ' \put(0,0){\line(0,1){',(Fylgc),'}}% left' [21] ' \put(0,',(Fylgc),'){\line(1,0){',(Fxlgc),'}}% top' [22] ' \put(',(Fxlgc),',0){\line(0,1){',(Fylgc),'}}% right' [23] '%Draw the x axis' [24] ' \put(0,',(Fxax),'){\line(1,0){',(Fxlgc),'}}%x axis' [25] xt#xoff%xpg [26] pcon,((xt,[1.5]','),xax),circon " Draw the x axis markers. [27] xt#xt_xpgX.1Xxmk<0 [28] yt#xax+((.05%lin)Xxax=mgc)_yadjXxax>mgc [29] $dopaxXIpix [30] '%Draw the x axis marker values' [31] pcon,xt,',',yt,econ,xmk,[1.5]scon [32] $doyax [33] dopax:'%Draw the x axis marker values in pi' [34] picon#(`Z'\frac{') ,`1 '\pi}{4}' '\pi}{2}' '3\pi}{4}' [35] picon#('-',`1`Rpicon),'0',picon [36] pcon,xt,',',yt,econ,picon,[1.5]scon [37] doyax:'%Draw the y axis' [38] $putymkXI(yax=0) [39] ' \put(',(Fyax),',0){\line(0,1){',(Fylgc),'}}%y axis' [40] putymk:'%Draw the y axis markers' [41] ymask#ymk^=0 [42] yt#ymask/mgc+(ymk_miny)%ypg [43] pcon,yax,',',yt,[1.5]circon [44] '%Draw the y axis marker values' [45] xt#yax+.05%lin [46] yt#yt_ypgX.1X(ymask/ymk)<0 [47] pcon,xt,',',yt,econ,(ymask/ymk),[1.5]scon [48] G apl>" apl>" <-----------------------------------------------------------------> apl>" Calculates a variety of values needed to produce the graph. apl>" apl>Lex 'scale' 1 apl>Gscale [1] $byyXIyca " Branch if ylwc, maxy, miny are precalculated. [2] ylwc#(maxy#S/ywc)_miny#D/ywc [3] byy:ylap#ylin_2Xymgn " ylap=height allowed for data points. [4] lin#(xlin%xlwc)Dylap%ylwc " unitlength in inches. [5] yadj#.14%lin " y graphic coordinate adjustment to print text below line. [6] mgc#ymgn%lin " Margin in graph coordinates. [7] xpg#xlwc%xlgc#xlin%lin " Divide xwc by xpg to get gc. [8] ypg#ylwc%(_2Xymgn%lin)+ylgc#ylin%lin " Divide ywc by ypg to get gc. [9] xax#(yz#(minyK0)&maxyZ0)Xmgc+(|miny)%ypg " xaxis in graph coordinates. [10] yax#(xz#(minx<0)&maxx>0)X(|minx)%xpg " yaxis in graph coordinates. [11] $piaxisXIpix#(minx=O-1)&maxx=O1 " branch if pi units on x axis. [12] xic#(yax=0)+Dxlwc%xiv [13] $doyiv [14] piaxis:xic#Dxlwc%xiv#O.25 [15] doyiv:$doyicXIyiv^=0 [16] yiv#10*D10@ylwc [17] doyic:yic#yic+0=2|yic#Dylwc%yiv [18] xoff#(I-1+xic)Xxiv " Offset from minx in world coord. of x markers. [19] yoff#(_yiv)+(Iyic)Xyiv " Offset from miny in world coord. of y markers. [20] $yoffplusXIminy>0 [21] ymk#yoff+miny+yiv||miny [22] $yoffdone [23] yoffplus:ymk#yoff+miny_yiv|miny " y for y axis markers in world coord. [24] yoffdone:xmk#minx+xoff " x for x axis markers in world coord. [25] circon#`Z'){\circle*{',(F.0205%lin),'}}' [26] scon#`Z'$}' [27] econ#`Z'){$' [28] pcon#`Z' \put(' [29] G apl>" apl>" <-----------------------------------------------------------------> apl>" Generates the LaTeX statements to finish the graph. apl>" apl>Lex 'trailers' 1 apl>Gtrailers [1] $epicXIhtl=0 " Branch if both headers and trailers. [2] $eojckXInlb " Branch if graph already labelled. [3] pcon,(1Yxgc+xpgX.1),',',(1Yygc),'){',fun,'}' " Label the graph. [4] eojck:$eojXI(htl=1)+htl=3 " br if headers only, or neither. [5] epic:'\end{picture}' [6] '\end{center}' [7] eoj:'%Finis.' [8] caption#'' " Reset global caption [9] G apl>" htl: 0=both, 1=headers, 2=trailers, 3=neither. apl>" | nlb 1 = Label the curve. apl>" | | xr = 1=vary real x coeff, 0=vary imaginary coeff. apl>" | | | e = i(11) or r(9) to select coefficient to graph. apl>" | | | | yabm = maximum |y printed on graph. apl>" | | | | | minx = minimum value of x. apl>" | | | | | | maxx = maximum value of x. apl>" | | | | | | | xiv = x axis marker interval. apl>" | | | | | | | | hk = Constant coefficient of input. apl>" | | | | | | | | | yiv = y axis marker interval, or 0. apl>" | | | | | | | | | | yca = ylwc, maxy, miny are precalculated. apl>" | | | | | | | | | | | apl>" V V V V V V V V V V V apl> '*x' graph 0,0,1,r,1e6,-5,5,1,1,10,0 " expdatx.tex \begin{figure}[tbh] \caption{Graph of y\#9O*x+(n\#1)X0j1} \begin{center} \setlength{\unitlength}{ .06983908in} \begin{picture}(64.43384,85.91178) %Draw a frame around the picture \put(0,0){\line(1,0){64.43384}}% bottom \put(0,0){\line(0,1){85.91178}}% left \put(0,85.91178){\line(1,0){64.43384}}% top \put(64.43384,0){\line(0,1){85.91178}}% right %Draw the x axis \put(0,0){\line(1,0){64.43384}}%x axis \put( 6.443384 , 0 ){\circle*{ .29353193}} \put( 12.88677 , 0 ){\circle*{ .29353193}} \put( 19.33015 , 0 ){\circle*{ .29353193}} \put( 25.77354 , 0 ){\circle*{ .29353193}} \put( 32.21692 , 0 ){\circle*{ .29353193}} \put( 38.6603 , 0 ){\circle*{ .29353193}} \put( 45.10369 , 0 ){\circle*{ .29353193}} \put( 51.54707 , 0 ){\circle*{ .29353193}} \put( 57.99045 , 0 ){\circle*{ .29353193}} %Draw the x axis marker values \put( 6.427864 , 0 ){$ -4 $} \put( 12.87125 , 0 ){$ -3 $} \put( 19.31463 , 0 ){$ -2 $} \put( 25.75802 , 0 ){$ -1 $} \put( 32.21692 , 0 ){$ 0 $} \put( 38.6603 , 0 ){$ 1 $} \put( 45.10369 , 0 ){$ 2 $} \put( 51.54707 , 0 ){$ 3 $} \put( 57.99045 , 0 ){$ 4 $} %Draw the y axis \put(32.21692,0){\line(0,1){85.91178}}%y axis %Draw the y axis markers \put( 32.21692 , 12.86009 ){\circle*{ .29353193}} \put( 32.21692 , 22.86009 ){\circle*{ .29353193}} \put( 32.21692 , 32.86009 ){\circle*{ .29353193}} \put( 32.21692 , 42.86009 ){\circle*{ .29353193}} \put( 32.21692 , 52.86009 ){\circle*{ .29353193}} \put( 32.21692 , 62.86009 ){\circle*{ .29353193}} \put( 32.21692 , 72.86009 ){\circle*{ .29353193}} \put( 32.21692 , 82.86009 ){\circle*{ .29353193}} %Draw the y axis marker values \put( 32.93285 , 12.86009 ){$ 10 $} \put( 32.93285 , 22.86009 ){$ 20 $} \put( 32.93285 , 32.86009 ){$ 30 $} \put( 32.93285 , 42.86009 ){$ 40 $} \put( 32.93285 , 52.86009 ){$ 50 $} \put( 32.93285 , 62.86009 ){$ 60 $} \put( 32.93285 , 72.86009 ){$ 70 $} \put( 32.93285 , 82.86009 ){$ 80 $} %Draw the data points \put( .32216919 , 2.863913 ){\circle*{ .29353193}} \put( .644338 , 2.864109 ){\circle*{ .29353193}} \put( .966508 , 2.864315 ){\circle*{ .29353193}} \put( 1.288677 , 2.864532 ){\circle*{ .29353193}} \put( 1.610846 , 2.86476 ){\circle*{ .29353193}} \put( 1.933015 , 2.865000 ){\circle*{ .29353193}} \put( 2.255184 , 2.865252 ){\circle*{ .29353193}} \put( 2.577354 , 2.865517 ){\circle*{ .29353193}} \put( 2.899523 , 2.865795 ){\circle*{ .29353193}} \put( 3.221692 , 2.866088 ){\circle*{ .29353193}} \put( 3.543861 , 2.866396 ){\circle*{ .29353193}} \put( 3.86603 , 2.866719 ){\circle*{ .29353193}} \put( 4.188199 , 2.867059 ){\circle*{ .29353193}} \put( 4.510369 , 2.867417 ){\circle*{ .29353193}} \put( 4.832538 , 2.867793 ){\circle*{ .29353193}} \put( 5.154707 , 2.868188 ){\circle*{ .29353193}} \put( 5.476876 , 2.868603 ){\circle*{ .29353193}} \put( 5.799045 , 2.869040 ){\circle*{ .29353193}} \put( 6.121215 , 2.869499 ){\circle*{ .29353193}} \put( 6.443384 , 2.869982 ){\circle*{ .29353193}} \put( 6.765553 , 2.870489 ){\circle*{ .29353193}} \put( 7.087722 , 2.871022 ){\circle*{ .29353193}} \put( 7.409891 , 2.871583 ){\circle*{ .29353193}} \put( 7.73206 , 2.872173 ){\circle*{ .29353193}} \put( 8.054230 , 2.872792 ){\circle*{ .29353193}} \put( 8.376399 , 2.873444 ){\circle*{ .29353193}} \put( 8.698568 , 2.874129 ){\circle*{ .29353193}} \put( 9.020737 , 2.874849 ){\circle*{ .29353193}} \put( 9.342906 , 2.875606 ){\circle*{ .29353193}} \put( 9.66508 , 2.876401 ){\circle*{ .29353193}} \put( 9.98724 , 2.877238 ){\circle*{ .29353193}} \put( 10.30941 , 2.878117 ){\circle*{ .29353193}} \put( 10.63158 , 2.879042 ){\circle*{ .29353193}} \put( 10.95375 , 2.880014 ){\circle*{ .29353193}} \put( 11.27592 , 2.881035 ){\circle*{ .29353193}} \put( 11.59809 , 2.882110 ){\circle*{ .29353193}} \put( 11.92026 , 2.883239 ){\circle*{ .29353193}} \put( 12.24243 , 2.884426 ){\circle*{ .29353193}} \put( 12.56460 , 2.885674 ){\circle*{ .29353193}} \put( 12.88677 , 2.886986 ){\circle*{ .29353193}} \put( 13.20894 , 2.888365 ){\circle*{ .29353193}} \put( 13.5311 , 2.889815 ){\circle*{ .29353193}} \put( 13.85328 , 2.891339 ){\circle*{ .29353193}} \put( 14.17544 , 2.892941 ){\circle*{ .29353193}} \put( 14.49761 , 2.894626 ){\circle*{ .29353193}} \put( 14.81978 , 2.896397 ){\circle*{ .29353193}} \put( 15.14195 , 2.898259 ){\circle*{ .29353193}} \put( 15.46412 , 2.900216 ){\circle*{ .29353193}} \put( 15.78629 , 2.902273 ){\circle*{ .29353193}} \put( 16.10846 , 2.904436 ){\circle*{ .29353193}} \put( 16.43063 , 2.90671 ){\circle*{ .29353193}} \put( 16.75280 , 2.9091 ){\circle*{ .29353193}} \put( 17.07497 , 2.911614 ){\circle*{ .29353193}} \put( 17.39714 , 2.914256 ){\circle*{ .29353193}} \put( 17.7193 , 2.917033 ){\circle*{ .29353193}} \put( 18.04147 , 2.919953 ){\circle*{ .29353193}} \put( 18.36364 , 2.923022 ){\circle*{ .29353193}} \put( 18.68581 , 2.926249 ){\circle*{ .29353193}} \put( 19.00798 , 2.929641 ){\circle*{ .29353193}} \put( 19.33015 , 2.933208 ){\circle*{ .29353193}} \put( 19.65232 , 2.936957 ){\circle*{ .29353193}} \put( 19.97449 , 2.940898 ){\circle*{ .29353193}} \put( 20.29666 , 2.945041 ){\circle*{ .29353193}} \put( 20.61883 , 2.949397 ){\circle*{ .29353193}} \put( 20.94100 , 2.953976 ){\circle*{ .29353193}} \put( 21.26317 , 2.95879 ){\circle*{ .29353193}} \put( 21.58534 , 2.96385 ){\circle*{ .29353193}} \put( 21.9075 , 2.96917 ){\circle*{ .29353193}} \put( 22.22967 , 2.974764 ){\circle*{ .29353193}} \put( 22.55184 , 2.980643 ){\circle*{ .29353193}} \put( 22.87401 , 2.986824 ){\circle*{ .29353193}} \put( 23.19618 , 2.993323 ){\circle*{ .29353193}} \put( 23.51835 , 3.000154 ){\circle*{ .29353193}} \put( 23.84052 , 3.007335 ){\circle*{ .29353193}} \put( 24.16269 , 3.014885 ){\circle*{ .29353193}} \put( 24.48486 , 3.022822 ){\circle*{ .29353193}} \put( 24.80703 , 3.031165 ){\circle*{ .29353193}} \put( 25.12920 , 3.039937 ){\circle*{ .29353193}} \put( 25.45137 , 3.049158 ){\circle*{ .29353193}} \put( 25.77354 , 3.058852 ){\circle*{ .29353193}} \put( 26.0957 , 3.069043 ){\circle*{ .29353193}} \put( 26.41787 , 3.079756 ){\circle*{ .29353193}} \put( 26.74004 , 3.091019 ){\circle*{ .29353193}} \put( 27.06221 , 3.102859 ){\circle*{ .29353193}} \put( 27.38438 , 3.115306 ){\circle*{ .29353193}} \put( 27.70655 , 3.128392 ){\circle*{ .29353193}} \put( 28.02872 , 3.142148 ){\circle*{ .29353193}} \put( 28.35089 , 3.156610 ){\circle*{ .29353193}} \put( 28.67306 , 3.171813 ){\circle*{ .29353193}} \put( 28.99523 , 3.187796 ){\circle*{ .29353193}} \put( 29.31740 , 3.204598 ){\circle*{ .29353193}} \put( 29.63957 , 3.222261 ){\circle*{ .29353193}} \put( 29.96173 , 3.24083 ){\circle*{ .29353193}} \put( 30.2839 , 3.260351 ){\circle*{ .29353193}} \put( 30.60607 , 3.280873 ){\circle*{ .29353193}} \put( 30.92824 , 3.302448 ){\circle*{ .29353193}} \put( 31.25041 , 3.325128 ){\circle*{ .29353193}} \put( 31.57258 , 3.348971 ){\circle*{ .29353193}} \put( 31.89475 , 3.374037 ){\circle*{ .29353193}} \put( 32.21692 , 3.400388 ){\circle*{ .29353193}} \put( 32.53909 , 3.428090 ){\circle*{ .29353193}} \put( 32.86126 , 3.457212 ){\circle*{ .29353193}} \put( 33.18343 , 3.487827 ){\circle*{ .29353193}} \put( 33.50560 , 3.520012 ){\circle*{ .29353193}} \put( 33.82776 , 3.553847 ){\circle*{ .29353193}} \put( 34.14993 , 3.589417 ){\circle*{ .29353193}} \put( 34.4721 , 3.626811 ){\circle*{ .29353193}} \put( 34.79427 , 3.666122 ){\circle*{ .29353193}} \put( 35.11644 , 3.707448 ){\circle*{ .29353193}} \put( 35.43861 , 3.750894 ){\circle*{ .29353193}} \put( 35.76078 , 3.796566 ){\circle*{ .29353193}} \put( 36.08295 , 3.84458 ){\circle*{ .29353193}} \put( 36.40512 , 3.895057 ){\circle*{ .29353193}} \put( 36.72729 , 3.94812 ){\circle*{ .29353193}} \put( 37.04946 , 4.003906 ){\circle*{ .29353193}} \put( 37.37163 , 4.06255 ){\circle*{ .29353193}} \put( 37.69380 , 4.124202 ){\circle*{ .29353193}} \put( 38.01596 , 4.189015 ){\circle*{ .29353193}} \put( 38.33813 , 4.25715 ){\circle*{ .29353193}} \put( 38.6603 , 4.328780 ){\circle*{ .29353193}} \put( 38.98247 , 4.404081 ){\circle*{ .29353193}} \put( 39.30464 , 4.483243 ){\circle*{ .29353193}} \put( 39.62681 , 4.566465 ){\circle*{ .29353193}} \put( 39.94898 , 4.653952 ){\circle*{ .29353193}} \put( 40.27115 , 4.745926 ){\circle*{ .29353193}} \put( 40.59332 , 4.842615 ){\circle*{ .29353193}} \put( 40.91549 , 4.944262 ){\circle*{ .29353193}} \put( 41.23766 , 5.051119 ){\circle*{ .29353193}} \put( 41.55983 , 5.163456 ){\circle*{ .29353193}} \put( 41.88199 , 5.281553 ){\circle*{ .29353193}} \put( 42.20416 , 5.405704 ){\circle*{ .29353193}} \put( 42.52633 , 5.53622 ){\circle*{ .29353193}} \put( 42.8485 , 5.673429 ){\circle*{ .29353193}} \put( 43.17067 , 5.817672 ){\circle*{ .29353193}} \put( 43.49284 , 5.96931 ){\circle*{ .29353193}} \put( 43.81501 , 6.128724 ){\circle*{ .29353193}} \put( 44.13718 , 6.29631 ){\circle*{ .29353193}} \put( 44.45935 , 6.472490 ){\circle*{ .29353193}} \put( 44.78152 , 6.657702 ){\circle*{ .29353193}} \put( 45.10369 , 6.852410 ){\circle*{ .29353193}} \put( 45.42586 , 7.0571 ){\circle*{ .29353193}} \put( 45.74802 , 7.272286 ){\circle*{ .29353193}} \put( 46.07019 , 7.498504 ){\circle*{ .29353193}} \put( 46.39236 , 7.736321 ){\circle*{ .29353193}} \put( 46.71453 , 7.986331 ){\circle*{ .29353193}} \put( 47.0367 , 8.249159 ){\circle*{ .29353193}} \put( 47.35887 , 8.525463 ){\circle*{ .29353193}} \put( 47.68104 , 8.815933 ){\circle*{ .29353193}} \put( 48.00321 , 9.121296 ){\circle*{ .29353193}} \put( 48.32538 , 9.442315 ){\circle*{ .29353193}} \put( 48.64755 , 9.77979 ){\circle*{ .29353193}} \put( 48.96972 , 10.13457 ){\circle*{ .29353193}} \put( 49.29189 , 10.50755 ){\circle*{ .29353193}} \put( 49.61406 , 10.89964 ){\circle*{ .29353193}} \put( 49.93622 , 11.31184 ){\circle*{ .29353193}} \put( 50.25839 , 11.74517 ){\circle*{ .29353193}} \put( 50.58056 , 12.20071 ){\circle*{ .29353193}} \put( 50.90273 , 12.67962 ){\circle*{ .29353193}} \put( 51.2249 , 13.18308 ){\circle*{ .29353193}} \put( 51.54707 , 13.71235 ){\circle*{ .29353193}} \put( 51.86924 , 14.26875 ){\circle*{ .29353193}} \put( 52.1914 , 14.85369 ){\circle*{ .29353193}} \put( 52.51358 , 15.46862 ){\circle*{ .29353193}} \put( 52.83575 , 16.11507 ){\circle*{ .29353193}} \put( 53.15792 , 16.79467 ){\circle*{ .29353193}} \put( 53.48009 , 17.5091 ){\circle*{ .29353193}} \put( 53.80225 , 18.26018 ){\circle*{ .29353193}} \put( 54.12442 , 19.04976 ){\circle*{ .29353193}} \put( 54.44659 , 19.87982 ){\circle*{ .29353193}} \put( 54.76876 , 20.75244 ){\circle*{ .29353193}} \put( 55.09093 , 21.6698 ){\circle*{ .29353193}} \put( 55.4131 , 22.63420 ){\circle*{ .29353193}} \put( 55.73527 , 23.64804 ){\circle*{ .29353193}} \put( 56.05744 , 24.71386 ){\circle*{ .29353193}} \put( 56.3796 , 25.83432 ){\circle*{ .29353193}} \put( 56.70178 , 27.01224 ){\circle*{ .29353193}} \put( 57.02395 , 28.25055 ){\circle*{ .29353193}} \put( 57.34612 , 29.55234 ){\circle*{ .29353193}} \put( 57.66828 , 30.92088 ){\circle*{ .29353193}} \put( 57.99045 , 32.35959 ){\circle*{ .29353193}} \put( 58.31262 , 33.87206 ){\circle*{ .29353193}} \put( 58.63479 , 35.46208 ){\circle*{ .29353193}} \put( 58.95696 , 37.13362 ){\circle*{ .29353193}} \put( 59.27913 , 38.89086 ){\circle*{ .29353193}} \put( 59.6013 , 40.7382 ){\circle*{ .29353193}} \put( 59.92347 , 42.68025 ){\circle*{ .29353193}} \put( 60.24564 , 44.72188 ){\circle*{ .29353193}} \put( 60.5678 , 46.86818 ){\circle*{ .29353193}} \put( 60.88998 , 49.12452 ){\circle*{ .29353193}} \put( 61.21215 , 51.49655 ){\circle*{ .29353193}} \put( 61.53432 , 53.99019 ){\circle*{ .29353193}} \put( 61.85648 , 56.61169 ){\circle*{ .29353193}} \put( 62.17865 , 59.36759 ){\circle*{ .29353193}} \put( 62.50082 , 62.26480 ){\circle*{ .29353193}} \put( 62.82299 , 65.31054 ){\circle*{ .29353193}} \put( 63.14516 , 68.51244 ){\circle*{ .29353193}} \put( 63.46733 , 71.87851 ){\circle*{ .29353193}} \put( 63.7895 , 75.41716 ){\circle*{ .29353193}} \put( 64.11167 , 79.13724 ){\circle*{ .29353193}} \end{picture} \end{center} %Finis. apl>)off