{VERSION 5 0 "IBM INTEL LINUX" "5.0" } {USTYLETAB {CSTYLE "Maple Input" -1 0 "Courier" 0 1 255 0 0 1 0 1 0 0 1 0 0 0 0 1 }{PSTYLE "Normal" -1 0 1 {CSTYLE "" -1 -1 "" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "Text Ou tput" -1 2 1 {CSTYLE "" -1 -1 "Courier" 1 10 0 0 255 1 0 0 0 0 0 1 3 0 3 0 }1 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "Warning" 2 7 1 {CSTYLE "" -1 -1 "" 0 1 0 0 255 1 0 0 0 0 0 0 1 0 0 0 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "" 0 256 1 {CSTYLE "" -1 -1 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }} {SECT 0 {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 8 "restart:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "read \"mobius.mpl\";" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 27 "read \"MobiusonCircles.mpl\";" }} {PARA 7 "" 1 "" {TEXT -1 50 "Warning, the name changecoords has been r edefined\n" }}{PARA 7 "" 1 "" {TEXT -1 43 "Warning, the name arrow has been redefined\n" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 26 "m:=Mat rix([[1,-1],[1,1]]):" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 15 "First gen erator" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 65 "amatrix:=k->\n m^(-1) . Matrix([[sqrt(k),0],[0,1/sqrt(k)]]) . m:" }}}{EXCHG {PARA 0 "> " 0 " " {MPLTEXT 1 0 27 "m2:=Matrix([[1,-I],[1,I]]):" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 16 "Second generator" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 66 "bmatrix:=k->\n m2^(-1) . Matrix([[sqrt(k),0],[0,1/sqrt(k)]]) . m2 :" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 19 "multa:=6: multb:=6:" } }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 42 "Fix generators and abbreviate th e inverses" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 59 "a:=amatrix(multa): b: =bmatrix(multb): A:=a^(-1): B:=b^(-1):" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 39 "Disk around attractive fixed point of a" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 57 "CA:=Hcircle((1+multa)/(multa-1),2*sqrt(multa)/(m ulta-1)):" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 24 "Apply A to previous \+ disk" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 20 "Ca:=CircleMap(a,CA):" }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 39 "Disk around attractive fixed point of b" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 59 "CB:=Hcircle(I*(1+multb)/(m ultb-1),2*sqrt(multb)/(multb-1)):" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 24 "Apply B to previous disk" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 20 "Cb: =CircleMap(b,CB):" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 24 "circle s0:=[Ca,CA,Cb,CB]:" }}}{EXCHG {PARA 256 "" 0 "" {TEXT -1 72 "ARRANGE \+ MULTIPLIERS OF a, b and circles so that they are all disjoint!!" }} {PARA 0 "> " 0 "" {MPLTEXT 1 0 74 "display( map(PlotHcircle,circles0), \n scaling=constrained, axes=boxed );" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 26 "Generate a vector of words" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 71 "v:=evalf([a,b,A,B, a.b,a.a,a.B, b.a,b.b,b.A, A.b,A.A,A.B,B.A,B .B,B.a]):" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 26 "Generate a list of c ircles" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 86 "circles:=evalf([ op(circl es0) , op(map( C->op( map( CircleMap, v, C ) ),circles0)) ]):" }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 19 "Display the circles" }}{PARA 0 "> \+ " 0 "" {MPLTEXT 1 0 73 "display( map(PlotHcircle,circles),\n scalin g=constrained, axes=boxed );" }}}}{MARK "0 0 0" 8 }{VIEWOPTS 1 1 0 1 1 1803 1 1 1 1 }{PAGENUMBERS 0 1 2 33 1 1 }