{VERSION 2 3 "APPLE_PPC_MAC" "2.3" } {USTYLETAB {CSTYLE "Maple Input" -1 0 "Courier" 0 0 0 0 0 1 0 1 0 0 1 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 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }} {SECT 0 {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 3571 "edmap:=proc(f,L,a, max)\n#\n#This is a procedure that provides\n#a geometric interpretati on of delta\n#and epsilon values for a function\n#near a point.\n#\n# \+ f is the function (expression in x).\n#\n# L is the expected limit of \+ the function\n# at the value a (real).\n#\n# a denotes the point ( real).\n#\n# max is the maximum acceptable epsilon (real).\n#\nlocal f n,acc,A,B,XL,XR,E,con,j,k,n,xstep;\nwith(plots):with(plottools):\n#\n# Set number of frames\nfn:=16:\n#\n#Set number of steps for approximati on of delta\nacc:=100:\nxstep:=max/acc:\n#\n#Sequence of epsilon value s\nE:=seq(n*max/fn, n=1..fn):\n#Function to convert numbers to strings for textplots\ncon:=n->convert(evalf(n,4),string):\n#\n#\n#Sequence o f left endpoints\nXL[0]:=a:\nj:=1:\nfor n from 1 to fn do\n XL[n]: =XL[n-1]:\n for k from j to acc\n while eval(abs(subs(x=X L[n]-xstep,f)-L))<=E[n] do\n XL[n]:=XL[n]-xstep:\n j :=j+1:\n od:\nod:\n#\n#Sequence of right endpoints\nXR[0]:=a:\nj:= 1:\nfor n from 1 to fn do\n XR[n]:=XR[n-1]:\n for k from j to \+ acc\n while eval(abs(subs(x=XR[n]+xstep,f)-L))<=E[n] do\n \+ XR[n]:=XR[n]+xstep:\n j:=j+1:\n od:\nod:\n#\n#Decla re array of plots\nA:=array(1..2,1..2):\n#\n#Create animation for uppe r left panel\nB:=seq(display([\n plot([[a-max,L-E[n]],[a+max,L-E[n ]]],color=green),\n plot([[a-max,L+E[n]],[a+max,L+E[n]]],color=gre en),\n plot([[XL[n],L-max],[XL[n],L+max]],color=blue),\n plot( [[XR[n],L-max],[XR[n],L+max]],color=red)]),n=1..fn):\n#\n#Complete upp er left panel (graph of f with animated lines)\nA[1,1]:=display(\{\n \+ plot(f,x=XL[fn]..XR[fn],color=black),\n plot([[a,L-max],[a,L+ma x]],color=black),\n plot([[a-max,L],[a+max,L]],color=yellow),\n \+ display(B,insequence=true)\},\n axes=framed):\n#\n#Create upper \+ right panel (text description of upper graph)\nA[1,2]:=display([seq(\n textplot([[0,1,`If |x-`.(con(a)).`|<`.(con(min(a-XL[n],XR[n]-a) )).`, then`],\n [0,.9,`x is in the interval (`.(con(XL[ n])).`,`.(con(XR[n])).`),`],\n [0,.8,`and |f(x)-`.(con( L)).`|<`.(con(E[n]))],\n [0,.6,`Center of the y-axis: \+ `.(con(L))],\n [0,.5,`Green to yellow: `.(con(E[n]))], \n [0,.4,`Center of the x-axis: `.(con(a))],\n \+ [0,.3,`Blue vertical line: `.(con(XL[n]))],\n [ 0,.2,`Red vertical line: `.(con(XR[n]))],\n [0,.1,`Min imum of |`.(con(a)).`-`.(con(XL[n])).`| and`],\n [0,0,` |`.(con(a)).`-`.(con(XR[n])).`| is `\n \+ .(con(min(a-XL[n],XR[n]-a)))]],\n align=LEFT, font=[TIM ES,ROMAN,12]),\n n=1..fn)],insequence=true,axes=none): \n#Create lower left panel (delta as a function of epsilon)\nA[2,1]:=d isplay(\{\n plot([seq([E[k],a-XL[k]],k=1..fn)],color=blue),\n plot([seq([E[k],XR[k]-a],k=1..fn)],color=red),\n di splay([seq(plot([[E[n],0],[E[n],max]],color=black),n=1..fn)]\n \+ ,insequence=true,labelfont=[SYMBOL,18],labels=[e,d])\},\n \+ labelfont=[SYMBOL,18],labels=[e,d],axes=framed,xtickmarks=2):\n# Create lower right panel (text description of lower graph)\nA[2,2]:=di splay([seq(\n textplot([[0,.8,`Delta as a function of epsilon...` ],\n [0,.7,`Black vertical line: `.(con(E[n]))],\n \+ [0,.6,`Blue line height: |`.(con(a)).`-`.(con(XL[n])).`|=`. (con(a-XL[n]))],\n [0,.5,`Red line height: |`.(con(XR[n ])).`-`.(con(a)).`|=`.(con(XR[n]-a))]],\n align=LEFT,fon t=[TIMES,ROMAN,12]),n=1..fn)],insequence=true,axes=none):\ndisplay(A,i nsequence=true);\nend:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 17 "e dmap(x^2,1,1,1);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 19 "edmap(2 *x+3,9,3,2);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 22 "edmap(x/abs (x),0,0,2);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}}{MARK " 4 0 0" 0 }{VIEWOPTS 1 1 0 1 1 1803 }