{VERSION 5 0 "SUN SPARC SOLARIS" "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 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{PSTYLE "Normal " -1 0 1 {CSTYLE "" -1 -1 "" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "Text Output" -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 "Heading 1" 0 3 1 {CSTYLE "" -1 -1 "" 1 18 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }1 0 0 0 6 6 0 0 0 0 0 0 -1 0 }{PSTYLE "Heading \+ 2" 3 4 1 {CSTYLE "" -1 -1 "" 1 14 0 0 0 0 0 0 0 0 0 0 0 0 0 1 }0 0 0 -1 4 4 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 "Maple Output" 0 11 1 {CSTYLE "" -1 -1 "" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 }3 3 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "Maple Plot" 0 13 1 {CSTYLE "" -1 -1 "" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 }3 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "Title" 0 18 1 {CSTYLE "" -1 -1 "" 1 18 0 0 0 0 0 1 1 0 0 0 0 0 0 1 }3 0 0 -1 12 12 0 0 0 0 0 0 19 0 }{PSTYLE "Author" 0 19 1 {CSTYLE "" -1 -1 "" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 } 3 0 0 -1 8 8 0 0 0 0 0 0 -1 0 }} {SECT 0 {EXCHG {PARA 18 "" 0 "" {TEXT -1 26 "Visualizing vectors in 2D " }}{PARA 19 "" 0 "" {TEXT -1 53 "Based on a Worksheet by Mike May, S .J.- maymk@slu.edu" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 181 "We have be en looking at vectors, how they are added, normalized vectors, and dot products, so it seems worthwhile to look at a Maple visualization of \+ everything we have been doing. " }}{PARA 0 "" 0 "" {TEXT -1 0 "" }} {PARA 0 "" 0 "" {TEXT -1 295 "First want to load the appropriate comma nds. The commands for dot product are in the linalg package. The com mands for plotting vectors is in the plottools package. We also need \+ the display command from the plots package. (Restart cleans up in cas e we were already running a Maple worksheet.)" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 52 "restart: with(linalg): with(plottools): with(plo ts):" }}{PARA 7 "" 1 "" {TEXT -1 80 "Warning, the protected names norm and trace have been redefined and unprotected\n" }}{PARA 7 "" 1 "" {TEXT -1 62 "Warning, the names arrow and changecoords have been redef ined\n" }}}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 46 "Visualizing vectors in R^2, simple operations:" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 200 "We wa nt to define some two dimensional vectors. We will use a pair of vect ors with numbers filled in so we have a specific example and a pair of vectors with variables so we can see the general case." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 58 "v1 := [1,2]; v2 := [3,-4];\nw1 := [ a1, a2]; w2 := [b1, b2];" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#v1G7$\" \"\"\"\"#" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#v2G7$\"\"$!\"%" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#>%#w1G7$%#a1G%#a2G" }}{PARA 11 "" 1 " " {XPPMATH 20 "6#>%#w2G7$%#b1G%#b2G" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 77 "To add the vectors we use normal addition. Scalar multiplicati on also works." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 63 "\"v1+v2\" = v1+v2;\n\"w1+w2\" = w1+w2;\n\"3*v1\" = 3*v1;\n\"5*w2\" = 3*w2;" } {TEXT -1 0 "" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#/Q&v1+v26\"7$\"\"%!\"# " }}{PARA 11 "" 1 "" {XPPMATH 20 "6#/Q&w1+w26\"7$,&%#b1G\"\"\"%#a1GF), &%#b2GF)%#a2GF)" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#/Q%3*v16\"7$\"\"$\" \"'" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#/Q%5*w26\"7$,$*&\"\"$\"\"\"%#b1 GF*F*,$*&F)F*%#b2GF*F*" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 233 "When w e try to normalize a vector we have to make a technical note. Like us , Maple has a tendency to leave things like square roots outside the v ector. I will use code that forces it to multiply through by the radi cal, done by the " }{TEXT 256 5 "evalm" }{TEXT -1 139 " command . (Yo u don't need to understand the code. I am only making the comment in \+ case you are interested in why it gets used later on.)" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 38 "(1/sqrt(5))*v1;\nevalm((1/sqrt(5))* v1);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#,$*&#\"\"\"\"\"&F&*&F'#F&\"\"# 7$F&F*F&F&F&" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%'vectorG6#7$,$*&\"\" &!\"\"F)#\"\"\"\"\"#F,,$*(F-F,F)F*F)F+F," }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 115 "Visualizing the vectors and the sum takes a bit more wor k. The following block of code shows the addition clearly." }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1011 "#a block of code to look a t two vectors and their sum\nvec1 := [1,2]:\nvec2 := [4, -3]:\nvecsum \+ := vec1+vec2;\n# Now we are going to plot the vectors in the plane and label them.\n# The following code will\n# allow us to put all the ve ctors on the same plot.\nplotv1 := arrow(vec1, color=blue):\nlabel1 := textplot([vec1[1]/2,vec1[2]/2, `vec 1`], \n align=\{ABOVE,RIGHT\}, font = [HELVETICA, BOLD, 10]):\nplotv2 := arrow(vec2, color=green):\n label2 := textplot([vec2[1]/2,vec2[2]/2, `vec 2`], \n align=\{ABOVE ,RIGHT\}, font = [HELVETICA, BOLD, 10]):\nplotv2m := arrow(vec1, vec2, color=green):\nlabel2m := textplot([vec1[1]+vec2[1]/2,vec1[2]+vec2[2] /2, \n `vec 2 moved`], align=\{ABOVE,RIGHT\}, font = [HELVETICA, BO LD, 10]):\nplotvecsum := arrow(vecsum, color=orange):\nlabelsum := tex tplot([(vec1[1]+vec2[1])/2,(vec1[2]+vec2[2])/2, \n `vec 1 + vec 2`] , align=\{ABOVE,RIGHT\},\n font = [HELVETICA, BOLD, 10]):\ndispla y(\{plotv1, label1, plotv2, label2, plotv2m, label2m,\n plotvecsu m, labelsum\}, scaling=constrained);" }}{PARA 11 "" 1 "" {XPPMATH 20 " 6#>%'vecsumG7$\"\"&!\"\"" }}{PARA 13 "" 1 "" {GLPLOT2D 400 300 300 {PLOTDATA 2 "6/-%)POLYGONSG6&7&7$$!+++++v!#6$!+++++5!#57$$\"+++++vF*$ \"+++++5F-7$$\"++++vK!\"*$!+++++BF67$$\"++++DJF6$!+++++DF67%7$$\"++++] LF6$!+++++AF67$$\"\"%\"\"!$!\"$FG7$$\"++++]IF6$!+++++EF6-%&STYLEG6#%,P ATCHNOGRIDG-%'COLOURG6&%$RGBG$FGFG$\"*++++\"!\")FW-%'CURVESG6#7*F'F.F3 F?FDFJF9F'-F$6&7&7$$\"+)*******\\F*$!+*******\\#F*7$$!+)*******\\F*$\" +*******\\#F*7$$F0F-$\"++++D;F67$$\"+++++&)F-$\"++++v:F67%7$$\"+++++qF -$\"++++];F67$$\"\"\"FG$\"\"#FG7$$\"+++++!*F-$\"++++]:F6FO-FT6&FVFWFWF X-Ffn6#7*F\\oFaoFfoF`pFepFjpFjoF\\o-F$6&7&7$$F=F*$!++++]7F-7$$\"+++++D F*$\"++++]7F-7$$\"++++DSF6$!++++]nF-7$$\"++++vRF6$!++++]#*F-7%7$$\"+++ +]SF6$!+++++bF-7$$\"\"&FG$!\"\"FG7$$\"++++]RF6$!++++]5F6FO-FT6&FV$\")+ ++!)FZ$\")Vyg>FZF^t-Ffn6#7*FgqF[rF`rF[sF`sFesFerFgq-F$6&7&7$$\"++++]#* F-$\"+++++>F67$$\"++++v5F6$\"+++++@F67$$\"++++vUF6$!*++++$F67$$\"++++D TF6$!*++++&F67%7$$\"++++]VF6$!*++++#F6F`s7$F\\s$!*++++'F6FOFS-Ffn6#7*F ftF[uF`uF[vF`sF`vFeuFft-%%TEXTG6'7$$\"+++++]F-FfpQ&vec~16\"%+ALIGNRIGH TG%+ALIGNABOVEG-%%FONTG6%%*HELVETICAG%%BOLDG\"#5-Fgv6'7$Fhp$!+++++:F6Q &vec~2F]wF^wF_wF`w-Fgv6'7$$\"\"$FGFjvQ,vec~2~movedF]wF^wF_wF`w-Fgv6'7$ $F]rF6$!+++++]F-Q.vec~1~+~vec~2F]wF^wF_wF`w-%(SCALINGG6#%,CONSTRAINEDG " 1 2 0 1 10 0 2 9 1 4 1 1.000000 45.000000 45.000000 0 0 "Curve 1" "C urve 2" "Curve 3" "Curve 4" "Curve 5" "Curve 6" "Curve 7" "Curve 8" "C urve 9" "Curve 10" "Curve 11" "Curve 12" }}}}}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 35 "Dot products and projections in 2D:" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 107 "Next we want to look at dot products. First we loo k at our vectors and unit vectors in the same direction." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 748 "vec1 := v1;\nvec2 := v2;\nmagvec1 \+ := sqrt(dotprod(v1,v1));\nvec1norm := evalm(vec1*(1/magvec1));\nmagvec 2 := sqrt(dotprod(v2,v2));\nvec2norm := evalm(vec2*(1/magvec2));\nplot v1 := arrow(vec1, color=red):\nlabel1 := textplot([vec1[1]/2,vec1[2]/2 , `vec 1`], \n align=\{ABOVE,RIGHT\}, font = [HELVETICA, BOLD, 10]) :\nplotv2 := arrow(vec2, color=yellow):\nlabel2 := textplot([vec2[1]/2 ,vec2[2]/2, `vec 2`], \n align=\{ABOVE,RIGHT\}, font = [HELVETICA, \+ BOLD, 10]):\nplotv1n := arrow(vec1norm, color=blue):\nplotv2n := arrow (vec2norm, color=brown):\n# A plot showing the vec1 and its unit vecto r\ndisplay(\{plotv1,plotv1n\},scaling=constrained);\n# A plot showing \+ both of the vectors\ndisplay(\{plotv1, label1, plotv2, label2, plotv2n , plotv1n\},\n scaling=constrained);\n" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%%vec1G7$\"\"\"\"\"#" }}{PARA 11 "" 1 "" {XPPMATH 20 " 6#>%%vec2G7$\"\"$!\"%" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%(magvec1G*$ \"\"&#\"\"\"\"\"#" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%)vec1normG-%'ve ctorG6#7$,$*&\"\"&!\"\"F+#\"\"\"\"\"#F.,$*(F/F.F+F,F+F-F." }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%(magvec2G\"\"&" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%)vec2normG-%'vectorG6#7$#\"\"$\"\"&#!\"%F+" }}{PARA 13 "" 1 " " {GLPLOT2D 377 377 377 {PLOTDATA 2 "6'-%)POLYGONSG6&7&7$$\"+)******* \\!#6$!+*******\\#F*7$$!+)*******\\F*$\"+*******\\#F*7$$\"+++++v!#5$\" ++++D;!\"*7$$\"+++++&)F5$\"++++v:F87%7$$\"+++++qF5$\"++++];F87$$\"\"\" \"\"!$\"\"#FG7$$\"+++++!*F5$\"++++]:F8-%&STYLEG6#%,PATCHNOGRIDG-%'COLO URG6&%$RGBG$\"*++++\"!\")$FGFGFZ-%'CURVESG6#7*F'F-F2F?FDFJF9F'-F$6&7&7 $$\"+xz1OAF*$!+))R.=6F*7$$!+xz1OAF*$\"+))R.=6F*7$$\"+m>5aLF5$\"+D4AnsF 57$$\"+hbJ,QF5$\"+FThVqF57%7$$\"+o^\\IJF5$\"+CV-ztF57$$\"+af8sWF5$\"+3 >FW*)F57$$\"+fB#\\-%F5$\"+G2\"=$pF5FO-FT6&FVFZFZFW-Ffn6#7*F\\oFaoFfoFa pFfpF[qF[pF\\o-%(SCALINGG6#%,CONSTRAINEDG" 1 2 0 1 10 0 2 9 1 4 1 1.000000 45.000000 45.000000 0 0 "Curve 1" "Curve 2" "Curve 3" "Curve \+ 4" }}}{PARA 13 "" 1 "" {GLPLOT2D 377 377 377 {PLOTDATA 2 "6--%%TEXTG6' 7$$\"+++++]!#5$\"\"\"\"\"!Q&vec~16\"%+ALIGNRIGHTG%+ALIGNABOVEG-%%FONTG 6%%*HELVETICAG%%BOLDG\"#5-%)POLYGONSG6&7&7$$\"+)*******\\!#6$!+******* \\#F>7$$!+)*******\\F>$\"+*******\\#F>7$$\"+++++vF)$\"++++D;!\"*7$$\"+ ++++&)F)$\"++++v:FK7%7$$\"+++++qF)$\"++++];FK7$F*$\"\"#F,7$$\"+++++!*F )$\"++++]:FK-%&STYLEG6#%,PATCHNOGRIDG-%'COLOURG6&%$RGBG$\"*++++\"!\")$ F,F,Fdo-%'CURVESG6#7*F;FAFFFRFWFZFLF;-F$6'7$$\"+++++:FK$!\"#F,Q&vec~2F .F/F0F1-F86&7&7$$!+++++5F)$!+++++vF>7$$\"+++++5F)$FHF>7$$\"+++++DFK$!+ +++DJFK7$$\"+++++BFK$!++++vKFK7%7$$\"+++++EFK$!++++]IFK7$$\"\"$F,$!\"% F,7$$\"+++++AFK$!++++]LFKFin-F^o6&F`oFaoFaoFdo-Ffo6#7*FdpFipF]qFhqF]rF brFbqFdp-F86&7&7$$\"+xz1OAF>$!+))R.=6F>7$$!+xz1OAF>$\"+))R.=6F>7$$\"+m >5aLF)$\"+D4AnsF)7$$\"+hbJ,QF)$\"+FThVqF)7%7$$\"+o^\\IJF)$\"+CV-ztF)7$ $\"+af8sWF)$\"+3>FW*)F)7$$\"+fB#\\-%F)$\"+G2\"=$pF)Fin-F^o6&F`oFdoFdoF ao-Ffo6#7*F_sFdsFisFdtFitF^uF^tF_s-F86&7&7$$!+++++?F>$!+++++:F>7$$\"++ +++?F>$F]pF>7$F'$!++++]iF)7$$\"+++++YF)$!++++]lF)7%7$$\"+++++_F)$!++++ +hF)7$$\"+++++gF)$!+++++!)F)7$$\"+++++WF)$!+++++nF)Fin-F^o6&F`o$\")#)e qkFco$\"))eqk\"FcoF`x-Ffo6#7*F[vF`vFdvF]wFbwFgwFgvF[v-%(SCALINGG6#%,CO NSTRAINEDG" 1 2 0 1 10 0 2 9 1 4 1 1.000000 45.000000 45.000000 0 0 "C urve 1" "Curve 2" "Curve 3" "Curve 4" "Curve 5" "Curve 6" "Curve 7" "C urve 8" "Curve 9" "Curve 10" }}}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 276 " For doing projections, in this class we will always start by normalizi ng the vector we are projecting onto. (That means we divide it by its length.) That means the projection will be the unit vctor times the \+ dot product of the two vectors. Can you identify all the vectors? " }} }{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 631 "#a block of code for findi ng the projection\n#of vec1 onto vec2\nvec1 := [3,4];\nvec2 := [1,3]; \nmagvec2 := sqrt(dotprod(vec2,vec2));\nvec2norm := evalm(vec2*(1/magv ec2)); # normalize the vector we're projecting \+ # onto\ndotproduct := dotprod(vec1, vec2norm);\nprojve c := (evalm(dotproduct*vec2norm)); # do the projection\n\nplotv1 := ar row(vec1,shape=arrow, color=blue):\nplotvproj := arrow(projvec,shape=a rrow, color=green):\nplotv2n := arrow(vec2norm, shape=arrow, color=ora nge):\nplotv2 := arrow(vec2, shape=arrow, color=magenta):\ndisplay(\{p lotv1, plotvproj, plotv2n,plotv2\},\n scaling=constrained);" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#>%%vec1G7$\"\"$\"\"%" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%%vec2G7$\"\"\"\"\"$" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%(magvec2G*$\"#5#\"\"\"\"\"#" }}{PARA 11 "" 1 "" {XPPMATH 20 "6 #>%)vec2normG-%'vectorG6#7$,$*&\"#5!\"\"F+#\"\"\"\"\"#F.,$*(\"\"$F.F+F ,F+F-F." }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%+dotproductG,$*(\"\"$\"\" \"\"\"#!\"\"\"#5#F(F)F(" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%(projvecG -%'vectorG6#7$#\"\"$\"\"##\"\"*F+" }}{PARA 13 "" 1 "" {GLPLOT2D 400 300 300 {PLOTDATA 2 "6'-%'CURVESG6&7$7$$\"\"!F)F(7$$\"+++++:!\"*$\"+++ ++XF-7%7$$\"++++](*!#5$\"++++vOF-F*7$$\"++++D9F-$\"++++DNF--%&STYLEG6# %,PATCHNOGRIDG-%'COLOURG6&%$RGBGF($\"*++++\"!\")F(-F$6&7$F'7$$\"\"$F)$ \"\"%F)7%7$$\"+++++AF-$\"++++]LF-FJ7$$\"+++++EF-$\"++++]IF-F<-FA6&FCF( F(FD-F$6&7$F'7$$\"+gwFiJF4$\"+!)H$o[*F47%7$$\"+z/[b?F4$\"+n-eZxF4Fin7$ $\"+xP;/IF4$\"+,DNJuF4F<-FA6&FC$\")+++!)FF$\")Vyg>FFF]p-F$6&7$F'7$$\" \"\"F)FK7%7$$\"+++++lF4$\"++++]CF-Fbp7$$\"+++++&*F4$\"++++]BF-F<-FA6&F CFDF(FD-%(SCALINGG6#%,CONSTRAINEDG" 1 2 0 1 10 0 2 9 1 4 1 1.000000 45.000000 45.000000 0 0 "Curve 1" "Curve 2" "Curve 3" "Curve 4" }}}}}} {MARK "0 0 0" 26 }{VIEWOPTS 1 1 0 1 1 1803 1 1 1 1 }{PAGENUMBERS 0 1 2 33 1 1 }