
apl>" <-APL2-------------------- sam306.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,0,10,0

\begin{figure}[tbh]
\caption{Graph of y\#*x}
\begin{center}
\setlength{\unitlength}{ .03773422in}
\begin{picture}(119.2552,159.0069)
%Draw a frame around the picture
 \put(0,0){\line(1,0){119.2552}}% bottom
 \put(0,0){\line(0,1){159.0069}}% left
 \put(0,159.0069){\line(1,0){119.2552}}% top
 \put(119.2552,0){\line(0,1){159.0069}}% right
%Draw the x axis
 \put(0,0){\line(1,0){119.2552}}%x axis
  \put( 11.92552 , 0 ){\circle*{ .543274}} 
  \put( 23.85103 , 0 ){\circle*{ .543274}} 
  \put( 35.77655 , 0 ){\circle*{ .543274}} 
  \put( 47.70206 , 0 ){\circle*{ .543274}} 
  \put( 59.62758 , 0 ){\circle*{ .543274}} 
  \put( 71.55310 , 0 ){\circle*{ .543274}} 
  \put( 83.47861 , 0 ){\circle*{ .543274}} 
  \put( 95.40413 , 0 ){\circle*{ .543274}} 
  \put( 107.3296 , 0 ){\circle*{ .543274}} 
%Draw the x axis marker values
  \put( 11.91713 , 0 ){$ -4 $} 
  \put( 23.84265 , 0 ){$ -3 $} 
  \put( 35.76816 , 0 ){$ -2 $} 
  \put( 47.69368 , 0 ){$ -1 $} 
  \put( 59.62758 , 0 ){$  0 $} 
  \put( 71.55310 , 0 ){$  1 $} 
  \put( 83.47861 , 0 ){$  2 $} 
  \put( 95.40413 , 0 ){$  3 $} 
  \put( 107.3296 , 0 ){$  4 $} 
%Draw the y axis
 \put(59.62758,0){\line(0,1){159.0069}}%y axis
%Draw the y axis markers
  \put( 59.62758 , 15.29349 ){\circle*{ .543274}} 
  \put( 59.62758 , 25.29349 ){\circle*{ .543274}} 
  \put( 59.62758 , 35.29349 ){\circle*{ .543274}} 
  \put( 59.62758 , 45.29349 ){\circle*{ .543274}} 
  \put( 59.62758 , 55.29349 ){\circle*{ .543274}} 
  \put( 59.62758 , 65.29349 ){\circle*{ .543274}} 
  \put( 59.62758 , 75.29349 ){\circle*{ .543274}} 
  \put( 59.62758 , 85.29349 ){\circle*{ .543274}} 
  \put( 59.62758 , 95.29349 ){\circle*{ .543274}} 
  \put( 59.62758 , 105.2935 ){\circle*{ .543274}} 
  \put( 59.62758 , 115.2935 ){\circle*{ .543274}} 
  \put( 59.62758 , 125.2935 ){\circle*{ .543274}} 
  \put( 59.62758 , 135.2935 ){\circle*{ .543274}} 
  \put( 59.62758 , 145.2935 ){\circle*{ .543274}} 
%Draw the y axis marker values
  \put( 60.95264 , 15.29349 ){$  10 $} 
  \put( 60.95264 , 25.29349 ){$  20 $} 
  \put( 60.95264 , 35.29349 ){$  30 $} 
  \put( 60.95264 , 45.29349 ){$  40 $} 
  \put( 60.95264 , 55.29349 ){$  50 $} 
  \put( 60.95264 , 65.29349 ){$  60 $} 
  \put( 60.95264 , 75.29349 ){$  70 $} 
  \put( 60.95264 , 85.29349 ){$  80 $} 
  \put( 60.95264 , 95.29349 ){$  90 $} 
  \put( 60.95264 , 105.2935 ){$ 100 $} 
  \put( 60.95264 , 115.2935 ){$ 110 $} 
  \put( 60.95264 , 125.2935 ){$ 120 $} 
  \put( 60.95264 , 135.2935 ){$ 130 $} 
  \put( 60.95264 , 145.2935 ){$ 140 $} 
%Draw the data points
  \put(  .596276 , 5.300575   ){\circle*{ .543274}} 
  \put( 1.192552 , 5.300938   ){\circle*{ .543274}} 
  \put( 1.788827 , 5.301320   ){\circle*{ .543274}} 
  \put( 2.385103 , 5.301721   ){\circle*{ .543274}} 
  \put( 2.981379 , 5.302143   ){\circle*{ .543274}} 
  \put( 3.577655 , 5.302587   ){\circle*{ .543274}} 
  \put(  4.17393 , 5.303053   ){\circle*{ .543274}} 
  \put( 4.770206 , 5.303543   ){\circle*{ .543274}} 
  \put( 5.366482 , 5.304059   ){\circle*{ .543274}} 
  \put( 5.962758 ,   5.3046   ){\circle*{ .543274}} 
  \put( 6.559034 ,  5.30517   ){\circle*{ .543274}} 
  \put( 7.155310 , 5.305769   ){\circle*{ .543274}} 
  \put( 7.751585 , 5.306398   ){\circle*{ .543274}} 
  \put( 8.347861 ,  5.30706   ){\circle*{ .543274}} 
  \put( 8.944137 , 5.307756   ){\circle*{ .543274}} 
  \put(  9.54041 , 5.308487   ){\circle*{ .543274}} 
  \put( 10.13669 , 5.309256   ){\circle*{ .543274}} 
  \put( 10.73296 , 5.310064   ){\circle*{ .543274}} 
  \put( 11.32924 , 5.310914   ){\circle*{ .543274}} 
  \put( 11.92552 , 5.311807   ){\circle*{ .543274}} 
  \put( 12.52179 , 5.312746   ){\circle*{ .543274}} 
  \put( 13.11807 , 5.313733   ){\circle*{ .543274}} 
  \put( 13.71434 , 5.314771   ){\circle*{ .543274}} 
  \put( 14.31062 , 5.315862   ){\circle*{ .543274}} 
  \put( 14.90689 , 5.317009   ){\circle*{ .543274}} 
  \put( 15.50317 , 5.318215   ){\circle*{ .543274}} 
  \put( 16.09945 , 5.319483   ){\circle*{ .543274}} 
  \put( 16.69572 , 5.320815   ){\circle*{ .543274}} 
  \put( 17.29200 , 5.322216   ){\circle*{ .543274}} 
  \put( 17.88827 , 5.323689   ){\circle*{ .543274}} 
  \put( 18.48455 , 5.325237   ){\circle*{ .543274}} 
  \put( 19.08083 , 5.326865   ){\circle*{ .543274}} 
  \put(  19.6771 , 5.328576   ){\circle*{ .543274}} 
  \put( 20.27338 , 5.330375   ){\circle*{ .543274}} 
  \put( 20.86965 , 5.332266   ){\circle*{ .543274}} 
  \put( 21.46593 , 5.334254   ){\circle*{ .543274}} 
  \put(  22.0622 , 5.336344   ){\circle*{ .543274}} 
  \put( 22.65848 ,  5.33854   ){\circle*{ .543274}} 
  \put( 23.25476 ,  5.34085   ){\circle*{ .543274}} 
  \put( 23.85103 , 5.343278   ){\circle*{ .543274}} 
  \put(  24.4473 , 5.345831   ){\circle*{ .543274}} 
  \put( 25.04358 , 5.348515   ){\circle*{ .543274}} 
  \put( 25.63986 , 5.351336   ){\circle*{ .543274}} 
  \put( 26.23614 , 5.354301   ){\circle*{ .543274}} 
  \put( 26.83241 , 5.357419   ){\circle*{ .543274}} 
  \put( 27.42869 , 5.360697   ){\circle*{ .543274}} 
  \put( 28.02496 , 5.364143   ){\circle*{ .543274}} 
  \put( 28.62124 , 5.367765   ){\circle*{ .543274}} 
  \put( 29.21751 , 5.371573   ){\circle*{ .543274}} 
  \put( 29.81379 , 5.375576   ){\circle*{ .543274}} 
  \put( 30.41007 , 5.379785   ){\circle*{ .543274}} 
  \put( 31.00634 , 5.384209   ){\circle*{ .543274}} 
  \put( 31.60262 ,  5.38886   ){\circle*{ .543274}} 
  \put( 32.19889 ,  5.39375   ){\circle*{ .543274}} 
  \put( 32.79517 ,  5.39889   ){\circle*{ .543274}} 
  \put( 33.39144 , 5.404295   ){\circle*{ .543274}} 
  \put( 33.98772 , 5.409976   ){\circle*{ .543274}} 
  \put( 34.58400 , 5.415948   ){\circle*{ .543274}} 
  \put( 35.18027 , 5.422226   ){\circle*{ .543274}} 
  \put( 35.77655 , 5.428827   ){\circle*{ .543274}} 
  \put( 36.37282 , 5.435765   ){\circle*{ .543274}} 
  \put(  36.9691 ,  5.44306   ){\circle*{ .543274}} 
  \put( 37.56538 , 5.450729   ){\circle*{ .543274}} 
  \put( 38.16165 ,  5.45879   ){\circle*{ .543274}} 
  \put( 38.75793 , 5.467265   ){\circle*{ .543274}} 
  \put(  39.3542 , 5.476175   ){\circle*{ .543274}} 
  \put( 39.95048 , 5.485541   ){\circle*{ .543274}} 
  \put( 40.54675 , 5.495388   ){\circle*{ .543274}} 
  \put( 41.14303 , 5.505739   ){\circle*{ .543274}} 
  \put(  41.7393 , 5.516622   ){\circle*{ .543274}} 
  \put( 42.33558 , 5.528062   ){\circle*{ .543274}} 
  \put( 42.93186 , 5.540088   ){\circle*{ .543274}} 
  \put( 43.52813 , 5.552732   ){\circle*{ .543274}} 
  \put( 44.12441 , 5.566023   ){\circle*{ .543274}} 
  \put( 44.72068 , 5.579996   ){\circle*{ .543274}} 
  \put( 45.31696 , 5.594686   ){\circle*{ .543274}} 
  \put( 45.91324 , 5.610128   ){\circle*{ .543274}} 
  \put( 46.50951 , 5.626362   ){\circle*{ .543274}} 
  \put( 47.10579 , 5.643429   ){\circle*{ .543274}} 
  \put( 47.70206 ,  5.66137   ){\circle*{ .543274}} 
  \put( 48.29834 , 5.680232   ){\circle*{ .543274}} 
  \put( 48.89462 , 5.700061   ){\circle*{ .543274}} 
  \put( 49.49089 , 5.720906   ){\circle*{ .543274}} 
  \put( 50.08717 ,  5.74282   ){\circle*{ .543274}} 
  \put( 50.68344 , 5.765858   ){\circle*{ .543274}} 
  \put( 51.27972 , 5.790077   ){\circle*{ .543274}} 
  \put( 51.87599 , 5.815537   ){\circle*{ .543274}} 
  \put( 52.47227 , 5.842303   ){\circle*{ .543274}} 
  \put( 53.06855 , 5.870441   ){\circle*{ .543274}} 
  \put( 53.66482 , 5.900022   ){\circle*{ .543274}} 
  \put( 54.26110 , 5.931120   ){\circle*{ .543274}} 
  \put( 54.85737 , 5.963811   ){\circle*{ .543274}} 
  \put( 55.45365 , 5.998179   ){\circle*{ .543274}} 
  \put( 56.04993 , 6.034310   ){\circle*{ .543274}} 
  \put(  56.6462 , 6.072292   ){\circle*{ .543274}} 
  \put( 57.24248 , 6.112222   ){\circle*{ .543274}} 
  \put( 57.83875 , 6.154199   ){\circle*{ .543274}} 
  \put( 58.43503 , 6.198329   ){\circle*{ .543274}} 
  \put(  59.0313 ,  6.24472   ){\circle*{ .543274}} 
  \put( 59.62758 , 6.293491   ){\circle*{ .543274}} 
  \put( 60.22386 , 6.344762   ){\circle*{ .543274}} 
  \put( 60.82013 , 6.398662   ){\circle*{ .543274}} 
  \put(  61.4164 , 6.455326   ){\circle*{ .543274}} 
  \put( 62.01268 , 6.514894   ){\circle*{ .543274}} 
  \put( 62.60896 , 6.577517   ){\circle*{ .543274}} 
  \put( 63.20523 ,  6.64335   ){\circle*{ .543274}} 
  \put( 63.80151 , 6.712559   ){\circle*{ .543274}} 
  \put( 64.39779 , 6.785316   ){\circle*{ .543274}} 
  \put( 64.99406 , 6.861804   ){\circle*{ .543274}} 
  \put( 65.59034 , 6.942213   ){\circle*{ .543274}} 
  \put( 66.18661 , 7.026744   ){\circle*{ .543274}} 
  \put( 66.78289 ,  7.11561   ){\circle*{ .543274}} 
  \put( 67.37917 , 7.209032   ){\circle*{ .543274}} 
  \put( 67.97544 , 7.307244   ){\circle*{ .543274}} 
  \put( 68.57172 , 7.410491   ){\circle*{ .543274}} 
  \put( 69.16799 , 7.519032   ){\circle*{ .543274}} 
  \put( 69.76427 , 7.633138   ){\circle*{ .543274}} 
  \put( 70.36054 , 7.753094   ){\circle*{ .543274}} 
  \put( 70.95682 , 7.879201   ){\circle*{ .543274}} 
  \put( 71.55310 , 8.011773   ){\circle*{ .543274}} 
  \put( 72.14937 , 8.151142   ){\circle*{ .543274}} 
  \put( 72.74565 , 8.297657   ){\circle*{ .543274}} 
  \put( 73.34192 , 8.451684   ){\circle*{ .543274}} 
  \put(  73.9382 , 8.613608   ){\circle*{ .543274}} 
  \put( 74.53447 , 8.783834   ){\circle*{ .543274}} 
  \put( 75.13075 , 8.962788   ){\circle*{ .543274}} 
  \put( 75.72703 , 9.150917   ){\circle*{ .543274}} 
  \put(  76.3233 , 9.348691   ){\circle*{ .543274}} 
  \put( 76.91958 ,  9.5566    ){\circle*{ .543274}} 
  \put( 77.51585 , 9.77518    ){\circle*{ .543274}} 
  \put( 78.11213 , 10.00496   ){\circle*{ .543274}} 
  \put(  78.7084 , 10.24652   ){\circle*{ .543274}} 
  \put( 79.30468 , 10.50047   ){\circle*{ .543274}} 
  \put( 79.90096 , 10.76744   ){\circle*{ .543274}} 
  \put( 80.49723 , 11.04809   ){\circle*{ .543274}} 
  \put(  81.0935 , 11.34314   ){\circle*{ .543274}} 
  \put( 81.68978 , 11.65331   ){\circle*{ .543274}} 
  \put( 82.28606 , 11.97939   ){\circle*{ .543274}} 
  \put( 82.88234 , 12.32218   ){\circle*{ .543274}} 
  \put( 83.47861 , 12.68255   ){\circle*{ .543274}} 
  \put( 84.07489 , 13.06139   ){\circle*{ .543274}} 
  \put( 84.67116 , 13.45966   ){\circle*{ .543274}} 
  \put( 85.26744 , 13.87835   ){\circle*{ .543274}} 
  \put( 85.86372 ,  14.3185   ){\circle*{ .543274}} 
  \put( 86.45999 , 14.78123   ){\circle*{ .543274}} 
  \put( 87.05627 , 15.26767   ){\circle*{ .543274}} 
  \put( 87.65254 , 15.77906   ){\circle*{ .543274}} 
  \put( 88.24882 , 16.31667   ){\circle*{ .543274}} 
  \put( 88.84509 , 16.88184   ){\circle*{ .543274}} 
  \put( 89.44137 , 17.47599   ){\circle*{ .543274}} 
  \put( 90.03765 , 18.10060   ){\circle*{ .543274}} 
  \put( 90.63392 , 18.75723   ){\circle*{ .543274}} 
  \put( 91.23020 , 19.44753   ){\circle*{ .543274}} 
  \put( 91.82647 , 20.17322   ){\circle*{ .543274}} 
  \put( 92.42275 , 20.93612   ){\circle*{ .543274}} 
  \put( 93.01902 , 21.73814   ){\circle*{ .543274}} 
  \put(  93.6153 , 22.58127   ){\circle*{ .543274}} 
  \put( 94.21158 , 23.46764   ){\circle*{ .543274}} 
  \put( 94.80785 , 24.39945   ){\circle*{ .543274}} 
  \put( 95.40413 , 25.37903   ){\circle*{ .543274}} 
  \put(  96.0004 , 26.40884   ){\circle*{ .543274}} 
  \put( 96.59668 , 27.49144   ){\circle*{ .543274}} 
  \put( 97.19296 , 28.62956   ){\circle*{ .543274}} 
  \put( 97.78923 , 29.82602   ){\circle*{ .543274}} 
  \put(  98.3855 , 31.08383   ){\circle*{ .543274}} 
  \put( 98.98178 , 32.40613   ){\circle*{ .543274}} 
  \put(   99.578 , 33.79623   ){\circle*{ .543274}} 
  \put( 100.1743 , 35.25759   ){\circle*{ .543274}} 
  \put( 100.7706 , 36.79388   ){\circle*{ .543274}} 
  \put( 101.3669 , 38.40894   ){\circle*{ .543274}} 
  \put( 101.9632 ,  40.1068   ){\circle*{ .543274}} 
  \put( 102.5594 , 41.89173   ){\circle*{ .543274}} 
  \put( 103.1557 , 43.76816   ){\circle*{ .543274}} 
  \put( 103.7520 , 45.74080   ){\circle*{ .543274}} 
  \put( 104.3483 , 47.81457   ){\circle*{ .543274}} 
  \put( 104.9445 , 49.99468   ){\circle*{ .543274}} 
  \put( 105.5408 , 52.28655   ){\circle*{ .543274}} 
  \put( 106.1371 , 54.69594   ){\circle*{ .543274}} 
  \put( 106.7334 , 57.22886   ){\circle*{ .543274}} 
  \put( 107.3296 , 59.89164   ){\circle*{ .543274}} 
  \put( 107.9259 , 62.69095   ){\circle*{ .543274}} 
  \put( 108.5222 , 65.63378   ){\circle*{ .543274}} 
  \put( 109.1185 , 68.72749   ){\circle*{ .543274}} 
  \put( 109.7147 , 71.97982   ){\circle*{ .543274}} 
  \put(  110.311 ,  75.3989   ){\circle*{ .543274}} 
  \put( 110.9073 , 78.99329   ){\circle*{ .543274}} 
  \put( 111.5036 , 82.77195   ){\circle*{ .543274}} 
  \put( 112.0999 , 86.74436   ){\circle*{ .543274}} 
  \put( 112.6961 , 90.92044   ){\circle*{ .543274}} 
  \put( 113.2924 , 95.31062   ){\circle*{ .543274}} 
  \put( 113.8887 , 99.9259    ){\circle*{ .543274}} 
  \put( 114.4850 , 104.7778   ){\circle*{ .543274}} 
  \put( 115.0812 , 109.8785   ){\circle*{ .543274}} 
  \put( 115.6775 , 115.2407   ){\circle*{ .543274}} 
  \put( 116.2738 , 120.8778   ){\circle*{ .543274}} 
  \put(   116.87 , 126.8039   ){\circle*{ .543274}} 
  \put( 117.4663 , 133.0339   ){\circle*{ .543274}} 
  \put( 118.0626 , 139.5833   ){\circle*{ .543274}} 
  \put( 118.6589 , 146.4685   ){\circle*{ .543274}} 
\end{picture}
\end{center}
%Finis.

apl>)off

