{VERSION 5 0 "IBM INTEL NT" "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 }{CSTYLE "2D Math" -1 2 "Times" 0 1 0 0 0 0 0 0 2 0 0 0 0 0 0 1 }{CSTYLE "2D Output" 2 20 "" 0 1 0 0 255 1 0 0 0 0 0 0 0 0 0 1 } {CSTYLE "" -1 256 "Geneva" 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 1 }{CSTYLE " " -1 257 "Geneva" 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 258 " Geneva" 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 259 "Geneva" 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 260 "Geneva" 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 261 "Geneva" 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 262 "Geneva" 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 263 "Geneva" 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 1 }{CSTYLE " " -1 264 "Geneva" 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 265 " Geneva" 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 266 "Geneva" 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 267 "Geneva" 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 268 "Geneva" 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 269 "Geneva" 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 270 "Geneva" 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 1 }{CSTYLE " " -1 271 "Geneva" 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 272 " Geneva" 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 273 "Geneva" 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 274 "Geneva" 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 275 "Geneva" 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 276 "Geneva" 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 277 "Geneva" 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 1 }{CSTYLE " " -1 278 "Geneva" 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 279 " Geneva" 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 1 }{PSTYLE "Normal" -1 0 1 {CSTYLE "" -1 -1 "Geneva" 1 14 0 0 0 1 2 1 2 2 2 2 1 1 1 1 }1 1 0 0 0 0 1 0 1 0 2 2 0 1 }{PSTYLE "Text Output" -1 6 1 {CSTYLE "" -1 -1 "Cour ier" 1 10 0 0 255 1 2 2 2 2 2 1 2 1 1 1 }1 1 0 0 0 0 1 0 1 0 2 2 0 1 } {PSTYLE "Maple Output" -1 11 1 {CSTYLE "" -1 -1 "Geneva" 1 14 0 0 0 1 2 1 2 2 2 2 1 1 1 1 }3 3 0 0 0 0 1 0 1 0 2 2 0 1 }{PSTYLE "Maple Plot " -1 13 1 {CSTYLE "" -1 -1 "Geneva" 1 14 0 0 0 1 2 1 2 2 2 2 1 1 1 1 } 3 1 0 0 0 0 1 0 1 0 2 2 0 1 }{PSTYLE "Title" -1 18 1 {CSTYLE "" -1 -1 "Geneva" 1 18 0 0 0 1 2 1 1 2 2 2 1 1 1 1 }3 1 0 0 12 12 1 0 1 0 2 2 19 1 }{PSTYLE "R3 Font 0" -1 256 1 {CSTYLE "" -1 -1 "Monaco" 1 14 0 0 255 1 2 1 2 2 2 2 1 1 1 1 }1 1 0 0 0 0 1 0 1 0 2 2 0 1 }{PSTYLE "R3 Fo nt 2" -1 257 1 {CSTYLE "" -1 -1 "Monaco" 1 12 255 0 0 1 2 2 2 2 2 2 1 1 1 1 }1 1 0 0 0 0 1 0 1 0 2 2 0 1 }} {SECT 0 {EXCHG {PARA 18 "" 0 "" {TEXT -1 15 "Newton's Method" }}} {EXCHG {PARA 256 "" 0 "" {TEXT 256 274 "Suppose we wish to solve the e quation F(x,y) = (1,1) where F: R^2->R^2\nis given by:\n\011F(x,y)= (x ^3 - 2*x*y^2 +2x, x^2*y -y^3 +2y)\nNewton's method consists of taking \+ an intial guess and then using \nrepeated linear approximation and ev aluation to try and improve this guess.\n\n" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 12 "with(plots):" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 25 "with(linalg): Digits:=10;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%' DigitsG\"#5" }}}{EXCHG {PARA 256 "" 0 "" {TEXT 257 100 "A very natural way to enter an R^n valued function of several variables\nis as a lis t of expressions." }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 44 "F := [x^3 - 2* x*y^2 + 2*x, x^2*y -y^3 +2*y];" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\" FG7$,(*$)%\"xG\"\"$\"\"\"F+*(\"\"#F+F)F+)%\"yGF-F+!\"\"*&F-F+F)F+F+,(* &)F)F-F+F/F+F+*$)F/F*F+F0*&F-F+F/F+F+" }}}{EXCHG {PARA 256 "" 0 "" {TEXT 258 22 "# The derivative of F." }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 24 "DF := jacobian(F,[x,y]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#D FG-%'matrixG6#7$7$,(*$)%\"xG\"\"#\"\"\"\"\"$*&F.F/)%\"yGF.F/!\"\"F.F/, $*&F-F/F3F/!\"%7$,$F6F.,(F+F/*&F0F/F2F/F4F.F/" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 11 "q := [1,1];" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#> %\"qG7$\"\"\"F&" }}}{EXCHG {PARA 256 "" 0 "" {TEXT 259 13 "A first ste p:" }{TEXT -1 1 "\n" }{TEXT 260 98 "Suppose we take p[0] = (1,1) as an initial guess to the solution.\nWe are trying to solve F(p) = q." }} {PARA 0 "> " 0 "" {MPLTEXT 1 0 14 "p[0] := [1,1];" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>&%\"pG6#\"\"!7$\"\"\"F)" }}}{EXCHG {PARA 256 "" 0 "" {TEXT 261 300 "\nNewton iteration is based on the linear solution sug gested by\n \011F(p[1]) - F(p[0]) approx DF(p[ 0])(p[1] - p[0]),\nso\n \011q - F(p[0]) is appr ox DF(p[0])(p[1] - p[0])\nleading to the choice\n \+ \011p[1] = p[0] + (Df(p[0])^(-1) (q - F(p[0]))." }}{PARA 256 "" 0 " " {TEXT 262 93 "The following helper function enables us to more easil y use map to plug values into F and DF." }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 39 "subs2 := proc(c,a,b)\n\011subs(a,b,c)\n\011end;" }}{PARA 11 " " 1 "" {XPPMATH 20 "6#>%&subs2Gf*6%%\"cG%\"aG%\"bG6\"F*F*-%%subsG6%9%9 &9$F*F*F*" }}}{EXCHG {PARA 256 "" 0 "" {TEXT 263 112 "To be sure of st aying numerical \n \011\011map(evalf,map(subs2,F,x=p[0 ][1],y=p[0][2]))\nwould be useful." }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 42 "F_val := map(subs2,F,x=p[0][1],y=p[0][2]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%&F_valG7$\"\"\"\"\"#" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 55 "DF_val := map(evalf,map(subs2,DF,x=p[0][1],y=p[0][2]) );" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%'DF_valG-%'matrixG6#7$7$$\"\"$ \"\"!$!\"%F,7$$\"\"#F,$F,F," }}}{EXCHG {PARA 256 "" 0 "" {TEXT 264 77 "This is one Newton step, producing the attempted improvement in \nthe solution" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 47 "p[1] := evalm(p[0]+ DF _val^(-1) &* (q- F_val));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>&%\"pG6# \"\"\"-%'vectorG6#7$$\"+++++]!#5$\"++++]iF." }}}{EXCHG {PARA 256 "" 0 "" {TEXT 265 173 "Technically, p[1] is now a vector rather than a list .\nThis is relevant for graphing, since there lists may be required.\n \011p_as_list[1] : = convert(p[1],list) \nwould fix this" }}{PARA 0 " > " 0 "" {MPLTEXT 1 0 15 "whattype(p[0]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%%listG" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 15 "w hattype(p[1]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%(indexedG" }}} {EXCHG {PARA 256 "" 0 "" {TEXT 266 31 "This can all be done in a loop: " }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 16 "Num_Steps := 10;" }}{PARA 11 " " 1 "" {XPPMATH 20 "6#>%*Num_StepsG\"#5" }}}{EXCHG {PARA 256 "" 0 "" {TEXT 267 61 "Repeating the earlier computations to have them in one p lace." }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 44 "F := [x^3 - 2*x*y^2 + 2*x, x^2*y -y^3 +2*y];" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"FG7$,(*$)%\" xG\"\"$\"\"\"F+*(\"\"#F+F)F+)%\"yGF-F+!\"\"*&F-F+F)F+F+,(*&)F)F-F+F/F+ F+*$)F/F*F+F0*&F-F+F/F+F+" }}}{EXCHG {PARA 256 "" 0 "" {TEXT 268 22 "# The derivative of F." }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 24 "DF := jaco bian(F,[x,y]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#DFG-%'matrixG6#7$ 7$,(*$)%\"xG\"\"#\"\"\"\"\"$*&F.F/)%\"yGF.F/!\"\"F.F/,$*&F-F/F3F/!\"%7 $,$F6F.,(F+F/*&F0F/F2F/F4F.F/" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 14 "p[0] := [1,1];" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>&%\"pG6#\"\"! 7$\"\"\"F)" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 11 "q := [1,1];" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"qG7$\"\"\"F&" }}}{EXCHG {PARA 256 "" 0 "" {TEXT 269 135 "The workhorse loop:\n(Changing od: to od; w ould print more output. There is also a simpler to\nuse print command \+ for unformattet output.)" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 341 "for i \+ from 1 to Num_Steps do\n F_val := map(subs2,F,x=p[i-1][1],y=p[i-1 ][2]);\n\011 printf(`Old function value is: %a \\n`,F_val);\n \+ DF_val := map(evalf,map(subs2,DF,x=p[i-1][1],y=p[i-1][2]));\n p[ i] := evalm(p[i-1]+ DF_val^(-1) &* (q- F_val));\n printf(`\\tPoin t %d is: %a \\n`,i,convert(p[i],list));\n printf(`\\n`);\nod: " }}{PARA 6 "" 1 "" {TEXT -1 33 "Old function value is: [1, 2] " }} {PARA 6 "" 1 "" {TEXT -1 43 "\011Point 1 is: [.5000000000, .6250000 000] " }}{PARA 6 "" 1 "" {TEXT -1 0 "" }}{PARA 6 "" 1 "" {TEXT -1 53 " Old function value is: [.7343750000, 1.162109375] " }}{PARA 6 "" 1 "" {TEXT -1 43 "\011Point 2 is: [.5288380696, .4579199597] " }} {PARA 6 "" 1 "" {TEXT -1 0 "" }}{PARA 6 "" 1 "" {TEXT -1 53 "Old funct ion value is: [.9837912861, .9478847069] " }}{PARA 6 "" 1 "" {TEXT -1 43 "\011Point 3 is: [.5461440145, .4844155067] " }}{PARA 6 "" 1 "" {TEXT -1 0 "" }}{PARA 6 "" 1 "" {TEXT -1 53 "Old function value is: [.9988736552, .9996470584] " }}{PARA 6 "" 1 "" {TEXT -1 43 "\011Po int 4 is: [.5466340234, .4844742582] " }}{PARA 6 "" 1 "" {TEXT -1 0 "" }}{PARA 6 "" 1 "" {TEXT -1 53 "Old function value is: [1.00000 0334, 1.000000143] " }}{PARA 6 "" 1 "" {TEXT -1 43 "\011Point 5 is: \+ [.5466338690, .4844742198] " }}{PARA 6 "" 1 "" {TEXT -1 0 "" }}{PARA 6 "" 1 "" {TEXT -1 53 "Old function value is: [1.000000000, .999999 9999] " }}{PARA 6 "" 1 "" {TEXT -1 43 "\011Point 6 is: [.5466338690 , .4844742199] " }}{PARA 6 "" 1 "" {TEXT -1 0 "" }}{PARA 6 "" 1 "" {TEXT -1 53 "Old function value is: [1.000000000, .9999999998] " }} {PARA 6 "" 1 "" {TEXT -1 43 "\011Point 7 is: [.5466338690, .4844742 200] " }}{PARA 6 "" 1 "" {TEXT -1 0 "" }}{PARA 6 "" 1 "" {TEXT -1 53 " Old function value is: [.9999999999, .9999999997] " }}{PARA 6 "" 1 "" {TEXT -1 43 "\011Point 8 is: [.5466338691, .4844742202] " }} {PARA 6 "" 1 "" {TEXT -1 0 "" }}{PARA 6 "" 1 "" {TEXT -1 53 "Old funct ion value is: [.9999999997, 1.000000001] " }}{PARA 6 "" 1 "" {TEXT -1 43 "\011Point 9 is: [.5466338690, .4844742196] " }}{PARA 6 "" 1 "" {TEXT -1 0 "" }}{PARA 6 "" 1 "" {TEXT -1 53 "Old function value is: [1.000000000, .9999999990] " }}{PARA 6 "" 1 "" {TEXT -1 44 "\011Po int 10 is: [.5466338692, .4844742201] " }}{PARA 6 "" 1 "" {TEXT -1 0 "" }}}{EXCHG {PARA 256 "" 0 "" {TEXT 270 55 "We can look at the sequ ence of points we are producing:" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 44 " add_an_o := u -> [op(convert(u,list)),`o`];" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%)add_an_oGf*6#%\"uG6\"6$%)operatorG%&arrowGF(7$-%#opG 6#-%(convertG6$9$%%listG%\"oGF(F(F(" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 16 "add_an_o(p[1]);;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7 %$\"+++++]!#5$\"++++]iF&%\"oG" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 44 "points := [seq(convert(p[i],list),i=1..10)]:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 42 "points_with_labels:= map(add_an_o,points): " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 29 "textplot(points_with_la bels);" }}{PARA 13 "" 1 "" {GLPLOT2D 254 254 254 {PLOTDATA 2 "6,-%%TEX TG6$7$$\"+++++]!#5$\"++++]iF)Q\"o6\"-F$6$7$$\"+'p!Q)G&F)$\"+(f*>zXF)F, -F$6$7$$\"+X,WhaF)$\"+n]:W[F)F,-F$6$7$$\"+M-MmaF)$\"+#eUZ%[F)F,-F$6$7$ $\"+!pQjY&F)$\"+)>UZ%[F)F,-F$6$7$FF$\"+*>UZ%[F)F,-F$6$7$FF$\"++AuW[F)F ,-F$6$7$$\"+\"pQjY&F)$\"+-AuW[F)F,-F$6$7$FF$\"+'>UZ%[F)F,-F$6$7$$\"+#p QjY&F)$\"+,AuW[F)F," 1 2 0 1 10 0 2 9 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" "Curve 2" "Curve 3" "Curve 4" "Curve 5" "Curve 6" "Curve 7" "Curve 8" "Curve 9" "Curve 10" }}}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 "\n" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 63 " textplot(points_with_labels,view=[0.52 .. 0.55, 0.44 .. 0.49]);" }} {PARA 13 "" 1 "" {GLPLOT2D 254 254 254 {PLOTDATA 2 "6--%%TEXTG6$7$$\"+ ++++]!#5$\"++++]iF)Q\"o6\"-F$6$7$$\"+'p!Q)G&F)$\"+(f*>zXF)F,-F$6$7$$\" +X,WhaF)$\"+n]:W[F)F,-F$6$7$$\"+M-MmaF)$\"+#eUZ%[F)F,-F$6$7$$\"+!pQjY& F)$\"+)>UZ%[F)F,-F$6$7$FF$\"+*>UZ%[F)F,-F$6$7$FF$\"++AuW[F)F,-F$6$7$$ \"+\"pQjY&F)$\"+-AuW[F)F,-F$6$7$FF$\"+'>UZ%[F)F,-F$6$7$$\"+#pQjY&F)$\" +,AuW[F)F,-%%VIEWG6$;$\"#_!\"#$\"#bFgo;$\"#WFgo$\"#\\Fgo" 1 2 0 1 10 0 2 9 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" "Curve 2" "Curv e 3" "Curve 4" "Curve 5" "Curve 6" "Curve 7" "Curve 8" "Curve 9" "Curv e 10" }}}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 67 "textplot(points_wi th_labels,view=[0.546 .. 0.547, 0.484 .. 0.485]);" }}{PARA 13 "" 1 "" {GLPLOT2D 254 254 254 {PLOTDATA 2 "6--%%TEXTG6$7$$\"+++++]!#5$\"++++]i F)Q\"o6\"-F$6$7$$\"+'p!Q)G&F)$\"+(f*>zXF)F,-F$6$7$$\"+X,WhaF)$\"+n]:W[ F)F,-F$6$7$$\"+M-MmaF)$\"+#eUZ%[F)F,-F$6$7$$\"+!pQjY&F)$\"+)>UZ%[F)F,- F$6$7$FF$\"+*>UZ%[F)F,-F$6$7$FF$\"++AuW[F)F,-F$6$7$$\"+\"pQjY&F)$\"+-A uW[F)F,-F$6$7$FF$\"+'>UZ%[F)F,-F$6$7$$\"+#pQjY&F)$\"+,AuW[F)F,-%%VIEWG 6$;$\"$Y&!\"$$\"$Z&Fgo;$\"$%[Fgo$\"$&[Fgo" 1 2 0 1 10 0 2 9 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" "Curve 2" "Curve 3" "Curve \+ 4" "Curve 5" "Curve 6" "Curve 7" "Curve 8" "Curve 9" "Curve 10" }}}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 "\n" }}}{EXCHG {PARA 256 "" 0 "" {TEXT 271 84 "We can also look at the distance from p[i] to our est imated root, say p[Num_Steps]." }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 111 "for i from 0 to Num_Steps -1 do\n\011vec[i] := evalm(p[i]-p[Num_Steps ]):\n\011d[i] := sqrt(dotprod(vec[i],vec[i])):\nod:" }}}{EXCHG {PARA 256 "" 0 "" {TEXT 272 65 "The vertical axis is the distance of p[i] fr om the expected root." }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 68 "plot([seq( [i,d[i]],i=0..Num_Steps-1)],labels=[\"i\",\"d\"],thickness=2);" }} {PARA 13 "" 1 "" {GLPLOT2D 254 254 254 {PLOTDATA 2 "6&-%'CURVESG6$7,7$ $\"\"!F)$\"3?++++_=lo!#=7$$\"\"\"F)$\"3%******>;:1[\"F,7$$\"\"#F)$\"3! )******G2f'>$!#>7$$\"\"$F)$\"3o*****f63O$\\!#@7$$\"\"%F)$\"39+++3=P)e \"!#C7$$\"\"&F)$\"3-+++v7b0O!#F7$$\"\"'F)$\"39+++DrUGGFI7$$\"\"(F)$\"3 (******z(z1OAFI7$$\"\")F)$\"3*)*****>c8UT\"FI7$$\"\"*F)$\"3#******p![; &Q&FI-%'COLOURG6&%$RGBG$\"#5!\"\"F(F(-%*THICKNESSG6#F4-%+AXESLABELSG6$ Q\"i6\"Q\"dFfo-%%VIEWG6$%(DEFAULTGF[p" 1 2 0 1 10 2 2 9 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" }}}}{EXCHG {PARA 256 "" 0 " " {TEXT 273 81 "This is more interesting when we look at the (natural) logarithm of the distance." }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 9 "i := \+ 'i';" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"iGF$" }}}{EXCHG {PARA 256 "" 0 "" {TEXT 274 31 " undo previous assignments to i" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 76 "plot([seq([i,ln(d[i])],i=0..Num_Steps-1)],labels =[\"i\",\"ln(d)\"],thickness=2);" }}{PARA 13 "" 1 "" {GLPLOT2D 254 254 254 {PLOTDATA 2 "6&-%'CURVESG6$7,7$$\"\"!F)$!3u*****pw?7w$!#=7$$\" \"\"F)$!31+++Uu75>!#<7$$\"\"#F)$!3>+++T`3VMF27$$\"\"$F)$!3/+++#ypUh(F2 7$$\"\"%F)$!33+++='Qbc\"!#;7$$\"\"&F)$!33+++DwLu@FB7$$\"\"'F)$!3%)**** *f,8')>#FB7$$\"\"(F)$!3$)*****p>8@A#FB7$$\"\")F)$!3))*****RtFzE#FB7$$ \"\"*F)$!3()*****4I?U8#FB-%'COLOURG6&%$RGBG$\"#5!\"\"F(F(-%*THICKNESSG 6#F5-%+AXESLABELSG6$Q\"i6\"Q&ln(d)Fdo-%%VIEWG6$%(DEFAULTGFio" 1 2 0 1 10 2 2 9 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" }}}}{EXCHG {PARA 256 "" 0 "" {TEXT 275 175 "Can you see quadratic convergence in \+ this picture ?\nThings level off after i = 4 because the default accur acy is 10 digits.\nIt is fun to redo this with more accuracy, e.g. 50. " }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 7 "Digits;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"#5" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 12 "Digi ts:= 50;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%'DigitsG\"#]" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 16 "Num_Steps := 10;" }}{PARA 11 "" 1 " " {XPPMATH 20 "6#>%*Num_StepsG\"#5" }}}{EXCHG {PARA 256 "" 0 "" {TEXT 276 61 "Repeating the earlier computations to have them in one place. " }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 44 "F := [x^3 - 2*x*y^2 + 2*x, x^2* y -y^3 +2*y];" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"FG7$,(*$)%\"xG\" \"$\"\"\"F+*(\"\"#F+F)F+)%\"yGF-F+!\"\"*&F-F+F)F+F+,(*&)F)F-F+F/F+F+*$ )F/F*F+F0*&F-F+F/F+F+" }}}{EXCHG {PARA 256 "" 0 "" {TEXT 277 22 "# The derivative of F." }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 24 "DF := jacobian (F,[x,y]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#DFG-%'matrixG6#7$7$,( *$)%\"xG\"\"#\"\"\"\"\"$*&F.F/)%\"yGF.F/!\"\"F.F/,$*&F-F/F3F/!\"%7$,$F 6F.,(F+F/*&F0F/F2F/F4F.F/" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 14 "p[0] := [1,1];" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>&%\"pG6#\"\"!7$ \"\"\"F)" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 11 "q := [1,1];" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"qG7$\"\"\"F&" }}}{EXCHG {PARA 256 "" 0 "" {TEXT 278 135 "The workhorse loop:\n(Changing od: to od; would print more output. There is also a simpler to\nuse print command for \+ unformattet output.)" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 341 "for i from 1 to Num_Steps do\n F_val := map(subs2,F,x=p[i-1][1],y=p[i-1][2] );\n\011 printf(`Old function value is: %a \\n`,F_val);\n DF_ val := map(evalf,map(subs2,DF,x=p[i-1][1],y=p[i-1][2]));\n p[i] : = evalm(p[i-1]+ DF_val^(-1) &* (q- F_val));\n printf(`\\tPoint %d is: %a \\n`,i,convert(p[i],list));\n printf(`\\n`);\nod:" }} {PARA 6 "" 1 "" {TEXT -1 33 "Old function value is: [1, 2] " }} {PARA 6 "" 1 "" {TEXT -1 123 "\011Point 1 is: [.5000000000000000000 0000000000000000000000000000000, .625000000000000000000000000000000000 00000000000000] " }}{PARA 6 "" 1 "" {TEXT -1 0 "" }}{PARA 6 "" 1 "" {TEXT -1 133 "Old function value is: [.7343750000000000000000000000 0000000000000000000000, 1.16210937500000000000000000000000000000000000 00000] " }}{PARA 6 "" 1 "" {TEXT -1 123 "\011Point 2 is: [.52883806 961493189843618631242643349588027576929544, .4579199596435177400369934 4207163275601143433664033] " }}{PARA 6 "" 1 "" {TEXT -1 0 "" }}{PARA 6 "" 1 "" {TEXT -1 133 "Old function value is: [.983791286717130823 38257206299592831572466752982600, .94788470675260389701710797809733824 868694639608340] " }}{PARA 6 "" 1 "" {TEXT -1 123 "\011Point 3 is: \+ [.54614401432875539984496762416796908421192803883056, .484415506793667 12803660859351855396850370017074133] " }}{PARA 6 "" 1 "" {TEXT -1 0 " " }}{PARA 6 "" 1 "" {TEXT -1 133 "Old function value is: [.99887365 474202153820453970199560700611585405581127, .9996470581747885721472532 9627826969283662232765578] " }}{PARA 6 "" 1 "" {TEXT -1 123 "\011Point 4 is: [.54663402347646002694182482875519917880435516684255, .48447 425839478414761499505515823763394694548328260] " }}{PARA 6 "" 1 "" {TEXT -1 0 "" }}{PARA 6 "" 1 "" {TEXT -1 133 "Old function value is: \+ [1.0000003339631815314546048382792146619822694492716, 1.000000142755 8508967352530325442049928398579235871] " }}{PARA 6 "" 1 "" {TEXT -1 123 "\011Point 5 is: [.54663386916963587282470124003511834664415723 898141, .48447422012609049019554916513377337472956049039027] " }} {PARA 6 "" 1 "" {TEXT -1 0 "" }}{PARA 6 "" 1 "" {TEXT -1 133 "Old func tion value is: [1.0000000000000260024434559781611233132498940645060 , 1.0000000000000158629722653710968376441094364905172] " }}{PARA 6 "" 1 "" {TEXT -1 123 "\011Point 6 is: [.546633869169622723443920535967 29498871271491654691, .48447422012608491016263556919540380610739113698 221] " }}{PARA 6 "" 1 "" {TEXT -1 0 "" }}{PARA 6 "" 1 "" {TEXT -1 133 "Old function value is: [1.0000000000000000000000000001073171544014 677712035, 1.0000000000000000000000000001187311229259298598796] " }} {PARA 6 "" 1 "" {TEXT -1 123 "\011Point 7 is: [.5466338691696227234 4392053590029259729095452309377, .484474220126084910162635569143203030 40414417997173] " }}{PARA 6 "" 1 "" {TEXT -1 0 "" }}{PARA 6 "" 1 "" {TEXT -1 133 "Old function value is: [.9999999999999999999999999999 9999999999999999999994, 1.00000000000000000000000000000000000000000000 00000] " }}{PARA 6 "" 1 "" {TEXT -1 123 "\011Point 8 is: [.54663386 916962272344392053590029259729095452309379, .4844742201260849101626355 6914320303040414417997172] " }}{PARA 6 "" 1 "" {TEXT -1 0 "" }}{PARA 6 "" 1 "" {TEXT -1 133 "Old function value is: [1.00000000000000000 00000000000000000000000000000001, .99999999999999999999999999999999999 999999999999993] " }}{PARA 6 "" 1 "" {TEXT -1 123 "\011Point 9 is: \+ [.54663386916962272344392053590029259729095452309377, .484474220126084 91016263556914320303040414417997177] " }}{PARA 6 "" 1 "" {TEXT -1 0 " " }}{PARA 6 "" 1 "" {TEXT -1 133 "Old function value is: [.99999999 999999999999999999999999999999999999999990, 1.000000000000000000000000 0000000000000000000000000] " }}{PARA 6 "" 1 "" {TEXT -1 124 "\011Point 10 is: [.54663386916962272344392053590029259729095452309381, .4844 7422012608491016263556914320303040414417997176] " }}{PARA 6 "" 1 "" {TEXT -1 0 "" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 "\n" }}} {EXCHG {PARA 256 "" 0 "" {TEXT 279 84 "We can also look at the distanc e from p[i] to our estimated root, say p[Num_Steps]." }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 111 "for i from 0 to Num_Steps -1 do\n\011vec[i] := \+ evalm(p[i]-p[Num_Steps]):\n\011d[i] := sqrt(dotprod(vec[i],vec[i])):\n od:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 77 "plot([seq([i,ln(d[i] )],i=0..Num_Steps-1)],labels=[\"i\",\"ln(d)\"],thickness=2);\n" }} {PARA 13 "" 1 "" {GLPLOT2D 254 254 254 {PLOTDATA 2 "6&-%'CURVESG6$7,7$ $\"\"!F)$!SW1N6Ol*3:nlCXajE-mE3sw?7w$!#]7$$\"\"\"F)$!Sr$4Ty*4#H&3#[od! fLe\\FQ&>WF,\">!#\\7$$\"\"#F)$!S`())4'R'pAP'RiEu%=\\s\\t!**R`3VMF27$$ \"\"$F)$!S[5X5?;dlWRL?ZE9QDs;)\\^pUh(F27$$\"\"%F)$!S^_5+$HpEz-.aQ>_DDd osn%yWl:!#[7$$\"\"&F)$!S\\)\\(R/pI4;/b)oR,fvFcZg5hz=$FB7$$\"\"'F)$!Sl* Hq![1nn\"HN6!# Z7$$\"\")F)$!S%*>Ox;A**Rp9Y4'>=/()GDH^)QJO6FR7$$\"\"*F)$!S:DH(4E7rk\"G Da![xgh " 0 "" {MPLTEXT 1 0 1 "\n" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}}{MARK "43 0 0" 0 }{VIEWOPTS 1 1 0 1 1 1803 1 1 1 1 } {PAGENUMBERS 0 1 2 33 1 1 }