From help-request at octave dot org Wed Jan 12 09:35:44 2005 Subject: Re: freqz inconsistency ? From: David Bateman To: "Pascal A. Dupuis" Cc: help at octave dot org Date: Wed, 12 Jan 2005 16:35:49 +0100 --mYCpIKhGyMATD0i+ Content-Type: text/plain; charset=us-ascii Content-Disposition: inline According to Pascal A. Dupuis (on 01/12/05): > Hello, > > I'm trying to understand some issues with invfreqz, and found some > inconsistency in freqz: > > pdi = 0.97; > [Zz1, Wz1]=freqz((1-pdi), [1 -pdi], 128); > [Zz2, Wz2]=freqz((1-pdi), [1 -pdi], Wz1); > > norm(Wz1-Wz2) > ans = 0 > > norm(Zz1-Zz2) > ans = 0.35010 Under Matlab v7.0 sp1, I get >> pdi = 0.97; >> [Zz1, Wz1]=freqz((1-pdi), [1 -pdi], 128); >> [Zz2, Wz2]=freqz((1-pdi), [1 -pdi], Wz1); >> norm(Wz1-Wz2) ans = 0 >> norm(Zz1-Zz2) ans = 1.7417e-15 >> Zz1a = Zz1; Zz2a = Zz2; save -v6 temp.mat Zz1a Zz2a Loading them into octave and comparing with the same values calculated by octave gives an interesting result, seen in the attached files. It seems that octave is in error in the second form. Looking at the last values in the octave:25> Zz2a(end), Zz2(end) ans = 0.01522846 - 0.00018404i ans = -1.5228e-02 - 1.8974e-04i I don't know enough about freqz to really fix the bug though after a quick look. Expect to note that in the first case extent is a positive integer and in the second extent is zero and therefore there are two different ways of calculating the frequency response used. That is hb = fft (postpad (b, extent)); hb = hb(1:n); or hb = polyval (postpad (b, k), exp (j*w)); I imagine its a difference at this point causing the problem Regards David > > as both frequency responses are evaluated at the same points, they > should give the same result, shouldn't they ? > > I tried cheating a bit with > [Zz2, Wz2]=freqz((1-pdi), [1 -pdi], const*Wz1); > but couldn't find a constant such that both frequency responses are > the same. Any idea ? > > TIA > > Pascal Dupuis > > -- > Dr. ir. Pascal Dupuis > K. U. Leuven, ESAT/ELECTA (formerly ELEN): http://www.esat.kuleuven.ac.be/ > Kasteelpark Arenberg, 10; B-3001 Leuven-Heverlee, Belgium > Tel. +32-16-32 10 21 -- Fax +32-16-32 19 85 > > > > ------------------------------------------------------------- > Octave is freely available under the terms of the GNU GPL. > > Octave's home on the web: http://www.octave.org > How to fund new projects: http://www.octave.org/funding.html > Subscription information: http://www.octave.org/archive.html > ------------------------------------------------------------- -- David Bateman David dot Bateman at motorola dot com Motorola CRM +33 1 69 35 48 04 (Ph) Parc Les Algorithmes, Commune de St Aubin +33 1 69 35 77 01 (Fax) 91193 Gif-Sur-Yvette FRANCE The information contained in this communication has been classified as: [x] General Business Information [ ] Motorola Internal Use Only [ ] Motorola Confidential Proprietary --mYCpIKhGyMATD0i+ Content-Type: application/postscript Content-Disposition: attachment; filename="Zz2_vs_Zz2a.eps" Content-Transfer-Encoding: quoted-printable %!PS-Adobe-2.0 EPSF-2.0=0A%%Title: Zz2_vs_Zz2a.eps=0A%%Creator: gnuplot 4.0= patchlevel 0=0A%%CreationDate: Wed Jan 12 16:23:21 2005=0A%%DocumentFonts:= (atend)=0A%%BoundingBox: 50 50 410 302=0A%%Orientation: Portrait=0A%%EndCo= mments=0A/gnudict 256 dict def=0Agnudict begin=0A/Color false def=0A/Solid = false def=0A/gnulinewidth 5.000 def=0A/userlinewidth gnulinewidth def=0A/vs= hift -46 def=0A/dl {10.0 mul} def=0A/hpt_ 31.5 def=0A/vpt_ 31.5 def=0A/hpt = hpt_ def=0A/vpt vpt_ def=0A/Rounded false def=0A/M {moveto} bind def=0A/L {= lineto} bind def=0A/R {rmoveto} bind def=0A/V {rlineto} bind def=0A/N {newp= ath moveto} bind def=0A/C {setrgbcolor} bind def=0A/f {rlineto fill} bind d= ef=0A/vpt2 vpt 2 mul def=0A/hpt2 hpt 2 mul def=0A/Lshow { currentpoint stro= ke M=0A 0 vshift R show } def=0A/Rshow { currentpoint stroke M=0A dup str= ingwidth pop neg vshift R show } def=0A/Cshow { currentpoint stroke M=0A d= up stringwidth pop -2 div vshift R show } def=0A/UP { dup vpt_ mul /vpt exc= h def hpt_ mul /hpt exch def=0A /hpt2 hpt 2 mul def /vpt2 vpt 2 mul def } = def=0A/DL { Color {setrgbcolor Solid {pop []} if 0 setdash }=0A {pop pop po= p 0 setgray Solid {pop []} if 0 setdash} ifelse } def=0A/BL { stroke userli= newidth 2 mul setlinewidth=0A Rounded { 1 setlinejoin 1 setlinecap } i= f } def=0A/AL { stroke userlinewidth 2 div setlinewidth=0A Rounded { 1= setlinejoin 1 setlinecap } if } def=0A/UL { dup gnulinewidth mul /userline= width exch def=0A dup 1 lt {pop 1} if 10 mul /udl exch def } def=0A/PL= { stroke userlinewidth setlinewidth=0A Rounded { 1 setlinejoin 1 setl= inecap } if } def=0A/LTw { PL [] 1 setgray } def=0A/LTb { BL [] 0 0 0 DL } = def=0A/LTa { AL [1 udl mul 2 udl mul] 0 setdash 0 0 0 setrgbcolor } def=0A/= LT0 { PL [] 1 0 0 DL } def=0A/LT1 { PL [4 dl 2 dl] 0 1 0 DL } def=0A/LT2 { = PL [2 dl 3 dl] 0 0 1 DL } def=0A/LT3 { PL [1 dl 1.5 dl] 1 0 1 DL } def=0A/L= T4 { PL [5 dl 2 dl 1 dl 2 dl] 0 1 1 DL } def=0A/LT5 { PL [4 dl 3 dl 1 dl 3 = dl] 1 1 0 DL } def=0A/LT6 { PL [2 dl 2 dl 2 dl 4 dl] 0 0 0 DL } def=0A/LT7 = { PL [2 dl 2 dl 2 dl 2 dl 2 dl 4 dl] 1 0.3 0 DL } def=0A/LT8 { PL [2 dl 2 d= l 2 dl 2 dl 2 dl 2 dl 2 dl 4 dl] 0.5 0.5 0.5 DL } def=0A/Pnt { stroke [] 0 = setdash=0A gsave 1 setlinecap M 0 0 V stroke grestore } def=0A/Dia { stro= ke [] 0 setdash 2 copy vpt add M=0A hpt neg vpt neg V hpt vpt neg V=0A hp= t vpt V hpt neg vpt V closepath stroke=0A Pnt } def=0A/Pls { stroke [] 0 s= etdash vpt sub M 0 vpt2 V=0A currentpoint stroke M=0A hpt neg vpt neg R h= pt2 0 V stroke=0A } def=0A/Box { stroke [] 0 setdash 2 copy exch hpt sub e= xch vpt add M=0A 0 vpt2 neg V hpt2 0 V 0 vpt2 V=0A hpt2 neg 0 V closepath= stroke=0A Pnt } def=0A/Crs { stroke [] 0 setdash exch hpt sub exch vpt ad= d M=0A hpt2 vpt2 neg V currentpoint stroke M=0A hpt2 neg 0 R hpt2 vpt2 V = stroke } def=0A/TriU { stroke [] 0 setdash 2 copy vpt 1.12 mul add M=0A hp= t neg vpt -1.62 mul V=0A hpt 2 mul 0 V=0A hpt neg vpt 1.62 mul V closepat= h stroke=0A Pnt } def=0A/Star { 2 copy Pls Crs } def=0A/BoxF { stroke [] = 0 setdash exch hpt sub exch vpt add M=0A 0 vpt2 neg V hpt2 0 V 0 vpt2 V= =0A hpt2 neg 0 V closepath fill } def=0A/TriUF { stroke [] 0 setdash vpt = 1.12 mul add M=0A hpt neg vpt -1.62 mul V=0A hpt 2 mul 0 V=0A hpt neg vp= t 1.62 mul V closepath fill } def=0A/TriD { stroke [] 0 setdash 2 copy vpt = 1.12 mul sub M=0A hpt neg vpt 1.62 mul V=0A hpt 2 mul 0 V=0A hpt neg vpt= -1.62 mul V closepath stroke=0A Pnt } def=0A/TriDF { stroke [] 0 setdash= vpt 1.12 mul sub M=0A hpt neg vpt 1.62 mul V=0A hpt 2 mul 0 V=0A hpt ne= g vpt -1.62 mul V closepath fill} def=0A/DiaF { stroke [] 0 setdash vpt add= M=0A hpt neg vpt neg V hpt vpt neg V=0A hpt vpt V hpt neg vpt V closepat= h fill } def=0A/Pent { stroke [] 0 setdash 2 copy gsave=0A translate 0 hpt= M 4 {72 rotate 0 hpt L} repeat=0A closepath stroke grestore Pnt } def=0A/= PentF { stroke [] 0 setdash gsave=0A translate 0 hpt M 4 {72 rotate 0 hpt = L} repeat=0A closepath fill grestore } def=0A/Circle { stroke [] 0 setdash= 2 copy=0A hpt 0 360 arc stroke Pnt } def=0A/CircleF { stroke [] 0 setdash= hpt 0 360 arc fill } def=0A/C0 { BL [] 0 setdash 2 copy moveto vpt 90 450 = arc } bind def=0A/C1 { BL [] 0 setdash 2 copy moveto=0A 2 cop= y vpt 0 90 arc closepath fill=0A vpt 0 360 arc closepath } b= ind def=0A/C2 { BL [] 0 setdash 2 copy moveto=0A 2 copy vpt 90 180 a= rc closepath fill=0A vpt 0 360 arc closepath } bind def=0A/C3= { BL [] 0 setdash 2 copy moveto=0A 2 copy vpt 0 180 arc closepath f= ill=0A vpt 0 360 arc closepath } bind def=0A/C4 { BL [] 0 set= dash 2 copy moveto=0A 2 copy vpt 180 270 arc closepath fill=0A = vpt 0 360 arc closepath } bind def=0A/C5 { BL [] 0 setdash 2 copy = moveto=0A 2 copy vpt 0 90 arc=0A 2 copy moveto=0A 2 copy= vpt 180 270 arc closepath fill=0A vpt 0 360 arc } bind def= =0A/C6 { BL [] 0 setdash 2 copy moveto=0A 2 copy vpt 90 270 arc close= path fill=0A vpt 0 360 arc closepath } bind def=0A/C7 { BL [] = 0 setdash 2 copy moveto=0A 2 copy vpt 0 270 arc closepath fill=0A = vpt 0 360 arc closepath } bind def=0A/C8 { BL [] 0 setdash 2 copy= moveto=0A 2 copy vpt 270 360 arc closepath fill=0A vpt 0= 360 arc closepath } bind def=0A/C9 { BL [] 0 setdash 2 copy moveto=0A = 2 copy vpt 270 450 arc closepath fill=0A vpt 0 360 arc close= path } bind def=0A/C10 { BL [] 0 setdash 2 copy 2 copy moveto vpt 270 360 a= rc closepath fill=0A 2 copy moveto=0A 2 copy vpt 90 180 arc clo= sepath fill=0A vpt 0 360 arc closepath } bind def=0A/C11 { BL= [] 0 setdash 2 copy moveto=0A 2 copy vpt 0 180 arc closepath fill= =0A 2 copy moveto=0A 2 copy vpt 270 360 arc closepath fill=0A = vpt 0 360 arc closepath } bind def=0A/C12 { BL [] 0 setdash 2= copy moveto=0A 2 copy vpt 180 360 arc closepath fill=0A = vpt 0 360 arc closepath } bind def=0A/C13 { BL [] 0 setdash 2 copy move= to=0A 2 copy vpt 0 90 arc closepath fill=0A 2 copy moveto=0A = 2 copy vpt 180 360 arc closepath fill=0A vpt 0 360 arc = closepath } bind def=0A/C14 { BL [] 0 setdash 2 copy moveto=0A 2 copy= vpt 90 360 arc closepath fill=0A vpt 0 360 arc } bind def= =0A/C15 { BL [] 0 setdash 2 copy vpt 0 360 arc closepath fill=0A = vpt 0 360 arc closepath } bind def=0A/Rec { newpath 4 2 roll moveto 1= index 0 rlineto 0 exch rlineto=0A neg 0 rlineto closepath } bind def= =0A/Square { dup Rec } bind def=0A/Bsquare { vpt sub exch vpt sub exch vpt2= Square } bind def=0A/S0 { BL [] 0 setdash 2 copy moveto 0 vpt rlineto BL B= square } bind def=0A/S1 { BL [] 0 setdash 2 copy vpt Square fill Bsquare } = bind def=0A/S2 { BL [] 0 setdash 2 copy exch vpt sub exch vpt Square fill B= square } bind def=0A/S3 { BL [] 0 setdash 2 copy exch vpt sub exch vpt2 vpt= Rec fill Bsquare } bind def=0A/S4 { BL [] 0 setdash 2 copy exch vpt sub ex= ch vpt sub vpt Square fill Bsquare } bind def=0A/S5 { BL [] 0 setdash 2 cop= y 2 copy vpt Square fill=0A exch vpt sub exch vpt sub vpt Square fill= Bsquare } bind def=0A/S6 { BL [] 0 setdash 2 copy exch vpt sub exch vpt su= b vpt vpt2 Rec fill Bsquare } bind def=0A/S7 { BL [] 0 setdash 2 copy exch = vpt sub exch vpt sub vpt vpt2 Rec fill=0A 2 copy vpt Square fill=0A = Bsquare } bind def=0A/S8 { BL [] 0 setdash 2 copy vpt sub vpt Square f= ill Bsquare } bind def=0A/S9 { BL [] 0 setdash 2 copy vpt sub vpt vpt2 Rec = fill Bsquare } bind def=0A/S10 { BL [] 0 setdash 2 copy vpt sub vpt Square = fill 2 copy exch vpt sub exch vpt Square fill=0A Bsquare } bind def= =0A/S11 { BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt su= b exch vpt2 vpt Rec fill=0A Bsquare } bind def=0A/S12 { BL [] 0 setda= sh 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill Bsquare } bind def=0A= /S13 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill= =0A 2 copy vpt Square fill Bsquare } bind def=0A/S14 { BL [] 0 setdas= h 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill=0A 2 copy exch v= pt sub exch vpt Square fill Bsquare } bind def=0A/S15 { BL [] 0 setdash 2 c= opy Bsquare fill Bsquare } bind def=0A/D0 { gsave translate 45 rotate 0 0 S= 0 stroke grestore } bind def=0A/D1 { gsave translate 45 rotate 0 0 S1 strok= e grestore } bind def=0A/D2 { gsave translate 45 rotate 0 0 S2 stroke grest= ore } bind def=0A/D3 { gsave translate 45 rotate 0 0 S3 stroke grestore } b= ind def=0A/D4 { gsave translate 45 rotate 0 0 S4 stroke grestore } bind def= =0A/D5 { gsave translate 45 rotate 0 0 S5 stroke grestore } bind def=0A/D6 = { gsave translate 45 rotate 0 0 S6 stroke grestore } bind def=0A/D7 { gsave= translate 45 rotate 0 0 S7 stroke grestore } bind def=0A/D8 { gsave transl= ate 45 rotate 0 0 S8 stroke grestore } bind def=0A/D9 { gsave translate 45 = rotate 0 0 S9 stroke grestore } bind def=0A/D10 { gsave translate 45 rotate= 0 0 S10 stroke grestore } bind def=0A/D11 { gsave translate 45 rotate 0 0 = S11 stroke grestore } bind def=0A/D12 { gsave translate 45 rotate 0 0 S12 s= troke grestore } bind def=0A/D13 { gsave translate 45 rotate 0 0 S13 stroke= grestore } bind def=0A/D14 { gsave translate 45 rotate 0 0 S14 stroke gres= tore } bind def=0A/D15 { gsave translate 45 rotate 0 0 S15 stroke grestore = } bind def=0A/DiaE { stroke [] 0 setdash vpt add M=0A hpt neg vpt neg V hp= t vpt neg V=0A hpt vpt V hpt neg vpt V closepath stroke } def=0A/BoxE { st= roke [] 0 setdash exch hpt sub exch vpt add M=0A 0 vpt2 neg V hpt2 0 V 0 v= pt2 V=0A hpt2 neg 0 V closepath stroke } def=0A/TriUE { stroke [] 0 setdas= h vpt 1.12 mul add M=0A hpt neg vpt -1.62 mul V=0A hpt 2 mul 0 V=0A hpt = neg vpt 1.62 mul V closepath stroke } def=0A/TriDE { stroke [] 0 setdash vp= t 1.12 mul sub M=0A hpt neg vpt 1.62 mul V=0A hpt 2 mul 0 V=0A hpt neg v= pt -1.62 mul V closepath stroke } def=0A/PentE { stroke [] 0 setdash gsave= =0A translate 0 hpt M 4 {72 rotate 0 hpt L} repeat=0A closepath stroke gr= estore } def=0A/CircE { stroke [] 0 setdash =0A hpt 0 360 arc stroke } def= =0A/Opaque { gsave closepath 1 setgray fill grestore 0 setgray closepath } = def=0A/DiaW { stroke [] 0 setdash vpt add M=0A hpt neg vpt neg V hpt vpt n= eg V=0A hpt vpt V hpt neg vpt V Opaque stroke } def=0A/BoxW { stroke [] 0 = setdash exch hpt sub exch vpt add M=0A 0 vpt2 neg V hpt2 0 V 0 vpt2 V=0A = hpt2 neg 0 V Opaque stroke } def=0A/TriUW { stroke [] 0 setdash vpt 1.12 mu= l add M=0A hpt neg vpt -1.62 mul V=0A hpt 2 mul 0 V=0A hpt neg vpt 1.62 = mul V Opaque stroke } def=0A/TriDW { stroke [] 0 setdash vpt 1.12 mul sub M= =0A hpt neg vpt 1.62 mul V=0A hpt 2 mul 0 V=0A hpt neg vpt -1.62 mul V O= paque stroke } def=0A/PentW { stroke [] 0 setdash gsave=0A translate 0 hpt= M 4 {72 rotate 0 hpt L} repeat=0A Opaque stroke grestore } def=0A/CircW {= stroke [] 0 setdash =0A hpt 0 360 arc Opaque stroke } def=0A/BoxFill { gs= ave Rec 1 setgray fill grestore } def=0A/BoxColFill {=0A gsave Rec=0A /Fi= llden exch def=0A currentrgbcolor=0A /ColB exch def /ColG exch def /ColR = exch def=0A /ColR ColR Fillden mul Fillden sub 1 add def=0A /ColG ColG Fi= llden mul Fillden sub 1 add def=0A /ColB ColB Fillden mul Fillden sub 1 ad= d def=0A ColR ColG ColB setrgbcolor=0A fill grestore } def=0A%=0A% PostSc= ript Level 1 Pattern Fill routine=0A% Usage: x y w h s a XX PatternFill=0A%= x,y =3D lower left corner of box to be filled=0A% w,h =3D width and height= of box=0A% a =3D angle in degrees between lines and x-axis=0A% XX =3D 0= /1 for no/yes cross-hatch=0A%=0A/PatternFill { gsave /PFa [ 9 2 roll ] def= =0A PFa 0 get PFa 2 get 2 div add PFa 1 get PFa 3 get 2 div add translat= e=0A PFa 2 get -2 div PFa 3 get -2 div PFa 2 get PFa 3 get Rec=0A gsa= ve 1 setgray fill grestore clip=0A currentlinewidth 0.5 mul setlinewidth= =0A /PFs PFa 2 get dup mul PFa 3 get dup mul add sqrt def=0A 0 0 M PF= a 5 get rotate PFs -2 div dup translate=0A 0 1 PFs PFa 4 get div 1 add floo= r cvi=0A { PFa 4 get mul 0 M 0 PFs V } for=0A 0 PFa 6 get ne {=0A 0 1 PF= s PFa 4 get div 1 add floor cvi=0A { PFa 4 get mul 0 2 1 roll M PFs 0 V } f= or=0A } if=0A stroke grestore } def=0A%=0A/Symbol-Oblique /Symbol fin= dfont [1 0 .167 1 0 0] makefont=0Adup length dict begin {1 index /FID eq {p= op pop} {def} ifelse} forall=0Acurrentdict end definefont pop=0A/MFshow {= =0A { dup 5 get 3 ge=0A { 5 get 3 eq {gsave} {grestore} ifelse }=0A = {dup dup 0 get findfont exch 1 get scalefont setfont=0A [ currentpoi= nt ] exch dup 2 get 0 exch R dup 5 get 2 ne {dup dup 6=0A get exch 4 ge= t {show} {stringwidth pop 0 R} ifelse }if dup 5 get 0 eq=0A {dup 3 get = {2 get neg 0 exch R pop} {pop aload pop M} ifelse} {dup 5=0A get 1 eq {= dup 2 get exch dup 3 get exch 6 get stringwidth pop -2 div=0A dup 0 R} = {dup 6 get stringwidth pop -2 div 0 R 6 get=0A show 2 index {aload pop = M neg 3 -1 roll neg R pop pop} {pop pop pop=0A pop aload pop M} ifelse = }ifelse }ifelse }=0A ifelse }=0A forall} bind def=0A/MFwidth {0 exch = {dup 3 get{dup dup 0 get findfont exch 1 get scalefont=0A setfont 6 get= stringwidth pop add} {pop} ifelse} forall} bind def=0A/MLshow { currentpoi= nt stroke M=0A 0 exch R MFshow } bind def=0A/MRshow { currentpoint stroke = M=0A exch dup MFwidth neg 3 -1 roll R MFshow } def=0A/MCshow { currentpoin= t stroke M=0A exch dup MFwidth -2 div 3 -1 roll R MFshow } def=0Aend=0A%%E= ndProlog=0Agnudict begin=0Agsave=0A50 50 translate=0A0.050 0.050 scale=0A0 = setgray=0Anewpath=0A(Helvetica) findfont 140 scalefont setfont=0A1.000 UL= =0ALTb=0A742 280 M=0A63 0 V=0A6157 0 R=0A-63 0 V=0Astroke=0A658 280 M=0Agsa= ve 0 setgray=0A[ [(Helvetica) 140.0 0.0 true true 0 ( 0)]=0A] -46.7 MRshow= =0Agrestore=0A1.000 UL=0ALTb=0A742 936 M=0A63 0 V=0A6157 0 R=0A-63 0 V=0Ast= roke=0A658 936 M=0Agsave 0 setgray=0A[ [(Helvetica) 140.0 0.0 true true 0 (= 0.005)]=0A] -46.7 MRshow=0Agrestore=0A1.000 UL=0ALTb=0A742 1592 M=0A63 0 V= =0A6157 0 R=0A-63 0 V=0Astroke=0A658 1592 M=0Agsave 0 setgray=0A[ [(Helveti= ca) 140.0 0.0 true true 0 ( 0.01)]=0A] -46.7 MRshow=0Agrestore=0A1.000 UL= =0ALTb=0A742 2248 M=0A63 0 V=0A6157 0 R=0A-63 0 V=0Astroke=0A658 2248 M=0Ag= save 0 setgray=0A[ [(Helvetica) 140.0 0.0 true true 0 ( 0.015)]=0A] -46.7 M= Rshow=0Agrestore=0A1.000 UL=0ALTb=0A742 2904 M=0A63 0 V=0A6157 0 R=0A-63 0 = V=0Astroke=0A658 2904 M=0Agsave 0 setgray=0A[ [(Helvetica) 140.0 0.0 true t= rue 0 ( 0.02)]=0A] -46.7 MRshow=0Agrestore=0A1.000 UL=0ALTb=0A742 3560 M=0A= 63 0 V=0A6157 0 R=0A-63 0 V=0Astroke=0A658 3560 M=0Agsave 0 setgray=0A[ [(H= elvetica) 140.0 0.0 true true 0 ( 0.025)]=0A] -46.7 MRshow=0Agrestore=0A1.0= 00 UL=0ALTb=0A742 4216 M=0A63 0 V=0A6157 0 R=0A-63 0 V=0Astroke=0A658 4216 = M=0Agsave 0 setgray=0A[ [(Helvetica) 140.0 0.0 true true 0 ( 0.03)]=0A] -46= =2E7 MRshow=0Agrestore=0A1.000 UL=0ALTb=0A742 4872 M=0A63 0 V=0A6157 0 R=0A= -63 0 V=0Astroke=0A658 4872 M=0Agsave 0 setgray=0A[ [(Helvetica) 140.0 0.0 = true true 0 ( 0.035)]=0A] -46.7 MRshow=0Agrestore=0A1.000 UL=0ALTb=0A742 28= 0 M=0A0 63 V=0A0 4529 R=0A0 -63 V=0Astroke=0A742 140 M=0Agsave 0 setgray=0A= [ [(Helvetica) 140.0 0.0 true true 0 ( 0)]=0A] -46.7 MCshow=0Agrestore=0A1.= 000 UL=0ALTb=0A1631 280 M=0A0 63 V=0A0 4529 R=0A0 -63 V=0Astroke=0A1631 140= M=0Agsave 0 setgray=0A[ [(Helvetica) 140.0 0.0 true true 0 ( 20)]=0A] -46.= 7 MCshow=0Agrestore=0A1.000 UL=0ALTb=0A2519 280 M=0A0 63 V=0A0 4529 R=0A0 -= 63 V=0Astroke=0A2519 140 M=0Agsave 0 setgray=0A[ [(Helvetica) 140.0 0.0 tru= e true 0 ( 40)]=0A] -46.7 MCshow=0Agrestore=0A1.000 UL=0ALTb=0A3408 280 M= =0A0 63 V=0A0 4529 R=0A0 -63 V=0Astroke=0A3408 140 M=0Agsave 0 setgray=0A[ = [(Helvetica) 140.0 0.0 true true 0 ( 60)]=0A] -46.7 MCshow=0Agrestore=0A1.0= 00 UL=0ALTb=0A4296 280 M=0A0 63 V=0A0 4529 R=0A0 -63 V=0Astroke=0A4296 140 = M=0Agsave 0 setgray=0A[ [(Helvetica) 140.0 0.0 true true 0 ( 80)]=0A] -46.7= MCshow=0Agrestore=0A1.000 UL=0ALTb=0A5185 280 M=0A0 63 V=0A0 4529 R=0A0 -6= 3 V=0Astroke=0A5185 140 M=0Agsave 0 setgray=0A[ [(Helvetica) 140.0 0.0 true= true 0 ( 100)]=0A] -46.7 MCshow=0Agrestore=0A1.000 UL=0ALTb=0A6073 280 M= =0A0 63 V=0A0 4529 R=0A0 -63 V=0Astroke=0A6073 140 M=0Agsave 0 setgray=0A[ = [(Helvetica) 140.0 0.0 true true 0 ( 120)]=0A] -46.7 MCshow=0Agrestore=0A1.= 000 UL=0ALTb=0A6962 280 M=0A0 63 V=0A0 4529 R=0A0 -63 V=0Astroke=0A6962 140= M=0Agsave 0 setgray=0A[ [(Helvetica) 140.0 0.0 true true 0 ( 140)]=0A] -46= =2E7 MCshow=0Agrestore=0A1.000 UL=0ALTb=0A1.000 UL=0ALTb=0A742 280 M=0A6220= 0 V=0A0 4592 V=0A-6220 0 V=0A742 280 L=0A1.000 UP=0A1.000 UL=0ALT0=0ALTb= =0A6311 4739 M=0Agsave 0 setgray=0A[ [(Helvetica) 140.0 0.0 true true 0 (li= ne 1)]=0A] -46.7 MRshow=0Agrestore=0ALT0=0A6395 4739 M=0A399 0 V=0A786 280 = M=0A45 2507 V=0A44 889 V=0A45 297 V=0A44 124 V=0A45 62 V=0A44 34 V=0A44 22 = V=0A45 14 V=0A44 10 V=0A45 7 V=0A44 5 V=0A45 4 V=0A44 3 V=0A44 3 V=0A45 2 V= =0A44 1 V=0A45 2 V=0A44 1 V=0A45 1 V=0A44 1 V=0A44 0 V=0A45 1 V=0A44 0 V=0A= 45 1 V=0A44 0 V=0A45 1 V=0A44 0 V=0A44 0 V=0A45 1 V=0A44 0 V=0A45 0 V=0A44 = 0 V=0A45 0 V=0A44 1 V=0A44 0 V=0A45 0 V=0A44 0 V=0A45 0 V=0A44 0 V=0A45 0 V= =0A44 0 V=0A44 0 V=0A45 1 V=0A44 0 V=0A45 0 V=0A44 0 V=0A45 0 V=0A44 0 V=0A= 44 0 V=0A45 0 V=0A44 0 V=0A45 0 V=0A44 0 V=0A45 0 V=0A44 0 V=0A44 0 V=0A45 = 0 V=0A44 0 V=0A45 0 V=0A44 0 V=0A45 0 V=0A44 0 V=0A44 0 V=0A45 0 V=0A44 0 V= =0A45 1 V=0A44 0 V=0A45 0 V=0A44 0 V=0A44 0 V=0A45 0 V=0A44 0 V=0A45 0 V=0A= 44 0 V=0A45 0 V=0A44 0 V=0A44 0 V=0A45 0 V=0A44 0 V=0A45 0 V=0A44 0 V=0A45 = 0 V=0A44 0 V=0A44 0 V=0A45 0 V=0A44 0 V=0A45 0 V=0A44 0 V=0A45 0 V=0A44 0 V= =0A44 0 V=0A45 0 V=0A44 0 V=0A45 0 V=0A44 0 V=0A45 0 V=0A44 0 V=0A44 0 V=0A= 45 0 V=0A44 0 V=0A45 0 V=0A44 0 V=0Astroke=0A5318 4276 M=0A45 0 V=0A44 0 V= =0A44 0 V=0A45 0 V=0A44 0 V=0A45 0 V=0A44 0 V=0A45 0 V=0A44 0 V=0A44 0 V=0A= 45 0 V=0A44 0 V=0A45 0 V=0A44 0 V=0A45 0 V=0A44 0 V=0A44 0 V=0A45 0 V=0A44 = 0 V=0A45 0 V=0A44 0 V=0A45 0 V=0A44 0 V=0A44 0 V=0A45 0 V=0A1.000 UL=0ALTb= =0A742 280 M=0A6220 0 V=0A0 4592 V=0A-6220 0 V=0A742 280 L=0A1.000 UP=0Astr= oke=0Agrestore=0Aend=0Ashowpage=0A%%Trailer=0A%%DocumentFonts: Helvetica=0A --mYCpIKhGyMATD0i+ Content-Type: application/postscript Content-Disposition: attachment; filename="Zz1_vs_Zz1a.eps" Content-Transfer-Encoding: quoted-printable %!PS-Adobe-2.0 EPSF-2.0=0A%%Title: Zz1_vs_Zz1a.eps=0A%%Creator: gnuplot 4.0= patchlevel 0=0A%%CreationDate: Wed Jan 12 16:23:29 2005=0A%%DocumentFonts:= (atend)=0A%%BoundingBox: 50 50 410 302=0A%%Orientation: Portrait=0A%%EndCo= mments=0A/gnudict 256 dict def=0Agnudict begin=0A/Color false def=0A/Solid = false def=0A/gnulinewidth 5.000 def=0A/userlinewidth gnulinewidth def=0A/vs= hift -46 def=0A/dl {10.0 mul} def=0A/hpt_ 31.5 def=0A/vpt_ 31.5 def=0A/hpt = hpt_ def=0A/vpt vpt_ def=0A/Rounded false def=0A/M {moveto} bind def=0A/L {= lineto} bind def=0A/R {rmoveto} bind def=0A/V {rlineto} bind def=0A/N {newp= ath moveto} bind def=0A/C {setrgbcolor} bind def=0A/f {rlineto fill} bind d= ef=0A/vpt2 vpt 2 mul def=0A/hpt2 hpt 2 mul def=0A/Lshow { currentpoint stro= ke M=0A 0 vshift R show } def=0A/Rshow { currentpoint stroke M=0A dup str= ingwidth pop neg vshift R show } def=0A/Cshow { currentpoint stroke M=0A d= up stringwidth pop -2 div vshift R show } def=0A/UP { dup vpt_ mul /vpt exc= h def hpt_ mul /hpt exch def=0A /hpt2 hpt 2 mul def /vpt2 vpt 2 mul def } = def=0A/DL { Color {setrgbcolor Solid {pop []} if 0 setdash }=0A {pop pop po= p 0 setgray Solid {pop []} if 0 setdash} ifelse } def=0A/BL { stroke userli= newidth 2 mul setlinewidth=0A Rounded { 1 setlinejoin 1 setlinecap } i= f } def=0A/AL { stroke userlinewidth 2 div setlinewidth=0A Rounded { 1= setlinejoin 1 setlinecap } if } def=0A/UL { dup gnulinewidth mul /userline= width exch def=0A dup 1 lt {pop 1} if 10 mul /udl exch def } def=0A/PL= { stroke userlinewidth setlinewidth=0A Rounded { 1 setlinejoin 1 setl= inecap } if } def=0A/LTw { PL [] 1 setgray } def=0A/LTb { BL [] 0 0 0 DL } = def=0A/LTa { AL [1 udl mul 2 udl mul] 0 setdash 0 0 0 setrgbcolor } def=0A/= LT0 { PL [] 1 0 0 DL } def=0A/LT1 { PL [4 dl 2 dl] 0 1 0 DL } def=0A/LT2 { = PL [2 dl 3 dl] 0 0 1 DL } def=0A/LT3 { PL [1 dl 1.5 dl] 1 0 1 DL } def=0A/L= T4 { PL [5 dl 2 dl 1 dl 2 dl] 0 1 1 DL } def=0A/LT5 { PL [4 dl 3 dl 1 dl 3 = dl] 1 1 0 DL } def=0A/LT6 { PL [2 dl 2 dl 2 dl 4 dl] 0 0 0 DL } def=0A/LT7 = { PL [2 dl 2 dl 2 dl 2 dl 2 dl 4 dl] 1 0.3 0 DL } def=0A/LT8 { PL [2 dl 2 d= l 2 dl 2 dl 2 dl 2 dl 2 dl 4 dl] 0.5 0.5 0.5 DL } def=0A/Pnt { stroke [] 0 = setdash=0A gsave 1 setlinecap M 0 0 V stroke grestore } def=0A/Dia { stro= ke [] 0 setdash 2 copy vpt add M=0A hpt neg vpt neg V hpt vpt neg V=0A hp= t vpt V hpt neg vpt V closepath stroke=0A Pnt } def=0A/Pls { stroke [] 0 s= etdash vpt sub M 0 vpt2 V=0A currentpoint stroke M=0A hpt neg vpt neg R h= pt2 0 V stroke=0A } def=0A/Box { stroke [] 0 setdash 2 copy exch hpt sub e= xch vpt add M=0A 0 vpt2 neg V hpt2 0 V 0 vpt2 V=0A hpt2 neg 0 V closepath= stroke=0A Pnt } def=0A/Crs { stroke [] 0 setdash exch hpt sub exch vpt ad= d M=0A hpt2 vpt2 neg V currentpoint stroke M=0A hpt2 neg 0 R hpt2 vpt2 V = stroke } def=0A/TriU { stroke [] 0 setdash 2 copy vpt 1.12 mul add M=0A hp= t neg vpt -1.62 mul V=0A hpt 2 mul 0 V=0A hpt neg vpt 1.62 mul V closepat= h stroke=0A Pnt } def=0A/Star { 2 copy Pls Crs } def=0A/BoxF { stroke [] = 0 setdash exch hpt sub exch vpt add M=0A 0 vpt2 neg V hpt2 0 V 0 vpt2 V= =0A hpt2 neg 0 V closepath fill } def=0A/TriUF { stroke [] 0 setdash vpt = 1.12 mul add M=0A hpt neg vpt -1.62 mul V=0A hpt 2 mul 0 V=0A hpt neg vp= t 1.62 mul V closepath fill } def=0A/TriD { stroke [] 0 setdash 2 copy vpt = 1.12 mul sub M=0A hpt neg vpt 1.62 mul V=0A hpt 2 mul 0 V=0A hpt neg vpt= -1.62 mul V closepath stroke=0A Pnt } def=0A/TriDF { stroke [] 0 setdash= vpt 1.12 mul sub M=0A hpt neg vpt 1.62 mul V=0A hpt 2 mul 0 V=0A hpt ne= g vpt -1.62 mul V closepath fill} def=0A/DiaF { stroke [] 0 setdash vpt add= M=0A hpt neg vpt neg V hpt vpt neg V=0A hpt vpt V hpt neg vpt V closepat= h fill } def=0A/Pent { stroke [] 0 setdash 2 copy gsave=0A translate 0 hpt= M 4 {72 rotate 0 hpt L} repeat=0A closepath stroke grestore Pnt } def=0A/= PentF { stroke [] 0 setdash gsave=0A translate 0 hpt M 4 {72 rotate 0 hpt = L} repeat=0A closepath fill grestore } def=0A/Circle { stroke [] 0 setdash= 2 copy=0A hpt 0 360 arc stroke Pnt } def=0A/CircleF { stroke [] 0 setdash= hpt 0 360 arc fill } def=0A/C0 { BL [] 0 setdash 2 copy moveto vpt 90 450 = arc } bind def=0A/C1 { BL [] 0 setdash 2 copy moveto=0A 2 cop= y vpt 0 90 arc closepath fill=0A vpt 0 360 arc closepath } b= ind def=0A/C2 { BL [] 0 setdash 2 copy moveto=0A 2 copy vpt 90 180 a= rc closepath fill=0A vpt 0 360 arc closepath } bind def=0A/C3= { BL [] 0 setdash 2 copy moveto=0A 2 copy vpt 0 180 arc closepath f= ill=0A vpt 0 360 arc closepath } bind def=0A/C4 { BL [] 0 set= dash 2 copy moveto=0A 2 copy vpt 180 270 arc closepath fill=0A = vpt 0 360 arc closepath } bind def=0A/C5 { BL [] 0 setdash 2 copy = moveto=0A 2 copy vpt 0 90 arc=0A 2 copy moveto=0A 2 copy= vpt 180 270 arc closepath fill=0A vpt 0 360 arc } bind def= =0A/C6 { BL [] 0 setdash 2 copy moveto=0A 2 copy vpt 90 270 arc close= path fill=0A vpt 0 360 arc closepath } bind def=0A/C7 { BL [] = 0 setdash 2 copy moveto=0A 2 copy vpt 0 270 arc closepath fill=0A = vpt 0 360 arc closepath } bind def=0A/C8 { BL [] 0 setdash 2 copy= moveto=0A 2 copy vpt 270 360 arc closepath fill=0A vpt 0= 360 arc closepath } bind def=0A/C9 { BL [] 0 setdash 2 copy moveto=0A = 2 copy vpt 270 450 arc closepath fill=0A vpt 0 360 arc close= path } bind def=0A/C10 { BL [] 0 setdash 2 copy 2 copy moveto vpt 270 360 a= rc closepath fill=0A 2 copy moveto=0A 2 copy vpt 90 180 arc clo= sepath fill=0A vpt 0 360 arc closepath } bind def=0A/C11 { BL= [] 0 setdash 2 copy moveto=0A 2 copy vpt 0 180 arc closepath fill= =0A 2 copy moveto=0A 2 copy vpt 270 360 arc closepath fill=0A = vpt 0 360 arc closepath } bind def=0A/C12 { BL [] 0 setdash 2= copy moveto=0A 2 copy vpt 180 360 arc closepath fill=0A = vpt 0 360 arc closepath } bind def=0A/C13 { BL [] 0 setdash 2 copy move= to=0A 2 copy vpt 0 90 arc closepath fill=0A 2 copy moveto=0A = 2 copy vpt 180 360 arc closepath fill=0A vpt 0 360 arc = closepath } bind def=0A/C14 { BL [] 0 setdash 2 copy moveto=0A 2 copy= vpt 90 360 arc closepath fill=0A vpt 0 360 arc } bind def= =0A/C15 { BL [] 0 setdash 2 copy vpt 0 360 arc closepath fill=0A = vpt 0 360 arc closepath } bind def=0A/Rec { newpath 4 2 roll moveto 1= index 0 rlineto 0 exch rlineto=0A neg 0 rlineto closepath } bind def= =0A/Square { dup Rec } bind def=0A/Bsquare { vpt sub exch vpt sub exch vpt2= Square } bind def=0A/S0 { BL [] 0 setdash 2 copy moveto 0 vpt rlineto BL B= square } bind def=0A/S1 { BL [] 0 setdash 2 copy vpt Square fill Bsquare } = bind def=0A/S2 { BL [] 0 setdash 2 copy exch vpt sub exch vpt Square fill B= square } bind def=0A/S3 { BL [] 0 setdash 2 copy exch vpt sub exch vpt2 vpt= Rec fill Bsquare } bind def=0A/S4 { BL [] 0 setdash 2 copy exch vpt sub ex= ch vpt sub vpt Square fill Bsquare } bind def=0A/S5 { BL [] 0 setdash 2 cop= y 2 copy vpt Square fill=0A exch vpt sub exch vpt sub vpt Square fill= Bsquare } bind def=0A/S6 { BL [] 0 setdash 2 copy exch vpt sub exch vpt su= b vpt vpt2 Rec fill Bsquare } bind def=0A/S7 { BL [] 0 setdash 2 copy exch = vpt sub exch vpt sub vpt vpt2 Rec fill=0A 2 copy vpt Square fill=0A = Bsquare } bind def=0A/S8 { BL [] 0 setdash 2 copy vpt sub vpt Square f= ill Bsquare } bind def=0A/S9 { BL [] 0 setdash 2 copy vpt sub vpt vpt2 Rec = fill Bsquare } bind def=0A/S10 { BL [] 0 setdash 2 copy vpt sub vpt Square = fill 2 copy exch vpt sub exch vpt Square fill=0A Bsquare } bind def= =0A/S11 { BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt su= b exch vpt2 vpt Rec fill=0A Bsquare } bind def=0A/S12 { BL [] 0 setda= sh 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill Bsquare } bind def=0A= /S13 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill= =0A 2 copy vpt Square fill Bsquare } bind def=0A/S14 { BL [] 0 setdas= h 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill=0A 2 copy exch v= pt sub exch vpt Square fill Bsquare } bind def=0A/S15 { BL [] 0 setdash 2 c= opy Bsquare fill Bsquare } bind def=0A/D0 { gsave translate 45 rotate 0 0 S= 0 stroke grestore } bind def=0A/D1 { gsave translate 45 rotate 0 0 S1 strok= e grestore } bind def=0A/D2 { gsave translate 45 rotate 0 0 S2 stroke grest= ore } bind def=0A/D3 { gsave translate 45 rotate 0 0 S3 stroke grestore } b= ind def=0A/D4 { gsave translate 45 rotate 0 0 S4 stroke grestore } bind def= =0A/D5 { gsave translate 45 rotate 0 0 S5 stroke grestore } bind def=0A/D6 = { gsave translate 45 rotate 0 0 S6 stroke grestore } bind def=0A/D7 { gsave= translate 45 rotate 0 0 S7 stroke grestore } bind def=0A/D8 { gsave transl= ate 45 rotate 0 0 S8 stroke grestore } bind def=0A/D9 { gsave translate 45 = rotate 0 0 S9 stroke grestore } bind def=0A/D10 { gsave translate 45 rotate= 0 0 S10 stroke grestore } bind def=0A/D11 { gsave translate 45 rotate 0 0 = S11 stroke grestore } bind def=0A/D12 { gsave translate 45 rotate 0 0 S12 s= troke grestore } bind def=0A/D13 { gsave translate 45 rotate 0 0 S13 stroke= grestore } bind def=0A/D14 { gsave translate 45 rotate 0 0 S14 stroke gres= tore } bind def=0A/D15 { gsave translate 45 rotate 0 0 S15 stroke grestore = } bind def=0A/DiaE { stroke [] 0 setdash vpt add M=0A hpt neg vpt neg V hp= t vpt neg V=0A hpt vpt V hpt neg vpt V closepath stroke } def=0A/BoxE { st= roke [] 0 setdash exch hpt sub exch vpt add M=0A 0 vpt2 neg V hpt2 0 V 0 v= pt2 V=0A hpt2 neg 0 V closepath stroke } def=0A/TriUE { stroke [] 0 setdas= h vpt 1.12 mul add M=0A hpt neg vpt -1.62 mul V=0A hpt 2 mul 0 V=0A hpt = neg vpt 1.62 mul V closepath stroke } def=0A/TriDE { stroke [] 0 setdash vp= t 1.12 mul sub M=0A hpt neg vpt 1.62 mul V=0A hpt 2 mul 0 V=0A hpt neg v= pt -1.62 mul V closepath stroke } def=0A/PentE { stroke [] 0 setdash gsave= =0A translate 0 hpt M 4 {72 rotate 0 hpt L} repeat=0A closepath stroke gr= estore } def=0A/CircE { stroke [] 0 setdash =0A hpt 0 360 arc stroke } def= =0A/Opaque { gsave closepath 1 setgray fill grestore 0 setgray closepath } = def=0A/DiaW { stroke [] 0 setdash vpt add M=0A hpt neg vpt neg V hpt vpt n= eg V=0A hpt vpt V hpt neg vpt V Opaque stroke } def=0A/BoxW { stroke [] 0 = setdash exch hpt sub exch vpt add M=0A 0 vpt2 neg V hpt2 0 V 0 vpt2 V=0A = hpt2 neg 0 V Opaque stroke } def=0A/TriUW { stroke [] 0 setdash vpt 1.12 mu= l add M=0A hpt neg vpt -1.62 mul V=0A hpt 2 mul 0 V=0A hpt neg vpt 1.62 = mul V Opaque stroke } def=0A/TriDW { stroke [] 0 setdash vpt 1.12 mul sub M= =0A hpt neg vpt 1.62 mul V=0A hpt 2 mul 0 V=0A hpt neg vpt -1.62 mul V O= paque stroke } def=0A/PentW { stroke [] 0 setdash gsave=0A translate 0 hpt= M 4 {72 rotate 0 hpt L} repeat=0A Opaque stroke grestore } def=0A/CircW {= stroke [] 0 setdash =0A hpt 0 360 arc Opaque stroke } def=0A/BoxFill { gs= ave Rec 1 setgray fill grestore } def=0A/BoxColFill {=0A gsave Rec=0A /Fi= llden exch def=0A currentrgbcolor=0A /ColB exch def /ColG exch def /ColR = exch def=0A /ColR ColR Fillden mul Fillden sub 1 add def=0A /ColG ColG Fi= llden mul Fillden sub 1 add def=0A /ColB ColB Fillden mul Fillden sub 1 ad= d def=0A ColR ColG ColB setrgbcolor=0A fill grestore } def=0A%=0A% PostSc= ript Level 1 Pattern Fill routine=0A% Usage: x y w h s a XX PatternFill=0A%= x,y =3D lower left corner of box to be filled=0A% w,h =3D width and height= of box=0A% a =3D angle in degrees between lines and x-axis=0A% XX =3D 0= /1 for no/yes cross-hatch=0A%=0A/PatternFill { gsave /PFa [ 9 2 roll ] def= =0A PFa 0 get PFa 2 get 2 div add PFa 1 get PFa 3 get 2 div add translat= e=0A PFa 2 get -2 div PFa 3 get -2 div PFa 2 get PFa 3 get Rec=0A gsa= ve 1 setgray fill grestore clip=0A currentlinewidth 0.5 mul setlinewidth= =0A /PFs PFa 2 get dup mul PFa 3 get dup mul add sqrt def=0A 0 0 M PF= a 5 get rotate PFs -2 div dup translate=0A 0 1 PFs PFa 4 get div 1 add floo= r cvi=0A { PFa 4 get mul 0 M 0 PFs V } for=0A 0 PFa 6 get ne {=0A 0 1 PF= s PFa 4 get div 1 add floor cvi=0A { PFa 4 get mul 0 2 1 roll M PFs 0 V } f= or=0A } if=0A stroke grestore } def=0A%=0A/Symbol-Oblique /Symbol fin= dfont [1 0 .167 1 0 0] makefont=0Adup length dict begin {1 index /FID eq {p= op pop} {def} ifelse} forall=0Acurrentdict end definefont pop=0A/MFshow {= =0A { dup 5 get 3 ge=0A { 5 get 3 eq {gsave} {grestore} ifelse }=0A = {dup dup 0 get findfont exch 1 get scalefont setfont=0A [ currentpoi= nt ] exch dup 2 get 0 exch R dup 5 get 2 ne {dup dup 6=0A get exch 4 ge= t {show} {stringwidth pop 0 R} ifelse }if dup 5 get 0 eq=0A {dup 3 get = {2 get neg 0 exch R pop} {pop aload pop M} ifelse} {dup 5=0A get 1 eq {= dup 2 get exch dup 3 get exch 6 get stringwidth pop -2 div=0A dup 0 R} = {dup 6 get stringwidth pop -2 div 0 R 6 get=0A show 2 index {aload pop = M neg 3 -1 roll neg R pop pop} {pop pop pop=0A pop aload pop M} ifelse = }ifelse }ifelse }=0A ifelse }=0A forall} bind def=0A/MFwidth {0 exch = {dup 3 get{dup dup 0 get findfont exch 1 get scalefont=0A setfont 6 get= stringwidth pop add} {pop} ifelse} forall} bind def=0A/MLshow { currentpoi= nt stroke M=0A 0 exch R MFshow } bind def=0A/MRshow { currentpoint stroke = M=0A exch dup MFwidth neg 3 -1 roll R MFshow } def=0A/MCshow { currentpoin= t stroke M=0A exch dup MFwidth -2 div 3 -1 roll R MFshow } def=0Aend=0A%%E= ndProlog=0Agnudict begin=0Agsave=0A50 50 translate=0A0.050 0.050 scale=0A0 = setgray=0Anewpath=0A(Helvetica) findfont 140 scalefont setfont=0A1.000 UL= =0ALTb=0A742 280 M=0A63 0 V=0A6157 0 R=0A-63 0 V=0Astroke=0A658 280 M=0Agsa= ve 0 setgray=0A[ [(Helvetica) 140.0 0.0 true true 0 ( 0)]=0A] -46.7 MRshow= =0Agrestore=0A1.000 UL=0ALTb=0A742 1045 M=0A63 0 V=0A6157 0 R=0A-63 0 V=0As= troke=0A658 1045 M=0Agsave 0 setgray=0A[ [(Helvetica) 140.0 0.0 true true 0= ( 1e-16)]=0A] -46.7 MRshow=0Agrestore=0A1.000 UL=0ALTb=0A742 1811 M=0A63 0= V=0A6157 0 R=0A-63 0 V=0Astroke=0A658 1811 M=0Agsave 0 setgray=0A[ [(Helve= tica) 140.0 0.0 true true 0 ( 2e-16)]=0A] -46.7 MRshow=0Agrestore=0A1.000 U= L=0ALTb=0A742 2576 M=0A63 0 V=0A6157 0 R=0A-63 0 V=0Astroke=0A658 2576 M=0A= gsave 0 setgray=0A[ [(Helvetica) 140.0 0.0 true true 0 ( 3e-16)]=0A] -46.7 = MRshow=0Agrestore=0A1.000 UL=0ALTb=0A742 3341 M=0A63 0 V=0A6157 0 R=0A-63 0= V=0Astroke=0A658 3341 M=0Agsave 0 setgray=0A[ [(Helvetica) 140.0 0.0 true = true 0 ( 4e-16)]=0A] -46.7 MRshow=0Agrestore=0A1.000 UL=0ALTb=0A742 4107 M= =0A63 0 V=0A6157 0 R=0A-63 0 V=0Astroke=0A658 4107 M=0Agsave 0 setgray=0A[ = [(Helvetica) 140.0 0.0 true true 0 ( 5e-16)]=0A] -46.7 MRshow=0Agrestore=0A= 1.000 UL=0ALTb=0A742 4872 M=0A63 0 V=0A6157 0 R=0A-63 0 V=0Astroke=0A658 48= 72 M=0Agsave 0 setgray=0A[ [(Helvetica) 140.0 0.0 true true 0 ( 6e-16)]=0A]= -46.7 MRshow=0Agrestore=0A1.000 UL=0ALTb=0A742 280 M=0A0 63 V=0A0 4529 R= =0A0 -63 V=0Astroke=0A742 140 M=0Agsave 0 setgray=0A[ [(Helvetica) 140.0 0.= 0 true true 0 ( 0)]=0A] -46.7 MCshow=0Agrestore=0A1.000 UL=0ALTb=0A1631 280= M=0A0 63 V=0A0 4529 R=0A0 -63 V=0Astroke=0A1631 140 M=0Agsave 0 setgray=0A= [ [(Helvetica) 140.0 0.0 true true 0 ( 20)]=0A] -46.7 MCshow=0Agrestore=0A1= =2E000 UL=0ALTb=0A2519 280 M=0A0 63 V=0A0 4529 R=0A0 -63 V=0Astroke=0A2519 = 140 M=0Agsave 0 setgray=0A[ [(Helvetica) 140.0 0.0 true true 0 ( 40)]=0A] -= 46.7 MCshow=0Agrestore=0A1.000 UL=0ALTb=0A3408 280 M=0A0 63 V=0A0 4529 R=0A= 0 -63 V=0Astroke=0A3408 140 M=0Agsave 0 setgray=0A[ [(Helvetica) 140.0 0.0 = true true 0 ( 60)]=0A] -46.7 MCshow=0Agrestore=0A1.000 UL=0ALTb=0A4296 280 = M=0A0 63 V=0A0 4529 R=0A0 -63 V=0Astroke=0A4296 140 M=0Agsave 0 setgray=0A[= [(Helvetica) 140.0 0.0 true true 0 ( 80)]=0A] -46.7 MCshow=0Agrestore=0A1.= 000 UL=0ALTb=0A5185 280 M=0A0 63 V=0A0 4529 R=0A0 -63 V=0Astroke=0A5185 140= M=0Agsave 0 setgray=0A[ [(Helvetica) 140.0 0.0 true true 0 ( 100)]=0A] -46= =2E7 MCshow=0Agrestore=0A1.000 UL=0ALTb=0A6073 280 M=0A0 63 V=0A0 4529 R=0A= 0 -63 V=0Astroke=0A6073 140 M=0Agsave 0 setgray=0A[ [(Helvetica) 140.0 0.0 = true true 0 ( 120)]=0A] -46.7 MCshow=0Agrestore=0A1.000 UL=0ALTb=0A6962 280= M=0A0 63 V=0A0 4529 R=0A0 -63 V=0Astroke=0A6962 140 M=0Agsave 0 setgray=0A= [ [(Helvetica) 140.0 0.0 true true 0 ( 140)]=0A] -46.7 MCshow=0Agrestore=0A= 1.000 UL=0ALTb=0A1.000 UL=0ALTb=0A742 280 M=0A6220 0 V=0A0 4592 V=0A-6220 0= V=0A742 280 L=0A1.000 UP=0A1.000 UL=0ALT0=0ALTb=0A6311 4739 M=0Agsave 0 se= tgray=0A[ [(Helvetica) 140.0 0.0 true true 0 (line 1)]=0A] -46.7 MRshow=0Ag= restore=0ALT0=0A6395 4739 M=0A399 0 V=0A786 280 M=0A45 4333 V=0A875 2180 L= =0A45 -838 V=0A964 755 L=0A45 -369 V=0A44 459 V=0A44 -299 V=0A45 -54 V=0A44= 7 V=0A45 -113 V=0A44 -53 V=0A45 97 V=0A44 -17 V=0A44 0 V=0A45 0 V=0A44 -80= V=0A45 66 V=0A44 -92 V=0A45 0 V=0A44 26 V=0A44 -26 V=0A45 92 V=0A44 -92 V= =0A45 0 V=0A44 -27 V=0A45 0 V=0A44 53 V=0A44 -26 V=0A45 -27 V=0A44 0 V=0A45= 0 V=0A44 53 V=0A45 -53 V=0A44 0 V=0A44 53 V=0A45 -53 V=0A44 38 V=0A45 -38 = V=0A44 27 V=0A45 11 V=0A44 -38 V=0A44 0 V=0A45 27 V=0A44 0 V=0A45 -27 V=0A4= 4 27 V=0A45 -27 V=0A44 38 V=0A44 0 V=0A45 -11 V=0A44 -27 V=0A45 0 V=0A44 30= V=0A45 0 V=0A44 -17 V=0A44 -13 V=0A45 30 V=0A44 -17 V=0A45 17 V=0A44 -30 V= =0A45 0 V=0A44 13 V=0A44 6 V=0A45 -6 V=0A44 -13 V=0A45 13 V=0A44 0 V=0A45 -= 13 V=0A44 0 V=0A44 13 V=0A45 0 V=0A44 0 V=0A45 6 V=0A44 -19 V=0A45 0 V=0A44= 13 V=0A44 0 V=0A45 -13 V=0A44 0 V=0A45 0 V=0A44 13 V=0A45 -13 V=0A44 13 V= =0A44 -13 V=0A45 0 V=0A44 13 V=0A45 6 V=0A44 -6 V=0A45 -13 V=0A44 7 V=0A44 = 0 V=0A45 0 V=0A44 -7 V=0A45 7 V=0A44 -7 V=0A45 7 V=0A44 6 V=0A44 0 V=0A45 2= V=0A44 -15 V=0A45 24 V=0A44 -24 V=0Astroke=0A5318 280 M=0A45 19 V=0A44 -19= V=0A44 7 V=0A45 0 V=0A44 -7 V=0A45 15 V=0A44 -1 V=0A45 -14 V=0A44 0 V=0A44= 14 V=0A45 -14 V=0A44 3 V=0A45 11 V=0A44 -14 V=0A45 0 V=0A44 0 V=0A44 0 V= =0A45 0 V=0A44 0 V=0A45 0 V=0A44 0 V=0A45 13 V=0A44 0 V=0A44 -13 V=0A45 0 V= =0A1.000 UL=0ALTb=0A742 280 M=0A6220 0 V=0A0 4592 V=0A-6220 0 V=0A742 280 L= =0A1.000 UP=0Astroke=0Agrestore=0Aend=0Ashowpage=0A%%Trailer=0A%%DocumentFo= nts: Helvetica=0A --mYCpIKhGyMATD0i+-- ------------------------------------------------------------- Octave is freely available under the terms of the GNU GPL. Octave's home on the web: http://www.octave.org How to fund new projects: http://www.octave.org/funding.html Subscription information: http://www.octave.org/archive.html -------------------------------------------------------------